multica/apps/web/features
LinYushen ec934f3a8b
fix(web): add load-more pagination for Done column on issue board (#492)
* fix(web): add load-more pagination for Done column on issue board

The Done column was capped at 50 issues with no way to load more.
Track doneTotal in the TQ cache and add a useLoadMoreDoneIssues hook
that fetches the next page and merges it into the unified issue cache.
The Done column now shows a "Load more" button when there are
additional items.

- shared/types/api.ts: add doneTotal to ListIssuesResponse
- core/issues/queries.ts: store doneTotal from the done-status response
- core/issues/mutations.ts: add useLoadMoreDoneIssues hook, update
  create/delete mutations to maintain doneTotal
- core/issues/ws-updaters.ts: maintain doneTotal on WS events
- features/issues/components/board-column.tsx: accept optional footer
- features/issues/components/board-view.tsx: render Load more button
  in Done column

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>

* fix(web): address review issues in done-column load-more

1. Fix total over-counting: loadMore no longer inflates total since
   the initial query already includes all done issues in total count.
2. Fix onIssueUpdated: maintain doneTotal when issue status changes
   to/from done via WS events.
3. Make doneTotal optional in ListIssuesResponse since it's a
   frontend-only field not returned by the backend API. All reads
   now use ?? 0 fallback.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>

---------

Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-08 14:58:51 +08:00
..
auth fix(auth): persist browser session during CLI login flow 2026-04-08 10:22:19 +08:00
editor fix(editor): align IssueMentionCard styling and behavior with Tiptap 2026-04-08 13:47:03 +08:00
inbox fix: restore TQ consumer migrations lost during merge with main 2026-04-07 18:59:09 +08:00
issues fix(web): add load-more pagination for Done column on issue board (#492) 2026-04-08 14:58:51 +08:00
landing refactor: remove agent triggers config field (#469) 2026-04-07 22:02:28 +08:00
modals feat(core): migrate workspace + runtimes to TanStack Query (Phase 3+4) 2026-04-07 17:19:52 +08:00
my-issues feat(core): migrate workspace + runtimes to TanStack Query (Phase 3+4) 2026-04-07 17:19:52 +08:00
navigation feat(ui): route persistence, sidebar active fix, header spacing 2026-03-26 10:57:32 +08:00
realtime fix(web): replace actor_id self-event filtering with idempotent cache updates 2026-04-08 13:57:24 +08:00
runtimes fix: restore TQ consumer migrations lost during merge with main 2026-04-07 18:59:09 +08:00
skills feat(core): migrate workspace + runtimes to TanStack Query (Phase 3+4) 2026-04-07 17:19:52 +08:00
workspace feat(core): migrate workspace + runtimes to TanStack Query (Phase 3+4) 2026-04-07 17:19:52 +08:00