- Comment reactions (π / π / π― / β€οΈ / π)Five-emoji reaction bar appears under every comment. One click toggles your reaction β counts surface inline with member names on hover. Reactions persist on the comment itself (no new event, no outbound storm) and are scoped per-user so an ack reads as 'someone saw this' without bloating the thread or bumping updatedAt timestamps. The natural rev-29 step from rev 28's threading: now teammates can ack 'on it' or 'looks right' without writing a full reply.
- Team focus tags β set the desk's weekly priority themeNew 'Team focus' sidebar panel lets owners/editors pin up to 3 tags as the team's focus for the week. The dashboard queue layers a focus-tag boost between needs_input and due-date weight so tasks tagged with a focus tag float above off-theme work. Tasks that match a focus tag wear a small β
focus ribbon. The pulse engine reads focus tags too β task selection inside the AI cycle agrees with what the operator sees, and the AI prompt receives a 'TEAM FOCUS THIS WEEK' line that biases retrieval and recommendations toward the chosen themes. Endpoint: PUT /api/workspace/focus-tags. Pairs with rev-28 tag insights β insights are descriptive, focus is prescriptive.
- Workspace search now reaches activity logThe rev-17 search and the rev-28 comment coverage already let operators find any discussion or memory entry by keyword. Rev 29 adds the seventh result group: activity. Type a kind name (slack, capture, cost) or any phrase in an activity-log entry to surface matching events, with timestamps and matched substrings highlighted. Mirror coverage on /api/v1/search with the same activity result group. Closes the search coverage gap from rev 28 β every workspace-level surface is now keyword-searchable from one input.
- Focus-aware AI cycle + visual polishPulse engine task selection and AI prompt both now honour the workspace's focus tags so AI work agrees with the queue order operators see. Reaction buttons reuse a soft accent treatment that reads as ack-not-action, the focus-tag ribbon uses the brandβamber gradient first introduced for tag insights, and the team-focus panel shares vocabulary with the rev-28 'what your team is focused on' panel so the descriptive/prescriptive pair reads as a unit.