Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions .claude/agent-memory/feature-review/MEMORY.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
- [verify-zero-own-effect-coverage-noise-491](project_verify-zero-own-effect-coverage-noise-491.md) — verify "coverage shortfall is noise" claims: grep both Cobertura XMLs for the changed assembly (zero-effect proof), diff-check attributed unrelated files, distrust deleted-raw-XML "reproducibility" narratives (#491)
- [poshqc-bundled-coverage-artifact-reads-zero](project_poshqc-bundled-coverage-artifact-reads-zero.md) — run_poshqc_test writes the canonical artifacts/pester/powershell-coverage.xml with 0 covered lines (invalid capture) → honest FAIL row, non-blocking; adjudicate from committed direct-Pester JaCoCo (#441)
- [441-review-residuals-and-494-handoff](project_441-review-residuals-and-494-handoff.md) — #441 PASS/0 blocking; 85.0317% vs 85% margin is #494's decision; NF-1 uncovered Helpers.ps1:220; NF-2 tooling filing owed; #529-#532 OPEN, deliberately unfixed
- [nullable-remediation-epic-review-pattern](project_nullable-remediation-epic-review-pattern.md) — utilitiescs-nullable epic children (#363+): epic-integration diff base, per-file #nullable enable, net481; solution gate fails on pre-existing warnings — use per-project AC1 proof
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
---
name: verify-zero-own-effect-coverage-noise-491
description: technique for independently verifying a "coverage shortfall has zero own-effect" claim from dual committed Cobertura XMLs, used on #491
metadata:
type: project
---

When an executor claims a post-change coverage shortfall is environmental noise unrelated to the
change (rather than a real regression), verify it directly from the two committed Cobertura XML
files rather than accepting the narrative:

1. Confirm root `<coverage lines-covered=... lines-valid=...>` attributes match the claimed
baseline/post-change numbers exactly, and that `lines-valid` (denominator) is identical between
the two files (proves same instrumented surface).
2. For "zero own-effect" claims (e.g. the changed files are in an excluded/uninstrumented
assembly), grep both XML files for the changed assembly's `name="..."` and `filename="..."`
patterns — zero matches in both files is direct proof of zero own-effect, not just an assertion
about the harness's documented exclusion policy.
3. For "attributed to unrelated file X" claims, extract that file's `<class line-rate=...>` node
from both XML files and confirm a real numeric drop; then `git diff --name-only <base> <head>`
to confirm X is not in the branch's diff.
4. If the executor ran multiple diagnostic capture attempts but deleted the raw XML for all but the
canonical one, treat only the canonical (officially-cited) capture as verified; disclose the
others as narrative-only corroboration in the audit rather than silently accepting "reproducible
across N runs" as proven.

This four-step check let a #491 AC10 shortfall (85.5627% vs 85.5788% baseline, -10 lines) be
dispositioned non-blocking on independently verified evidence rather than on trust: zero
`QuickFiler.Test` occurrences in either Cobertura file, and the entire shortfall traced to
`SegmentStopWatch.cs` + `OlTableExtensions.Etl.cs`, both confirmed absent from the branch diff.

Related: [csharp-coverage-constants-nondeterministic], [jacoco-summary-substitution-is-valid-coverage-evidence].
11 changes: 0 additions & 11 deletions QuickFiler.Test/Controllers/QfcHomeControllerTests.cs
Original file line number Diff line number Diff line change
Expand Up @@ -240,17 +240,6 @@ await _controller.InitAsync(
);
}

public class QfcFormViewerDerived : QfcFormViewer
{
public QfcFormViewerDerived()
: base() { }

public new virtual void Show() => base.Show();

//public new virtual DialogResult ShowDialog() => base.ShowDialog();
public new virtual FormWindowState WindowState { get; set; }
}

//[TestMethod]
//public void QuickFileMetrics_WRITE_ExecutesCorrectly()
//{
Expand Down
227 changes: 0 additions & 227 deletions QuickFiler.Test/Form1.Designer.cs

This file was deleted.

49 changes: 0 additions & 49 deletions QuickFiler.Test/Form1.cs

This file was deleted.

Loading