design_audit
Audits a 3D design program by extracting numeric parameters and testing their robustness to small edits, identifying brittle parameters that fail to rebuild or pass validity checks.
Instructions
Audit the current session program as a design, not just a shape: surface its named numeric parameters (Θ) and test how robust each is to editing. Parses the assembled program (see script()) for top-level numeric assignments (e.g. plate_thickness = 5.0), then rebuilds the program with each parameter nudged ±epsilon (default ±10%) in a hard-bounded subprocess (the live session is never mutated) and runs the validity gate on each result. Returns JSON: {parameters, baseline, audit:[{name, value, perturbations:[{delta_pct (realized), new_value, discrete_step?, rebuilt, passes_gate, volume_delta_pct, reasons?}], brittle}], summary:{robust, brittle, inconclusive, ...}, note}. A parameter is brittle if a small change fails to rebuild or drops below the validity gate — the thin-wall / coordinate-reasoning failure mode where a valid shape is not an editable design (Arko-T §6); a parameter reassigned at the top level is inconclusive (perturbation is overwritten), not counted as robust. If no named parameters are found, the program uses inline magic constants and the note advises hoisting them to a parameter block. Known limitation: only literal-valued top-level names are surfaced as Θ — a derived parameter (radius = diameter / 2) is not listed, though perturbing its upstream literal flows through. Bounded by a wall-clock budget and max_params (returns a partial report rather than risking a timeout). epsilon: relative nudge, 0<epsilon<1. max_params: cap on parameters audited.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| epsilon | No | ||
| max_params | No |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| result | Yes |