Conversation
Release v0.0.1
Updated project title to indicate it's a fork.
# Conflicts: # backends/advanced/webui/src/pages/Settings.tsx # backends/advanced/webui/src/services/api.ts
# Conflicts: # README-K8S.md # backends/advanced/src/advanced_omi_backend/auth.py # backends/advanced/src/advanced_omi_backend/services/mycelia_sync.py # backends/advanced/webui/package-lock.json # backends/advanced/webui/package.json # quickstart.md # tests/infrastructure/infra_tests.robot # tests/integration/websocket_streaming_tests.robot # Conflicts: # README.md # app/app.json # backends/advanced/src/advanced_omi_backend/app_config.py # backends/advanced/src/advanced_omi_backend/auth.py # backends/advanced/src/advanced_omi_backend/controllers/system_controller.py # backends/advanced/src/advanced_omi_backend/database.py # backends/advanced/src/advanced_omi_backend/models/job.py # backends/advanced/src/advanced_omi_backend/routers/modules/health_routes.py # backends/advanced/src/advanced_omi_backend/services/memory/config.py # backends/advanced/src/advanced_omi_backend/services/memory/service_factory.py # backends/advanced/src/advanced_omi_backend/services/mycelia_sync.py # backends/advanced/webui/src/pages/System.tsx # tests/infrastructure/infra_tests.robot # tests/resources/transcript_verification.robot # tests/setup/test_env.py
Design v2
- Deleted env_writer.py (no longer needed) - Updated system_controller to read from config.yaml - Moved config files to config/ folder - Added config.defaults.yaml as committed template - Simplified config_parser.py using ruamel.yaml
12 19 fix tests
Added mcp server and auth/apikey
12 20 config yaml migration
|
Caution Review failedThe pull request is closed. WalkthroughThis PR introduces a YAML-based configuration system replacing environment-only setup, adds a comprehensive settings API with a new UI, modularizes Docker Compose architecture, implements a new MCP server for conversation access, and integrates API key management throughout the stack. Rebranding from "Chronicle" to "Friend-Lite" occurs across multiple components. Changes
Sequence Diagram(s)sequenceDiagram
participant App as FastAPI App
participant CF as AppFactory
participant CP as ConfigParser
participant SM as SettingsManager
participant DB as MongoDB
participant Env as Environment
App->>CF: app_factory init
CF->>CP: init_config_parser(path)
CP->>CP: load defaults.yaml if config missing
CP-->>CF: ConfigParser instance
CF->>SM: SettingsManager(db)
SM->>DB: initialize (migrate env vars to db)
DB-->>SM: settings stored
SM-->>CF: SettingsManager ready
CF->>CF: setup_mcp_server()
CF-->>App: lifespan ready
App->>App: Handle request
Note over App: /settings/speech-detection GET
App->>SM: get_speech_detection()
SM->>DB: query (with cache TTL check)
DB-->>SM: SpeechDetectionSettings
SM-->>App: cached result
App->>App: Handle request
Note over App: /settings/speech-detection PUT (admin)
App->>SM: update_speech_detection(new_settings)
SM->>CP: load current config
CP-->>SM: ChronicleConfig
SM->>CP: apply updates, save
CP->>CP: write to config.yaml
SM->>DB: persist to app_settings collection
SM->>SM: invalidate cache for category
SM-->>App: updated settings
sequenceDiagram
participant Browser as Frontend
participant API as Settings API
participant CP as ConfigParser
participant SM as SettingsManager
participant DB as MongoDB
Browser->>API: GET /api/settings/all
API->>SM: get_all_settings()
SM->>DB: query all categories (cached)
DB-->>SM: AllSettings object
SM-->>API: AllSettings
API-->>Browser: JSON response
Browser->>Browser: User edits LLM settings
Browser->>API: POST /api/settings/llm
API->>SM: update_llm(new_settings, updated_by='admin')
SM->>CP: load()
CP-->>SM: current config
SM->>CP: apply LLM updates
CP->>CP: write to config.yaml
SM->>DB: save to app_settings
SM->>SM: invalidate_cache('llm')
SM-->>API: LLMSettings (updated)
API-->>Browser: success + new values
Estimated code review effort🎯 4 (Complex) | ⏱️ ~60 minutes Areas requiring extra attention:
Possibly related PRs
Suggested reviewers
✨ Finishing touches
🧪 Generate unit tests (beta)
📜 Recent review detailsConfiguration used: defaults Review profile: CHILL Plan: Pro ⛔ Files ignored due to path filters (1)
📒 Files selected for processing (64)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
There is no license in the repository currently. We can adopt another license later on, but for now a license is better than no license.
Summary by CodeRabbit
Release Notes
New Features
Improvements
Documentation
✏️ Tip: You can customize this high-level summary in your review settings.