|
Architecture extensibility — event bus, middleware, auto-discovery, Pydantic profiles
- EventBus: async pub/sub for AgentEvents, WebSocket subscribes instead of direct yield - Declarative serialization: AgentEvent.to_wire() on all event types - Auto-discovery for LLM backends (_discover_backends) and workers (scan navi/workers/*.py) - AgentProfile: Pydantic BaseModel with extra='allow', @field_validator for model coercion - Tool middleware chain: pre/post execute hooks via ToolRegistry.add_middleware() - LoggingMiddleware: built-in, logs every tool call - Fix pg_trgm DDL: conditional GIN indexes via DO $$ block, no CREATE EXTENSION - New files: event_bus.py, middleware.py, logging_middleware.py Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com> |
|---|
|
|
| docs/memory.md |
|---|
| navi/api/websocket.py |
|---|
| navi/config.py |
|---|
| navi/core/agent.py |
|---|
| navi/core/event_bus.py 0 → 100644 |
|---|
| navi/core/events.py |
|---|
| navi/core/registry.py |
|---|
| navi/memory/store.py |
|---|
| navi/profiles/base.py |
|---|
| navi/tools/logging_middleware.py 0 → 100644 |
|---|
| navi/tools/middleware.py 0 → 100644 |
|---|
| navi/workers/__init__.py |
|---|