Problem
Shipped examples 000–004 are covered by make web-smoke, make examples-web-smoke, and test/unit/ExamplesCompileTest.php. #1881 adds 005-SessionsWeb (session + flash) but nothing in CI curls POST/login/logout or lint-smoke-runs the new tree — regressions would only show up in ad-hoc phpc serve.
Goal
When #1881 VM routes are green, add default-on (or opt-in → default-on) gates:
ExamplesCompileTest — lint + VM smoke for examples/005-SessionsWeb/public/index.php (session cookie round-trip)
script/examples-web-smoke.sh — curl login → flash redirect → logout (VM phpc serve)
- Optional:
make examples-sessions-smoke wrapper in Makefile (mirror examples-web-smoke)
Implementation hints
| Piece |
Path |
Notes |
| Env |
script/ci-defaults.env |
SESSIONS_WEB_SMOKE_GATE="${SESSIONS_WEB_SMOKE_GATE:-0}" → flip :-1 when green |
| Fast CI |
script/ci-fast.sh |
Hook after 001–004 web smoke (#298) |
| Full CI |
script/ci-local.sh |
Same gate in serve phase |
| Helpers |
test/support/ |
Reuse MiniWebAppCgiEnv-style cookie jar for curl |
| Docs |
examples/README.md |
Run matrix row for 005 |
AOT link/execute for 005 stays opt-in until #1882 / project JIT stable — do not block VM smoke on LLVM.
Acceptance criteria
SESSIONS_WEB_SMOKE_GATE=1 ./script/ci-fast.sh
SESSIONS_WEB_SMOKE_GATE=1 make examples-web-smoke # includes 005 curls
vendor/bin/phpunit --filter ExamplesCompileTest
Verification (local / Docker only)
docker run --rm -v "$(pwd):/compiler" -w /compiler php-compiler:22.04-dev \
SESSIONS_WEB_SMOKE_GATE=1 ./script/ci-fast.sh
Dependencies
Links
Problem
Shipped examples 000–004 are covered by
make web-smoke,make examples-web-smoke, andtest/unit/ExamplesCompileTest.php. #1881 adds 005-SessionsWeb (session + flash) but nothing in CI curls POST/login/logout or lint-smoke-runs the new tree — regressions would only show up in ad-hocphpc serve.Goal
When #1881 VM routes are green, add default-on (or opt-in → default-on) gates:
ExamplesCompileTest— lint + VM smoke forexamples/005-SessionsWeb/public/index.php(session cookie round-trip)script/examples-web-smoke.sh— curl login → flash redirect → logout (VMphpc serve)make examples-sessions-smokewrapper inMakefile(mirrorexamples-web-smoke)Implementation hints
script/ci-defaults.envSESSIONS_WEB_SMOKE_GATE="${SESSIONS_WEB_SMOKE_GATE:-0}"→ flip:-1when greenscript/ci-fast.shscript/ci-local.shtest/support/MiniWebAppCgiEnv-style cookie jar for curlexamples/README.mdAOT link/execute for 005 stays opt-in until #1882 / project JIT stable — do not block VM smoke on LLVM.
Acceptance criteria
SESSIONS_WEB_SMOKE_GATE=1 ./script/ci-fast.sh SESSIONS_WEB_SMOKE_GATE=1 make examples-web-smoke # includes 005 curls vendor/bin/phpunit --filter ExamplesCompileTestexamples/README.mddocuments gate env varVerification (local / Docker only)
docker run --rm -v "$(pwd):/compiler" -w /compiler php-compiler:22.04-dev \ SESSIONS_WEB_SMOKE_GATE=1 ./script/ci-fast.shDependencies
session_startpathLinks