Decisões Trans-Projeto
Convenções aplicadas aos 3 produtos (Operation · Finance · Sales). Cada uma cross-ref a memória persistente em ~/.claude/projects/-home-adsx/memory/.
Independência dos 3 produtos
- Supabase separados (3 refs) · GitHub separados (3 repos) · domínios separados
- Não fundir: JWT, RLS cross-project, monorepo, libs npm compartilhadas
- Pode: copiar código standalone (CookieBanner, ConsentContext) · alinhar stack
- Memória:
feedback_finance_operation_independentes
Domínio antes do deploy
Registrar domínio + DNS + SSL antes de qualquer subdomínio público. Vale para subdomínios novos. Memória: feedback_dominio_antes_deploy.
ZIPs deploy completos · não incrementais
Sempre gerar ZIP completo · listar manifest no chat · evita confusão "parcial vs full". Memória: feedback_zip_deploy_sempre_completo.
ZIPs separados por produto no Drive
ADSx-Deploys/{adsxoperation,ADSx Finance, adsx-sales}/ · cada um com 1 ZIP (última versão LIVE) · históricas em _archive/<produto>/. Memória: feedback_drive_deploys_estrutura.
Mgmt API SQL pra DDL emergencial
DDL/SQL que PostgREST não faz: curl https://api.supabase.com/v1/projects/<REF>/database/query + ~/.supabase/access-token. Memória: reference_supabase_mgmt_api_sql.
RLS asimétrica é anti-pattern
Auditar SELECT+INSERT+UPDATE+DELETE policies juntas. Inserções com created_by=auth.uid() não negocia. Memória: feedback_rls_asimetria_por_operacao.
Cron-driven RPCs precisam wrapper SECURITY DEFINER sem auth.uid() check
service_role não tem auth.uid(). Criar cron_* wrapper paralelo. Memória: feedback_cron_rpc_wrapper_no_auth_check.
Anthropic API escopo restrito
API key Anthropic só whatsapp-router. Pipelines editoriais via claude -p OAuth Max 20 (zero custo). Memória: feedback_anthropic_api_escopo.
Códigos sempre inline no chat
SQL/scripts/patches pra colar precisam estar visíveis no chat · não só em arquivo. Memória: feedback_codigo_inline_no_chat.
Sem custo USD em forks Claude Code
Daniel usa Max 20 flat-rate OAuth · reportar wall-clock + nº forks + tokens · NUNCA cifrão. Memória: feedback_no_usd_cost_claude_code.
Vite build precisa .env.production
npm run build sem .env.production injeta throw Error silencioso. Validar URL+JWT pós-build. Memória: feedback_vite_build_env_obrigatorio.
rclone Drive throttle global
Scripts com 5+ rclone calls exportam RCLONE_TPSLIMIT=8 + BURST=4 + CHECKERS=4 + RETRIES=5 + LOW_LEVEL_RETRIES=10. Memória: feedback_rclone_drive_throttle.
Tudo vai pro BACKLOG-MESTRE.md
Nada de arquivo paralelo · mestre é único · cron 22:00 seg-sex audita. Memória: feedback_backlog_mestre.
Cross-ref decisões LGPD
lgpd/decisoes.md(4 decisões: L1 DPO formal · L2 base legal · L3 DPAs · L4 retenção)lgpd/data-inventory.md(3 produtos · todas tabelas PII)lgpd/anpd-templates.md(T1-T4)