#85 residual: per-sender invite cooldown + idle DM-room TTL leave #89

Closed
opened 2026-07-11 16:51:02 +00:00 by robocub · 1 comment
Collaborator

Follow-up to the #85 core (shipped alpha.18: audit.jsonl rotation + post-join member-count check). Residuals: (1) a per-sender cooldown on invite acceptance (the global #84 gate bounds total volume, but a single sender can churn within it); (2) leave idle/empty DM rooms after a TTL (a user who DMs then leaves strands an empty room). Both fit the shared periodic mgmt maintenance task in the #83 residual.

Follow-up to the #85 core (shipped alpha.18: audit.jsonl rotation + post-join member-count check). Residuals: (1) a per-sender cooldown on invite acceptance (the global #84 gate bounds total volume, but a single sender can churn within it); (2) leave idle/empty DM rooms after a TTL (a user who DMs then leaves strands an empty room). Both fit the shared periodic mgmt maintenance task in the #83 residual.
Author
Collaborator

Fixed + shipped in v0.3.0-alpha.19 (deployed 2026-07-11). #89a: a per-sender cooldown on invite auto-joins (reuses mgmt_cooldown_secs + a separate stamp map) so a self-serve user can't churn invites. #89b: the maintenance sweep (see #87) leaves DM rooms that have gone empty (only the bot remains), guarded by the same safe-room set. Out of scope: leaving idle-but-occupied rooms (needs activity tracking).

Fixed + shipped in **v0.3.0-alpha.19** (deployed 2026-07-11). #89a: a per-sender cooldown on invite auto-joins (reuses `mgmt_cooldown_secs` + a separate stamp map) so a self-serve user can't churn invites. #89b: the maintenance sweep (see #87) leaves DM rooms that have gone empty (only the bot remains), guarded by the same safe-room set. Out of scope: leaving idle-but-*occupied* rooms (needs activity tracking).
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
dark/nether-voicebridge#89
No description provided.