Skip to content

CI: COMPILER_DRIVER_SMOKE_GATE opt-in in ci-local after compiler_driver native probe #2137

Description

@PurHur

Problem

#2136 ✅ landed compiler_driver_smoke native link+execute (script/bootstrap-selfhost-compiler-driver-smoke-link.sh, BootstrapCompilerDriverSmokeTest). ci-local.sh already calls ci_run_bootstrap_compiler_driver_smoke() when COMPILER_DRIVER_SMOKE_GATE=1, but the gate defaults to 0 — contributors must opt in manually.

Default flip is tracked in #2168 (after this opt-in gate is green one release).

Goal

  1. Document opt-in path clearly (this issue = docs + harness verify)
  2. COMPILER_DRIVER_SMOKE_GATE=1 workflow stable on Runforge/Docker
  3. CI: Default COMPILER_DRIVER_SMOKE_GATE=1 in ci-local after #2137 opt-in green #2168 — separate issue for ci-defaults.env default-on

Implementation hints

Piece Path Notes
Env script/ci-defaults.env COMPILER_DRIVER_SMOKE_GATE="${COMPILER_DRIVER_SMOKE_GATE:-0}" (already present)
Hook script/ci-common.sh ci_run_bootstrap_compiler_driver_smoke() — skip when LLVM missing
Entry script/ci-local.sh llvm tail after lib-spine-vm-smoke
Probe script/bootstrap-selfhost-compiler-driver-smoke-link.sh Native link + run; stdout compiler_driver_smoke bundle OK
Fixture test/selfhost/compiler_driver_smoke/main.php M3 driver bundle
PHPUnit test/unit/BootstrapCompilerDriverSmokeTest.php @group llvm
Docs docs/local-ci-matrix.md, docs/bootstrap-selfhost.md Gate row + harness commands
Doctor lib/Doctor.php --selfhost Mention opt-in flag
COMPILER_DRIVER_SMOKE_GATE=1 ./script/ci-local.sh
# targeted:
./script/docker-exec.sh -- bash -lc 'source script/php-env.sh && COMPILER_DRIVER_SMOKE_GATE=1 vendor/bin/phpunit --group llvm --filter BootstrapCompilerDriverSmokeTest'

Acceptance criteria

  • Opt-in gate documented in docs/local-ci-matrix.md with harness snippet (no raw docker run -v)
  • COMPILER_DRIVER_SMOKE_GATE=1 ./script/ci-local.sh passes on harness when LLVM 9 present
  • Skip message when LLVM missing (same as other @group llvm gates)
  • CI: Default COMPILER_DRIVER_SMOKE_GATE=1 in ci-local after #2137 opt-in green #2168 filed/linked for default-on flip (do not change default in this issue)
  • No GitHub Actions

Dependencies

Links

Verification

make docker-build-22   # once
COMPILER_DRIVER_SMOKE_GATE=1 ./script/docker-ci-local.sh

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions