You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

42 lines
1.5 KiB
Markdown

# Model Split — Implementation Plan
> **For agentic workers:** REQUIRED SUB-SKILL: Use superpowers:subagent-driven-development (recommended) or superpowers:executing-plans to implement this plan task-by-task. Steps use checkbox (`- [ ]`) syntax for tracking.
**Goal:** Rename ai_model_writing → ai_model_websearch, split provider models into scraping and websearch lists with GPT-5 generation models.
**Architecture:** Rename DB column, split JSONB `models` into `models_scraping` + `models_websearch`, update all backend structs/queries/handlers + frontend types/dropdowns.
**Tech Stack:** Rust (sqlx), SolidJS, PostgreSQL
**Spec:** `docs/superpowers/specs/2026-03-25-model-split-design.md`
---
### Task 1: Migration — rename column + restructure JSONB
**Files:**
- Create: `backend/migrations/20260325000019_model_split.sql`
- Modify: `CLAUDE.md`
The migration:
1. Renames `ai_model_writing``ai_model_websearch` in settings
2. Renames `models``models_scraping` in admin_providers JSONB
3. Copies `models_scraping``models_websearch` (same models initially for Gemini/Anthropic)
4. Updates OpenAI specifically with GPT-5 model lists
### Task 2: Backend model + DB changes
Update all Rust structs and DB queries for the rename and new JSONB structure.
### Task 3: Pipeline + handlers
Update synthesis.rs, config handler, admin handler.
### Task 4: Frontend
Update types, Settings dropdowns, i18n, E2E test.
---
These 4 tasks are tightly coupled — I'll execute them as 2 subagent calls (backend + frontend).