docs(01-foundation-01): complete monorepo scaffolding and RLS tenant isolation plan

This commit is contained in:
2026-03-23 09:59:55 -06:00
parent 47e78627fd
commit 0054383be0
5 changed files with 230 additions and 20 deletions

View File

@@ -3,14 +3,14 @@ gsd_state_version: 1.0
milestone: v1.0
milestone_name: milestone
status: planning
stopped_at: Phase 1 context gathered
last_updated: "2026-03-23T15:19:58.501Z"
stopped_at: Completed 01-foundation 01-01-PLAN.md
last_updated: "2026-03-23T15:59:38.482Z"
last_activity: 2026-03-23 — Roadmap created, ready for Phase 1 planning
progress:
total_phases: 3
completed_phases: 0
total_plans: 0
completed_plans: 0
total_plans: 4
completed_plans: 1
percent: 0
---
@@ -50,6 +50,7 @@ Progress: [░░░░░░░░░░] 0%
- Trend: —
*Updated after each plan completion*
| Phase 01-foundation P01 | 12 | 2 tasks | 32 files |
## Accumulated Context
@@ -61,6 +62,9 @@ Recent decisions affecting current work:
- [Roadmap]: Coarse 3-phase structure — Foundation → Agent Features → Operator Experience
- [Roadmap]: Phase 3 portal gated on Phase 2 completing (DB schema stability after memory + tool data models)
- [Roadmap]: WhatsApp Business Verification must be initiated during Phase 1 (1-6 week approval, WhatsApp goes live in Phase 2)
- [Phase 01-foundation]: PostgreSQL RLS with FORCE ROW LEVEL SECURITY chosen for tenant isolation; app connects as konstruct_app role (not superuser)
- [Phase 01-foundation]: SET LOCAL app.current_tenant uses UUID-sanitized f-string (not parameterized) — asyncpg does not support prepared statement placeholders for SET LOCAL
- [Phase 01-foundation]: channel_type stored as TEXT with CHECK constraint — native sa.Enum caused duplicate CREATE TYPE DDL in Alembic migrations
### Pending Todos
@@ -72,6 +76,6 @@ None yet.
## Session Continuity
Last session: 2026-03-23T15:19:58.499Z
Stopped at: Phase 1 context gathered
Resume file: .planning/phases/01-foundation/01-CONTEXT.md
Last session: 2026-03-23T15:59:38.480Z
Stopped at: Completed 01-foundation 01-01-PLAN.md
Resume file: None