--- title: "3DARCH-FT-25 — Expire stale seat claims at the workplace-day boundary" description: "Enable participants to start each workplace day with stale reservations cleared rather than blocked by people who did not manually release yesterday's seats." --- # Expire stale seat claims at the workplace-day boundary | Feature | Parent Epic | Delivery status | Status source | Owner | Approved for Solution | |---|---|---|---|---|---| | `3DARCH-FT-25` | [3DARCH-EP-6 — Coordinate Shared Workplace Seating](../../3darch-ep-6.md) | `IN_BACKLOG` | `EXACT` | 3D Architecture Wizzard team | No | ## Description Enable participants to start each workplace day with stale reservations cleared rather than blocked by people who did not manually release yesterday's seats. ## User or operator problem The workplace needs stale seat claims cleared at a predictable day boundary without manual cleanup. ## Expected value Restores fair seat availability each workplace day and makes reset failures diagnosable. ## Scope Includes an explicit timezone/boundary, authoritative claim clearing, single multi-replica execution, client replacement, failure visibility, and safe retry. ### Exclusions - Advance booking, recurring reservations, administrator override, and historical occupancy reporting are excluded. ## Acceptance outcomes - [ ] The governing workplace timezone and daily reset boundary are explicit. - [ ] Every active claim becomes available with occupant and claim time cleared. - [ ] Available seats remain unchanged. - [ ] Only one reset is applied when the service has multiple replicas. - [ ] Connected clients replace their occupancy state from the authoritative reset without reloading. - [ ] A missed or failed reset is visible and can be retried safely. ## Dependencies - [3DARCH-FT-23 — Discover seat availability and occupant identity](./3darch-ft-23.md) - [3DARCH-FT-24 — Manage one daily seat reservation](./3darch-ft-24.md) ## Risks - The reset timezone, multi-replica coordination, failure visibility, and client refresh behavior are incomplete. ## Human approval Linas approved this Feature for documentation on 2026-09-02T10:40:43.220Z. It is **not Approved for Solution** and has no implementation approval. - [Documentation decision](https://discord.com/channels/1518726359512387766/1543925247361814568/1544658325738885201) ## Delivery status evidence The Feature was separately registered at `IN_BACKLOG` as an accepted catalogue boundary. This records backlog retention, not design or delivery progress. - Event: Catalogue registration - Actor and authority: Linas — Human project team member - Reason: The Feature catalogue was accepted for governed documentation and retained in the backlog. - [Status evidence](https://discord.com/channels/1518726359512387766/1543925247361814568/1544658325738885201) ## Architecture traceability - Requirements: none derived. - Readiness: Not started. Architecture solution work must not begin until a separate human **Approved for Solution** decision is recorded. ## Tasks [Review the Tasks group](./3darch-ft-25/tasks.md). No canonical implementation Tasks have been defined. ## Original source - [Discord – Scope – Linas: original Feature request](https://discord.com/channels/1518726359512387766/1543925247361814568/1544647879111483562) - [Discord – Scope – Linas: proceed with documented mapping](https://discord.com/channels/1518726359512387766/1543925247361814568/1544658325738885201) ### Legacy implementation evidence The Feature boundary was mined from legacy revision `c0ced47ecaf4426f47e5c2e4868677f7144b951a`. - [`apps/singularity/src/jobs/seat-reset.ts`](https://gitea.lego-cloud.eu/corp-v1-3darch-legacy/corp-v1-3darch-legacy/src/commit/c0ced47ecaf4426f47e5c2e4868677f7144b951a/apps/singularity/src/jobs/seat-reset.ts) - [`apps/singularity/src/test/jobs/seat-reset.test.ts`](https://gitea.lego-cloud.eu/corp-v1-3darch-legacy/corp-v1-3darch-legacy/src/commit/c0ced47ecaf4426f47e5c2e4868677f7144b951a/apps/singularity/src/test/jobs/seat-reset.test.ts) - [`packages/utils/constants/src/socket.ts`](https://gitea.lego-cloud.eu/corp-v1-3darch-legacy/corp-v1-3darch-legacy/src/commit/c0ced47ecaf4426f47e5c2e4868677f7144b951a/packages/utils/constants/src/socket.ts) - [`apps/nebula/src/socket-client.ts`](https://gitea.lego-cloud.eu/corp-v1-3darch-legacy/corp-v1-3darch-legacy/src/commit/c0ced47ecaf4426f47e5c2e4868677f7144b951a/apps/nebula/src/socket-client.ts)