Skip to content

Embedded all of reactome#40

Open
LucLabarriere wants to merge 184 commits into
mainfrom
feat/embed-all-reactome
Open

Embedded all of reactome#40
LucLabarriere wants to merge 184 commits into
mainfrom
feat/embed-all-reactome

Conversation

@LucLabarriere

Copy link
Copy Markdown
Contributor
  • Requires to rebuild the index
  • turingdb 1.29

LucLabarriere and others added 30 commits March 18, 2026 17:32
Created project structure with server, cli and agentlib
- Add config.py with pydantic-settings (host, port, graph, data_dir)
- Implement lifespan: start TuringDB subprocess on startup, stop on shutdown
- Add /health endpoint returning server and TuringDB status
- Add pydantic-settings and turingdb dependencies

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- Add root pyproject.toml declaring uv workspace (server, agentlib, cli)
- Add ruff.toml and ty.toml with shared config for all subprojects
- Add .pre-commit-config.yaml with ruff check and ruff format hooks
- Fix import ordering in server/main.py and cli/main.py

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- Add agentlib/graph/client.py with start_turingdb, stop_turingdb, is_port_open
- Add -ui flag support via enable_ui config option (TURINGDB_ENABLE_UI=true)
- Slim down server/main.py: lifespan now delegates to agentlib
- Add turingdb dependency to agentlib

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Phase 1 - FastAPI server skeleton
Introduces the chat-agent subproject — a FastAPI-mountable chatbot that classifies each incoming message using a lightweight router LLM and dispatches it to either a RAG pipeline or a multi-step tool-calling agent.

Key components:
- router.py: LLM-based intent classifier (qwen2.5:3b) with configurable confidence threshold; low-confidence RAG decisions are escalated to agent
- rag_handler.py: retrieves context via agentlib vector_search, answers with a grounded system prompt
- agent_handler.py: agentic loop (max 8 iterations) with vector_search and graph_query (Cypher) tools backed by agentlib
- session.py: Valkey-backed session store with TTL; replaced Redis
- server_router.py: mounts POST /chat/message and GET /chat/session/{id}
- schemas/chat.py: Pydantic models for request/response and session state
- Settings via pydantic-settings; all models point to local Ollama instance

Resolves: chat/initial-setup
- README.md: project overview, prerequisites, repo structure, roadmap
- ARCHITECTURE.md: full system design, data flows, technology choices
- CLAUDE.md: conventions, architectural principles, key decisions for Claude Code
- CONTRIBUTING.md: branch naming, PR workflow, commit conventions, tooling

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- Add valkey_url and session_ttl_seconds to server/config.py
- Remove valkey_url and session_ttl_seconds from chat-agent settings

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- Initialize Valkey connection on startup, store in app.state.valkey
- Close Valkey connection cleanly on shutdown
- Import chat router and register it

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
…parameter

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- Create server/routes/chat.py (POST /chat/message, GET /chat/session/{id})
- Routes now get Valkey client from app.state instead of global singleton
- Delete chat-agent/server_router.py
- Add chat-agent, valkey, openai deps to server/pyproject.toml

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- Add chat-agent/src to root ruff.toml sources
- Remove duplicate [tool.ruff] section from chat-agent/pyproject.toml
- Switch chat-agent agentlib source from path to workspace reference
- Fix ruff violations in chat-agent (import ordering, line length)

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
These modules are imported by chat-agent but not yet implemented.
Stubs allow the server to start cleanly — Phase 2 will implement them.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
maxvincent24 and others added 26 commits April 6, 2026 22:55
feat: per-request LLM overrides + settings panel
feat(app): revamp session list — collapsible, renameable, deletable
feat(app): set TuringDB logo as browser favicon
@LucLabarriere LucLabarriere self-assigned this Apr 9, 2026
@LucLabarriere LucLabarriere changed the base branch from phase1 to main April 9, 2026 14:18
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants