{ "schema": "freecad-web-p6-part-module-gate/v2", "taskId": "FW-P6-PRT-Y", "module": "Part", "result": "pass", "sourceRevision": "0644133717ebc04fae2194bb5ef9eec06880f909", "moduleStatusBeforeGate": "pending", "moduleStatusAfterGate": "completed", "eligibleForCompletion": true, "actions": { "create/recompute": { "result": true, "artifact": "part-gate.json", "sha256": "5ef05b88886a7b3ac30423f63ed8712aed5012f5b21955f6dfb3afe2c9c0be8a", "evidence": [ "part-gate.json" ] }, "import/export": { "result": true, "evidence": [ { "path": "docs/p6/part-action-02-kernel.json", "sha256": "eda27ff916066590bf0f25983a5c3857becf8cf5c43826244c583ef92b805710" }, { "path": "docs/p6/part-action-02-recovery.json", "sha256": "62ef81113a2e1770e5608db1c2b53873a368f7410b4c6fbae423ac6f10fc4b9e" }, { "path": "docs/p6/part-action-02-facade.json", "sha256": "76eeb8751ec017d836f8e9efd3ea5fe4ab4939d8ffe3427a30b7f84696005a99" }, { "path": "docs/p6/part-action-02-chrome.json", "sha256": "3c97ffd7eade685e05a85c6dd2ba5c8d7d667dbb568b30c4e2317eba2f875c91" }, { "path": "docs/p6/part-action-02-persistence.json", "sha256": "69a6ab2812d2755b5f858348531371a2849a06f49f1fed84fc336862eedbb50f" } ] }, "inspect/source-inventory": { "result": true, "evidence": [ { "path": "docs/p6/part-action-03-kernel.json", "sha256": "66895bfbac0a11ff99cf873470aa1061efa3c33aa6858ec1ccca48a223a02336" }, { "path": "docs/p6/part-action-03-recovery.json", "sha256": "8692ccd41172b576374cb732ff3ab5f8326bef9d79d20cf1b8475c5a0a29b6ee" }, { "path": "docs/p6/part-action-03-facade.json", "sha256": "dc5579796b0ecc1265b7509a3bfd6b717210db6eeb89f91c9cc27ea8e136a79b" }, { "path": "docs/p6/part-action-03-chrome.json", "sha256": "4c95d2a1ff5f5aec3d89105ad59e14c4ed5369fe41d34f64667a785114efccb1" }, { "path": "docs/p6/part-action-03-persistence.json", "sha256": "feea8e81fca5df346c567705e6c97cac6ed59b6d3d3486132950b65879999de9" } ] }, "python-api": { "result": true, "evidence": [ { "path": "docs/p6/part-action-04-kernel.json", "sha256": "1f78d7006af3165e56fbab825efcd2daaa29e68a9a016a74e7f4ccb2f6049b3a" }, { "path": "docs/p6/part-action-04-recovery.json", "sha256": "efd50a4bfd88704b2cbb04862aebb3a9f6e9a29d6d19c4f2aa46794694e69c74" }, { "path": "docs/p6/part-action-04-facade.json", "sha256": "6daeb099995e07395c905a6032a31a1d533c802e24a8ddaa68224ae955a4a32d" }, { "path": "docs/p6/part-action-04-chrome.json", "sha256": "d2dbd810abb385a5967129ed4ec97be5e158511cff8c436137e93920850dc55d" }, { "path": "docs/p6/part-action-04-persistence.json", "sha256": "6e6ba546b3bf0624a1e99739e4c1ef88f92250d32753e3faa02d1bc7d820b8bb" } ] }, "save/reopen": { "result": true, "evidence": [ { "path": "docs/p6/part-action-05-kernel.json", "sha256": "b3248ceba27ac48a9788458c49c79498112e65f208856524785a5b9623311650" }, { "path": "docs/p6/part-action-05-recovery.json", "sha256": "ef9581c7cc4c3dc83c345c265c89659f0ce8541745d28d245394a4772645fd5e" }, { "path": "docs/p6/part-action-05-facade.json", "sha256": "ed152ff4a2742f13a55d224957679ee533a004d36aa496d5e31c78ad14eae518" }, { "path": "docs/p6/part-action-05-chrome.json", "sha256": "1ea9b5be38f61d680eeda4f79dc86b8b5df005b67d3c532ab569cffbe406303b" }, { "path": "docs/p6/part-action-05-persistence.json", "sha256": "b353234aa30ca606bed8efb48f27712d7fd42a8b12c73d7271e5de68848a6600" } ] } }, "boundaries": [ "All five declared Part actions have independent C-G conclusions; create/recompute is covered by the existing first-slice gate.", "BREP persistence is explicitly not applicable to import/export; inspect/source-inventory and python-api are read-only boundaries.", "Part save/reopen is closed only for the deterministic Part::Box FCStd fixture; arbitrary paths, GUI workflows and cross-version migration remain out of scope.", "The standalone PartBoxProbe smoke recovery remains explicit in FW-P6-PRT-ACT-05-G-R1 and does not change the DocumentProbe evidence." ], "commands": [ "node tools/run_p6_part_module_gate.mjs" ] }