81 lines
4.5 KiB
Markdown
81 lines
4.5 KiB
Markdown
# CommandDoc continuation checkpoint
|
|
|
|
Batch `1b2b9c895291363d97faeba7`, 2026-09-16.
|
|
Selected: Std_Edit, Std_ProjectUtil, Std_Quit, Std_Refresh. Batch incomplete.
|
|
|
|
## Current change
|
|
|
|
`WebViewCommands.h::execute_Std_Refresh` now delegates to the existing
|
|
`execute_commanddoc('Recompute', ...)` and restores the Std_Refresh identity.
|
|
The previous direct core call omitted changed and selection fields. The reused
|
|
handler retains cycle-confirmation and native transaction behavior and returns
|
|
native selection identities. Desktop source at CommandDoc.cpp:1662 calls
|
|
recompute(None,True,True), with explicit confirmation before retry without
|
|
cycle checking. Existing application integration is reused:
|
|
workbench-shell -> desktop dispatcher -> web-desktop-adapter -> PartBox
|
|
document-view -> native handler -> scene refresh.
|
|
|
|
Added an executable Std_Refresh branch to tools/web-business-cases.mjs:
|
|
mounted command execution; stale expression-dependent box before
|
|
recompute; native volumes 60/48 becoming 60/120; valid OCCT shapes; selected
|
|
object/document identity; a second document retaining volume 1000; wrong-owner
|
|
rejection and native state preservation. Registered this branch in the existing
|
|
case selection and workbench navigation. No coverage tags or contract edits.
|
|
|
|
## Verification
|
|
|
|
Case JavaScript syntax and scoped diff whitespace checks returned zero before
|
|
the final fixture expectation correction. The source/case files are untracked,
|
|
so diff whitespace is not an independent patch-history check.
|
|
Focused PartBox and DocumentProbe incremental build completed successfully;
|
|
existing long-string, macro-copy, pthread-memory and FS export warnings remain.
|
|
Public sync copied six artifacts; preview sync verified nine and copied four.
|
|
No frontend implementation changed, so no frontend rebuild was required.
|
|
|
|
Commands completed:
|
|
|
|
```sh
|
|
python3 tools/web_build_lock.py -- cmake --build freecad-source/build-web/configure --target FreeCADWebPartBoxProbe FreeCADWebDocumentProbe -j8
|
|
node tools/sync-assets.mjs
|
|
node tools/sync_preview_modules.mjs Part Web
|
|
python3 tools/run_business_acceptance.py --module Web --ids Web:desktop:Std_Refresh --reuse
|
|
```
|
|
|
|
Initial isolated acceptance failed the fixture assertion: the direct Part::Box
|
|
had already updated to volume 60, while the expression-dependent box correctly
|
|
remained at volume 48. Corrected the direct box expectation to 60; retained
|
|
the required dependent 48-to-120 geometry transition and all other assertions.
|
|
Failure evidence: business-evidence/1e18844ec8f24842e144132e-20260916T142639325179.json.
|
|
Second isolated acceptance passed, five assertions, executedCount 1, reused
|
|
false, exit 0, 5.468 seconds. Evidence:
|
|
business-evidence/1e18844ec8f24842e144132e-20260916T142743166044.json.
|
|
No source/case edits followed that pass. All build/sync/test sessions completed.
|
|
|
|
## Remaining boundaries
|
|
|
|
- Refresh: the bounded native/browser case passed. Add cycle cancel/proceed,
|
|
transaction/undo and invalid-document proof before claiming full semantics.
|
|
- Edit: retained first error is No module named 'FreeCADGui' in the PartBox
|
|
owner. Existing mounted controls/cases remain. Implement actual native
|
|
ViewProvider begin/finish/toggle and provider-specific mutation/commit/cancel;
|
|
synthetic flags or a different document runtime are insufficient.
|
|
- ProjectUtil and Quit: existing owner adapter and mounted owner task were
|
|
located, but their implementation and missing semantic proof remain to be
|
|
inspected. They were not changed or certified this turn. The owner adapter
|
|
files are outside the current packet support paths; request packet anchors
|
|
through the normal scheduler continuation if necessary.
|
|
|
|
Preserve all original and supplemental requirements and predecessor checkpoints,
|
|
including web-commanddoc-eba17362c96c85c7ece4a508-checkpoint.md and
|
|
web-commanddoc-bd25920b6a473b85add95db6-checkpoint.md. The unchanged
|
|
IFC_SEMANTIC_EXPORT_CONTRACT.md is mandatory; proxy geometry is insufficient.
|
|
No IFC proof was rerun or certified here. No acceptance contract, verifier,
|
|
proof-area requirements, machinery or passing statuses were edited. No
|
|
full-parity/API gate, deployment, push or external message ran.
|
|
|
|
Four supplemental source windows were used: commanddoc result contract,
|
|
desktop Refresh source, adapter dispatch, and existing case helpers. Metadata
|
|
summary and bounded symbol searches were also used. No further source windows
|
|
remain this turn. Unscoped git/search and a non-packet workflow read were
|
|
rejected before execution; these are scope diagnostics, not business failures.
|