Skip to content

Conversation

@ballPointPenguin
Copy link
Owner

No description provided.

claude and others added 4 commits December 19, 2025 14:46
Implemented a flexible preferences system that allows admins to configure
the AI model used for lecture generation through the UI, with proper
fallback to environment variables.

Backend changes:
- Created preferences table with support for global and per-user settings
- Added PreferenceModel, PreferenceRepository, and PreferenceService
- Updated LectureGeneratorService to check preferences before using model
- Added /api/v1/preferences router with admin-only endpoints
- Ensured lecture 'created_with' field records actual model used

Frontend changes:
- Created AdminSettings page at /admin/settings
- Added preferenceService for API calls
- Implemented model selector with three options:
  * claude-opus-4-5 (highest quality)
  * claude-sonnet-4-5 (balanced)
  * claude-haiku-4-5 (fastest)

The system checks preferences in this order:
1. User-specific preference (for future expansion)
2. Global preference (set by admin)
3. Environment variable (from CDK config)

This removes the hard-coded model dependency from CDK while maintaining
backwards compatibility with existing environment-based configuration.
@ballPointPenguin ballPointPenguin merged commit 598851e into main Dec 20, 2025
4 checks passed
@ballPointPenguin ballPointPenguin deleted the claude/remove-hardcoded-model-config-C4jiu branch December 20, 2025 12:11
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.

3 participants