v1.5.0 — reconstruct_* tool group (consume OCCTSwift v1.2.0)
OCCTMCP v1.5.0 — reconstruct_* tool group (consume OCCTSwift v1.2.0)
MINOR — additive new tool surface. No breaking changes.
OCCTSwift v1.2.0 closes #168 with a TopologyGraph per-node attribute store + Codable GraphSnapshot round-trip. This release consumes that to ship the reconstruct_* group (#33) — LLM read/write over an attributed reconstruction graph, the missing piece for driving the OCCTReconstruct mesh-to-solid pipeline from a model.
New tools (6 → 56 total)
| Tool | Direction | Purpose |
|---|---|---|
reconstruct_get_graph |
read | Topology counts + annotated nodes (with reconstruct.* attrs) + instance clusters |
reconstruct_set_decision |
write | decidedBy (geometric/ml/human) + accept/reject |
reconstruct_force_fit |
write | Record a forced surface-type override |
reconstruct_confirm_instances |
write | Confirm/reject a congruence cluster |
reconstruct_export_session |
read | Byte-stable GraphSnapshot to disk |
reconstruct_import_session |
write | Reload a snapshot into a session |
Design
ReconstructRegistry— actor-backedsessionId → TopologyGraph, mirroringSelectionRegistry/HistoryRegistry. All graph access is actor-isolated.- Nodes addressed by the self-describing
<kind>:<index>string (e.g.face:3), parseable both ways. reconstruct.*namespaced attribute keys; engine-written keys (residual/confidence/…) round-trip throughget_graph/export_sessionuntouched.- Scope boundary: the reconstruction engine (surface fitting, congruence detection) lives in OCCTReconstruct.
reconstruct_force_fitrecords the override for the engine to honour — it does not re-fit here. This resolves the issue's "override and re-fit" wording toward its own out-of-scope note. - Swift-only, consistent with selection / remap / annotations / history (Node remains the portable 36-tool subset).
Dependency
OCCTSwiftpin1.1.0 → 1.2.0. No other cohort members moved.
Tests
34 swift-testing cases (was 28). New ReconstructToolsTests.swift covers node addressing, each write path, the export→import round-trip, and byte-stability of the canonical snapshot. swift build + swift test green.