38 lines
2.2 KiB
Markdown
38 lines
2.2 KiB
Markdown
# Face From Wires
|
|
|
|
2026-09-16. `Part:desktop:Part_MakeFace` passed first formal acceptance:
|
|
21 scenario records in 21.097 seconds. Evidence:
|
|
`business-evidence/87276e2457462c11caaefd64-20260916T120840738517.json`.
|
|
|
|
The existing DocumentProbe now creates a persistent native `Part::Face` with
|
|
deduplicated `Sources`, following CmdPartMakeFace in Part/Gui/Command.cpp.
|
|
The supplied FaceMakerBullseye performs geometry construction. No JS geometry
|
|
algorithm or temporary BREP substitute is used. The operation participates in
|
|
the existing native transaction and recompute/rollback path. Responses include
|
|
the face maker and source links, validated by the document facade.
|
|
|
|
Cases cover a simple outline, a hole, a nested island, disconnected outlines
|
|
and a compound of nested wires. They verify native feature identity, expected
|
|
areas and face counts, source preservation, unique names, undo/redo, document
|
|
isolation, invalid/missing sources, open/null/non-shape input, active task and
|
|
overwrite rejection. Moving/resizing source wires recomputes dependent faces.
|
|
FCStd preserves the native type and links and permits further source edits.
|
|
|
|
The mounted task supports multiple source objects, face creation, undo/redo,
|
|
FCStd opening and OPFS saving. Browser cases create a hole face, save, reload,
|
|
reopen and create another face. Desktop/mobile screenshots and nonblank canvas
|
|
checks include rotation interaction. TypeScript, DocumentProbe incremental
|
|
build and the production frontend build passed. Only the new requirement ran;
|
|
old-item validation remains paused by user direction.
|
|
|
|
Two initial fixture failures exposed non-coplanar source placements after the
|
|
fixture moved only some linked wires, then replaced a Shape without restoring
|
|
its Placement. The corrected edit fixture preserves placement as native FreeCAD
|
|
requires. Earlier failure diagnostics remain in part-make-face-business/.
|
|
|
|
At completion of this batch, executable coverage is 175/1508, leaving 1333
|
|
requirements without declared executable cases. This is coverage, not a claim
|
|
that all historical proof is current. Healing, nonplanar face construction and
|
|
other Part commands are separate requirements. No dependency download was needed;
|
|
future downloads may use domestic sites under the user's latest authorization.
|