Skip to content

docs: add ARCHITECTURE.md#6

Open
melmallow wants to merge 1 commit into
mainfrom
feat/cvr-frame-for-conversation-turns
Open

docs: add ARCHITECTURE.md#6
melmallow wants to merge 1 commit into
mainfrom
feat/cvr-frame-for-conversation-turns

Conversation

@melmallow

Copy link
Copy Markdown
Contributor

Summary

Adds a deep architecture document at the repo root covering how Rioc is built (companion to README.md, which covers how to run it).

The doc walks through:

  • The two-vLLM split (audit on :8100, conversation on :8101 with audio modality + fallback)
  • Module responsibilities, including the trap that cloud_brain.py and vision_test.py are not loaded at runtime
  • Background tasks and the locks/shared-state surface for the single-process model
  • The three FRAME_SOURCE modes (webhook, local_yolo, live_ffmpeg stub) and the PresenceLock throttling
  • The 8-step cloud_audit_loop vision pipeline
  • ConversationManager state machine, the _TURN_ROLE_REMINDER re-anchoring, and _speaking_event half-duplex sync
  • All five speaker-delivery paths and the audio-format gauntlet
  • SQLite schema, audio_logs/ retention, env-var contract
  • Concurrency model + 13 known sharp edges

Test plan

  • Skim ARCHITECTURE.md for correctness against current main.py / conversation_manager.py
  • Confirm the "Sharp edges" list reflects real, current behavior (not stale)

🤖 Generated with Claude Code

Captures the single-process service shape: vision pipeline, conversation
state machine, multi-protocol speaker delivery, persistence, concurrency
model, and known sharp edges. Companion to README.md (how-to-run) — this
covers how it's built.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
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.

1 participant