docs: chart SaaS production readiness

This commit is contained in:
2026-07-10 02:34:30 +08:00
parent b0eedfab05
commit 2dc125aec1
9 changed files with 134 additions and 0 deletions
+41
View File
@@ -0,0 +1,41 @@
# Initial Production SaaS Readiness
Label: wayfinder:map
## Destination
The repository can be deployed from a clean checkout as the initial production
multi-tenant Curriculum Project Hub, operated safely on the ADR-0018/0020/0021
single-host Linux topology, with repeatable release evidence, rollback and
recovery procedures, and no known critical security or data-integrity gaps.
## Notes
- `spec/` remains the semantic source of truth; implementation drift must be
surfaced rather than silently resolved.
- The initial product boundary follows the accepted ADRs: Organization is the
tenant root, customer onboarding may be manual, and full billing, limits,
tenant suspension, and self-service platform administration remain deferred
unless a readiness investigation proves they are required for safe operation.
- Use the `diagnosing-bugs` loop for every reproduced defect. Prefer explicit
failures and observable critical paths over fallback behavior.
- Work on `saas-production-readiness`; make small conventional commits after
verified, independently reversible milestones. Do not push without explicit
authorization.
- Local `lake build` currently requires a configured elan toolchain; CI remains
the authoritative configured Lean build environment until that local toolchain
is available.
## Decisions so far
## Fog
- The production topology after the initial single-host pilot (HA, horizontal
workers, multi-region, or managed container orchestration) depends on measured
demand and failure experience.
- Commercial self-service concerns such as billing plans and automated tenant
provisioning remain beyond the accepted ADR boundary; revisit after the
initial safety and operability route is clear.
- Regulatory retention, residency, and customer-specific compliance controls
require product/legal inputs that the repository does not currently contain.