O sprint final — 30 commits em 48h, zero funcionalidades
Durante seis meses, cada dia de desenvolvimento adicionava algo. Uma funcionalidade, uma tela, um pipeline, uma integração. O contador de commits subia, os arquivos se acumulavam, e o app crescia.
Esta semana, fiz o oposto. 30 commits em 48 horas. Zero funcionalidades. Apenas polimento, correções e preparação para o momento em que o app sai do alpha e entra no mundo real.
Personalização IA — 15 commits para dizer "chega"
A IA do TAMSIV permite que os usuários se apresentem por voz. Você pressiona um botão, descreve sua vida em 30 segundos, e o assistente se adapta. O problema: a tela de configuração tinha 15 bugs sutis.
Um botão escondido por um overlay. Texto cortado em telas pequenas. Um loop infinito quando o usuário interrompia a IA no meio da resposta. O prompt que reiniciava após cada edição. Botões de ação empilhados uns sobre os outros em vez de se disporem verticalmente.
Nenhum desses bugs teria sido encontrado em um teste rápido. Era preciso usar o app como um usuário real — tocar em tudo, interromper no momento errado, voltar, tentar de novo. 15 commits para tornar uma única tela confiável.
Assinaturas passam para modo produção
O sistema de assinaturas Free/Pro/Team existia desde fevereiro. Funcionava no alpha. Mas "funcionar no alpha" e "estar pronto para produção" são duas coisas muito diferentes.
A revisão afetou o texto (esclarecer o que é gratuito vs pago), o design do modal alpha (que não tem mais razão de existir em produção), e principalmente os limites do plano gratuito.
Os pequenos detalhes que mudam tudo
Um botão de parar para o TTS. Quando a IA responde em voz alta e você quer pará-la, antes era preciso silenciar o telefone. Agora um toggle basta.
Escopo rigoroso do LLM. A IA tinha tendência a responder perguntas fora do tema — clima, cultura geral, filosofia. Em produção, precisa ficar focada: tarefas, memos, eventos. Ponto.
O toggle de geração de imagens. Cada conversa pode gerar uma imagem de capa via IA. Mas isso custa créditos. Um switch no header do ditafone permite agora desativar a geração de imagens na hora.
versionCode 30 — o número que importa
Cada build Android tem um número. Estamos no 30. Os 29 anteriores eram alpha — builds para 12 testadores que aceitavam bugs em troca de acesso antecipado. O build 30 é o último antes de qualquer pessoa poder baixar o TAMSIV na Play Store.
É um número comum. Mas representa o momento em que "meu app" se torna "um app". Onde o código não está mais protegido pelo filtro benevolente dos beta testers.
Por que um sprint sem funcionalidades
A tentação do desenvolvedor solo é sempre adicionar mais. Uma funcionalidade leva a outra. O backlog nunca se esvazia. E quanto mais o app cresce, mais cada adição cria interações imprevistas com o resto.
Este sprint me ensinou algo: o polimento não é o inimigo do progresso. É o contrário. Corrigir 15 bugs em uma única tela tornou o app mais sólido do que qualquer nova funcionalidade.
Os usuários não veem commits. Veem um app que funciona — ou que não funciona. E a diferença está nesses 30 commits invisíveis.