Obsidian_vault/30 - Projects/Tia/Quota Feature.md
2026-06-07 14:00:01 +00:00

29 lines
1 KiB
Markdown

---
type: project-doc
parent: "[[Tia]]"
status: verified
branch: feature/quota-and-member-limits
tags: [tia, feature, billing]
---
# 📦 Tia — Storage Quota & Member Limits
> Free-tier guardrails before beta. Branch `feature/quota-and-member-limits` (NOT merged to main as of 2026-05-27).
## Limits
- **1 GiB** storage / family · **2 members** / family (free tier)
## Key files
- `src/lib/quota.ts` — enforcement (pure fns + queries)
- `api/upload`, `api/memories/[id]/confirm`, `api/invites`, `api/storage-usage`
- `components/StorageMeter.tsx` · `__tests__/quota.test.ts` (44 tests pass)
- `drizzle/0007_subscription_status.sql`
## Design calls
- Usage **derived** (SUM), never accumulated ([[Decision Log#TD-001]])
- `tier` is the plan indicator; `isPaidFamily(tier)` abstraction ([[Decision Log#TD-002]])
- Downgrade = **freeze** (keep members, block new invites)
## Status
- [ ] **Apply migration 0007 on staging before merge.** Do not push to main yet.
## Related
[[Tia]] · [[Tia - Decisions]] · [[Tia - Roadmap]]