Auxiliary axis is the auxcnc-driven stepper exposed to gplan as A,
not W. Half the stack already used A (gcode, DRO row, soft limits,
homing); the other half (settings tab, macros, internal field
names) still said W which was confusing.
Renames:
- aux.json fields: min_w/max_w -> min_mm/max_mm
- svelte component: WAxisSettings -> AAxisSettings
- settings tab slug: #w-axis -> #a-axis
- js view module: w-axis-view.js -> a-axis-view.js
- pug template: w-axis-view.pug -> a-axis-view.pug
- macros: w_down.nc/w_up.nc -> a_down.nc/a_up.nc
'W Down'/'W Up' -> 'A Down'/'A Up'
- css class & ids: .w-axis-settings -> .a-axis-settings,
min_w/max_w form ids match field names
- internal js identifiers and comments
Migration:
- AuxAxis._migrate_legacy_fields() promotes min_w/max_w in aux.json
on every load and persists the upgraded form, so existing
installs come out clean on first restart.
- Config._upgrade() renames macro file_name and display name in
every config.json load, so a stale in-memory copy can't
reintroduce the W names. Ships with a save right after.
The auxcnc ESP wire protocol verbs (WPOS/HOMED) are unchanged - they
are wire-format identifiers, not user-facing labels.