mirror of
https://github.com/fabro-sh/fabro.git
synced 2026-09-21 00:21:27 +00:00
- Extract shared test infrastructure (MockExecutionEnvironment, TestProfile, MockLlmProvider) replacing 11 duplicate mock implementations across tests - Deduplicate tool execution logic between sequential and parallel paths - Narrow ProviderProfile trait from 14 to 7 required methods via ProfileCapabilities struct and default implementations - Replace stringly-typed HashMap event data with typed EventData enum - Extract shared assemble_system_prompt helper and register_subagent_tools default method, eliminating copy-paste across all 3 profiles - Replace fragile shell-based glob with glob crate, fix rg detection - Add delete_file to ExecutionEnvironment, wire git context into env block - Remove dead code (AgentError::Io, count_turns, trivial derived-trait tests) - Use match-based lookups in truncation instead of per-call HashMap allocation Net reduction: -1,401 lines across 20 files. All 180 tests pass. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> |
||
|---|---|---|
| .. | ||
| profiles | ||
| config.rs | ||
| error.rs | ||
| event.rs | ||
| execution_env.rs | ||
| history.rs | ||
| lib.rs | ||
| local_env.rs | ||
| loop_detection.rs | ||
| project_docs.rs | ||
| provider_profile.rs | ||
| session.rs | ||
| subagent.rs | ||
| test_support.rs | ||
| tool_registry.rs | ||
| tools.rs | ||
| truncation.rs | ||
| types.rs | ||