multica/apps/web
Naiyuan Qing 66b1defab7 refactor: migrate stores to features/, remove dead packages, add modals + workspace sync
## Store migration (packages → features)
- Delete `packages/store/` — stores moved into web app's feature modules
- Delete `packages/hooks/` — replaced by feature-level hooks
- `features/issues/store.ts` — useIssueStore (was packages/store/issue-store)
- `features/inbox/store.ts` — useInboxStore (was packages/store/inbox-store)
- `features/workspace/store.ts` — absorbs agent state (was packages/store/agent-store)
- All imports updated from `@multica/store` → `@/features/*/store`

## Global modal system
- `features/modals/store.ts` — useModalStore (zustand)
- `features/modals/registry.tsx` — ModalRegistry renders active modal
- Mounted in app/layout.tsx alongside Toaster
- Create Workspace dialog now works (was broken: DropdownMenu ate click)

## Workspace real-time sync
- useRealtimeSync subscribes to workspace:updated, member:removed
- Member removal → auto-switch to another workspace
- Workspace settings update → sidebar reflects name change
- Workspace switch → parallel fetch issues + inbox + agents

## Bug fixes
- theme-provider: guard event.key for IME composition (isComposing check)
- task.go: publish comment:created + inbox:new events on task complete/fail
- listeners.go: broadcast comment:created, workspace:updated, member events
- events.go: add EventCommentUpdated, EventCommentDeleted constants

## Cleanup
- Remove _features/ tracking files (dev-only, not for main)
- Remove server/server binary from worktree
- Update CLAUDE.md to reflect new architecture

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-25 16:37:22 +08:00
..
app refactor: migrate stores to features/, remove dead packages, add modals + workspace sync 2026-03-25 16:37:22 +08:00
components refactor: migrate stores to features/, remove dead packages, add modals + workspace sync 2026-03-25 16:37:22 +08:00
features refactor: migrate stores to features/, remove dead packages, add modals + workspace sync 2026-03-25 16:37:22 +08:00
hooks refactor(web): self-contained shadcn UI with base-nova style and design tokens 2026-03-24 18:19:26 +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 Provision default workspaces and harden daemon pairing 2026-03-24 15:19:27 +08:00
shared refactor(web): restructure to feature-based architecture with zustand stores 2026-03-24 16:08:36 +08:00
test feat(workspace): add context field for AI agent background info 2026-03-24 15:59:11 +08:00
components.json refactor(web): self-contained shadcn UI with base-nova style and design tokens 2026-03-24 18:19:26 +08:00
next-env.d.ts feat: pivot to AI-native task management platform (#232) 2026-03-20 17:55:49 +08:00
next.config.ts refactor(web): self-contained shadcn UI with base-nova style and design tokens 2026-03-24 18:19:26 +08:00
package.json fix(web): add missing linkify-it dependency and types 2026-03-24 18:24:30 +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
tsconfig.json refactor(web): restructure to feature-based architecture with zustand stores 2026-03-24 16:08:36 +08:00
vitest.config.ts refactor(web): restructure to feature-based architecture with zustand stores 2026-03-24 16:08:36 +08:00