3.8.6 Tests — board load model (no "Load more", over-cap banner, Done-age window, virtualization)
Estimate: 22m · Depends on: 3.8.2, 3.8.3, 3.8.4, 3.8.5
Prove the corrected load model end-to-end, the 3.1.7 / 3.2.7 split: component/unit (vitest, real Postgres where DB-touching) + a focused E2E. Confirms the mirror-faithful behaviour and that the old "Load more" affordance is fully gone.
Component / unit. The projection bounded load + truncated/cap + Done-age window (may overlap 3.8.2 — keep the integration assertions here); the over-cap banner predicate (present past cap / absent under it); no load-more affordance on flat OR swimlane; virtualization still bounds a tall column / cell.
E2E (Playwright) tests/e2e/board-load.spec.ts. Against a freshly seeded project: the board renders with NO "Load more"; a tall column scrolls (virtualized, DOM bounded); on a db:seed:large over-cap project the "refine filter" banner shows (and is absent on a normal project); the Done column shows only the recent window. Reuses the real-Postgres harness + the seeded project; does NOT duplicate the combined at-scale journey (Story 3.5).
Acceptance criteria
pnpm testcovers the bounded projection +truncated/cap+ Done-age window, the banner predicate, the no-load-more assertions (flat + swimlane), and DOM-bounded virtualization.pnpm test:e2e --grep board-loadruns green over the real stack: no "Load more", virtualized scroll, the over-cap banner present/absent correctly, the Done-age window.- The suite reuses
tests/helpers/db.tstruncation + the seeded project; the at-scale combined journey stays in Story 3.5. - This subtask OWNS the board load-model coverage and SUPERSEDES the retired per-column "Load more"/cursor-paging assertions in 3.2.7 (if 3.2.7 landed first, update its specs); 3.2.7 / 3.3.7 keep their drag / reducer / grouping / reassign / WIP coverage unchanged — they are NOT cancelled.
Context refs
tests/e2e/board-ui.spec.ts(3.2.7) +tests/e2e/board-projection.spec.ts(3.1.7) — the board E2E this extendstests/helpers/db.ts; the 3.8.2 projection + 3.8.3/3.8.4/3.8.5 UI under test;motir-core/CLAUDE.md(real Postgres, no mocks)