feat(frontend): IA > Scorecards, Prompts, Configurações
Três telas novas fecham quase todo o menu IA: Scorecards (critérios ponderados, array dinâmico como no Dialplan), Prompts (templates com versionamento — editar = criar versão + ativar numa ação só, já que não existe endpoint pra listar histórico), e Configurações (providers BYOK + modelos). Chave de API nunca é reexibida em texto puro, nem uma vez — só preview mascarado, mesmo na resposta de criação. Novo componente Textarea em components/ui/input.tsx (mesmo estilo de Input/Select) — primeira tela que precisa de texto longo. Testado ponta a ponta contra a API real: scorecard, template de prompt (v1 -> editar -> v2 ativada), provider BYOK + modelo referenciando ele. Smoke test de regressão nas 16 telas anteriores do tenant + platform, todas 200. Typecheck limpo no monorepo inteiro. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01BFaBaBSQGhyXGEgtTYZGV8
This commit is contained in:
@@ -114,9 +114,21 @@ export const TENANT_NAV: NavSection[] = [
|
||||
href: "/app/relatorios/ia",
|
||||
description: "Dashboard de IA — score, sentimento, assuntos, compliance",
|
||||
},
|
||||
{ label: "Scorecards" },
|
||||
{ label: "Prompts" },
|
||||
{ label: "Configurações" },
|
||||
{
|
||||
label: "Scorecards",
|
||||
href: "/app/ia/scorecards",
|
||||
description: "Critérios ponderados que a IA avalia em toda chamada analisada",
|
||||
},
|
||||
{
|
||||
label: "Prompts",
|
||||
href: "/app/ia/prompts",
|
||||
description: "Templates de prompt usados na análise e no scorecard",
|
||||
},
|
||||
{
|
||||
label: "Configurações",
|
||||
href: "/app/ia/configuracoes",
|
||||
description: "Providers e modelos de IA — BYOK deste tenant",
|
||||
},
|
||||
],
|
||||
},
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user