multica/apps/web
Naiyuan Qing d58f6cdb33 fix(web): replace actor_id self-event filtering with idempotent cache updates
actor_id identifies the user, not the browser tab. Filtering WS events
by actor_id broke multi-tab sync — other tabs of the same user would
silently miss updates. Instead, make all WS cache handlers idempotent
(dedup checks on add, no-op on duplicate merge/filter) so mutations and
WS events coexist safely without filtering.

- WSClient: pass actor_id to event handlers for future per-handler use
- use-realtime-sync: remove isSelf() gating from onAny and specific handlers
- useCreateIssue: add .some() dedup guard + onSettled invalidation
- use-issue-reactions: remove payload-level self-filter (dedup already present)
- use-issue-timeline: remove payload-level self-filter on comment:created,
  reaction:added, reaction:removed (dedup already present)
- Clean up useCallback deps that no longer reference userId

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-08 13:57:24 +08:00
..
app Merge pull request #479 from multica-ai/fix/cli-web-shared-login-state 2026-04-08 12:50:53 +08:00
components feat(core): migrate workspace + runtimes to TanStack Query (Phase 3+4) 2026-04-07 17:19:52 +08:00
core fix(web): replace actor_id self-event filtering with idempotent cache updates 2026-04-08 13:57:24 +08:00
features fix(web): replace actor_id self-event filtering with idempotent cache updates 2026-04-08 13:57:24 +08:00
hooks fix(upload): harden upload flow — sanitize filenames, refresh CF cookies, deduplicate handlers 2026-03-31 15:52:40 +08:00
lib refactor(web): self-contained shadcn UI with base-nova style and design tokens 2026-03-24 18:19:26 +08:00
public feat(web): add about, changelog pages and fix landing header for light backgrounds 2026-04-01 05:16:24 +08:00
shared fix(web): replace actor_id self-event filtering with idempotent cache updates 2026-04-08 13:57:24 +08:00
test Merge remote-tracking branch 'origin/main' into feat/tanstack-query-migration 2026-04-08 10:35:28 +08:00
components.json chore(ui): switch shadcn menuColor from inverted-translucent to default 2026-03-31 11:01:54 +08:00
next-env.d.ts chore(web): update next-env.d.ts routes path 2026-04-01 05:51:28 +08:00
next.config.ts feat(web): SEO optimization and auth flow improvements for landing pages 2026-04-01 16:54:11 +08:00
package.json feat(web): add TanStack Query infrastructure (Phase 0) 2026-04-07 14:43:51 +08:00
postcss.config.mjs refactor(web): self-contained shadcn UI with base-nova style and design tokens 2026-03-24 18:19:26 +08:00
proxy.ts feat(web): redirect logged-in users from / to /issues via server-side proxy 2026-04-01 18:20:57 +08:00
tsconfig.json feat(web): add TanStack Query infrastructure (Phase 0) 2026-04-07 14:43:51 +08:00
vitest.config.ts feat(web): add TanStack Query infrastructure (Phase 0) 2026-04-07 14:43:51 +08:00