Commit graph

1167 commits

Author SHA1 Message Date
Francisco Solla
4cccc4608c
Merge pull request #367 from fsolla/agent/359-liderancas-coluna-municipios
B155 — Coluna de lideranças na tabela de municípios (espelho de Assessores)
2026-08-04 02:23:11 -03:00
Francisco Ignácio Fontoura Solla
596085c977 feat(campanha): B155 — coluna de lideranças na lista de municípios
Espelho da coluna de Assessores: chips com nome do contato, popover/sheet
com Command + delta otimista e criação inline (Nome + Celular). Sem
migration — leitura reversa de leadership.municipalities no bundle e
escrita reusando as actions B34/wizard; rota POST
/campanha/municipios/leaderships via campaignJsonMutationRoute.
2026-08-04 01:49:55 -03:00
Francisco Solla
d2fa396717
Merge pull request #366 from fsolla/agent/353-escala-dry-acoes-rapidas
C86+ — pathname de lista das ações rápidas em fonte única (isListPath)
2026-08-04 01:40:08 -03:00
Francisco Ignácio Fontoura Solla
b74268714c C86+ — simplify: JSDoc do contrato home, testes de borda e nota no impl plan
Fixes do /simplify (3 revisores read-only): JSDoc de normalizePathname/isListPath
documentando o invariante (homes nunca são '/' nem terminam em slash), teste de
multi-slash e inputs degenerados, comentário de isCampaignHomePath encurtado.
Sem mudança de comportamento.
2026-08-04 01:17:53 -03:00
Francisco Ignácio Fontoura Solla
4a90fb19ec C86+ — pathname de lista das ações rápidas em fonte única (isListPath)
Extrai isListPath + normalizePathname exportados em campaignQuickActionPaths.ts
e migra os 9 wrappers (7 públicos + 2 privados) + a 3a cópia de normalize em
campaignPageChrome.ts. Refactor estrutural sem mudança de comportamento;
derivação de regex de detalhe numérico adiada (gatilho: 3o vertical [id]).
Inclui docs/plans/escala-dry-pos-acoes-rapidas-impl.md e o fix de format
pré-existente de docs/plans/liderancas-coluna-municipios.md (bloqueava format:check).
2026-08-04 01:14:35 -03:00
Francisco Solla
53a6c49a96
Merge pull request #365 from fsolla/plan/municipios-table-columns
docs: plano B158 — colunas responsivas municipios (sem scroll horizontal)
2026-08-04 00:54:13 -03:00
Francisco Ignácio Fontoura Solla
236853aeaf docs: plano B158 — colunas responsivas municipios (sem scroll horizontal)
Related #364
2026-08-04 00:52:23 -03:00
Francisco Ignácio Fontoura Solla
22038380cb docs: plano B158 — colunas responsivas municipios (sem scroll horizontal)
Related #364
2026-08-04 00:51:31 -03:00
Francisco Solla
720ba8bb4b
Merge pull request #363 from fsolla/plan/b157-dobradinhas-coluna-municipios
docs(plan): B157 — coluna de dobradinhas na lista de municípios (+ criação inline)
2026-08-04 00:47:55 -03:00
Francisco Ignácio Fontoura Solla
58670bbb16 docs(plan): B157 — coluna de dobradinhas na lista de municípios (+ criação inline) 2026-08-04 00:46:33 -03:00
Francisco Solla
d10ef3fb42
Merge pull request #361 from fsolla/agent/plan-360-dobradinha-advisors
docs(plan): B156 — Assessores por dobradinha (Related #360)
2026-08-04 00:24:15 -03:00
Francisco Ignácio Fontoura Solla
c84dce4ed1 style: format liderancas-coluna-municipios.md 2026-08-04 00:22:19 -03:00
Francisco Ignácio Fontoura Solla
086d2412c8 docs(plan): B156 — Assessores por dobradinha
Related #360
2026-08-04 00:22:11 -03:00
Francisco Ignácio Fontoura Solla
04c2a5276b plan: B155 — coluna de lideranças na tabela de municípios
Related #359
2026-08-04 00:12:11 -03:00
Francisco Solla
464b69884c
Merge pull request #357 from fsolla/agent/352-criar-assessor-inline-popover-municipios
B154 — criar assessor inline no popover da lista de municípios
2026-08-03 23:33:40 -03:00
Francisco Ignácio Fontoura Solla
5a52bb0efa fix(int): batch B19 usa municípios alocados — remove raça com cap de assessores
O teste 'assigns and removes multiple municipalities in one batch' escolhia o
segundo município com id not_equals cru; sob ~48 workers paralelos podia cair
num município que um spec paralelo (cap 10 do B27/B154) acabara de encher,
fazendo o batch estourar o teto. getMunicipality() aloca município
globalmente único e purga resíduo.
2026-08-03 23:13:01 -03:00
Francisco Ignácio Fontoura Solla
26b2205c3a B154 — criar assessor inline no popover da lista de municípios
Closes #352

- POST /campanha/municipios/advisors aceita body de criação (name) na union;
  createMunicipalityAdvisorRecord cria campaignUser advisor (stub
  <slug>@criado.invalid, senha aleatória) e atribui ao município na mesma
  transação (cap 10 com rollback, lock municipality-advisors:{id})
- MunicipalityAdvisorCreateProvider compartilha o assessor criado entre linhas;
  opção "+ Criar assessor" e chip otimista com id temporário no control
- advisorNameSchema unificado em primitives.ts; predicado de placeholder cobre
  @criado.invalid (reset de senha e célula de e-mail tratam stubs inline)
- Destrava o spec e2e de municipios (falhas pré-existentes em main): key
  warning do fragment trailing de MunicipalityFilters; settle-wait da animação
  do Drawer no teste B136
2026-08-03 22:46:06 -03:00
Francisco Solla
5663cbc769
Merge pull request #356 from fsolla/chore/agent-skills-reorg
chore(agents): reorganiza árvore de skills — .claude/.cursor → .agents
2026-08-03 21:27:00 -03:00
Francisco Ignácio Fontoura Solla
a2fbcb9c00 chore(agents): reorganiza árvore de skills — .claude/.cursor → .agents
- Remove .claude/skills (symlinks) e a árvore .cursor (rules, hooks, skills)
- Adiciona .agents/ com skills (+ references/), rules/, hooks/ e scripts
- Adiciona .codex/hooks.json (hook do impeccable)
- Corrige referências .cursor → .agents em environment.json, hooks.json e AGENTS.md
2026-08-03 21:24:11 -03:00
Francisco Solla
ca53da5cdc
Merge pull request #355 from fsolla/agent/22-acoes-rapidas-apoiadores
docs(changelog): B86 — ações rápidas apoiadores (staff)
2026-08-03 21:17:40 -03:00
Francisco Ignácio Fontoura Solla
18c9f34bb1 docs(changelog): B86 — ações rápidas apoiadores (staff) 2026-08-03 21:16:18 -03:00
Francisco Solla
8f88c93429
Merge pull request #354 from fsolla/agent/22-acoes-rapidas-apoiadores
B86 — Ações rápidas — Apoiadores (staff): catálogo no FAB/overlay
2026-08-03 21:14:36 -03:00
Francisco Ignácio Fontoura Solla
cf09cb548d format: Prettier 2026-08-03 21:06:52 -03:00
Francisco Ignácio Fontoura Solla
d200a1b012 B86 — ações rápidas — apoiadores (staff): catálogo no FAB/overlay 2026-08-03 21:03:13 -03:00
Francisco Ignácio Fontoura Solla
ad3c185d52 docs(plan): B154 — criar assessor inline no popover da lista de municípios
Related #352
2026-08-03 20:40:24 -03:00
Francisco Solla
d9db139719
Merge pull request #351 from fsolla/cursor/pool-i349-c89de3ae-f9e7
B153 — Editar nome, e-mail e celular da liderança (lista + detalhe)
2026-08-03 11:54:41 -03:00
Cursor Agent
199c83533b
format: Prettier 2026-08-03 14:10:07 +00:00
Cursor Agent
607eecd12b
B153 — simplify: phone assert helper, displayValue interno
Co-authored-by: Francisco Solla <fsolla@users.noreply.github.com>
2026-08-03 14:09:14 +00:00
Cursor Agent
bb4c1ab199
B153 — editar nome, e-mail e celular da liderança (lista + detalhe)
- leadershipContactUpdateSchema + updateLeadershipContactRecord
- LeadershipContactFieldControl (lápis → input → blur-save)
- Lista e bloco Contato no detalhe
- Int tests para update, conflito de telefone e escopo

Co-authored-by: Francisco Solla <fsolla@users.noreply.github.com>
2026-08-03 14:02:59 +00:00
Francisco Solla
6c6fccfd76
Merge pull request #350 from fsolla/cursor/30255561
B153 — plano: editar contato lideranças (lista + detalhe)
2026-08-03 10:27:21 -03:00
Francisco Ignácio Fontoura Solla
2fbd9a6e62 style(plans): format B153 intention plan with Prettier
Related #349
2026-08-03 10:25:41 -03:00
Francisco Ignácio Fontoura Solla
fa0178583d docs(plans): intenção B153 — editar contato na lista/detalhe de lideranças
Related #349
2026-08-03 10:24:36 -03:00
Francisco Solla
c7243acba8
Merge pull request #348 from fsolla/cursor/p5-p1-notification-push-commit-ed58
P5-P1 — Push de notificação só após commit da transação
2026-08-03 01:55:59 -03:00
Cursor Agent
573b0235f1
merge main and close Pass 5 P1 ledger row
Resolve CHANGELOG/GUARDRAILS conflicts (keep audit entry + vivo guard)
and mark the P5-P1 TECH-DEBT row closed with the remediation.
2026-08-03 04:45:27 +00:00
Cursor Agent
fb75f7235b
fix(P5-P1): schedule campaign notification push after txn commit
queueMicrotask under req.transactionID raced withPayloadTransaction
commit. Register after-commit callbacks, soft-fail missing notification
rows on send, and pin the schedule with a convention unit spec.
2026-08-03 04:40:38 +00:00
Francisco Solla
5a38bce4f8
Merge pull request #347 from fsolla/cursor/engineering-audit-pass-ed58
Pass 5 — Auditoria de engenharia (artefatos)
2026-08-03 01:37:40 -03:00
Cursor Agent
a5c414199c
docs: format Pass 5 audit artifacts with Prettier 2026-08-03 04:36:11 +00:00
Cursor Agent
36ec79f2c2
docs: Pass 5 engineering audit artifacts
Ledger, quality-plan section, entrega-engenharia-p5, GUARDRAILS harvest
(empty miss queue), TESTING e2e count 17/51, and CHANGELOG entry for the
2026-08-03 autonomous audit (delta since Pass 4).

Co-authored-by: Francisco Solla <fsolla@users.noreply.github.com>
2026-08-03 04:35:45 +00:00
Francisco Solla
e20bbd2718
Merge pull request #344 from fsolla/cursor/pool-i331-584ba384-8364
B148 — Município v2 — conta local (P/M/O + cobertura + classe)
2026-08-02 22:50:14 -03:00
Cursor Agent
673c5f3926
B148 — conta local na v2 (P/M/O + cobertura + classe)
- loadMunicipalityV2ContaData + MunicipalityV2LocalAccountSection
- Inline edit-in-place com cenário ativo local para cobertura
- Extract MunicipalityTerritorialClassRow do card E8
- Integra com B149 rede e B150 agora na mesma página v2
- Impl plan docs/plans/municipio-v2-conta-local-impl.md
2026-08-03 01:27:53 +00:00
Francisco Solla
2998294b07
Merge pull request #342 from fsolla/cursor/pool-i334-e686dce1-7683
B151 — Município v2 — ações secundárias no FAB
2026-08-02 22:19:11 -03:00
Cursor Agent
9325380305
fix: resolve rebase conflict markers in v2 page 2026-08-03 01:03:19 +00:00
Cursor Agent
30a5a8a5e3
B151 — FAB secundário no detalhe município v2 (#334)
- Catálogo v2 de ações rápidas: dossiê, eleições, nova liderança, giro
- Integra no chassis B126 via registry + context sync na rota v2
- Omitido registrar sinal (já na faixa de status B147)

Co-authored-by: Francisco Solla <fsolla@users.noreply.github.com>
2026-08-03 01:03:10 +00:00
Francisco Solla
2414001606
Merge pull request #343 from fsolla/cursor/pool-i333-5914f625-bd1e
B150 — Município v2 bloco Agora (encaminhamento + sugestão + visita)
2026-08-02 21:53:38 -03:00
Francisco Solla
d134dd0462
Merge pull request #346 from fsolla/cursor/pool-i315-94cacb95-bf11
B145 — Detalhe de entidade — título no header (sem hero espaçoso)
2026-08-02 21:52:20 -03:00
Francisco Solla
7753470a3b
Merge pull request #345 from fsolla/cursor/pool-i296-f91a8b70-0be4
OPS18 — Promote plan-issue dual (agente + Action no merge)
2026-08-02 21:45:56 -03:00
Cursor Agent
24611e4e35
fix: resolve v2 page merge with B149 network section 2026-08-03 00:39:37 +00:00
Cursor Agent
ffe7eca629
test(e2e): assert assessoria on dossiê tab after B145 hero removal 2026-08-03 00:29:48 +00:00
Cursor Agent
c62fe67809
test(e2e): assert entity identity in shell chrome (B145) 2026-08-03 00:29:48 +00:00
Cursor Agent
33d2e5ba01
chore: format B145 detail pages 2026-08-03 00:29:48 +00:00