Commit graph

1221 commits

Author SHA1 Message Date
Francisco Solla
49a236bfef
Merge pull request #402 from fsolla/plans/b164-c89-nav-atualizacoes
docs: plans B164 bottom nav + C89 updates feed
2026-08-06 04:04:24 +00:00
Francisco Solla
d301832b95 docs: intention plans for B164 mobile bottom nav and C89 updates feed
Related #400 #401
2026-08-06 01:02:13 -03:00
Francisco Solla
a6a395b23a
Merge pull request #399 from fsolla/plans/c87-c88-status-ready
docs: mark C87/C88 plans ready after promote
2026-08-06 03:20:55 +00:00
Francisco Solla
1703117c2c docs: mark C87/C88 plans ready after promote 2026-08-06 00:19:17 -03:00
Francisco Solla
216ad49b72
Merge pull request #398 from fsolla/plans/c87-c88-atualizacao-deliberacao
docs: planos C87/C88 — atualização unificada + deliberação
2026-08-06 03:18:19 +00:00
Francisco Solla
912caf6914 docs: prettier-format C87/C88 intention plans 2026-08-06 00:16:40 -03:00
Francisco Solla
d1a59f82fd docs: intention plans for C87/C88 municipality update remodel
Unify updates (polarity + urgent) and follow with deliberation (assignee, thread, resolved). Related #396 #397.
2026-08-06 00:13:21 -03:00
Francisco Solla
f4ec6c6a4c
Merge pull request #395 from fsolla/plans/b163-plan-ready
docs: mark B163 plan ready after promote
2026-08-06 03:07:06 +00:00
Francisco Solla
7f03fbec91 docs: mark B163 plan ready after promote 2026-08-06 00:05:32 -03:00
Francisco Solla
343ccdcf93
Merge pull request #394 from fsolla/plans/c14-c16-agenda
docs: plans C14–C16 agenda (FullCalendar + sync)
2026-08-06 03:05:15 +00:00
Francisco Solla
16b7327103
Merge pull request #393 from fsolla/plans/b163-editar-campos-lista-dobradinhas
docs: plan B163 — edit dobradinha fields on list
2026-08-06 03:04:57 +00:00
Francisco Solla
5c6a24be18 docs: format C14–C16 intention plans 2026-08-06 00:03:30 -03:00
Francisco Solla
6cebcd12f3 docs: intention plans for C14–C16 agenda calendar track
Register the remodel → FullCalendar → filter import-link sync slice so the queue can claim after promote.
2026-08-06 00:02:52 -03:00
Francisco Solla
35ccb5e8d8 docs: plan B163 — edit dobradinha fields on list
Intention plan for inline edit of name/party/email/phone on
/campanha/dobradinhas (Contact on create, URL by id). Related #391.
2026-08-06 00:02:51 -03:00
Francisco Solla
cfceffc4bd
Merge pull request #387 from fsolla/cursor/sollinha-url-tool-498e
feat(ai): Sollinha buildCampaignLinks tool for canonical /campanha navigation (B162)
2026-08-06 00:34:11 +00:00
Cursor Agent
5f97b6a21c
feat(ai): add buildCampaignLinks tool for Sollinha navigation (B162)
Introduce a closed-catalog URL builder that delegates to existing list/detail
href helpers, with role-based guards for leader lockdown and unrestricted-only
assessor routes. Register the tool in the AI chat and teach the system prompt
when to offer markdown links after resolving entity ids/slugs.

Closes #383
2026-08-06 00:22:11 +00:00
Francisco Solla
f87e382836
fix(campanha): unblock dobradinhas list SSR for Assessores (#386)
* fix(campanha): unblock dobradinhas list SSR for Assessores column

Drop CampaignTableHead description on Assessores — its hover tooltip plus
StateDeputyAdvisorRelationCell breaks production SSR with an undefined element.

* fix(test): keep int gate under Postgres connection ceiling

Cap vitest workers and raise Docker max_connections so high-core laptops
stop failing the suite with cascading "too many clients" / QueryError noise.

* fix(test): do not force eight int workers on CI

An explicit maxWorkers: 8 raised parallelism on 2–4 vCPU runners and
starved shared invite/consent advisory leases (15s timeouts). Cap only
on local high-core hosts; leave CI on Vitest's CPU-relative default.

* style(test): format vitest.config.mts
2026-08-06 00:19:01 +00:00
Francisco Solla
399707fcc6
Merge pull request #385 from fsolla/plans/b162-status-ready
docs: mark B162 plan ready
2026-08-05 22:05:27 +00:00
Francisco Solla
04ca98ac21 docs: mark B162 plan ready after promote 2026-08-05 19:03:53 -03:00
Francisco Solla
b83f7a94f3
Merge pull request #384 from fsolla/plans/b162-sollinha-tool-urls
docs: plan B162 — Sollinha URL navigation tool
2026-08-05 22:03:15 +00:00
Francisco Solla
2ab45ea1ba docs: format B162 Sollinha URL tool plan 2026-08-05 19:00:43 -03:00
Francisco Solla
c77eda21ae docs: plan B162 — Sollinha URL navigation tool
Intention plan for a catalogued campaign-URL tool so Sollinha can link staff to detail/list views. Related #383.
2026-08-05 19:00:20 -03:00
Francisco Ignácio Fontoura Solla
387a36631a docs: add plan for B161 — infinite scroll lists (5 tables) 2026-08-05 17:50:28 -03:00
Francisco Solla
8a44ed5d20
Merge pull request #381 from fsolla/agent/B158-colunas-responsivas-municipios
B158 — Colunas responsivas por largura do conteúdo nos municípios
2026-08-05 18:12:29 +00:00
Francisco Solla
8abf18ecf9 test: stabilize responsive municipality journeys 2026-08-05 15:00:33 -03:00
Francisco Solla
2f8d16881d test: align municipality e2e journeys with responsive columns 2026-08-05 14:24:47 -03:00
Francisco Solla
cc60b82245 fix: force container width past 48rem in iPad test to reveal the table 2026-08-05 12:32:05 -03:00
Francisco Solla
a36b0b2625 simplify: safe fallback for browsers without container queries, trim test overhead 2026-08-05 12:28:17 -03:00
Francisco Solla
150bea2621 feat: make municipality columns follow content width 2026-08-05 11:35:20 -03:00
Francisco Solla
423c61d40b feat: distinguish municipality column defaults from explicit visibility 2026-08-05 10:49:58 -03:00
Francisco Solla
c07976e564
docs: revise B158 responsive columns plan (#380)
Base responsive behavior on the content panel using container queries, preserve territory filtering in the omnibox, and resolve column visibility and single-mount action contracts before implementation.
2026-08-05 12:51:43 +00:00
Francisco Solla
d896041a32
Merge pull request #379 from fsolla/agent/b159-generalizar-colunas-relacao-municipios
B159 — Generalizar colunas de relação nos municípios
2026-08-05 05:25:24 +00:00
Francisco Ignácio Fontoura Solla
9fa701633e feat(campaign): unify municipality relation editors 2026-08-05 02:01:40 -03:00
Francisco Solla
ab1d3a4ac0
Merge pull request #377 from fsolla/fsolla/move-cursor-bootstrap-to-dot-cursor
chore: move Cursor hooks and cloud bootstrap to .cursor/
2026-08-05 04:41:18 +00:00
Francisco Solla
7700bff39d chore: update references to .cursor bootstrap paths
Point environment.json, hooks, skills, and docs at the relocated .cursor/ files.
2026-08-05 01:39:42 -03:00
Francisco Solla
7312f155b6 chore: move Cursor hooks and cloud bootstrap to .cursor/
Relocate environment.json, hooks, and Postgres setup scripts so Cursor discovers them from the canonical project paths.
2026-08-05 01:38:52 -03:00
Francisco Solla
58e35ad0c6
Merge pull request #376 from fsolla/plan/b159-clarify-ui-alignment
docs(plan): clarify B159 UI alignment intent
2026-08-05 04:12:46 +00:00
Francisco Ignácio Fontoura Solla
84abfa1a7e docs(plan): clarify B159 UI alignment intent
The plan previously suggested the UI wouldn't change — only the code would be
refactored. Updated to make explicit that:

- Dobradinhas editor changes from RelationChipCell to the same
  CampaignCellEditOverlay + Command + chips as Assessores/Liderancas.
- Liderancas display gains an avatar stack matching Assessores/Dobradinhas.
- Inline create is always name-only across all three columns (leadership
  phone is added later on the detail page).
- Assessores is the reference — its UI doesn't change.

Related #374
2026-08-05 00:20:48 -03:00
Francisco Ignácio Fontoura Solla
896d957497 chore: migrate .cursor/ references to .agents/ folder
Replace all project-local .cursor/ path references with .agents/ across
rules, skills, environment config, hooks, and ignore files. Keep Cursor
editor paths (~/.cursor/, window.cursor, CURSOR_API_KEY) and vendored
Impeccable editor-hook paths unchanged.
2026-08-05 00:09:09 -03:00
Francisco Solla
ac74145acd
Merge pull request #358 from fsolla/feat/model-selection-deepseek
feat(model-selection): add two-environment split with DeepSeek V4 local alternatives
2026-08-04 23:37:28 -03:00
Francisco Ignácio Fontoura Solla
781360bcf9 docs(plan): B159 — promover status para ready
Related #374
2026-08-04 06:39:59 -03:00
Francisco Ignácio Fontoura Solla
35907e02f0 docs(plan): B159 — generalizar colunas de relação na lista de municípios
Related #374
2026-08-04 06:39:15 -03:00
Francisco Solla
4b79f00125
Merge pull request #373 from fsolla/feature/ai-chat-sollinha
feat: AI chat 'Sollinha' — campaign data assistant (v1 read-only)
2026-08-04 06:26:48 -03:00
Francisco Ignácio Fontoura Solla
f9cd1df7b2 feat: AI chat 'Sollinha' — campaign data assistant (v1 read-only)
- Streaming AI endpoint at /campanha/api/ai-chat with DeepSeek V4 Flash
- 8 tools: calculate, getMunicipalityVotes, getTopDeputies, getDobradinhas,
  getMunicipalityOverview, getLeaderships, getOrganizations, searchEntities
- In-memory rate limiter (50 msgs / 15 min per user)
- Desktop: resizable right sidebar via react-resizable-panels
- Mobile: full-screen Drawer opened by FAB (2/3 size of quick-actions FAB)
- Markdown rendering with react-markdown + remark-gfm (tables, bold, lists)
- Session-bound context (clean slate each open)
- Auth via existing campaign-token cookie, tools respect user RBAC
- Architecture doc: docs/plans/ai-chat-sollinha.md
- E2E tests: campaignAiChat.e2e.spec.ts (mocked endpoint)
2026-08-04 06:17:31 -03:00
Francisco Solla
a5f9548b9f
Merge pull request #372 from fsolla/agent/360-assessores-dobradinhas
B156 — Assessores por dobradinha (campo, coluna e seção; RelationOptionCell extraído)
2026-08-04 05:15:49 -03:00
Francisco Ignácio Fontoura Solla
6b8864debb B156 — assessores por dobradinha (campo, coluna e seção; RelationOptionCell extraído) 2026-08-04 04:57:15 -03:00
Francisco Ignácio Fontoura Solla
8e434c14af docs(plan): impl B156 — assessores por dobradinha 2026-08-04 04:39:48 -03:00
Francisco Solla
6f81fd3e82
Merge pull request #370 from fsolla/agent/362-dobradinhas-coluna-municipios
B157 — coluna de dobradinhas na lista de municípios (+ criação inline)
2026-08-04 04:07:46 -03:00
Francisco Ignácio Fontoura Solla
bd3ba5c2a5 style: format após rebase com B155 2026-08-04 02:56:05 -03:00
Francisco Ignácio Fontoura Solla
9780bb23df style: format campaignComponents unit spec 2026-08-04 02:53:44 -03:00