Problem
#491 added VM/JIT benchmark columns for examples/003-MiniWebApp with AOT columns n/a until native user-class link.
#752 ✅ closed — phpc build --project links on harness. The public examples/README.md benchmark table still shows n/a for bin/compile.php and ./compiled because #764 blocks non-empty execute.
Without this gate, the README table stays misleading after link lands but before execute.
Goal
When LLVM is ready and link succeeds and execute returns HTML (#764 green):
Scope
Implementation hints
| File |
Notes |
script/rebuild-examples.php |
Call phpc build --project examples/003-MiniWebApp; run binary via subprocess + env |
examples/README.md |
Auto-updated; hand-edit only outside markers |
Makefile |
MINIWEBAPP_LINT_GATE=1 ./script/rebuild-examples.php |
# After #764 on branch with LLVM:
BENCH_MINIWEBAPP=1 php script/rebuild-examples.php
grep 003-MiniWebApp examples/README.md
Acceptance criteria
Docker:
docker run --rm -v "$(pwd):/compiler" -w /compiler php-compiler:22.04-dev \
./script/ci-fast.sh --filter RebuildExamples
Dependencies
Links
Problem
#491 added VM/JIT benchmark columns for
examples/003-MiniWebAppwith AOT columnsn/auntil native user-class link.#752 ✅ closed —
phpc build --projectlinks on harness. The publicexamples/README.mdbenchmark table still showsn/aforbin/compile.phpand./compiledbecause #764 blocks non-empty execute.Without this gate, the README table stays misleading after link lands but before execute.
Goal
When LLVM is ready and link succeeds and execute returns HTML (#764 green):
script/rebuild-examples.phptimesphpc build --project+ runs.phpc/bin/appwith PATH_INFO/QUERY_STRING env (Docs: Add 003-MiniWebApp row to examples benchmark table when VM green #491 contract)examples/README.mdbetween benchmark markersn/awhen LLVM missing, link fails, or stdout empty (no CI failure)Scope
script/rebuild-examples.php003 branch:BENCH_MINIWEBAPP=1+LlvmToolchain::isReady()QUERY_STRING=route=homeorPATH_INFO=/home— match VM columntest/unit/RebuildExamplesTest.php— documents skip when AOT: MiniWebApp native binary CLI execute emits empty stdout (post-link) #764 openImplementation hints
script/rebuild-examples.phpphpc build --project examples/003-MiniWebApp; run binary via subprocess + envexamples/README.mdMakefileMINIWEBAPP_LINT_GATE=1 ./script/rebuild-examples.php# After #764 on branch with LLVM: BENCH_MINIWEBAPP=1 php script/rebuild-examples.php grep 003-MiniWebApp examples/README.mdAcceptance criteria
bin/compile.phpand./compiledcolumnsn/a(exit 0)./script/ci-fast.sh --filter RebuildExamplespassesDocker:
docker run --rm -v "$(pwd):/compiler" -w /compiler php-compiler:22.04-dev \ ./script/ci-fast.sh --filter RebuildExamplesDependencies
Links