From cde4d4107bc3d6ad1cf10733440c638b2b6648cd Mon Sep 17 00:00:00 2001 From: Francisco Solla Date: Sun, 9 Aug 2026 22:06:37 -0300 Subject: [PATCH] =?UTF-8?q?docs(C99):=20registra=20defers=20com=20gatilho?= =?UTF-8?q?=20e=20explicitamente=20fora=20do=20impl=20plan=20(triage=20p?= =?UTF-8?q?=C3=B3s-merge)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- docs/plans/pessoas-identidade-contact-impl.md | 19 +++++++++++++++---- 1 file changed, 15 insertions(+), 4 deletions(-) diff --git a/docs/plans/pessoas-identidade-contact-impl.md b/docs/plans/pessoas-identidade-contact-impl.md index bcfbdeda..ebbcd836 100644 --- a/docs/plans/pessoas-identidade-contact-impl.md +++ b/docs/plans/pessoas-identidade-contact-impl.md @@ -96,7 +96,18 @@ N/A — C99 não apresenta dados; habilita o dedupe da C100 (um vínculo, não u ## Aceite de engenharia -- [ ] Aceite de produto da intenção ainda coberto (vínculo conta→ficha; assessores responsáveis na liderança; auth intacta; sem backfill) -- [ ] Invariantes AGENTS/engineering-standards (transações + `req.transactionID`; overrideAccess justificado; líderes não leem `estimatedVotes` — não tocado; identificadores em inglês / labels pt-BR) -- [ ] Testes de domínio previstos (int de `contactIdentity` + membership de assessores da liderança + extensão dos specs de advisor/access) -- [ ] Migration aditiva commitada + `generate:types` + importmap se preciso; gates completos (`tsc`, `lint`, `format:check`, `knip`, `check:cycles`, unit+int, build) +- [x] Aceite de produto da intenção ainda coberto (vínculo conta→ficha; assessores responsáveis na liderança; auth intacta; sem backfill) +- [x] Invariantes AGENTS/engineering-standards (transações + `req.transactionID`; overrideAccess justificado; líderes não leem `estimatedVotes` — não tocado; identificadores em inglês / labels pt-BR) +- [x] Testes de domínio previstos (int de `contactIdentity` + membership de assessores da liderança + extensão dos specs de advisor/access) +- [x] Migration aditiva commitada + `generate:types` + importmap se preciso; gates completos (`tsc`, `lint`, `format:check`, `knip`, `check:cycles`, unit+int, build) + +## Adiado com gatilho (triage pós-merge, 2026-08-09) + +- **S6 — ficha órfã em creates name-only concorrentes (sem lock no bare path):** registrar lock ou dedupe quando houver o primeiro caso real de concorrência no bare path (staff/admin-only hoje — probabilidade baixa). +- **S9 — lista de lideranças não carrega `advisors`:** o detail expõe; a coluna "Assessorado" da C100 (#495, já dependente) precisará do view-model de lista com o campo — resolver na execução da C100. + +## Explicitamente fora (triage pós-merge, 2026-08-09) + +- S7 — unlink explícito é transitório (próxima edição re-vincula por phone): comportamento intencional do plano ("vínculo por criação/edição"), documentado no hook; descartado. +- S8 — create com contact explícito + phone divergente: escolha explícita do admin; descartado. +- S12 — drift de mensagem non-postgres: postgres-only na prática; descartado.