Frozen document. Dates and status refer to its original source. Private resources and unreviewed images are unavailable.
status: accepted
Certify Atlas locally, then host the prototype in the cloud
The owner chose a two-stage path in Choose cloud-hosted BFF placement for the Atlas prototype: develop and test the complete prototype on the Mac first, certify its selected journeys there, and only then deploy the UI to a hosted static platform and the BFF and supporting services to a cloud VPS. Contentful remains SaaS throughout. This supersedes the dedicated local Lima VM and local-only demo placement in ADR 0008, while retaining its TypeScript/Fastify BFF and private backend adapters. ADR 0009 remains the browser authentication decision.
On the Mac, run the React/Vite app and the real BFF, Keycloak, Camunda, PostgreSQL, ClamAV, workers and synthetic legacy/payment simulators with a local Docker Compose setup where supported. Use a loopback HTTPS gateway for integrated certification. A Docker runtime may use virtualization internally on macOS; Atlas does not require the previously proposed dedicated Lima guest or treat it as a host-security boundary. Do not expose a cloud-to-Mac tunnel or public local ingress.
[Private setup detail omitted.]
The local integrated test is the main behavioral certification seam. A hosted deployment has a second promotion gate: rerun critical end-to-end journeys and security, recovery, upload, locale and persistence checks through the actual hosted HTTPS origin. Passing locally does not certify the hosted proxy, DNS, TLS, cookie or VPS configuration. Record separate local and hosted resource/timing baselines, then agree numerical thresholds from measurements. Both stages use only synthetic customers, simulated money movement and simulated legacy systems.
This path lets the owner iterate and verify on the Mac before paying for or exposing cloud infrastructure. It also adds deployment and operational work: provider eligibility, VPS capacity, backups, TLS, secrets, patching and public-route validation must be established before the hosted gate. A single VPS is one failure domain and the prototype makes no production-availability or compliance claim. MuleSoft/CloudHub remains deferred to a later phase; moving to it requires a new decision and migration plan.