Skip to content

Conversation

@nicofretti
Copy link
Owner

@nicofretti nicofretti commented Nov 13, 2025

Description

  • Added LLMConfigManager for centralized model configuration with database persistence
  • Created Settings UI page with model CRUD operations and connection testing
  • Migrated .env LLM settings to database on first startup
  • Updated TextGenerator and StructuredGenerator blocks to use configured models
  • Fix pipeline generation loading

Related Issue

Closes #31

Checklist

  • Code follows project style guidelines
  • Comments explain "why" not "what"
  • Documentation updated (if needed)
  • No debug code or console statements
  • make format passes
  • make pre-merge passes
  • PR update from develop branch
  • Copilot review run and addressed

Copy link

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull Request Overview

This PR implements multi-model support with a configuration UI for managing LLM and embedding models. It introduces a centralized model configuration system that stores model settings in the database and provides a Settings page for managing configurations.

Key Changes:

  • Added LLMConfigManager for centralized model configuration with database persistence
  • Created Settings UI page with model CRUD operations and connection testing
  • Migrated .env LLM settings to database on first startup
  • Updated TextGenerator and StructuredGenerator blocks to use configured models

Reviewed Changes

Copilot reviewed 25 out of 30 changed files in this pull request and generated 10 comments.

Show a summary per file
File Description
lib/llm_config.py New configuration manager for LLM and embedding models with provider-specific logic
lib/storage.py Added database tables for model configs, error field to jobs, and .env migration
lib/blocks/builtin/text_generator.py Refactored to use LLMConfigManager instead of direct settings access
lib/blocks/builtin/structured_generator.py Refactored to use LLMConfigManager instead of direct settings access
lib/job_processor.py Added error message capture for failed job executions
models.py Added LLMProvider enum and model config classes with validation
app.py Added 12 new API endpoints for model management and injected model options into block schemas
tests/test_llm_config.py Comprehensive test suite covering CRUD, fallback logic, and provider detection
frontend/src/pages/Settings.tsx New settings page with model management, testing, and CRUD operations
frontend/src/components/settings/* Modal forms for LLM and embedding model configuration
frontend/src/services/llmConfigApi.ts API client for model configuration endpoints
frontend/src/contexts/JobContext.tsx Improved polling logic with proper cleanup and edge case handling
frontend/src/pages/Generator.tsx Fixed generating state management and removed unused navigation
frontend/src/App.tsx Added Settings route and React Router future flags
frontend/src/types/index.ts Added type definitions for model configs and connection test results
llm/*.md Added comprehensive technical documentation for project architecture
docs/template*.md Added detailed template documentation with usage examples
*_code_guide.md Added coding standards and best practices guides
.github/instructions/*.instructions.md Added code review guidelines
Makefile Modified run command (contains bug)
.gitignore Removed llm/* exclusion to allow documentation commits

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Copy link

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull Request Overview

Copilot reviewed 28 out of 33 changed files in this pull request and generated 6 comments.


💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@nicofretti nicofretti merged commit bb5766a into develop Nov 13, 2025
1 check passed
@nicofretti nicofretti deleted the 31-feat-config-models branch November 15, 2025 12:58
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.

2 participants