mirror of
https://github.com/melgarafael/DeskcommCRM.git
synced 2026-10-02 01:28:34 +08:00
Três entregas e três consertos adjacentes.
- **Histórico de leads captados** (aba "Leads recebidos"): quem chegou pelo
formulário, com o que preencheu, quando, de onde e por qual IP — e também
quem NÃO entrou, com o motivo em português. Tabela nova em vez de reusar
`webhook_events_log`, que é arquivo forense e some em D+7/D+90.
- **Ação "Mensagem escrita pela IA"**: agente publicado + instrução do dono do
negócio, com a moldura de abordagem fria. Autoridade e conteúdo em canais
separados (system vs. `<dados id="{nonce}">`).
- **A automação parou de dizer "sucesso" para mensagem que não chegou** — o
relato que originou boa parte da entrega. Junto foram dois silêncios vizinhos:
a janela de envio que era medida no fuso do SERVIDOR (7h–22h virava 4h–19h de
Brasília) e o adiamento que não gravava nada.
Verificado nos 5 portões obrigatórios sobre o SHA 3781ce77: verify,
build-and-size, invariants, e2e, imagens-ok — todos success. `pnpm test:db`
local: 116 arquivos, 868 testes, baseline com install E update ok.
O único check vermelho é o Vercel, que falha igual na main (pré-existente, não
obrigatório).
scripts/
CLI utilities pra operação local e de produção.
Lista
seed-tenant.ts— Cria um tenant manualmente (modo BPO). Placeholder; implementação na Spec 01.
Convenções
- Todos em TypeScript (executar via
npx tsx scripts/<nome>.ts) - Sempre validar input com Zod
- Logar via
console.error(stderr) pra mensagens operacionais;console.log(stdout) só pra output estruturado consumível por pipe - Operações destrutivas exigem flag
--confirmou prompt interativo - Toda mutação relevante gera entrada em
api_audit_logcomactor=script:<nome>