ci: skip secret-backed CI deploys for fork PRs#13291
Conversation
🎭 Playwright: ✅ 1693 passed, 0 failed📊 Browser Reports
📦 Bundle: 7.76 MB gzip 🟢 -42 BDetailsSummary
Category Glance App Entry Points — 47.3 kB (baseline 47.3 kB) • ⚪ 0 BMain entry bundles and manifests
Status: 1 added / 1 removed Graph Workspace — 1.25 MB (baseline 1.25 MB) • ⚪ 0 BGraph editor runtime, canvas, workflow orchestration
Status: 1 added / 1 removed Views & Navigation — 97.7 kB (baseline 97.7 kB) • ⚪ 0 BTop-level views, pages, and routed surfaces
Status: 9 added / 9 removed / 3 unchanged Panels & Settings — 546 kB (baseline 546 kB) • ⚪ 0 BConfiguration panels, inspectors, and settings screens
Status: 11 added / 11 removed / 16 unchanged User & Accounts — 26.9 kB (baseline 26.9 kB) • ⚪ 0 BAuthentication, profile, and account management bundles
Status: 7 added / 7 removed / 3 unchanged Editors & Dialogs — 117 kB (baseline 117 kB) • ⚪ 0 BModals, dialogs, drawers, and in-app editors
Status: 4 added / 4 removed / 1 unchanged UI Components — 57.2 kB (baseline 57.2 kB) • ⚪ 0 BReusable component library chunks
Status: 5 added / 5 removed / 8 unchanged Data & Services — 269 kB (baseline 269 kB) • ⚪ 0 BStores, services, APIs, and repositories
Status: 13 added / 13 removed / 3 unchanged Utilities & Hooks — 3.36 MB (baseline 3.36 MB) • ⚪ 0 BHelpers, composables, and utility bundles
Status: 16 added / 16 removed / 16 unchanged Vendor & Third-Party — 15.3 MB (baseline 15.3 MB) • ⚪ 0 BExternal libraries and shared vendor chunks Status: 16 unchanged Other — 11.7 MB (baseline 11.7 MB) • ⚪ 0 BBundles that do not match a named category
Status: 66 added / 66 removed / 99 unchanged ⚡ Performance Report
Show regressions
All metrics
Historical variance (last 15 runs)
Trend (last 15 commits on main)
Raw data{
"timestamp": "2026-06-30T02:27:25.130Z",
"gitSha": "051850ca50de43577e8dac202ff67b1c1bb6fdc1",
"branch": "codex/skip-website-e2e-report-deploy-forks",
"measurements": [
{
"name": "canvas-idle",
"durationMs": 2119.58199999998,
"styleRecalcs": 11,
"styleRecalcDurationMs": 7.921000000000001,
"layouts": 0,
"layoutDurationMs": 0,
"taskDurationMs": 349.25600000000003,
"heapDeltaBytes": -8911552,
"heapUsedBytes": 60870824,
"domNodes": -305,
"jsHeapTotalBytes": 19824640,
"scriptDurationMs": 20.755999999999997,
"eventListeners": -195,
"totalBlockingTimeMs": 0,
"frameDurationMs": 16.666666666666668,
"p95FrameDurationMs": 16.800000000000182
},
{
"name": "canvas-idle",
"durationMs": 2002.3319999999671,
"styleRecalcs": 11,
"styleRecalcDurationMs": 6.13,
"layouts": 0,
"layoutDurationMs": 0,
"taskDurationMs": 212.067,
"heapDeltaBytes": -1953280,
"heapUsedBytes": 56889536,
"domNodes": 22,
"jsHeapTotalBytes": 25427968,
"scriptDurationMs": 10.241000000000001,
"eventListeners": 6,
"totalBlockingTimeMs": 0,
"frameDurationMs": 16.666666666666668,
"p95FrameDurationMs": 16.800000000000182
},
{
"name": "canvas-mouse-sweep",
"durationMs": 1674.3900000000167,
"styleRecalcs": 73,
"styleRecalcDurationMs": 27.761,
"layouts": 12,
"layoutDurationMs": 3.2330000000000005,
"taskDurationMs": 470.22200000000004,
"heapDeltaBytes": -6932924,
"heapUsedBytes": 51754360,
"domNodes": 55,
"jsHeapTotalBytes": 27262976,
"scriptDurationMs": 77.70400000000001,
"eventListeners": 4,
"totalBlockingTimeMs": 0,
"frameDurationMs": 16.666666666666668,
"p95FrameDurationMs": 16.799999999999272
},
{
"name": "canvas-mouse-sweep",
"durationMs": 1673.69199999996,
"styleRecalcs": 73,
"styleRecalcDurationMs": 27.960999999999995,
"layouts": 12,
"layoutDurationMs": 3.134,
"taskDurationMs": 493.75699999999995,
"heapDeltaBytes": -6965656,
"heapUsedBytes": 51915240,
"domNodes": 55,
"jsHeapTotalBytes": 26738688,
"scriptDurationMs": 83.314,
"eventListeners": 4,
"totalBlockingTimeMs": 0,
"frameDurationMs": 16.666666666666668,
"p95FrameDurationMs": 16.800000000000182
},
{
"name": "canvas-zoom-sweep",
"durationMs": 1705.7149999999979,
"styleRecalcs": 30,
"styleRecalcDurationMs": 10.576,
"layouts": 6,
"layoutDurationMs": 0.5519999999999999,
"taskDurationMs": 185.38700000000003,
"heapDeltaBytes": 1995572,
"heapUsedBytes": 60697664,
"domNodes": 78,
"jsHeapTotalBytes": 25165824,
"scriptDurationMs": 12.310999999999998,
"eventListeners": 19,
"totalBlockingTimeMs": 0,
"frameDurationMs": 16.66333333333332,
"p95FrameDurationMs": 16.799999999999727
},
{
"name": "canvas-zoom-sweep",
"durationMs": 1720.8540000000312,
"styleRecalcs": 31,
"styleRecalcDurationMs": 14.262,
"layouts": 6,
"layoutDurationMs": 1.0679999999999998,
"taskDurationMs": 206.68000000000004,
"heapDeltaBytes": 2008120,
"heapUsedBytes": 60894160,
"domNodes": 80,
"jsHeapTotalBytes": 25427968,
"scriptDurationMs": 13.542,
"eventListeners": 19,
"totalBlockingTimeMs": 0,
"frameDurationMs": 16.66666666666665,
"p95FrameDurationMs": 16.700000000000728
},
{
"name": "dom-widget-clipping",
"durationMs": 357.38500000002205,
"styleRecalcs": 14,
"styleRecalcDurationMs": 7.768,
"layouts": 0,
"layoutDurationMs": 0,
"taskDurationMs": 205.542,
"heapDeltaBytes": 6871776,
"heapUsedBytes": 65701920,
"domNodes": 24,
"jsHeapTotalBytes": 17039360,
"scriptDurationMs": 33.641000000000005,
"eventListeners": 0,
"totalBlockingTimeMs": 0,
"frameDurationMs": 16.663333333333338,
"p95FrameDurationMs": 16.700000000000273
},
{
"name": "dom-widget-clipping",
"durationMs": 409.7239999999829,
"styleRecalcs": 14,
"styleRecalcDurationMs": 8.06,
"layouts": 0,
"layoutDurationMs": 0,
"taskDurationMs": 228.83200000000002,
"heapDeltaBytes": 7027964,
"heapUsedBytes": 65688416,
"domNodes": 24,
"jsHeapTotalBytes": 18874368,
"scriptDurationMs": 38.079,
"eventListeners": 0,
"totalBlockingTimeMs": 0,
"frameDurationMs": 16.666666666666668,
"p95FrameDurationMs": 16.700000000000273
},
{
"name": "large-graph-idle",
"durationMs": 2002.2779999999898,
"styleRecalcs": 11,
"styleRecalcDurationMs": 6.594000000000001,
"layouts": 0,
"layoutDurationMs": 0,
"taskDurationMs": 277.816,
"heapDeltaBytes": -9360332,
"heapUsedBytes": 61978284,
"domNodes": 22,
"jsHeapTotalBytes": 9842688,
"scriptDurationMs": 42.24999999999999,
"eventListeners": 6,
"totalBlockingTimeMs": 0,
"frameDurationMs": 16.666666666666668,
"p95FrameDurationMs": 16.700000000000728
},
{
"name": "large-graph-idle",
"durationMs": 1999.6780000000172,
"styleRecalcs": 11,
"styleRecalcDurationMs": 6.042000000000001,
"layouts": 0,
"layoutDurationMs": 0,
"taskDurationMs": 272.16799999999995,
"heapDeltaBytes": -9682404,
"heapUsedBytes": 62406060,
"domNodes": 22,
"jsHeapTotalBytes": 10104832,
"scriptDurationMs": 41.245999999999995,
"eventListeners": 6,
"totalBlockingTimeMs": 0,
"frameDurationMs": 16.666666666666668,
"p95FrameDurationMs": 16.700000000000728
},
{
"name": "large-graph-pan",
"durationMs": 2050.2579999999853,
"styleRecalcs": 69,
"styleRecalcDurationMs": 19.217,
"layouts": 0,
"layoutDurationMs": 0,
"taskDurationMs": 696.195,
"heapDeltaBytes": 9697468,
"heapUsedBytes": 82333948,
"domNodes": 20,
"jsHeapTotalBytes": 11591680,
"scriptDurationMs": 259.05699999999996,
"eventListeners": 6,
"totalBlockingTimeMs": 0,
"frameDurationMs": 16.66333333333335,
"p95FrameDurationMs": 16.699999999999818
},
{
"name": "large-graph-pan",
"durationMs": 2036.7600000000152,
"styleRecalcs": 69,
"styleRecalcDurationMs": 18.826000000000004,
"layouts": 0,
"layoutDurationMs": 0,
"taskDurationMs": 656.4179999999999,
"heapDeltaBytes": 9664648,
"heapUsedBytes": 82473012,
"domNodes": 20,
"jsHeapTotalBytes": 10543104,
"scriptDurationMs": 248.911,
"eventListeners": 6,
"totalBlockingTimeMs": 0,
"frameDurationMs": 16.666666666666668,
"p95FrameDurationMs": 16.700000000000728
},
{
"name": "large-graph-zoom",
"durationMs": 3103.5019999999918,
"styleRecalcs": 67,
"styleRecalcDurationMs": 24.217999999999996,
"layouts": 60,
"layoutDurationMs": 8.593,
"taskDurationMs": 955.939,
"heapDeltaBytes": -4952324,
"heapUsedBytes": 69219012,
"domNodes": 18,
"jsHeapTotalBytes": 9842688,
"scriptDurationMs": 338.648,
"eventListeners": 6,
"totalBlockingTimeMs": 0,
"frameDurationMs": 16.666666666666668,
"p95FrameDurationMs": 16.799999999999272
},
{
"name": "large-graph-zoom",
"durationMs": 3004.4640000000413,
"styleRecalcs": 66,
"styleRecalcDurationMs": 19.142,
"layouts": 60,
"layoutDurationMs": 7.904,
"taskDurationMs": 835.943,
"heapDeltaBytes": -7053860,
"heapUsedBytes": 67048012,
"domNodes": 18,
"jsHeapTotalBytes": 14299136,
"scriptDurationMs": 309.349,
"eventListeners": 8,
"totalBlockingTimeMs": 0,
"frameDurationMs": 16.666666666666668,
"p95FrameDurationMs": 16.800000000000182
},
{
"name": "minimap-idle",
"durationMs": 1989.6589999999605,
"styleRecalcs": 11,
"styleRecalcDurationMs": 7.15,
"layouts": 0,
"layoutDurationMs": 0,
"taskDurationMs": 306.55899999999997,
"heapDeltaBytes": -9295316,
"heapUsedBytes": 64037232,
"domNodes": 22,
"jsHeapTotalBytes": 8007680,
"scriptDurationMs": 47.163,
"eventListeners": 6,
"totalBlockingTimeMs": 0,
"frameDurationMs": 16.670000000000012,
"p95FrameDurationMs": 16.700000000000728
},
{
"name": "minimap-idle",
"durationMs": 2009.7109999999816,
"styleRecalcs": 11,
"styleRecalcDurationMs": 7.933000000000001,
"layouts": 0,
"layoutDurationMs": 0,
"taskDurationMs": 332.65899999999993,
"heapDeltaBytes": -8895700,
"heapUsedBytes": 64353500,
"domNodes": 22,
"jsHeapTotalBytes": 8269824,
"scriptDurationMs": 60.115,
"eventListeners": 6,
"totalBlockingTimeMs": 0,
"frameDurationMs": 16.66333333333332,
"p95FrameDurationMs": 16.800000000000182
},
{
"name": "subgraph-dom-widget-clipping",
"durationMs": 359.05300000001716,
"styleRecalcs": 49,
"styleRecalcDurationMs": 9.896000000000003,
"layouts": 0,
"layoutDurationMs": 0,
"taskDurationMs": 220.46300000000002,
"heapDeltaBytes": 7766524,
"heapUsedBytes": 66742604,
"domNodes": 24,
"jsHeapTotalBytes": 19398656,
"scriptDurationMs": 71.23599999999999,
"eventListeners": 6,
"totalBlockingTimeMs": 0,
"frameDurationMs": 16.663333333333338,
"p95FrameDurationMs": 16.800000000000182
},
{
"name": "subgraph-dom-widget-clipping",
"durationMs": 392.91299999996454,
"styleRecalcs": 48,
"styleRecalcDurationMs": 9.655999999999999,
"layouts": 0,
"layoutDurationMs": 0,
"taskDurationMs": 227.08700000000005,
"heapDeltaBytes": 7854120,
"heapUsedBytes": 66819292,
"domNodes": 22,
"jsHeapTotalBytes": 19660800,
"scriptDurationMs": 74.60399999999998,
"eventListeners": 8,
"totalBlockingTimeMs": 0,
"frameDurationMs": 16.666666666666668,
"p95FrameDurationMs": 16.800000000000182
},
{
"name": "subgraph-idle",
"durationMs": 1988.8329999999996,
"styleRecalcs": 11,
"styleRecalcDurationMs": 5.558999999999999,
"layouts": 0,
"layoutDurationMs": 0,
"taskDurationMs": 201.59199999999998,
"heapDeltaBytes": -2168456,
"heapUsedBytes": 56948996,
"domNodes": 22,
"jsHeapTotalBytes": 26738688,
"scriptDurationMs": 8.961,
"eventListeners": 4,
"totalBlockingTimeMs": 0,
"frameDurationMs": 16.66333333333335,
"p95FrameDurationMs": 16.700000000000728
},
{
"name": "subgraph-idle",
"durationMs": 2003.218000000004,
"styleRecalcs": 12,
"styleRecalcDurationMs": 6.997,
"layouts": 0,
"layoutDurationMs": 0,
"taskDurationMs": 212.732,
"heapDeltaBytes": -2172812,
"heapUsedBytes": 56812792,
"domNodes": 24,
"jsHeapTotalBytes": 26214400,
"scriptDurationMs": 9.366000000000001,
"eventListeners": 4,
"totalBlockingTimeMs": 0,
"frameDurationMs": 16.66999999999998,
"p95FrameDurationMs": 16.799999999999272
},
{
"name": "subgraph-mouse-sweep",
"durationMs": 1690.1550000000043,
"styleRecalcs": 77,
"styleRecalcDurationMs": 27.186999999999998,
"layouts": 16,
"layoutDurationMs": 3.6510000000000007,
"taskDurationMs": 448.78100000000006,
"heapDeltaBytes": -10455480,
"heapUsedBytes": 48641092,
"domNodes": 65,
"jsHeapTotalBytes": 26214400,
"scriptDurationMs": 69.74900000000001,
"eventListeners": 4,
"totalBlockingTimeMs": 0,
"frameDurationMs": 16.66333333333332,
"p95FrameDurationMs": 16.700000000000728
},
{
"name": "subgraph-mouse-sweep",
"durationMs": 1690.9880000000044,
"styleRecalcs": 77,
"styleRecalcDurationMs": 28.012999999999995,
"layouts": 16,
"layoutDurationMs": 3.6719999999999993,
"taskDurationMs": 450.64099999999996,
"heapDeltaBytes": -10486024,
"heapUsedBytes": 48500616,
"domNodes": 65,
"jsHeapTotalBytes": 26476544,
"scriptDurationMs": 70.729,
"eventListeners": 4,
"totalBlockingTimeMs": 0,
"frameDurationMs": 16.666666666666668,
"p95FrameDurationMs": 16.700000000000728
},
{
"name": "subgraph-transition-enter",
"durationMs": 749.0509999999517,
"styleRecalcs": 17,
"styleRecalcDurationMs": 19.719,
"layouts": 9,
"layoutDurationMs": 8.168,
"taskDurationMs": 437.585,
"heapDeltaBytes": 4515248,
"heapUsedBytes": 80933620,
"domNodes": 13833,
"jsHeapTotalBytes": 17825792,
"scriptDurationMs": 15.384999999999996,
"eventListeners": 2531,
"totalBlockingTimeMs": 68,
"frameDurationMs": 16.66333333333332,
"p95FrameDurationMs": 16.800000000000182
},
{
"name": "viewport-pan-sweep",
"durationMs": 8052.111000000024,
"styleRecalcs": 250,
"styleRecalcDurationMs": 60.440000000000005,
"layouts": 0,
"layoutDurationMs": 0,
"taskDurationMs": 2385.6259999999997,
"heapDeltaBytes": -4128728,
"heapUsedBytes": 67937272,
"domNodes": 22,
"jsHeapTotalBytes": 17096704,
"scriptDurationMs": 831.974,
"eventListeners": 20,
"totalBlockingTimeMs": 0,
"frameDurationMs": 16.666666666666668,
"p95FrameDurationMs": 16.80000000000109
},
{
"name": "viewport-pan-sweep",
"durationMs": 8048.31200000001,
"styleRecalcs": 250,
"styleRecalcDurationMs": 58.693000000000005,
"layouts": 0,
"layoutDurationMs": 0,
"taskDurationMs": 2371.8140000000003,
"heapDeltaBytes": -3770432,
"heapUsedBytes": 67742496,
"domNodes": 22,
"jsHeapTotalBytes": 17620992,
"scriptDurationMs": 811.473,
"eventListeners": 20,
"totalBlockingTimeMs": 0,
"frameDurationMs": 16.666666666666668,
"p95FrameDurationMs": 16.700000000000728
},
{
"name": "vue-large-graph-idle",
"durationMs": 8105.958000000044,
"styleRecalcs": 0,
"styleRecalcDurationMs": 0,
"layouts": 0,
"layoutDurationMs": 0,
"taskDurationMs": 8052.046,
"heapDeltaBytes": -13060344,
"heapUsedBytes": 172600152,
"domNodes": -3300,
"jsHeapTotalBytes": 19922944,
"scriptDurationMs": 286.88399999999996,
"eventListeners": -16368,
"totalBlockingTimeMs": 0,
"frameDurationMs": 16.66333333333332,
"p95FrameDurationMs": 16.700000000000728
},
{
"name": "vue-large-graph-idle",
"durationMs": 8492.743000000019,
"styleRecalcs": 0,
"styleRecalcDurationMs": 0,
"layouts": 0,
"layoutDurationMs": 0,
"taskDurationMs": 8460.658000000001,
"heapDeltaBytes": -39541176,
"heapUsedBytes": 172930224,
"domNodes": -3331,
"jsHeapTotalBytes": 24350720,
"scriptDurationMs": 297.41499999999996,
"eventListeners": -16378,
"totalBlockingTimeMs": 0,
"frameDurationMs": 16.666666666666668,
"p95FrameDurationMs": 16.799999999999272
},
{
"name": "vue-large-graph-pan",
"durationMs": 10555.798000000039,
"styleRecalcs": 64,
"styleRecalcDurationMs": 17.284999999999997,
"layouts": 0,
"layoutDurationMs": 0,
"taskDurationMs": 10521.108,
"heapDeltaBytes": -16674564,
"heapUsedBytes": 193363560,
"domNodes": -3332,
"jsHeapTotalBytes": 26361856,
"scriptDurationMs": 543.2869999999999,
"eventListeners": -16376,
"totalBlockingTimeMs": 0,
"frameDurationMs": 17.223333333333358,
"p95FrameDurationMs": 16.80000000000109
},
{
"name": "vue-large-graph-pan",
"durationMs": 10398.949000000015,
"styleRecalcs": 64,
"styleRecalcDurationMs": 18.087999999999994,
"layouts": 0,
"layoutDurationMs": 0,
"taskDurationMs": 10381.297,
"heapDeltaBytes": -48188028,
"heapUsedBytes": 162881648,
"domNodes": -3302,
"jsHeapTotalBytes": 25399296,
"scriptDurationMs": 514.527,
"eventListeners": -16376,
"totalBlockingTimeMs": 0,
"frameDurationMs": 16.666666666666668,
"p95FrameDurationMs": 16.700000000000728
},
{
"name": "workflow-execution",
"durationMs": 417.6540000000273,
"styleRecalcs": 18,
"styleRecalcDurationMs": 16.644,
"layouts": 5,
"layoutDurationMs": 1.1960000000000002,
"taskDurationMs": 81.996,
"heapDeltaBytes": 5385000,
"heapUsedBytes": 65457140,
"domNodes": 170,
"jsHeapTotalBytes": 3145728,
"scriptDurationMs": 11.908000000000001,
"eventListeners": 71,
"totalBlockingTimeMs": 0,
"frameDurationMs": 16.663333333333338,
"p95FrameDurationMs": 16.700000000000273
},
{
"name": "workflow-execution",
"durationMs": 424.35599999998885,
"styleRecalcs": 18,
"styleRecalcDurationMs": 18.319000000000003,
"layouts": 5,
"layoutDurationMs": 1.192,
"taskDurationMs": 84.357,
"heapDeltaBytes": 5143504,
"heapUsedBytes": 65018776,
"domNodes": 159,
"jsHeapTotalBytes": 2883584,
"scriptDurationMs": 12.297999999999998,
"eventListeners": 69,
"totalBlockingTimeMs": 0,
"frameDurationMs": 16.666666666666668,
"p95FrameDurationMs": 16.800000000000182
}
]
} |
📝 WalkthroughWalkthroughSeveral CI workflow jobs now add ChangesCI fork guards
Estimated code review effort🎯 2 (Simple) | ⏱️ ~10 minutes Poem
🚥 Pre-merge checks | ✅ 6✅ Passed checks (6 passed)
✨ 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. @@ Coverage Diff @@
## main #13291 +/- ##
==========================================
- Coverage 77.57% 77.54% -0.04%
==========================================
Files 1632 1632
Lines 91375 91411 +36
Branches 30895 30269 -626
==========================================
- Hits 70885 70884 -1
- Misses 19820 19860 +40
+ Partials 670 667 -3
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.
Cursor Bugbot has reviewed your changes using default effort and found 1 potential issue.
❌ Bugbot Autofix is OFF. To automatically fix reported issues with cloud agents, enable autofix in the Cursor dashboard.
Reviewed by Cursor Bugbot for commit 027aabc. Configure here.

Summary
Skip secret-backed CI deploy and dispatch work for fork PRs so missing repo secrets do not fail otherwise valid checks.
Changes
Why
Fork
pull_requestruns do not receive repository secrets. Several CI jobs already separated normal validation from privileged follow-up work, but some deploy or dispatch steps could still run on fork PRs and fail only because their secret-backed integration token was empty.The existing Website E2E fork guard only protected the PR comment job. It did not protect the earlier Cloudflare report deploy step inside
website-e2e, which usesCLOUDFLARE_API_TOKENandCLOUDFLARE_ACCOUNT_ID.The same failure mode existed in these CI jobs:
ci-vercel-website-preview.yaml: preview deploy uses Vercel and website API secrets.cloud-dispatch-build.yaml: preview dispatch usesCLOUD_DISPATCH_TOKENto callComfy-Org/cloud.cloud-dispatch-cleanup.yaml: preview cleanup dispatch usesCLOUD_DISPATCH_TOKEN.ci-tests-storybook.yaml: Chromatic deploy usesCHROMATIC_PROJECT_TOKEN.ci-website-build.yamlwas left unchanged. Its Ashby and Cloud nodes integrations intentionally fall back to committed snapshots when secrets are missing for preview/local builds, so it is not the same class of fork-secret failure.Review Focus
Confirm fork PRs still run the unprivileged validation/build paths, while same-repo PRs and non-PR events keep the existing deploy or dispatch behavior.
Validation PRs
Both validation PRs compare against
main.shihchi: #13309origin: #13310Upload test reportDeploy report to Cloudflaredeploy-previewdispatchchromatic-deploymentExpected result: fork PRs still keep the useful validation artifact path, but skip secret-backed deploy and dispatch work. Same-repo PRs keep the privileged behavior.
Screenshots (if applicable)
N/A, CI-only.
Created by Codex
Note
Low Risk
Workflow
ifcondition changes only; no application code. Same-repo PR behavior is unchanged when secrets are available.Overview
Adds
github.event.pull_request.head.repo.fork == falseguards so fork PRs no longer run steps that need repo secrets or trigger external deploys.Website E2E — the Cloudflare Playwright report deploy step now runs only on non-PR events or same-repo PRs, so fork runs can still pass tests and upload artifacts without failing on missing
CLOUDFLARE_*secrets.Vercel website preview — the preview deploy job is skipped entirely for fork PRs (Vercel tokens).
Storybook Chromatic — Chromatic deployment on
version-bump-*PRs is limited to non-fork PRs (CHROMATIC_PROJECT_TOKEN).Cloud dispatch — build and cleanup dispatches to the cloud repo for preview labels no longer run for fork PRs, aligning with the existing fork-guard comment in those workflows.
Reviewed by Cursor Bugbot for commit 027aabc. Bugbot is set up for automated code reviews on this repo. Configure here.