Skip to content

Delete never-edited/never-acted/no-ship/no-progress salvage classes - #611

Closed
TheGreatAxios wants to merge 1 commit into
mainfrom
cl-6994-delete-hard_block_salvages-and-the-policy-salvage-classes-no
Closed

Delete never-edited/never-acted/no-ship/no-progress salvage classes#611
TheGreatAxios wants to merge 1 commit into
mainfrom
cl-6994-delete-hard_block_salvages-and-the-policy-salvage-classes-no

Conversation

@TheGreatAxios

Copy link
Copy Markdown
Collaborator

Summary

  • Deletes the HARD_BLOCK_SALVAGES set, isHardBlockSalvage, and the fingerprint-refusal logic in brief-dispatch.tsadmit() now always succeeds; no salvage class refuses re-dispatch of an identical brief.
  • Deletes the never-edited, never-acted, no-ship, and no-progress policy salvage classes from stop-policy.ts (types, detection, FORCED_STOP_SUMMARIES, isXxxSubAgentReport, and the now-false "it will be refused" parent hints).
  • repetition keeps its detector (a sibling change removes that) but loses hard-block membership: it still ends the run and reports the loop, it just no longer refuses a later re-dispatch.
  • shell-evidence.ts existed to feed the requireEdit check with shell-mediated writes; with requireEdit gone, shrunk to reads-only (still feeds the CritiqueDirector requireEvidence gate).
  • editedPaths bookkeeping in thrash.ts stays, now purely for interventions.jsonl diagnostics.
  • Net: 179 insertions / 801 deletions across 16 files.

Why

A worker sharing a directory with concurrent lanes can issue real edit operations that a sibling absorbs or overwrites, leaving no net file diff. The never-edited classifier read "no net diff" as "did nothing," discarded the worker's real work, and hard-blocked re-dispatch. Two reference agent loops have no equivalent stop-that-bars-retry concept at all, so this removes the whole salvage-class family rather than trying to make the classifier smarter.

Test plan

  • bun run check green (lint, typecheck, build, full test suite: 5451 pass / 0 fail)
  • Verified no vendor/ changes

Two peer agent loops have no concept of a stop that bars retry, and neither
treats a tool-using run with no net file diff as a failure. This project had
five: no-ship, no-progress, never-acted, never-edited, and repetition all
hard-blocked identical re-dispatch for the rest of the session. A worker
sharing a directory can issue real edits that a concurrent lane absorbs,
leaving no net diff — the never-edited class read that as "did nothing" and
discarded the worker's real work while also blocking retry.

Deletes HARD_BLOCK_SALVAGES/isHardBlockSalvage and the fingerprint-refusal
logic in brief-dispatch.ts (the ledger now always admits), the requireEdit
branch and the consecutive-identical no-progress check in stop-policy.ts
(with their bookkeeping: DEFAULT_SUBAGENT_REPEAT_LIMIT, ToolCallStreak,
nextToolCallStreak, subAgentNoProgress), and the four now-false "it will be
refused" parent hints. shell-evidence.ts's write-detection existed solely to
feed requireEdit and is now dead; shrunk to reads-only (still feeds the
CritiqueDirector requireEvidence gate). editedPaths bookkeeping in thrash.ts
stays for intervention-log diagnostics only.

repetition keeps its detector (a sibling change owns deleting that) but loses
its hard-block membership here, matching every other salvage class: it ends
the run and reports the loop, but does not refuse a later re-dispatch.
@linear-code

linear-code Bot commented Aug 24, 2026

Copy link
Copy Markdown

CL-6994

@TheGreatAxios

Copy link
Copy Markdown
Collaborator Author

Superseded by #613, which re-applied this deletion on a settled main after #610 and #612 restructured the same files. #613 merged; the work is in 0.3.0.

@TheGreatAxios
TheGreatAxios deleted the cl-6994-delete-hard_block_salvages-and-the-policy-salvage-classes-no branch August 28, 2026 00:09
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant