← Files AkinatorARCHIVED FILE
templates/examples/context-map.md
2.5 KB · Oct 3, 2026 · 06:33 UTC
<!-- GENERATED FILE - DO NOT EDIT BY HAND. Generated by `scripts/extract_entitlements.py`. Edit the extractor, then regenerate. --> # Entitlements map > Filled example of `templates/context-map.md`, written for the fictional Nimbus > product described in `templates/examples/README.md`. Paths here are > illustrative and do not exist in this repository. ## Scope - **Covers:** every entitlement constant defined in the codebase, the plan it belongs to, where it is defined, and every call site that enforces it. - **Does not cover:** what the entitlements *mean* commercially, or what happens at the boundary - that is `docs/business/quotas.md`. This map holds facts; the business doc holds rules. ## The map | Entitlement | Plan | Value | Defined in | Enforced at | |---|---|---|---|---| | `SEATS` | free | 3 | `src/plans/free.ts:8` | `src/team/invite.ts:41` | | `SEATS` | starter | 5 | `src/plans/starter.ts:8` | `src/team/invite.ts:41` | | `SEATS` | pro | 25 | `src/plans/pro.ts:8` | `src/team/invite.ts:41` | | `EXPORT_QUOTA` | free | 3 / month | `src/plans/free.ts:12` | `src/quota/apply.ts:22` | | `EXPORT_QUOTA` | starter | 10 / month | `src/plans/starter.ts:12` | `src/quota/apply.ts:22` | | `EXPORT_QUOTA` | pro | 30 / month | `src/plans/pro.ts:12` | `src/quota/apply.ts:22` | | `RETENTION_DAYS` | free | 7 | `src/plans/free.ts:16` | `src/exports/purge.ts:15` | | `RETENTION_DAYS` | starter | 30 | `src/plans/starter.ts:16` | `src/exports/purge.ts:15` | | `RETENTION_DAYS` | pro | 365 | `src/plans/pro.ts:16` | `src/exports/purge.ts:15` | ### Entitlements defined but never enforced The extractor flags these separately, because a defined-but-unenforced entitlement is a customer-visible promise nothing keeps. | Entitlement | Plan | Defined in | Note | |---|---|---|---| | `API_RATE_LIMIT` | pro | `src/plans/pro.ts:20` | No call site found. Raised as an open question in `docs/business/quotas.md` on 2026-08-19. | ## Regenerate when - Extractor: `scripts/extract_entitlements.py` - Regenerate with: `python scripts/extract_entitlements.py --write` - Drift check: `python scripts/extract_entitlements.py --check` in CI - regenerates in memory and diffs against this file; exits non-zero if they differ. - Regenerate when: a plan file under `src/plans/` changes, an entitlement constant is added or removed, or an enforcement call site moves. ## Related - Docs: `docs/business/quotas.md` - what these numbers mean commercially - Rules: `rules/07-quota-mutations.md` - the single-writer constraint - Skills: `akinator-business-map`
SHA-256: 0a6477aec243aa1828f34fcc8cf7bfadb3d9180c593da176e7fe039d073ea7cd