Add error handling for session bootstrap failures: Implement a client-safe error response payload in session_bootstrap.py and update Streamlit routes to use this new error handling.
Refactor session bootstrap handling and Streamlit app startup: Update start.sh to launch the app using uvicorn, enhance session bootstrap logic in session_bootstrap.py with retry mechanisms for transient errors, and modify streamlit_app.py to conditionally use a new route for session initialization. Add tests for retry behavior and error handling in session bootstrap payload generation.
Refactor Streamlit app and UI for session management: Replace token generation with session bootstrap URL, update client rendering logic, and enhance error handling for session initialization. Improve metrics logging in agent and metrics collector for better tracking of session metadata.
Add Langfuse tracing support and enhance agent dispatch logic: Introduce optional Langfuse tracing configuration in .env.example and settings.py. Update agent and metrics collector to handle Langfuse traces per user turn. Refactor agent dispatch logic to ensure proper agent management and session metadata handling in the Streamlit app. Enhance UI to display session and trace information.
Update environment configuration for LiveKit integration, modify Dockerfile for Python version compatibility, and enhance settings management with LiveKit parameters.
Refactor voice provider architecture to support NVIDIA integration, update environment configuration, and remove obsolete services. Enhance dependency management in pyproject.toml and .gitignore.
implement main entry point for Open Voice Agent with CLI support for running FastAPI, Streamlit, or both. Enhance Streamlit UI for audio processing and integrate WebSocket communication. Update dependencies in pyproject.toml and remove requirements.txt.