[CI] Sync stabilized workflows from 2026.x - #1994
berfinyuksel wants to merge 1 commit into
Conversation
Since the new-* -> final-name workflow rename (#1943) only landed on the default branch, static analysis stopped running on PRs targeting this branch: pull_request_target resolves workflow files from the default branch, where new-static-analysis.yaml no longer exists, and the renamed static-analysis.yaml (pull_request trigger) did not exist here yet. - Rename new-static-analysis.yaml -> static-analysis.yaml and switch to the pull_request trigger, so PHPStan runs on PRs again - Rename new-docs.yml -> docs.yml (same pattern) - Sync copilot-setup-steps.yml (step-scoped COMPOSER_AUTH) - Add pr-guardrails.yml, pr-policy.yml, repo-guardrails.yml codeception.yaml and api-test.yaml are untouched: already identical to 2026.x, the matrix is derived at runtime from composer.json and the central matrix config. symfony8-compat.yaml is intentionally not synced (dev-line-only forward-compat gate). Refs pimcore/product-management#1305 Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
|
There was a problem hiding this comment.
Pull request overview
Synchronizes stabilized CI workflows from 2026.x into the maintenance branch.
Changes:
- Restores PR-triggered PHPStan and documentation workflows.
- Secures and updates Copilot dependency setup.
- Adds PR, repository, and milestone guardrails.
Reviewed changes
Copilot reviewed 6 out of 6 changed files in this pull request and generated 1 comment.
Show a summary per file
| File | Description |
|---|---|
.github/workflows/static-analysis.yaml |
Enables PHPStan for pull requests. |
.github/workflows/docs.yml |
Renames and updates documentation CI. |
.github/workflows/copilot-setup-steps.yml |
Updates setup and scopes Composer credentials. |
.github/workflows/pr-guardrails.yml |
Adds centralized PR guardrails. |
.github/workflows/pr-policy.yml |
Enforces milestone assignment. |
.github/workflows/repo-guardrails.yml |
Adds issue-level repository guardrails. |
💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.
| # Thin, generic trigger. All guardrail logic lives in the central collection | ||
| # pimcore/workflows-collection-public. This file names no guardrails and no | ||
| # secrets (secrets: inherit), so it is identical across every repo and never | ||
| # needs editing when a guardrail or token is added/removed there. |
|
Superseded: these changes reached 2026.2 via the forward-merge 2025.4 → 2026.2 (3bfd7de) after #1993 was merged, and 2026.x via 3953fea — per the no-extra-PRs-for-upstream-merges flow. Workflow parity verified: .github/workflows identical across 2025.4 / 2026.2 / 2026.x except symfony8-compat.yaml (intentionally dev-line-only). |



Part of pimcore/product-management#1305 — sync the stabilized default-branch workflows to the maintenance branches.
Why
Since #1943 renamed the
new-*workflows to their final names on2026.xonly, PHPStan has not run on any PR targeting this branch since July 10:pull_request_targetresolves workflow files from the default branch, wherenew-static-analysis.yamlno longer exists — and the renamedstatic-analysis.yaml(plainpull_requesttrigger, resolved from the merge ref) did not exist on this branch. PHPStan failures only surfaced after merge on the push run (which is what #1992 had to clean up).Changes
new-static-analysis.yaml→static-analysis.yamland switch to thepull_requesttrigger — PHPStan runs on PRs targeting this branch againnew-docs.yml→docs.yml(same pattern, incl. droppedDOCS_GENERATOR_ACCESS_TOKENpass no longer declared by the reusable workflow)copilot-setup-steps.yml(step-scopedCOMPOSER_AUTHinstead of global auth.json / SSH key)cla.yamlneeded no change here (already identical)pr-guardrails.yml,pr-policy.yml,repo-guardrails.ymlDeliberately not synced
codeception.yaml/api-test.yaml— untouched; already byte-identical to2026.x(the matrix is derived at runtime fromcomposer.json+ the central matrix config, so no branch-specific matrix is overwritten here)symfony8-compat.yaml— dev-line-only forward-compat gate, added directly on2026.x(Aug 5); running it on a maintenance line would add an irrelevant/failing required job. Shout if it should be included after all.After this and the sibling
2025.4PR (#1993) merge,.github/workflowsis identical across2025.4/2026.2/2026.x(exceptsymfony8-compat.yaml), so future forward-merges stay clean.🤖 Generated with Claude Code