Skip to content

[codex] Support compound-term fact extraction#66

Merged
justinjoy merged 4 commits into
mainfrom
codex/compound-extracted-facts
Jul 2, 2026
Merged

[codex] Support compound-term fact extraction#66
justinjoy merged 4 commits into
mainfrom
codex/compound-extracted-facts

Conversation

@justinjoy

Copy link
Copy Markdown
Contributor

Summary

  • Add explicit string/term metadata for extracted fact subject/relation/object slots.
  • Parse only slots marked kind="term" as structural terms; legacy string extraction remains StringLit.
  • Validate explicit terms before persistence to avoid partial source/fact writes on malformed or variable-bearing terms.
  • Document the explicit extracted term boundary.

Closes #65

Validation

  • python -m pytest -q -> 330 passed, 7 skipped
  • git diff --check main..HEAD
  • Implementation Skill review loop:
    • Architect/explorer design pass completed.
    • Reviewer found strict schema and partial-write concerns.
    • Implementer addressed both concerns.
    • Architect/Critic final validation found no blocking issues.

Notes

OpenAI strict structured output requires every property to be required; note is now required in the provider schema and should be emitted as "" when unused. The parser remains backward-compatible with legacy missing-note and string-slot payloads.

@justinjoy justinjoy marked this pull request as ready for review July 2, 2026 07:47
@justinjoy justinjoy merged commit 1327ff0 into main Jul 2, 2026
4 checks passed
@justinjoy justinjoy deleted the codex/compound-extracted-facts branch July 2, 2026 07:48
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Support compound-term fact extraction from sources

1 participant