Skip to content

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)