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.

1.5 KiB

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_writingai_model_websearch in settings
  2. Renames modelsmodels_scraping in admin_providers JSONB
  3. Copies models_scrapingmodels_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).