feat(dqn-v2): C.6 AdaptiveController trait + test harness
Unified protocol for every adaptive controller in the DQN trainer. FireRateStats for controller_activity smoke. DiagSnapshot for standardised HEALTH_DIAG emission. IsvBus abstraction over pinned device-mapped memory (&mut [f32] wrapper). No concrete controller migration yet — Tasks 9-17 migrate existing controllers (atoms → gamma → Kelly → cql_alpha → tau → epsilon → conviction_floor → plan_threshold → balancer) one per sub-commit. Old scaffolding for each controller is removed in the SAME commit that migrates its last consumer to the new protocol, per feedback_no_partial_refactor.md. Tests: 2 unit tests on FireRateStats and DiagSnapshot. Plan 1 Task 8. Spec §4.C.6. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -42,6 +42,7 @@
|
||||
| `trainers/dqn/trainer/metrics.rs` | `training_loop.rs` | Wired | Epoch-boundary metric compilation + backtest eval | — |
|
||||
| `trainers/dqn/trainer/state.rs` | `trainer/mod.rs` | Wired | Mutable training state | — |
|
||||
| `trainers/dqn/trainer/training_loop.rs` | called from `DQNTrainer::train()` | Wired | Main epoch loop | — |
|
||||
| `trainers/dqn/adaptive_controller.rs` | Trait + harness (`FireRateStats`, `DiagSnapshot`, `IsvBus<'a>`); consumers added in Plan 1 Tasks 9-17 (atoms, gamma, Kelly, cql_alpha, tau, epsilon, conviction_floor, plan_threshold, grad_balancer migrations) | Wired (consumers added in same plan) | C.6 trait foundation | — |
|
||||
|
||||
## CUDA Pipeline — Rust Wrappers
|
||||
|
||||
@@ -216,16 +217,16 @@
|
||||
|
||||
## Summary
|
||||
|
||||
Updated after Task 6 cleanup (2026-04-24): 5 confirmed-orphan files deleted, 3 Orphan rows reclassified Partial, 1 Orphan reclassified with crate-level follow-up action.
|
||||
Updated after Task 6 cleanup (2026-04-24): 5 confirmed-orphan files deleted, 3 Orphan rows reclassified Partial, 1 Orphan reclassified with crate-level follow-up action. Plan 1 Task 8 (2026-04-24): added `adaptive_controller.rs` (C.6 trait foundation).
|
||||
|
||||
| Classification | Count |
|
||||
|---|---|
|
||||
| Wired | 74 |
|
||||
| Wired | 75 |
|
||||
| Partial | 10 |
|
||||
| Orphan (held for follow-up) | 3 |
|
||||
| Ghost | 0 |
|
||||
| OUT-of-DQN-scope | 17 |
|
||||
| **Total** | **104** |
|
||||
| **Total** | **105** |
|
||||
|
||||
The 3 remaining Orphan rows are:
|
||||
- `cuda_pipeline/gpu_statistics.rs` + `statistics_kernel.cu` — held for Plan 2 D.2 wire-or-delete decision.
|
||||
|
||||
Reference in New Issue
Block a user