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:
1 parent
c7f0139ad4
commit
3b8028a040
32 files changed
+695
-2324
No files matched your search
@@ -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
|
||||
|
||||
@@ -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:
|
||||
|
||||
|
||||
@@ -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
|
||||
|
||||
|
||||
@@ -0,0 +1 @@
|
||||
{{#include ../../../features.md}}
|
||||
@@ -1 +0,0 @@
|
||||
{{#include ../../../parity.md}}
|
||||
@@ -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.
|
||||
@@ -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,
|
||||
|
||||
@@ -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.
|
||||
Reference in new issue
Block a user