pam ▸ docs/generated/ralph_loop_2026-03-16_replay_metadata_confidence_gate.md
updated 2026-03-28
Ralph Loop 2026-03-16: Replay Metadata Confidence Gate
Change
Added an explicit replay-quality confidence gate tied to eventful pair coverage.
research/prepare_replay.pynow reportslarge_move_pair_eventful_metadata_rowsdirectly instead of requiring operators to infer it from other counters.research/continuous_loop.pynow feeds replay-input coverage intoassess_confidence()and blocks confidence when: -pair_eventful_metadata_rowsis below the configured minimum -large_move_pair_eventful_metadata_rowsis below the configured minimum when large moves exist- Status and Discord summaries now print the explicit large-move pair metadata count so replay miss quality matches the confidence gate.
Why
The current replay file is still dominated by legacy rows without eventful pair metadata. That means a positive replay score could look better than it really is from a research-quality perspective.
Current local replay snapshot after the change:
pair_eventful_metadata_rows=2large_move_pair_eventful_metadata_rows=0- confidence blockers now include
pair_eventful_metadata_rows<10andlarge_move_pair_eventful_metadata_rows<3
Validation
Commands run:
PYTHONPATH=. pytest tests/test_prepare_replay.py tests/test_continuous_loop.py tests/test_research_search.py -qpython3 main.py research-statuspython3 main.py research-discord-status- direct confidence check against
research/replay_rows.jsonl
Results:
- Focused tests passed:
19 passed - Current replay remains non-confident for the right reasons, including the new metadata coverage blockers
- Status outputs show
large_move_metadata(entry/next/pair)=.../.../...using the explicit pair counter