diff --git a/docs/ARCHITECTURE.md b/docs/ARCHITECTURE.md index b4cc9ef..0e4e361 100644 --- a/docs/ARCHITECTURE.md +++ b/docs/ARCHITECTURE.md @@ -168,8 +168,11 @@ arrive from a platform rather than completing a mandatory registration). row is a technical necessity (the `sessions` and `game_players` foreign keys require one, the same way the robot pool is durable), not a profile: no friends, statistics or history are kept for it, and it is restricted to - auto-match. Platform and email users are auto-provisioned **durable** accounts - with an identity. + auto-match. A background **guest reaper** deletes an abandoned guest — flagged + `is_guest`, holding no game seat, older than `BACKEND_GUEST_RETENTION` — on a + `BACKEND_GUEST_REAP_INTERVAL` sweep, so transient guest rows do not accumulate. + Platform and email users are auto-provisioned **durable** accounts with an + identity. ## 4. Accounts, identities, linking & merge