Skip to content

feat(devedores): editar cobrança em aberto#27

Merged
Guiroos merged 6 commits into
mainfrom
feat/devedores-editar-cobranca
Jul 8, 2026
Merged

feat(devedores): editar cobrança em aberto#27
Guiroos merged 6 commits into
mainfrom
feat/devedores-editar-cobranca

Conversation

@Guiroos

@Guiroos Guiroos commented Jul 8, 2026

Copy link
Copy Markdown
Owner

Objetivo

Adiciona a ação Editar a cobranças em aberto no detalhe de um devedor, permitindo trocar descrição, data e observações. O valor é imutável.

Mudanças

  • Action updateDebtCharge (lib/actions/debtors.ts) + updateDebtChargeSchema (lib/validations/debtors.ts): segue o padrão obrigatório (requireUserId → parse → assertOwnsDebtEntry → guard de escopo → update cifrado → revalidatePath). Guard rejeita qualquer lançamento que não seja cobrança aberta (type='charge' e status open/null). referenceMonth é recalculado a partir do novo entryDate. description/notes cifrados via DEK. Sem mudança de schema, sem migration.
  • EditChargeDialog (components/devedores/EditChargeDialog.tsx): dialog responsivo (Dialog desktop / Drawer mobile) no molde do SettleChargeDialog; valor exibido read-only; validação client-side via schema + formatZodErrors; fecha só no sucesso.
  • Fiação em DebtEntryList: ação "Editar" adicionada apenas ao ramo isOpenCharge do RowActions.

Fora do escopo do feature (incluído neste branch)

  • fix(crypto) (bd3327a): fecha gaps de cifragem em escritas derivadas (incomes/debtorEntries de splits, parcelas, resgates, settleCharge/createDebtPayment) e endurece a auth do cron de rollover (timingSafeEqual + recusa quando CRON_SECRET ausente).
  • next.config.mjs: bloco de security headers (CSP, HSTS prod-only, X-Frame-Options, Permissions-Policy) foi bundled junto — vale um smoke-test manual de login (OAuth) e Speed Insights sob a CSP.
  • test(integration) (84eef5e): asserts de integração pré-existentes atualizados para os campos agora cifrados (decifra antes de comparar; lookups pivotados para incomeId porque a cifragem GCM é não-determinística).

Testes

  • Lint / format / typecheck: limpos
  • Unit: 312/312
  • Integração: 158/158 (inclui os novos testes de updateDebtCharge e os asserts corrigidos)

🤖 Generated with Claude Code

Guiroos and others added 6 commits July 7, 2026 21:09
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
…ing do cron

Garante que fluxos derivados (splits de transação, parcelas, resgates,
settleCharge/createDebtPayment) cifrem source/amount/description/notes via DEK
antes de gravar. Cron de rollover passa a validar CRON_SECRET com
timingSafeEqual e recusar quando a env não está definida. Atualiza script de
backfill e docs de cripto/auth.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
…amentos

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
… cifragem de campos derivados

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
@vercel

vercel Bot commented Jul 8, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
mare Ready Ready Preview, Comment Jul 8, 2026 1:37am

@Guiroos Guiroos merged commit 5ba6ef5 into main Jul 8, 2026
7 checks passed
@Guiroos Guiroos deleted the feat/devedores-editar-cobranca branch July 8, 2026 02:57
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant