pam ▸ docs/generated/ralph_loop_2026-03-16_candidate_review_disabled_blocker_labels.md
updated 2026-03-28
Ralph Loop 2026-03-16: Candidate Review Disabled Blocker Labels
Why
The prior PRD 003 work exposed disabled sleeve families in separate concentration
fields, but the main blocker rankings and top-candidate summaries still emitted
plain sleeve_disabled. In the current live state that meant the operator had to
mentally join two different diagnostics to understand that the top review
candidate was blocked specifically by politics_midprice_reversal.
Change
Bounded candidate-review quality improvement:
- Updated research/candidate_review.py
so blocker tallies label disabled sleeves as
sleeve_disabled:<sleeve_family>inside: -top_invalidation_reasons-top_local_invalidation_reasons-top_review_candidate_invalidation_reasons-top_research_candidate_invalidation_reasons - Kept the existing aggregate disabled-sleeve diagnostics unchanged:
-
disabled_sleeve_candidate_count-top_review_candidate_disabled_sleeves-top_research_candidate_disabled_sleeves - Updated research/status.py
and research/discord_status.py
so top-candidate lines also render
sleeve_disabled:<sleeve_family>instead of the raw generic blocker. - Documented the blocker-label behavior in research/README.md.
Validation
pytest -q tests/test_candidate_review.py tests/test_continuous_loop.py tests/test_research_status.py- Result:22 passed in 0.17spython3 main.py research-status- Observed:review_blockers=sleeve_disabled:politics_midprice_reversal=1- Observed top review candidate line:blockers=sleeve_disabled:politics_midprice_reversalpython3 main.py research-discord-status- Observed top candidate line:blockers=sleeve_disabled:politics_midprice_reversal
Result
This keeps the deployment gate unchanged and improves PRD 003 / PRD 004 operator signal quality: the event stream, packet summaries, and top-candidate summaries now agree on which disabled sleeve family is actually blocking live interest.