ci: fix only the Windows PHP download URL - #365
Conversation
Reverts the workflows to exactly what they were before #362 and changes one thing: the two Windows download URLs point at the permanent archive instead of /~windows/releases/, which only keeps the current patch of each branch. When 8.4.24 shipped, the pinned 8.4.23 link began returning 404 and build-master failed on setup. Everything else from #362 is gone: the workflow_call trigger, build-pull-request.yml being a caller, the checksum verification, the release-guard change. Two independent workflow files with their original triggers, guards and steps, as before. Net diff against the pre-#362 state is four lines, two of them a comment.
🔴 Risk Classification: MAJORApproval route: AI Review + Human Approval Required Classification reasons
Operational gates
Files analysed: 2 wall-e 2026.06.19-02 · policy |
🔬 Debug — why this classification?Each reason code emitted by the classifier, its source clause in the AI in SDLC Control Framework, and what it means.
Kinds:
See issue #3 for the proposal to formalise this map as Appendix A of the standards doc. wall-e 2026.06.19-02 · debug |
🟠 Advisory review: Concerns worth a lookThis PR needs a human approval. Before you give it, these are the things I'd want resolved. This PR fixes the 404 Windows PHP download URL by switching to the archive path, but in doing so it also restores the pre-#362 state including: piping curl directly into php for Composer install (removing signature verification), removing SHA-256 checksum verification for the PHP zip, and reverting build-pull-request.yml to ubuntu-only (no Windows matrix on PRs), which was the original drift vector that allowed the URL bug to sit undetected. Concerns
This is not an approval. wall-e cannot auto-approve this PR — it is an opinion to help whoever does. Advisory review · us.anthropic.claude-sonnet-4-6 · wall-e 2026.06.19-02 |
|
| php composer-setup.php --quiet | ||
| rm -f composer-setup.php | ||
| # Install Composer | ||
| curl -sS https://getcomposer.org/installer | php |
| run: composer validate | ||
|
|
||
| - name: Composer update | ||
| run: composer update --prefer-dist --no-interaction |




What
Reverts both workflow files to exactly what they were before #362, then changes one thing: the two Windows PHP download URLs.
Net diff against the pre-#362 state is four lines, two of which are a comment.
Why
downloads.php.net/~windows/releases/keeps only the current patch of each branch. When 8.4.24 shipped, the pinnedphp-8.4.23-Win32-vs17-x64.ziplink began returning404andbuild-masterdied during setup, before running a test:The archive at
windows.php.net/downloads/releases/archives/keeps every patch, so the URLs no longer rot. Both verified to return the file.What is deliberately NOT here
Everything else #362 introduced is reverted: the
workflow_calltrigger,build-pull-request.ymlas a caller, the checksum verification, the release-guard change. Two independent workflow files with their original triggers, guards and steps.That is the point of this PR: the smallest possible change to stop CI failing, and nothing else.
Known review noise
SonarCloud may flag
composer updateand the unverified download on the restored lines, because reverting a file makes its lines count as new code. Both are byte-identical to what has been onmasterfor months, where they are not flagged. Accepted deliberately rather than fixed here.