Commit Graph
79 Commits
Author SHA1 Message Date
ciregenzandClaude Fable 5.1 5b7c8ee2ba [eric] streaming: a finished reply no longer hands a still-thinking bubble to the next socket; the live thought is dropped when the answer starts and at every turn end, and a snapshot is only built for a turn in flight
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01C9zwUaHucUgrdxvK8FvjYT
2026-09-03 16:14:53 -07:00
ciregenzandClaude Fable 5.1 48886e4746 [eric] providers: an Anthropic key that spans workspaces sends anthropic-workspace-id on every lane, with a Workspace ID field beside the key and a card that names the fix
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01C9zwUaHucUgrdxvK8FvjYT
2026-09-03 12:44:30 -07:00
ciregenzandClaude Fable 5.1 b43faecdac [eric] chat: a streamed reply lands whole instead of re-typing from zero, the action bar waits for a reveal to settle, and a socket that connects mid-thought gets the thinking so far
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01C9zwUaHucUgrdxvK8FvjYT
2026-09-03 10:40:05 -07:00
ciregenzandClaude Fable 5.1 e6f84c3412 [eric] lint: drop the unused imports and leading-underscore names the batch left in tests and two modules
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_012G8kyALnPjsA7aJFmMBq3R
2026-09-02 08:30:13 -07:00
ciregenzandClaude Fable 5.1 f38016efb2 [eric] agents: self-heals stop being invisible: a stuck tool's restart and the CLI's own compaction reach the card, any signal death resumes, previews never quote the harness, spent retries are not "Done", one copy of the token-rotation notice
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_012G8kyALnPjsA7aJFmMBq3R
2026-09-01 23:52:59 -07:00
ciregenzandClaude Fable 5.1 e6b3865851 [eric] agents: the unwedge envelope carries each child's status and age, so a lost result can be told from a dead child
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_012G8kyALnPjsA7aJFmMBq3R
2026-09-01 23:44:21 -07:00
ciregenzandClaude Fable 5.1 1ca4d0c5a3 [eric] agents: a CLI killed from outside resumes on a fresh process once, instead of carding the turn and forcing the recap rebuild
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_012G8kyALnPjsA7aJFmMBq3R
2026-09-01 19:49:29 -07:00
ciregenz e7d0330230 [eric] agents: a delegated run gets a deadline in its own units, not the quick-tool ceiling 2026-09-01 11:33:49 -07:00
ciregenz 0a3109a930 [eric] agents: the deferred-tool 400 classifier survives the router's mid-word truncation, and the respawn waits out the router warm-up 2026-08-31 11:53:21 -07:00
ciregenz b40d09bad3 [eric] agents: the deferred-tool 400 (ENG-394) earns one CLI respawn instead of carding out on top of the turn's work 2026-08-31 11:03:06 -07:00
ciregenzandClaude Opus 5 b2f797776f [eric] agents: BrowserAgents is exempt from the quick-tool wedge, and the two name lists became one
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01U6zrBsUCNzpMBnov3rTVYV
2026-08-30 15:04:28 -07:00
ciregenzandClaude Opus 5 785b841763 [eric] agents: a turn that GREW past the trigger breaks, so the valve is not sat out by a big first reading (ENG-418)
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01U6zrBsUCNzpMBnov3rTVYV
2026-08-28 01:19:58 -07:00
ciregenz 1e27431e77 [eric] agents: one outputs scan per turn, and the spill comment stops claiming it bounds model context 2026-08-27 16:09:29 -07:00
ciregenz 0cffa158c7 [eric] agents: an elision carries no path, because an instruction inside tool output reads as an injection 2026-08-27 12:26:24 -07:00
ciregenz 71a826c41d [eric] agents: the mid-turn breaker says whose session it cannot protect instead of going quiet (ENG-391) 2026-08-27 12:06:07 -07:00
ciregenz 71eecf5cdc [eric] agents: a shaped tool result names the file we already wrote, and where the cut starts 2026-08-27 12:03:13 -07:00
ciregenz 5617e8b19e [eric] agents: the CLI's prose policy refusal is the provider talking, not the agent's answer (ENG-411) 2026-08-26 12:52:03 -07:00
ciregenz 6b43b820bb [eric] agents: a delegated child is told its step budget and running out is not an error (ENG-409) 2026-08-26 12:47:14 -07:00
ciregenzandClaude Opus 5 5335c98b8a [eric] agents: shaping handles the shape Read actually emits, and an unknown big payload says so
The live drill caught what 18 green unit tests could not: Read nests its body under file.content, so a 34KB file reached the model untouched.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_018foyDoK19jjbYdudfzQVkZ
2026-08-25 08:12:45 -07:00
ciregenzandClaude Opus 5 fb92d785b4 [eric] agents: a human's Stop outranks every recovery path, checked before any of them (ENG-402, ENG-369)
The liveness door resurrected stopped sessions; a stopped browser agent looks exactly like a dead sidecar.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_018foyDoK19jjbYdudfzQVkZ
2026-08-24 22:59:44 -07:00
ciregenzandClaude Opus 5 10084b1b28 [eric] agents: split the delegation backstop and the quit telemetry into their own files
Both host files crossed the 300-line ceiling; the seams were already there (quick-tool wedge vs delegation backstop, ladder logic vs its telemetry).

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_018foyDoK19jjbYdudfzQVkZ
2026-08-24 22:07:31 -07:00
ciregenzandClaude Opus 5 8761320213 [eric] agents: a frozen sidecar can no longer hang a delegation forever (ENG-402)
Exempt from the 25s wedge deadline was silently also exempt from the 300s ceiling; the discriminator is liveness, not time. Reported by Haik Decie.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_018foyDoK19jjbYdudfzQVkZ
2026-08-24 21:27:13 -07:00
ciregenzandClaude Opus 5 482e94ecb2 [eric] tests: one shared logger capture, and the shaper's names follow the p_ convention
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_018foyDoK19jjbYdudfzQVkZ
2026-08-24 01:06:56 -07:00
ciregenzandClaude Opus 5 626d9ea4dd [eric] agents: bound what one tool result costs the model, without ever deleting the answer (ENG-385)
The 50KB cap shaped our own transcript copy, never the model's context, so it could not have cut a token at any threshold.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_018foyDoK19jjbYdudfzQVkZ
2026-08-24 00:45:37 -07:00
ciregenzandClaude Opus 5 dc807e09ef [eric] agents: a drilled fault must be the one the real classifier catches, and fire once (ENG-382)
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_018foyDoK19jjbYdudfzQVkZ
2026-08-23 21:09:23 -07:00
ciregenzandClaude Fable 5 42e4f9116b [eric] agents: transport heals respawn the CLI on the same transcript instead of rebuilding it (ENG-382)
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01En8dRGsJPLrJCQBEkTH4Mp
2026-08-21 00:20:04 -07:00
ciregenzandClaude Fable 5 295a7b52e2 [eric] agents: a policy block ratchets the recap down instead of bricking the chat (ENG-358)
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01En8dRGsJPLrJCQBEkTH4Mp
2026-08-20 23:44:44 -07:00
ciregenzandClaude Fable 5 5e0e89abe1 [eric] agents: a fresh heartbeat extends the unwedger to a 300s hard ceiling (ENG-368)
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01En8dRGsJPLrJCQBEkTH4Mp
2026-08-20 22:22:49 -07:00
ciregenz 3235324122 [eric] agents: a user's Stop or Close is final; no watchdog resend, disk reload, read, or late-booting child revives the card 2026-08-20 19:39:33 -07:00
ciregenzandClaude Opus 5 ea04b1da11 [eric] agents: one provider verdict per ask, and a spent plan is never sold as a short wait
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_014wtspwSFzZmjCx9UNPAorQ
2026-08-20 15:08:12 -07:00
ciregenzandClaude Opus 5 7c04c755ae [eric] agents: an invisible thinking pill no longer breaks the repeat-card dedup
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_014wtspwSFzZmjCx9UNPAorQ
2026-08-20 12:32:14 -07:00
ciregenzandClaude Opus 5 e5e8da37ac [eric] agents: a provider's error never reaches the user as the agent's own words
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_014wtspwSFzZmjCx9UNPAorQ
2026-08-20 12:22:34 -07:00
ciregenz 4be2f10d02 [eric] agents: every sub lane self-heals a mid-run token expiry before any card; codex retries wait out the rotation window instead of burning the one shot inside it 2026-08-19 17:24:23 -07:00
ciregenz e6d05dfb1b [eric] agents: RunToolScript (PTC): scripts chain allowlisted tools in one turn and only printed output enters context (hermes code_execution lift, ENG-354 lever) 2026-08-18 23:41:38 -07:00
ciregenz 4f3e68c7ac [eric] agents: the 25s unwedge verifies the sidecar is actually wedged (heartbeat file) before shooting it; alive-but-slow gets 120s (ENG-353) 2026-08-18 21:13:47 -07:00
ciregenz ced541997d [eric] agents: the unwedge watchdog runs on daemon threads, sealing the suite's flaky hang at interpreter exit 2026-08-16 22:20:46 -07:00
ciregenz 69569c8079 [eric] agents: delegation watchdog only counts children born after its own tool call, ending the mid-run sidecar shootings (ENG-327) 2026-08-16 19:23:23 -07:00
ciregenz a81958acb9 [eric] agents: first expired-token failure heals itself (fresh CLI + one hidden retry); the reconnect banner is the second rung (ENG-294) 2026-08-16 02:06:33 -07:00
ciregenz 92a05ad36a [eric] agents: stage-3 recovery ends a turn whose CLI never noticed the lost delegation result, then redoes the step 2026-08-15 23:45:43 -07:00
ciregenz 5ff16b47a5 [eric] agents: a delegated run whose result is lost recovers instead of hanging the parent forever 2026-08-15 23:38:32 -07:00
ciregenz 86e3df51c3 [eric] agents: a core MCP server that never connects rebuilds the session instead of leaving it toolless (ENG-303) 2026-08-14 17:35:27 -07:00
ciregenz c11df8eea3 [eric] agents: a frozen core tool recovers in 25s and the agent retries the step it lost 2026-08-14 17:03:53 -07:00
ciregenz c4059b5469 [eric] agents: a frozen MCP sidecar gets unwedged after 75s so the CLI's own respawn heals it, blocking tools exempt (ENG-303) 2026-08-14 11:47:34 -07:00
ciregenz 4cf0971693 [eric] tool-ui: asks pair by tool_use_id, early clicks held, stops release waits, dead asks go quiet 2026-08-10 14:45:11 -07:00
ciregenz b47ad9c60f [eric] agents: active time is stall-capped inter-event work, so one wedged turn can't book 54 hours of 'agent time' 2026-08-09 14:08:34 -07:00
ciregenz 5eca1df72d [eric] agents: mid-turn provider backoff shows a muted retrying pill instead of a dead card, and transient pills survive session status frames 2026-08-09 14:01:11 -07:00
ciregenz 260d5a3de3 [eric] agents: the CLI's silent provider-500 retries become breadcrumbs and near-miss ledger entries 2026-08-07 05:39:46 -07:00
ciregenz 1b2203fa75 [eric] boot: anthropic and the sdk+mcp chain leave the import graph, api-ready median 2531 to 1843ms, hooks re-import at call time 2026-08-06 16:33:22 -07:00
ciregenz cc50fda07b [eric] agents: a silent-quit turn gets one hidden continue nudge, and the context meter reads real context not summed billing 2026-08-03 20:12:50 -07:00
ciregenz 5c9710712e [eric] agents: mid-turn context breaker, one giant turn compacts and continues instead of starving 2026-08-03 19:48:55 -07:00