You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The owner has delegated product and infrastructure decisions and requires free resources for the initial launch. No hosting account, domain or staging environment has been provisioned. This replaces the previous assumption that paid managed PostgreSQL/Redis and an owned chanter.app domain were already available.
Prepare a reproducible single-host deployment for an Oracle Always Free A1 allocation, subject to actual account eligibility and capacity. The current published allowance is 2 OCPU and 12 GB memory. Use self-managed PostgreSQL and Redis with explicit persistent volumes, backups and restoration procedures; serve the frontend and API/WebSockets through a same-origin Caddy HTTPS entry point. Cloudflare remains optional for an owned domain. Do not introduce paid plans, credit-card charges or automatic top-ups.
The free host can operate one environment at a time. Separate staging and production Compose projects, secrets and data; validate ephemeral staging in CI and document the stop/switch procedure and downtime when staging must run on the host. Persistent simultaneous staging, high availability and managed databases are not promised by this budget.
Acceptance criteria
Every application deploy unit has a reproducible non-root OCI image, health/readiness probes, resource limits, graceful shutdown and pinned runtime version.
Versioned configuration defines the frontend, API/realtime services, PostgreSQL, Redis, secret injection and persistent data; environment identity prevents staging/production volume or secret overlap.
The provisioned public hostname serves the SPA over valid TLS; API and realtime WebSockets work through the public entry point without exposing internal service ports.
HTTPS/security headers, allowed origins, firewall boundaries, secret permissions and optional Cloudflare settings are auditable. Do not claim an unowned domain or untested dynamic-DNS address as deployed.
CI builds and scans release images on free public runners. Deployment uses an immutable release identity, serialized migration ownership, health verification and a tested rollback to the prior compatible release.
Secrets and production data never enter repository files, build logs, frontend bundles or demo seed scripts.
The decision records free-tier limits, resource sizing, capacity/reclamation risks, single-host failure domain, downtime and upgrade triggers.
Actual account provisioning, HTTPS smoke, migration/rollback smoke and production readiness are recorded separately from repository/CI checks; the issue stays open until the required deployment proof exists.
Complete all repository implementation and dry-run validation first. Account identity, provider eligibility and any required authentication cannot be invented or bypassed. Ask for only a concrete required account action after the deployment package is ready. No paid resources are authorized.
Parent
#107 (identified by #238)
Owner direction and deployment decision
The owner has delegated product and infrastructure decisions and requires free resources for the initial launch. No hosting account, domain or staging environment has been provisioned. This replaces the previous assumption that paid managed PostgreSQL/Redis and an owned
chanter.appdomain were already available.Prepare a reproducible single-host deployment for an Oracle Always Free A1 allocation, subject to actual account eligibility and capacity. The current published allowance is 2 OCPU and 12 GB memory. Use self-managed PostgreSQL and Redis with explicit persistent volumes, backups and restoration procedures; serve the frontend and API/WebSockets through a same-origin Caddy HTTPS entry point. Cloudflare remains optional for an owned domain. Do not introduce paid plans, credit-card charges or automatic top-ups.
The free host can operate one environment at a time. Separate staging and production Compose projects, secrets and data; validate ephemeral staging in CI and document the stop/switch procedure and downtime when staging must run on the host. Persistent simultaneous staging, high availability and managed databases are not promised by this budget.
Acceptance criteria
Blocked by
Provisioning checkpoint
Complete all repository implementation and dry-run validation first. Account identity, provider eligibility and any required authentication cannot be invented or bypassed. Ask for only a concrete required account action after the deployment package is ready. No paid resources are authorized.
Source: Oracle Always Free resources.