ops: sweep expired confirmations, authorization codes, and invites #160
Labels
No labels
kind
bug
kind
enhancement
wayfinder
grilling
wayfinder
map
wayfinder
prototype
wayfinder
research
wayfinder
task
workflow
needs-info
workflow
needs-triage
workflow
ready-for-agent
workflow
ready-for-human
workflow
wontfix
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set
Reference
rosa/vernier#160
Loading…
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Found during an operational-resilience review (Release It! stability rules).
Location:
crates/infra/src/repositories/sqlite.rs:677,690(confirmations),:1289(authorization_codes),:1107(invites)Severity: Medium — unbounded growth (Steady State)
Problem
Confirmations, authorization codes, and invites are deleted only when they are consumed (keyed by
identifier). An expired-but-never-redeemed row is never swept, so these capability tables accumulate dead rows indefinitely. Lower volume than sessions, but the same Steady-State violation: something accumulates with no matching reclamation.Suggested fix
Add a periodic sweep —
DELETE ... WHERE expires_at < nowfor each of the three tables — ideally running on the same scheduled reaper introduced for session cleanup (#159).