Files
FreeCADWasmDev/docs/current/bim-5af166d8699bac96d2cfb493-boundaries.md
wangdequan 9a7c4f0335 Save FreeCAD Web workspace sources and user validation evidence
IFC native binding remains incomplete; preserve accurate test results.
2026-09-15 22:01:58 +08:00

2.9 KiB

BIM batch 5af166d8699bac96d2cfb493

Implementation remains incomplete. No command was newly implemented or marked complete in this turn. No tests, builds, synchronization, browser validation, benchmarks, or historical reconciliation were performed.

Current source findings

  • BIMDesktopCommandRegistry.h:18 already registers EmptyTrash, Examples, Extrude, and Fuse with executable script pointers. The packet's static unregistered diagnosis does not establish that these entries need duplicate registration.
  • BimRuntimeProbe.cpp:3518 includes registered Document routes in bimDesktopAction. At line 3559 the document envelope starts, but its visible script prefix supplies bimSelectedWorkflow, rather than a registry implementation script. Whether subsequent code invokes the selected registry scripts remains unresolved.
  • BimRuntimeProbe.cpp:3531 routes Examples through ExternalUrl, obtains its registered script, executes it with runGeometryValueScript, and returns the resulting JSON only on success.
  • BIMDesktopCommands.h:9 implements Examples by calling the local desktop class's getUrl(). Its desktop definition and the application's URL consumption were not exposed in the available windows, so end-to-end completion is not claimed.
  • BimRuntimeProbe.cpp:4166 reports EmptyTrash, Extrude, and Fuse results after execution. Result reporting alone does not establish that their mutations ran.

Remaining implementation boundaries

  • EmptyTrash, Extrude, Fuse: expose the definitions of bimEmptyTrashCommand, bimExtrudeCommand, and bimFuseCommand, and the document dispatch branch that invokes them. Preserve native document mutation, selection, transactions, and FCStd serialization. Do not replace this work with registration markers.
  • Examples: expose BimExamples.py:33 through the desktop activation/URL implementation, and the BIM adapter's response handling for external URLs.
  • Offset2D: expose BimOffset.py:33 through activation and its delegated native operation before choosing the Web implementation owner.
  • Preflight: expose BimPreflight.py:60 through activation and the actual model checking methods it uses.
  • Project: expose BimProject.py:33 through activation to retain NativeIFC project semantics.
  • ProjectManager: expose BimProjectManager.py:37 through activation and the existing runtime helpers at BimRuntimeProbe.cpp:1096 and :1156 before connecting project setup.

Source-window handoff

The four supplemental windows consumed in this turn were registry lines 1-60, runtime lines 3500-3599, desktop command header lines 1-100, and runtime lines 3950-4049. The final runtime window contains unrelated frame operations; do not repeat it for this batch. Supply targeted mutation and invocation excerpts in the next packet rather than repeating registration and success-reporting excerpts. The source budget is a reading constraint, not evidence that desktop business sources are absent.