Ralph Loop 2026-03-16: Eventful Miss Quality
Change
Added a replay-input diagnostic that splits large later movers missed by the eventful tagger into:
large_move_scored_untagged_rowslarge_move_unscored_untagged_rowsmax_large_move_untagged_scoreavg_large_move_untagged_score
These now flow through research.prepare_replay, research.status, research.discord_status, and research/README.md.
Why
large_move_untagged_rows alone was not enough. It told Ralph that large later moves were being missed, but not whether those rows were close to the eventful threshold or had no eventful support at all. That distinction matters:
- scored misses suggest threshold calibration
- unscored misses suggest missing observation features
Validation
Commands:
PYTHONPATH=. pytest -q tests/test_prepare_replay.py tests/test_research_status.py
python3 main.py research-status
python3 main.py research-discord-status
Result:
6 passed in 0.03s
Smoke check from current replay snapshot:
current replay move coverage: moved=28/1280 large_move=28 large_move_untagged=28 scored=0 unscored=28 max_untagged_score=0.0
Interpretation
The current bottleneck is not a near-threshold calibration problem. Every currently observed large move missed by the eventful layer was fully unscored. The next bounded PRD-001 improvement should target missing eventful features or journal-selection inputs, not just lower the 0.18 threshold.