Skip to content

convention: false-green checks — surfaces report success while the capability is dead or findings invisible (liveness-assertion umbrella) #532

Description

@kyle-sexton

Category: convention + CI meta-check (umbrella) · Source: control-tower gap-hunt 2026-07-19 (signal mining)

Pattern — checks report green while the capability is dead or its findings are invisible

Cross-plugin recurrence with no umbrella:

Root cause: checks assert "the check ran," not "the capability is live and its output is surfaced." By construction this class is review-agent-blind: green check = nobody looks.

Proposed fix

  1. Liveness-assertion convention (documented, then enforced): a health/status/advisory surface must either fail loud or surface its findings into an agent-readable channel — green-with-hidden-findings and healthy-while-dead are contract violations. Self-test probes for engines (does the capability demonstrably execute, not just configure).
  2. CI meta-check where feasible: advisory lanes must publish findings to a read channel (e.g. SARIF/code-scanning per ci/agents: zizmor advisory findings are check-run annotations — invisible to every agent surface (green check, unread annotations) #510's options) — annotations-only is non-conforming.

Relations

#510 (zizmor instance + its fix options), #385/#376 cluster (engine liveness instance), #465/#499 (gate-classifier instances — mechanical fix tracked separately in the babysit-classifier umbrella), #509 (a security-review lane is only as good as the signals surfaced to it).

Metadata

Metadata

Assignees

No one assigned

    Labels

    needs-humanHuman-in-the-loop required; autonomous sessions must not resolve items carrying this.priority: mediumReal value, no hard deadline; normal backlog flow.status: readyTriaged, unblocked, and fully specified; eligible to pick up.

    Type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions