Context
Product Goals
- Build the candidate locally or in CI before traffic changes.
- Start the new service beside the existing one on an internal port.
- Verify the canary directly before touching the public route.
- Change only the intended Nginx location.
- Keep a rollback script and previous config before reload.
- Verify unrelated services after the switch.
Engineering Shape
Decisions
- Prefer additive deployment over replacing a running service in place.
- Treat production routing as drift-prone and verify it live.
- Avoid touching databases or unrelated subdomains for frontend-only releases.
- Record the rollback path before the route is changed.