Add Workspace-Scoped LLM Configuration #133

Closed
opened 2026-01-30 21:29:35 +00:00 by jason.woltje · 0 comments
Owner

Implement per-workspace LLM provider and personality configuration.

Objective: Allow workspaces to configure their own LLM provider and personality settings.

Tasks:

  • Add WorkspaceSettings model to schema.prisma
  • Define fields: workspace_id, default_llm_provider, default_personality, settings (JSON)
  • Create migration
  • Create workspace-settings.service.ts
  • Update workspaces.controller.ts with settings endpoints
  • Add frontend UI for workspace LLM settings
  • Implement provider selection logic (workspace > user > system)
  • Write unit and E2E tests

Configuration Hierarchy:

  1. Workspace-level settings (highest priority)
  2. User-level provider instances
  3. System-level providers (fallback)

Acceptance Criteria:

  • Workspaces can select LLM provider
  • Workspaces can set default personality
  • Settings persist correctly
  • Multi-tenant isolation maintained
  • No cross-workspace data leakage
  • Tests pass with 85%+ coverage

Related: Epic #121, Phase 5 Workspace Configuration
Depends on: #128 (LlmProviderInstance), #130 (Personality)

Implement per-workspace LLM provider and personality configuration. Objective: Allow workspaces to configure their own LLM provider and personality settings. Tasks: - Add WorkspaceSettings model to schema.prisma - Define fields: workspace_id, default_llm_provider, default_personality, settings (JSON) - Create migration - Create workspace-settings.service.ts - Update workspaces.controller.ts with settings endpoints - Add frontend UI for workspace LLM settings - Implement provider selection logic (workspace > user > system) - Write unit and E2E tests Configuration Hierarchy: 1. Workspace-level settings (highest priority) 2. User-level provider instances 3. System-level providers (fallback) Acceptance Criteria: - Workspaces can select LLM provider - Workspaces can set default personality - Settings persist correctly - Multi-tenant isolation maintained - No cross-workspace data leakage - Tests pass with 85%+ coverage Related: Epic #121, Phase 5 Workspace Configuration Depends on: #128 (LlmProviderInstance), #130 (Personality)
jason.woltje added the databasephase-5databasep0apiapi labels 2026-01-30 21:29:35 +00:00
jason.woltje added this to the M4-LLM (0.0.4) milestone 2026-01-30 23:40:49 +00:00
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: mosaic/stack#133