b61ded8458
step-1: add v3 ws frame protocol (schemas.py)
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-03-08 21:21:03 +01:00
a775a2da18
feat(step-3.6): cloud provider integrations (Gmail, Outlook, Teams)
...
- Add app/integrations/__init__.py: Fernet token encryption helpers,
EmailMessage/ChatMessage dataclasses, get_provider() factory
- Add app/integrations/gmail.py: GmailClient with async fetch_messages(),
token refresh, configurable label/sender/date filters
- Add app/integrations/ms_graph.py: MSGraphClient with fetch_emails()
(Outlook) and fetch_messages() (Teams), MSAL token refresh, OData filters
- Update app/core/agent_runner.py: replace run_cloud_agent() stub with
full 8-step implementation; extend _finalize_run() for cloud config type
- Update app/config/settings.py: add OAuth + Fernet encryption settings
- Update requirements.txt: google-api-python-client, google-auth-*,
msal, cryptography
- Add tests/test_integrations.py: 47 tests covering all integration code
- Update tests/test_agent_runner.py: replace stub test with 7 real tests
All 76 new/updated tests pass.
2026-03-05 18:05:07 +01:00
24772f2b67
step 3.5 complete: chatbot journey endpoint
2026-03-05 17:35:37 +01:00
914f70bd85
step 3.4 complete: agent run orchestrator — local/cloud runner + trigger_pending_runs + 23 tests
2026-03-05 16:13:21 +01:00
608d6c784f
step 3.3 complete: device WS endpoint + DeviceConnectionManager
2026-03-05 15:51:58 +01:00
e3c7547c75
Remove unused imports across multiple files to clean up the codebase
2026-03-03 17:21:40 +01:00
8bfce9da00
Refactor LLM instantiation across agents and orchestrator
...
- Replaced direct instantiation of ChatOpenAI with a centralized get_llm function in CheckpointAgent, NoteAgent, ProjectAgent, and TaskAgent.
- Introduced a new llm.py module to handle LLM model instantiation and API key management.
- Updated settings.py to include LLM_MODEL and LLM_ROUTER_MODEL configurations.
- Modified orchestrator.py to use get_router_llm for intent classification.
- Updated requirements.txt to include litellm for LLM management.
- Adjusted tests to mock get_llm instead of ChatOpenAI directly.
2026-03-03 15:46:44 +01:00
480e7ac5bd
Step 13 - completed
2026-03-03 15:14:04 +01:00
d0b303e745
Step 12 - completed
2026-03-03 14:53:34 +01:00
8f7bc25611
step 10 complete: plugin marketplace with catalog, review workflow, and revenue split
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-03-02 22:32:44 +01:00
3e07fff958
step 9 complete: auth middleware, tier-aware rate limiter, and response sanitizer
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-03-02 22:18:17 +01:00
c8ef7b119b
Refactor tests for execution plan and add comprehensive storage tests
...
- Updated `TestModuleSingletons` in `test_execution_plan.py` to reflect new agent templates and playbook names.
- Changed assertions in playbook tests to match updated templates and agents.
- Introduced `test_storage.py` to cover the storage layer, including encryption, BlobStore, and VectorStore functionalities.
- Added tests for S3 interactions, ensuring upload, download, delete, and list operations work as expected.
- Implemented mock tests for Pinecone and Qdrant vector stores to validate upsert, search, and delete operations.
2026-03-02 15:36:09 +01:00
e72d72f4f6
step 6 complete: four specialized agents, all registered and tested
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-03-02 13:18:53 +01:00
14d1a7351d
step 5 complete: execution plan builder, template registry, and LRU plan cache
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-03-02 13:13:02 +01:00
68955d2fc2
step 4 complete: intelligent routing with single-agent and pipeline modes
...
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-03-02 13:03:54 +01:00
0d16729036
step 3 complete: pluggable agent framework
...
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com >
2026-03-02 00:03:42 +01:00
4d0917f5df
step 1 complete: runnable FastAPI skeleton
...
- Full directory structure with all __init__.py stubs
- requirements.txt with all pinned dependencies
- app/config/settings.py (BaseSettings, env-based)
- app/main.py (CORS, lifespan, /api/v1/health)
- Dockerfile (multi-stage, Python 3.12-slim, non-root user)
- docker-compose.yml (app + postgres:16 with healthcheck)
- .env.example
- BACKEND_PLAN.md: mark step 1 done, add one-step-at-a-time rule
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com >
2026-03-01 23:51:37 +01:00