Constraints¶
Non-negotiables for cs-lewis-backend. These override convenience; flag any task that would violate them.
-
Auth/accounts ARE in V1; no monetization in V1. Users must be able to create an account in the 14-week build, but content is not monetized — no paywall, subscription, or content gating in V1. Gates are out of V1 scope. Schema and API must still cleanly support a Phase 2 paywall/tiering without a rebuild. (Reverses the prior "No auth at MVP" non-negotiable. Source: Lina Wiezkowiak, delivery lead, Slack 2026-06-29 — see
raw/slack-auth-scope-2026-06-29.md. Confirmed by delivery but pre-client-vetting; warrants an ADR once locked.) See04-mvp-scope.md. -
Tag model is load-bearing. All content traversal ("Dive deeper", "Connects across") depends on the multi-axis tag graph. Never remove tag axes or break tag-overlap queries without a recorded decision. See
02-product-domain.md. -
AI tagging is build-time only. Tags are AI-drafted at ingest, editor-approved before publish. No runtime AI in the content API response path.
-
Tech stack is proposed, not confirmed. Wagtail (Django), Flutter, ElevenLabs are a client-facing recommendation. Backend engine is Wagtail per ADR-0001 (the "Payload" naming in some primary sources was illustrative, not the chosen tool). Treat as working assumption only; flag any work that locks in these choices until client acceptance is recorded. See
03-tech-stack.md.