First smoke at ff98edc77 produced NaN in:
- q_by_action (dir Qs from q_out_buf)
- a_mag (mag SGEMM forward output)
- v_share_traj + grad_decomp_pinned (all-branch backward)
- WR = 43.40% (below ~46% baseline)
Key clue: a_dir = -0.0029 finite but q_by_action NaN. Raw dir logits
fine, expected Q (with atom-shift) NaN. So atom-shift produces NaN
from finite inputs. Either W or state_121 contains NaN.
This diagnostic zeroes both:
- aux_w_prior_init: W [-0.5, 0, +0.5, 0] -> [0, 0, 0, 0]
- beta scale prior: 0.5 -> 0.0
With W=0 + beta=0, atom-shift and beta are runtime no-ops. All wiring
remains intact (kernels loaded, scratch populated, dW/Adam launched).
Diagnostic outcomes:
- Clean smoke -> bug was W magnitude x downstream interaction. Restore
W at smaller magnitude.
- Still NaN -> bug is in Step 8/11 backward logic. Investigate
c51_aux_dw_kernel + adam_w_aux interaction.
Cargo check clean. Ready for diagnostic smoke.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>