Parameters: unit-aware parameters (an inch parameter reads bare numbers as inches), atan2/mod/trunc and clearer unit errors, cycle paths (a → b → a), rename with every reference following (expressions, feature inputs, dimensions, favourites, comments), deletes refused with the list of users, parameter errors shown on the features using them, parameters.add/rename/delete/comment/users/graph/complete and expr.evaluate; ChangeParameterCommand renames and favourites; hostile test no longer writes stray files

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01AS5Tn3xieewUSg3uxrMVdL
This commit is contained in:
bherbruckandClaude Opus 5.5 committed 2026-10-08 00:15:22 +00:00
1 parent a88b8eb6b3
commit dd7485503a
13 files changed
+1470 -322

No files matched your search

+9
View File
@@ -288,6 +288,12 @@ fn hostile_params_never_panic() {
"datum",
"tolerance",
"face",
"new_name",
"favorite",
"favorites",
"filter",
"kind",
"prefix",
];
let mut internal = Vec::new();
for spec in command_specs() {
@@ -299,6 +305,9 @@ fn hostile_params_never_panic() {
}
for v in hostile_values() {
for k in keys {
if k == "path" && spec.id.starts_with("parameters.") {
continue; // parameter files: covered by their own tests (no stray files)
}
let mut s = Session::default();
// A model with a sketch, a body and an active sketch, so most commands get far.
let _ = s.execute("PrimitiveBox", &json!({"length": 10, "width": 10, "height": 10}));