Parent
Part of #29
Scope
Implement the core file_search filter that executes file_search tool calls against vector store APIs.
Included
- Filter module with
HttpFilter implementation (response-phase)
- Config struct:
vector_store_url, api_key, auth_type, templates, timeout_ms
CalloutClient from praxis-core for HTTP calls with circuit breaking
- Parallel fan-out across multiple vector stores
- Simple
{variable} template interpolation for search/annotation/context formatting
- Citation extraction:
<|file-xxx|> markers → annotation structs
citation_files tracking (file_id → filename)
- Unit tests + integration tests + example config
Not included
- SSE event emission (
file_search_call.in_progress, .searching, .completed) — see sibling issue
Parent
Part of #29
Scope
Implement the core
file_searchfilter that executes file_search tool calls against vector store APIs.Included
HttpFilterimplementation (response-phase)vector_store_url,api_key,auth_type, templates,timeout_msCalloutClientfrompraxis-corefor HTTP calls with circuit breaking{variable}template interpolation for search/annotation/context formatting<|file-xxx|>markers → annotation structscitation_filestracking (file_id → filename)Not included
file_search_call.in_progress,.searching,.completed) — see sibling issue