fix(ci): skip E2E gates when web/desktop unchanged#407
Conversation
…ml from desktop patterns The release gate was unconditionally requiring Web E2E for all release PRs and falsely detecting desktop changes when only the CI orchestrator workflow changed. Now both Web and Desktop E2E gates are skipped when their respective app paths haven't changed since the last release. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com> Entire-Checkpoint: 46a49b3a67bd
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Path: .coderabbit.yaml Review profile: CHILL Plan: Pro Run ID: 📒 Files selected for processing (1)
WalkthroughThe release-gate GitHub Actions workflow now detects web changes separately from desktop changes, exports a new Changes
Sequence Diagram(s)mermaid Estimated code review effort🎯 3 (Moderate) | ⏱️ ~20 minutes Possibly related PRs
🚥 Pre-merge checks | ✅ 3✅ Passed checks (3 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## main #407 +/- ##
==========================================
+ Coverage 61.25% 61.28% +0.03%
==========================================
Files 133 133
Lines 9790 9790
Branches 986 988 +2
==========================================
+ Hits 5997 6000 +3
+ Misses 3577 3574 -3
Partials 216 216
Flags with carried forward coverage won't be shown. Click here to find out more. 🚀 New features to boost your workflow:
|
There was a problem hiding this comment.
Pull request overview
Updates the release-gate workflow to conditionally require Web/Desktop E2E verification only when relevant code paths have changed since the last release, reducing false-positive release blocks from CI-only changes.
Changes:
- Add web change detection output and skip logic so Web E2E gates are skipped when no web-related paths changed.
- Remove
.github/workflows/ci-e2e.ymlfrom desktop change patterns to avoid treating orchestrator edits as desktop changes. - Improve gate summary output to explicitly report which suites were considered applicable.
There was a problem hiding this comment.
Caution
Some comments are outside the diff and can’t be posted inline due to platform limitations.
⚠️ Outside diff range comments (1)
.github/workflows/release-gate.yml (1)
70-90:⚠️ Potential issue | 🟠 MajorDon't let
ci-e2e.ymlchanges bypass both E2E gates.These pattern lists no longer match
.github/workflows/ci-e2e.yml, which still includes.github/workflows/ci-e2e.ymlin both thewebanddesktopfilters. A change to the orchestrator can therefore break one suite's execution onmainwhilerelease-gate.ymlskips both checks and still passes the release.🔧 Proposed fix
DESKTOP_PATTERNS=( 'tests/vectors/' 'packages/crypto/src/' 'packages/crypto/tsconfig' '.github/workflows/desktop-e2e.yml' + '.github/workflows/ci-e2e.yml' )WEB_PATTERNS=( 'tests/web-e2e/' 'tools/mock-ipns-routing/' '.github/workflows/web-e2e.yml' + '.github/workflows/ci-e2e.yml' )If the new intent is to ignore orchestrator-only changes, make the same filter change in
.github/workflows/ci-e2e.ymlinstead so the trigger rules and the release gate stay aligned.Also applies to: 94-102
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In @.github/workflows/release-gate.yml around lines 70 - 90, The DESKTOP_PATTERNS (and corresponding WEB_PATTERNS) arrays were changed to remove the '.github/workflows/ci-e2e.yml' entry, which lets changes to the orchestrator bypass both E2E release gates; restore alignment by either re-adding '.github/workflows/ci-e2e.yml' to the DESKTOP_PATTERNS (and the analogous WEB_PATTERNS) or make the identical filter change inside ci-e2e.yml so the workflow trigger rules remain consistent with the release-gate checks; update the pattern arrays referenced as DESKTOP_PATTERNS (and WEB_PATTERNS) and ensure the ci-e2e.yml trigger rules match exactly to avoid bypassing E2E gates.
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.
Outside diff comments:
In @.github/workflows/release-gate.yml:
- Around line 70-90: The DESKTOP_PATTERNS (and corresponding WEB_PATTERNS)
arrays were changed to remove the '.github/workflows/ci-e2e.yml' entry, which
lets changes to the orchestrator bypass both E2E release gates; restore
alignment by either re-adding '.github/workflows/ci-e2e.yml' to the
DESKTOP_PATTERNS (and the analogous WEB_PATTERNS) or make the identical filter
change inside ci-e2e.yml so the workflow trigger rules remain consistent with
the release-gate checks; update the pattern arrays referenced as
DESKTOP_PATTERNS (and WEB_PATTERNS) and ensure the ci-e2e.yml trigger rules
match exactly to avoid bypassing E2E gates.
ℹ️ Review info
⚙️ Run configuration
Configuration used: Path: .coderabbit.yaml
Review profile: CHILL
Plan: Pro
Run ID: 7c93c308-80eb-4bc9-a757-21bf7fc30380
📒 Files selected for processing (1)
.github/workflows/release-gate.yml
…orchestrator Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com> Entire-Checkpoint: 129364ea5b30
|
Re: concern about This is intentional. Re-adding |
|
Tip For best results, initiate chat on the files or code changes.
I've retracted my concern and noted this design for future reviews. ✏️ Learnings added
🧠 Learnings used |
Summary
.github/workflows/ci-e2e.ymlfromDESKTOP_PATTERNS— the orchestrator workflow changing doesn't mean the desktop app changed, and this was causing false positivesTest plan
🤖 Generated with Claude Code
Summary by CodeRabbit