Feature – Designed, built and accepted on its own
F6

API hardening

Not started

Outbox pruning, session sweeper scheduling, rate limiting, OpenAPI emission, phrase/pattern CRUD, kit grant route, IP enrichment and retention, L1/L2 caches

Phase

Phase 0

Size

M

Waits on

0

Releases

4

Story – A unit of delivery work, sized to land in one sitting

Stories

Not designed yet.

Stories and acceptance criteria are written one Feature at a time. Nothing is missing – this one has not had its pass.

Decisions of record

  • Data and operations

    Outbox pruning and the session sweeper, confirmed as F6 scope: a scheduled job deletes outbox rows once every live cursor has passed them, never before; a sweepStale() job runs every 60s and closes any player_sessions row a crashed server left open.

History

  • 3 Sept Not started – Seeded from the delivery plan, 2026-09-03.