Production Readiness
This document defines the minimum gate for promoting simai-env from a controlled test environment to real production use.
The goal is not “feature complete”. The goal is predictable day-to-day operation for common site profiles, safe updates, and clear operator visibility.
Production Gate
simai-env is considered ready for production rollout only when all of the following are true:
- Platform acceptance passes on a fresh or near-fresh Ubuntu server.
- Core profile lifecycle acceptance passes for:
genericwordpresslaravelbitrix
- Daily operations and status flows behave predictably.
- SSL issuance and status flows behave predictably.
self updateremains safe and does not regress working sites.- Documentation matches the real menu, commands, and lifecycle flows.
Phase Checklist
1. Platform Acceptance
Required checks:
self bootstrapself statusself platform-statusself versionself updateself scheduler-statusself auto-optimize-statusself health-review-statusself site-review-statusself perf-status
Acceptance criteria:
- bootstrap is idempotent enough for repeated repair use
- update works via the managed update channel
- scheduler cron exists and jobs report cleanly
- no repeated
unbound variable/ shell crashes in normal flows - status commands degrade to
unknown/n/ainstead of failing hard
2. Profile Lifecycle Acceptance
Required profiles:
genericwordpresslaravelbitrix
Acceptance criteria per profile:
site addworks- optional DB creation works when relevant
- installer/bootstrap step works
- finalize step works where applicable
- status command reflects the real lifecycle state
site doctorfinishes withoutFAIL
Profile-specific references:
- Bitrix:
bitrix-production-runbook.md - WordPress:
wordpress-production-runbook.md - Laravel:
laravel-production-runbook.md
3. Daily Operations Acceptance
Required flows:
site listsite infosite usage-statussite perf-statussite runtime-statussite runtime-suspendsite runtime-resumessl listssl statusdb statusdb list- scheduler / worker status for supported profiles
Acceptance criteria:
- ordinary menu flows are understandable without low-level tuning knowledge
- cancel/empty paths do not behave as hard errors
- status commands are read-only and safe
- pause/resume is reversible
4. SSL / Update Acceptance
Required flows:
- issue Let’s Encrypt during or after site creation
- inspect SSL status and list output
- verify renew timer visibility
- run
self update - confirm existing working sites still pass basic checks afterwards
Acceptance criteria:
- certificate issuance does not break site creation
- update channel remains deterministic
- already working sites remain working after update
5. Documentation Acceptance
Required docs:
- menu-first user guide
- command reference for daily operations
- lifecycle runbooks for supported CMS/framework profiles
- system/update/automation reference
Acceptance criteria:
- docs describe the current menu wording
- docs describe the current command names
- no critical daily flow depends on undocumented behavior
Current Go / No-Go Rule
Production rollout is allowed when:
- all critical checks above pass
- remaining issues are warnings only
- remaining warnings are understood and documented
Production rollout is blocked when any of the following is true:
- a core lifecycle cannot be completed repeatably
- update breaks working sites
- status/automation layers behave unpredictably
- docs diverge from real operator behavior
Reporting Format
Each production-readiness cycle should end with:
- what was tested
- what passed
- what failed
- what remains before production rollout