Commit graph

107 commits

Author SHA1 Message Date
Yiorgis Gozadinos
82fd10e0ee
Migrate LanceDB to native async API
Convert all LanceDB operations from sync calls wrapped in async
functions to the native async API (connect_async, AsyncConnection,
AsyncTable, AsyncQuery). Database I/O no longer blocks the event loop.

- Store and HaikuRAG use async context managers (async with). Store
  initialization is deferred to __aenter__; direct construction
  without async with is no longer supported.
- Index creation uses config objects (FTS, BTree, IvfPq) instead of
  string-based index_type parameter.
- Upgrade callbacks are async.
- HaikuRAG tracks background vacuum tasks and awaits them in __aexit__
  and before destructive rebuild operations to avoid races with
  concurrent table mutations.
- temp_db_path fixture uses pytest's tmp_path for reliable async
  cleanup.
2026-04-24 14:42:52 +03:00
Yiorgis Gozadinos
4d75943df5
use MontyRepl for persistent variables across execute_code calls 2026-04-20 10:47:50 +03:00
Yiorgis Gozadinos
7d98d0ec57
add citation support to analysis agent 2026-04-17 18:35:16 +03:00
Yiorgis Gozadinos
a45820dbf7
add document virtual filesystem to analysis sandbox
Replace get_document() and get_docling_document() with a VFS at
/documents/{id}/ with metadata.json (eager), content.txt (lazy),
and items.jsonl (lazy). Keep search(), list_documents() (now returns
all), and llm() as external functions.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-17 18:35:16 +03:00
Yiorgis Gozadinos
bacc21b38b
expose doc_item_refs and labels in sandbox search results 2026-04-17 18:35:16 +03:00
Yiorgis Gozadinos
4118533db1
fold context expansion into sandbox search and remove get_context 2026-04-17 18:35:16 +03:00
Yiorgis Gozadinos
44fd0c9906
add get_context() to analysis sandbox and improve prompt 2026-04-17 18:32:45 +03:00
Yiorgis Gozadinos
d2b3ba1b59
rename RLM agent to analysis throughout the codebase 2026-04-17 18:32:01 +03:00
Yiorgis Gozadinos
aa9fdf051d
Remove support for structured output 2026-03-24 14:11:43 +02:00
Yiorgis Gozadinos
83ea6347b6
Fix CI failures: update tests for pydantic-ai 1.70.0 and FastMCP API changes 2026-03-24 14:02:03 +02:00
Yiorgis Gozadinos
713e9087cc
Bump pydantic-monty to 0.0.8, remove regex external functions, update skill 2026-03-12 17:24:01 +02:00
Yiorgis Gozadinos
90fe624fa7
improve QA citation reliability via prompt and ID normalization 2026-03-12 11:50:46 +02:00
Yiorgis Gozadinos
28e90e5a87
Auto-detect structured output mode from model profile. Remove the structured_output config field from ModelConfig. 2026-03-04 14:51:09 +02:00
Yiorgis Gozadinos
fdd7c21757
Add configurable structured output mode (tool vs native) 2026-03-04 13:35:32 +02:00
Yiorgis Gozadinos
034ee27daf
Use ToolOutput for structured output. 2026-03-03 16:14:45 +02:00
Yiorgis Gozadinos
6759a2e0a5
Give regex to monty as externals 2026-02-24 13:12:56 +02:00
Yiorgis Gozadinos
1ee9747551
Catch MontyRuntimeError from Monty() constructor 2026-02-24 12:11:20 +02:00
Yiorgis Gozadinos
459fdfca71
Add get_docling_document external function to sandbox 2026-02-24 11:51:43 +02:00
Yiorgis Gozadinos
d3c6322481
Simplify sandbox with run_monty_async, replace manual ThreadPoolExecutor start/resume loop 2026-02-24 11:35:39 +02:00
Yiorgis Gozadinos
454f12b319
Update coverage 2026-02-24 09:55:45 +02:00
Yiorgis Gozadinos
c61ded1271
Replace Docker sandbox with pydantic-monty 2026-02-24 09:55:40 +02:00
Yiorgis Gozadinos
69083c8cb4
Fix stale docs 2026-02-20 16:59:58 +02:00
Yiorgis Gozadinos
37f28ea8de
Clean up stale references and dead code 2026-02-20 16:37:15 +02:00
Yiorgis Gozadinos
eb9436eb2a
Remove unused conversational output mode from research graph 2026-02-20 16:36:50 +02:00
Yiorgis Gozadinos
8176103eb0
Remove agents/chat/ 2026-02-20 16:36:48 +02:00
Yiorgis Gozadinos
524647c501
Add unified RAG skill with session context and reuse existing tools; 2026-02-20 16:36:47 +02:00
Yiorgis Gozadinos
a870052ee9
Fix coverage 2026-02-17 13:22:23 +02:00
Yiorgis Gozadinos
f4735667df
emit StateDeltaEvent with client-aware baseline 2026-02-17 12:24:09 +02:00
Yiorgis Gozadinos
72c8f6e1b1
Additional tests 2026-02-13 18:08:46 +02:00
Yiorgis Gozadinos
84c48e1541
Add preamble parameter to chat agent and citations_history to ChatSessionState 2026-02-13 16:59:21 +02:00
Yiorgis Gozadinos
c0ed93da2d
Expand tests 2026-02-13 14:34:24 +02:00
Yiorgis Gozadinos
5f6d9e9812
handle state_key duplication between deps and ToolContext 2026-02-13 10:23:12 +02:00
Yiorgis Gozadinos
8f180f707b
Decouple QA toolset from chat agent, add ToolContext state methods 2026-02-12 17:27:47 +02:00
Yiorgis Gozadinos
0c6d73409d
Move SessionContext from agents/chat/state.py to tools/session.py, change QASessionState.session_context to use it 2026-02-12 17:13:01 +02:00
Yiorgis Gozadinos
05ebd781d4
Move client and tool_context from toolset factories to RunContext.deps 2026-02-12 15:50:46 +02:00
Yiorgis Gozadinos
58c2bd49ea
Clean up server vs client session setting priorities 2026-02-11 16:54:00 +02:00
Yiorgis Gozadinos
9e63ff1ff7
Remove session_id from state layer, remove module-level caches 2026-02-11 14:55:53 +02:00
Yiorgis Gozadinos
d88f2f003a
Remove incoming_* fields, simplify delta computation 2026-02-11 14:31:37 +02:00
Yiorgis Gozadinos
c916356a42
Clean up toolset exports, simplify update_session_context(), fix health check 2026-02-11 12:46:50 +02:00
Yiorgis Gozadinos
87bcb7a5dc
Extract run_qa_core() from ask closure in QA toolset. Remove redundant tests and cassettes for OpenAI and Anthropic QA tools, as they are now tested in the core function tests. 2026-02-11 11:38:34 +02:00
Yiorgis Gozadinos
a592a04031
Removed unused accumulator states 2026-02-10 16:15:30 +02:00
Yiorgis Gozadinos
cf4083d2d7
Add multi-turn integration test with initial context and summarization 2026-02-10 14:55:12 +02:00
Yiorgis Gozadinos
ce3c3e7ed5
Add feature-based chat agent & prompt composition 2026-02-10 14:38:14 +02:00
Yiorgis Gozadinos
bd3b26f78b
Extract get_session_filter helper, remove dead code and duplicate tests 2026-02-10 14:38:13 +02:00
Yiorgis Gozadinos
df57b0cf43
Remove SearchAgent & friends, consolidate duplicate models 2026-02-10 14:38:13 +02:00
Yiorgis Gozadinos
3ed9cbb7d3
Use the tools inside the chat agent. 2026-02-10 14:38:12 +02:00
Yiorgis Gozadinos
a3863882cd
Introduce tool module & ToolContext to save state 2026-02-10 14:38:12 +02:00
Yiorgis Gozadinos
d1a9439500
Fix session_id not persisting across AG-UI requests 2026-02-10 13:14:05 +02:00
Yiorgis Gozadinos
720f697a48
Cleanup 2026-02-06 12:07:21 +01:00
Yiorgis Gozadinos
f8ec511250
Return consolidated program from RLM agent instead of execution history 2026-02-06 12:07:20 +01:00