Libra CodeHub

CedarCopilot/cedar-mail

Branch: staging

fix(threads): a thread marked done stays gone, plus the branch's task-ticket, Slack-scoping and agenda work

merged#2571CedarCopilot

CedarCopilot wants to merge 2 commits into staging from feat/slack-style-reactions

178 files changed

Libra does not show diffs here. View the full diff on GitHub.

  • modifiedapps/mail/app/root.tsx+8-3
  • modifiedapps/mail/components/ui/active-view-display.tsx+2-2
  • addedapps/mail/docs/task-ticket-view.md+445-0
  • modifiedapps/mail/lib/quoted-text.ts+46-0
  • modifiedapps/mail/lib/utils.ts+5-0
  • modifiedapps/mail/modules/calendar/components/LinkifiedEventText.tsx+4-1
  • modifiedapps/mail/modules/cedar-os/__tests__/emptyChatLayout.surfaces.test.ts+9-8
  • modifiedapps/mail/modules/cedar-os/src/cedar-os-components/chatComponents/emptyChatLayout.ts+6-30
  • modifiedapps/mail/modules/cedar-os/src/store/agentConnection/responseProcessors/clientExecutionResponseProcessors.ts+10-0
  • modifiedapps/mail/modules/conversations/components/LeftSidebarContent.tsx+20-15
  • modifiedapps/mail/modules/conversations/components/ThreadContextCards.tsx+70-17
  • modifiedapps/mail/modules/conversations/components/files/DriveSection.tsx+129-15
  • modifiedapps/mail/modules/conversations/components/files/drive-types.ts+15-0
  • modifiedapps/mail/modules/conversations/components/timeline/NewTaskCreationRow.tsx+3-1
  • modifiedapps/mail/modules/conversations/components/timeline/TaskCreatorDialogue.tsx+10-1
  • modifiedapps/mail/modules/conversations/components/timeline/UniversalComposer.tsx+0-1
  • modifiedapps/mail/modules/conversations/components/timeline/composer/open-slack-draft-in-channel.ts+9-1
  • modifiedapps/mail/modules/crm/components/ConversationCellComponents/InlineTaskCreation.tsx+9-0
  • modifiedapps/mail/modules/documents/table/CellDisplay.tsx+9-23
  • modifiedapps/mail/modules/documents/table/OutputCellEditor.tsx+6-14
  • addedapps/mail/modules/documents/table/OutputTargetPill.tsx+131-0
  • addedapps/mail/modules/documents/table/open-output-in-channel.ts+61-0
  • modifiedapps/mail/modules/documents/table/starter-table.ts+7-13
  • modifiedapps/mail/modules/drafting/components/compose-display.tsx+6-1
  • modifiedapps/mail/modules/home/components/AgentHomeHero.tsx+22-0
  • modifiedapps/mail/modules/home/components/DisplayArtifactPanel.tsx+51-9
  • modifiedapps/mail/modules/home/components/agentHomeActions.ts+10-9
  • addedapps/mail/modules/home/components/agentic-table.ts+172-0
  • modifiedapps/mail/modules/inbox/components/ChannelThreadView.tsx+6-8
  • addedapps/mail/modules/inbox/store/pending-channel-draft.ts+118-0
  • addedapps/mail/modules/threads/rendering/archived-thread-guard.ts+191-0
  • removedapps/mail/modules/threads/rendering/done-thread-resurrection.ts+0-166
  • modifiedapps/mail/modules/threads/rendering/use-optimistic-actions.ts+11-10
  • modifiedapps/mail/modules/threads/thread/components/draft-composer.tsx+2-1
  • modifiedapps/mail/modules/threads/threadList/store/threadSlice.ts+1-1
  • modifiedapps/mail/modules/userTasks/CURATED_AGENDA_DESIGN.md+14-0
  • modifiedapps/mail/modules/userTasks/components/NewTaskCard.tsx+12-1
  • modifiedapps/mail/modules/userTasks/components/TaskCommandBar.tsx+3-0
  • modifiedapps/mail/modules/userTasks/components/TaskExecutionList.tsx+1-1
  • modifiedapps/mail/modules/userTasks/components/TaskExecutionUrlSync.tsx+1-3
  • removedapps/mail/modules/userTasks/components/TaskGroupPills.tsx+0-128
  • modifiedapps/mail/modules/userTasks/components/TaskGroupsNav.tsx+22-50
  • removedapps/mail/modules/userTasks/components/TaskOutputPanel.tsx+0-258
  • addedapps/mail/modules/userTasks/components/TaskTicketProperties.tsx+258-0
  • addedapps/mail/modules/userTasks/components/TaskTicketView.tsx+300-0
  • modifiedapps/mail/modules/userTasks/hooks/use-create-task-optimistic.ts+18-1
  • modifiedapps/mail/modules/userTasks/hooks/use-open-task-in-execution-mode.ts+10-10
  • addedapps/mail/modules/userTasks/hooks/use-open-task-view.ts+30-0
  • modifiedapps/mail/modules/userTasks/slice/userTasksSlice.ts+7-0
  • addedapps/mail/modules/userTasks/utils/execution-rail.ts+56-0
  • modifiedapps/mail/modules/userTasks/utils/open-task.ts+18-24
  • modifiedapps/mail/modules/userTasks/utils/task-group-icons.ts+2-0
  • modifiedapps/mail/modules/ux/layout/LayoutUrlSync.tsx+1-1
  • modifiedapps/mail/providers/query-provider.tsx+19-7
  • modifiedapps/mail/tests/lib/labelFlowHarness.tsx+14-0
  • modifiedapps/mail/tests/lib/quoted-text.test.ts+57-1
  • modifiedapps/mail/tests/lib/utils-reply-body.test.ts+66-0
  • modifiedapps/mail/tests/modules/conversations/contextCardsConversation.test.ts+44-0
  • modifiedapps/mail/tests/modules/conversations/filesTabDrive.test.tsx+147-0
  • modifiedapps/mail/tests/modules/conversations/filesTabHarness.tsx+35-2
  • addedapps/mail/tests/modules/conversations/threadContextTasksCollapse.test.tsx+96-0
  • addedapps/mail/tests/modules/documents/table/OutputTargetPill.test.tsx+159-0
  • modifiedapps/mail/tests/modules/home/agentHomeHero.test.tsx+25-2
  • addedapps/mail/tests/modules/home/agenticTable.test.ts+109-0
  • modifiedapps/mail/tests/modules/threads/mark-done-flow.test.tsx+73-2
  • addedapps/mail/tests/modules/userTasks/executionRailHidden.test.ts+65-0
  • modifiedapps/mail/tests/modules/userTasks/open-task.test.ts+20-19
  • addedapps/mail/tests/modules/userTasks/taskTicketProperties.test.tsx+162-0
  • addedapps/mail/tests/modules/userTasks/taskTicketView.test.tsx+219-0
  • addedapps/server/.claude/skills/daily-agenda/SKILL.md+323-0
  • modifiedapps/server/.claude/skills/documents/SKILL.md+1-1
  • modifiedapps/server/.claude/skills/documents/agenda-format.md+50-60
  • removedapps/server/.claude/skills/playbook-instruction-eval/run-brock-monday.ts+0-55
  • modifiedapps/server/.claude/skills/tasks/SKILL.md+1-363
  • addedapps/server/docs/bug-agent-draft-quote-and-signature.md+143-0
  • modifiedapps/server/docs/dm-auto-sync.md+62-5
  • modifiedapps/server/docs/google-drive-integration.md+62-0
  • modifiedapps/server/package.json+1-0
  • modifiedapps/server/src/cli/channels.ts+18-0
  • modifiedapps/server/src/db/aop-schema.ts+22-0
  • modifiedapps/server/src/db/crm-schema.ts+0-16
  • addedapps/server/src/db/migrations/add_user_tasks_source_thread.sql+34-0
  • addedapps/server/src/db/migrations/drop_message_user_id.sql+95-0
  • addedapps/server/src/db/migrations/relax_message_user_id.sql+62-0
  • addedapps/server/src/db/migrations/scripts/playbook-health/heal-drifted-code-spans.ts+233-0
  • addedapps/server/src/db/migrations/scripts/playbook-health/repoint-daily-agenda-cleanup-skill.ts+190-0
  • modifiedapps/server/src/db/outbound-ddl.sql+6-3
  • modifiedapps/server/src/db/outbound-schema.ts+0-1
  • modifiedapps/server/src/docs/bug-mark-done-threads-reappear.md+156-0
  • modifiedapps/server/src/mastra/agents/automation-agent.ts+5-2
  • modifiedapps/server/src/mastra/mcp/external/load-skill-tool.ts+9-4
  • modifiedapps/server/src/mastra/mcp/external/scope-map.ts+1-1
  • modifiedapps/server/src/mastra/routeHandlers/event-execution/handleExecuteScheduledExecution.ts+32-10
  • modifiedapps/server/src/mastra/skills/index.ts+9-2
  • addedapps/server/src/mastra/skills/tasks/daily-agenda.ts+113-0
  • modifiedapps/server/src/mastra/skills/tasks/tasks.ts+24-56
  • modifiedapps/server/src/mastra/skills/types.ts+24-1
  • modifiedapps/server/src/mastra/tools/draft-comms/__tests__/saveDraftTool.test.ts+27-2
  • modifiedapps/server/src/mastra/tools/draft-comms/saveDraftTool.ts+10-9
  • modifiedapps/server/src/mastra/tools/event-execution/onEventExecutionDraftEmailTool.ts+6-58
  • addedapps/server/src/mastra/tools/meetings/__tests__/findMeetingsTool.visibility.test.ts+142-0
  • modifiedapps/server/src/mastra/tools/meetings/__tests__/syncMeetingTool.test.ts+8-1
  • modifiedapps/server/src/mastra/tools/meetings/__tests__/syncMeetingTool.windowing.test.ts+7-1
  • modifiedapps/server/src/mastra/tools/meetings/findMeetingsTool.ts+60-3
  • modifiedapps/server/src/mastra/tools/meetings/syncMeetingTool.ts+28-7
  • modifiedapps/server/src/mastra/tools/subagent-tool-allowlists.ts+5-4
  • modifiedapps/server/src/mastra/tools/task/__tests__/createTaskTool.test.ts+89-44
  • modifiedapps/server/src/mastra/tools/task/createTaskTool.ts+14-9
  • modifiedapps/server/src/mastra/utils/context-items/hydrate-channels.test.ts+5-5
  • modifiedapps/server/src/mastra/utils/context-items/hydrate.ts+10-3
  • modifiedapps/server/src/scripts/__tests__/backfill-slack-messages.test.ts+44-1
  • modifiedapps/server/src/scripts/backfill-slack-messages.ts+77-5
  • modifiedapps/server/src/scripts/channel-sync-live.slack.e2e.test.ts+12-6
  • modifiedapps/server/src/scripts/linkedin-live.e2e.test.ts+1-1
  • modifiedapps/server/src/scripts/repair-channel-envelopes.ts+27-18
  • addedapps/server/src/scripts/slack-dm-scan.ts+231-0
  • modifiedapps/server/src/scripts/slack-images-probe.ts+2-2
  • modifiedapps/server/src/scripts/slack-images.ts+45-8
  • modifiedapps/server/src/scripts/verify-channel-containers.ts+9-6
  • addedapps/server/src/services/agenda/__tests__/new-task-agenda-evaluator.test.ts+276-0
  • removedapps/server/src/services/agenda/__tests__/placement-debounce.test.ts+0-216
  • addedapps/server/src/services/agenda/__tests__/placement.test.ts+100-0
  • addedapps/server/src/services/agenda/new-task-agenda-evaluator.ts+582-0
  • modifiedapps/server/src/services/agenda/tasks-to-agenda.ts+48-147
  • modifiedapps/server/src/services/aop/automations.ts+20-15
  • modifiedapps/server/src/services/channels/__test__/envelope-db.test.ts+16-4
  • modifiedapps/server/src/services/channels/__test__/link-store.test.ts+2-3
  • modifiedapps/server/src/services/channels/__test__/linking-create.test.ts+5-2
  • modifiedapps/server/src/services/channels/__test__/reconcile.test.ts+11-13
  • modifiedapps/server/src/services/channels/envelope.ts+45-12
  • modifiedapps/server/src/services/channels/health.ts+9-6
  • modifiedapps/server/src/services/channels/history.ts+7-7
  • modifiedapps/server/src/services/channels/reconcile.ts+9-3
  • modifiedapps/server/src/services/crm/__test__/channel-deal-binding.test.ts+2-2
  • modifiedapps/server/src/services/crm/__test__/linkedin-linking.test.ts+0-1
  • modifiedapps/server/src/services/crm/__test__/reexecute-slack-source.test.ts+2-3
  • modifiedapps/server/src/services/crm/__tests__/slack-events.ingest.test.ts+38-15
  • modifiedapps/server/src/services/crm/calendar-events.ts+68-3
  • modifiedapps/server/src/services/crm/conversations.ts+0-2
  • modifiedapps/server/src/services/crm/slack-events.ts+41-23
  • modifiedapps/server/src/services/crm/slack-reactions.ts+22-4
  • modifiedapps/server/src/services/crm/suggest-contacts.ts+8-2
  • addedapps/server/src/services/document-saving/__tests__/markdown-roundtrip.test.ts+140-0
  • modifiedapps/server/src/services/document-saving/markdown-parser.ts+41-4
  • modifiedapps/server/src/services/document-saving/serialize.ts+158-31
  • modifiedapps/server/src/services/documents/table/table-types.ts+23-0
  • modifiedapps/server/src/services/drafting/__tests__/gmail-format.test.ts+1-267
  • modifiedapps/server/src/services/drafting/__tests__/reply-formatting.test.ts+78-75
  • modifiedapps/server/src/services/drafting/drafting.ts+18-55
  • modifiedapps/server/src/services/drafting/gmail-format.ts+52-133
  • modifiedapps/server/src/services/file-system/index.ts+104-0
  • addedapps/server/src/services/inbox/__test__/slack-channel-scope.test.ts+173-0
  • modifiedapps/server/src/services/inbox/slack-messages.ts+117-11
  • addedapps/server/src/services/integrations/google/__tests__/drive-grouping.test.ts+237-0
  • modifiedapps/server/src/services/integrations/google/__tests__/drive-service.test.ts+61-1
  • addedapps/server/src/services/integrations/google/drive-folders.ts+105-0
  • addedapps/server/src/services/integrations/google/drive-grouping.ts+137-0
  • modifiedapps/server/src/services/integrations/google/drive-service.ts+70-18
  • modifiedapps/server/src/services/integrations/google/types.ts+21-0
  • modifiedapps/server/src/services/integrations/linkedin/messaging.ts+12-9
  • modifiedapps/server/src/services/integrations/slack/__tests__/slack-attachment-read.test.ts+2-3
  • modifiedapps/server/src/services/integrations/slack/__tests__/slack-dm-admit.test.ts+118-5
  • modifiedapps/server/src/services/integrations/slack/slack-api.ts+57-0
  • modifiedapps/server/src/services/integrations/slack/slack-dm-admit.ts+39-10
  • modifiedapps/server/src/services/integrations/slack/slack-events-webhook.ts+26-19
  • modifiedapps/server/src/services/notifications/user-slack-notifier.ts+8-2
  • modifiedapps/server/src/services/playbook/__tests__/seed-playbook.test.ts+4-1
  • modifiedapps/server/src/services/playbook/agent-defaults/daily-agenda.ts+1-1
  • modifiedapps/server/src/services/user-tasks/tasks.ts+5-0
  • addedapps/server/src/trpc/routes/__tests__/get-task-by-id-ticket-fields.test.ts+210-0
  • modifiedapps/server/src/trpc/routes/channels.ts+225-3
  • modifiedapps/server/src/trpc/routes/documents.ts+0-39
  • modifiedapps/server/src/trpc/routes/drive.ts+60-15
  • modifiedapps/server/src/trpc/routes/files.ts+42-0
  • modifiedapps/server/src/trpc/routes/inbox.ts+45-17
  • modifiedapps/server/src/trpc/routes/mail.ts+34-0
  • modifiedapps/server/src/trpc/routes/task-groups.ts+0-12
  • modifiedapps/server/src/trpc/routes/user-tasks.ts+36-11