77 - trunk
88 paths :
99 - ' packages/admin-ui/**'
10+ - ' packages/babel-plugin-import-jsx-pragma/**'
11+ - ' packages/babel-plugin-makepot/**'
12+ - ' packages/babel-preset-default/**'
13+ - ' packages/browserslist-config/**'
1014 - ' packages/components/**'
15+ - ' packages/create-block/**'
16+ - ' packages/create-block-interactive-template/**'
17+ - ' packages/create-block-tutorial-template/**'
1118 - ' packages/dataviews/**'
19+ - ' packages/dependency-extraction-webpack-plugin/**'
20+ - ' packages/docgen/**'
21+ - ' packages/e2e-test-utils-playwright/**'
22+ - ' packages/env/**'
23+ - ' packages/eslint-plugin/**'
1224 - ' packages/fields/**'
1325 - ' packages/grid/**'
1426 - ' packages/icons/**'
1527 - ' packages/interface/**'
28+ - ' packages/npm-package-json-lint-config/**'
29+ - ' packages/postcss-plugins-preset/**'
30+ - ' packages/postcss-themes/**'
31+ - ' packages/prettier-config/**'
1632 - ' packages/private-apis/**'
33+ - ' packages/readable-js-assets-webpack-plugin/**'
34+ - ' packages/scripts/**'
1735 - ' packages/style-runtime/**'
36+ - ' packages/stylelint-config/**'
1837 - ' packages/theme/**'
1938 - ' packages/ui/**'
2039 - ' packages/undo-manager/**'
2140 - ' packages/views/**'
2241 - ' packages/widget-dashboard/**'
2342 - ' packages/widget-primitives/**'
2443 - ' packages/wp-build/**'
44+ - ' !packages/*/**/*.md'
2545 - ' packages/*/CHANGELOG.md'
2646 - ' tools/validation/validate-changelogs.ts'
2747 - ' .github/workflows/check-package-changelogs.yml'
28- - ' !packages/*/src/**/stories/**'
29- - ' !packages/*/src/**/test/**'
48+ - ' !packages/*/**/stories/**'
49+ - ' !packages/*/**/test/**'
50+ - ' !packages/*/**/__tests__/**'
51+ - ' !packages/*/**/*.stories.*'
52+ - ' !packages/*/**/*.mdx'
53+ - ' !packages/*/**/storybook.d.ts'
54+ - ' !packages/*/tsconfig.stories.json'
55+ - ' !packages/*/tsconfig.test.json'
56+ - ' !packages/*/tsconfig.bin.json'
57+ - ' !packages/*/.stylelintrc*'
58+ - ' !packages/*/.eslintrc*'
59+ - ' !packages/*/.prettierrc*'
60+ - ' !packages/*/.gitignore'
3061
3162# Disable permissions for all available scopes by default.
3263# Any needed permissions should be configured at the job level.
6394 - widget-dashboard
6495 - widget-primitives
6596 - wp-build
97+ # Tooling and config packages published to npm
98+ - babel-plugin-import-jsx-pragma
99+ - babel-plugin-makepot
100+ - babel-preset-default
101+ - browserslist-config
102+ - create-block
103+ - create-block-interactive-template
104+ - create-block-tutorial-template
105+ - dependency-extraction-webpack-plugin
106+ - docgen
107+ - e2e-test-utils-playwright
108+ - env
109+ - eslint-plugin
110+ - npm-package-json-lint-config
111+ - postcss-plugins-preset
112+ - postcss-themes
113+ - prettier-config
114+ - readable-js-assets-webpack-plugin
115+ - scripts
116+ - stylelint-config
66117 steps :
67118 - name : ' Get PR commit count'
68119 env :
@@ -87,8 +138,23 @@ jobs:
87138 # The workflow's `paths:` filter triggers on the union of all
88139 # tracked packages, so this matrix entry may run on a PR that
89140 # doesn't touch its package. Short-circuit if that's the case.
141+ # Files that don't warrant a CHANGELOG entry:
142+ ignored="^${PACKAGE_PATH}/("
143+ # Tests and stories.
144+ ignored+="(.+/)?(stories|test|__tests__)/"
145+ # Markdown: docs, READMEs and the CHANGELOG itself.
146+ ignored+="|.+\.(md|mdx)$"
147+ # Storybook files outside a stories directory.
148+ ignored+="|(.+/)?([^/]+\.stories\.[^/]+|storybook\.d\.ts)$"
149+ # Dev tooling configs at the package root. Configs a package
150+ # ships, such as `packages/scripts/config/`, and TypeScript
151+ # configs that can affect the build (`tsconfig.json`,
152+ # `tsconfig.build.json`, `tsconfig.plugins.json`) still count.
153+ ignored+="|(tsconfig\.(stories|test|bin)\.json|\.(stylelintrc|eslintrc|prettierrc)[^/]*|\.gitignore)$"
154+ ignored+=")"
155+
90156 relevant_changes=$(git diff --name-only "$BASE_SHA"...HEAD -- "${PACKAGE_PATH}/" \
91- | grep -Ev "^${PACKAGE_PATH}/(src/(.+/)?(stories|test)/|CHANGELOG\.md$) " || true)
157+ | grep -Ev "$ignored " || true)
92158
93159 if [ -z "$relevant_changes" ]; then
94160 echo "No relevant changes under ${PACKAGE_PATH}; skipping CHANGELOG presence check."
0 commit comments