Chave xAI no ar, admin de títulos nascendo com erros e gate de validação antes do Grok
Configurei a chave xAI, corrigi erros na tela admin de títulos e defini que o botão Gerar só dispara com dados suficientes.
O dia continuou o Plano Grok 3.0, desta vez com a chave xAI pra ser configurada, a tela admin de títulos pra ser construída, e o prompt do Grok pra ser auditado. Não foi nada em linha reta.
Chave xAI configurada — e o campo “Modelo” que não precisava existir
A primeira dúvida do dia foi antes de fazer qualquer coisa: já tínhamos integração xAI configurada no sistema, ou era pra gerar chave nova? Antes de mexer, pedi resposta objetiva ao Claude Code — “não altere nada, apenas responda”. A resposta: não havia integração existente.
Gerei a chave em console.x.ai e tentei adicionar. Primeira tentativa falhou. Pedi ao Claude Code que investigasse o motivo e apresentasse alternativas antes de sair tentando variações aleatórias. Resolveu.
Com a chave funcionando, virei a atenção pra um input que ficava logo abaixo do campo da chave: “Modelo”. Não sabia pra que servia. Em vez de deduzir, fiz a pergunta direta: esse campo é realmente necessário? A resposta inicial foi confusa, então virei o argumento:
Ao gerar a chave eu não tenho essa informação, apenas tenho a chave como usuário; ter campo que não é autoexplicativo ou não tem na outra ponta pode ser confuso. Este input é realmente necessário? Faça pesquisa externa principalmente na documentação do xAI e Grok.
O Claude Code pesquisou e voltou com a conclusão: o campo era redundante — o modelo já vai no payload de cada requisição, não no setup da credencial. O campo foi removido.
Essa foi a decisão de maior valor do ciclo de setup: menos inputs visíveis pro usuário, menos superfície de confusão, sem perda funcional.
Teste do plano travou no fluxo da admin
Com a chave no ar, fui pro próximo passo do Plano Grok 3.0 e o teste deu erro. Antes de entrar no debug, pedi pro Claude Code confirmar qual era o próximo passo do plano — pra não confundir teste de chave com teste de fluxo completo.
Dois problemas apareceram:
- Botão “gerar prompt” aparecendo numa tela onde não deveria mais existir. Mandei remover.
- Agendamento sem nenhuma sugestão gerada. Não entendia qual era o fluxo: quem dispara, em que tela, com que dado de entrada. Pedi ao Claude Code mapear isso antes de qualquer código.
Página admin de títulos nasceu errada
A sessão continuou na construção da página admin de geração de títulos. Ao abrir, a tela estava vazia — sem cards, sem registros. Questionei:
Tem certeza que foi criado o fluxo de criação de títulos na página admin? Não encontrei cards e o subtopic que me forneceu está dando erro.
O Claude Code confirmou que tinha criado parcialmente: sem cards renderizados e com referência quebrada no subtopic. Corrigiu. A tela voltou ainda vazia: nenhum canal, nenhum registro pra gerar títulos. Outro passe de fix.
Gate de validação antes da chamada ao Grok
O ponto mais importante do dia veio do uso real. Ao clicar em “gerar” num registro, o modal abriu mostrando que tinha muitas informações faltando pra gerar um bom título.
Travei o fluxo. A decisão ficou assim:
Esse modal, que abre ao clicar em gerar, mostra que tem muitas informações faltando para gerar um título para este registro; isso não deveria ser possível — só se pode gerar um título após termos informações necessárias para construção de um bom título.
Virou regra de produto: o botão “gerar” só deve aparecer — ou só deve disparar a chamada ao Grok — quando o registro tiver o mínimo de informação necessário. Se não tiver, o modal exibe o que está faltando, não tenta gerar com dado incompleto.
Gate de validação antes da chamada, não depois. É a diferença entre uma experiência que guia e uma experiência que frustra.
Modal precisa replicar contexto da tela de agendamento
Mais um ajuste que veio do uso: o modal de geração de título não tinha contexto suficiente do vídeo em questão. Especificação passada pro Claude Code:
Para dar informação sobre o vídeo e preencher a parte factual preciso do producao_id, producoes_arquivos_id e possibilidade de ver o vídeo no modal, assim como é na tela de agendamento.
Esses ids já existem no fluxo de agendamento, e a tela de agendamento já embute preview do vídeo. Instrução explícita: reaproveitar o padrão existente em vez de inventar componente novo.
Prompt do Grok auditado contra a própria documentação
Ao revisar o prompt montado pra “Participantes / dados do prompt”, dois problemas ficaram visíveis: alguns campos tinham o texto-label mas estavam sem os dados, e a disposição geral estava confusa.
Mandei o Claude Code pesquisar na documentação do xAI/Grok qual a melhor forma de passar esse tipo de informação estruturada. Voltou com a recomendação e reescreveu a seção de participantes com base nela.
Pra fechar o ciclo, pedi um artefato de validação: lista completa em markdown com todas as perguntas, respostas e dados dos participantes — formatado pra dar diretamente ao próprio Grok 3.0 e perguntar quais campos são redundantes, quais faltam e quais estão mal-formados.
Validação do prompt usando o modelo que vai consumir o prompt. Meta, mas economiza ciclo de tentativa-erro.
Estado do repositório
No elquercarlos, o único commit da janela foi o devlog gerado na execução anterior (b013ba7, dia 09 às 23:38). O restante do dia ficou todo no kmaroteApp, com tudo ainda em working tree — nada commitado até o fim da janela. Volume de mudança foi grande; dá pra esperar vários commits saindo nos próximos dias.
Estatísticas do dia:
Atividade no PC:
- Tempo ativo: 2h28
- AFK: 28h31
- Janela total monitorada: 31h00
Por categoria (do que ficou ativo):
- Coding: 1h07
- Uncategorized: 34min
- Larissa Project: 27min
- AI Chat: 13min
- Communication: 4min
Top apps: Antigravity IDE (1h07) · chrome (1h06) · WhatsApp (10min)
Top sites navegados: <PRIVATE-HOST> · chatgpt.com · <PRIVATE-HOST> · my.sheer.com · console.x.ai
Trabalho com IA:
- Conversas claude.ai: 0
- Sessões Claude Code: 4 (2 longas em kmaroteApp — Grok + admin · 2 curtas em elquercarlos — daily-summary)
Código produzido:
- Commits: 1 (elquercarlos — devlog anterior) · kmaroteApp: 0 commits (working tree)
Devlog do dia:
- 1 draft consolidado (2026-06-10-2330.md)