teqo-backup/src
Francisco Ignácio Fontoura Solla 52c402c049 Fix the three leader-flow bugs the e2e suite pinned + RSC prop contracts
E2E-driven fixes (the suite now passes 9/9; two journeys remain
latency-flaky on cold dev compiles and pass on retry):

- leader home crashed with Forbidden since the remodel:
  loadLeaderContactsPageData loaded municipality options through the
  staff-scoped loader (leaders are denied municipality reads); their scope
  now derives from the engaged leadership's linked municipalities
- leaders saw 'Contato — —' instead of their supporters' names:
  getAccessibleContactIds now mirrors canReadSupporter for leaders
  (contacts of supporters they created)
- leader nav had two items with the same /campanha href (duplicate React
  keys); the leader home IS the contact tool — one entry
- RSC serialization contracts: CampaignListPagination is a server component
  again (hrefForPage stays server-side; CampaignTransitionAnchor client leaf
  intercepts clicks with serializable props); CampaignSearchForm takes
  basePath instead of a function prop
- hasAnyEstimate moved from the 'use client' PledgeEstimateForm to
  voteEstimate.ts — server components may not call client-module exports
- playwright.config honors TEQO_TEST_DATABASE_URL (parity with
  vitest.setup.ts) and uses a fixed .next/e2e dist dir so Next stops
  appending per-PID entries to tsconfig include; report artifacts
  eslint-ignored
2026-07-24 00:38:40 -03:00
..
app Fix the three leader-flow bugs the e2e suite pinned + RSC prop contracts 2026-07-24 00:38:40 -03:00
collections Break up the god modules into deep domain modules 2026-07-23 23:44:45 -03:00
components Fix the three leader-flow bugs the e2e suite pinned + RSC prop contracts 2026-07-24 00:38:40 -03:00
globals Deliver Onda 0 MVP: provisional Consent, privacy policy, and /privacidade. 2026-07-19 03:38:21 -03:00
hooks Add campaign app shell with a light shadcn sidebar. 2026-07-15 23:17:51 -03:00
lib Break up the god modules into deep domain modules 2026-07-23 23:44:45 -03:00
migrations Remodel the campaign vertical from Praça to Município 2026-07-23 21:36:20 -03:00
utilities Fix the three leader-flow bugs the e2e suite pinned + RSC prop contracts 2026-07-24 00:38:40 -03:00
css-modules.d.ts Adopt TypeScript 6 for tooling and TypeScript 7 for typecheck. 2026-07-21 20:32:15 -03:00
payload-types.ts Remodel the campaign vertical from Praça to Município 2026-07-23 21:36:20 -03:00
payload.config.ts Remodel the campaign vertical from Praça to Município 2026-07-23 21:36:20 -03:00