KB-4392

RP Dynamic Drill Grouping — 09 Production UI Deploy Readiness

2 min read Revision 1
deploy-readinesstrack-hui2026-06-05

09 — Production UI Deploy Readiness (Track H)

Git state (live)

  • Repo /opt/incomex/docker/nuxt-repo/web, on main.
  • main vs origin/main: ahead 17 / behind 13 (auto-snapshot cron commits to main twice daily → known noise; do NOT deploy over divergent main).
  • Existing prior branch: feat/process-axis-dashboard.
  • Many vps-daily-* snapshot branches (cron artifacts).

Why agent does not deploy

  1. Divergent local main (unsafe to commit/push from).
  2. No GitHub push credentials available to the agent (gh_pat_sync_secrets is secret-sync-scoped, not a push PAT). Deploying under these conditions = forbidden "unsafe UI deploy over divergent git". → HANDOFF, one operator action away.

Operator deploy (one sequence, in INSTALL_AND_PR.md)

git fetch origin
git switch -c feat/rp-dynamic-drill-grouping origin/main
cp ui-package-v2/server/api/registries-pivot/*.ts  server/api/registries-pivot/
# apply drill-v2.patch.md (4 lines)
npx eslint --fix server/api/registries-pivot/*v2*.ts grouping.get.ts
npm run build
git commit -am "feat(rp): dynamic-drill grouping + substrate v2" && git push -u origin HEAD
gh pr create --base main ...
# post-deploy smoke:
curl -s localhost:3000/api/registries-pivot/acceptance-v2 | jq .dashboard.final_verdict
# expect: "UI_DYNAMIC_DRILL_PROVEN_WITH_EXPECTED_BLOCKERS"

Rollback

UI: delete the v2 files / git revert. Backend: 99_rollback.sql (independent).

Readiness verdict

READY_OPERATOR — backend live (birth-free), package built, commands final, smoke check defined. Blocker = operator git/push only.

Back to Knowledge Hub knowledge/dev/reports/architecture/rp-dynamic-drill-grouping-ui-production-first-official-closeout-2026-06-05/09-production-ui-deploy-readiness.md