Retire legacy reference data and the external command catalog (#302)

- Remove xtask/data/fusion-catalog.tsv and xtask/data/fusion-ids.tsv.
- Remove the legacy command-id table (crates/engine/src/legacy_ids.rs) and its use in
  find_command and in the shortcut, recents and pinned-command loaders. Only SolidCraft's
  dotted ids name commands; any other id is an unknown command.
- Boundary Fill's id becomes solid.boundary_fill.
- Replace the parity report with SolidCraft's own feature checklist: `cargo xtask features`
  writes docs/features.md from the command registry.
- docs/oracle.md, docs/step-import.md (corpus section) and docs/iges-import.md: reference
  results are being rebuilt on analytic and open-source (FreeCAD) values; see #292.
  `cargo xtask oracle` and `cargo xtask step-corpus [--iges]` write these placeholders.
- AGENTS.md, CLAUDE.md, CONTRIBUTING.md, README.md, ROADMAP.md and the book describe
  SolidCraft as independent, with reference tests on analytic values and open-source tools,
  and agents do not drive or extract data from commercial CAD products.


Claude-Session: https://claude.ai/code/session_01RjGw4gA5ZvKrU8MQP6sBgT

Co-authored-by: Claude Opus 5.5 <[email protected]>
This commit is contained in:
bherbruckandClaude Opus 5.5 authored and GitHub committed 2026-10-12 11:19:15 -04:00
1 parent c7f0139ad4
commit 3b8028a040
32 files changed
+695 -2324

No files matched your search

+1 -1
View File
@@ -26,7 +26,7 @@
- [Test harnesses](dev/testing.md)
- [Control protocol](dev/control-protocol.md)
- [Reference tests](dev/oracle.md)
- [Command parity](dev/parity.md)
- [Features](dev/features.md)
- [STEP import](dev/step-import.md)
# Reference
+1 -1
View File
@@ -7,7 +7,7 @@ SolidCraft is a Cargo workspace in layers. A crate only depends on crates in low
The web app, `apps/solvecraft-web`, is the desktop front end compiled to wasm with
[trunk](https://trunkrs.dev). `xtask` holds the repository's own tooling: `cargo xtask ci`,
`layers`, `assets`, `oracle`, `parity` and `book`.
`layers`, `assets`, `features`, `oracle` and `book`.
A few rules follow from the layering:
+2 -2
View File
@@ -24,8 +24,8 @@ before it runs, and a failing command leaves the document unchanged. Feature com
feature to the timeline and let the document evaluate it; they validate their inputs first
(units, ranges, references) and return `BadParams` instead of building a broken feature.
Ids used before the 2026-10 rename still resolve through `crates/engine/src/legacy_ids.rs`, so
old scripts, recipes, saved shortcuts and toolbar layouts keep working.
Only the registry's own dotted ids name commands (matched ignoring case); any other id fails
with `unknown command`.
## Adding a command
+1
View File
@@ -0,0 +1 @@
{{#include ../../../features.md}}
-1
View File
@@ -1 +0,0 @@
{{#include ../../../parity.md}}
+1 -1
View File
@@ -10,4 +10,4 @@ The PLASTIC tab has a small enclosure subset:
clearance per material, used as the features' defaults.
Rib and web (on the SOLID tab) complete the set. These features are checked against
hand-computed geometry rather than a Fusion oracle.
hand-computed geometry.
+2 -2
View File
@@ -11,8 +11,8 @@ The SHEET METAL tab builds parts from a sheet of constant thickness under a **sh
- **Create Flat Pattern** (`sheet.flat_pattern`) shows the flat part with its bend lines and a
bend table, and exports it as DXF or a bend-table CSV through the save picker.
Bends follow the rule's K-factor, so flat lengths match what a press brake will make. The
oracle checks these against parts built in Fusion.
Bends follow the rule's K-factor, so flat lengths match what a press brake will make. Tests
check flat lengths against hand-computed bend allowances.
For a shop drawing or spreadsheet, `sheet.export_bend_table` returns CSV by default; choose
`format: "json"` for structured data. It includes the sheet rule, thickness, bend angles,
+6 -4
View File
@@ -21,8 +21,8 @@ also script, test or hand to an agent.
SolidCraft is early. Sketching, solid modelling, parameters, components with joints, sheet metal
and a plastic-enclosure subset work; surfaces, drawings, CAM and simulation are deferred. The
[roadmap](https://github.com/bherbruck/solidcraft/blob/main/ROADMAP.md) has the details, and
[command parity](dev/parity.md) and the [reference tests](dev/oracle.md) measure how far along it
is.
the [feature list](dev/features.md) lists every command by area, and the
[reference tests](dev/oracle.md) check modelling results against analytic and FreeCAD values.
Existing `.solvecraft` designs and `solvecraft-cli` commands keep their names and behavior.
@@ -30,5 +30,7 @@ This book has two halves: the **user guide** for people modelling with SolidCraf
**developer guide** for people working on it. The [command reference](reference/commands.md) is
generated from the code on every build.
SolidCraft is licensed MIT OR Apache-2.0. It is a clean-room implementation and is not affiliated
with Autodesk; Fusion is a trademark of Autodesk, Inc.
SolidCraft is licensed MIT OR Apache-2.0. It is independent: behaviour is designed from public
documentation, general CAD conventions and user feedback, and reference tests use analytic
values and open-source tools. SolidCraft is not affiliated with Autodesk; Fusion is a trademark
of Autodesk, Inc.