Skip to content

Storybook prod serves stale mixed-version bundles after deploy (48h cache on index.html and runtime files) #2212

Storybook prod serves stale mixed-version bundles after deploy (48h cache on index.html and runtime files)

Storybook prod serves stale mixed-version bundles after deploy (48h cache on index.html and runtime files) #2212

Workflow file for this run

name: Claude Code
on:
issue_comment:
types: [created]
pull_request_review_comment:
types: [created]
issues:
types: [opened, assigned]
pull_request_review:
types: [submitted]
jobs:
claude:
if: |
(github.event_name == 'issue_comment' && contains(github.event.comment.body, '@claude')) ||
(github.event_name == 'pull_request_review_comment' && contains(github.event.comment.body, '@claude')) ||
(github.event_name == 'pull_request_review' && contains(github.event.review.body, '@claude')) ||
(github.event_name == 'issues' && (contains(github.event.issue.body, '@claude') || contains(github.event.issue.title, '@claude')))
runs-on: ubuntu-latest
permissions:
contents: write
pull-requests: write
issues: write
id-token: write
actions: read # Required for Claude to read CI results on PRs
steps:
- name: Check permission
id: check-permission
env:
GH_TOKEN: ${{ github.token }}
run: |
PERMISSION=$(gh api repos/${{ github.repository }}/collaborators/${{ github.actor }}/permission --jq '.permission')
if [ "$PERMISSION" = "admin" ] || [ "$PERMISSION" = "maintain" ] || [ "$PERMISSION" = "write" ]; then
echo "authorized=true" >> "$GITHUB_OUTPUT"
echo "User ${{ github.actor }} authorized with '$PERMISSION' permission."
else
echo "authorized=false" >> "$GITHUB_OUTPUT"
echo "::notice::User ${{ github.actor }} has '$PERMISSION' permission, 'write' or higher required. Skipping."
fi
- name: Checkout repository
if: steps.check-permission.outputs.authorized == 'true'
uses: actions/checkout@v7
with:
fetch-depth: 1
- name: Install Node.js
if: steps.check-permission.outputs.authorized == 'true'
uses: actions/setup-node@v7
with:
node-version: '24.16.0'
- name: Setup pnpm
if: steps.check-permission.outputs.authorized == 'true'
uses: pnpm/action-setup@v6
with:
run_install: false
- name: Run Claude Code
if: steps.check-permission.outputs.authorized == 'true'
id: claude
uses: anthropics/claude-code-action@v1
with:
anthropic_api_key: ${{ secrets.ANTHROPIC_API_KEY }}
# Allows Claude to read CI results on PRs
additional_permissions: |
actions: read
# See https://github.com/anthropics/claude-code-action/blob/main/docs/usage.md
# or https://code.claude.com/docs/en/cli-reference for available options
claude_args: >-
--append-system-prompt
"Read AGENTS.md for the canonical EDS conventions (component structure, code style, CSS patterns, testing, accessibility, conventional commits).
Path-scoped rules in .claude/rules/ apply automatically when relevant.
Run pnpm install --frozen-lockfile only when you need to install dependencies or run scripts.
Run pnpm run build:core-react before tests if you've changed types that other packages depend on.
Useful commands: pnpm run test:core-react, pnpm run lint ./path/to/file.tsx,
cd packages/eds-core-react && pnpm test -- --testPathPattern=ComponentName."
--allowed-tools
"Bash(pnpm:*),Bash(npm:*),Bash(node:*),Bash(git:*),Bash(gh pr:*),Bash(gh issue:*),Bash(ls:*),Bash(cd:*),Bash(cat:*),Bash(find:*),Bash(grep:*),Bash(head:*),Bash(tail:*),Bash(wc:*),Bash(sort:*),Bash(uniq:*),Bash(diff:*),Bash(echo:*),Bash(mkdir:*),Bash(cp:*),Bash(mv:*)"