Skip to content

Batch of real bug fixes from a read-only parallel bug hunt#7

Merged
QiaolongLi1201 merged 1 commit into
mainfrom
codex/agent-capability-gap-fixes
Jun 13, 2026
Merged

Batch of real bug fixes from a read-only parallel bug hunt#7
QiaolongLi1201 merged 1 commit into
mainfrom
codex/agent-capability-gap-fixes

Conversation

@QiaolongLi1201

Copy link
Copy Markdown
Collaborator

~25 real bugs across the agent runtime, found by read-only (Explore) bug-hunt agents and applied + verified by the coordinator. Lower-quality candidates were dropped via the test suite (one contradicted the deliberate SIGKILL-not-SIGTERM design; others had broken tests).

Highlights: session compaction referential-integrity + rotation size cap; task-frame no longer mutates the caller's frame; context-budget-planner labels the snip action with the real pressure reason; follow-up-guard null-checks content; MCP rejects a pending request on write() error (no hung promise) + DmossError + request-id overflow + exit-listener cleanup; read-only sed not mis-flagged; SSH port validation; empty config values rejected at parse time; memory write-chain + dedup-embedding refresh.

Each ships with a red-before-green spec. Verified: npm run verify green (agent 189 files).

Note: a parallel-agent bug-hunt earlier in the same effort accidentally ran git stash pop and corrupted the working tree; recovered via git reset --hard (committed work was safe on origin/main). This batch used read-only Explore agents that cannot edit files or run git, eliminating that risk.

🤖 Generated with Claude Code

Across the agent runtime, found by Explore (read-only) agents and applied +
verified by the coordinator (flawed candidates dropped via the test suite):

- session: compaction firstKeptEntryId referential-integrity check on load;
  JSONL rotation size-cap validation; codec robustness.
- task-frame: recordTaskFrameCompaction/Assistant no longer mutate the caller's
  frame (shallow-copy of nested arrays); aborted status reset on continuation;
  English continuation spacing.
- context/loop: per-turn context management returns savedTokens consistently;
  context-budget-planner labels snip_tail_tool_results with the real pressure
  reason (proactive vs warning) instead of hardcoding warning; follow-up-guard
  null-checks content blocks; unused maxConsecutiveFollowUps marked @deprecated.
- providers: pi-ai usage mapping incl. cache; stream-adapter usage fallback;
  llm provider stream usage.
- mcp: pending request rejected on write() error (no hung promise); process
  'error' wrapped in DmossError; request-id overflow guard; exit-listener cleanup.
- approval: read-only `sed` no longer mis-flagged as mutating; edit-detail diff.
- device/cli: SSH port validation; abort-listener cleanup on spawn failure;
  empty trustedTools/deniedTools/model/provider/baseUrl rejected at parse time.
- memory: write-chain consistency in clear()/touchAccessed; dedup path refreshes
  the embedding.

Each ships with a red-before-green spec. Verified: npm run verify green
(boundaries+hygiene+build+typecheck+lint+test; agent 189 files). 4 lower-quality
candidates were dropped (one contradicted the deliberate SIGKILL-not-SIGTERM
design; others had broken/over-asserting tests).

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@QiaolongLi1201 QiaolongLi1201 merged commit 09f18a6 into main Jun 13, 2026
1 of 3 checks passed
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