chore: remove MVP positioning and align plan defaults (#15)

## Summary
- remove MVP wording from repository docs and guidance
- rename the system plan document and update references to it
- align the default subscription plan code/name with product wording
- document hard subscription expiry with no grace period

## Verification
- docker build -f infra/docker/web.Dockerfile .
- docker build -f infra/docker/migrate.Dockerfile .

Co-authored-by: sirily <sirily@git.shararam.party>
Reviewed-on: #15
This commit was merged in pull request #15.
This commit is contained in:
2026-03-10 15:01:06 +03:00
parent ba029d8f3f
commit 55472de23d
11 changed files with 73 additions and 26 deletions

View File

@@ -6,7 +6,7 @@ Deploy on one VPS with Docker Compose.
## Why this target
- The system has multiple long-lived components: web, worker, bot, database, and reverse proxy.
- Compose gives predictable service boundaries, easier upgrades, and easier recovery than manually managed host processes.
- It keeps the path open for later separation of web, worker, and bot without reworking the repository layout.
- It preserves clear service boundaries if separation is ever needed later.
## Expected services
- `migrate`: one-shot schema bootstrap job run before app services start
@@ -22,7 +22,7 @@ Deploy on one VPS with Docker Compose.
- Keep persistent data in named volumes or external storage.
- Keep secrets in server-side environment files or a secret manager.
- Back up PostgreSQL and object storage separately.
- Prefer Telegram long polling in MVP to avoid an extra public webhook surface for the bot.
- Prefer Telegram long polling to avoid an extra public webhook surface for the bot.
## Upgrade strategy
- Build new images.
@@ -33,7 +33,7 @@ Deploy on one VPS with Docker Compose.
## Current database bootstrap state
- The current Compose template runs a `migrate` service before `web`, `worker`, and `bot`.
- The job runs `prisma migrate deploy` from the committed migration history.
- The same bootstrap job also ensures the default MVP `SubscriptionPlan` row exists after migrations.
- The same bootstrap job also ensures the default `SubscriptionPlan` row exists after migrations.
- Schema changes must land with a new committed Prisma migration before deployment.
## Initial operational checklist