Problem
Contributors face three CI surfaces with different behavior:
| Surface |
LLVM |
Serve tests |
JIT compliance |
Host ./script/ci-local.sh |
.llvm/ if installed |
runs unless PHP_COMPILER_SKIP_SERVE_TESTS |
runs if LLVM present |
Docker make test-docker |
/opt/llvm9 in image (#237 closed) |
same as host |
should run (#98) |
GitHub Actions .github/workflows/ci.yml |
llvm job |
skipped (PHP_COMPILER_SKIP_SERVE_TESTS=1) |
llvm group |
Without a single table, #98, #234, and #174 look like duplicate “fix CI” issues.
Goal
README (or docs/ci-local.md) documents what runs where and the local commands that must pass before merge — without requiring cloud CI.
Scope
Acceptance criteria
Fresh contributor can answer: “Will serve tests run on my laptop?” and “How do I reproduce GHA llvm job locally?” using only README/docs — no workflow edits required.
Verification
Review only — no GitHub Actions dependency.
Related
Problem
Contributors face three CI surfaces with different behavior:
./script/ci-local.sh.llvm/if installedPHP_COMPILER_SKIP_SERVE_TESTSmake test-docker/opt/llvm9in image (#237 closed).github/workflows/ci.ymlPHP_COMPILER_SKIP_SERVE_TESTS=1)Without a single table, #98, #234, and #174 look like duplicate “fix CI” issues.
Goal
README (or
docs/ci-local.md) documents what runs where and the local commands that must pass before merge — without requiring cloud CI.Scope
php-compiler:22.04-devvs GHA (optional third column labeled “may skip”)PHP_COMPILER_SKIP_SERVE_TESTS,PHP_COMPILER_LLVM_PATH,PHP_COMPILER_RUN_SERVE_TESTSmake test-docker,./script/docker-ci-local.shAcceptance criteria
Fresh contributor can answer: “Will serve tests run on my laptop?” and “How do I reproduce GHA llvm job locally?” using only README/docs — no workflow edits required.
Verification
Review only — no GitHub Actions dependency.
Related