bridge: post no-Docker smoke jobs (name regex skipped "no Docker")
All checks were successful
check / gate (push) Successful in 9s
canary / probe (push) Successful in 5s

windy-search #96 "Boot smoke (no Docker)" passed but was hidden by the
image-build name filter. Negative lookbehind for no/no-/without.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
Kit OC5
2026-09-23 20:11:55 -04:00
parent 6440c7d5f4
commit b52e6b4784
2 changed files with 13 additions and 1 deletions

View File

@@ -451,3 +451,13 @@ def test_failed_grant_split_warns_instead_of_blocking(fake, monkeypatch):
monkeypatch.setitem(sys.modules, "guards_report", type("GR", (), {"split_grant": staticmethod(boom)}))
bridge.post_compute_guard("windy-pro", SHA, "main", True)
assert [p["state"] for p in f.posted] == ["success"]
@pytest.mark.parametrize("name, hidden", [
("Docker Build", True), ("docker-build", True), ("Docker build", True), ("docker", True),
("Boot smoke (no Docker)", False), ("smoke (no-docker)", False), ("boot without Docker", False),
("smoke", False),
])
def test_no_docker_smoke_jobs_are_posted(name, hidden):
"""windy-search #96: its replacement job says "no Docker" and was hidden."""
assert bridge.needs_daemon("windy-search", "ci", name) is hidden

View File

@@ -74,7 +74,9 @@ MIRROR_TAG = "[GH#"
# Posting them would put a permanent red X on every commit, and a signal that is
# always red trains everyone to ignore red. Not posted until a rootless builder
# exists; that is a decision, recorded in docs/CUTOVER.md, not a failure.
NO_DAEMON_JOB = re.compile(r"docker", re.IGNORECASE)
# ...but NOT the no-Docker smoke jobs that replaced them (option A, 09-23):
# windy-search's "Boot smoke (no Docker)" matched plain `docker` and was hidden.
NO_DAEMON_JOB = re.compile(r"(?<!no )(?<!no-)(?<!without )docker", re.IGNORECASE)
# Image-build jobs whose NAME doesn't say docker (orchestrator 09-23, option A:
# each lane converts the job to a no-Docker smoke test; until then it is not
# posted). Format: "repo:workflow/job,...;repo2:...".