Files
FreeCADWasmDev/docs/current/partdesign-ae29db8c-checkpoint.md

2.3 KiB

PartDesign Batch ae29db8c1b718f1c2539865c

Completed This Continuation

Added native Worker and mounted workbench browser ShapeBinder cases in tools/partdesign-datum-clone-business-cases.mjs, using the existing native document owner, adapter and browser command controls. Assertions cover native Body ownership, Support links, TraceSupport, whole-solid and selected-face geometry, source-driven recompute, source Body tip preservation, undo/redo, invalid-input preservation, FCStd reopen and continued source/binder editing. Declared ShapeBinder coverage only after adding these semantic assertions.

Acceptance command:

python3 tools/run_business_acceptance.py --module PartDesign --ids PartDesign:desktop:PartDesign_ShapeBinder

Runner result: passed 1, remaining [], exitCode 0, executedCount 1, reused false, 9.501 seconds. Evidence: docs/current/business-evidence/e47801bd0ea97e6944415006-20260916T190418587232.json. No acceptance statuses were manually edited. The published runtime supported the new cases without another build. IFC contract and acceptance machinery were not modified.

Next Continuation

Remaining selected IDs:

  • PartDesign:desktop:PartDesign_MultiTransform
  • PartDesign:desktop:PartDesign_SubShapeBinder
  • PartDesign:desktop:Sketcher_MapSketch

Read their supplied Command.cpp anchors (2459, 399, 2690) using the bounded source reader, then extend the existing PartDesign document owner and mounted adapter with actual editable native feature semantics. MultiTransform and SubShapeBinder are still explicitly guarded by the adapter; MapSketch lacks connected native document behavior. Add native/browser semantic cases before declaring coverage. Preserve transaction rollback, Body ownership and tip, links, recompute, undo/redo and FCStd persistence. Use focused build/sync and the acceptance runner. No full-parity/API gates, deployment or pushes.

This continuation used four supplemental source windows: acceptance metadata, datum/clone case fixture, ShapeBinder adapter selection logic and native ShapeBinder handler. It stopped further source inspection at that boundary. ShapeBinder browser assertions exercise the mounted generic command UI; dedicated workspace controls, desktop/mobile canvas presentation, arbitrary support combinations and placement tracing remain outside these cases.