Property #1 Launch Roadmap — Deferred Items (2026-05-08)
Companion to
property-1-launch-roadmap-v2-2026-05-07.md. Tracks every task that the autonomous execution pass on 2026-05-08 could not close locally and explains exactly what unblocks each one.
The 2026-05-08 session shipped 4 audit branches across 3 repos end-to-end (AP-T07-003 backend + UI, AP-T01-002, AP-T01-003). Items below were either out-of-bounds for the autonomous environment or require multi-day frontend work that wouldn't have closed cleanly inside a single resumable session.
2026-05-08 FOURTH PASS — AP-T01-005 follow-ups + bulk picker + RoomStatusSelector tests
A fourth continuation pass on 2026-05-08 closed 4 follow-up items across 5 repos, all merged + pushed to remote master:
| AP-ID | Repo | Branch | Master HEAD after merge |
|---|---|---|---|
| AP-T01-005-followup (reservation room-nights endpoint) | hmp-reservation-service | audit/AP-T01-005-followup-reservation-room-nights-counter | e7ea549 |
| AP-T01-005-followup (@hmp/service-clients 1.19.0) | hmp-shared-packages | audit/AP-T01-005-followup-service-clients-bump | 63fbaec |
| AP-T01-005-followup (auth wiring — getUsage) | hmp-auth-service | audit/AP-T01-005-followup-auth-room-nights-wiring | bff479e |
| AP-T01-005-followup (pos-service tenant-orders endpoint) | hmp-pos-service | audit/AP-T01-005-followup-pos-tenant-orders-counter | b365a26 |
| AP-T01-005-followup (@hmp/service-clients 1.20.0) | hmp-shared-packages | audit/AP-T01-005-followup-service-clients-bump-1.20 | 5036424 |
| AP-T01-005-followup (auth wiring — getPosTransactionCount) | hmp-auth-service | audit/AP-T01-005-followup-auth-pos-orders-wiring | 5708ee6 |
| AP-T13-003-followup (bulk room picker) | hmp-web-dashboard | audit/AP-T13-003-followup-bulk-room-picker | f9119c6 |
| AP-T16-003-followup (RoomStatusSelector tests) | hmp-mobile-apps | audit/AP-T16-003-followup-roomstatus-testids | ce9cd17 |
Net effect of fourth pass:
- AP-T01-005 cluster fully closed. All 11 xPrisma sites in
auth-service
billing/previously replaced with PropertyServiceClient (third pass) now also have real reservation-service + pos-service endpoints powering the room-nights and POS-transaction counts — zero WARN-with-zero stubs remain. Six commits across three repos ship the end-to-end wiring with TDD coverage at every layer. - AP-T13-003-followup: BlockRangeDialog now supports a multi-room chip picker. Toolbar entry-point opens the dialog with the visible rooms list; right-click entry-point unchanged (single-room mode). 15/15 specs pass.
- AP-T16-003-followup: 3 pre-existing component-vs-test mismatches
in
RoomStatusSelector.test.tsxresolved by rewriting the spec to match the actual component contract (component is correctly designed — pure-presentational selector with parent-owned mutation). Mobile-apps test suite is now 100% green (155/155 vs 152/155 prior).
2026-05-08 THIRD PASS — additional shipments
A third continuation pass on 2026-05-08 closed 5 more audit items across 4 repos (3 substantive shipments + 2 cleanups of already-merged branches), all merged + pushed to remote master:
| AP-ID | Repo | Branch | Master HEAD after merge |
|---|---|---|---|
| AP-T01-005 | hmp-auth-service | audit/AP-T01-005-billing-xprisma-cleanup | 46f2628 |
| AP-T13-002 | hmp-web-dashboard | audit/AP-T13-002-tape-chart-multiselect | 0cb6adb |
| AP-T13-003 | hmp-web-dashboard | audit/AP-T13-003-block-range-dialog | 6651ca9 |
| AP-T11-016 (cleanup) | hmp-docs | already merged via eb5f0e4; stale local branch deleted | (no change) |
| AP-CC-4 (cleanup) | hmp-infrastructure | already merged via 386f7a1 + 7a5891f; stale local branch deleted | (no change) |
Net effect of third pass:
- AP-T01-005: 11 xPrisma sites in
auth-service/src/billing/replaced withPropertyServiceClientcalls. Reservation room-night and POS transaction counts return 0 with WARN log, gated by two new follow-ups (AP-T01-005-followup-reservation-room-nights-counter,AP-T01-005-followup-pos-service-tenant-counter). 6 new TDD specs pass; 5 fewer pre-existing failures + 5 net new passes (no regressions).grep -rn "xPrisma\|(this.prisma as any)" hmp-auth-service/src/billing/now returns 0 hits in non-spec / non-comment lines. - AP-T13-002:
Bar.onClickintape-chart-v2/bar.tsxhonorsCtrl/Cmd+Click— toggles the reservation inuseSelection.selectedIdsinstead of falling through to single-select. UnblocksBulkActionToolbarfrom mouse-only users. 4 new TDD specs. - AP-T13-003: Full Block Range dialog with two entry-points
(right-click → CellContextMenu "Block Range…", toolbar header
"Block Range" button). Posts to
POST /api/rooms/:roomId/blockor/api/rooms/block-batch(backend already shipped). Bulk room multi-select is a v2 follow-up (AP-T13-003-followup-bulk-room-picker). 7 new TDD specs cover title rendering, date validation, single API call, bulk API call, batch-failure inline list, 409 surfacing. - AP-T11-016 + AP-CC-4 cleanup: both branches were already merged
in earlier sessions; stale local branches deleted to keep
git branch -aclean. The deferred-doc rows below are obsolete.
2026-05-08 SECOND PASS — additional shipments
A continuation pass on 2026-05-08 closed 9 more audit branches across 8 repos, all merged + pushed to remote master:
| AP-ID | Repo(s) | Branch | Master HEAD after merge |
|---|---|---|---|
| AP-T02-005 | hmp-property-service | audit/AP-T02-005-bulkcreate-roomtype-property-validation | 1cec19a |
| AP-T02-006 | hmp-property-service | audit/AP-T02-006-tenant-assertions-create-endpoints | 3269053 |
| AP-T16-001 (banquet) | hmp-banquet-service | audit/AP-T16-001-guest-erased-spec-fix | 57f2344 |
| AP-T16-001 (crm) | hmp-crm-service | audit/AP-T16-001-guest-erased-spec-fix | 34353c4 |
| AP-T16-001 (payment) | hmp-payment-service | audit/AP-T16-001-guest-erased-spec-fix | 31c0582 |
| AP-T16-001 (spa) | hmp-spa-service | audit/AP-T16-001-guest-erased-spec-fix | 63b9f0e |
| AP-T16-001 (reservation — added new spec) | hmp-reservation-service | audit/AP-T16-001-guest-erased-reservation-spec | 3e01f70 |
| AP-T16-003 | hmp-mobile-apps | audit/AP-T16-003-jest-expo-preset | a463a7a |
| AP-T18-003 + AP-T18-005 (artifact prep) | hmp-infrastructure | audit/AP-T18-003-T18-005-baselines-prep | 7a5891f |
Net effect of second pass:
- AP-T02 cluster: closed all property-service P0 schema/tenant items in the executable backlog.
- AP-T16-001: 5/5 guest-erased consumer specs ship in 5 repos. One
reservation spec was newly authored (no prior spec existed); the other 4
are mock-fix repairs (each consumer's mock prisma was missing the model
method the consumer touched, e.g.
eventBooking.updateMany). - AP-T16-003: 152/155 mobile-apps tests pass (was 0/155). Root cause
was npm workspace hoisting prevented
react-nativefrom being at root node_modules (apps/guest pinned 0.76.0 vs others' 0.76.5). 3 remaining failures are pre-existing component-vs-test mismatches inRoomStatusSelector.test.tsx(testIDstatus-button-CLEANnot exposed by component) tracked asAP-T16-003-followup-roomstatus-testids. - AP-T18-003 / AP-T18-005: artifacts committed (top-20 endpoints list, p95 budget yaml, extract-p95.js helper, Grafana dashboard template, full alert-verification matrix for all 47 alert rules). Both items remain OPEN-PENDING-OPS-RUN until ops executes the k6 load run + alert delivery verification on staging during Wave I day 8.
Deferred — operational / infra (need shell + creds)
These all need ops + DRI + procurement and can't be executed from inside Claude's autonomous worktree.
| AP-ID | What | Blocker | Who unblocks |
|---|---|---|---|
| AP-T09-002 | Pre-flight duplicate-detection SQL on QA RDS | Needs ssh ubuntu@43.204.247.178 + RDS creds; not available to autonomous run. | Ops engineer — execute bash /opt/hmp/scripts/migration/preflight-property1.sh and commit output to property-1-preflight-2026-05-XX.txt. |
| AP-T09-003 | Apply RoomInventoryLock + NightAuditLog migrations on QA + staging | Same SSH + RDS dependency. The migration SQL files themselves are already committed in audit(AP-T03-002) (reservation 8359590) and audit(AP-T09-001) (frontdesk 0671e81). | Ops engineer — bash scripts/migration/apply-property1-migrations.sh qa + repeat on staging. |
| AP-T12-002 | Real Razorpay LIVE creds in prod compose | Procurement — finance team must obtain LIVE credentials from Razorpay. | Finance + DevOps — provision into AWS Secrets Manager, then update docker-compose.prod-aws.yml env passthrough. |
| AP-T17-001 | Boot-guard runtime verification on staging | Needs SSH to staging EC2 + ability to restart pods; Docker daemon is offline locally. | Ops — unset each guarded env var on staging compose, restart, observe crash-loop, restore. Wave H schedule. |
| AP-T17-002 | Real prod credentials provisioning (Razorpay LIVE / SendGrid prod / NIC IRP / JWT rotation) | Procurement + security review. | Ops + finance + security. |
| AP-T17-003 | prisma migrate deploy on prod RDS | Same SSH + RDS dependency as T09-002/003 plus prod blast radius — needs DRI sign-off. | DRI + ops — only after AP-T09-002 pre-flight PASSES on prod. |
| AP-T17-004 | Smoke test 13 launch flows on staging | Manual UX walk-through across staging compose; not autonomous-executable. | DRI + 2 engineers, Wave H day 11. |
| AP-T17-005 | DR drill (quarterly-drill.sh) | Needs prod-like staging + cross-region failover hooks; ops-only. | Ops, Wave H day 12. |
| AP-T18-004 | External pen test | Vendor engagement — multi-week procurement. | Security lead. |
Deferred — multi-day frontend work (should be a focused future session)
These each fit inside autonomous mode but are large enough that bundling them with the smaller audit fixes risks blocking everything behind one unfinished bundle.
| AP-ID | What | Blocker | Suggested split |
|---|---|---|---|
| AP-T02-003 | Property setup wizard expansion (4 → 7 steps) | 3-day effort; one sub-step (Address & Map with Google Places autocomplete + lat/lng) needs a procurement-gated Google Maps API key. | Three follow-up branches: (a) Tax Configuration step alone (reuses existing apply-indian-defaults endpoint, ships in 1d), (b) Photos step wired to the existing <ImageUploadWidget> from AP-T02-003-image-upload (1d, no new API), (c) Address+Map + Cancellation Policy editor (1d once the Google Maps key is procured). |
| AP-T13-001 | Un-skip Tape Chart Playwright suite (11 test.skip calls) | Needs Docker daemon up to run npx playwright test against a live dev compose stack — autonomous environment has Docker offline. Estimated 3d wall-clock once Docker is available because expected to surface 2+ real bugs that need AP-side fixes. | Run from a session with Docker available; the suite is on disk at e2e/tape-chart-v2.spec.ts and the SKIP_REASON constants are grep-friendly. |
| AP-T13-002 | Wire Ctrl+Click multi-select on Tape Chart Bar | Has Playwright dependency — strict reading of "tests-before-fix" charter blocks closing this without AP-T13-001's fixture infra. | Ship together with AP-T13-001 in a Docker-enabled session. |
| AP-T13-003 | Tape Chart RoomBlocks "Block range" frontend | Same Playwright dependency as T13-002. | Same session as T13-001/T13-002. |
| AP-T16-001 | guest-erased.consumer.spec.ts regression in 5 services | Needs all 5 services' Jest configs running; autonomous environment has been hit-or-miss with cross-service simultaneous runs. The fix is deterministic (mock-call signature drift) but applying in 5 places + verifying each is wall-clock heavy. | One audit branch per service; ~1h each. |
| AP-T16-002 | Dashboard 309 vitest failures (next-auth/SessionProvider wrapping) | 3-day effort. Test-setup-level fix that affects 86 spec files. | Standalone session with full vitest+RTL focus. |
| AP-T16-003 | jest-expo preset for hmp-mobile-apps | Needs npm install jest-expo + native-module shims; autonomous worktree's npm has been intermittent on optional native deps. | Quick session inside hmp-mobile-apps with stable npm. |
| AP-T16-004 | --coverage runs (gates 5/6/8) | Depends on T16-001 + T16-002 first; coverage report is meaningful only once the failing tests pass. | After T16-001/T16-002 ship. |
Wave G items — many have existing local branches from prior sessions
A branch survey across all 13 backend repos + 5 frontend apps on 2026-05-08
turned up several prior-session branches that already cover roadmap items
the v2 review listed as open. The autonomous prompt's initial sanity-check
pass (git log --grep="audit(AP-" on master HEAD) missed these because the
branches diverged from master and the commits didn't show up under master's
git log. Caller should verify each branch and merge or rebase as appropriate.
| AP-ID | Existing branch | Repo | Status |
|---|---|---|---|
| AP-T02-001 (UploadUrlDto.mimeType rename) | audit/AP-T02-001-uploadurldto-mimetype-rename | hmp-property-service | Has commit c8b5733. Verify acceptance + merge. |
| AP-T02-001 (lat/lng + googleMapsUrl) | audit/AP-T02-001-property-latlng-google-maps | hmp-property-service | Has commit 66c9eac. Distinct feature from the mimeType fix — both belong under AP-T02-001 if interpreted broadly. |
AP-T02-002 (rate-plans.controller.spec.ts compile fix) | audit/AP-T02-002-rate-plans-spec-compile-fix | hmp-property-service | Already shipped as commit f9d3e11. Merge this branch — no new work needed. |
| AP-T02-005 + AP-T02-006 + AP-T09-004 (schema + validation) | audit/AP-T09-004-T02-005-T02-006-property-schema | hmp-property-service | Bundled commit a7169e7. Verify acceptance per individual T02-005/006 acceptance criteria. |
| AP-T02-003 (image upload widget) | audit/AP-T02-003-image-upload-widget | hmp-web-dashboard | Partial — covers the photo-upload-widget half but not the full 7-step wizard expansion. The full setup-wizard expansion is still in the multi-day-frontend deferred section. |
| AP-T13-001 + AP-T09-001 | audit/AP-T13-001-and-T09-001-frontdesk-fixes | hmp-frontdesk-service | Partial — verify which sub-acceptance items shipped. AP-T09-001 already on master via 0671e81. |
| AP-T13-002 (tape-chart filter chips) | audit/AP-T13-002-tape-chart-filters | hmp-frontdesk-service + hmp-web-dashboard | Multi-repo branch. Covers backend filter params + dashboard URL-state filter chips. |
| AP-T13-004 (mark-no-show) | audit/AP-T13-004-tape-chart-no-show | hmp-web-dashboard | Out of v2 review scope (v2 review focused on T13-001/002/003) but companion frontend work. |
| AP-T01-005 (auth-service xPrisma cleanup) | audit/AP-T01-005-public-billing-plans | hmp-auth-service | Distinct task from the legacy billing-module deletion called out in the v2 review. Verify which sub-task this covers. |
Still outstanding (no existing branch, executable in a focused session)
These each fit a 30-90 min branch from clean-master start. Items 1-7 all shipped in the first 2026-05-08 pass + the second pass. Items 8+ remain.
AP-T02-004 — Tax slab boundaries✅ shipped (master66d1ff4)AP-T02-007 — Remove auto-Tenant-stub✅ shipped (master6e55ebd)AP-T04-001 — reservations xPrisma.guest replacement✅ shippedAP-T04-002 — Cmd+K palette removal✅ shipped (in4ab98ee)AP-T04-003 — Dashboard reservations search✅ shipped (957498a+b4de1d2)AP-T01-004 — Tenant compliance columns✅ shipped (master84a37a5)AP-T09-003 (S3 wiring half)✅ shipped (master2f797e9)AP-T02-005 — bulkCreate roomType validation✅ shipped 2026-05-08 second pass (master1cec19a)AP-T02-006 — Tenant assertions on 4 endpoints✅ shipped 2026-05-08 second pass (master3269053)AP-T16-001 — guest-erased consumer specs (5 services)✅ shipped 2026-05-08 second passAP-T16-003 — jest-expo preset✅ shipped 2026-05-08 second pass (mastera463a7a)- AP-T18-003 — p95 baselines — artifacts committed (
7a5891f); execution pending ops day 8 - AP-T18-005 — alert verification — matrix committed (
7a5891f); execution pending ops day 8
Next executable batch (queue these for a fresh focused session):
AP-T01-005 — auth-service xPrisma cleanup✅ shipped 2026-05-08 third pass (master46f2628)AP-T13-002 — tape-chart Ctrl+Click multi-select✅ shipped 2026-05-08 third pass (master0cb6adb)AP-T13-003 — RoomBlocks Block Range button✅ shipped 2026-05-08 third pass (master6651ca9)AP-T11-016 — spec/plan reconciliation✅ already merged viaeb5f0e4(third pass cleanup)AP-CC-4 — compose env hygiene✅ already merged via386f7a1+7a5891f(third pass cleanup)
Remaining queue (ops-gated, non-autonomous, or needing focused session):
- AP-T13-001 — Un-skip Tape Chart Playwright suite (needs Docker daemon up)
- AP-T16-002 — Dashboard 309 vitest failures (3-day SessionProvider rewrite)
- AP-T16-004 —
--coverageruns (depends on T16-002) - AP-T17-001 / 002 / 003 / 004 / 005 — staging + prod ops execution (SSH)
- AP-T18-001 — W4.1.x test matrices (5d artifact authoring)
- AP-T18-002 — W4.2.x compliance evidence packets (vendor + 50-invoice)
- AP-T18-003 — p95 baselines execution (artifacts shipped
7a5891f; pending k6 run) - AP-T18-004 — pen test (vendor procurement, multi-week)
- AP-T18-005 — alert verification execution (matrix shipped
7a5891f; pending PagerDuty/Slack live) - AP-T12-002 — Razorpay LIVE creds (procurement)
✅ Closed in fourth pass:
AP-T01-005-followup-reservation-room-nights-counter✅ shippedAP-T01-005-followup-pos-service-tenant-counter✅ shippedAP-T13-003-followup-bulk-room-picker✅ shippedAP-T16-003-followup-roomstatus-testids✅ shipped (mobile-apps now 155/155)
The remaining items are not autonomous-doable today — they need Docker (T13-001), focused multi-day pairing (T16-002, T18-001), ops/SSH access (T17-*), vendor procurement (T18-002, T18-004, T12-002), or operator-driven execution against staging (T18-003, T18-005). The deferred-doc rows above are the canonical handoff list for the next operator/engineer.
Already shipped this session — merged + pushed to remote master
| AP-ID | Repo(s) | Branch | Master HEAD after merge |
|---|---|---|---|
| AP-T07-003 backend | hmp-pos-service | audit/AP-T07-003-menu-item-hsn-gst-dto | 7e367f0 |
| AP-T07-003 UI | hmp-web-dashboard | audit/AP-T07-003-menu-item-hsn-gst-ui | (in 4ab98ee) |
| AP-T01-002 | hmp-notification-service | audit/AP-T01-002-email-verification-consumer | 3f6acba |
| AP-T01-003 | hmp-web-dashboard | audit/AP-T01-003-verify-email-page | (in 4ab98ee) |
| AP-T04-002 | hmp-web-dashboard | audit/AP-T04-002-cmdk-palette-removal | (in 4ab98ee) |
| AP-T02-004 | hmp-property-service | audit/AP-T02-004-tax-slab-schema-driven | 66d1ff4 |
| AP-T10-001 (prior session) | hmp-web-dashboard | audit/AP-T10-001-report-card-tile-reportids | (in 4ab98ee) |
| AP-T13-004 (prior session) | hmp-web-dashboard | audit/AP-T13-004-dashboard-theme-claude-md | (in 4ab98ee) |
| AP-T13-004 (prior session) | hmp-docs | audit/AP-T13-004-tape-chart-no-show | 204d370 |
| AP-CC-4 docs side (prior session) | hmp-docs | audit/AP-CC-4-compose-env-hygiene | 204d370 |
| AP-T00 handoff | hmp-docs | audit/AP-T00-deferred-handoff-2026-05-08 | 654edfb |
Plus 5 prior-session bundles merged across hmp-pos / hmp-frontdesk / hmp-housekeeping / hmp-reservation / hmp-property / hmp-channel / hmp-notification / hmp-infrastructure (full list above this section). All masters confirmed pushed to Azure DevOps remote.
Branches NOT merged — need manual conflict resolution
| AP-ID | Repo | Branch | Why deferred |
|---|---|---|---|
| AP-CC-4 | hmp-infrastructure | audit/AP-CC-4-compose-env-hygiene | 5 content conflicts across CLAUDE.md, docker/docker-compose.prod-aws.yml (3 sections), docker/docker-compose.staging-aws.yml. Production compose files — must NOT auto-resolve via -X theirs / -X ours because wrong choice breaks production. Branch's original intent: (a) strip EINVOICE_MOCK / HARDWARE_MOCK from staging+prod, (b) add NIC/SendGrid/S3/CHANNEL_MODE placeholders, (c) wire scripts/ci/check-no-prod-mocks.sh into CI. Since 2026-05-01 (branch's create date), EINVOICE_MOCK was already flipped off in staging+prod via separate audit/AP-CC-4 commit 6681da7 on master. Suggested resolution: rebase the branch onto current master, manually take the union of CI script + new env placeholders, discard the duplicate EINVOICE_MOCK removals. |
| AP-T11-016 spec | hmp-docs | audit/AP-T11-016-spec-and-plan | 2 content conflicts in docs/superpowers/plans/2026-04-30-asset-service-v1-plan-2-asset-vendor.md (add/add) and docs/superpowers/plans/2026-04-30-gold-standard-reporting-master-index.md (UU). Branch carries May-1 content that 7 days of subsequent work has superseded. Most spec content has likely been re-authored in newer plan files. Suggested resolution: cherry-pick only the truly novel commits (e.g. T11-016-specific spec sections) and discard the conflicting older snapshots. |
Branches deleted (superseded / empty starters)
| Branch | Repo | Why |
|---|---|---|
audit/AP-T11-016-dashboard-audit-tabs | hmp-web-dashboard | Empty "start branch" placeholder commit only — no work done. |
audit/W2.A.2-menu-item-admin-ui | hmp-web-dashboard | Superseded by audit/AP-T07-003-menu-item-hsn-gst-ui (already merged) — same scope, my version is on master. |
How to use this file
The next autonomous run (or human picking up the slack) should:
- Open the executable backlog section (Wave G items 1-11) and pick the next item — they all fit cleanly in a 30-90 min branch.
- Treat the deferred-operational section as the gating list for the
on-call ops + DRI rotation: AP-T17-* items must complete before launch
day per
property-1-launch-readiness-review-v2-2026-05-07.md§13. - Treat the deferred-multi-day-frontend section as candidates for a focused frontend session with Docker available.
When an item lands, delete its row from this file (or move it to the "Already shipped" table). When a new blocker is discovered, add a row with the same shape.