Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
237 commits
Select commit Hold shift + click to select a range
dfdfbdd
Implement command resolution with fallback variations for Windows
Copilot Jan 14, 2026
77d895f
Address review feedback: simplify error checking, reduce redundancy, …
Copilot Jan 14, 2026
3f8d3ce
Remove type cast by properly typing tryNext function
Copilot Jan 16, 2026
570e89a
Fix prettier formatting issues
Copilot Jan 16, 2026
9b18706
Rollback to simpler implementation without stale pid reuse
Copilot Jan 16, 2026
3c1d16b
docs: fix incorrect onboarding addon information
GalacticAvenger Apr 2, 2026
1088d6e
Merge branch 'next' into copilot/fix-pnpm-command-resolution-windows
Sidnioulz Apr 3, 2026
28d6789
Fix lint errors
Sidnioulz Apr 3, 2026
8a98a03
Add missing import
Sidnioulz Apr 3, 2026
4193520
Rework try variations to match the subprocess+promise signature of execa
Sidnioulz Apr 3, 2026
25ed987
Fix tests
Sidnioulz Apr 3, 2026
371ef9a
Fix layout.showPanel manager config
kalinco-glitch May 12, 2026
ea1ac3e
Tanstack: Add unit test for the server code elimination plugin
huang-julien May 13, 2026
867aedc
explore service subscription and static builds, as well as state writ…
JReinhold May 19, 2026
11088ff
migrate to alien-signals
JReinhold May 19, 2026
3382bee
Preserve Meta @ts-expect-error in web component preview
brentswisher May 20, 2026
f4d9e0e
Preserve Meta @ts-expect-error in vue preview
brentswisher May 20, 2026
2f9421d
fix: update link to arg-types info to fix 404 issue
john-masters May 20, 2026
39a9d4b
docs(layout): clarify applyLayoutOptions intent
valentinpalkovic May 20, 2026
0ca848a
refactor(layout): tighten applyLayoutOptions and API_LayoutOptions
valentinpalkovic May 20, 2026
a9d18f8
Merge branch 'next' into codex/fix-layout-show-panel
valentinpalkovic May 20, 2026
503ed0c
fix(layout): revert API_LayoutOptions Omit that broke dts build
valentinpalkovic May 20, 2026
95c136d
update api shape
JReinhold May 20, 2026
150feb0
Merge branch 'next' of github.com:storybookjs/storybook into jeppe/se…
JReinhold May 20, 2026
c042dbd
use immer for setting state.
JReinhold May 20, 2026
c47c02f
improvements
JReinhold May 20, 2026
7a5b611
structural improvements
JReinhold May 20, 2026
f5e8f29
validation, docs, code organisation
JReinhold May 20, 2026
74d28c6
Open-Service: add README diagrams
JReinhold May 20, 2026
6a0a59d
add more comments
JReinhold May 21, 2026
3389d9c
Open-Service: add gap coverage tests
JReinhold May 21, 2026
502958d
dedupe
JReinhold May 21, 2026
6c4bebb
Merge branch 'next' into jeppe/service-arch-explorations
JReinhold May 21, 2026
747dca3
fix testing library placement
JReinhold May 21, 2026
627092a
Merge branch 'jeppe/service-arch-explorations' of github.com:storyboo…
JReinhold May 21, 2026
5ac59b9
Merge branch 'next' into jeppe/service-arch-explorations
JReinhold May 21, 2026
4c1ab1a
Update code/addons/onboarding/README.md
valentinpalkovic May 21, 2026
9f7f001
Merge remote-tracking branch 'origin/next' into fix/onboarding-addon-…
valentinpalkovic May 21, 2026
c18835c
cleanup
JReinhold May 21, 2026
7ffd1e4
Merge branch 'jeppe/service-arch-explorations' of github.com:storyboo…
JReinhold May 21, 2026
7ddd119
improve error structure and validation with zod
JReinhold May 21, 2026
30abea3
cleanup
JReinhold May 21, 2026
805a676
Docs: link autodocs templates to Doc Blocks API
tatakaisun May 21, 2026
bacf4f3
Prioritize .cmd over .exe for Windows command resolution
Copilot May 21, 2026
75c1c06
Maintenance: fix PR checks
JReinhold May 21, 2026
3087f9b
server service registration
JReinhold May 21, 2026
e7a5d1b
Merge branch 'next' into jeppe/service-arch-explorations
JReinhold May 21, 2026
b7419d0
cleanup
JReinhold May 21, 2026
e388a76
Merge branch 'next' into fix/argtypes-doc-link-404-issue
john-masters May 21, 2026
e785be7
add service registration to dev
JReinhold May 22, 2026
fb4ea26
Internal Storybook: Log open-service debug service at info level
JReinhold May 22, 2026
e41dec8
Merge branch 'next' into copilot/fix-pnpm-command-resolution-windows
valentinpalkovic May 22, 2026
6e309ce
Build: Bump Node.js to 22.22.3
valentinpalkovic May 22, 2026
63319a1
simplify
JReinhold May 26, 2026
e51df60
Security: Pin CI dep versions and tidy code up
Sidnioulz May 12, 2026
3b82298
Security: Explain why cache use is safe in CI job
Sidnioulz May 12, 2026
8e929eb
Potential fix for pull request finding
Sidnioulz May 20, 2026
c69e739
fix: add contents: read permission to agentscan job
Copilot May 20, 2026
61f1b78
Apply suggestion from @Sidnioulz
Sidnioulz May 21, 2026
c7a2289
Apply suggestion from @coderabbitai[bot]
Sidnioulz May 21, 2026
79719c3
Apply suggestions from code review
Sidnioulz May 21, 2026
f749d80
fix: add step IDs to get-parameters job and fix output reference
Copilot May 21, 2026
3e16f6d
docs: improve ArgsTable empty state guidance
Aniketiitk21 May 19, 2026
3c250b2
test: move ArgsTable empty-state checks into stories
Aniketiitk21 May 20, 2026
d97cc98
Reformat
Sidnioulz May 26, 2026
4ff8c08
Merge branch 'next' into jeppe/service-arch-explorations
ndelangen May 26, 2026
946dc34
Merge branch 'next' into valentin/bump-node-22.22.3
valentinpalkovic May 26, 2026
a26bbe8
Adjust copy based on designer feedback
Sidnioulz May 26, 2026
0056c32
Merge branch 'next' into sidnioulz/audit-ci
Sidnioulz May 26, 2026
80a2ecc
Avoid flaky test
Sidnioulz May 26, 2026
6a9d719
remove defineQuery and defineCommand helpers, rely completely on inli…
JReinhold May 26, 2026
a493ff3
Merge branch 'next' of github.com:storybookjs/storybook into jeppe/se…
JReinhold May 26, 2026
66274b1
Merge branch 'jeppe/service-arch-explorations' into jeppe/service-reg…
JReinhold May 26, 2026
f55f2c6
improvements
JReinhold May 26, 2026
a6e475f
fix format
JReinhold May 27, 2026
f9cae36
guard against applying services preset multiple times
JReinhold May 27, 2026
e511a9d
improve types
JReinhold May 27, 2026
c2741dc
improve debug service
JReinhold May 27, 2026
76595e4
cleanup
JReinhold May 27, 2026
b26fc2d
Merge branch 'jeppe/service-arch-explorations' into jeppe/service-reg…
JReinhold May 27, 2026
73fa773
Merge pull request #34860 from storybookjs/jeppe/service-arch-explora…
JReinhold May 27, 2026
49a0b1f
Addon Vitest: Fix dynamic import failure with Vitest 3
Sidnioulz May 27, 2026
f5ea72f
Remove unused import
Sidnioulz May 27, 2026
e6c0d5b
Restore error guards in resetMousePositionBeforeTests
Copilot May 27, 2026
3e9d7f8
Add error guards to resetMousePositionBeforeTests for Browser Mode an…
Copilot May 27, 2026
c9197e1
Restore global exports!
Sidnioulz May 27, 2026
0f7346d
Apply suggestion from @Sidnioulz
Sidnioulz May 27, 2026
b0a02c5
Core: Add missing export to globals
Sidnioulz May 27, 2026
394ef59
Automatically recompile on branch switch
Sidnioulz May 27, 2026
0385ad4
Merge pull request #34857 from Aniketiitk21/docs/args-table-empty-sta…
Sidnioulz May 27, 2026
fa6af03
Apply suggestion from @Sidnioulz
Sidnioulz May 27, 2026
54f6b4d
Plan: address review comment
Copilot May 27, 2026
ead5b73
Honor SKIP_STORYBOOK_GIT_HOOKS in post-checkout hook
Copilot May 27, 2026
92c38e8
Merge pull request #34929 from storybookjs/sidnioulz/add-missing-glob…
valentinpalkovic May 27, 2026
c095ea4
Apply suggestion from @valentinpalkovic
valentinpalkovic May 27, 2026
8a180f3
Merge branch 'next' into preserve-preview-ts-expect-error
brentswisher May 27, 2026
23aef53
Merge pull request #34930 from storybookjs/sidnioulz/post-checkout-op…
Sidnioulz May 27, 2026
5382497
Stop converting URLs to paths in Vitest addon
Sidnioulz May 27, 2026
c21c5e3
open-service: address review feedback
ndelangen May 27, 2026
a273a08
open-service: sync queries, load/loaded() API, strict reader handlers
JReinhold May 27, 2026
df63788
Dont vite ignore dynamic imports in Vitest Browser
Sidnioulz May 27, 2026
8c8af16
Merge branch 'next' into fix/argtypes-doc-link-404-issue
jonniebigodes May 27, 2026
2221849
Merge pull request #34883 from storybookjs/valentin/bump-node-22.22.3
valentinpalkovic May 27, 2026
fee81d7
Keep vite-ignore for Vitest 4
Sidnioulz May 27, 2026
2ed8430
Merge branch 'next' into fix/argtypes-doc-link-404-issue
jonniebigodes May 27, 2026
8a927d9
Ensure vitest3 codepath wont statically analyze vitest4 import string
Sidnioulz May 27, 2026
9d52a72
Gate vitest/browser imports to browser mode
Sidnioulz May 27, 2026
07b341b
Initial plan
Copilot May 27, 2026
cf9b0ed
Add NPM_CONFIG_PROVENANCE=true to publish workflow steps
Copilot May 27, 2026
506fd01
Update .github/workflows/publish.yml
JReinhold May 28, 2026
4504278
Update .github/workflows/publish.yml
JReinhold May 28, 2026
8ab3ef6
Add --provenance flag to yarn npm publish command
Copilot May 28, 2026
b064994
open-service: subscribe emits current state immediately
JReinhold May 28, 2026
323dfdb
Merge branch 'next' into sidnioulz/audit-ci
valentinpalkovic May 28, 2026
0328c65
Merge pull request #34450 from GalacticAvenger/fix/onboarding-addon-docs
valentinpalkovic May 28, 2026
802dca2
Merge pull request #33534 from storybookjs/copilot/fix-pnpm-command-r…
valentinpalkovic May 28, 2026
896b349
Merge pull request #34936 from storybookjs/copilot/bugfixstorybook-pr…
JReinhold May 28, 2026
3c7e8f3
Initial plan
Copilot May 28, 2026
f57a035
Add 40px horizontal padding to DocsWrapper to prevent anchor link cutoff
Copilot May 28, 2026
829f848
open-service: document the load drain algorithm in depth
JReinhold May 28, 2026
a733e50
Fix: change DocsWrapper horizontal padding from 20px to 40px to preve…
Copilot May 28, 2026
adaed64
open-service: update logging levels and refactor service registration
ndelangen May 28, 2026
5606d6b
Remove credentials where not needed
Sidnioulz May 28, 2026
8f1c368
Merge branch 'next' into sidnioulz/audit-ci
Sidnioulz May 28, 2026
67f8c74
Merge branch 'next' into jeppe/service-registration
ndelangen May 28, 2026
ff317d8
Merge pull request #34770 from storybookjs/sidnioulz/audit-ci
Sidnioulz May 28, 2026
601882a
Initial plan
Copilot May 28, 2026
9b7cefb
Initial plan
Copilot May 28, 2026
7a43028
Make separate setup files for Vitest Browser v3 and v4
Sidnioulz May 28, 2026
efa1b6f
chore: plan tanstack route path fix
Copilot May 28, 2026
4e8455b
fix(tanstack-react): allow route.path in plain router route options
Copilot May 28, 2026
180522f
fix(tanstack-react): export TanStackPreview type from framework entry
Copilot May 28, 2026
eb4e511
refactor(tanstack-react): remove redundant plain route options cast
Copilot May 28, 2026
92624d8
refactor(tanstack-react): simplify synthetic route id assignment
Copilot May 28, 2026
9f14aac
refactor(tanstack-react): derive synthetic id from route options
Copilot May 28, 2026
26b7da1
ci: add zizmor static analysis
huang-julien May 26, 2026
9a9c6a0
ci: update zizmor yml
huang-julien May 26, 2026
4a1b0ef
Ci: run zizmor on branch main and next
huang-julien May 26, 2026
6211c1a
Plan follow-up feedback fixes
Copilot May 28, 2026
bce2987
core-server: prevent multiple service applications
ndelangen May 28, 2026
86fbb10
Merge branch 'jeppe/service-registration' of github.com:storybookjs/s…
ndelangen May 28, 2026
25379a5
Merge branch 'next' into fix/argtypes-doc-link-404-issue
jonniebigodes May 28, 2026
93fb631
Address workflow security review feedback
Copilot May 28, 2026
31c7696
Fix TS check error in tests
Sidnioulz May 28, 2026
824e8ea
Clean up Copilot pollution
Sidnioulz May 28, 2026
e96f4ea
Disable uv cache to avoid cache poisoning
Sidnioulz May 28, 2026
e735cef
core-server: improve service registration state management
ndelangen May 28, 2026
a24eece
Merge branch 'next' into jeppe/service-registration
ndelangen May 28, 2026
f4c561d
Merge pull request #34875 from storybookjs/jeppe/service-registration
JReinhold May 28, 2026
8fe4017
Potential fix for pull request finding
Sidnioulz May 28, 2026
a5cd5e5
Apply remaining changes
Copilot May 28, 2026
102ca72
Merge branch 'next' into claude/practical-jones-e3d0c1
ndelangen May 28, 2026
9f985b1
zizmor: only upload SARIF when org is storybookjs
Copilot May 28, 2026
f7fcb0b
Clean up
Sidnioulz May 28, 2026
2d4d235
Clean up
Sidnioulz May 28, 2026
94b5671
Clean up
Sidnioulz May 28, 2026
f15e94a
Clean up Copilot's mess
Sidnioulz May 28, 2026
463dfb6
refactor: update service fixture IDs to use 'internal-fixture' prefix
ndelangen May 28, 2026
c737c8f
fix: update noInputSchema type from undefined to void
ndelangen May 28, 2026
5f5b55f
open-service: apply PR review feedback on fixtures
JReinhold May 28, 2026
d9a293a
refactor: streamline service definitions and update test references
ndelangen May 28, 2026
165e308
Merge branch 'next' into ci/zizmor
Sidnioulz May 28, 2026
23a7ab4
Merge branch 'claude/practical-jones-e3d0c1' of github.com:storybookj…
ndelangen May 28, 2026
dc80c19
refactor: enhance type safety in service lookups and update documenta…
ndelangen May 28, 2026
919585e
Merge branch 'next' into sidnioulz/fix-vitest3-dynamic-import
Sidnioulz May 28, 2026
541f383
Merge branch 'next' into fix/argtypes-doc-link-404-issue
jonniebigodes May 28, 2026
aac5da9
Merge pull request #34905 from storybookjs/ci/zizmor
Sidnioulz May 28, 2026
c899cac
Merge pull request #34927 from storybookjs/sidnioulz/fix-vitest3-dyna…
Sidnioulz May 28, 2026
8183375
refactor: unify static input handling and file path definitions in se…
ndelangen May 28, 2026
ca0acbf
refactor: improve static input handling and type definitions in servi…
ndelangen May 28, 2026
01c6e99
Merge branch 'next' into claude/practical-jones-e3d0c1
ndelangen May 28, 2026
02b976b
Finalise fixes to layout state management
Sidnioulz May 28, 2026
64f2ca7
Merge branch 'next' into fix/argtypes-doc-link-404-issue
jonniebigodes May 28, 2026
e105245
Merge branch 'next' into codex/fix-layout-show-panel
Sidnioulz May 28, 2026
51071c6
Adjust docs heading anchor spacing and button padding
Copilot May 28, 2026
5f2975f
Improve vertical positioning
Sidnioulz May 28, 2026
dce85c3
Revert "Open-service: Implement service registration on the server"
JReinhold May 28, 2026
62e3fc2
Merge pull request #34960 from storybookjs/revert-34875-jeppe/service…
JReinhold May 28, 2026
d6c3471
Revert "Revert "Open-service: Implement service registration on the s…
JReinhold May 28, 2026
7509038
Try other vertical alignment approach
Sidnioulz May 28, 2026
c1abcd1
Merge branch 'next' into codex/fix-layout-show-panel
Sidnioulz May 28, 2026
2fcce09
Merge branch 'next' into copilot/fix-heading-anchor-link-cut-off
Sidnioulz May 28, 2026
8d64c63
ensure the services preset is only applied once, everywhere
JReinhold May 28, 2026
e5a2e62
fix(csf): propagate skip tags to .test children
kwonoj May 28, 2026
a7145d3
Merge branch 'next' into preserve-preview-ts-expect-error
brentswisher May 28, 2026
ca4650c
Merge branch 'jeppe/service-registration-attempt-2' into claude/pract…
JReinhold May 29, 2026
011d773
Merge pull request #34961 from storybookjs/jeppe/service-registration…
ndelangen May 29, 2026
b9f0691
Merge branch 'next' into claude/practical-jones-e3d0c1
ndelangen May 29, 2026
1295f93
fix(react): render boolean props set to false in source snippets
valentinpalkovic May 29, 2026
2fe9ffb
refactor: rename `filePath` to `staticPath` in service definitions an…
ndelangen May 29, 2026
3f57c36
refactor: simplify static input resolution in service registration
ndelangen May 29, 2026
6c4df50
docs: update Query type documentation for subscribe method
ndelangen May 29, 2026
5a10925
Tell agents to preserve generated code unless relevant changes
Sidnioulz May 29, 2026
f12f3ab
Merge pull request #34968 from storybookjs/valentin/patch-react-eleme…
Sidnioulz May 29, 2026
29bcfd9
Merge pull request #34777 from kalinco-glitch/codex/fix-layout-show-p…
Sidnioulz May 29, 2026
7880945
Merge pull request #34970 from storybookjs/sidnioulz/preserve-generat…
valentinpalkovic May 29, 2026
3c67edf
Merge pull request #34945 from storybookjs/copilot/fix-heading-anchor…
Sidnioulz May 29, 2026
f7414f0
test: add test for dependency load behavior in service runtime
ndelangen May 29, 2026
802842a
test: add test for runLoadOnce behavior in service runtime
ndelangen May 29, 2026
951c7d7
Merge branch 'next' into claude/practical-jones-e3d0c1
ndelangen May 29, 2026
9bbdb75
test: refactor dependency load test in service runtime
ndelangen May 29, 2026
42bd648
docs: link Doc Block references directly from autodocs template list
tatakaisun May 29, 2026
d710882
Merge pull request #34932 from storybookjs/claude/practical-jones-e3d0c1
ndelangen May 29, 2026
d6ce689
Merge pull request #34964 from kwonoj/fix-test-factory-tags
Sidnioulz May 29, 2026
5fb8113
Vue: Ensure vue-component-meta runs in post
Sidnioulz May 29, 2026
bf5dde0
Vue: Ensure vue-docgen runs in post
Sidnioulz May 29, 2026
13b19ef
Merge branch 'next' into copilot/fix-csf-next-export-tanstack-preview
huang-julien Jun 1, 2026
4c9c6e2
refactor(core): extract StoryDependencyGraphService from ChangeDetect…
valentinpalkovic Jun 1, 2026
a4266d2
revert(core): remove unintended SupportedFramework globals export
Copilot Jun 1, 2026
d52eaae
Tanstack: Remove Outlet mock
huang-julien Jun 1, 2026
7fd7f0f
feat: add assertion in story
huang-julien Jun 1, 2026
1773b7f
Danger: Add QA labeling requirement to all PRs
Sidnioulz Jun 1, 2026
465b40d
refactor(core): harden StoryDependencyGraphService onChange/whenSettl…
valentinpalkovic Jun 1, 2026
c4f53de
Merge pull request #34976 from storybookjs/sidnioulz/vue-component-me…
Sidnioulz Jun 1, 2026
5fbc027
CI: Clarify manual testing purpose in PR template
Sidnioulz Jun 1, 2026
124dc46
Update PR template to mention QA labels
Sidnioulz Jun 1, 2026
a19f279
Merge branch 'next' into docs/19810-addon-docs-overhaul-scope
Sidnioulz Jun 1, 2026
155c5d0
Expose story dependency graph service
yannbf Jun 1, 2026
42fcec7
fix
yannbf Jun 1, 2026
f04893a
refactor(core): decouple graph ownership from change detection
JReinhold Jun 1, 2026
43a4ec1
Core: Clean stale runtime instance records
kasperpeulen Jun 2, 2026
7c56e06
Merge pull request #35015 from storybookjs/sidnioulz/clarify-manual-t…
valentinpalkovic Jun 2, 2026
3d3b142
Merge pull request #35011 from storybookjs/sidnioulz/qa-label-check
valentinpalkovic Jun 2, 2026
35f2922
Merge pull request #34867 from tatakaisun/docs/19810-addon-docs-overh…
valentinpalkovic Jun 2, 2026
ecc218e
Merge pull request #34787 from storybookjs/test/tanstack_plugin
valentinpalkovic Jun 2, 2026
28eba9b
Merge pull request #34839 from brentswisher/preserve-preview-ts-expec…
valentinpalkovic Jun 2, 2026
d07710c
Merge pull request #34840 from john-masters/fix/argtypes-doc-link-404…
valentinpalkovic Jun 2, 2026
3083491
Merge branch 'next' into copilot/bug-fix-route-path-issue
huang-julien Jun 2, 2026
bc126cd
Merge branch 'next' into copilot/fix-csf-next-export-tanstack-preview
huang-julien Jun 2, 2026
89156c5
Merge pull request #35010 from storybookjs/fix/tanstack_outlet
huang-julien Jun 2, 2026
575aae8
Merge branch 'next' into copilot/bug-fix-route-path-issue
huang-julien Jun 2, 2026
ad7718c
Merge pull request #35023 from storybookjs/kasper/runtime-registry-cl…
kasperpeulen Jun 2, 2026
fa3ba7c
Merge pull request #34950 from storybookjs/copilot/bug-fix-route-path…
huang-julien Jun 2, 2026
69afd86
Merge pull request #34949 from storybookjs/copilot/fix-csf-next-expor…
huang-julien Jun 2, 2026
8c89ad4
Address review comments
yannbf Jun 2, 2026
3b1cc8d
Merge pull request #35009 from storybookjs/valentin/extract-story-dep…
yannbf Jun 2, 2026
bb11471
Write changelog for 10.5.0-alpha.3 [skip ci]
storybook-bot Jun 2, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 4 additions & 1 deletion .github/PULL_REQUEST_TEMPLATE.md
Original file line number Diff line number Diff line change
Expand Up @@ -30,12 +30,14 @@ Thank you for contributing to Storybook! Please submit all PRs to the `next` bra
> [!CAUTION]
> This section is mandatory for all contributions. If you believe no manual test is necessary, please state so explicitly. Thanks!

<!-- Please include the steps to test your changes here. For example:
<!-- Please include the steps that a human maintainer should follow, so they can verify that your changes work. For example:

1. Run a sandbox for template, e.g. `yarn task --task sandbox --start-from auto --template react-vite/default-ts`
2. Open Storybook in your browser
3. Access X story

Do not describe how YOU tested the PR code, but how a separate maintainer should do so. A good manual test often mirrors reproduction steps provided in an issue.

-->

### Documentation
Expand All @@ -49,6 +51,7 @@ Thank you for contributing to Storybook! Please submit all PRs to the `next` bra
## Checklist for Maintainers

- [ ] When this PR is ready for testing, make sure to add `ci:normal`, `ci:merged` or `ci:daily` GH label to it to run a specific set of sandboxes. The particular set of sandboxes can be found in `code/lib/cli-storybook/src/sandbox-templates.ts`
- [ ] Declare whether manual QA will be needed for this PR during the next release, through `qa:needed` or `qa:skip`
- [ ] Make sure this PR contains **one** of the labels below:
<details>
<summary>Available labels</summary>
Expand Down
62 changes: 55 additions & 7 deletions .github/workflows/agent-scan.yml
Original file line number Diff line number Diff line change
@@ -1,6 +1,44 @@
###################################################################################################
# #
# ██ #
# ██░░██ #
# ░░ ░░ ██░░░░░░██ ░░░░ #
# ██░░░░░░░░░░██ #
# ██░░░░░░░░░░██ #
# ██░░░░░░░░░░░░░░██ #
# ██░░░░░░██████░░░░░░██ #
# ██░░░░░░██████░░░░░░██ #
# ██░░░░░░░░██████░░░░░░░░██ #
# ██░░░░░░░░██████░░░░░░░░██ #
# ██░░░░░░░░░░██████░░░░░░░░░░██ #
# ██░░░░░░░░░░░░██████░░░░░░░░░░░░██ #
# ██░░░░░░░░░░░░██████░░░░░░░░░░░░██ #
# ██░░░░░░░░░░░░░░██████░░░░░░░░░░░░░░██ #
# ██░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░██ #
# ██░░░░░░░░░░░░░░░░██████░░░░░░░░░░░░░░░░██ #
# ██░░░░░░░░░░░░░░░░██████░░░░░░░░░░░░░░░░██ #
# ██░░░░░░░░░░░░░░░░░░██████░░░░░░░░░░░░░░░░░░██ #
# ░░ ██░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░██ #
# ██████████████████████████████████████████ #
# #
# #
# SECURITY WARNING: Ensure your `pull_request_target` job respects the following rules: #
# #
# - Never write to GitHub Actions cache, as it would allow cache poisoning attacks #
# - Only call third-party systems that are aware the code passed to them could be untrustworthy #
# - Always set explicit permissions on your PR to limit the capabilities of secrets.GITHUB_TOKEN #
# #
###################################################################################################

name: agent-scan

# Start with empty permissions on `pull_request_target`, then set permissions per job as needed.
permissions: {}

on:
# Use `pull_request_target` so we can run this workflow on PRs from forks, as its goal is to assess
# if PR authors are trustworthy. Only reasons on the PR author and does not check out the fork code.
# zizmor: ignore[dangerous-triggers] # required for fork PRs; no fork code is checked out
pull_request_target:
types:
- opened
Expand All @@ -25,24 +63,34 @@ jobs:
runs-on: ubuntu-latest
permissions:
pull-requests: write
contents: read
steps:
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd
- name: Checkout code from `next`/`main` branch (trusted code, not PR author code)
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
with:
ref: ${{ github.event.pull_request.base.sha }}
persist-credentials: false

- name: Install script dependencies
run: npm install --prefix .github/scripts

- name: Check author org membership
id: membership
env:
INPUT_TOKEN: ${{ secrets.GITHUB_TOKEN }}
INPUT_ORG: ${{ github.repository_owner }}
INPUT_USERNAME: ${{ github.event.pull_request.user.login }}
run: node .github/scripts/agent-scan-check-org-membership.mjs

- name: Cache AgentScan analysis
if: steps.membership.outputs.should-scan == 'true'
uses: actions/cache@668228422ae6a00e4ad889ee87cd7109ec5666a7
uses: actions/cache@27d5ce7f107fe9357f9df03efb73ab90386fccae # v5.0.5
with:
path: .agentscan-cache
# Safe because the cache is prefixed and only used here, and does not include
# user-controlled content (can't spoof another actor's identity).
key: agentscan-cache-${{ github.actor }}
restore-keys: agentscan-cache-

- name: AgentScan
if: steps.membership.outputs.should-scan == 'true'
id: agentscan
Expand All @@ -51,13 +99,13 @@ jobs:
github-token: ${{ secrets.GITHUB_TOKEN }}
agent-scan-comment: false
cache-path: .agentscan-cache
label-community-flagged: "agent-scan:community-flagged"
label-mixed: "agent-scan:mixed"
label-automation: "agent-scan:automated"
label-community-flagged: 'agent-scan:community-flagged'
label-mixed: 'agent-scan:mixed'
label-automation: 'agent-scan:automated'

- name: Label PR with classification
if: steps.membership.outputs.should-scan == 'true' && steps.agentscan.outputs.classification
env:
INPUT_TOKEN: ${{ secrets.GITHUB_TOKEN }}
INPUT_CLASSIFICATION: ${{ steps.agentscan.outputs.classification }}
run: node .github/scripts/agent-scan-label-pr.mjs
run: node .github/scripts/agent-scan-label-pr.mjs
4 changes: 3 additions & 1 deletion .github/workflows/copilot-setup-steps.yml
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,9 @@ jobs:
# If you do not check out your code, Copilot will do this for you.
steps:
- name: Checkout code
uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
with:
persist-credentials: false

- name: Setup Node.js and Install Dependencies
uses: ./.github/actions/setup-node-and-install
Expand Down
28 changes: 0 additions & 28 deletions .github/workflows/cron-weekly.yml

This file was deleted.

13 changes: 8 additions & 5 deletions .github/workflows/danger-js.yml
Original file line number Diff line number Diff line change
Expand Up @@ -30,8 +30,11 @@
# #
###################################################################################################

name: Danger JS

on:
# We need `pull_request_target` to check external contributor PRs.
# zizmor: ignore[dangerous-triggers] # job checks out base.sha (trusted code), not the PR head; see security warning above
pull_request_target:
types:
- opened
Expand All @@ -47,16 +50,16 @@ concurrency:
group: ${{ github.workflow }}-${{ github.event.number }}
cancel-in-progress: true

permissions:
contents: read
issues: read
pull-requests: write
permissions: {}

name: Danger JS
jobs:
dangerJS:
name: Danger JS
runs-on: ubuntu-latest
permissions:
contents: read
issues: read
pull-requests: write
steps:
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
with:
Expand Down
17 changes: 14 additions & 3 deletions .github/workflows/fork-checks.yml
Original file line number Diff line number Diff line change
Expand Up @@ -7,15 +7,20 @@ on:
env:
NODE_OPTIONS: '--max_old_space_size=4096'

permissions: {}

jobs:
check:
name: Core Type Checking
if: github.repository_owner != 'storybookjs'
runs-on: ubuntu-latest
permissions:
contents: read
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
with:
fetch-depth: 2
persist-credentials: false

- name: Setup Node.js and Install Dependencies
uses: ./.github/actions/setup-node-and-install
Expand All @@ -29,10 +34,13 @@ jobs:
name: Core Formatting
if: github.repository_owner != 'storybookjs'
runs-on: ubuntu-latest
permissions:
contents: read
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
with:
fetch-depth: 2
persist-credentials: false

- name: Setup Node.js and Install Dependencies
uses: ./.github/actions/setup-node-and-install
Expand All @@ -49,10 +57,13 @@ jobs:
runs-on: ${{ matrix.os }}
name: Core Unit Tests, ${{ matrix.os }}
if: github.repository_owner != 'storybookjs'
permissions:
contents: read
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
with:
fetch-depth: 2
persist-credentials: false

- name: Setup Node.js and Install Dependencies
uses: ./.github/actions/setup-node-and-install
Expand Down
18 changes: 13 additions & 5 deletions .github/workflows/generate-sandboxes.yml
Original file line number Diff line number Diff line change
Expand Up @@ -14,16 +14,18 @@ env:
CLEANUP_SANDBOX_NODE_MODULES: 'true'
NX_CLOUD_ACCESS_TOKEN: ${{ secrets.NX_CLOUD_ACCESS_TOKEN }}

permissions: {}

defaults:
run:
working-directory: ./code


jobs:
set-branches:
name: Resolve target branches
if: github.repository_owner == 'storybookjs'
runs-on: ubuntu-latest
permissions: {}
outputs:
branches: ${{ steps.set.outputs.branches }}
steps:
Expand All @@ -45,6 +47,8 @@ jobs:
needs: set-branches
if: github.repository_owner == 'storybookjs'
runs-on: ubuntu-latest
permissions:
contents: read
strategy:
fail-fast: false
matrix:
Expand All @@ -67,11 +71,12 @@ jobs:
/usr/share/dotnet \
/usr/share/swift

- uses: actions/checkout@v4
- uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
with:
ref: ${{ matrix.branch }}
persist-credentials: false

- uses: actions/setup-node@v4
- uses: actions/setup-node@48b55a011bda9f5d6aeb4c2d9c7362e8dae4041e #6.4.0
with:
node-version-file: '.nvmrc'

Expand Down Expand Up @@ -104,13 +109,16 @@ jobs:
# publish sandboxes even if the generation fails, as some sandboxes might have been generated successfully
# when triggered manually, always publish to the `next` branch on the sandboxes repo
if: ${{ !cancelled() }}
run: yarn publish-sandboxes --remote=https://storybook-bot:${{ secrets.PAT_STORYBOOK_BOT }}@github.com/storybookjs/sandboxes.git --push --branch=${{ github.event_name == 'workflow_dispatch' && 'next' || matrix.branch }}
env:
PAT: ${{ secrets.PAT_STORYBOOK_BOT }}
BRANCH: ${{ github.event_name == 'workflow_dispatch' && 'next' || matrix.branch }}
run: yarn publish-sandboxes --remote="https://storybook-bot:${PAT}@github.com/storybookjs/sandboxes.git" --push --branch="$BRANCH"

- name: Report failure to Discord
if: failure()
env:
DISCORD_WEBHOOK: ${{ secrets.DISCORD_MONITORING_URL }}
uses: Ilshidur/action-discord@d2594079a10f1d6739ee50a2471f0ca57418b554
uses: Ilshidur/action-discord@d2594079a10f1d6739ee50a2471f0ca57418b554 # v0.4.0
with:
args: |
The generation of some or all sandboxes on the **${{ matrix.branch }}** branch has failed.
Expand Down
Loading