@wirecat/cli-core 0.263.0 → 0.265.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +226 -486
- package/dist/background/schedules.d.ts +2 -0
- package/dist/background/schedules.d.ts.map +1 -1
- package/dist/background/schedules.js +26 -8
- package/dist/background/schedules.js.map +1 -1
- package/dist/cli/envelope.d.ts +2 -0
- package/dist/cli/envelope.d.ts.map +1 -1
- package/dist/cli/envelope.js +2 -2
- package/dist/cli/envelope.js.map +1 -1
- package/dist/cli/index.d.ts +2 -0
- package/dist/cli/index.d.ts.map +1 -1
- package/dist/cli/index.js +2 -0
- package/dist/cli/index.js.map +1 -1
- package/dist/cli/list-query.d.ts +42 -0
- package/dist/cli/list-query.d.ts.map +1 -0
- package/dist/cli/list-query.js +121 -0
- package/dist/cli/list-query.js.map +1 -0
- package/dist/cli/messenger/admin-commands.d.ts.map +1 -1
- package/dist/cli/messenger/admin-commands.js +34 -46
- package/dist/cli/messenger/admin-commands.js.map +1 -1
- package/dist/cli/messenger/admin-contacts-command.d.ts.map +1 -1
- package/dist/cli/messenger/admin-contacts-command.js +7 -3
- package/dist/cli/messenger/admin-contacts-command.js.map +1 -1
- package/dist/cli/messenger/admin-folders-command.d.ts.map +1 -1
- package/dist/cli/messenger/admin-folders-command.js +21 -21
- package/dist/cli/messenger/admin-folders-command.js.map +1 -1
- package/dist/cli/messenger/admin-moderation-command.d.ts.map +1 -1
- package/dist/cli/messenger/admin-moderation-command.js +11 -13
- package/dist/cli/messenger/admin-moderation-command.js.map +1 -1
- package/dist/cli/messenger/backfill-command.d.ts.map +1 -1
- package/dist/cli/messenger/backfill-command.js +10 -6
- package/dist/cli/messenger/backfill-command.js.map +1 -1
- package/dist/cli/messenger/backfill-jobs.d.ts +1 -1
- package/dist/cli/messenger/backfill-jobs.d.ts.map +1 -1
- package/dist/cli/messenger/backfill-jobs.js +1 -1
- package/dist/cli/messenger/backfill-jobs.js.map +1 -1
- package/dist/cli/messenger/chat-answers.d.ts +155 -0
- package/dist/cli/messenger/chat-answers.d.ts.map +1 -0
- package/dist/cli/messenger/chat-answers.js +243 -0
- package/dist/cli/messenger/chat-answers.js.map +1 -0
- package/dist/cli/messenger/chat-lists.d.ts +161 -0
- package/dist/cli/messenger/chat-lists.d.ts.map +1 -0
- package/dist/cli/messenger/chat-lists.js +82 -0
- package/dist/cli/messenger/chat-lists.js.map +1 -0
- package/dist/cli/messenger/chat-queries.d.ts +14 -0
- package/dist/cli/messenger/chat-queries.d.ts.map +1 -0
- package/dist/cli/messenger/chat-queries.js +48 -0
- package/dist/cli/messenger/chat-queries.js.map +1 -0
- package/dist/cli/messenger/chats-bots-command.d.ts.map +1 -1
- package/dist/cli/messenger/chats-bots-command.js +7 -2
- package/dist/cli/messenger/chats-bots-command.js.map +1 -1
- package/dist/cli/messenger/chats-command.d.ts.map +1 -1
- package/dist/cli/messenger/chats-command.js +33 -71
- package/dist/cli/messenger/chats-command.js.map +1 -1
- package/dist/cli/messenger/chats-documents-command.d.ts.map +1 -1
- package/dist/cli/messenger/chats-documents-command.js +10 -5
- package/dist/cli/messenger/chats-documents-command.js.map +1 -1
- package/dist/cli/messenger/chats-members-command.d.ts.map +1 -1
- package/dist/cli/messenger/chats-members-command.js +38 -64
- package/dist/cli/messenger/chats-members-command.js.map +1 -1
- package/dist/cli/messenger/chats-read-command.d.ts.map +1 -1
- package/dist/cli/messenger/chats-read-command.js +4 -2
- package/dist/cli/messenger/chats-read-command.js.map +1 -1
- package/dist/cli/messenger/chats-stats-command.d.ts.map +1 -1
- package/dist/cli/messenger/chats-stats-command.js +24 -17
- package/dist/cli/messenger/chats-stats-command.js.map +1 -1
- package/dist/cli/messenger/chats-tracking-command.d.ts.map +1 -1
- package/dist/cli/messenger/chats-tracking-command.js +11 -17
- package/dist/cli/messenger/chats-tracking-command.js.map +1 -1
- package/dist/cli/messenger/contacts-command.d.ts.map +1 -1
- package/dist/cli/messenger/contacts-command.js +61 -43
- package/dist/cli/messenger/contacts-command.js.map +1 -1
- package/dist/cli/messenger/context.d.ts.map +1 -1
- package/dist/cli/messenger/context.js +5 -2
- package/dist/cli/messenger/context.js.map +1 -1
- package/dist/cli/messenger/conversations-command.d.ts.map +1 -1
- package/dist/cli/messenger/conversations-command.js +13 -20
- package/dist/cli/messenger/conversations-command.js.map +1 -1
- package/dist/cli/messenger/gaps-command.js +3 -3
- package/dist/cli/messenger/gaps-command.js.map +1 -1
- package/dist/cli/messenger/hearing-command.d.ts +1 -1
- package/dist/cli/messenger/hearing-command.d.ts.map +1 -1
- package/dist/cli/messenger/hearing-command.js +1 -1
- package/dist/cli/messenger/hearing-command.js.map +1 -1
- package/dist/cli/messenger/history-query.d.ts +18 -0
- package/dist/cli/messenger/history-query.d.ts.map +1 -0
- package/dist/cli/messenger/history-query.js +63 -0
- package/dist/cli/messenger/history-query.js.map +1 -0
- package/dist/cli/messenger/images-command.d.ts +8 -0
- package/dist/cli/messenger/images-command.d.ts.map +1 -0
- package/dist/cli/messenger/images-command.js +36 -0
- package/dist/cli/messenger/images-command.js.map +1 -0
- package/dist/cli/messenger/list-query.d.ts +13 -0
- package/dist/cli/messenger/list-query.d.ts.map +1 -0
- package/dist/cli/messenger/list-query.js +23 -0
- package/dist/cli/messenger/list-query.js.map +1 -0
- package/dist/cli/messenger/mentions-command.d.ts +5 -0
- package/dist/cli/messenger/mentions-command.d.ts.map +1 -0
- package/dist/cli/messenger/mentions-command.js +51 -0
- package/dist/cli/messenger/mentions-command.js.map +1 -0
- package/dist/cli/messenger/message-items.d.ts +31 -0
- package/dist/cli/messenger/message-items.d.ts.map +1 -0
- package/dist/cli/messenger/message-items.js +95 -0
- package/dist/cli/messenger/message-items.js.map +1 -0
- package/dist/cli/messenger/messages-command.d.ts.map +1 -1
- package/dist/cli/messenger/messages-command.js +52 -77
- package/dist/cli/messenger/messages-command.js.map +1 -1
- package/dist/cli/messenger/messages-comments-command.d.ts.map +1 -1
- package/dist/cli/messenger/messages-comments-command.js +39 -28
- package/dist/cli/messenger/messages-comments-command.js.map +1 -1
- package/dist/cli/messenger/messages-link-command.d.ts.map +1 -1
- package/dist/cli/messenger/messages-link-command.js +16 -14
- package/dist/cli/messenger/messages-link-command.js.map +1 -1
- package/dist/cli/messenger/messages-scheduled-command.d.ts.map +1 -1
- package/dist/cli/messenger/messages-scheduled-command.js +23 -26
- package/dist/cli/messenger/messages-scheduled-command.js.map +1 -1
- package/dist/cli/messenger/messages-search-command.d.ts.map +1 -1
- package/dist/cli/messenger/messages-search-command.js +6 -0
- package/dist/cli/messenger/messages-search-command.js.map +1 -1
- package/dist/cli/messenger/models-command.d.ts.map +1 -1
- package/dist/cli/messenger/models-command.js +57 -0
- package/dist/cli/messenger/models-command.js.map +1 -1
- package/dist/cli/messenger/people-queries.d.ts +6 -0
- package/dist/cli/messenger/people-queries.d.ts.map +1 -0
- package/dist/cli/messenger/people-queries.js +15 -0
- package/dist/cli/messenger/people-queries.js.map +1 -0
- package/dist/cli/messenger/polls-command.d.ts.map +1 -1
- package/dist/cli/messenger/polls-command.js +29 -23
- package/dist/cli/messenger/polls-command.js.map +1 -1
- package/dist/cli/messenger/reactions-command.d.ts.map +1 -1
- package/dist/cli/messenger/reactions-command.js +6 -2
- package/dist/cli/messenger/reactions-command.js.map +1 -1
- package/dist/cli/messenger/serve-command.d.ts.map +1 -1
- package/dist/cli/messenger/serve-command.js +21 -33
- package/dist/cli/messenger/serve-command.js.map +1 -1
- package/dist/cli/messenger/serve-members.d.ts +2 -1
- package/dist/cli/messenger/serve-members.d.ts.map +1 -1
- package/dist/cli/messenger/serve-members.js +11 -2
- package/dist/cli/messenger/serve-members.js.map +1 -1
- package/dist/cli/messenger/serve-notice.d.ts +21 -0
- package/dist/cli/messenger/serve-notice.d.ts.map +1 -0
- package/dist/cli/messenger/serve-notice.js +40 -0
- package/dist/cli/messenger/serve-notice.js.map +1 -0
- package/dist/cli/messenger/serve-stems.d.ts +2 -1
- package/dist/cli/messenger/serve-stems.d.ts.map +1 -1
- package/dist/cli/messenger/serve-stems.js +2 -1
- package/dist/cli/messenger/serve-stems.js.map +1 -1
- package/dist/cli/messenger/tags-command.d.ts.map +1 -1
- package/dist/cli/messenger/tags-command.js +11 -30
- package/dist/cli/messenger/tags-command.js.map +1 -1
- package/dist/cli/messenger/tasks-command.d.ts.map +1 -1
- package/dist/cli/messenger/tasks-command.js +13 -22
- package/dist/cli/messenger/tasks-command.js.map +1 -1
- package/dist/cli/messenger/topics-command.d.ts.map +1 -1
- package/dist/cli/messenger/topics-command.js +21 -9
- package/dist/cli/messenger/topics-command.js.map +1 -1
- package/dist/cli/runs/log-attributes.d.ts +5 -0
- package/dist/cli/runs/log-attributes.d.ts.map +1 -0
- package/dist/cli/runs/log-attributes.js +67 -0
- package/dist/cli/runs/log-attributes.js.map +1 -0
- package/dist/cli/runs/record-log.d.ts +8 -0
- package/dist/cli/runs/record-log.d.ts.map +1 -0
- package/dist/cli/runs/record-log.js +17 -0
- package/dist/cli/runs/record-log.js.map +1 -0
- package/dist/cli/runs/recording.d.ts +4 -1
- package/dist/cli/runs/recording.d.ts.map +1 -1
- package/dist/cli/runs/recording.js +11 -3
- package/dist/cli/runs/recording.js.map +1 -1
- package/dist/cli/runs/run.d.ts +4 -0
- package/dist/cli/runs/run.d.ts.map +1 -1
- package/dist/cli/runs/run.js +4 -0
- package/dist/cli/runs/run.js.map +1 -1
- package/dist/cli/runs/scope.d.ts +17 -0
- package/dist/cli/runs/scope.d.ts.map +1 -1
- package/dist/cli/runs/scope.js +25 -1
- package/dist/cli/runs/scope.js.map +1 -1
- package/dist/cli/settings.d.ts +4 -0
- package/dist/cli/settings.d.ts.map +1 -1
- package/dist/cli/settings.js +4 -0
- package/dist/cli/settings.js.map +1 -1
- package/dist/cli/steps.d.ts.map +1 -1
- package/dist/cli/steps.js +24 -0
- package/dist/cli/steps.js.map +1 -1
- package/dist/domain/google-documents.d.ts +4 -0
- package/dist/domain/google-documents.d.ts.map +1 -1
- package/dist/domain/google-documents.js +7 -6
- package/dist/domain/google-documents.js.map +1 -1
- package/dist/domain/mentions.d.ts +22 -0
- package/dist/domain/mentions.d.ts.map +1 -0
- package/dist/domain/mentions.js +139 -0
- package/dist/domain/mentions.js.map +1 -0
- package/dist/embeddings/embed.d.ts.map +1 -1
- package/dist/embeddings/embed.js +1 -4
- package/dist/embeddings/embed.js.map +1 -1
- package/dist/embeddings/models.d.ts +1 -1
- package/dist/entities/attachment.d.ts +6 -0
- package/dist/entities/attachment.d.ts.map +1 -1
- package/dist/entities/attachment.js +6 -0
- package/dist/entities/attachment.js.map +1 -1
- package/dist/entities/chat-event.d.ts +28 -0
- package/dist/entities/chat-event.d.ts.map +1 -0
- package/dist/entities/chat-event.js +19 -0
- package/dist/entities/chat-event.js.map +1 -0
- package/dist/entities/chat.d.ts +29 -0
- package/dist/entities/chat.d.ts.map +1 -1
- package/dist/entities/chat.js +15 -0
- package/dist/entities/chat.js.map +1 -1
- package/dist/entities/contact.d.ts +137 -0
- package/dist/entities/contact.d.ts.map +1 -1
- package/dist/entities/contact.js +6 -1
- package/dist/entities/contact.js.map +1 -1
- package/dist/entities/conversation.d.ts +16 -0
- package/dist/entities/conversation.d.ts.map +1 -0
- package/dist/entities/conversation.js +17 -0
- package/dist/entities/conversation.js.map +1 -0
- package/dist/entities/folder.d.ts +31 -0
- package/dist/entities/folder.d.ts.map +1 -0
- package/dist/entities/folder.js +25 -0
- package/dist/entities/folder.js.map +1 -0
- package/dist/entities/index.d.ts +385 -1
- package/dist/entities/index.d.ts.map +1 -1
- package/dist/entities/index.js +21 -1
- package/dist/entities/index.js.map +1 -1
- package/dist/entities/invite-link.d.ts +17 -0
- package/dist/entities/invite-link.d.ts.map +1 -0
- package/dist/entities/invite-link.js +18 -0
- package/dist/entities/invite-link.js.map +1 -0
- package/dist/entities/join-request.d.ts +12 -0
- package/dist/entities/join-request.d.ts.map +1 -0
- package/dist/entities/join-request.js +13 -0
- package/dist/entities/join-request.js.map +1 -0
- package/dist/entities/member.d.ts +24 -0
- package/dist/entities/member.d.ts.map +1 -0
- package/dist/entities/member.js +25 -0
- package/dist/entities/member.js.map +1 -0
- package/dist/entities/message-link.d.ts +10 -0
- package/dist/entities/message-link.d.ts.map +1 -0
- package/dist/entities/message-link.js +11 -0
- package/dist/entities/message-link.js.map +1 -0
- package/dist/entities/message.d.ts +19 -0
- package/dist/entities/message.d.ts.map +1 -1
- package/dist/entities/message.js +4 -0
- package/dist/entities/message.js.map +1 -1
- package/dist/entities/poll-vote.d.ts +11 -0
- package/dist/entities/poll-vote.d.ts.map +1 -0
- package/dist/entities/poll-vote.js +12 -0
- package/dist/entities/poll-vote.js.map +1 -0
- package/dist/entities/tagging.d.ts +14 -0
- package/dist/entities/tagging.d.ts.map +1 -0
- package/dist/entities/tagging.js +16 -0
- package/dist/entities/tagging.js.map +1 -0
- package/dist/entities/topic.d.ts +14 -0
- package/dist/entities/topic.d.ts.map +1 -0
- package/dist/entities/topic.js +15 -0
- package/dist/entities/topic.js.map +1 -0
- package/dist/images/picture/embedder.d.ts +15 -0
- package/dist/images/picture/embedder.d.ts.map +1 -0
- package/dist/images/picture/embedder.js +48 -0
- package/dist/images/picture/embedder.js.map +1 -0
- package/dist/images/picture/models.d.ts +27 -0
- package/dist/images/picture/models.d.ts.map +1 -0
- package/dist/images/picture/models.js +55 -0
- package/dist/images/picture/models.js.map +1 -0
- package/dist/images/picture/preprocess.d.ts +28 -0
- package/dist/images/picture/preprocess.d.ts.map +1 -0
- package/dist/images/picture/preprocess.js +48 -0
- package/dist/images/picture/preprocess.js.map +1 -0
- package/dist/mcp/agent-log.d.ts +7 -0
- package/dist/mcp/agent-log.d.ts.map +1 -1
- package/dist/mcp/agent-log.js +32 -0
- package/dist/mcp/agent-log.js.map +1 -1
- package/dist/mcp/instructions.d.ts.map +1 -1
- package/dist/mcp/instructions.js +3 -2
- package/dist/mcp/instructions.js.map +1 -1
- package/dist/mcp/prompts.js +3 -3
- package/dist/mcp/prompts.js.map +1 -1
- package/dist/mcp/tool.d.ts +1 -1
- package/dist/mcp/tool.d.ts.map +1 -1
- package/dist/mcp/tool.js +23 -11
- package/dist/mcp/tool.js.map +1 -1
- package/dist/mcp/tools/admin.d.ts.map +1 -1
- package/dist/mcp/tools/admin.js +41 -39
- package/dist/mcp/tools/admin.js.map +1 -1
- package/dist/mcp/tools/chats-read.d.ts.map +1 -1
- package/dist/mcp/tools/chats-read.js +4 -2
- package/dist/mcp/tools/chats-read.js.map +1 -1
- package/dist/mcp/tools/chats.d.ts.map +1 -1
- package/dist/mcp/tools/chats.js +77 -84
- package/dist/mcp/tools/chats.js.map +1 -1
- package/dist/mcp/tools/contacts-write.d.ts.map +1 -1
- package/dist/mcp/tools/contacts-write.js +4 -2
- package/dist/mcp/tools/contacts-write.js.map +1 -1
- package/dist/mcp/tools/contacts.d.ts.map +1 -1
- package/dist/mcp/tools/contacts.js +55 -30
- package/dist/mcp/tools/contacts.js.map +1 -1
- package/dist/mcp/tools/conversations.d.ts.map +1 -1
- package/dist/mcp/tools/conversations.js +12 -15
- package/dist/mcp/tools/conversations.js.map +1 -1
- package/dist/mcp/tools/folders.d.ts.map +1 -1
- package/dist/mcp/tools/folders.js +12 -11
- package/dist/mcp/tools/folders.js.map +1 -1
- package/dist/mcp/tools/messages.d.ts.map +1 -1
- package/dist/mcp/tools/messages.js +74 -59
- package/dist/mcp/tools/messages.js.map +1 -1
- package/dist/mcp/tools/moderation.d.ts.map +1 -1
- package/dist/mcp/tools/moderation.js +5 -3
- package/dist/mcp/tools/moderation.js.map +1 -1
- package/dist/mcp/tools/polls.d.ts.map +1 -1
- package/dist/mcp/tools/polls.js +31 -14
- package/dist/mcp/tools/polls.js.map +1 -1
- package/dist/mcp/tools/reactions.d.ts.map +1 -1
- package/dist/mcp/tools/reactions.js +4 -2
- package/dist/mcp/tools/reactions.js.map +1 -1
- package/dist/mcp/tools/search.d.ts +2 -0
- package/dist/mcp/tools/search.d.ts.map +1 -1
- package/dist/mcp/tools/tags.d.ts.map +1 -1
- package/dist/mcp/tools/tags.js +16 -11
- package/dist/mcp/tools/tags.js.map +1 -1
- package/dist/mcp/tools/tasks.d.ts.map +1 -1
- package/dist/mcp/tools/tasks.js +15 -20
- package/dist/mcp/tools/tasks.js.map +1 -1
- package/dist/mcp/tools/topics.d.ts.map +1 -1
- package/dist/mcp/tools/topics.js +30 -20
- package/dist/mcp/tools/topics.js.map +1 -1
- package/dist/meetings/cli/passage.d.ts.map +1 -1
- package/dist/meetings/cli/passage.js +6 -2
- package/dist/meetings/cli/passage.js.map +1 -1
- package/dist/sends/guard.js +3 -1
- package/dist/sends/guard.js.map +1 -1
- package/dist/sends/journal.d.ts.map +1 -1
- package/dist/sends/journal.js +11 -8
- package/dist/sends/journal.js.map +1 -1
- package/dist/sends/permissions.d.ts +1 -1
- package/dist/sends/permissions.d.ts.map +1 -1
- package/dist/sends/permissions.js +6 -1
- package/dist/sends/permissions.js.map +1 -1
- package/dist/services/admin.js +2 -2
- package/dist/services/admin.js.map +1 -1
- package/dist/services/backfill-jobs.d.ts +11 -1
- package/dist/services/backfill-jobs.d.ts.map +1 -1
- package/dist/services/backfill-jobs.js +36 -4
- package/dist/services/backfill-jobs.js.map +1 -1
- package/dist/services/chats.d.ts +6 -20
- package/dist/services/chats.d.ts.map +1 -1
- package/dist/services/chats.js +6 -43
- package/dist/services/chats.js.map +1 -1
- package/dist/services/conversations.d.ts +18 -4
- package/dist/services/conversations.d.ts.map +1 -1
- package/dist/services/conversations.js +29 -2
- package/dist/services/conversations.js.map +1 -1
- package/dist/services/deps.d.ts +5 -0
- package/dist/services/deps.d.ts.map +1 -1
- package/dist/services/deps.js.map +1 -1
- package/dist/services/document-pictures.d.ts +26 -0
- package/dist/services/document-pictures.d.ts.map +1 -0
- package/dist/services/document-pictures.js +37 -0
- package/dist/services/document-pictures.js.map +1 -0
- package/dist/services/index.d.ts +8 -3
- package/dist/services/index.d.ts.map +1 -1
- package/dist/services/index.js +8 -2
- package/dist/services/index.js.map +1 -1
- package/dist/services/meeting-hit-context.d.ts.map +1 -1
- package/dist/services/meeting-hit-context.js +5 -2
- package/dist/services/meeting-hit-context.js.map +1 -1
- package/dist/services/mentions.d.ts +30 -0
- package/dist/services/mentions.d.ts.map +1 -0
- package/dist/services/mentions.js +38 -0
- package/dist/services/mentions.js.map +1 -0
- package/dist/services/messages.d.ts +10 -0
- package/dist/services/messages.d.ts.map +1 -1
- package/dist/services/messages.js +1 -0
- package/dist/services/messages.js.map +1 -1
- package/dist/services/notes-search.d.ts +14 -1
- package/dist/services/notes-search.d.ts.map +1 -1
- package/dist/services/notes-search.js +46 -1
- package/dist/services/notes-search.js.map +1 -1
- package/dist/services/people.d.ts +1 -1
- package/dist/services/people.d.ts.map +1 -1
- package/dist/services/people.js +0 -18
- package/dist/services/people.js.map +1 -1
- package/dist/services/pictures.d.ts +56 -0
- package/dist/services/pictures.d.ts.map +1 -0
- package/dist/services/pictures.js +226 -0
- package/dist/services/pictures.js.map +1 -0
- package/dist/services/tags.d.ts +17 -6
- package/dist/services/tags.d.ts.map +1 -1
- package/dist/services/tags.js +42 -5
- package/dist/services/tags.js.map +1 -1
- package/dist/services/tasks.d.ts +28 -9
- package/dist/services/tasks.d.ts.map +1 -1
- package/dist/services/tasks.js +69 -11
- package/dist/services/tasks.js.map +1 -1
- package/dist/speech/hearing.d.ts +3 -0
- package/dist/speech/hearing.d.ts.map +1 -1
- package/dist/speech/hearing.js +16 -0
- package/dist/speech/hearing.js.map +1 -1
- package/dist/speech/install.d.ts +1 -1
- package/dist/speech/install.d.ts.map +1 -1
- package/dist/speech/install.js.map +1 -1
- package/dist/sqlite-runtime.d.ts +1 -1
- package/dist/sqlite-runtime.js +2 -2
- package/dist/sqlite-runtime.js.map +1 -1
- package/dist/store/account-store.d.ts +1 -1
- package/dist/store/account-store.d.ts.map +1 -1
- package/dist/store/account-store.js +5 -0
- package/dist/store/account-store.js.map +1 -1
- package/dist/store/drivers/bun-sqlite.js +1 -1
- package/dist/store/drivers/bun-sqlite.js.map +1 -1
- package/dist/store/index.d.ts +1 -1
- package/dist/store/index.d.ts.map +1 -1
- package/dist/store/index.js.map +1 -1
- package/dist/store/sqlite/conversations.d.ts +36 -4
- package/dist/store/sqlite/conversations.d.ts.map +1 -1
- package/dist/store/sqlite/conversations.js +20 -3
- package/dist/store/sqlite/conversations.js.map +1 -1
- package/dist/store/sqlite/document-pictures.d.ts +29 -0
- package/dist/store/sqlite/document-pictures.d.ts.map +1 -0
- package/dist/store/sqlite/document-pictures.js +81 -0
- package/dist/store/sqlite/document-pictures.js.map +1 -0
- package/dist/store/sqlite/emails.d.ts +10 -0
- package/dist/store/sqlite/emails.d.ts.map +1 -1
- package/dist/store/sqlite/emails.js +14 -0
- package/dist/store/sqlite/emails.js.map +1 -1
- package/dist/store/sqlite/entity-types.d.ts +1 -0
- package/dist/store/sqlite/entity-types.d.ts.map +1 -1
- package/dist/store/sqlite/entity-types.js +1 -0
- package/dist/store/sqlite/entity-types.js.map +1 -1
- package/dist/store/sqlite/image-chunks.d.ts +33 -2
- package/dist/store/sqlite/image-chunks.d.ts.map +1 -1
- package/dist/store/sqlite/image-chunks.js +45 -6
- package/dist/store/sqlite/image-chunks.js.map +1 -1
- package/dist/store/sqlite/manifest.d.ts.map +1 -1
- package/dist/store/sqlite/manifest.js +2 -0
- package/dist/store/sqlite/manifest.js.map +1 -1
- package/dist/store/sqlite/mentions.d.ts +61 -0
- package/dist/store/sqlite/mentions.d.ts.map +1 -0
- package/dist/store/sqlite/mentions.js +186 -0
- package/dist/store/sqlite/mentions.js.map +1 -0
- package/dist/store/sqlite/migrations.generated.d.ts.map +1 -1
- package/dist/store/sqlite/migrations.generated.js +19 -0
- package/dist/store/sqlite/migrations.generated.js.map +1 -1
- package/dist/store/sqlite/note-index.d.ts.map +1 -1
- package/dist/store/sqlite/note-index.js +3 -0
- package/dist/store/sqlite/note-index.js.map +1 -1
- package/dist/store/sqlite/note-search.d.ts +2 -1
- package/dist/store/sqlite/note-search.d.ts.map +1 -1
- package/dist/store/sqlite/note-search.js +4 -1
- package/dist/store/sqlite/note-search.js.map +1 -1
- package/dist/store/sqlite/notes.js +1 -1
- package/dist/store/sqlite/notes.js.map +1 -1
- package/dist/store/sqlite/schema.d.ts +339 -0
- package/dist/store/sqlite/schema.d.ts.map +1 -1
- package/dist/store/sqlite/schema.js +35 -0
- package/dist/store/sqlite/schema.js.map +1 -1
- package/dist/store/sqlite/tags.d.ts +7 -0
- package/dist/store/sqlite/tags.d.ts.map +1 -1
- package/dist/store/sqlite/tags.js +16 -9
- package/dist/store/sqlite/tags.js.map +1 -1
- package/dist/store/sqlite/tasks.d.ts +11 -1
- package/dist/store/sqlite/tasks.d.ts.map +1 -1
- package/dist/store/sqlite/tasks.js +11 -0
- package/dist/store/sqlite/tasks.js.map +1 -1
- package/dist/store/store.d.ts +57 -3
- package/dist/store/store.d.ts.map +1 -1
- package/dist/store/store.js +57 -7
- package/dist/store/store.js.map +1 -1
- package/package.json +6 -5
- package/parity.json +65 -104
- package/skills/follow-ups/SKILL.md +1 -1
- package/dist/cli/messenger/after.d.ts +0 -20
- package/dist/cli/messenger/after.d.ts.map +0 -1
- package/dist/cli/messenger/after.js +0 -27
- package/dist/cli/messenger/after.js.map +0 -1
|
@@ -33,18 +33,19 @@ export const saveImageChunks = ({ orm, now }, accountPk, chatKey, chunks, keep)
|
|
|
33
33
|
const inChat = sql `chunkable_id IN (SELECT a.id FROM attachments a JOIN messages m
|
|
34
34
|
ON a.attachable_type = 'message' AND m.id = a.attachable_id WHERE m.chat_id = ${chatKey})`;
|
|
35
35
|
const gone = sql `chunkable_type = 'image' AND (
|
|
36
|
-
(${inChat} AND chunkable_id NOT IN (SELECT value FROM json_each(${JSON.stringify(keep)})))
|
|
36
|
+
(${inChat} AND position = 0 AND chunkable_id NOT IN (SELECT value FROM json_each(${JSON.stringify(keep)})))
|
|
37
37
|
OR (account_id = ${accountPk} AND NOT EXISTS (SELECT 1 FROM attachments a WHERE a.id = chunkable_id)))`;
|
|
38
38
|
for (const { hash } of orm.all(sql `SELECT content_hash AS hash FROM chunks WHERE ${gone}`))
|
|
39
39
|
old.add(hash);
|
|
40
40
|
orm.run(sql `DELETE FROM chunks WHERE ${gone}`);
|
|
41
41
|
for (const { attachmentPk, hash, length, occurredAt } of chunks) {
|
|
42
|
-
const held = orm.get(sql `SELECT content_hash AS hash FROM chunks
|
|
42
|
+
const held = orm.get(sql `SELECT content_hash AS hash FROM chunks
|
|
43
|
+
WHERE chunkable_type = 'image' AND chunkable_id = ${attachmentPk} AND position = 0`);
|
|
43
44
|
if (held?.hash === hash)
|
|
44
45
|
continue;
|
|
45
46
|
if (held)
|
|
46
47
|
old.add(held.hash);
|
|
47
|
-
orm.run(sql `DELETE FROM chunks WHERE chunkable_type = 'image' AND chunkable_id = ${attachmentPk}`);
|
|
48
|
+
orm.run(sql `DELETE FROM chunks WHERE chunkable_type = 'image' AND chunkable_id = ${attachmentPk} AND position = 0`);
|
|
48
49
|
orm.run(sql `INSERT INTO chunks (chunkable_type, chunkable_id, position, start_offset, end_offset, content_hash, scope,
|
|
49
50
|
account_id, occurred_at, created_at, updated_at)
|
|
50
51
|
VALUES ('image', ${attachmentPk}, 0, 0, ${length}, ${hash}, ${scope}, ${accountPk}, ${occurredAt}, ${at}, ${at})`);
|
|
@@ -61,8 +62,11 @@ export const embeddedHashes = ({ orm }, model, hashes) => new Set(hashes.length
|
|
|
61
62
|
WHERE model = ${model} AND content_hash IN (SELECT value FROM json_each(${JSON.stringify(hashes)}))`)
|
|
62
63
|
.map(({ hash }) => hash));
|
|
63
64
|
const SCAN_PAGE = 5_000;
|
|
64
|
-
/**
|
|
65
|
-
|
|
65
|
+
/**
|
|
66
|
+
* The images of the account nearest to `query` by the vector of `model`, best first. Position 0 of an image is
|
|
67
|
+
* its context text, position 1 its picture (`PICTURE_POSITION`): a model's vectors only ever sit at one.
|
|
68
|
+
*/
|
|
69
|
+
export const nearestImages = ({ orm }, accountPk, { chatKey, model, since, limit, query, position = 0, }) => {
|
|
66
70
|
const found = [];
|
|
67
71
|
let after = 0;
|
|
68
72
|
for (;;) {
|
|
@@ -71,7 +75,8 @@ export const nearestImages = ({ orm }, accountPk, { chatKey, model, since, limit
|
|
|
71
75
|
JOIN messages m ON m.id = a.attachable_id AND m.deleted_at IS NULL
|
|
72
76
|
JOIN chats ch ON ch.id = m.chat_id
|
|
73
77
|
JOIN embeddings v ON v.model = ${model} AND v.content_hash = k.content_hash
|
|
74
|
-
WHERE k.chunkable_type = 'image' AND
|
|
78
|
+
WHERE k.chunkable_type = 'image' AND k.position = ${position} AND ch.account_id = ${accountPk}
|
|
79
|
+
AND k.id > ${after}
|
|
75
80
|
${chatKey === undefined ? sql `` : sql `AND m.chat_id = ${chatKey}`}
|
|
76
81
|
${since === undefined ? sql `` : sql `AND k.occurred_at >= ${since}`}
|
|
77
82
|
ORDER BY k.id LIMIT ${SCAN_PAGE}`);
|
|
@@ -84,4 +89,38 @@ export const nearestImages = ({ orm }, accountPk, { chatKey, model, since, limit
|
|
|
84
89
|
}
|
|
85
90
|
return found.sort((a, b) => b.score - a.score).slice(0, limit);
|
|
86
91
|
};
|
|
92
|
+
/** An image's own vector is its chunk at this position; position 0 is the text around it. */
|
|
93
|
+
export const PICTURE_POSITION = 1;
|
|
94
|
+
/** Live image attachments of the account that have no picture chunk yet, oldest id first, from `after`. */
|
|
95
|
+
export const picturesToEmbed = ({ orm }, accountPk, { chatKey, after, limit }) => orm.all(sql `SELECT a.id AS attachmentPk, ch.external_id AS chatId, m.external_id AS messageId, a.position,
|
|
96
|
+
a.name, a.mime, a.kind, a.local_path AS localPath, m.sent_at AS sentAt
|
|
97
|
+
FROM attachments a JOIN messages m ON a.attachable_type = 'message' AND m.id = a.attachable_id
|
|
98
|
+
JOIN chats ch ON ch.id = m.chat_id
|
|
99
|
+
WHERE ch.account_id = ${accountPk} AND m.deleted_at IS NULL AND ${IS_IMAGE} AND a.id > ${after ?? 0}
|
|
100
|
+
${chatKey === undefined ? sql `` : sql `AND m.chat_id = ${chatKey}`}
|
|
101
|
+
AND NOT EXISTS (SELECT 1 FROM chunks k WHERE k.chunkable_type = 'image' AND k.chunkable_id = a.id
|
|
102
|
+
AND k.position = ${PICTURE_POSITION})
|
|
103
|
+
ORDER BY a.id LIMIT ${limit}`);
|
|
104
|
+
/** Makes each hash the picture chunk of its image; the vectors are saved apart, by `saveVectors`. */
|
|
105
|
+
export const savePictureChunks = ({ orm, now }, accountPk, pictures) => {
|
|
106
|
+
const at = now();
|
|
107
|
+
const scope = orm.get(sql `SELECT scope FROM accounts WHERE id = ${accountPk}`)?.scope ?? null;
|
|
108
|
+
// A deleted message keeps no trace of its picture, as it keeps none of its text.
|
|
109
|
+
const gone = sql `chunkable_type = 'image' AND position = ${PICTURE_POSITION} AND account_id = ${accountPk}
|
|
110
|
+
AND NOT EXISTS (SELECT 1 FROM attachments a JOIN messages m ON a.attachable_type = 'message'
|
|
111
|
+
AND m.id = a.attachable_id WHERE a.id = chunkable_id AND m.deleted_at IS NULL)`;
|
|
112
|
+
const dropped = orm.all(sql `SELECT content_hash AS hash FROM chunks WHERE ${gone}`);
|
|
113
|
+
orm.run(sql `DELETE FROM chunks WHERE ${gone}`);
|
|
114
|
+
for (const { hash } of dropped)
|
|
115
|
+
orm.run(sql `DELETE FROM embeddings WHERE content_hash = ${hash}
|
|
116
|
+
AND NOT EXISTS (SELECT 1 FROM chunks WHERE content_hash = ${hash})`);
|
|
117
|
+
for (const { attachmentPk, hash, bytes, occurredAt } of pictures) {
|
|
118
|
+
orm.run(sql `DELETE FROM chunks WHERE chunkable_type = 'image' AND chunkable_id = ${attachmentPk}
|
|
119
|
+
AND position = ${PICTURE_POSITION}`);
|
|
120
|
+
orm.run(sql `INSERT INTO chunks (chunkable_type, chunkable_id, position, start_offset, end_offset, content_hash, scope,
|
|
121
|
+
account_id, occurred_at, created_at, updated_at)
|
|
122
|
+
VALUES ('image', ${attachmentPk}, ${PICTURE_POSITION}, 0, ${bytes}, ${hash}, ${scope}, ${accountPk},
|
|
123
|
+
${occurredAt}, ${at}, ${at})`);
|
|
124
|
+
}
|
|
125
|
+
};
|
|
87
126
|
//# sourceMappingURL=image-chunks.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"image-chunks.js","sourceRoot":"","sources":["../../../src/store/sqlite/image-chunks.ts"],"names":[],"mappings":"AAAA,OAAO,EAAY,GAAG,EAAE,MAAM,mBAAmB,CAAA;AAEjD,OAAO,EAAE,GAAG,EAAE,MAAM,cAAc,CAAA;AAElC,MAAM,QAAQ,GAAG,GAAG,CAAA,6CAA6C,CAAA;AAyBjE,MAAM,UAAU,GAAG,CACjB,EAAE,GAAG,EAAgB,EACrB,OAAe,EACf,SAAiB,EACjB,MAAc,EACd,EAAE,QAAQ,EAAE,QAAQ,EAA0C,EAC9D,IAAwB,EACR,EAAE,CAClB,GAAG,CAAC,GAAG,CACL,GAAG,CAAA;wBACiB,OAAO,0DAA0D,SAAS;cAExF,IAAI,KAAK,QAAQ;IACf,CAAC,CAAC,GAAG,CAAA,oBAAoB,MAAM,KAAK,SAAS,oBAAoB,MAAM,GAAG,QAAQ,EAAE;IACpF,CAAC,CAAC,GAAG,CAAA,oBAAoB,MAAM,KAAK,SAAS,oBAAoB,MAAM,GAAG,QAAQ,EACtF;yBACiB,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAA,MAAM,CAAC,CAAC,CAAC,GAAG,CAAA,KAAK,QAAQ,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAA,MAAM,CAAC,CAAC,CAAC,GAAG,CAAA,KAAK;cACnG,QAAQ,EAAE,CACrB,CAAA;AAEH,MAAM,CAAC,MAAM,YAAY,GAAG,CAC1B,OAAqB,EACrB,OAAe,EACf,MAA8C,EAChC,EAAE,CAChB,OAAO,CAAC,GAAG;KACR,GAAG,CAcF,GAAG,CAAA;;;;;;4BAMmB,OAAO,iCAAiC,QAAQ;6CAC/B,CACxC;KACA,GAAG,CAAC,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,EAAE,CAAC,CAAC;IACjC,GAAG,KAAK;IACR,MAAM,EAAE,UAAU,CAAC,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,KAAK,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,CAAC;IAC/E,KAAK,EAAE,UAAU,CAAC,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,KAAK,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC;CAC9E,CAAC,CAAC,CAAA;AASP;;;GAGG;AACH,MAAM,CAAC,MAAM,eAAe,GAAG,CAC7B,EAAE,GAAG,EAAE,GAAG,EAAgB,EAC1B,SAAiB,EACjB,OAAe,EACf,MAAoB,EACpB,IAAc,EACR,EAAE;IACR,MAAM,EAAE,GAAG,GAAG,EAAE,CAAA;IAChB,MAAM,KAAK,GACT,GAAG,CAAC,GAAG,CAA2B,GAAG,CAAA,yCAAyC,SAAS,EAAE,CAAC,EAAE,KAAK,IAAI,IAAI,CAAA;IAC3G,MAAM,GAAG,GAAG,IAAI,GAAG,EAAU,CAAA;IAC7B,MAAM,MAAM,GAAG,GAAG,CAAA;oFACgE,OAAO,GAAG,CAAA;IAC5F,MAAM,IAAI,GAAQ,GAAG,CAAA;OAChB,MAAM,
|
|
1
|
+
{"version":3,"file":"image-chunks.js","sourceRoot":"","sources":["../../../src/store/sqlite/image-chunks.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"manifest.d.ts","sourceRoot":"","sources":["../../../src/store/sqlite/manifest.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAA;AAGjD;;;;;;;GAOG;AACH,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,MAAM,CAAA;IACZ,OAAO,EAAE,MAAM,CAAA;IACf,aAAa,EAAE,MAAM,CAAA;CACtB;AAED,4FAA4F;AAC5F,eAAO,MAAM,QAAQ,EAAE,aAAa,
|
|
1
|
+
{"version":3,"file":"manifest.d.ts","sourceRoot":"","sources":["../../../src/store/sqlite/manifest.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAA;AAGjD;;;;;;;GAOG;AACH,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,MAAM,CAAA;IACZ,OAAO,EAAE,MAAM,CAAA;IACf,aAAa,EAAE,MAAM,CAAA;CACtB;AAED,4FAA4F;AAC5F,eAAO,MAAM,QAAQ,EAAE,aAAa,EAUnC,CAAA;AAED,eAAO,MAAM,mBAAmB,cACpB,aAAa,EAAE,cACd;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,MAAM,EAAE,CAAA;CAAE,EAAE,KAClD,SAAS,EAeX,CAAA"}
|
|
@@ -8,6 +8,8 @@ export const MANIFEST = [
|
|
|
8
8
|
{ name: "20261011172120_version-4-task-next-check", version: 4, minCompatible: 1 },
|
|
9
9
|
{ name: "20261013090001_version-5-file-name-words", version: 5, minCompatible: 1 },
|
|
10
10
|
{ name: "20261013201057_version-6-query-tree-keys", version: 6, minCompatible: 1 },
|
|
11
|
+
{ name: "20261013215247_version-7-mentions", version: 7, minCompatible: 1 },
|
|
12
|
+
{ name: "20261013215251_version-7-mentions-triggers", version: 7, minCompatible: 1 },
|
|
11
13
|
];
|
|
12
14
|
export const generatedMigrations = (manifest = MANIFEST, generated = GENERATED) => {
|
|
13
15
|
const migrations = [];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"manifest.js","sourceRoot":"","sources":["../../../src/store/sqlite/manifest.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAA;AAgBrD,4FAA4F;AAC5F,MAAM,CAAC,MAAM,QAAQ,GAAoB;IACvC,EAAE,IAAI,EAAE,wBAAwB,EAAE,OAAO,EAAE,CAAC,EAAE,aAAa,EAAE,CAAC,EAAE;IAChE,EAAE,IAAI,EAAE,gCAAgC,EAAE,OAAO,EAAE,CAAC,EAAE,aAAa,EAAE,CAAC,EAAE;IACxE,EAAE,IAAI,EAAE,8CAA8C,EAAE,OAAO,EAAE,CAAC,EAAE,aAAa,EAAE,CAAC,EAAE;IACtF,EAAE,IAAI,EAAE,qCAAqC,EAAE,OAAO,EAAE,CAAC,EAAE,aAAa,EAAE,CAAC,EAAE;IAC7E,EAAE,IAAI,EAAE,0CAA0C,EAAE,OAAO,EAAE,CAAC,EAAE,aAAa,EAAE,CAAC,EAAE;IAClF,EAAE,IAAI,EAAE,0CAA0C,EAAE,OAAO,EAAE,CAAC,EAAE,aAAa,EAAE,CAAC,EAAE;IAClF,EAAE,IAAI,EAAE,0CAA0C,EAAE,OAAO,EAAE,CAAC,EAAE,aAAa,EAAE,CAAC,EAAE;
|
|
1
|
+
{"version":3,"file":"manifest.js","sourceRoot":"","sources":["../../../src/store/sqlite/manifest.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAA;AAgBrD,4FAA4F;AAC5F,MAAM,CAAC,MAAM,QAAQ,GAAoB;IACvC,EAAE,IAAI,EAAE,wBAAwB,EAAE,OAAO,EAAE,CAAC,EAAE,aAAa,EAAE,CAAC,EAAE;IAChE,EAAE,IAAI,EAAE,gCAAgC,EAAE,OAAO,EAAE,CAAC,EAAE,aAAa,EAAE,CAAC,EAAE;IACxE,EAAE,IAAI,EAAE,8CAA8C,EAAE,OAAO,EAAE,CAAC,EAAE,aAAa,EAAE,CAAC,EAAE;IACtF,EAAE,IAAI,EAAE,qCAAqC,EAAE,OAAO,EAAE,CAAC,EAAE,aAAa,EAAE,CAAC,EAAE;IAC7E,EAAE,IAAI,EAAE,0CAA0C,EAAE,OAAO,EAAE,CAAC,EAAE,aAAa,EAAE,CAAC,EAAE;IAClF,EAAE,IAAI,EAAE,0CAA0C,EAAE,OAAO,EAAE,CAAC,EAAE,aAAa,EAAE,CAAC,EAAE;IAClF,EAAE,IAAI,EAAE,0CAA0C,EAAE,OAAO,EAAE,CAAC,EAAE,aAAa,EAAE,CAAC,EAAE;IAClF,EAAE,IAAI,EAAE,mCAAmC,EAAE,OAAO,EAAE,CAAC,EAAE,aAAa,EAAE,CAAC,EAAE;IAC3E,EAAE,IAAI,EAAE,4CAA4C,EAAE,OAAO,EAAE,CAAC,EAAE,aAAa,EAAE,CAAC,EAAE;CACrF,CAAA;AAED,MAAM,CAAC,MAAM,mBAAmB,GAAG,CACjC,QAAQ,GAAoB,QAAQ,EACpC,SAAS,GAA6C,SAAS,EAClD,EAAE;IACf,MAAM,UAAU,GAAgB,EAAE,CAAA;IAClC,KAAK,MAAM,KAAK,IAAI,QAAQ,EAAE,CAAC;QAC7B,MAAM,KAAK,GAAG,SAAS,CAAC,IAAI,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC,IAAI,KAAK,KAAK,CAAC,IAAI,CAAC,CAAA;QAC/D,IAAI,CAAC,KAAK;YAAE,MAAM,IAAI,KAAK,CAAC,aAAa,KAAK,CAAC,IAAI,gEAAgE,CAAC,CAAA;QACpH,MAAM,IAAI,GAAG,UAAU,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAA;QAC9B,IAAI,IAAI,EAAE,OAAO,KAAK,KAAK,CAAC,OAAO,EAAE,CAAC;YACpC,UAAU,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,aAAa,EAAE,KAAK,CAAC,aAAa,EAAE,UAAU,EAAE,CAAC,GAAG,KAAK,CAAC,UAAU,CAAC,EAAE,CAAC,CAAA;QACpH,CAAC;aAAM,IAAI,IAAI,CAAC,aAAa,KAAK,KAAK,CAAC,aAAa,EAAE,CAAC;YACtD,MAAM,IAAI,KAAK,CAAC,uBAAuB,KAAK,CAAC,OAAO,4BAA4B,CAAC,CAAA;QACnF,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,KAAK,CAAC,UAAU,CAAC,CAAA;QAC3C,CAAC;IACH,CAAC;IACD,OAAO,UAAU,CAAA;AACnB,CAAC,CAAA"}
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
import { type QueryAst } from "@wirecat/cli-base/query";
|
|
2
|
+
import { type MentionKind } from "../../domain/mentions.js";
|
|
3
|
+
import type { CacheDatabase } from "../driver.js";
|
|
4
|
+
/** A stored mention of a message's text, with what `mentions list` and `show` need to point at it. */
|
|
5
|
+
export interface StoredMention {
|
|
6
|
+
id: number;
|
|
7
|
+
kind: MentionKind;
|
|
8
|
+
value: string;
|
|
9
|
+
domain: string | null;
|
|
10
|
+
confidence: number;
|
|
11
|
+
status: MentionStatus;
|
|
12
|
+
/** The message it was found in: its chat's and its own id in the messenger. */
|
|
13
|
+
chatId: string;
|
|
14
|
+
messageId: string;
|
|
15
|
+
sentAt: string;
|
|
16
|
+
/** What was written, read back from the message: never copied into the mention. */
|
|
17
|
+
written: string;
|
|
18
|
+
}
|
|
19
|
+
export declare const MENTION_STATUSES: readonly ["found", "linked", "dismissed"];
|
|
20
|
+
export type MentionStatus = (typeof MENTION_STATUSES)[number];
|
|
21
|
+
/** The fields of `mentions list`; a bare word is a `value`. */
|
|
22
|
+
export declare const MENTION_QUERY: import("@wirecat/cli-base/query").QueryRegistry;
|
|
23
|
+
export interface MentionsState {
|
|
24
|
+
/** Messages written or edited since their mentions were found. */
|
|
25
|
+
pending: number;
|
|
26
|
+
/** When `mentions rebuild` last read every stored message; `null` before the first. */
|
|
27
|
+
rebuiltAt: string | null;
|
|
28
|
+
}
|
|
29
|
+
export interface MentionsRebuild {
|
|
30
|
+
messages: number;
|
|
31
|
+
mentions: number;
|
|
32
|
+
}
|
|
33
|
+
/** Mentions a store write finds before it commits: an older binary may have queued thousands. */
|
|
34
|
+
export declare const DRAIN_ON_WRITE = 500;
|
|
35
|
+
/** Finds the mentions of the messages a store write queued, inside that write's transaction. */
|
|
36
|
+
export declare const drainMentions: (database: CacheDatabase, now: number, limit?: number) => number;
|
|
37
|
+
/**
|
|
38
|
+
* Finds the mentions of every stored message again, in short write transactions. Decisions stay: a linked or
|
|
39
|
+
* dismissed mention's status moves to the new row with the same kind and value. `kinds` redoes only those.
|
|
40
|
+
*/
|
|
41
|
+
export declare const rebuildMentions: (database: CacheDatabase, { now, kinds, onBatch, }: {
|
|
42
|
+
now: number;
|
|
43
|
+
kinds?: readonly MentionKind[];
|
|
44
|
+
onBatch?: (done: number, total: number) => void;
|
|
45
|
+
}) => MentionsRebuild;
|
|
46
|
+
export declare const mentionsState: (database: CacheDatabase) => MentionsState;
|
|
47
|
+
/** One account's mentions that match the query, newest message first. `limit` absent is every row. */
|
|
48
|
+
export declare const listMentions: (database: CacheDatabase, accountPk: number, query: QueryAst | undefined, { limit, offset }: {
|
|
49
|
+
limit?: number;
|
|
50
|
+
offset: number;
|
|
51
|
+
}) => {
|
|
52
|
+
items: StoredMention[];
|
|
53
|
+
hasMore: boolean;
|
|
54
|
+
};
|
|
55
|
+
/** One mention of the account, with the text around it and how many other places hold the same value. */
|
|
56
|
+
export declare const showMention: (database: CacheDatabase, accountPk: number, id: number, around?: number) => (StoredMention & {
|
|
57
|
+
before: string;
|
|
58
|
+
after: string;
|
|
59
|
+
sameValue: number;
|
|
60
|
+
}) | undefined;
|
|
61
|
+
//# sourceMappingURL=mentions.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mentions.d.ts","sourceRoot":"","sources":["../../../src/store/sqlite/mentions.ts"],"names":[],"mappings":"AAAA,OAAO,EAAe,KAAK,QAAQ,EAAE,MAAM,yBAAyB,CAAA;AACpE,OAAO,EAIL,KAAK,WAAW,EAGjB,MAAM,0BAA0B,CAAA;AACjC,OAAO,KAAK,EAAE,aAAa,EAAY,MAAM,cAAc,CAAA;AAG3D,sGAAsG;AACtG,MAAM,WAAW,aAAa;IAC5B,EAAE,EAAE,MAAM,CAAA;IACV,IAAI,EAAE,WAAW,CAAA;IACjB,KAAK,EAAE,MAAM,CAAA;IACb,MAAM,EAAE,MAAM,GAAG,IAAI,CAAA;IACrB,UAAU,EAAE,MAAM,CAAA;IAClB,MAAM,EAAE,aAAa,CAAA;IACrB,+EAA+E;IAC/E,MAAM,EAAE,MAAM,CAAA;IACd,SAAS,EAAE,MAAM,CAAA;IACjB,MAAM,EAAE,MAAM,CAAA;IACd,mFAAmF;IACnF,OAAO,EAAE,MAAM,CAAA;CAChB;AAED,eAAO,MAAM,gBAAgB,YAAI,OAAO,EAAE,QAAQ,EAAE,WAAW,CAAU,CAAA;AACzE,MAAM,MAAM,aAAa,GAAG,CAAC,OAAO,gBAAgB,CAAC,CAAC,MAAM,CAAC,CAAA;AAE7D,+DAA+D;AAC/D,eAAO,MAAM,aAAa,iDAqBxB,CAAA;AASF,MAAM,WAAW,aAAa;IAC5B,kEAAkE;IAClE,OAAO,EAAE,MAAM,CAAA;IACf,uFAAuF;IACvF,SAAS,EAAE,MAAM,GAAG,IAAI,CAAA;CACzB;AAED,MAAM,WAAW,eAAe;IAC9B,QAAQ,EAAE,MAAM,CAAA;IAChB,QAAQ,EAAE,MAAM,CAAA;CACjB;AAED,iGAAiG;AACjG,eAAO,MAAM,cAAc,MAAM,CAAA;AA0DjC,gGAAgG;AAChG,eAAO,MAAM,aAAa,aAAc,aAAa,OAAO,MAAM,qBAA2B,MAc5F,CAAA;AAED;;;GAGG;AACH,eAAO,MAAM,eAAe,aAChB,aAAa,4BAKpB;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,SAAS,WAAW,EAAE,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,KAAK,IAAI,CAAA;CAAE,KAClG,eAqCF,CAAA;AAED,eAAO,MAAM,aAAa,aAAc,aAAa,KAAG,aAIvD,CAAA;AAqBD,sGAAsG;AACtG,eAAO,MAAM,YAAY,aACb,aAAa,aACZ,MAAM,SACV,QAAQ,GAAG,SAAS,qBACR;IAAE,KAAK,CAAC,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,KACpD;IAAE,KAAK,EAAE,aAAa,EAAE,CAAC;IAAC,OAAO,EAAE,OAAO,CAAA;CAkB5C,CAAA;AAED,yGAAyG;AACzG,eAAO,MAAM,WAAW,aACZ,aAAa,aACZ,MAAM,MACb,MAAM,sBAET,CAAC,aAAa,GAAG;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE,CAAC,GAAG,SAiB3E,CAAA"}
|
|
@@ -0,0 +1,186 @@
|
|
|
1
|
+
import { defineQuery } from "@wirecat/cli-base/query";
|
|
2
|
+
import { findMentions, MENTION_KINDS, MENTION_VERSIONS, normalizedValue, siteOf, } from "../../domain/mentions.js";
|
|
3
|
+
import { queryFilter } from "./query-filter.js";
|
|
4
|
+
export const MENTION_STATUSES = ["found", "linked", "dismissed"];
|
|
5
|
+
/** The fields of `mentions list`; a bare word is a `value`. */
|
|
6
|
+
export const MENTION_QUERY = defineQuery({
|
|
7
|
+
entity: "mention",
|
|
8
|
+
backend: "sql",
|
|
9
|
+
fields: [
|
|
10
|
+
{ name: "kind", type: "enum", values: [...MENTION_KINDS], operators: ["term"], example: "kind:phone" },
|
|
11
|
+
{ name: "status", type: "enum", values: [...MENTION_STATUSES], operators: ["term"], example: "status:found" },
|
|
12
|
+
{
|
|
13
|
+
name: "domain",
|
|
14
|
+
type: "kw",
|
|
15
|
+
operators: ["term", "phrase"],
|
|
16
|
+
example: "domain:google.com",
|
|
17
|
+
relation: "the site of a link or an address; docs.google.com means google.com",
|
|
18
|
+
},
|
|
19
|
+
{
|
|
20
|
+
name: "value",
|
|
21
|
+
type: "kw",
|
|
22
|
+
operators: ["term", "phrase"],
|
|
23
|
+
example: 'value:"8 900 000-00-01"',
|
|
24
|
+
relation: "the value in the form it is stored: a phone as +7…, a lower-case address, a link without tracking",
|
|
25
|
+
},
|
|
26
|
+
],
|
|
27
|
+
});
|
|
28
|
+
const COLUMNS = {
|
|
29
|
+
kind: { type: "enum", sql: "mn.kind" },
|
|
30
|
+
status: { type: "enum", sql: "mn.status" },
|
|
31
|
+
domain: { where: (node) => ({ sql: "mn.domain = ?", params: [siteOf(node.value.toLowerCase())] }) },
|
|
32
|
+
value: { where: (node) => ({ sql: "mn.value = ?", params: [normalizedValue(node.value)] }) },
|
|
33
|
+
};
|
|
34
|
+
/** Mentions a store write finds before it commits: an older binary may have queued thousands. */
|
|
35
|
+
export const DRAIN_ON_WRITE = 500;
|
|
36
|
+
const REBUILD_BATCH = 1000;
|
|
37
|
+
const REBUILT_AT = "mentionsRebuiltAt";
|
|
38
|
+
const METHOD = "rules";
|
|
39
|
+
const writer = (database, now, kinds) => {
|
|
40
|
+
const only = kinds ? ` AND kind IN (${kinds.map(() => "?").join(", ")})` : "";
|
|
41
|
+
const decided = database.prepare("SELECT kind, value, status, target_type, target_id, author FROM mentions " +
|
|
42
|
+
`WHERE source_type = 'message' AND source_id = ? AND status <> 'found'${only}`);
|
|
43
|
+
const remove = database.prepare(`DELETE FROM mentions WHERE source_type = 'message' AND source_id = ?${only}`);
|
|
44
|
+
const insert = database.prepare("INSERT OR IGNORE INTO mentions (kind, source_type, source_id, source_field, start_offset, end_offset, value, " +
|
|
45
|
+
"domain, method, version, confidence, status, target_type, target_id, author, created_at, updated_at) " +
|
|
46
|
+
"VALUES (?, 'message', ?, 'text', ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)");
|
|
47
|
+
const scope = kinds ?? [];
|
|
48
|
+
return (messagePk, text) => {
|
|
49
|
+
const kept = new Map(decided.all(messagePk, ...scope).map((row) => [`${row.kind}\u0000${row.value}`, row]));
|
|
50
|
+
remove.run(messagePk, ...scope);
|
|
51
|
+
if (text === null)
|
|
52
|
+
return 0;
|
|
53
|
+
let written = 0;
|
|
54
|
+
for (const found of findMentions(text)) {
|
|
55
|
+
if (kinds && !kinds.includes(found.kind))
|
|
56
|
+
continue;
|
|
57
|
+
const decision = kept.get(`${found.kind}\u0000${found.value}`);
|
|
58
|
+
written += Number(insert.run(found.kind, messagePk, found.start, found.end, found.value, found.domain, METHOD, MENTION_VERSIONS[found.kind], found.confidence, decision ? String(decision.status) : "found", decision?.target_type == null ? null : String(decision.target_type), decision?.target_id == null ? null : Number(decision.target_id), decision?.author == null ? null : String(decision.author), now, now).changes);
|
|
59
|
+
}
|
|
60
|
+
return written;
|
|
61
|
+
};
|
|
62
|
+
};
|
|
63
|
+
const liveText = (database) => {
|
|
64
|
+
const read = database.prepare("SELECT text FROM messages WHERE id = ? AND deleted_at IS NULL");
|
|
65
|
+
return (pk) => {
|
|
66
|
+
const row = read.get(pk);
|
|
67
|
+
return row ? String(row.text) : null;
|
|
68
|
+
};
|
|
69
|
+
};
|
|
70
|
+
/** Finds the mentions of the messages a store write queued, inside that write's transaction. */
|
|
71
|
+
export const drainMentions = (database, now, limit = DRAIN_ON_WRITE) => {
|
|
72
|
+
const queued = database
|
|
73
|
+
.prepare("SELECT source_id FROM mention_pending WHERE source_type = 'message' ORDER BY source_id LIMIT ?")
|
|
74
|
+
.all(limit)
|
|
75
|
+
.map((row) => Number(row.source_id));
|
|
76
|
+
if (queued.length === 0)
|
|
77
|
+
return 0;
|
|
78
|
+
const write = writer(database, now, undefined);
|
|
79
|
+
const text = liveText(database);
|
|
80
|
+
const dequeue = database.prepare("DELETE FROM mention_pending WHERE source_type = 'message' AND source_id = ?");
|
|
81
|
+
for (const pk of queued) {
|
|
82
|
+
write(pk, text(pk));
|
|
83
|
+
dequeue.run(pk);
|
|
84
|
+
}
|
|
85
|
+
return queued.length;
|
|
86
|
+
};
|
|
87
|
+
/**
|
|
88
|
+
* Finds the mentions of every stored message again, in short write transactions. Decisions stay: a linked or
|
|
89
|
+
* dismissed mention's status moves to the new row with the same kind and value. `kinds` redoes only those.
|
|
90
|
+
*/
|
|
91
|
+
export const rebuildMentions = (database, { now, kinds, onBatch, }) => {
|
|
92
|
+
const total = Number(database.prepare("SELECT count(*) AS n FROM messages WHERE deleted_at IS NULL").get()?.n);
|
|
93
|
+
const batch = database.prepare("SELECT id, text FROM messages WHERE id > ? AND deleted_at IS NULL ORDER BY id LIMIT ?");
|
|
94
|
+
let after = 0;
|
|
95
|
+
let messages = 0;
|
|
96
|
+
let mentions = 0;
|
|
97
|
+
for (;;) {
|
|
98
|
+
const rows = batch.all(after, REBUILD_BATCH);
|
|
99
|
+
if (rows.length === 0)
|
|
100
|
+
break;
|
|
101
|
+
database.exec("BEGIN IMMEDIATE");
|
|
102
|
+
try {
|
|
103
|
+
const write = writer(database, now, kinds);
|
|
104
|
+
const dequeue = database.prepare("DELETE FROM mention_pending WHERE source_type = 'message' AND source_id = ?");
|
|
105
|
+
for (const row of rows) {
|
|
106
|
+
mentions += write(Number(row.id), String(row.text));
|
|
107
|
+
if (!kinds)
|
|
108
|
+
dequeue.run(Number(row.id));
|
|
109
|
+
}
|
|
110
|
+
database.exec("COMMIT");
|
|
111
|
+
}
|
|
112
|
+
catch (error) {
|
|
113
|
+
database.exec("ROLLBACK");
|
|
114
|
+
throw error;
|
|
115
|
+
}
|
|
116
|
+
messages += rows.length;
|
|
117
|
+
after = Number(rows.at(-1)?.id);
|
|
118
|
+
onBatch?.(messages, total);
|
|
119
|
+
}
|
|
120
|
+
if (!kinds) {
|
|
121
|
+
database
|
|
122
|
+
.prepare("INSERT INTO store_settings (key, value, at) VALUES (?, ?, ?) " +
|
|
123
|
+
"ON CONFLICT (key) DO UPDATE SET value = excluded.value, at = excluded.at")
|
|
124
|
+
.run(REBUILT_AT, JSON.stringify(new Date(now).toISOString()), now);
|
|
125
|
+
}
|
|
126
|
+
return { messages, mentions };
|
|
127
|
+
};
|
|
128
|
+
export const mentionsState = (database) => {
|
|
129
|
+
const pending = Number(database.prepare("SELECT count(*) AS n FROM mention_pending").get()?.n);
|
|
130
|
+
const row = database.prepare("SELECT value FROM store_settings WHERE key = ?").get(REBUILT_AT);
|
|
131
|
+
return { pending, rebuiltAt: row ? JSON.parse(String(row.value)) : null };
|
|
132
|
+
};
|
|
133
|
+
const SELECT = "SELECT mn.id, mn.kind, mn.value, mn.domain, mn.confidence, mn.status, mn.start_offset, mn.end_offset, " +
|
|
134
|
+
"m.text, m.external_id AS message_id, m.sent_at, c.external_id AS chat_id " +
|
|
135
|
+
"FROM mentions mn JOIN messages m ON mn.source_type = 'message' AND m.id = mn.source_id AND m.deleted_at IS NULL " +
|
|
136
|
+
"JOIN chats c ON c.id = m.chat_id ";
|
|
137
|
+
const stored = (row) => ({
|
|
138
|
+
id: Number(row.id),
|
|
139
|
+
kind: String(row.kind),
|
|
140
|
+
value: String(row.value),
|
|
141
|
+
domain: row.domain == null ? null : String(row.domain),
|
|
142
|
+
confidence: Number(row.confidence),
|
|
143
|
+
status: String(row.status),
|
|
144
|
+
chatId: String(row.chat_id),
|
|
145
|
+
messageId: String(row.message_id),
|
|
146
|
+
sentAt: new Date(Number(row.sent_at)).toISOString(),
|
|
147
|
+
written: String(row.text).slice(Number(row.start_offset), Number(row.end_offset)),
|
|
148
|
+
});
|
|
149
|
+
/** One account's mentions that match the query, newest message first. `limit` absent is every row. */
|
|
150
|
+
export const listMentions = (database, accountPk, query, { limit, offset }) => {
|
|
151
|
+
const where = ["m.account_id = ?"];
|
|
152
|
+
const params = [accountPk];
|
|
153
|
+
if (query) {
|
|
154
|
+
const compiled = queryFilter(query, COLUMNS);
|
|
155
|
+
if (compiled.sql) {
|
|
156
|
+
where.push(`(${compiled.sql})`);
|
|
157
|
+
params.push(...compiled.params);
|
|
158
|
+
}
|
|
159
|
+
}
|
|
160
|
+
const rows = database
|
|
161
|
+
.prepare(`${SELECT}WHERE ${where.join(" AND ")} ORDER BY m.sent_at DESC, m.id DESC, mn.start_offset, mn.id LIMIT ? OFFSET ?`)
|
|
162
|
+
.all(...params, limit === undefined ? -1 : limit + 1, offset);
|
|
163
|
+
const items = rows.map(stored);
|
|
164
|
+
if (limit === undefined || items.length <= limit)
|
|
165
|
+
return { items, hasMore: false };
|
|
166
|
+
return { items: items.slice(0, limit), hasMore: true };
|
|
167
|
+
};
|
|
168
|
+
/** One mention of the account, with the text around it and how many other places hold the same value. */
|
|
169
|
+
export const showMention = (database, accountPk, id, around = 80) => {
|
|
170
|
+
const row = database.prepare(`${SELECT}WHERE mn.id = ? AND m.account_id = ?`).get(id, accountPk);
|
|
171
|
+
if (!row)
|
|
172
|
+
return undefined;
|
|
173
|
+
const text = String(row.text);
|
|
174
|
+
const start = Number(row.start_offset);
|
|
175
|
+
const end = Number(row.end_offset);
|
|
176
|
+
const sameValue = Number(database
|
|
177
|
+
.prepare("SELECT count(*) AS n FROM mentions WHERE kind = ? AND value = ? AND id <> ?")
|
|
178
|
+
.get(String(row.kind), String(row.value), id)?.n);
|
|
179
|
+
return {
|
|
180
|
+
...stored(row),
|
|
181
|
+
before: text.slice(Math.max(0, start - around), start),
|
|
182
|
+
after: text.slice(end, end + around),
|
|
183
|
+
sameValue,
|
|
184
|
+
};
|
|
185
|
+
};
|
|
186
|
+
//# sourceMappingURL=mentions.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mentions.js","sourceRoot":"","sources":["../../../src/store/sqlite/mentions.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"migrations.generated.d.ts","sourceRoot":"","sources":["../../../src/store/sqlite/migrations.generated.ts"],"names":[],"mappings":"AACA,eAAO,MAAM,SAAS,EAAE;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,MAAM,EAAE,CAAA;CAAE,
|
|
1
|
+
{"version":3,"file":"migrations.generated.d.ts","sourceRoot":"","sources":["../../../src/store/sqlite/migrations.generated.ts"],"names":[],"mappings":"AACA,eAAO,MAAM,SAAS,EAAE;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,MAAM,EAAE,CAAA;CAAE,EAyX7D,CAAA"}
|
|
@@ -356,6 +356,25 @@ export const GENERATED = [
|
|
|
356
356
|
"-- A query tree kept in a search — `params.ast` and a ranking's `params.selection` — takes cli-base 0.26's keys:\n-- `lower_inclusive`, `upper_inclusive` and the occur `must_not`. A text replace keeps every key in place, so\n-- `params` stays the canonical text that history matches on; inside a JSON string these quotes are escaped, so a\n-- message's words never match.\nUPDATE searches SET params = json_set(params, '$.ast', json(\n replace(replace(replace(json_extract(params, '$.ast'),\n '\"lowerInclusive\":', '\"lower_inclusive\":'),\n '\"upperInclusive\":', '\"upper_inclusive\":'),\n '\"occur\":\"mustNot\"', '\"occur\":\"must_not\"')))\nWHERE json_type(params, '$.ast') = 'object';",
|
|
357
357
|
"UPDATE searches SET params = json_set(params, '$.selection', json(\n replace(replace(replace(json_extract(params, '$.selection'),\n '\"lowerInclusive\":', '\"lower_inclusive\":'),\n '\"upperInclusive\":', '\"upper_inclusive\":'),\n '\"occur\":\"mustNot\"', '\"occur\":\"must_not\"')))\nWHERE json_type(params, '$.selection') = 'object';"
|
|
358
358
|
]
|
|
359
|
+
},
|
|
360
|
+
{
|
|
361
|
+
"name": "20261013215247_version-7-mentions",
|
|
362
|
+
"statements": [
|
|
363
|
+
"CREATE TABLE `mention_pending` (\n\t`source_type` text NOT NULL,\n\t`source_id` integer NOT NULL,\n\tCONSTRAINT `mention_pending_pk` PRIMARY KEY(`source_type`, `source_id`)\n);",
|
|
364
|
+
"CREATE TABLE `mentions` (\n\t`id` integer PRIMARY KEY,\n\t`kind` text NOT NULL,\n\t`source_type` text NOT NULL,\n\t`source_id` integer NOT NULL,\n\t`source_field` text NOT NULL,\n\t`start_offset` integer NOT NULL,\n\t`end_offset` integer NOT NULL,\n\t`value` text NOT NULL,\n\t`domain` text,\n\t`method` text NOT NULL,\n\t`version` integer NOT NULL,\n\t`confidence` real NOT NULL,\n\t`status` text NOT NULL,\n\t`target_type` text,\n\t`target_id` integer,\n\t`author` text,\n\t`created_at` integer NOT NULL,\n\t`updated_at` integer NOT NULL,\n\tCONSTRAINT `mentions_source_type_source_id_source_field_start_offset_kind_unique` UNIQUE(`source_type`,`source_id`,`source_field`,`start_offset`,`kind`)\n);",
|
|
365
|
+
"CREATE INDEX `mentions_by_kind_value` ON `mentions` (`kind`,`value`);",
|
|
366
|
+
"CREATE INDEX `mentions_by_domain` ON `mentions` (`domain`) WHERE domain IS NOT NULL;",
|
|
367
|
+
"CREATE INDEX `mentions_by_status_kind` ON `mentions` (`status`,`kind`);",
|
|
368
|
+
"CREATE INDEX `mentions_by_target_type_target_id` ON `mentions` (`target_type`,`target_id`) WHERE target_id IS NOT NULL;"
|
|
369
|
+
]
|
|
370
|
+
},
|
|
371
|
+
{
|
|
372
|
+
"name": "20261013215251_version-7-mentions-triggers",
|
|
373
|
+
"statements": [
|
|
374
|
+
"-- Finding mentions needs JS, so the triggers only queue the message and the store's next write finds them.\n-- Messages stored before version 7 are not queued here: `mentions rebuild` reads them in batches.\nCREATE TRIGGER mention_pending_message_ai AFTER INSERT ON messages WHEN new.text <> '' BEGIN\n INSERT OR IGNORE INTO mention_pending (source_type, source_id) VALUES ('message', new.id);\nEND;",
|
|
375
|
+
"CREATE TRIGGER mention_pending_message_au AFTER UPDATE OF text ON messages WHEN old.text IS NOT new.text BEGIN\n INSERT OR IGNORE INTO mention_pending (source_type, source_id) VALUES ('message', new.id);\nEND;",
|
|
376
|
+
"CREATE TRIGGER mentions_message_ad AFTER DELETE ON messages BEGIN\n DELETE FROM mentions WHERE source_type = 'message' AND source_id = old.id;\n DELETE FROM mention_pending WHERE source_type = 'message' AND source_id = old.id;\nEND;"
|
|
377
|
+
]
|
|
359
378
|
}
|
|
360
379
|
];
|
|
361
380
|
//# sourceMappingURL=migrations.generated.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"migrations.generated.js","sourceRoot":"","sources":["../../../src/store/sqlite/migrations.generated.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"migrations.generated.js","sourceRoot":"","sources":["../../../src/store/sqlite/migrations.generated.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"note-index.d.ts","sourceRoot":"","sources":["../../../src/store/sqlite/note-index.ts"],"names":[],"mappings":"AACA,OAAO,EAAsC,KAAK,OAAO,EAAE,KAAK,QAAQ,EAAE,MAAM,sBAAsB,CAAA;AACtG,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,cAAc,CAAA;
|
|
1
|
+
{"version":3,"file":"note-index.d.ts","sourceRoot":"","sources":["../../../src/store/sqlite/note-index.ts"],"names":[],"mappings":"AACA,OAAO,EAAsC,KAAK,OAAO,EAAE,KAAK,QAAQ,EAAE,MAAM,sBAAsB,CAAA;AACtG,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,cAAc,CAAA;AAOjD,MAAM,WAAW,cAAc;IAC7B,4CAA4C;IAC5C,OAAO,EAAE,MAAM,CAAA;IACf,iFAAiF;IACjF,KAAK,EAAE,MAAM,GAAG,IAAI,CAAA;IACpB,MAAM,EAAE,MAAM,GAAG,IAAI,CAAA;IACrB,mFAAmF;IACnF,KAAK,EAAE,OAAO,CAAA;CACf;AAED;;;GAGG;AACH,MAAM,WAAW,MAAM;IACrB,0FAA0F;IAC1F,IAAI,EAAE,UAAU,GAAG,MAAM,GAAG,QAAQ,GAAG,OAAO,CAAA;IAC9C,uCAAuC;IACvC,KAAK,EAAE,MAAM,CAAA;IACb,KAAK,EAAE,MAAM,CAAA;IACb,gGAAgG;IAChG,IAAI,EAAE,MAAM,CAAA;IACZ,+FAA+F;IAC/F,MAAM,CAAC,EAAE,KAAK,CAAA;CACf;AAED,eAAO,MAAM,OAAO;;iBAEhB,IAAI,EAAE,UAAU;iBAChB,KAAK,EAAE,gBAAgB;iBACvB,KAAK,EAAE,WAAW;iBAClB,IAAI;;;iBAKJ,IAAI,EAAE,MAAM;iBACZ,KAAK,EAAE,YAAY;iBACnB,KAAK,EAAE,OAAO;iBACd,IAAI,EAAE,6FAA6F;;;iBAGnG,IAAI,EAAE,QAAQ;iBACd,KAAK,EAAE,cAAc;iBACrB,KAAK,EAAE,UAAU;iBACjB,IAAI,EAAE,8FAA8F;;;iBAGpG,IAAI,EAAE,OAAO;iBACb,KAAK,EAAE,aAAa;iBACpB,KAAK,EAAE,QAAQ;iBACf,IAAI;iBAGJ,MAAM;;CAEiC,CAAA;AAE3C,yFAAyF;AACzF,eAAO,MAAM,aAAa,UAAW,MAAM,GAAG,IAAI,QAAQ,MAAM,KAAG,MAAgD,CAAA;AAEnH,eAAO,MAAM,gBAAgB,aAAc,aAAa,UAAU,MAAM,KAAG,cAU1E,CAAA;AAED,+DAA+D;AAC/D,eAAO,MAAM,cAAc,aAAc,aAAa,KAAG,cASxD,CAAA;AAgED;;;GAGG;AACH,eAAO,MAAM,WAAW,aACZ,aAAa,UACf,MAAM,cACF,CAAC,QAAQ,EAAE,QAAQ,KAAK,OAAO,qBACL;IAAE,KAAK,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,OAAO,CAAA;CAAE,KAC9E,MA2CF,CAAA;AAED,wDAAwD;AACxD,eAAO,MAAM,cAAc,aACf,aAAa,cACX,CAAC,QAAQ,EAAE,QAAQ,KAAK,OAAO,YAClC;IAAE,KAAK,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,OAAO,CAAA;CAAE,KACjD,MAEuD,CAAA;AAE1D,0EAA0E;AAC1E,eAAO,MAAM,cAAc,aAAc,aAAa,KAAG,OAUxD,CAAA"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { CHUNK_CHARS, chunkHash, splitSections, splitText } from "../../conversations/chunks.js";
|
|
2
2
|
import { analyzerIdentity, DEFAULT_STEMMERS } from "../../search/stem.js";
|
|
3
3
|
import { normalize } from "../normalize.js";
|
|
4
|
+
import { dropDocumentPicture } from "./document-pictures.js";
|
|
4
5
|
import { int } from "./events.js";
|
|
5
6
|
import { inBatch, indexRow } from "./search-index.js";
|
|
6
7
|
import { savedStemmers } from "./stems.js";
|
|
@@ -110,6 +111,8 @@ const writer = (database, corpus, stemmer) => {
|
|
|
110
111
|
for (const hash of before)
|
|
111
112
|
if (!after.has(hash))
|
|
112
113
|
statements.purge.run(hash, hash);
|
|
114
|
+
if (!live && corpus.type === "document")
|
|
115
|
+
dropDocumentPicture(database, id);
|
|
113
116
|
statements.dequeue.run(corpus.type, id);
|
|
114
117
|
};
|
|
115
118
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"note-index.js","sourceRoot":"","sources":["../../../src/store/sqlite/note-index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"note-index.js","sourceRoot":"","sources":["../../../src/store/sqlite/note-index.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import type { ResolvedNode } from "../../search/lucene/resolved.js";
|
|
2
2
|
import type { Stemmer } from "../../search/stem.js";
|
|
3
|
+
import { type DocumentPictureStore } from "./document-pictures.js";
|
|
3
4
|
import { type NoteIndexState } from "./note-index.js";
|
|
4
5
|
import { type Note } from "./notes.js";
|
|
5
6
|
import type { StoreContext } from "./open.js";
|
|
@@ -47,7 +48,7 @@ export interface NearestNote {
|
|
|
47
48
|
end: number;
|
|
48
49
|
};
|
|
49
50
|
}
|
|
50
|
-
export interface NoteSearch {
|
|
51
|
+
export interface NoteSearch extends DocumentPictureStore {
|
|
51
52
|
/** Indexes what was written since, then searches; a note written a moment ago is found. */
|
|
52
53
|
search(query: NoteQuery): Promise<{
|
|
53
54
|
items: NoteHit[];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"note-search.d.ts","sourceRoot":"","sources":["../../../src/store/sqlite/note-search.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAE,YAAY,EAAqB,MAAM,iCAAiC,CAAA;AAGtF,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAA;
|
|
1
|
+
{"version":3,"file":"note-search.d.ts","sourceRoot":"","sources":["../../../src/store/sqlite/note-search.ts"],"names":[],"mappings":"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"}
|
|
@@ -4,6 +4,7 @@ import { compileAutomaton, foldRegex, wildcardPattern, } from "../../search/luce
|
|
|
4
4
|
import { isStemmed } from "../../search/lucene/resolved.js";
|
|
5
5
|
import { exhausted, QUERY_LIMITS, searchError } from "../../search/lucene/types.js";
|
|
6
6
|
import { normalize } from "../normalize.js";
|
|
7
|
+
import { documentPicturesOver } from "./document-pictures.js";
|
|
7
8
|
import { linkKind } from "./link-kinds.js";
|
|
8
9
|
import { prefixOf } from "./lucene.js";
|
|
9
10
|
import { drainNoteIndex, noteIndexState, noteIndexText } from "./note-index.js";
|
|
@@ -228,6 +229,7 @@ const searchCorpus = (context, query, corpus) => {
|
|
|
228
229
|
const stemmed = [...fragments.keys()].some(isStemmed);
|
|
229
230
|
const scope = combine([
|
|
230
231
|
bound("n.deleted_at IS NULL"),
|
|
232
|
+
...(corpus.type === "document" ? [bound("coalesce(json_extract(n.metadata, '$.catalog.active'), 1)=1")] : []),
|
|
231
233
|
...(query.folderIds?.length && corpus.type === "document"
|
|
232
234
|
? [bound("n.folder_id IN (SELECT CAST(value AS INTEGER) FROM json_each(?))", JSON.stringify(query.folderIds))]
|
|
233
235
|
: []),
|
|
@@ -299,7 +301,7 @@ const searchCorpus = (context, query, corpus) => {
|
|
|
299
301
|
};
|
|
300
302
|
const SCAN_PAGE = 5_000;
|
|
301
303
|
/** The live documents and notes of a chunk scan, narrowed by folder and source. */
|
|
302
|
-
const LIVE = "((k.chunkable_type = 'document' AND EXISTS (SELECT 1 FROM documents d WHERE d.id = k.chunkable_id AND d.deleted_at IS NULL " +
|
|
304
|
+
const LIVE = "((k.chunkable_type = 'document' AND EXISTS (SELECT 1 FROM documents d WHERE d.id = k.chunkable_id AND d.deleted_at IS NULL AND coalesce(json_extract(d.metadata, '$.catalog.active'), 1)=1 " +
|
|
303
305
|
"AND (? IS NULL OR d.account_id IN (SELECT CAST(value AS INTEGER) FROM json_each(?))))) " +
|
|
304
306
|
"OR (k.chunkable_type = 'note' AND ? IS NULL AND EXISTS (SELECT 1 FROM notes n WHERE n.id = k.chunkable_id AND n.deleted_at IS NULL)))";
|
|
305
307
|
export const noteSearchOver = (context) => {
|
|
@@ -319,6 +321,7 @@ export const noteSearchOver = (context) => {
|
|
|
319
321
|
};
|
|
320
322
|
};
|
|
321
323
|
return {
|
|
324
|
+
...documentPicturesOver(context),
|
|
322
325
|
search: async (query) => {
|
|
323
326
|
drain();
|
|
324
327
|
return searchNotes(context, query);
|