Skip to content

Stabilize post-merge live canary checks#65

Draft
DavidDiaz0317 wants to merge 50 commits into
mainfrom
codex/post-merge-canary-stabilization
Draft

Stabilize post-merge live canary checks#65
DavidDiaz0317 wants to merge 50 commits into
mainfrom
codex/post-merge-canary-stabilization

Conversation

@DavidDiaz0317

@DavidDiaz0317 DavidDiaz0317 commented Jun 27, 2026

Copy link
Copy Markdown
Owner

Summary

  • Keep Console Live Promote dry runs on the private candidate canary path and leave public console-live unchanged unless promoteProduction=true.
  • Enforce low-pressure live canary pacing with a 15s minimum route delay and 90s phase cooldown.
  • Stop live semantic testing after the first blocker and upload route-level evidence, screenshots, trace, video, and groundtruth reports.
  • Support cookie-backed OAuth sessions for live data fetches so the canary tests the same auth path as console-live.
  • Keep failure issues actionable by classifying structured UI overlap evidence before log-only rate-limit helper text.

Canary Status

  • Latest branch head: 954f4090cf0b9556a7d6268cbf9c4baeb7dacbf8.
  • Latest product candidate tested: ghcr.io/daviddiaz0317/console:f2cff2a2746aa0f18b9b4d090740f3c32d08bb55.
  • Product image publish: Build and Deploy KC run 28339255804 passed and published the exact candidate image.
  • Latest no-promote canary: Console Live Promote run 28339495277 tested that exact candidate image with promoteProduction=false.
  • Production promotion was skipped; TEST_TARGET_KIND=private-canary and TEST_CONSOLE_URL=http://127.0.0.1:18080.
  • Private canary deploy, port-forward, auth boundary, and signed-session smoke passed.
  • Live canary pacing normalized to LIVE_CANARY_ROUTE_DELAY_MS=15000 and LIVE_CANARY_PHASE_COOLDOWN_MS=90000.
  • /clusters?groundtruth=1 matched authenticated API and Kubernetes groundtruth: 3 clusters, 6 total/Ready nodes, 51 pods, 51 running pods, 0 pending pods, and 0 crashloop pods.
  • The current blocker is live-ui-overlap: the cluster page renders a backend-unavailable/offline panel overlapping cluster tabs/actions.
  • Branch backfill run 28339607851 updated open issue [console-live][canary-blocked][live-ui-overlap] visible text overlap blocks promotion #54 to [console-live][canary-blocked][live-ui-overlap] visible text overlap blocks promotion.

Non-Canary Failures

  • claude-review: fork setup noise; run 28339060803 failed because the Claude Code GitHub App is not installed on this fork.
  • Nil Safety / pr-check: unrelated backend/test debt; run 28339060811 reports nilaway findings in workload tests and pkg/stellar/solver/solver.go, outside this canary slice.
  • Update Mechanism Tests: workflow/path configuration debt; run 28339060807 greps for missing pkg/agent/updater_* files before touching canary code.
  • Broad generic Playwright/mobile failures remain out of scope unless they block candidate image creation or canary execution.
  • Auth Drift is green on the current PR rollup.

Testing

  • git diff --check
  • node --check .github/scripts/console-live-promote-failure-issue.cjs
  • node --test .github/scripts/console-live-promote-failure-issue.test.cjs
  • node --check web/harness/scripts/compareBrowserMatrix.cjs
  • cd web && npx eslint e2e/visual-login/helpers/liveSiteAssertions.ts e2e/visual-login/semantic/live-canary-ui.spec.ts src/hooks/mcp/sharedImpl.orchestration.ts src/lib/cache/fetcherUtils.ts src/hooks/mcp/__tests__/shared-cache-fetch.test.ts src/hooks/__tests__/useCachedData.fetchers.test.ts (existing warnings only)
  • cd web && npx vitest run src/hooks/mcp/__tests__/shared-cache-fetch.test.ts src/hooks/__tests__/useCachedData.fetchers.test.ts
  • cd web && npx eslint "e2e/visual-login/**/*.ts" "harness/**/*.ts"
  • cd web && npx playwright test --config e2e/visual-login/intensive.config.ts --project=semantic-groundtruth --grep "@live-site" --list
  • cd web && npx playwright test --config e2e/visual-login/browser-matrix.config.ts --list
  • cd web && npx playwright test --config e2e/visual-login/macos-popup.config.ts --list
  • cd web && npm run build
  • Build and Deploy KC workflow-dispatch run 28339255804
  • Console Live Promote workflow-dispatch run 28339495277 with promoteProduction=false
  • Console Live Promote Failure Issue workflow-dispatch backfill run 28339607851

Next Blocker

  • Fix the live Clusters page backend-unavailable/offline overlay collision. The cookie-backed API fetch blocker is resolved; the first remaining canary failure is now a visible UI/runtime overlap.

@github-actions

Copy link
Copy Markdown

👋 Hey @DavidDiaz0317 — thanks for opening this PR!

🤖 This project is developed exclusively using AI coding assistants.

Please do not attempt to code anything for this project manually.
All contributions should be authored using an AI coding tool such as:

This ensures consistency in code style, architecture patterns, test coverage,
and commit quality across the entire codebase.


This is an automated message.

@github-actions

Copy link
Copy Markdown

🐝 Hi @DavidDiaz0317! I'm kubestellar-hive[bot], an automation bot for this repo.

Trusted users — org members and contributors with write access — can mention @kubestellar-hive in a comment to trigger repo automation.
On issues, that mention queues an automated fix attempt. On pull requests, it records extra context for existing automation.
This is not an interactive Q&A bot, so mentions should be treated as requests for automation rather than a conversation.

Automation may take a moment to start, and follow-up happens through workflow activity rather than chat replies.

@DavidDiaz0317 DavidDiaz0317 force-pushed the codex/post-merge-canary-stabilization branch 6 times, most recently from 874ef5c to c076cb8 Compare June 27, 2026 19:54
@DavidDiaz0317 DavidDiaz0317 force-pushed the codex/post-merge-canary-stabilization branch from 9d84224 to 7c47490 Compare June 27, 2026 21:44
@github-actions

Copy link
Copy Markdown

Auto Test Generator

The following new files have no corresponding test file:

  • web/src/components/dashboard/DashboardState.ts

Please add tests or apply the needs-tests label to track this PR.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant