Story: Read each tenant's cache partition inside its tenant
Table of Contents
This page documents a story in Sprint 27. It captures the goal, current status, acceptance criteria, and the tasks that compose it.
1. Goal
Every tenant's partition of a generated event cache loads inside that tenant with a token for that tenant obtained by Token Exchange, and the parties policy and read are strict again.
2. Status
| Field | Value |
|---|---|
| State | DONE |
| Parent sprint | Sprint 27 |
| Now | Nothing. |
| Waiting on | Nothing. |
| Next | Nothing. |
| Last touched | 2026-10-13 |
3. Acceptance
- The generated event caches take a token provider per partition, keep one token per tenant, renew it before expiry and re-exchange once on token_expired.
- IAM mints each partition token in-process: tenant, the tenant's system party, IAM as the actor, read on parties only, a short lifetime, and every issue logged.
- The parties policy scopes to the current tenant alone, the party read uses the default tenant scope, and a database test shows the root tenant lists only its own parties.
- The Cache-Aside pattern page states the use, including the per-partition identity rule.
4. Tasks
| Task | State | Start | End | Description |
|---|---|---|---|---|
| Scaffold story: Read each tenant's cache partition inside its tenant | DONE | 2026-10-05 | 2026-10-06 | Story scaffolding rides this task: documents, sprint wiring, and the scaffold PR. Close it before merging that PR. |
| Give the event cache facet a partition-scoped identity | DONE | 2026-10-05 | 2026-10-06 | Initial task for: Read each tenant's cache partition inside its tenant |
| Mint each cache partition's token in IAM | DONE | 2026-10-06 | Task for: Read each tenant's cache partition inside its tenant | |
| Restore strict tenant scoping on parties | DONE | 2026-10-06 | Task for: Read each tenant's cache partition inside its tenant | |
| Write the Cache-Aside pattern page | DONE | 2026-10-06 | Task for: Read each tenant's cache partition inside its tenant |
5. Decisions
The remainder is carried in Audit the policies that let the system tenant read every tenant.