Problem
#1924 added 005-SessionsWeb to the root README.md shipped-examples table and extended script/check-root-readme-sync.php to fail when examples/README.md mentions 005 but the root table does not.
#1999 / PR #2008 landed 006-FileUploadWeb on master with a row in README.md and examples/README.md, but the drift guard still only checks 005 — contributors can merge stale “opt-in only” wording in the root table while gate flips land (#2009–#2012).
Goal
Extend script/check-root-readme-sync.php (or a sibling checker) so CI fails when:
examples/README.md documents 006-FileUploadWeb VM/AOT status and root README.md omits the row or shows 🚧 while examples say ✅
- Known stale phrases for 006 gates remain after default-on flips
Scope
| Piece |
Path |
| Checker |
script/check-root-readme-sync.php — add 006-FileUploadWeb parity like 005 block |
| Gate |
ROOT_README_006_SYNC_GATE=1 in ci-fast (default 0 until checker lands; flip follow-up) |
| Test |
test/unit/RootReadmeSyncTest.php or extend existing sync test |
| Docs |
docs/local-ci-matrix.md one row |
Acceptance criteria
php script/check-root-readme-sync.php # exits 0 on master after implementation
ROOT_README_SYNC_GATE=1 ./script/ci-fast.sh --filter RootReadme
Verification (local / Docker only)
docker run --rm -v "$(pwd):/compiler" -w /compiler php-compiler:22.04-dev \
php script/check-root-readme-sync.php
No GitHub Actions.
Dependencies
Links
Problem
#1924 added 005-SessionsWeb to the root
README.mdshipped-examples table and extendedscript/check-root-readme-sync.phpto fail whenexamples/README.mdmentions 005 but the root table does not.#1999 / PR #2008 landed 006-FileUploadWeb on
masterwith a row inREADME.mdandexamples/README.md, but the drift guard still only checks 005 — contributors can merge stale “opt-in only” wording in the root table while gate flips land (#2009–#2012).Goal
Extend
script/check-root-readme-sync.php(or a sibling checker) so CI fails when:examples/README.mddocuments 006-FileUploadWeb VM/AOT status and rootREADME.mdomits the row or shows 🚧 while examples say ✅Scope
script/check-root-readme-sync.php— add006-FileUploadWebparity like 005 blockROOT_README_006_SYNC_GATE=1inci-fast(default0until checker lands; flip follow-up)test/unit/RootReadmeSyncTest.phpor extend existing sync testdocs/local-ci-matrix.mdone rowAcceptance criteria
php script/check-root-readme-sync.php # exits 0 on master after implementation ROOT_README_SYNC_GATE=1 ./script/ci-fast.sh --filter RootReadmeVerification (local / Docker only)
docker run --rm -v "$(pwd):/compiler" -w /compiler php-compiler:22.04-dev \ php script/check-root-readme-sync.phpNo GitHub Actions.
Dependencies
Links