docs(sp21): plan + revert sp20-aux-h-fixed experiment

Reverts the forced H=30 diagnostic in aux_horizon_update_kernel.cu
(commit c78c4766c) — the experiment confirmed the data ceiling
hypothesis (aux_dir_acc dropped 0.46→0.50 with pred_tanh collapsing
to ~0, opposite of the bootstrap-failure prediction). Restores the
adaptive Pearl-A + Wiener-α floor logic.

Adds SP21 plan: train/eval coherence + ISV defrost. Catalogs 26
findings across 5 tiers from a pair-audit of MinIO-archived training
logs (xmd6b 30 epochs, d7bj7 2 epochs).

Cross-cutting principle: every threshold or bound in training
control flow must be signal-driven from an ISV slot, not hardcoded
(per feedback_isv_for_adaptive_bounds + feedback_adaptive_not_tuned).

Canonical pattern documented: ISV[CURIOSITY_PRESSURE_INDEX=346]
(SP11 Fix 39) is the reference implementation.

Meta-finding: across SP3-SP20 we've been monitoring training-rollout
metrics (Thompson-noisy) instead of val metrics (deterministic
backtest). val_PF=1.18-1.33 with WR=46-48% across 30 epochs of
xmd6b shows the policy DOES extract asymmetric-payoff alpha — we
just couldn't see it through the meter inflation.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
jgrusewski
2026-05-10 20:12:20 +02:00
parent 14bafb5b58
commit 6df44e4c6d
3 changed files with 259 additions and 18 deletions

View File

@@ -74,22 +74,6 @@ void aux_horizon_update(
* without branching on the host side. */
if (blockIdx.x != 0 || threadIdx.x != 0) return;
/* EXPERIMENT (sp20-aux-h-fixed, 2026-05-10): force H=30 to test the
* "bootstrap failure" hypothesis. Adaptive H gets pulled to ~2 bars
* because only Q-magnitude trades held briefly produce wins, so aux
* predicts at noise horizon → 53.5% accuracy → policy can't improve →
* H stays small. Forcing H=30 lets aux predict at a longer horizon
* (~15 minutes at 30-sec bars), where Kyle's Lambda / VPIN signals
* have demonstrated predictive power per research. If aux_dir_acc
* rises materially at fixed H=30, bootstrap failure confirmed and
* the proper fix is constraint-based (min hold time during
* exploration). If accuracy stays at 53.5%, the data really doesn't
* have signal at this horizon. */
isv[isv_h_idx] = 30.0f;
return;
/* Original adaptive logic preserved below — disabled by the early
* return above. Restore by deleting lines above this comment. */
float h_target = isv[isv_h_target_idx];
float h_current = isv[isv_h_idx];