Preserve empty deletion spans in debug ledger
This commit is contained in:
@@ -88,3 +88,11 @@ groups backend capacity and timing observations while preserving known and
|
||||
complete usage semantics. Interaction request/response artifacts, selected
|
||||
profiles, configuration provenance, and input snapshots are also debug-only.
|
||||
These files are diagnostic evidence, not an alternate ordinary report schema.
|
||||
Each candidate-backed ledger entry includes `proposed_corrected_text`, the
|
||||
literal replacement span, even when it is `""` for a deletion. Applied entries
|
||||
also include `applied_corrected_text`, likewise `""` for an applied deletion.
|
||||
Rejected, skipped, and interrupted entries omit the applied field; a module
|
||||
failure without a candidate omits both. These fields are replacement spans,
|
||||
not full resulting-segment text. Deterministic decision records now identify
|
||||
the blank-result guard as `non_empty_resulting_segment` (formerly
|
||||
`non_empty_corrected_text`); its `empty_resulting_segment` reason is unchanged.
|
||||
|
||||
@@ -32,8 +32,11 @@ under `diagnostics.work_dir`. CLI passes empty diagnostics paths and nil writers
|
||||
when debug is off. With debug on, source/normalized snapshots, invocation,
|
||||
effective settings, origins, profiles, initial chunk summary, correction ledger,
|
||||
indexed execution/utilization, and model interactions are written. Runner
|
||||
candidate capture includes proposals later rejected or interrupted. Debug
|
||||
write failures reach the CLI through an explicit concurrency-safe diagnostic
|
||||
candidate capture includes proposals later rejected or interrupted. Ledger
|
||||
mapping uses optional string pointers so an empty proposed replacement is
|
||||
serialized for every candidate and an empty applied replacement appears only
|
||||
when that candidate applied; see the [public artifact contract](../integrations/output-files.md#debug-only-files).
|
||||
Debug write failures reach the CLI through an explicit concurrency-safe diagnostic
|
||||
callback and produce redacted stderr messages without aborting processing.
|
||||
Completed validator decisions returned with a fatal batch error remain available
|
||||
to the debug ledger; they never authorize applying an incompletely validated edit.
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
|
||||
**Last updated:** 2026-09-25
|
||||
|
||||
**Status:** In progress; Stages 1–2 complete.
|
||||
**Status:** In progress; Stages 1–3 complete.
|
||||
**Source baseline:** `a83a518` (feature roadmap); application baseline `0b6cd98`.
|
||||
**Audience:** gpt-5.6-terra coding agent.
|
||||
|
||||
@@ -271,6 +271,12 @@ existing configured-secret redaction and debug-off persistence coverage.
|
||||
**End state:** Debug evidence distinguishes a proposed/applied deletion from an
|
||||
absent proposal or an edit that was never applied.
|
||||
|
||||
**Completed 2026-09-25.** Candidate-backed ledger entries now preserve an
|
||||
explicit empty proposed replacement, and applied entries preserve an explicit
|
||||
empty applied replacement. Serialized disposition coverage and the specified
|
||||
focused package tests passed; the artifact contract documents the fields and
|
||||
validator identity change.
|
||||
|
||||
## Stage 4 — Verify the Integrated Contract and Finish Documentation
|
||||
|
||||
**Work**
|
||||
|
||||
Reference in New Issue
Block a user