jgrusewski
ed727b51c0
spec(dqn): SP2 + SP3 combined — F0 regression fix + Q-learning structural stability
Designs the fixes for the two SP1 leftover issues identified at SP1 closure
(commit 047f175fb):
1. SP2 — F0 regression fix (instrumentation overhead optimization):
Consolidate the 11 per-step check_nan_f32 launches in
run_nan_checks_post_backward into a single fused-reduce kernel
(dqn_nan_check_fused_f32_kernel). 1 launch instead of 11; expected
F0 return to ~55 baseline (was regressing to ~35 across 3 SP1 smokes).
2. SP3 — Q-learning structural stability (5 mechanisms):
- M1: Target-Q clipping at single-point source, ISV-driven
(10 × isv[Q_ABS_REF].max(1.0))
- M2: C51 atom-position growth bounds, same ISV bound
- M3: Hard target sync at fold boundary (DQN + IQN + ensemble target nets)
- M4: Adam EMA reset at fold transitions (comprehensive — all Adams)
- M5: Embedded Adam-centric diagnostic instrumentation (slots 36-47):
Adam m/v max-abs (slots 36-43), weight max-abs (44-45),
target_q post-clip (46), atom span (47). Sticky-bit threshold
checks; SP2's fused kernel is extended (NOT replaced) to handle
all 24 slots in 24 blocks.
Architecture: SP2 lands first; Gate 1 must pass (F0 ≥ 53.08 + slot
24-35 firing topology unchanged) before SP3 starts. SP3's 5 mechanisms
ship in ONE commit per feedback_no_partial_refactor (related fixes
for the same root pathology — Q-target inflation drives Adam EMA
saturation drives weight drift drives cuBLAS overflow). Gate 2
evaluates the full SP1 7-criterion bar.
Operating principles (mandatory):
- ISV-driven design for every dynamic bound (no hardcoded clip values)
- ε floor on ISV multiplier per SP1 pearl (`isv.max(1.0)`)
- Combined RELATED commits per feedback_no_partial_refactor
- Permanent diagnostic infrastructure (always-on, no debug flags)
- No deferrals — anomalies during impl get fixed within scope
Validation cost: SP2 ~1-2 days + 1 smoke; SP3 ~3-5 days + 1-2 smokes.
Combined ~1000 LOC across 2 commits.
Spec covers: architecture, components (SP2 fused kernel + SP3 5
mechanisms), data flow, ISV slot bindings, validation gates, error
handling failure modes, operating principles, anti-patterns,
sequencing constraints, effort estimate, handoff conditions.
2026-04-30 08:36:32 +02:00
..
2026-03-13 11:10:01 +01:00
2026-03-14 19:41:40 +01:00
2026-03-16 16:11:48 +01:00
2026-03-21 10:23:17 +01:00
2026-03-21 15:33:00 +01:00
2026-03-21 23:22:58 +01:00
2026-03-22 20:30:35 +01:00
2026-03-22 00:39:34 +01:00
2026-03-22 10:32:37 +01:00
2026-03-23 08:45:18 +01:00
2026-04-22 22:03:20 +02:00
2026-03-23 12:45:06 +01:00
2026-03-23 09:35:55 +01:00
2026-03-25 19:43:26 +01:00
2026-03-25 22:53:13 +01:00
2026-03-26 00:43:58 +01:00
2026-03-27 19:52:44 +01:00
2026-03-27 19:52:44 +01:00
2026-03-27 19:52:44 +01:00
2026-03-27 20:42:37 +01:00
2026-03-31 23:30:42 +02:00
2026-04-01 21:36:40 +02:00
2026-04-04 11:49:13 +02:00
2026-04-04 11:07:47 +02:00
2026-04-04 09:28:42 +02:00
2026-04-04 00:57:49 +02:00
2026-04-04 23:00:16 +02:00
2026-04-04 17:30:18 +02:00
2026-04-05 21:25:05 +02:00
2026-04-06 22:48:07 +02:00
2026-04-06 11:15:24 +02:00
2026-04-07 13:58:11 +02:00
2026-04-06 11:15:24 +02:00
2026-04-07 13:43:04 +02:00
2026-04-08 01:26:09 +02:00
2026-04-07 23:14:40 +02:00
2026-04-07 22:21:11 +02:00
2026-04-08 20:05:22 +02:00
2026-04-08 01:49:01 +02:00
2026-04-08 08:48:36 +02:00
2026-04-08 12:04:23 +02:00
2026-04-08 22:23:19 +02:00
2026-04-08 20:26:40 +02:00
2026-04-10 20:26:55 +02:00
2026-04-10 22:16:24 +02:00
2026-04-11 11:23:23 +02:00
2026-04-11 13:30:12 +02:00
2026-04-13 09:26:14 +02:00
2026-04-13 14:51:30 +02:00
2026-04-13 20:13:39 +02:00
2026-04-13 11:29:05 +02:00
2026-04-14 21:40:03 +02:00
2026-04-14 23:46:27 +02:00
2026-04-14 22:14:49 +02:00
2026-04-15 20:46:05 +02:00
2026-04-15 18:44:18 +02:00
2026-04-15 08:52:17 +02:00
2026-04-16 01:24:03 +02:00
2026-04-16 23:51:45 +02:00
2026-04-16 01:29:11 +02:00
2026-04-16 17:30:01 +02:00
2026-04-16 23:43:55 +02:00
2026-04-16 01:24:03 +02:00
2026-04-17 09:01:53 +02:00
2026-04-16 21:44:35 +02:00
2026-04-18 14:59:57 +02:00
2026-04-18 16:03:45 +02:00
2026-04-18 23:59:35 +02:00
2026-04-18 22:04:41 +02:00
2026-04-19 12:10:49 +02:00
2026-04-19 23:47:04 +02:00
2026-04-20 18:58:35 +02:00
2026-04-20 08:51:42 +02:00
2026-04-20 08:17:34 +02:00
2026-04-20 22:03:14 +02:00
2026-04-20 14:29:53 +02:00
2026-04-21 02:05:28 +02:00
2026-04-22 08:42:50 +02:00
2026-04-21 21:06:33 +02:00
2026-04-22 11:43:17 +02:00
2026-04-22 08:51:51 +02:00
2026-04-22 16:56:36 +02:00
2026-04-22 09:09:09 +02:00
2026-04-22 09:06:50 +02:00
2026-04-21 11:04:51 +02:00
2026-04-23 10:15:16 +02:00
2026-04-23 21:18:19 +02:00
2026-04-23 09:12:01 +02:00
2026-04-24 21:03:57 +02:00
2026-04-29 16:02:53 +02:00
2026-04-27 18:22:40 +02:00
2026-04-29 22:59:00 +02:00
2026-04-30 08:36:32 +02:00