You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
#1891 ✅ landed PHPUnit + script/examples-aot-smoke.sh coverage for 005-SessionsWeb two-request AOT execute (cookie jar + $_SESSION flash). Today there is no ci-local hook — contributors only discover regressions via manual SESSIONS_WEB_AOT_SMOKE_GATE=1 runs.
VM session curls are default-on (#1887 ✅, #1894 ✅). AOT session persistence needs the same staged gate pattern as MiniWebApp execute (#676) and M3 strict (#1866).
Status (May 2026): Blocker #1891 is closed — this issue is ready to implement (wire opt-in gate only).
Goal
Add SESSIONS_WEB_AOT_SMOKE_GATE="${SESSIONS_WEB_AOT_SMOKE_GATE:-0}" to script/ci-defaults.env
ci_run_sessions_web_aot_smoke() in script/ci-common.sh — runs after examples-aot-smoke.sh in llvm tail only
Wire into script/ci-local.sh (skip when LLVM missing — exit 0 like other aot smokes)
Problem
#1891 ✅ landed PHPUnit +
script/examples-aot-smoke.shcoverage for 005-SessionsWeb two-request AOT execute (cookie jar +$_SESSIONflash). Today there is no ci-local hook — contributors only discover regressions via manualSESSIONS_WEB_AOT_SMOKE_GATE=1runs.VM session curls are default-on (#1887 ✅, #1894 ✅). AOT session persistence needs the same staged gate pattern as MiniWebApp execute (#676) and M3 strict (#1866).
Status (May 2026): Blocker #1891 is closed — this issue is ready to implement (wire opt-in gate only).
Goal
SESSIONS_WEB_AOT_SMOKE_GATE="${SESSIONS_WEB_AOT_SMOKE_GATE:-0}"toscript/ci-defaults.envci_run_sessions_web_aot_smoke()inscript/ci-common.sh— runs afterexamples-aot-smoke.shin llvm tail onlyscript/ci-local.sh(skip when LLVM missing — exit 0 like other aot smokes)docs/local-ci-matrix.md; cross-link CI: Default SESSIONS_WEB_AOT_SMOKE_GATE=1 in ci-local after #1921 green #1923 for default-on flipImplementation hints
script/ci-defaults.env0until harness stable on all hostsscript/ci-common.shci_run_examples_aot_smoke()script/examples-aot-smoke.shEXAMPLES_AOT_SMOKE_ONLY=005slice (see #2013 pattern for 006)test/aot/SessionsWebAotExecuteTest.php@group llvmtest/support/or inline in smokePHP_COMPILER_SESSION_DIR/tmplib/Doctor.php(#1903)test/unit/CiScriptsTest.phpWire order in
ci-local.shVerify (host)
Verify (harness — required)
Do not use raw
docker run -v "$(pwd):/compiler"on Runforge (#272 ✅).Acceptance criteria
phpc doctor --gates(DevEx: phpc doctor --gates lists 005-SessionsWeb ladder (#1887–#1894) #1903)SESSIONS_WEB_AOT_SMOKE_GATE=0skips block with one-line messageSESSIONS_WEB_AOT_SMOKE_GATE=1runs two-request flash on harness Docker imageDependencies
session_startJIT/AOTci-local.shLinks
examples/005-SessionsWeb/README.md