mirror of
https://github.com/fabro-sh/fabro.git
synced 2026-09-23 00:41:13 +00:00
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> |
||
|---|---|---|
| .. | ||
| profiles | ||
| cli.rs | ||
| config.rs | ||
| docker_env.rs | ||
| error.rs | ||
| event.rs | ||
| execution_env.rs | ||
| history.rs | ||
| lib.rs | ||
| local_env.rs | ||
| loop_detection.rs | ||
| main.rs | ||
| project_docs.rs | ||
| provider_profile.rs | ||
| session.rs | ||
| subagent.rs | ||
| test_support.rs | ||
| tool_registry.rs | ||
| tools.rs | ||
| truncation.rs | ||
| types.rs | ||