Plan FDX1-FDX6 IR-native datasheet extraction - #2
Conversation
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 7f3278db28
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
| predicate_term_id | ||
| regime | ||
| value_candidate_id | ||
| condition_candidate_ids[] |
There was a problem hiding this comment.
Serialize condition candidates before referencing them
When a row has test conditions or linked footnotes, this ID cannot be resolved: DatasheetSketch/v1 has no conditions[] collection, and no ConditionCandidate record is defined anywhere in the added FDX documents, even though FDX2 explicitly emits these candidates. Since the contract requires unresolved IDs to fail closed, conditioned claims will either become invalid or lose their applicability semantics; add an anchored condition-candidate type and owning serialized collection.
Useful? React with 👍 / 👎.
| final-blind-test | ||
| ``` | ||
|
|
||
| The first four may overlap in the sense of evaluation tags only if the manifest makes their policy explicit; the final blind test must be protected from model/labeler iteration. |
There was a problem hiding this comment.
Keep every held-out group disjoint from training
Allowing the first four slices to overlap permits a training example to also appear in development or template-held-out; moreover, the later exclusion only protects document-family and final partitions, leaving template- and manufacturer-held-out groups able to occur in training under distinct document-family IDs. In those cases model selection and reported held-out metrics are contaminated by the exact examples or grouping factor they are intended to test, so only evaluation tags should overlap one another and every evaluation partition must remain disjoint from training at its declared grouping level.
Useful? React with 👍 / 👎.
| source_pdf_sha256 | ||
| document_ir_logical_sha256 | ||
| producer | ||
| document_family_id |
There was a problem hiding this comment.
Decouple corpus family assignment from the sketch
A standalone FDX1/FDX2 compilation from pinned DocumentIR cannot populate this mandatory field reliably because document families are not defined until FDX4, where they depend on corpus-wide revision, near-duplicate, and source-relation signals. Assigning or correcting the family later would mutate the serialized sketch and its digest, invalidating downstream candidate identities and caches; keep family assignment in training/dataset metadata, where it is already represented, or define an optional externally supplied value whose updates do not alter the deterministic sketch.
Useful? React with 👍 / 👎.
Summary
Defines the Datasheet-cli side of the FDX program: replace the current remote-PDF-LLM-centered architecture with a reusable electronics compiler, weak-supervision data engine, compact local model, and progressive production cascade.
The plan is split one implementation PR per phase:
DatasheetSketch,EvidenceAnchor, predicate-vocabulary andClaimBundlecontracts;LabelVote, lineage-aware agreement, probabilistic labels and rights gates;Central safety property
The learned model chooses existing predicate/value/regime/condition/subject candidate IDs. It has no free-form engineering-value output. Deterministic code validates those IDs against the pinned
DatasheetSketch/DocumentIR and constructs theClaimBundle.Initial scope
Qualify the system first on analog/power datasheet sections:
Existing Gemini extraction remains an explicit fallback/teacher and compatibility path while the local path is developed and qualified.
Companion PRs
Foundry integration: https://github.com/akiselev/foundry/pull/5
Ferrodoc FDX0: akiselev/ferrodoc#4
Validation
Planning/docs-only PR. Branch comparison against
masteris clean and adds seven files underdocs/fdx/, covering the full FDX1-FDX6 implementation sequence.