feat: advance FreeCAD exact parity evidence
Some checks failed
real-verification / chrome (push) Has been cancelled
real-verification / freecad-oracle (push) Has been cancelled
real-verification / wasm (push) Has been cancelled

This commit is contained in:
2026-08-14 22:39:16 -04:00
parent e3373c9d6c
commit 5bbd7b9d4f
64 changed files with 113069 additions and 21074 deletions

View File

@@ -20,7 +20,7 @@
"id": "EX01",
"title": "Exhaustive FreeCAD oracle and optional dependency baseline",
"tasks": [
{ "id": "EX-ORA-01", "title": "Capture exhaustive runtime objects, properties, commands and GUI states", "priority": "P0", "status": "in_progress", "dependencies": [], "deliverables": ["Runtime oracle for every registered TypeId and command", "Success, failure, disabled and cancel fixtures", "Source-to-runtime trace"], "acceptance": ["All inventory candidates are promoted or explicitly excluded", "No command or property has an unknown runtime state"], "evidence": ["check:freecad-inventory", "check:freecad-type-properties", "check:freecad-gui-commands", "check:freecad-oracle-coverage"], "exactBlockedBy": ["Static candidates and GUI-only states are not exhaustively runtime-probed"] },
{ "id": "EX-ORA-01", "title": "Capture exhaustive runtime objects, properties, commands and GUI states", "priority": "P0", "status": "in_progress", "dependencies": [], "deliverables": ["Runtime oracle for every registered TypeId and command", "Success, failure, disabled and cancel fixtures", "Source-to-runtime trace"], "acceptance": ["All inventory candidates are promoted or explicitly excluded", "No command or property has an unknown runtime state"], "evidence": ["check:freecad-inventory", "check:freecad-type-properties", "check:freecad-gui-commands", "check:freecad-oracle-coverage", "check:freecad-gui-workflow"], "exactBlockedBy": ["The isolated desktop oracle covers 1111 workbench-startup commands in 100 fail-closed shards, 19 source-only commands and 2 context-only commands; the PartDesign Pad success Task workflow is captured, while disabled, failure, cancel, recovery and the remaining command-family workflows are still open"] },
{ "id": "EX-ORA-02", "title": "Expand geometry, history and FCStd golden corpus to every feature family", "priority": "P0", "status": "in_progress", "dependencies": ["EX-ORA-01"], "deliverables": ["Parameterized success and failure corpus", "Native Shape, history, ElementMap2 and StringHasher evidence", "FreeCAD save-reopen-resave evidence"], "acceptance": ["Every editable feature family has boundary and mutation fixtures", "Unknown semantic differences are zero"], "evidence": ["check:freecad-golden-fixtures", "check:freecad-composite-history-elementmap", "check:freecad-golden-coverage", "check:freecad-parameter-mutations", "check:freecad-partdesign-failures", "check:freecad-partdesign-revolution-groove", "check:freecad-partdesign-transform", "check:freecad-part-builders"], "exactBlockedBy": ["Parameter mutation matrix is fail-closed until every family has explicit edit/recompute/recovery and round-trip evidence"] },
{ "id": "EX-ORA-03", "title": "Lock all optional libraries, platform capabilities and license boundaries", "priority": "P1", "status": "pending", "dependencies": ["EX-ORA-01"], "deliverables": ["Optional dependency manifest", "Browser, sidecar or proxy decision per dependency", "Reproducible hashes and licenses"], "acceptance": ["Every optional FreeCAD capability has one executable strategy", "No undeclared host-only dependency affects a claim"], "evidence": ["check:baseline", "check:sbom"], "exactBlockedBy": ["Several desktop-only optional libraries remain proxy or sidecar capabilities"] }
]
@@ -34,14 +34,14 @@
{ "id": "EX-TSN-01", "title": "Capture native stage Shape and Generated/Modified/Deleted for every builder", "priority": "P0", "status": "completed", "dependencies": ["EX-KER-01", "EX-TSN-00"], "deliverables": ["All builder-stage captures", "Multi-input and one-to-many lineage", "Local feature recompute history"], "acceptance": ["Every feature result relation has a producing native stage", "No final-result index is applied to an intermediate Shape"], "evidence": ["check:freecad-composite-history-elementmap", "check:freecad-tsn-stage-evidence"], "exactBlockedBy": [] },
{ "id": "EX-TSN-02", "title": "Expose native MappedNameRef and StringHasher decisions for every feature", "priority": "P0", "status": "completed", "dependencies": ["EX-TSN-01"], "deliverables": ["Native naming callback ABI", "Per-stage StringHasher evidence", "Lossless ElementMap2 token generation"], "acceptance": ["All new tokens originate in native evidence", "FreeCAD round-trip names remain byte and semantic stable"], "evidence": ["check:freecad-native-naming-evidence", "check:freecad-sketcher-partdesign-abi", "check:freecad-naming-sdk", "check:freecad-naming-production", "check:chrome-freecad-naming-production", "check:freecad-private-naming-boundary", "check:occt-history-artifact"], "exactBlockedBy": [] },
{ "id": "EX-TSN-03", "title": "Resolve isomorphic topology only from unique native provenance", "priority": "P0", "status": "completed", "dependencies": ["EX-TSN-01", "EX-TSN-02"], "deliverables": ["Symmetric Boolean corpus", "Candidate provenance graph", "Ambiguity repair lifecycle"], "acceptance": ["Unique native sources resolve deterministically", "Non-unique sources remain ambiguous across save, undo and recompute"], "evidence": ["test:topology-replay", "test:facade", "check:freecad-isomorphic-provenance", "check:freecad-naming-production", "check:chrome-freecad-naming-production", "check:freecad-exact-history-elementmap-gate"], "exactBlockedBy": [] },
{ "id": "EX-TSN-04", "title": "Close topology naming across all feature edits and FCStd round-trips", "priority": "P0", "status": "in_progress", "dependencies": ["EX-TSN-02", "EX-TSN-03"], "deliverables": ["Cross-feature mutation matrix", "ElementMap2 history migration", "Long-chain LinkSub stability report"], "acceptance": ["Wrong bindings, unexplained relations and name drift are zero for the exhaustive corpus"], "evidence": ["check:freecad-isomorphic-provenance", "check:freecad-composite-history-elementmap", "check:freecad-fcstd-roundtrip", "check:freecad-exact-history-elementmap-gate"], "exactBlockedBy": ["The 30-case native save-reopen-resave corpus now has zero mapped-name drift, but the exhaustive cross-feature transition matrix and production-chain desktop resave correlation remain incomplete"] }
{ "id": "EX-TSN-04", "title": "Close topology naming across all feature edits and FCStd round-trips", "priority": "P0", "status": "in_progress", "dependencies": ["EX-TSN-02", "EX-TSN-03"], "deliverables": ["Cross-feature mutation matrix", "ElementMap2 history migration", "Long-chain LinkSub stability report"], "acceptance": ["Wrong bindings, unexplained relations and name drift are zero for the exhaustive corpus"], "evidence": ["check:freecad-isomorphic-provenance", "check:freecad-composite-history-elementmap", "check:freecad-tsn-stage-correlation", "check:freecad-fcstd-roundtrip", "check:freecad-exact-history-elementmap-gate"], "exactBlockedBy": ["The locked 30-case corpus now passes 30/30 native property mutations, final-shape propagation and 219/219 geometry-stage restores, but 11 PartDesign cases evolve 28 recovered naming-stage digests; the five-stage chain still has 3/5 generic Shape proxies, no rotate mutation family, 5 semantic topology restore drifts, and only 4/361 ordered operation pairs classified"] }
]
},
{
"id": "EX03",
"title": "Application document, property and recompute semantics",
"tasks": [
{ "id": "EX-DOC-01", "title": "Implement every native property type, flag, editor and serialization rule", "priority": "P0", "status": "in_progress", "dependencies": ["EX-ORA-01"], "deliverables": ["Complete Property schema", "Status and editor metadata", "Binary and XML codecs"], "acceptance": ["Every runtime property fixture round-trips without type coercion or unknown loss"], "evidence": ["check:freecad-type-properties", "check:freecad-native-property-semantics", "check:freecad-property-status", "check:freecad-fcstd-roundtrip"], "exactBlockedBy": ["Of 85 runtime property types and 5510 records, 62 types/692 records remain opaque-only; all 15 observed status classes are represented, 13 have native behavior evidence, and LockDynamic/PartialTrigger still lack dynamic mutation and partial-document observer implementation"] },
{ "id": "EX-DOC-01", "title": "Implement every native property type, flag, editor and serialization rule", "priority": "P0", "status": "in_progress", "dependencies": ["EX-ORA-01"], "deliverables": ["Complete Property schema", "Status and editor metadata", "Binary and XML codecs"], "acceptance": ["Every runtime property fixture round-trips without type coercion or unknown loss"], "evidence": ["check:freecad-type-properties", "check:freecad-native-property-semantics", "check:freecad-property-status", "check:freecad-fcstd-roundtrip"], "exactBlockedBy": ["Of 85 runtime property types and 5510 records, 58 types/523 records remain opaque-only; all 15 observed status classes now have typed Facade behavior, including LockDynamic dynamic mutation and PartialTrigger partial-document observer transactions, but the remaining codecs, editors and complete document observer semantics are not closed"] },
{ "id": "EX-DOC-02", "title": "Match transactions, DAG recompute, partial failure and document observers", "priority": "P0", "status": "in_progress", "dependencies": ["EX-DOC-01", "EX-TSN-04"], "deliverables": ["Transaction and observer event oracle", "Partial recompute scheduler", "Failure recovery contract"], "acceptance": ["Undo, redo, abort, stale and cyclic dependency behavior matches FreeCAD"], "evidence": ["check:document-closure", "test:facade"], "exactBlockedBy": ["Observer ordering and every partial-recompute branch are not yet oracle-backed"] },
{ "id": "EX-DOC-03", "title": "Complete expressions, links, extensions, groups and App object lifecycle", "priority": "P0", "status": "in_progress", "dependencies": ["EX-DOC-01"], "deliverables": ["Expression dependency grammar", "Link and extension lifecycle", "Group and clone semantics"], "acceptance": ["Copy, clone, delete, relink and expression edits survive native round-trip"], "evidence": ["check:fcstd-closure", "check:chrome-production-document"], "exactBlockedBy": ["FeaturePython-backed extensions remain non-executable"] },
{ "id": "EX-DOC-04", "title": "Complete multi-document, external link, merge and recovery workflows", "priority": "P1", "status": "pending", "dependencies": ["EX-DOC-02", "EX-DOC-03"], "deliverables": ["Cross-document Link corpus", "Merge and conflict semantics", "Crash and autosave recovery"], "acceptance": ["Open, close, relink, merge and recovery match the native document graph"], "evidence": ["check:chrome-persistence", "check:project-migration"], "exactBlockedBy": ["Current application is project-first and does not implement every desktop multi-document workflow"] },