What
_slow_path_eligible_cards_queryset has no illustration exclusion. Cards already resolved by the illustration deduction path (stage-d-illustration-v2) are not filtered out of the slow-path human review queue. The command's own comment admits the omission.
Measured: ~3,233 already-resolved cards would be enqueued for human review that does not need to happen.
Why it matters
It is harmless today and only today, because -v2 has never been run. It fires on the first -v2 run — which is the run currently being planned.
PR #604 (run-scoped eligibility + vote archive) does not close this. It changes eligibility scoping, not the illustration predicate.
The cost asymmetry is the whole argument: one .exclude() now, versus ~3,233 wrongly-queued cards, human attention spent on questions the machine already answered, and a review queue whose contents no longer mean what the queue claims they mean.
DECISION NEEDED (owner)
Fix the slow-path illustration exclusion before the first -v2 run?
What would close it
- One
.exclude() on _slow_path_eligible_cards_queryset removing cards with a resolved illustration-deduction verdict.
- A test that a card resolved by
stage-d-illustration-v2 is not slow-path eligible.
- The stale comment in the command removed, since it will no longer be true.
- Re-measure: the ~3,233 figure goes to 0.
LIVE vs LATENT
LATENT. Nothing is wrong in production right now. It becomes LIVE the moment -v2 runs for the first time.
Refs
What
_slow_path_eligible_cards_querysethas no illustration exclusion. Cards already resolved by the illustration deduction path (stage-d-illustration-v2) are not filtered out of the slow-path human review queue. The command's own comment admits the omission.Measured: ~3,233 already-resolved cards would be enqueued for human review that does not need to happen.
Why it matters
It is harmless today and only today, because
-v2has never been run. It fires on the first-v2run — which is the run currently being planned.PR #604 (run-scoped eligibility + vote archive) does not close this. It changes eligibility scoping, not the illustration predicate.
The cost asymmetry is the whole argument: one
.exclude()now, versus ~3,233 wrongly-queued cards, human attention spent on questions the machine already answered, and a review queue whose contents no longer mean what the queue claims they mean.DECISION NEEDED (owner)
Fix the slow-path illustration exclusion before the first
-v2run?.exclude()now, before the run.-v2first and accept ~3,233 wrongly-queued cards, then clean up (note Retraction tooling doesn't clear stale slow-path review-queue rows (hygiene gap) #361: retraction tooling does not clear stale slow-path review-queue rows, so the cleanup is not free either).What would close it
.exclude()on_slow_path_eligible_cards_querysetremoving cards with a resolved illustration-deduction verdict.stage-d-illustration-v2is not slow-path eligible.LIVE vs LATENT
LATENT. Nothing is wrong in production right now. It becomes LIVE the moment
-v2runs for the first time.Refs