17 lines
672 B
Markdown
17 lines
672 B
Markdown
# Changelog
|
|
|
|
## 0.3.0 - 2026-09-28
|
|
|
|
First public release under MIT.
|
|
|
|
- `effectivePlan()`, `hasEntitlement()`, `planRank()` and `meetsPlan()`
|
|
resolve a principal's plan from the product-scoped entitlement row only.
|
|
- `explainPlan()` separates a real grant from a fail-open on an unknown plan,
|
|
and names the subscription status behind a denial. `toReport()` and
|
|
`formatAccess()` render decisions in the `@extant2000/evidence-record`
|
|
format.
|
|
- `planWriteQuota()` gives per-plan write quotas with global and per-product
|
|
environment overrides.
|
|
- `createLimiter()` and `createSyncLimiter()` build a per-account
|
|
sliding-window limiter with a pluggable counter store.
|