Skip to content

ci: run the cockpit shell control-plane e2e, which nothing invoked - #943

Merged
blove merged 1 commit into
mainfrom
blove/ci-wire-cockpit-control-plane-e2e
Sep 2, 2026
Merged

ci: run the cockpit shell control-plane e2e, which nothing invoked#943
blove merged 1 commit into
mainfrom
blove/ci-wire-cockpit-control-plane-e2e

Conversation

@blove

@blove blove commented Sep 1, 2026

Copy link
Copy Markdown
Contributor

Found while auditing the tags I removed from apps/cockpit in #939.

#921 added apps/cockpit/e2e/control-plane.spec.ts — 7 Playwright tests over the operational sidebar:

  • the real Angular handshake completing without blank or unresponsive states
  • operational controls reachable at four viewports (desktop / tablet / mobile / compact mobile)
  • forced colors preserving control boundaries and keyboard focus
  • reduced motion disabling loader and drawer animation

Nothing has ever run it. The suite sits behind nx e2e cockpit, and the cockpit-e2e matrix only dispatches caps derived from walking cockpit/**apps/cockpit is never a candidate. No other job names the target either; grepping every workflow for nx e2e returns only examples-chat-angular, examples-ag-ui-angular, the cap matrix, and website.

Verified before wiring

Ran it locally first, because wiring up a suite that doesn't pass is worse than leaving it dormant:

7 passed (24.0s)
NX   Successfully ran target e2e for project cockpit

Placement

It goes in the existing cockpit job rather than a new one:

  • it's cheap — 7 tests, ~25s once the dev servers are up
  • it reuses that job's npm ci
  • the cockpit scope already gates the shell correctly
  • required-pr-checks already aggregates that job, so this becomes merge-blocking with no gate change

The playwright config already sets retries: 2 under CI. Playwright browsers are cached with the same key the other e2e jobs use.

Tests

ci-workflow.spec.mjs gains a guard asserting the cockpit job runs nx e2e cockpit and installs a browser — confirmed failing first:

not ok 16 - runs the cockpit shell control-plane e2e

All six node --test suites pass after (134/134).

🤖 Generated with Claude Code

@vercel

vercel Bot commented Sep 1, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated
threadplane Ready Ready Preview Sep 2, 2026 1:38am UTC

Request Review

@github-actions github-actions Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Automated approval: this PR received an intelligent (AI) code review. See the review comments on this PR.

@github-actions

github-actions Bot commented Sep 1, 2026

Copy link
Copy Markdown
Contributor

Claude finished @blove's task in 0s —— View job


I'll analyze this and get back to you.

@blove
blove enabled auto-merge (squash) September 2, 2026 00:51
@blove
blove force-pushed the blove/ci-wire-cockpit-control-plane-e2e branch from f90e554 to 495df35 Compare September 2, 2026 01:01
@github-actions

github-actions Bot commented Sep 2, 2026

Copy link
Copy Markdown
Contributor

Claude finished @blove's task in 0s —— View job


I'll analyze this and get back to you.

#921 added apps/cockpit/e2e/control-plane.spec.ts — 7 Playwright tests over
the operational sidebar: the real Angular handshake without blank or
unresponsive states, operational controls reachable at four viewports, forced
colors preserving control boundaries and keyboard focus, and reduced motion
disabling loader and drawer animation.

Nothing ever ran it. The suite sits behind `nx e2e cockpit`, and the
cockpit-e2e matrix only dispatches caps derived from walking cockpit/** —
apps/cockpit is never a candidate. No other job named the target either:
grepping every workflow for `nx e2e` returns examples-chat-angular,
examples-ag-ui-angular, the cap matrix, and website. So this has been dead
coverage for its whole life.

Verified it actually passes before wiring it up — 7/7 in 24s locally. It goes
in the existing `cockpit` job rather than a new one because it is cheap, it
reuses that job's `npm ci`, the `cockpit` scope already gates the shell, and
required-pr-checks already aggregates the job — so it becomes merge-blocking
with no gate change. The playwright config already sets retries: 2 on CI.

Found while auditing the tags I removed from apps/cockpit in #939.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
@blove
blove force-pushed the blove/ci-wire-cockpit-control-plane-e2e branch from 495df35 to af0b68f Compare September 2, 2026 01:32
@github-actions

github-actions Bot commented Sep 2, 2026

Copy link
Copy Markdown
Contributor

Claude finished @blove's task in 0s —— View job


I'll analyze this and get back to you.

@blove
blove merged commit cd502f1 into main Sep 2, 2026
73 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant