Preserve cancellation in aggregate smoke tests

This commit is contained in:
2026-11-07 15:36:23 +00:00
parent a806a9a62e
commit b66d265032
4 changed files with 98 additions and 7 deletions

View File

@@ -1,6 +1,6 @@
# Consolidated audit catalog
Status: **27 distinct open findings: five P2 and 22 P3**, consolidated from 30
Status: **26 distinct open findings: four P2 and 22 P3**, consolidated from 30
numbered entries in seven audit documents. Reviewed audit state:
`db732e3a1de55c844f77870e1c6db683c2685d5d`.
@@ -9,7 +9,7 @@ decisions. The linked original entries retain code locations, evidence,
contract analysis, and detailed
remediation options. Consolidation alone does not resolve a finding or select a
proposed contract change. Explicit decisions recorded below supersede the
original entries' alternatives; all findings remain open until remediated.
original entries' alternatives; findings remain open until remediated.
Original priorities are retained. Within those priorities, incorrect outcomes
and request isolation lead; blocked validation,
resource retention, and consumer contracts precede scaling and maintainability
@@ -19,7 +19,7 @@ The [remediation analysis](remediation-analysis.md) records the completed design
review and its rationale. All choices identified for discussion have been
resolved; no further product or architectural decision is required before
implementation planning. Accepted conclusions are recorded in this catalog;
all 27 findings still require remediation and validation.
the remaining findings still require remediation and validation.
Three pairs describe the same underlying issue: correctness C2/concurrency N2,
correctness C4/concurrency N3, and complexity M6/responsibility R1. Other
@@ -38,6 +38,12 @@ these boundaries.
## F01 — P2: Aggregate smoke testing can stop on cancellation and return success
**Complete.** The later cancellation checkpoint retains a cause when work is
omitted, without duplicating a cause already recorded. Focused aggregate and
cancellation tests pass in the aligned workspace; the new progress-delivery
regression failed against the original behavior for both successful and failed
provider calls, and also covers cancellation after the last completed check.
In ckprompt's `runSmokeAggregate`, cancellation triggered during progress
delivery can stop the remaining smoke kinds without entering the operation
cause. A partial aggregate can consequently return status 0; cancellation can

View File

@@ -1,10 +1,10 @@
# Audit remediation implementation plan
Status: planned; no stage implemented by this document.
Status: in progress; Stage 1 complete.
Baseline: `d492c7747175c01a53261206c2b4356e53453621`. Source remains the audited
implementation; intervening changes recorded decisions and retired the completed
older remediation. The [roadmap](audit-remediation.md) owns the target and scope,
Baseline: `d492c7747175c01a53261206c2b4356e53453621`. Before this sprint,
intervening changes recorded decisions and retired the completed older
remediation. The [roadmap](audit-remediation.md) owns the target and scope,
the [catalog](audit/catalog.md) owns accepted decisions and finding status, and
its original audit links own defect evidence. The
[analysis](audit/remediation-analysis.md) explains the selected designs.
@@ -107,6 +107,13 @@ not converted into a passed check or a request for per-stage approval.
## Stage 1 — Retain aggregate smoke cancellation
**Complete.** The progress-delivery cancellation regression reproduced both
the false success and missing joined cause before the fix. The focused aligned
workspace checks passed: `go test -mod=readonly -run 'TestSmokeAggregate|TestSmokeTestCancellation' ./integrations/ckprompt`
with Go 1.27.0, `GOTOOLCHAIN=local`, and `GOPROXY=off`. Tests cover partial
results with and without a provider error, retained diagnostics and explanation,
omitted callbacks, and cancellation after the final check.
Findings: F01. Primary source: `integrations/ckprompt/smoke_command.go`.
1. In runSmokeAggregate, retain cancellation observed at the later checkpoint