App web para escrita de letras com IA: projectos musicais, secções, geração de variações e preenchimento de blanks com rima e sílabas controladas. Pipeline de IA modular, com scoring e validação de coerência. Suporte PT-PT e Jamaican Patois.
Login, projectos, secções, geração de variações e blanks.
prompts · rhymes · syllables · validation · scoring composto.
Dedup generateBlankVariations, supabase helper partilhado, db typed mappers, dedup utils em [projectId]/page.tsx.
Entrada rápida em dev, CTA do landing aponta para /app.
205 testes (syllables, rhymes, prompts, validation, ai, rhymeOptions).
ai.ts usa getModelConfig("high"). Decisão: uso pessoal, qualidade prevalece sobre custo.
lib/rateLimit.ts aplicado nas 3 API routes. 30 req/min por IP.
middleware.ts valida cookie lf_auth. Cookie sincronizado em login, logout e session checks. Pré-requisito de deploy.
resolveRhymeReference (9), extractBlankContext edge cases (4), computeRhymeOptions (7), redundância gimme/lemme (1).
Few-shot Patois (gimme/lemme), checkCoherence penaliza redundância de subject pronouns. Fix encoding coraç□□o → coração.
gpt-4o + prompts melhorados. Falta validação manual com casos reais de uso PT-PT/Patois.
788 → 636 linhas (-152). Próximos: extrair useBlankGeneration e useProjectData. Alvo <300 linhas.
docs/DEPLOY.md pronto. Pré-requisito manual: rotar credenciais Supabase no dashboard.