docs(ci-reds): record empty prune-output sweep red as U13
The head-exact review gate reached sweep with six green stages, then `skipped_directories_are_reported_with_a_reason` observed empty child stdout. The durable failure cannot say why because the row discards the child status and stderr. Record the exact signature, the structurally unrelated branch diff, and the isolated-selector and full-binary green reruns at their actual strength: intermittence only. Diagnostic hardening remains a separate lane.
This commit is contained in:
parent
756c2b87df
commit
7b50682eac
|
|
@ -341,6 +341,15 @@ from #171 and #215.
|
||||||
id**; they are not duplicated here, because a docs commit answering a
|
id**; they are not duplicated here, because a docs commit answering a
|
||||||
review moves both, and a ledger line naming them is stale the moment
|
review moves both, and a ledger line naming them is stale the moment
|
||||||
it is written — the lesson §5b learned twice.
|
it is written — the lesson §5b learned twice.
|
||||||
|
- **Review follow-up found U13, separately recorded.** On signed head
|
||||||
|
`756c2b8`, gate `20260829T171606Z-1087848` was 7/8: `07-sweep`
|
||||||
|
reddened only
|
||||||
|
`gate_script_acceptance::skipped_directories_are_reported_with_a_reason`.
|
||||||
|
The child command's stdout was empty, but the row discards its stderr
|
||||||
|
and status, so the mechanism is unrecoverable. The exact selector and
|
||||||
|
the full 36-test binary both passed immediately afterwards —
|
||||||
|
intermittence only. This lane changes neither the gate script nor
|
||||||
|
that acceptance binary; diagnostic hardening is a separate lane.
|
||||||
- **Still owed, separately:** `workflow_dispatch` on `ci.yml`, and U9's
|
- **Still owed, separately:** `workflow_dispatch` on `ci.yml`, and U9's
|
||||||
discriminating control — pin test-binary concurrency to 1, then load
|
discriminating control — pin test-binary concurrency to 1, then load
|
||||||
a lone `--lib` binary — which has been named since 2026-08-09 and
|
a lone `--lib` binary — which has been named since 2026-08-09 and
|
||||||
|
|
|
||||||
|
|
@ -1076,3 +1076,20 @@ discriminating control U9 named is STILL UNRUN**: pin test-binary
|
||||||
concurrency to 1, and separately load a lone `--lib` binary. Four
|
concurrency to 1, and separately load a lone `--lib` binary. Four
|
||||||
incidents is enough evidence that the family will keep costing review
|
incidents is enough evidence that the family will keep costing review
|
||||||
rounds until someone runs it.
|
rounds until someone runs it.
|
||||||
|
|
||||||
|
### U13 — gate prune-reporting row receives empty child stdout in `sweep`
|
||||||
|
|
||||||
|
Recorded during PR #244 review, 2026-08-29, on signed head `756c2b8`.
|
||||||
|
The first six gate stages were green; `07-sweep` produced this one red;
|
||||||
|
`08-diff-check` remained green.
|
||||||
|
|
||||||
|
| field | value |
|
||||||
|
| --- | --- |
|
||||||
|
| **selector** | `--test gate_script_acceptance skipped_directories_are_reported_with_a_reason` |
|
||||||
|
| **job / step** | local (Linux), `scripts/gate` step `07-sweep`, log `20260829T171606Z-1087848` |
|
||||||
|
| **required fragments** | `skipped_directories_are_reported_with_a_reason` + `the unmarked directory must be named with its reason; output was:` followed by empty output |
|
||||||
|
| **status** | **one occurrence; exact selector and the full 36-test binary both green on immediate rerun** |
|
||||||
|
| **what IS established** | the test observed empty stdout from its `scripts/gate --prune` child even though its fixture had created an unmarked lookalike which a successful prune must name. The row discards the child's stderr and success status (`let (out, _, _)`), so the durable failure cannot distinguish wrong successful output from a refused or failed child invocation |
|
||||||
|
| **what is NOT** | any mechanism. Another row in the same test binary mutates shared git-worktree metadata, but concurrent execution is only a candidate; this occurrence did not capture the child status or stderr needed to support it |
|
||||||
|
| **why this branch is excluded** | the lane changes two assertion-message strings and three docs. `scripts/gate` and `tests/gate_script_acceptance.rs` are byte-identical to the base; the `async_runtime` edit is inside its unit-test module, and the other Rust edit belongs to a different integration-test binary |
|
||||||
|
| **next occurrence** | preserve the child success status and stderr in the assertion before rerunning. A green rerun establishes intermittence only; it cannot reconstruct why stdout was empty |
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue