Fecha o núcleo comercial da Fase 2/3: motor de precificação de Ofertas (feito diretamente, dado o risco de erro de arredondamento/regra de negócio), Cadastro de Cliente e esqueleto de Contratos (via 2 subagentes em paralelo, salvos manualmente após ambos baterem no limite de gasto mensal da conta — trabalho não commitado nos worktrees foi revisado arquivo a arquivo e copiado para main, com as peças faltantes completadas diretamente). - Quotes: pricing.ts porta as fórmulas do legado (eden.md §7/§8) — needsApproval, faixas de condição de pagamento, efeito legal da fidelidade condicionado a approval_status==='approved'. Fluxo criar→decidir aprovação→fechar negócio (vinculado a um cadastro de cliente, com guarda contra fechamento duplo). - Client Registration: cadastro direto (eden.md §3), MVP autenticado-only (sem token público de autoatendimento, upload ou lookup CNPJ/CEP nesta fase — documentado em comentário). - Contracts: máquina de estados do ADR-0006 imposta via SELECT...FOR UPDATE + tabela de transições, com signed_at/activated_at e histórico de status; 4 das 11 tabelas do ADR-0006 (as demais adiadas). 2 bugs próprios corrigidos antes do commit: UpdateQuoteInput usava COALESCE para campos financeiros (undefined do JS apagaria valor em update parcial) — campos tornados obrigatórios; User.reseller_id/ can_approve_discount faltavam em types.ts apesar das colunas já existirem no banco desde migrations anteriores. Verificado: pnpm turbo run typecheck build (28/28), pnpm test (15/15), e todo o fluxo testado ao vivo via curl contra a stack Docker real, incluindo cenários de erro (transição de status inválida, FK de produto inexistente, fechamento duplo, 401 sem token) e trilha de auditoria conferida no Postgres. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
55 lines
983 B
Plaintext
55 lines
983 B
Plaintext
# Dependencies
|
|
node_modules/
|
|
.pnpm-store/
|
|
|
|
# Build outputs
|
|
dist/
|
|
build/
|
|
.turbo/
|
|
*.tsbuildinfo
|
|
|
|
# Env / secrets
|
|
.env
|
|
.env.*.local
|
|
.env.local
|
|
*.pem
|
|
*.key
|
|
|
|
# Logs
|
|
*.log
|
|
npm-debug.log*
|
|
pnpm-debug.log*
|
|
|
|
# Test / coverage
|
|
coverage/
|
|
.nyc_output/
|
|
|
|
# Editor
|
|
.vscode/*
|
|
!.vscode/extensions.json
|
|
.idea/
|
|
|
|
# OS
|
|
.DS_Store
|
|
Thumbs.db
|
|
|
|
# Purchased third-party theme asset — too large to version; extracted
|
|
# components live in packages/ui instead (see docs/project-inventory.md).
|
|
tema_do_Eden.zip
|
|
|
|
# Scratch space for one-off inventory/extraction work
|
|
.tmp/
|
|
|
|
# Local Postgres data volume if ever bind-mounted for debugging
|
|
infra/docker/pgdata/
|
|
|
|
# Claude Code local overrides (personal, never shared)
|
|
.claude/settings.local.json
|
|
|
|
# Temporary git worktrees created for parallel subagent work — each is its
|
|
# own nested git checkout; never vendor these into the main repo history.
|
|
.claude/worktrees/
|
|
|
|
# Session-local lock file for scheduled wakeups, not project content.
|
|
.claude/scheduled_tasks.lock
|