Files
foxhunt/docs
jgrusewski d76849f31a feat(dqn-v2): C.6 migrate 4 ad-hoc controllers to AdaptiveController (Tasks 9-12)
Establishes the AdaptiveController trait (Plan 1 §4.C.6 prerequisite) and
migrates all four epoch-boundary controllers in a single atomic commit per
feedback_no_partial_refactor.md — shared consumers (training_loop.rs,
trainer/mod.rs, constructor.rs) cannot be partially migrated.

Task 9 — AtomsController: ISV v-range → AtomControl; gates
recompute_atom_positions(). Old direct fused.recompute_atom_positions() call
replaced by controller.update() + actuator.

Task 10 — GammaController: ISV[6] atom_util_ema → GammaControl.gamma;
inline ~18-line G4 block removed; gamma_controller.update() replaces it.

Task 11 — KellyCapController: TradeStats counters → KellyCapControl.kelly_half;
inline ~20-line kelly_f_mean block removed; kelly_cap_controller.update() replaces it.

Task 12 — CqlAlphaController: scaffolding that returns static config alpha;
Plan 3 adds seed-phase coupling. No prior ad-hoc function; establishes the
trait slot.

Tests: 26 new unit tests covering update/diagnose/fire_rate for all 4
controllers. All pass. Cargo check -p ml: 8 warnings (baseline unchanged).

Plan 1 Tasks 9-12. Spec §4.C.6.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-04-24 14:48:19 +02:00
..