Every entry in PARAM_SPECS declares step (Model.js:177 and Model.js:180) and nothing reads it. Verified by count across Model.js, Panel.qml, Service.qml, both scripts and tests/ — the only other occurrence anywhere is the English word "step" in a comment in tests/test_action.py.
It is a leftover from when a spinner was contemplated. The spec then ruled the fields click-to-type and never wheel-adjustable, which removed its consumer.
Why delete rather than keep it reserved. The final whole-branch review made an argument I had not considered: the reserved values are wrong for the only future use they would serve. num_ctx declares step: 1 over a range of 4096–131072, so an arrow-key increment built on it would need roughly 127,000 keypresses to traverse the field. A future consumer would have to change the values before using them — which makes it a decoy rather than a reservation.
Why it will rot if left. The cross-language guard in tests/test_cross_language.py pins the parameter keys and their bounds across all three surfaces, but does not pin step. Nothing would notice it drifting or going stale.
Acceptance. Both step entries removed; suite green. If arrow-key stepping is ever built it can pick its own sensible values.
Recorded in the final review as handed-over item 4, agreed by the reviewer with a recommendation to delete.
Every entry in
PARAM_SPECSdeclaresstep(Model.js:177andModel.js:180) and nothing reads it. Verified by count acrossModel.js,Panel.qml,Service.qml, both scripts andtests/— the only other occurrence anywhere is the English word "step" in a comment intests/test_action.py.It is a leftover from when a spinner was contemplated. The spec then ruled the fields click-to-type and never wheel-adjustable, which removed its consumer.
Why delete rather than keep it reserved. The final whole-branch review made an argument I had not considered: the reserved values are wrong for the only future use they would serve.
num_ctxdeclaresstep: 1over a range of 4096–131072, so an arrow-key increment built on it would need roughly 127,000 keypresses to traverse the field. A future consumer would have to change the values before using them — which makes it a decoy rather than a reservation.Why it will rot if left. The cross-language guard in
tests/test_cross_language.pypins the parameter keys and their bounds across all three surfaces, but does not pinstep. Nothing would notice it drifting or going stale.Acceptance. Both
stepentries removed; suite green. If arrow-key stepping is ever built it can pick its own sensible values.Recorded in the final review as handed-over item 4, agreed by the reviewer with a recommendation to delete.