feat: agent coordination system (workflows, locks, components, messages)

Adds /api/coord/* endpoints for real-time cross-session coordination:
- coord_workflows: named units of work per project
- coord_work_items: tasks within workflows with dependency chains
- coord_session_locks: exclusive resource locks with auto-expiry (TTL)
- coord_component_states: live component state per project (upsert)
- coord_messages: cross-session messaging and broadcasts
- /api/coord/status: cross-project snapshot endpoint

Replaces PROJECT_STATE.md as the coordination layer for Claude sessions.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
2026-05-12 08:25:33 -07:00
parent bd88398297
commit 63975284f4
24 changed files with 1565 additions and 0 deletions

View File

@@ -39,6 +39,16 @@ from api.routers import (
gravityzone,
)
# Import coordination routers
from api.routers import (
coord_workflows,
coord_work_items,
coord_locks,
coord_components,
coord_messages,
coord_status,
)
# Import middleware
from api.middleware.error_handler import register_exception_handlers
@@ -136,6 +146,14 @@ app.include_router(admin_quotes.router, prefix="/api/admin/quotes", tags=["Admin
app.include_router(ticktick.router, prefix="/api/ticktick", tags=["TickTick"])
app.include_router(gravityzone.router, prefix="/api/gravityzone", tags=["GravityZone"])
# Agent coordination
app.include_router(coord_workflows.router, prefix="/api/coord/workflows", tags=["Coordination"])
app.include_router(coord_work_items.router, prefix="/api/coord/work-items", tags=["Coordination"])
app.include_router(coord_locks.router, prefix="/api/coord/locks", tags=["Coordination"])
app.include_router(coord_components.router, prefix="/api/coord/components", tags=["Coordination"])
app.include_router(coord_messages.router, prefix="/api/coord/messages", tags=["Coordination"])
app.include_router(coord_status.router, prefix="/api/coord/status", tags=["Coordination"])
if __name__ == "__main__":
import uvicorn