fix: skip timeout-triggered compaction when run was aborted by user#82085
fix: skip timeout-triggered compaction when run was aborted by user#82085lykeion-dev wants to merge 1 commit into
Conversation
|
Codex review: needs real behavior proof before merge. Reviewed June 30, 2026, 8:23 PM ET / July 1, 2026, 00:23 UTC. Summary PR surface: Source 0, Tests +21, Docs +1. Total +22 across 3 files. Reproducibility: yes. source-reproducible: current main's timeout-compaction predicate ignores Review metrics: 2 noteworthy metrics.
Root-cause cluster Members:
Proposal only: this assessment does not dispatch repair, suppress jobs, mutate sibling items, close, or merge anything. Merge readiness Overall follows the weaker of proof and patch quality, so missing proof can cap an otherwise strong patch. Rank-up moves:
Proof guidance:
Risk before merge
Maintainer options:
Next step before merge
Security Review findings
Review detailsBest possible solution: Port only the timeout-compaction attempt guard to the active embedded runner, keep timeout payload synthesis intact unless separately proven, remove the release-owned changelog edit, add current-path regression coverage, and require redacted real behavior proof before merge. Do we have a high-confidence way to reproduce the issue? Yes, source-reproducible: current main's timeout-compaction predicate ignores Is this the best way to solve the issue? No. Full review comments:
Overall correctness: patch is incorrect AGENTS.md: found and applied where relevant. Codex review notes: model internal, reasoning high; reviewed against 5e572dcf781a. Label changesLabel justifications:
Evidence reviewedPR surface: Source 0, Tests +21, Docs +1. Total +22 across 3 files. View PR surface stats
What I checked:
Likely related people:
What the crustacean ranks mean
Shiny media proof means a screenshot, video, or linked artifact directly shows the changed behavior. Runtime, network, CSP, and security claims still need visible diagnostics. How this review workflow works
|
d0f275c to
edac0c9
Compare
edac0c9 to
862dda2
Compare
862dda2 to
8b85130
Compare
|
This pull request has been automatically marked as stale due to inactivity. |
|
@lykeion-dev thanks for the PR. ClawSweeper is still waiting on real behavior proof before this can move forward. Useful proof can be a screenshot, short video, terminal output, copied live output, linked artifact, or redacted logs that show the changed behavior after the fix. Please redact private tokens, phone numbers, private endpoints, customer data, and anything else sensitive. Once proof is added to the PR body or a comment, ClawSweeper or a maintainer can re-check it. |
Summary
!externalAbortguard to both timeout-triggered compaction check andtimedOutDuringPromptevaluation inrunEmbeddedPiAgent.externalAbortis set only for user-initiated stops (not internal timeouts), correctly distinguishing user aborts from provider timeouts.Change Type
Scope
Linked Issue/PR
Real behavior proof
externalAbort=true. Error payload returned without compaction.run.timeout-triggered-compaction.test.ts— "does not attempt compaction when user aborted (externalAbort=true)"Root Cause
timedOut,timedOutDuringCompaction, andtimedOutDuringToolExecutionbut did not checkexternalAbort. User-initiated aborts set bothabortedandexternalAbort, but the compaction code only looked at timeout-related flags.externalAbort=true+timedOut=truecombination for compaction.externalAbortwas introduced to distinguish user stops from internal timeouts, but the compaction path was not updated.Regression Test Plan
run.timeout-triggered-compaction.test.ts— "does not attempt compaction when user aborted (externalAbort=true)"timedOut=true,aborted=true,externalAbort=true→ compaction should NOT fire.User-visible / Behavior Changes
Security Impact
Compatibility / Migration
Risks and Mitigations