The API (v0.12.0) accepts a `previousDomains` query parameter that seeds the LLM with existing domain names and subdomain counts. This prevents domain name drift across full refreshes (e.g. `SharedKernel` → `CoreUtilities` on the same unchanged code).
Tested on Next.js (100% name reuse) and Directus (87% name reuse) vs 0-60% without seeding.
The CLI currently doesn't send this parameter. On every `supermodel analyze --force`, the LLM generates fresh domain names from scratch.
Fix: When `shards.Generate()` runs a full analysis and a prior `shards.json` cache exists, extract the domain names + subdomain counts and pass them as `previousDomains` query param.
Refs supermodeltools/supermodel-public-api#738
The API (v0.12.0) accepts a `previousDomains` query parameter that seeds the LLM with existing domain names and subdomain counts. This prevents domain name drift across full refreshes (e.g. `SharedKernel` → `CoreUtilities` on the same unchanged code).
Tested on Next.js (100% name reuse) and Directus (87% name reuse) vs 0-60% without seeding.
The CLI currently doesn't send this parameter. On every `supermodel analyze --force`, the LLM generates fresh domain names from scratch.
Fix: When `shards.Generate()` runs a full analysis and a prior `shards.json` cache exists, extract the domain names + subdomain counts and pass them as `previousDomains` query param.
Refs supermodeltools/supermodel-public-api#738