Skip to content

ci(e2e): keep the full-viewport sweep on the nightly only - #814

Merged
d-oit merged 2 commits into
mainfrom
ci/e2e-sweep-only-scheduled
Sep 24, 2026
Merged

d-oit merged 2 commits into
mainfrom
ci/e2e-sweep-only-scheduled

Conversation

@d-oit

@d-oit d-oit commented Sep 24, 2026 •

Copy link
Copy Markdown
Owner

Why

Correction to #812 (plans/149). That PR scoped the full-viewport sweep with event_name != 'pull_request' — which silently included pushes to main. Every frontend merge then paid the four-project cost; the E2E job on the merge that landed #813 ran well past 10 minutes instead of ~3.

A push to main is a merge the PR already validated. The sweep belongs to the nightly, which exists for exactly that gap.

Change

Event Browsers installed Projects run
pull_request chromium --project=chromium
push to main chromium --project=chromium
schedule (nightly, main) chromium + webkit all four
workflow_dispatch chromium + webkit all four

Both run: blocks now branch on event_name == 'schedule' || event_name == 'workflow_dispatch' instead of negating pull_request.

Verification

Check Result
shellcheck on the new block clean
Both blocks executed for all four event values pull_request/push → chromium-only, schedule/workflow_dispatch → all projects
yamllint -c .yamllint.yml, YAML parses clean
src/lib/__tests__/workflows.test.ts 63/63 — the sweep case now asserts the schedule/dispatch gate and that the sweep branch does not mention pull_request
Mutation: revert to != 'pull_request' test fails
./scripts/quality_gate.sh, pnpm run build ✓ green

The nightly path itself was already proven end-to-end by dispatch run 35986156948 (Running 596 tests, 4 projects, 8.5 m) — this PR only narrows which events select it.

Plan: plans/149-nightly-full-viewport-e2e-2026-09-24.md §2.


📝 Summary by GitNexus

Summary

This appears to be a CI and end-to-end test workflow change, documented alongside workflow test coverage. It has no graph-traced dependents or affected flows, but the workflow configuration itself carries a high review risk.

🟠 HIGH blast radius. A CI and end-to-end test change centered on .github/workflows/ci-and-labels.yml, with no detected dependents.

The change spans the CI workflow, src/lib/__tests__/workflows.test.ts, and the planning document plans/149-nightly-full-viewport-e2e-2026-09-24.md. The named plan and section indicate the change is focused on keeping the full-viewport E2E sweep on the nightly schedule.

Review .github/workflows/ci-and-labels.yml first because it is the sole HIGH risk file. Then verify that src/lib/__tests__/workflows.test.ts covers the intended workflow behavior and remains aligned with the documented Plan 149. Nightly E2E Sweep Covers Every Viewport (2026-09-24) and 2. Change sections.

Added by GitNexus for PR #814. Edit freely — this block is replaced on the next review, everything above it is left untouched.

@vercel

vercel Bot commented Sep 24, 2026 •

Copy link
Copy Markdown

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

Project Deployment Actions Updated
do-knowledge-studio Ready Ready Preview, v0 Sep 24, 2026 12:17pm UTC

@github-actions github-actions Bot added documentation Documentation improvements ci config tests Related to automated/manual tests labels Sep 24, 2026
@github-actions

github-actions Bot commented Sep 24, 2026 •

Copy link
Copy Markdown
Contributor

Blocked merge diagnosis — blocked
⏳ Check run(s) still in progress: ["Codacy Static Code Analysis","Detect Changes","Diagnose Blocked Merge State","GitHub Actions Workflow Validation","YAML Syntax Validation","commitlint","Infrastructure as Code Security","Secret Detection","Trivy Filesystem Security Scan","Shell Script Security Analysis","Analyze (actions)","Analyze (javascript-typescript)"]

@nexuscheck

nexuscheck Bot commented Sep 24, 2026 •

Copy link
Copy Markdown
Contributor
Akon Labs

GitNexus Review · PR #814

2 issues found across 1 file.

🤖 Agent context — 2 symbols · 3 files

Summary

This appears to be a CI and end-to-end test workflow change, documented alongside workflow test coverage. It has no graph-traced dependents or affected flows, but the workflow configuration itself carries a high review risk.

🟠 HIGH blast radius. A CI and end-to-end test change centered on .github/workflows/ci-and-labels.yml, with no detected dependents.

The change spans the CI workflow, src/lib/__tests__/workflows.test.ts, and the planning document plans/149-nightly-full-viewport-e2e-2026-09-24.md. The named plan and section indicate the change is focused on keeping the full-viewport E2E sweep on the nightly schedule.

Review .github/workflows/ci-and-labels.yml first because it is the sole HIGH risk file. Then verify that src/lib/__tests__/workflows.test.ts covers the intended workflow behavior and remains aligned with the documented Plan 149. Nightly E2E Sweep Covers Every Viewport (2026-09-24) and 2. Change sections.

🟠 HIGH blast radius — no downstream dependents were found in the code graph; review the dependent list before merging.

Blast Level Dependents Modules Files
🟠 HIGH 0 0 3

What changed

Symbol Changes (2)
Kind Symbol Location
Section Plan 149 — Nightly E2E Sweep Covers Every Viewport (2026-09-24) plans/149-nightly-full-viewport-e2e-2026-09-24.md:1
Section 2. Change plans/149-nightly-full-viewport-e2e-2026-09-24.md:50
Changed Files (3)
File Status
.github/workflows/ci-and-labels.yml 🟡 modified
plans/149-nightly-full-viewport-e2e-2026-09-24.md 🟡 modified
src/lib/__tests__/workflows.test.ts 🟡 modified

What to check

File Risk (1)
File Risk Category
.github/workflows/ci-and-labels.yml 🟠 HIGH CI/CD
Prompt for AI agents (2 issues)
Check if these issues are valid — if so, understand the root cause of each and fix them. If appropriate, use sub-agents to investigate and fix each issue separately.

<file name="src/lib/__tests__/workflows.test.ts">

<violation number="1" location="src/lib/__tests__/workflows.test.ts:170">
P2: The event assertions do not exclude pushes from the sweep — The comment says the sweep is limited to scheduled and manual events, but lines 170–172 only require that both event names occur and that 'pull_request' does not. A predicate such as 'event_name == "schedule" || event_name == "workflow_dispatch" || event_name == "push"' passes all three assertions while selecting the full E2E suite on pushes. The documented contract explicitly assigns pushes to the Chromium-only/default branch (plans/149-nightly-full-viewport-e2e-2026-09-24.md lines 54–72).
</violation>

<violation number="2" location="src/lib/__tests__/workflows.test.ts:157">
P2: Assert the install block's event gate as well as the test-run block's — The new assertions only prove that the install branches contain the two commands (lines 157–160); unlike the run block, they never assert which events select the WebKit branch. Consequently, changing the install condition back to an 'event_name != pull_request' check would still satisfy this test while causing every push to main to install WebKit. That violates the documented event table in plans/149-nightly-full-viewport-e2e-2026-09-24.md lines 54–72, which specifies Chromium-only browser installation on pushes and says the contract test pins the sweep to schedule/dispatch.
</violation>

</file>

Full detail lives in the GitNexus check run for this commit.

@codacy-production

Copy link
Copy Markdown
Contributor

Up to standards ✅

🟢 Issues 0 issues

Results:
0 new issues

View in Codacy

NEW Get contextual insights on your PRs based on Codacy's metrics, along with PR and Jira context, without leaving GitHub. Enable AI reviewer
TIP This summary will be updated as you push new changes.

Comment thread src/lib/__tests__/workflows.test.ts Outdated
Comment thread src/lib/__tests__/workflows.test.ts
@d-oit
d-oit merged commit 5ef05c6 into main Sep 24, 2026
27 checks passed
@d-oit
d-oit deleted the ci/e2e-sweep-only-scheduled branch September 24, 2026 12:23

This branch was successfully deployed

1 active deployment
Preview — 7c03753b Deployed Sep 24, 2026 by vercel[bot]
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

ci config documentation Documentation improvements tests Related to automated/manual tests

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants