- SymbolExtractor protocol + SymbolSpan dataclass - AstSymbolExtractor for Python (stdlib ast, no tree-sitter dep — KTD1) - RegexSymbolExtractor for TS/JS/Go/Rust/Java (language-aware regex) - ReadFileTool with path/symbol/start_line/end_line params - symbol=None returns full file (characterization baseline matching _FakeTool) - symbol='foo' returns first matching symbol's line range - symbol not found returns available_symbols list (soft error) - Unsupported extension returns full file with note - Manual start_line/end_line overrides symbol - 66 unit tests covering R22/R23 + characterization + edge cases |
||
|---|---|---|
| .. | ||
| documents | ||
| e2e | ||
| integration | ||
| routes | ||
| tools | ||
| unit | ||
| __init__.py | ||
| conftest.py | ||
| test_routing_chain.py | ||