feat: show incomplete Magic Notes todo counts

Magic Notes can now show a default-on incomplete todo badge in the primary
navigation. The badge hides at zero, caps its visual label at 99+ while
retaining the exact accessible count, and refreshes after user or Agent/MCP
note changes.

Platform Features > Magic Notes includes a persistent switch that hides only
the count without changing notes or the Magic Notes entry. Existing settings
migrate with the count enabled.

Release note: 左侧“魔法笔记”入口现在可显示未完成待办数量;可在“平台功能 → 魔法笔记”中关闭,超过 99 项显示“99+”。
This commit is contained in:
mesalogo
2026-08-22 08:32:57 +08:00
parent fee4686750
commit fb51793595
25 changed files with 538 additions and 25 deletions
+3
View File
@@ -63,6 +63,7 @@ import type {
MagicNotesSnapshot,
MagicNoteUpdateInput,
MagicTodoItem,
MagicTodoStatus,
MagicTodoUpdateInput,
MagicTodoUpdateResult,
MagicTodosSnapshot
@@ -1703,6 +1704,7 @@ export type DesktopApi = {
options: MagicNoteAnalysisOptions
) => Promise<MagicNoteDraftAnalysis>
listTodos: () => Promise<MagicTodosSnapshot>
getTodoStatus: () => Promise<MagicTodoStatus>
updateTodo: (
input: MagicTodoUpdateInput
) => Promise<MagicTodoUpdateResult>
@@ -1713,6 +1715,7 @@ export type DesktopApi = {
onAnalysisEvent: (
listener: (event: MagicNoteAnalysisStreamEvent) => void
) => () => void
onTodoStatusChanged: (listener: () => void) => () => void
}
knowledge: {
getSnapshot: (libraryId?: string) => Promise<KnowledgeSnapshot>