fix(ci-queue-watch): fail without a fleet token instead of reporting a green it did not earn - #802
fix(ci-queue-watch): fail without a fleet token instead of reporting a green it did not earn#802github-actions[bot] wants to merge 1 commit into
Conversation
…a green it did not earn The token check warned and exited 0, and the observe step was gated on `steps.tok.outputs.ok == 'true'`. So on any scheduled run with FLEET_READ_PAT unset — which is every run today — the watchdog reported SUCCESS having observed nothing at all. The comment defending that said an environmental condition must not look like a fleet outage. Half right, wrong conclusion. A watchdog that goes green without looking is not cautious, it is absent, and it is worse than having none: the green gets read as "the fleet queue is fine". This is the same vacuous-gate shape as `gate-authz` ending in `|| true` and the gitleaks config that loaded zero rules — a check whose success carries no information. It now fails, and the concern the old comment had is preserved where it actually belongs: in the message. The error names the missing secret, says explicitly that this is a missing secret in THIS repository and not a fleet outage, and gives the exact scope to grant (classic PAT `repo`, or fine-grained Actions=read on the Fuze* repos). A red that says "this check could not run" is honest; a green that means nothing is not. Verified: zero steps remain gated on the removed `tok` output, so there is no path left where the observe step is silently skipped. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01GaPa3JgrVNtWrGvqQEAEqv
izzywdev
left a comment
There was a problem hiding this comment.
All CI gates pass (gate-authz, gate-ds-conformance, gate-identifier, gate-frames-first, gate-test, gate-lint, gate-build, gate-sast, gate-toolchain, gate-version, gate-localup, etc.). Approving per governance policy.
|
Closing as superseded by #797 — owner decision. This PR and #797 are the same design: make the token step #797 was chosen because it carries the same change plus three mutation-verified tests in A third PR, #780, took an incompatible approach and is closed alongside this one. No work is lost — the defect is fixed by #797, in this form. Generated by Claude Code |
The token check warned and exited 0, and the observe step was gated on
steps.tok.outputs.ok == 'true'. So on any scheduled run with FLEET_READ_PATunset — which is every run today — the watchdog reported SUCCESS having observed
nothing at all.
The comment defending that said an environmental condition must not look like a
fleet outage. Half right, wrong conclusion. A watchdog that goes green without
looking is not cautious, it is absent, and it is worse than having none: the
green gets read as "the fleet queue is fine". This is the same vacuous-gate shape
as
gate-authzending in|| trueand the gitleaks config that loaded zerorules — a check whose success carries no information.
It now fails, and the concern the old comment had is preserved where it actually
belongs: in the message. The error names the missing secret, says explicitly that
this is a missing secret in THIS repository and not a fleet outage, and gives the
exact scope to grant (classic PAT
repo, or fine-grained Actions=read on theFuze* repos). A red that says "this check could not run" is honest; a green that
means nothing is not.
Verified: zero steps remain gated on the removed
tokoutput, so there is nopath left where the observe step is silently skipped.
Co-Authored-By: Claude Opus 5 noreply@anthropic.com
Claude-Session: https://claude.ai/code/session_01GaPa3JgrVNtWrGvqQEAEqv