Accommodation Live Cutover Window
Purpose
This document records the first real live env-only accommodation cutover window.
It used the canonical extracted accommodation runtime target:
http://localhost:4022
It kept the old colocated accommodation host available on:
http://localhost:4020
Exact env change used
Changed:
From:
ACCOMMODATIONS_SERVICE_URL=http://localhost:4020
To:
ACCOMMODATIONS_SERVICE_URL=http://localhost:4022
No gateway route definitions changed.
No auth behavior changed.
Cutover steps
- verify old host remained available on
4020 - start
svc-accommodationson4022 - confirm live API gateway on
4001still matched old host before the seam flip - change only
ACCOMMODATIONS_SERVICE_URLinservices/api/.env - restart the live API process on
4001 - run immediate smoke checks through the live API gateway
- compare the live API responses to direct
svc-accommodationsresponses
Smoke checks run
GET /api/v1/accommodations?page=1&pageSize=1GET /api/v1/accommodations/ACC-GE-2026-0102POST /api/v1/accommodations/ACC-GE-2026-0102/quoteGET /api/v1/my-accommodation-bookingsGET /api/v1/owner/accommodation-listingsGET /api/v1/owner/accommodation-reservationsPOST /api/v1/accommodation-listingswithout a bearer token
Authenticated checks used the existing dev impersonation flow through /auth/dev/impersonate.
Observations
- post-cutover gateway responses matched direct
svc-accommodationsresponses for the checked set - status codes matched expected parity
- auth behavior stayed unchanged
- old
svc-tendersaccommodation hosting remained available on4020 - quote responses stayed correct; the only request-time variance was
computedAt
Cutover outcome
- live env-only cutover was executed successfully
- cutover remained in place
- rollback was not needed
Rollback notes
Rollback remained available throughout the window:
- change
ACCOMMODATIONS_SERVICE_URLback tohttp://localhost:4020 - restart
services/api - verify fallback against old
svc-tendersaccommodation hosting
That rollback path was not used because no serious mismatch occurred.