63 lines
3.4 KiB
Markdown
63 lines
3.4 KiB
Markdown
# IFC Quantity Editing And Duplicate Execution
|
|
|
|
Subsequent result: `IFC_MEMBERSHIP_PROGRESS.md` records passing material,
|
|
classification and membership scenarios and the current semantic supplement
|
|
acceptance. The remaining-area list below is historical.
|
|
|
|
2026-09-16. Full scope remains 1508; semantic export is still incomplete.
|
|
|
|
The previous continuations implemented boolean property edits and native
|
|
wall/column/slab export. This continuation adds IFC4 existing simple-quantity
|
|
editing through the cached upstream IfcOpenShell schema API. Supported types:
|
|
length, area, volume, count, weight and time. Units, formulas, descriptions,
|
|
quantity-set identity and related-object references remain unchanged.
|
|
Shared quantities must have consistent values; nonnumeric, null, negative and
|
|
nonfinite values reject before destination commit. Unsupported complex quantity
|
|
edits, new quantity sets and unit/formula changes still reject explicitly.
|
|
|
|
The standalone `tools/fixtures/semantic-quantities.ifc` contains real extruded
|
|
columns, explicit units and six shared quantities. It is a manually authored
|
|
IFC4 fixture, separate from the existing independent Revit fixture. The new
|
|
cases compare actual upstream reparsed values for both related products,
|
|
native volume, edited values, FCStd persistence, failed destination/source
|
|
preservation, transaction abort and subsequent recovery.
|
|
|
|
Only `FreeCADWebBimRuntimeProbe` was incrementally built; OCCT and other module
|
|
targets were reused. Public artifacts and the BIM preview were synchronized.
|
|
Only the selected semantic requirement was executed, not the full BIM group.
|
|
|
|
Evidence: `business-evidence/266816da4ea763887c126a8a-20260916T021213009057.json`.
|
|
The semantic case has 18 scenarios and 31 passing assertions, including nine
|
|
quantity scenarios. The unchanged independent verifier also passes. The outer
|
|
runner correctly reports these remaining required proof areas:
|
|
|
|
- `added_deleted_objects`
|
|
- `classifications`
|
|
- `materials`
|
|
|
|
This does not certify every IFC schema/class, authoring of arbitrary quantity
|
|
sets, or a new browser quantity editor. Continue missing behavior using the
|
|
native exporter, imported graph and local desktop BIM/IfcOpenShell sources.
|
|
Do not relabel existing assertions to remove the remaining proof requirements.
|
|
|
|
## Why IFC Was Repeated
|
|
|
|
Previously `--reuse` skipped only fully accepted requirements. A semantic
|
|
requirement with passing existing assertions but missing other proof areas
|
|
started the same WASM validation again. The runner now retains matching failed
|
|
evidence and returns `unchanged_failure_preserved`, without executing a case
|
|
or changing acceptance. It checks the source/contract/artifact fingerprint,
|
|
case inputs, runner hash, evidence hash/files and relevant issue observations.
|
|
Changed inputs permit execution; `--retry-failed` is an explicit diagnostic
|
|
override. The unattended runner forwards that override when requested.
|
|
|
|
Measured on identical inputs: initial focused execution 20.240 seconds;
|
|
second request 0.275 seconds with `executedCount=0`, the same evidence path
|
|
and unchanged incomplete status. This is avoided duplicate execution, not an
|
|
improvement in IFC geometry compute speed.
|
|
|
|
Verification: 43 business tests, 25 acceptance tests, 180 scheduler tests and
|
|
three semantic snapshot tests passed. New tests cover failure preservation,
|
|
dependency changes, explicit retry, altered evidence, new issues and changed
|
|
runner code. No full sweep was rerun merely to refresh historical counts.
|