- Task queue filters + saved viewsActive-work panel mounts a new TaskFilterList with kind / priority / tag dropdowns plus a Mine-only chip and a Save filter button. Saved views persist to localStorage (per-workspace, six max), surface as one-click chips, and survive across sessions. Closes the filter symmetry โ signals (rev 9), outputs (rev 12 + rev 15), memory (rev 8 + rev 21), and now tasks all support kind + tag scoping. The saved-view bookmark UX mirrors rev 18's saved searches.
- MCP-foundation completeness โ POST /api/v1/tasks + PUT /api/v1/tasks/{id}/tagsThe dashboard task-create endpoint (rev 24) and task-tags endpoint (rev 24) are now mirrored onto the bearer-authenticated v1 surface. An MCP host or external automation can now originate work directly without going through a webhook signal first, and tag any existing task. The /api/v1 self-describing index lists both new endpoints. The MCP server protocol-translation work no longer has to add bespoke task primitives โ every dashboard mutation exists in v1.
- Tag autocomplete across tasks / artifacts / memoryReusable TagInput subcomponent renders a suggestion popover whenever the operator opens the inline tag form on any of the three tag-enabled entities. Suggestions come from the workspace-wide tag pool for that entity, ranked starts-with first, then includes. โโ navigates, Enter accepts, Esc cancels. Reduces the silent fragmentation problem (q3-launch vs q3launch vs q3_launch) that made cross-entity filtering unreliable.
- Personalised digest โ Your assigned tasksThe daily digest email now appends a Your assigned tasks section per recipient, scoped strictly to the recipient's workspace user-id. Groups: Overdue, Due this week, Needs your input, In progress. Solo founders see only their own; multi-operator teams see each owner/admin's section in their own copy. No new schema; reuses task.assignedToUserId (rev 16) and dueAt (rev 22). Pairs with rev 24's email companion to make digest the canonical channel for assigned-and-due-soon work.