Relationships
#1949 verification-attestation reports 0 skipped and omits skipped steps, including skipped asserts
Opened by randybias · 9/2/2026
@swamp/verification-attestation reports 0 skipped on runs whose record contains skipped steps,
and omits the skipped step from its listing entirely. A reader of the attestation sees a complete,
clean run.
Measured, twice, independently
Instance A (re-measured 2026-09-02 before filing — a real production workflow, no synthetic
fixture and no forEach involved):
Workflow mircloud-sync-dns-zones, run f7a72131-7716-4cec-b8f2-eebc5ad93db8,
2026-09-01T10:15:41Z, status succeeded. swamp workflow history get <run> --json reports 8 steps:
p1-preflight-all.preflight-status-0 succeeded
p1-preflight-all.preflight-status-1 succeeded
p2-apply-all.get-authorization succeeded
p2-apply-all.apply-all-targets-0 succeeded
p2-apply-all.apply-all-targets-1 succeeded
p3-verify-agreement.verify-each-target-0 succeeded
p3-verify-agreement.verify-each-target-1 succeeded
p3-verify-agreement.assert-zone-parity skipped <-- SKIPPEDswamp report get @swamp/verification-attestation --workflow mircloud-sync-dns-zones says:
Status: succeeded
Steps: 4 passed · 0 failed · 0 skipped
✓ p2-apply-all ✓ apply-all-targets-1 ... ✓ apply-all-targets-0 ...
✓ p3-verify-agreement ✓ verify-each-target-1 ... ✓ verify-each-target-0 ...
Gate: 4/4 passed, 0 skippedThe omitted step is an assert. The report says Gate: 4/4 passed, 0 skipped for a run in
which a verification step did not execute at all. Whatever scoping selects the four listed steps, a
skipped assert in a job the report DOES cover is inside it — p3-verify-agreement appears in the
listing with two of its three steps.
Instance B (independent observer, synthetic probes, three runs): recorded at
planning/bringup/twin-findings/foreach-conditional-2026-09-02.md. Run records showed 2, 1 and 2
skipped steps; the attestation said 0 skipped in all three. The console stream for those runs DOES
emit run │ skipped (dependency), so the information exists upstream of the report.
Why this matters more than a wrong count
The attestation is what a gate or a reviewer reads to decide whether a run did what it claimed. A skipped verification step reported neither as skipped nor at all is indistinguishable from one that ran and passed. That converts "this check did not execute" into "this check is fine" — silently, in the artifact whose entire purpose is attesting to verification.
Expected
Steps: and Gate: count skipped steps, and skipped steps appear in the listing with their status,
as the console stream already does.
Environment
swamp 20260822.011157.0-sha.06b61472. Independent of forEach: instance A contains no forEach.
Closed
No activity in this phase yet.
stack72 commented 9/2/2026, 3:03:15 PM
Hey @randybias
Ths was a builtin report that was added by mistake - it's been removed now as it was not intended to be a user report
Updating to the latest release will solve this
Paul
Sign in to post a ripple.