Files
meeting-room/.tasks/v2-p2-fastapi-app.md
vitya 1dffaae822 feat: Phase 2 — web server, REST API, WebSocket/SSE, UI [v0.2.0]
AsyncEventBridge bridges sync EventEmitter to asyncio consumers.
FastAPI app with session management, discussion control, roles/providers.
WebSocket for real-time events + inject, SSE for read-only streaming.
Minimal dark-theme HTML/JS UI. `meeting-room serve` CLI subcommand.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-05-04 08:50:04 +03:00

791 B

v2-p2-fastapi-app

Goal

Create FastAPI application with REST API endpoints for session management and discussion control.

Key files

  • meeting_room/server.py — FastAPI app, routes, session store

Decisions log

  • 2026-05-04: In-memory session store (dict). Persistent storage deferred.
  • 2026-05-04: REST routes under /api prefix, WebSocket/SSE on root

Open questions

  • None

Completed steps

  • FastAPI app with lifespan handler
  • Session + SessionStore models
  • REST endpoints: POST /api/sessions, GET /api/sessions, GET /api/sessions/{id}, POST /api/sessions/{id}/start, POST /api/sessions/{id}/inject, GET /api/sessions/{id}/messages
  • GET /api/roles, GET /api/providers
  • Session start runs engine in asyncio.to_thread
  • Tests (12 passing)