- Changed branding from "OBS Stream Manager" to "Live Stream Manager" throughout UI
- Enhanced stream deletion with comprehensive OBS cleanup:
- Removes stream's nested scene
- Deletes browser source
- Clears text files referencing the stream
- Removes stream from all source switchers
- Enhanced team deletion to clean up all OBS components:
- Deletes team scene/group
- Removes team text source
- Deletes all associated stream scenes and sources
- Clears all related text files
- Fixed stream selection to use proper team-prefixed names in text files
- Added StreamWithTeam type for proper team data handling
- Improved browser source creation with audio controls:
- Enabled "Control Audio via OBS" setting
- Auto-mutes audio on creation
- Attempted multiple approaches to fix text centering (still unresolved)
Known issue: Text centering still positions left edge at center despite multiple attempts
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Fix TypeScript error: Replace 'any' type with specific union type in teams API
- Remove unused variable assignment in obsClient.js
- Remove unused error binding in apiHelpers.ts catch block
- Disable exhaustive-deps rule for custom hook with dynamic dependencies
All blocking linter errors resolved. Remaining warnings are in test files only.
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Add group_uuid column to teams table for reliable OBS scene tracking
- Update createGroup API to store OBS scene UUID when creating groups
- Enhance verifyGroups API with UUID-first matching and name fallback
- Add comprehensive verification system to detect sync issues between database and OBS
- Implement UI indicators for UUID linking, name mismatches, and invalid groups
- Add "Clear Invalid" and "Update Name" actions for fixing synchronization problems
- Create migration script for existing databases to add UUID column
- Update Team type definition to include optional group_uuid field
This resolves issues where manually renaming groups in OBS would break the synchronization
between the database and OBS, providing a more robust group management system.
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>