fabro/crates
Bryan Helmkamp 2a2a610654 Replace abort_flag with CancellationToken for abort-aware process cancellation
Thread CancellationToken into tool executors and exec_command so that
running processes are killed (SIGTERM -> 2s -> SIGKILL) when abort fires,
rather than only checking the flag between LLM calls. Key changes:

- ToolExecutor type gains CancellationToken parameter
- ExecutionEnvironment::exec_command gains cancel_token param
- LocalExecutionEnvironment uses tokio::select! (completion vs timeout
  vs cancellation) with extracted sigterm_then_kill helper
- DockerExecutionEnvironment uses same select! pattern
- Session replaces Arc<AtomicBool> with CancellationToken, passes
  child_token() per tool call
- Shell tool forwards cancel token to exec_command
- CLI SIGINT handler calls cancel_token.cancel()

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-23 18:10:10 -05:00
..
agent Replace abort_flag with CancellationToken for abort-aware process cancellation 2026-02-23 18:10:10 -05:00
attractor Replace manual CLI prompts with dialoguer for arrow-key navigation 2026-02-23 17:58:18 -05:00
llm Add shape selectors, LLM stream timeouts, MultiSelect questions, and test coverage 2026-02-23 17:43:05 -05:00
terminal Extract terminal crate and prettify attractor CLI output 2026-02-23 12:06:24 -05:00