4.9 KiB
Cross-workbench continuation checkpoint — 2026-09-18
Batch: 87d3691ca57ddbf994740d84. Selected capability:
product:cross-workbench-document-editing. Capability remains incomplete;
no passing statuses, coverage tags, contracts, proof requirements, acceptance
machinery, native binaries or distribution assets were changed in this turn.
Changes this turn
Updated tools/web-cross-workbench-business-cases.mjs to record outgoing
worker requests, worker identity and request IDs alongside native responses.
The existing constrained Sketch / Pad scenario now requires a consistent
project document ID, native document name and worker owner, and successful
responses correlated to each modeling request. It retains its deliberate
incomplete-capability failure after the initial scenario.
Added separate preview/browser/UI/Body/Sketch/Pad stage timing, the last entered stage, cleanup duration, and outgoing request evidence at failure. Body creation now waits for an actual native Body result before proceeding to Sketch creation. These are executable assertions, not claims that the scenario has passed.
Actual verification
node --check tools/web-cross-workbench-business-cases.mjs exited 0 after the
final edit. No frontend build was run because product source was not changed.
The authorized runner command
python3 tools/run_business_acceptance.py --module Web --ids product:cross-workbench-document-editing --reuse
returned exit 1, unchanged_failure_preserved, executedCount: 0, passed: 0.
It retained evidence:
docs/current/business-evidence/49541ff602063d0030bc9fd7-20260917T224121011857.json.
Missing proof areas are active_document_identity, cross_workbench_history,
fcstd_opfs_roundtrip, live_sketch_feature_recompute, and rejection_isolation.
There is no new native/browser runtime proof from this turn. Do not force a retry
of the unchanged failure or infer runtime success from the syntax check.
Confirmed source findings and next repair
web/src/partdesign-workspace.tsxis now only the standalone React mount. It importsPartDesignWorkspacefrom./partdesign-workspace-component.js. A permitted-reader request for the correspondingweb/src/partdesign-workspace-component.tsxwas rejected as outside the packet dependency/current-module source scope. This is a source-access boundary, not evidence that the component or business implementation is absent.web/src/project-shell.tsxstill has the fixed Part toolbar around line 492 and no Workbench selector in the inspected header/toolbar. Its existingapplyNativeDocumentaround lines 131–171 already preserves native semantic properties and uses the shared project store/render bridge. Reuse that work.- The primary shell dispatches
part.documentthroughWebModuleRouterusing project ID andweb_${id.replace(/\W/g, "_")}as native name. Router sessions are keyed by module and worker file.part-save.worker.tsowns DocumentProbe documents and currently handles Part document/save and document-view requests. Do not equate identical native names in separate workers with shared ownership. - The existing desktop PartDesign adapter already maps Body, Sketch and Pad
commands to
createBody,setSketchandsetFeature; reuse its semantics and the mounted native workspace rather than introducing fixture commands. - The packet source reader reached its 48000-byte supplemental source budget. Do not bypass it with direct reads, scans or moving files. Next packet needs the extracted component, its current-document integration interface and its actual worker owner as permitted source anchors. Read those first, then wire Sketcher/PartDesign controls into the primary shell, preserving the active native document, tree, selection, rendering, transactions and OPFS handling.
- The runner treated relevant inputs as unchanged despite this case-file edit. The supplied Web dependency excerpt does not list the imported cross-workbench case file. Preserve this observation; do not alter the acceptance contract or machinery to manufacture a new run or passing result.
Remaining required delivery
Finish the integrated primary UI and actual same-document Sketcher-to-PartDesign workflow. Add and execute independent native proof and browser assertions for existing-document isolation, sketch editing and live recompute, task cancel, undo/redo across workbench switches, and real FCStd OPFS save/reopen. The initial scenario must also prove native Body/Tip/Profile links, a fully constrained Sketch and the actual Pad mesh/volume. Preserve all original and supplemental requirements, including the unchanged IFC semantic export contract; proxy geometry never substitutes for semantic IFC export. No full-parity/API gates, deployment, pushes or messages to others are authorized. Use focused builds and the acceptance runner when implementation inputs are ready; retain historical evidence and do not repeat passing scenarios solely for timestamps.