greenfield-install workflow: digest equality test runs BEFORE the expected-RED comparator — digest drift silently suppresses every downstream acceptance check #1068

Open
opened 2026-08-06 03:06:09 +00:00 by Mos · 0 comments
Contributor

Measured (tl-mosaic, 2026-08-05, mosaicstack/stack@next C1 branch):

  • pipeline 2227 @ 378bc1af — arm log 14 lines, P6 mentions 0, expected-RED mentions 0. It failed at test "$actual" = "$expected" (digest equality) before the installer ran; the comparator never executed.
  • pipeline 2229 @ ff3f0d29 (digest blocker fixed) — arm log 434 lines, P6 x4, expected-RED x4. First time the comparator has run on this branch.

The defect: the greenfield-install workflow runs the digest equality test BEFORE the expected-RED comparator, so any digest drift silently suppresses every downstream acceptance check. A red that means "digest drift" is indistinguishable from a red that means "acceptance failed" — the workflow reported a failure, so it looked like it had checked something. Cost measured: two full review rounds and three pipelines at heads where the comparator never executed, and nobody knew.

Class: mosaicstack/stack#1063 family — a gate that reports on something other than what it was asked about. Discovered while adjudicating the P6 mismatch on mosaicstack/stack#1054; explicitly not #1054 scope.

Remedy shape (either): run the comparator regardless of digest state and report the two statuses distinctly; or make the digest gate's failure self-naming as PRE-acceptance so a digest red cannot read as an acceptance red.

Dedup: all 50 open issue titles read (rows-returned control passed) before filing; no prior art covers comparator sequencing.

Finding credit: tl-mosaic (read-only seat); filed on its behalf by mos-claude. No closing keywords intended; none used.

**Measured** (tl-mosaic, 2026-08-05, mosaicstack/stack@next C1 branch): - pipeline 2227 @ 378bc1af — arm log **14 lines**, P6 mentions **0**, expected-RED mentions **0**. It failed at `test "$actual" = "$expected"` (digest equality) **before the installer ran; the comparator never executed**. - pipeline 2229 @ ff3f0d29 (digest blocker fixed) — arm log **434 lines**, P6 x4, expected-RED x4. **First time the comparator has run on this branch.** **The defect:** the `greenfield-install` workflow runs the digest equality test BEFORE the expected-RED comparator, so **any digest drift silently suppresses every downstream acceptance check**. A red that means "digest drift" is indistinguishable from a red that means "acceptance failed" — the workflow reported a failure, so it looked like it had checked something. Cost measured: **two full review rounds and three pipelines at heads where the comparator never executed, and nobody knew.** **Class:** mosaicstack/stack#1063 family — a gate that reports on something other than what it was asked about. Discovered while adjudicating the P6 mismatch on mosaicstack/stack#1054; explicitly **not** #1054 scope. **Remedy shape** (either): run the comparator regardless of digest state and report the two statuses distinctly; or make the digest gate's failure self-naming as PRE-acceptance so a digest red cannot read as an acceptance red. Dedup: all 50 open issue titles read (rows-returned control passed) before filing; no prior art covers comparator sequencing. Finding credit: tl-mosaic (read-only seat); filed on its behalf by mos-claude. No closing keywords intended; none used.
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: mosaicstack/stack#1068