Files
FreeCADWasmDev/docs/current/bim-welcome-implementation-boundary.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

48 lines
2.2 KiB
Markdown

# BIM_Welcome implementation boundary
Batch: `21ed01287dd3203fe1bc5fe3`
Selected record: `BIM:desktop:BIM_Welcome`
Status: implementation remains incomplete; no executable registration claim.
## Confirmed desktop behavior
Source: `freecad-source/src/Mod/BIM/bimcommands/BimWelcome.py:35`.
- `Activated` loads `:ui/dialogWelcome.ui` and connects both link labels.
- The dialog is centered on the main window and executed modally.
- Acceptance runs `BIM_Setup`.
- After the dialog returns, `PARAMS.SetBool("FirstTime", False)` runs.
- A link hides the form. Links containing `BIM_Start_Tutorial` run
`BIM_Tutorial`; other links open through desktop URL services.
- The displayed class has no document-dependent `IsActive` method.
## Remaining connections
Expose bounded source anchors for the existing welcome branch in
`freecad-source/src/WebAssembly/FreeCADCoreProbe/BIMSelectedWorkflow.h`,
its execution owner in `BimRuntimeProbe.cpp`, and its registration in
`BIMDesktopCommandRegistry.h`. The supplied command lists and provider
references alone do not establish executable welcome behavior.
Expose the welcome UI handling and result contract in
`web/src/bim-desktop-adapter.ts` and `web/src/workbench-shell.tsx`, plus
the desktop `dialogWelcome.ui` resource and `PARAMS` definition. Connect
the mounted dialog, acceptance to setup, tutorial and external links,
and the native preference update using those actual contracts. Preserve
the desktop timing of the preference update and activation prerequisites.
Inspect the applicable catalog and generator anchors before changing
registration through `tools/generate_feature_capability_registry.py`.
Do not register an unconditional result or treat provider presence as
completion.
The four permitted supplemental source windows were consumed by packet
metadata, the desktop command, the selected workflow header beginning,
and argument preparation at adapter line 151. The latter two windows
did not expose the welcome implementation. This is a source-window
boundary, not evidence that business source is absent.
No tests, builds, browser validation, acceptance, benchmarks, sync, or
route receipts were run. Build, sync, and route receipts remain owned
by the outer pipeline.