| .. |
|
access
|
feat(campaign): C149 — botão Conectar com o Google (OAuth) substitui a configuração manual da service account (Closes #934)
|
2026-09-12 19:49:24 -03:00 |
|
advisor
|
B142 — format + impl plan deferred debts note
|
2026-08-02 23:09:01 +00:00 |
|
ai
|
chore(ai): Sollinha no nome canônico deepseek-flash (B201)
|
2026-09-12 02:47:25 -03:00 |
|
contacts
|
feat(C139): página /campanha/contatos — lista desktop com células editáveis, criação e filtros
|
2026-08-13 14:29:11 -03:00 |
|
demand
|
feat(C143): demandas visíveis apenas para responsáveis explícitos + candidato/coordenador
|
2026-08-19 23:55:07 -03:00 |
|
homeSearch
|
feat(C112): múltiplos telefones por pessoa — Contact.phones array (ordem = prioridade)
|
2026-08-11 10:47:02 -03:00 |
|
leadership
|
feat(C119): status de apoio 'Lembrança' em lideranças — enum, badge e exclusão de pendências
|
2026-08-11 14:52:49 -03:00 |
|
municipality
|
feat(campaign): C88 deliberação na atualização — responsável, fio e resolvido (Closes #397)
|
2026-08-23 18:58:26 -03:00 |
|
notification
|
fix(OPS83-recurr): cast rotativa do verify #16 — serializar admin atrás do frontend (stub IG compartilhado) + notificação pula recipient sumido em vez de abortar transação
|
2026-08-24 15:11:39 -03:00 |
|
organization
|
B139 — tipo na omnibox de organizações
|
2026-08-02 23:02:46 +00:00 |
|
people
|
C130: ajustes da tabela desktop de pessoas (contato completo, base sob o nome, caret, tooltips, Dobra em, filtro/ordenação por partido)
|
2026-08-12 16:01:25 -03:00 |
|
person
|
feat(C141): perfis de permissão por assessor — Visão × Edição configuráveis, enforcement fail-closed (Closes #105)
|
2026-08-20 14:25:01 -03:00 |
|
socialFeed
|
S2-FOLLOWUP (#775) — validate do itemId YouTube deixa de ser código morto
|
2026-08-24 23:46:57 -03:00 |
|
stateDeputy
|
feat(campanha): B163 — editar contatos das dobradinhas
|
2026-08-06 16:52:55 -03:00 |
|
supporter
|
feat(campaign): C144 — forms de escrita com options de município write-scoped (Closes #769)
|
2026-08-24 18:37:59 -03:00 |
|
territory
|
feat(campaignTerritories): repintar a lista de Territórios no padrão da lista de Municípios (B175)
|
2026-08-08 23:58:54 -03:00 |
|
visit
|
feat(campaign): C144 — forms de escrita com options de município write-scoped (Closes #769)
|
2026-08-24 18:37:59 -03:00 |
|
webauthn
|
fix(e2e): WebAuthn on prod build, saved-filters navigation, Vercel scripts
|
2026-07-30 17:37:20 -03:00 |
|
activityAgendaOmnibox.ts
|
fix(C94): draft mirror p/ picks cumulativos no omnibox + simplificações do /simplify
|
2026-08-09 04:36:02 -03:00 |
|
activityDetailPageData.ts
|
C11: picker remoto de atividades na demanda + paginação de vínculos
|
2026-08-01 06:37:53 +00:00 |
|
activityDetailTabUi.ts
|
C11: picker remoto de atividades na demanda + paginação de vínculos
|
2026-08-01 06:37:53 +00:00 |
|
activityFormData.ts
|
feat(C151): marca atividade como evento público
|
2026-09-12 20:28:59 -03:00 |
|
activityLeadershipOptions.ts
|
feat(C112): múltiplos telefones por pessoa — Contact.phones array (ordem = prioridade)
|
2026-08-11 10:47:02 -03:00 |
|
activityOmnibox.ts
|
feat(campaign): C14 remodel activity for agenda paradigm (#389)
|
2026-08-06 05:20:05 -03:00 |
|
activityOverlayErrors.ts
|
feat(C123): agenda — overlay modal central como única superfície de criação/edição de atividade (Closes #667)
|
2026-08-12 14:16:20 -03:00 |
|
activityPageData.ts
|
feat(C123): agenda — overlay modal central como única superfície de criação/edição de atividade (Closes #667)
|
2026-08-12 14:16:20 -03:00 |
|
activityRelationOptions.ts
|
C11: picker remoto de atividades na demanda + paginação de vínculos
|
2026-08-01 06:37:53 +00:00 |
|
activityResponsibleSearch.ts
|
feat(C112): múltiplos telefones por pessoa — Contact.phones array (ordem = prioridade)
|
2026-08-11 10:47:02 -03:00 |
|
activityUi.ts
|
feat(C123): agenda — overlay modal central como única superfície de criação/edição de atividade (Closes #667)
|
2026-08-12 14:16:20 -03:00 |
|
activityViewModels.ts
|
feat(C151): marca atividade como evento público
|
2026-09-12 20:28:59 -03:00 |
|
advisorData.ts
|
feat(C141): perfis de permissão por assessor — Visão × Edição configuráveis, enforcement fail-closed (Closes #105)
|
2026-08-20 14:25:01 -03:00 |
|
calendarFeed.ts
|
feat(C114): agenda da campanha espelhada no Google Calendar com notificação (push Teqo → Google)
|
2026-08-11 13:53:51 -03:00 |
|
campaignAccess.ts
|
feat(campaign): C88 deliberação na atualização — responsável, fio e resolvido (Closes #397)
|
2026-08-23 18:58:26 -03:00 |
|
campaignActionContext.ts
|
B32+: share the campaign JSON route wrapper, fetch helper and cell auto-save.
|
2026-07-28 08:07:29 -03:00 |
|
campaignAuditFields.ts
|
Engineering Pass 3: consolidate patterns and lock them with guards.
|
2026-07-29 06:11:29 -03:00 |
|
campaignAuth.ts
|
style: format campaignAuth.ts
|
2026-08-01 06:10:33 +00:00 |
|
campaignBiometricsPrompt.ts
|
Deliver B40: biometric login for /campanha.
|
2026-07-28 10:59:23 -03:00 |
|
campaignColumnVisibilityCookie.ts
|
feat: distinguish municipality column defaults from explicit visibility
|
2026-08-05 10:49:58 -03:00 |
|
campaignConsent.ts
|
feat(S9): captura de novidades da campanha na home pública (form + CTA do hero)
|
2026-08-20 02:19:58 +00:00 |
|
campaignDashboardData.ts
|
style: prettier campaign snapshot utilities
|
2026-08-01 06:34:25 +00:00 |
|
campaignDemandData.ts
|
feat(C143): demandas visíveis apenas para responsáveis explícitos + candidato/coordenador
|
2026-08-19 23:55:07 -03:00 |
|
campaignEntityActions.ts
|
B157 — coluna de dobradinhas na lista de municípios (+ criação inline)
|
2026-08-04 02:53:43 -03:00 |
|
campaignFormActionError.ts
|
OPS14 — form-action guard sweeps ladder, not filename
|
2026-08-02 16:47:42 +00:00 |
|
campaignFormFields.ts
|
E11 post-rebase simplify: clamp the composed rationale, extract firstFormActionMessage at its 3rd call site, keep metrics server-side.
|
2026-07-28 14:03:29 -03:00 |
|
campaignGeolocation.ts
|
B14: municipio mais proximo (atalho geo no Inicio staff)
|
2026-07-26 17:33:33 -03:00 |
|
campaignGoals.ts
|
E9 /simplify: consolidate duplicated helpers, dead passthrough, comment drift
|
2026-07-25 02:24:18 -03:00 |
|
campaignHomeTracking.ts
|
merge(OPS75): convergência Forgejo→GitHub — GitHub como fonte única
|
2026-08-21 01:41:18 -03:00 |
|
campaignInvite.ts
|
Pass 2 W2: correcoes de fronteira lib/utilities e client boundary
|
2026-07-25 14:38:41 -03:00 |
|
campaignInviteCreation.ts
|
feat(C112): múltiplos telefones por pessoa — Contact.phones array (ordem = prioridade)
|
2026-08-11 10:47:02 -03:00 |
|
campaignInviteOrigin.ts
|
Tooling: prettier como autoridade de formatacao (organize-imports deterministico, scripts format/format:check, normalizacao mecanica de 312 arquivos; artefatos gerados e migrations excluidos via .prettierignore)
|
2026-07-25 17:22:20 -03:00 |
|
campaignInvitePageData.ts
|
feat(C112): múltiplos telefones por pessoa — Contact.phones array (ordem = prioridade)
|
2026-08-11 10:47:02 -03:00 |
|
campaignInviteRedemption.ts
|
fix(campaignInvite): C121 — unifica chave de lock da redenção com contact-ficha (Closes #885)
|
2026-08-24 22:51:15 -03:00 |
|
campaignInviteRepository.ts
|
fix(campaignInvite): C121 — unifica chave de lock da redenção com contact-ficha (Closes #885)
|
2026-08-24 22:51:15 -03:00 |
|
campaignJsonMutationRoute.ts
|
Engineering Pass 3: consolidate patterns and lock them with guards.
|
2026-07-29 06:11:29 -03:00 |
|
campaignListUrl.ts
|
feat(B176): filtrar municípios por Dobradinha/Liderança/Partido + coluna Dobradinhas ao assessor
|
2026-08-09 03:19:54 -03:00 |
|
campaignPageActor.ts
|
fix(audit-p6-2): keep actor-options inline — exported options type tripped knip types gate
|
2026-08-25 11:29:03 -03:00 |
|
campaignPasswordReset.ts
|
Add campaign password reset, profile photo, and RS+ follow-up plan.
|
2026-07-19 05:26:56 -03:00 |
|
campaignPushClient.ts
|
feat(push): opt-in automático e fix do prompt nativo no /campanha
|
2026-08-10 21:14:56 -03:00 |
|
campaignPwa.ts
|
feat(push): opt-in automático e fix do prompt nativo no /campanha
|
2026-08-10 21:14:56 -03:00 |
|
campaignPwaClient.ts
|
Tooling: prettier como autoridade de formatacao (organize-imports deterministico, scripts format/format:check, normalizacao mecanica de 312 arquivos; artefatos gerados e migrations excluidos via .prettierignore)
|
2026-07-25 17:22:20 -03:00 |
|
campaignRelationOptions.ts
|
feat(campaign): C144 — forms de escrita com options de município write-scoped (Closes #769)
|
2026-08-24 18:37:59 -03:00 |
|
campaignSavedFilterStore.ts
|
feat(C100): lista unificada de pessoas em /campanha/pessoas
|
2026-08-10 13:45:46 -03:00 |
|
campaignStubEmail.ts
|
feat(C128): ciclo de vida das capacidades pelas células de /campanha/pessoas (Closes #695)
|
2026-08-12 15:29:56 -03:00 |
|
campaignUserProfile.ts
|
Pass 2 W4b: zero exports mortos; knip exports/types/enumMembers em ERROR no CI
|
2026-07-25 15:51:52 -03:00 |
|
campaignVoteSummarySnapshot.ts
|
style: prettier campaign snapshot utilities
|
2026-08-01 06:34:25 +00:00 |
|
consentContentHash.ts
|
Ship /campanha nuclei MVP with RBAC, invites, and vote estimates.
|
2026-07-18 15:01:56 -03:00 |
|
contactIdentity.ts
|
fix(contact): C120 — serializa o append de telefone no reuso com lock de ficha (Closes #663)
|
2026-08-24 19:03:29 -03:00 |
|
contactPhoneLocks.ts
|
fix(contact): C120 — serializa o append de telefone no reuso com lock de ficha (Closes #663)
|
2026-08-24 19:03:29 -03:00 |
|
dashboardPriorityMunicipalities.ts
|
Engineering Pass 3: consolidate patterns and lock them with guards.
|
2026-07-29 06:11:29 -03:00 |
|
detailTabUi.ts
|
C13: renomeia "Plano de Acao" para "Atividade" em toda a vertical /campanha
|
2026-07-25 20:50:38 -03:00 |
|
documentReads.ts
|
Guardas programaticas: fronteira lib/ (no-restricted-imports), ban de consent id hardcoded, codebaseConventions.unit.spec (server-only, copy Praca/Nucleo, listas legadas do eslint, wrappers de formActions), ciclo do payload.config quebrado (documents/globals divididos em tags+reads), timeout global do int suite, personName schema-valido, consent drafts Onda 0 p/ Municipio
|
2026-07-25 18:02:02 -03:00 |
|
documents.ts
|
Guardas programaticas: fronteira lib/ (no-restricted-imports), ban de consent id hardcoded, codebaseConventions.unit.spec (server-only, copy Praca/Nucleo, listas legadas do eslint, wrappers de formActions), ciclo do payload.config quebrado (documents/globals divididos em tags+reads), timeout global do int suite, personName schema-valido, consent drafts Onda 0 p/ Municipio
|
2026-07-25 18:02:02 -03:00 |
|
drizzleBulk.ts
|
Tooling: prettier como autoridade de formatacao (organize-imports deterministico, scripts format/format:check, normalizacao mecanica de 312 arquivos; artefatos gerados e migrations excluidos via .prettierignore)
|
2026-07-25 17:22:20 -03:00 |
|
electionCache.ts
|
Pass 2 W2: correcoes de fronteira lib/utilities e client boundary
|
2026-07-25 14:38:41 -03:00 |
|
electionCandidateOptions.ts
|
Pass 2 W2: correcoes de fronteira lib/utilities e client boundary
|
2026-07-25 14:38:41 -03:00 |
|
electionResultsImport.ts
|
Tooling: prettier como autoridade de formatacao (organize-imports deterministico, scripts format/format:check, normalizacao mecanica de 312 arquivos; artefatos gerados e migrations excluidos via .prettierignore)
|
2026-07-25 17:22:20 -03:00 |
|
entityNotFound.ts
|
Engineering Pass 3: consolidate patterns and lock them with guards.
|
2026-07-29 06:11:29 -03:00 |
|
extractFirstImageFromLexical.ts
|
feat: Add schema-dts to package.json and update SEO metadata
|
2026-05-01 02:13:39 -03:00 |
|
formatRelativeAge.ts
|
Add recent visits panel to /campanha and register VR+ simplify follow-ups.
|
2026-07-19 04:06:14 -03:00 |
|
globalReads.ts
|
Guardas programaticas: fronteira lib/ (no-restricted-imports), ban de consent id hardcoded, codebaseConventions.unit.spec (server-only, copy Praca/Nucleo, listas legadas do eslint, wrappers de formActions), ciclo do payload.config quebrado (documents/globals divididos em tags+reads), timeout global do int suite, personName schema-valido, consent drafts Onda 0 p/ Municipio
|
2026-07-25 18:02:02 -03:00 |
|
globals.ts
|
Guardas programaticas: fronteira lib/ (no-restricted-imports), ban de consent id hardcoded, codebaseConventions.unit.spec (server-only, copy Praca/Nucleo, listas legadas do eslint, wrappers de formActions), ciclo do payload.config quebrado (documents/globals divididos em tags+reads), timeout global do int suite, personName schema-valido, consent drafts Onda 0 p/ Municipio
|
2026-07-25 18:02:02 -03:00 |
|
googleCalendarClient.ts
|
feat(campaign): C150 — calendário principal escolhido pelo candidato/coordenador + inscrição de staff no Google (Closes #935)
|
2026-09-12 21:01:12 -03:00 |
|
googleCalendarOAuth.ts
|
feat(campaign): C149 — botão Conectar com o Google (OAuth) substitui a configuração manual da service account (Closes #934)
|
2026-09-12 19:49:24 -03:00 |
|
googleCalendarSync.ts
|
refactor(campaign): C150 — simplify (catch/sessão do picker, leitura única, webcal morto) + changelog e débito C156
|
2026-09-12 21:01:12 -03:00 |
|
googleCalendarSyncHooks.ts
|
fix(campaign): C114-LOCK — hooks do sync do Google Calendar seguram row lock por I/O de rede (Closes #870)
|
2026-08-24 22:25:23 -03:00 |
|
hookFilledData.ts
|
Add the tooling gate: knip, CI, zero-warning lint, as-never ban
|
2026-07-23 23:06:12 -03:00 |
|
leaderContactsPageData.ts
|
feat(C112): múltiplos telefones por pessoa — Contact.phones array (ordem = prioridade)
|
2026-08-11 10:47:02 -03:00 |
|
leadershipConflict.ts
|
feat(C128): ciclo de vida das capacidades pelas células de /campanha/pessoas (Closes #695)
|
2026-08-12 15:29:56 -03:00 |
|
loadNamesByIds.ts
|
style(C89): formata (prettier)
|
2026-08-08 23:11:05 -03:00 |
|
mediaStorage.ts
|
ops(OPS52): migra a media de produção do Vercel Blob para o Garage S3
|
2026-08-17 22:36:34 -03:00 |
|
onda0Provision.ts
|
Deliver Onda 0 MVP: provisional Consent, privacy policy, and /privacidade.
|
2026-07-19 03:38:21 -03:00 |
|
organizationData.ts
|
chore: format + e2e manifest mappings for B128 omnibox modules
|
2026-08-02 20:56:12 +00:00 |
|
payloadTransaction.ts
|
fix(P5-P1): schedule campaign notification push after txn commit
|
2026-08-03 04:40:38 +00:00 |
|
postgresTransactionLocks.ts
|
Engineering Pass 3: consolidate patterns and lock them with guards.
|
2026-07-29 06:11:29 -03:00 |
|
posts.ts
|
feat(S7): cards 'Acompanhe de perto' sem raio, borda, sombra ou chip; capa de borda a borda (Closes #90)
|
2026-08-19 19:39:09 +00:00 |
|
recentVisits.ts
|
Pass 2 W4b: zero exports mortos; knip exports/types/enumMembers em ERROR no CI
|
2026-07-25 15:51:52 -03:00 |
|
revalidateRequest.ts
|
feat(S2): seção de conteúdos da home de campanha inclui os vídeos do YouTube
|
2026-08-18 15:23:50 -03:00 |
|
sameOriginRequest.ts
|
fix(campanha): guarda CSRF mesma-origem proxy-aware atrás do túnel (#913)
|
2026-08-25 17:32:23 -03:00 |
|
seo.ts
|
B33+: close the /simplify rounds on the shared list filter hook
|
2026-07-27 09:39:15 -03:00 |
|
signatureExport.ts
|
feat(C112): múltiplos telefones por pessoa — Contact.phones array (ordem = prioridade)
|
2026-08-11 10:47:02 -03:00 |
|
stateDeputyConflict.ts
|
feat(C128): ciclo de vida das capacidades pelas células de /campanha/pessoas (Closes #695)
|
2026-08-12 15:29:56 -03:00 |
|
stateDeputyData.ts
|
refactor(C129): simplify — CampaignNameSubline compartilhado (a11y sr-label), guard legenda==nome, sem plumb morto, spec mais forte
|
2026-08-12 12:52:35 -03:00 |
|
stateDeputyListFilters.ts
|
feat(B176): filtrar municípios por Dobradinha/Liderança/Partido + coluna Dobradinhas ao assessor
|
2026-08-09 03:19:54 -03:00 |
|
stateDeputyListUrl.ts
|
feat(B176): filtrar municípios por Dobradinha/Liderança/Partido + coluna Dobradinhas ao assessor
|
2026-08-09 03:19:54 -03:00 |
|
stateDeputyOmnibox.ts
|
feat(B176): filtrar municípios por Dobradinha/Liderança/Partido + coluna Dobradinhas ao assessor
|
2026-08-09 03:19:54 -03:00 |
|
voteEstimateScenarioFields.ts
|
Tooling: prettier como autoridade de formatacao (organize-imports deterministico, scripts format/format:check, normalizacao mecanica de 312 arquivos; artefatos gerados e migrations excluidos via .prettierignore)
|
2026-07-25 17:22:20 -03:00 |
|
votePledgeData.ts
|
Engineering Pass 3: consolidate patterns and lock them with guards.
|
2026-07-29 06:11:29 -03:00 |
|
votePledgeViews.ts
|
Engineering Pass 3: consolidate patterns and lock them with guards.
|
2026-07-29 06:11:29 -03:00 |