Residual gaps noted by the PR #1850 fresh-context review (PR closed #1832; fail-closed today, tracked for completeness):
- No executable coverage for the lane-throw + clean-checkout path (guard exit 0 ->
throw $laneError rethrown after the finally). Pre-existing gap, more relevant now that the harness test anchors the recipe statically — add one harness case that drives it end-to-end.
- Lane deletion of a clean tracked file (outside the status baseline) exits 1 with "status artifact disappeared before it could be fingerprinted" rather than a classified
deleted record. Fail-closed and wave-stopping (correct), but the diagnostic under-describes; classify it.
- Static anchor precision. The harness test "requires both batch skill wrappers to propagate lane failure after cleanup" anchors on
IndexOf('throw $laneError', $cleanup) — the anchor is satisfiable by comment text as well as code; tighten to a structural match.
Source: PR #1850 review (non-blocking items 1-3).
Residual gaps noted by the PR #1850 fresh-context review (PR closed #1832; fail-closed today, tracked for completeness):
throw $laneErrorrethrown after thefinally). Pre-existing gap, more relevant now that the harness test anchors the recipe statically — add one harness case that drives it end-to-end.deletedrecord. Fail-closed and wave-stopping (correct), but the diagnostic under-describes; classify it.IndexOf('throw $laneError', $cleanup)— the anchor is satisfiable by comment text as well as code; tighten to a structural match.Source: PR #1850 review (non-blocking items 1-3).