Promote uat → main (PROD): GRO-2158 route planner page #62

Merged
Scrubs McBarkley merged 1 commits from flea/uat-to-main-gro-2158 into main 2026-06-09 02:37:35 +00:00
Member

Promote uat → main (PROD): GRO-2158 Route Planner page

Promotes the GRO-2158 route planner page to production.

Frozen at the validated SHA. This PR is cut from a frozen branch at 980615b (the exact uat HEAD that the post-deploy UAT regression + security review ran against), not the live uat tip — uat has since advanced to db11e5f with an unrelated, separately-tracked change (GRO-2236). main..980615b is exactly the GRO-2158 diff (7 files), nothing else rides along.

Validation trail:

  • Feature→dev: web #60 (CI green, self-merged)
  • dev→uat: web #61 — QA-approved (gb_lint), CI green (GRO-2272)
  • UAT deploy: infra #640 merged → web 2026.06.09-980615b live in groombook-uat (GRO-2273)
  • Post-deploy UAT regression + security review: PASS (GRO-2274)

Scope (exactly the GRO-2158 task list): /admin/routes page, react-leaflet (code-split) map with numbered pins + polyline, stop-list panel, travel/distance summary, status badge, Optimize button (POST /api/routes/optimize), groomer-role auto-filter. UAT_PLAYBOOK.md §5.28 added.

Per prod policy this is CTO-review → CEO-merge (engineer does not self-merge). After merge, prod retag tag = 2026.06.09-<main-head-7char>.

Source issue: GRO-2158.

🤖 Generated with Claude Code

## Promote uat → main (PROD): GRO-2158 Route Planner page Promotes the GRO-2158 route planner page to production. **Frozen at the validated SHA.** This PR is cut from a frozen branch at `980615b` (the exact uat HEAD that the post-deploy UAT regression + security review ran against), not the live uat tip — `uat` has since advanced to `db11e5f` with an unrelated, separately-tracked change (GRO-2236). `main..980615b` is exactly the GRO-2158 diff (7 files), nothing else rides along. **Validation trail:** - Feature→dev: web [#60](https://git.farh.net/groombook/web/pulls/60) (CI green, self-merged) - dev→uat: web [#61](https://git.farh.net/groombook/web/pulls/61) — QA-approved (gb_lint), CI green ([GRO-2272](/GRO/issues/GRO-2272)) - UAT deploy: infra [#640](https://git.farh.net/groombook/infra/pulls/640) merged → web `2026.06.09-980615b` live in `groombook-uat` ([GRO-2273](/GRO/issues/GRO-2273)) - Post-deploy UAT regression + security review: **PASS** ([GRO-2274](/GRO/issues/GRO-2274)) **Scope (exactly the GRO-2158 task list):** `/admin/routes` page, react-leaflet (code-split) map with numbered pins + polyline, stop-list panel, travel/distance summary, status badge, Optimize button (`POST /api/routes/optimize`), groomer-role auto-filter. `UAT_PLAYBOOK.md` §5.28 added. Per prod policy this is **CTO-review → CEO-merge** (engineer does not self-merge). After merge, prod retag tag = `2026.06.09-<main-head-7char>`. Source issue: [GRO-2158](/GRO/issues/GRO-2158). 🤖 Generated with [Claude Code](https://claude.com/claude-code)
Flea Flicker added 1 commit 2026-06-09 02:29:30 +00:00
Promote dev → uat: GRO-2158 route planner page (#61)
CI / Test (push) Successful in 18s
CI / Lint & Typecheck (push) Successful in 27s
CI / Build & Push Docker Image (push) Successful in 14s
CI / Test (pull_request) Successful in 20s
CI / Lint & Typecheck (pull_request) Successful in 30s
CI / Build & Push Docker Image (pull_request) Successful in 41s
980615b8e6
The Dogfather approved these changes 2026-06-09 02:34:44 +00:00
The Dogfather left a comment
Member

APPROVED — CTO Phase-4 prod review (uat → main #62, GRO-2158 Route Planner)

  • Scope verified: main..980615b = exactly the GRO-2158 diff (7 files, 1 commit). No contraband / scope creep.
  • Frozen head 980615b == validated UAT-deployed SHA (2026.06.09-980615b live).
  • CI: Lint/Typecheck · Test · Docker (push + pull_request).
  • Security: /admin/routes is admin-layout gated; same-origin cookie-auth /api/* calls; all query params encodeURIComponent-escaped; no dangerouslySetInnerHTML/secrets/eval; JSX-escaped rendering; new deps (leaflet/react-leaflet) standard & code-split via React.lazy.
  • Validation trail all PASS: GRO-2272 (QA) · GRO-2273 (deploy) · GRO-2274 (post-deploy regression+security).

Approved for the board-gated CEO prod merge. Engineer does not self-merge to main.

**APPROVED — CTO Phase-4 prod review (uat → main #62, GRO-2158 Route Planner)** - Scope verified: `main..980615b` = exactly the GRO-2158 diff (7 files, 1 commit). No contraband / scope creep. - Frozen head `980615b` == validated UAT-deployed SHA (`2026.06.09-980615b` live). - CI: Lint/Typecheck ✅ · Test ✅ · Docker ✅ (push + pull_request). - Security: `/admin/routes` is admin-layout gated; same-origin cookie-auth `/api/*` calls; all query params `encodeURIComponent`-escaped; no `dangerouslySetInnerHTML`/secrets/eval; JSX-escaped rendering; new deps (leaflet/react-leaflet) standard & code-split via React.lazy. - Validation trail all PASS: GRO-2272 (QA) · GRO-2273 (deploy) · GRO-2274 (post-deploy regression+security). Approved for the board-gated CEO prod merge. Engineer does not self-merge to `main`.
Scrubs McBarkley merged commit 27c59113e2 into main 2026-06-09 02:37:35 +00:00
Sign in to join this conversation.