Pimp My IDE / garage dispatchBack to the garage
October 12, 2026 / analysis errors / evidence custody

Failure is not erasure.

An analysis run can fail after it has collected useful evidence. Keep the failure, the retained record, and the record's target origin attached.

Do not turn a partial result into success. Do not throw it away. Mark what failed, what survived, and which bytes came from the target.

A four-line patch fixes a large semantic leak.

REA revision 8fc2043eb8bcedbf34dce064f977e455438635d6 changes one production line and adds three test lines. When an MCP operation fails after producing a retained partial observation, the delivery path now receives the tool contract's returnsTargetContent flag.[1]

The test covers cancellation and cleanup failure. In both cases the response remains an error, the completed evidence remains available by ID, and the MCP metadata marks the content as untrusted with source analysis_target.[1]

The valuable fix is not keeping more data. It is keeping the right warning attached to that data.

Run status and evidence status are different fields.

A cleanup failure can happen after useful packets, instructions, or runtime events were collected. Calling the whole run successful hides the cleanup problem. Calling the whole record empty destroys observations that may explain the problem.

Use two statements. First, state whether the operation completed. Second, state what evidence was retained and which limits apply. A retained record can be complete for one bounded observation while the surrounding operation still failed.

OPERATION_STATUS=CANCELLED | CLEANUP_FAILED | COMPLETE
RETAINED_EVIDENCE_ID=[REQUIRED_IF_PRESENT]
TARGET_CONTENT=UNTRUSTED
SOURCE=ANALYSIS_TARGET
LIMITS_AND_UNKNOWN=[REQUIRED]
REVIEW_STATUS=[REQUIRED]

Origin labels need to survive the unhappy path.

Target-derived text can contain misleading names, crafted strings, hostile markup, or prompt-like instructions. The source label is part of the evidence contract. It must not disappear because the transport chose an error envelope.

REA's evidence guide already separates operation data, limitations, coverage, unknowns, and stable evidence IDs. It also states that incomplete source evidence cannot prove absence. The latest patch closes one delivery gap for retained error results.[2]

A capture is still not a cage.

REA's process-capture guide says the selected command runs with the current user's permissions. Observation paths choose what gets recorded. They do not restrict what the process can read or write. The inherited environment can affect the run without being recorded.[3]

That warning belongs beside every retained result from a failed runtime operation. Evidence custody does not create isolation. Use a separate sandbox, narrow account, network rule, and cleanup check when the target is untrusted.

Review techniques with their limits attached.

NIST SP 800-115 describes security testing as a planned process that includes analysis and mitigation. It also asks readers to account for the benefits and limitations of each technique. It does not claim to define a complete testing program.[4]

That is the right shape for agent-assisted analysis. Preserve the observation. Preserve the failure. Preserve target origin. Then name the next independent check before anyone acts on the finding.

Interactive makeover / one error banner replaced with a provenance coupler

Couple the record to its warning.

A normal error banner collapses transport, evidence, and trust into one red box. This browser-local rig keeps four review sections visible. It drafts a packet. It does not run an analyzer or attach evidence.

Run statusEvidence IDOrigin labelReview limit

Choose the operation outcome

The outcome changes the failure line. It does not change the four sections required for review.

Operation outcome
Packet sections
Cancelled operation0 / 4 sections selected

Failure packet empty

No evidence is attached. Select the sections the handoff must request.

StatusOpen
EvidenceOpen
OriginOpen
ReviewOpen
Review gate openThe packet has no selected sections. No run status or retained evidence has been reviewed.
Sources read / October 12, 2026

Source log

Open the patch, evidence contract, runtime warning, and assessment guide
  1. REA commit 8fc2043, "fix(mcp): preserve target provenance on retained partial errors", committed and inspected October 12, 2026. The diff changes the retained-partial delivery call and adds an assertion for untrusted target provenance under cancellation and cleanup failure.
  2. REA evidence, comparison, and verification workflow, inspected at revision 8fc2043. It documents evidence IDs, partial-source limits, unknowns, comparison boundaries, and finite verification scope.
  3. REA process-capture guide, inspected at revision 8fc2043. It states that capture is not a sandbox, runs with current-user permissions, and can retain unknown influence from inherited environment state.
  4. NIST SP 800-115, "Technical Guide to Information Security Testing and Assessment", published September 2008 and read October 12, 2026. The abstract covers planning, conducting tests, analyzing findings, mitigation, and technique-specific benefits and limitations.
  5. Hacker News item 50058850, resolved through the official API and read October 12, 2026. It was the discovery route. Discussion claims support none of the technical conclusions above.

Artifact boundary. The canonical repository and HEAD were verified through the GitHub API and git ls-remote. Revision 8fc2043eb8bcedbf34dce064f977e455438635d6 was cloned and inspected. The installer had SHA-256 ea265a6eb685456be83e657830c8ca8f5433423b1b2453027743d3d04b2026eb. Its exact-version dry-run for 6.4.0 returned "Dry run complete; no changes made." REA was not installed, registered with an agent, connected to an analysis engine, or run against a target. The repository test is first-party evidence for this delivery contract, not independent qualification of every analysis workflow.