@wirecat/cli-core 0.399.0 → 0.401.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.
Files changed (259) hide show
  1. package/CHANGELOG.md +111 -0
  2. package/README.md +1 -1
  3. package/dist/analysis/consents.d.ts +11 -6
  4. package/dist/analysis/consents.js +5 -2
  5. package/dist/cli/bot/mcp.js +2 -1
  6. package/dist/cli/bot/store.js +1 -1
  7. package/dist/cli/config-command.js +20 -1
  8. package/dist/cli/context.d.ts +2 -0
  9. package/dist/cli/context.js +1 -1
  10. package/dist/cli/effects.d.ts +4 -1
  11. package/dist/cli/effects.js +10 -2
  12. package/dist/cli/index.d.ts +3 -2
  13. package/dist/cli/index.js +3 -2
  14. package/dist/cli/json-fields.js +12 -1
  15. package/dist/cli/meeting-evidence-answer.d.ts +46 -0
  16. package/dist/cli/meeting-evidence-answer.js +22 -0
  17. package/dist/cli/meeting-preparation-answer.js +1 -13
  18. package/dist/cli/messenger/account-command.js +15 -6
  19. package/dist/cli/messenger/account-profile-query.d.ts +2 -0
  20. package/dist/cli/messenger/account-profile-query.js +13 -0
  21. package/dist/cli/messenger/account-sessions-command.js +1 -2
  22. package/dist/cli/messenger/admin-commands.js +12 -12
  23. package/dist/cli/messenger/admin-contacts-command.js +6 -3
  24. package/dist/cli/messenger/admin-folders-command.js +5 -5
  25. package/dist/cli/messenger/admin-moderation-command.js +4 -4
  26. package/dist/cli/messenger/admin-statistics-command.js +6 -14
  27. package/dist/cli/messenger/analysis-consents-query.d.ts +5 -0
  28. package/dist/cli/messenger/analysis-consents-query.js +20 -0
  29. package/dist/cli/messenger/archive-commands.js +3 -3
  30. package/dist/cli/messenger/attachments-command.js +3 -0
  31. package/dist/cli/messenger/backfill-command.js +5 -4
  32. package/dist/cli/messenger/chat-queries.d.ts +1 -0
  33. package/dist/cli/messenger/chat-queries.js +12 -2
  34. package/dist/cli/messenger/chats-command.js +2 -2
  35. package/dist/cli/messenger/chats-documents-command.js +7 -5
  36. package/dist/cli/messenger/chats-members-command.js +7 -3
  37. package/dist/cli/messenger/chats-read-command.js +1 -1
  38. package/dist/cli/messenger/chats-tracking-command.js +14 -6
  39. package/dist/cli/messenger/contacts-command.js +9 -5
  40. package/dist/cli/messenger/conversations-command.js +20 -16
  41. package/dist/cli/messenger/doctor-command.js +4 -1
  42. package/dist/cli/messenger/document-links-query.d.ts +2 -0
  43. package/dist/cli/messenger/document-links-query.js +9 -0
  44. package/dist/cli/messenger/download-command.js +1 -0
  45. package/dist/cli/messenger/flood-command.d.ts +2 -2
  46. package/dist/cli/messenger/flood-command.js +3 -3
  47. package/dist/cli/messenger/gaps-command.js +2 -2
  48. package/dist/cli/messenger/guard-commands.js +35 -13
  49. package/dist/cli/messenger/images-command.js +1 -0
  50. package/dist/cli/messenger/media-archive-command.js +2 -0
  51. package/dist/cli/messenger/media-archive-move-command.js +1 -0
  52. package/dist/cli/messenger/media-archive-timer-command.js +1 -1
  53. package/dist/cli/messenger/mentions-command.js +15 -2
  54. package/dist/cli/messenger/message-writes.d.ts +192 -2
  55. package/dist/cli/messenger/message-writes.js +6 -2
  56. package/dist/cli/messenger/messages-command.js +2 -0
  57. package/dist/cli/messenger/messages-delete-command.js +1 -0
  58. package/dist/cli/messenger/messages-edit-command.js +1 -0
  59. package/dist/cli/messenger/messages-evidence-command.js +3 -1
  60. package/dist/cli/messenger/messages-forward-command.js +1 -0
  61. package/dist/cli/messenger/messages-pin-command.js +3 -0
  62. package/dist/cli/messenger/messages-send-command.js +10 -6
  63. package/dist/cli/messenger/metadata-command.js +6 -1
  64. package/dist/cli/messenger/models-command.js +10 -5
  65. package/dist/cli/messenger/polls-command.js +4 -0
  66. package/dist/cli/messenger/private-people-command.js +3 -3
  67. package/dist/cli/messenger/rankings-command.js +6 -11
  68. package/dist/cli/messenger/reactions-command.js +2 -0
  69. package/dist/cli/messenger/recipients-query.d.ts +5 -0
  70. package/dist/cli/messenger/recipients-query.js +18 -0
  71. package/dist/cli/messenger/records-command.js +13 -8
  72. package/dist/cli/messenger/review.js +1 -1
  73. package/dist/cli/messenger/schedule-command.js +2 -2
  74. package/dist/cli/messenger/search-answers.js +2 -0
  75. package/dist/cli/messenger/search-command.js +3 -1
  76. package/dist/cli/messenger/searches-command.js +5 -1
  77. package/dist/cli/messenger/sends-query.d.ts +5 -0
  78. package/dist/cli/messenger/sends-query.js +33 -0
  79. package/dist/cli/messenger/serve-command.js +1 -0
  80. package/dist/cli/messenger/server-command.js +0 -3
  81. package/dist/cli/messenger/statistics-query.d.ts +14 -0
  82. package/dist/cli/messenger/statistics-query.js +143 -0
  83. package/dist/cli/messenger/stats-command.js +5 -5
  84. package/dist/cli/messenger/store-maintenance-command.js +10 -10
  85. package/dist/cli/messenger/stored.js +4 -1
  86. package/dist/cli/messenger/tags-command.js +7 -1
  87. package/dist/cli/messenger/tasks-command.js +57 -14
  88. package/dist/cli/messenger/transcribe-command.js +1 -0
  89. package/dist/cli/messenger/watch-answers.d.ts +6 -0
  90. package/dist/cli/messenger/watch-answers.js +69 -0
  91. package/dist/cli/messenger/watch-command.d.ts +1 -1
  92. package/dist/cli/messenger/watch-command.js +56 -7
  93. package/dist/cli/program.js +5 -1
  94. package/dist/cli/runs/command.js +25 -38
  95. package/dist/cli/runs/query.d.ts +5 -0
  96. package/dist/cli/runs/query.js +32 -0
  97. package/dist/cli/runs/search-command.d.ts +4 -0
  98. package/dist/cli/runs/search-command.js +27 -0
  99. package/dist/cli/runs/search-query.d.ts +4 -0
  100. package/dist/cli/runs/search-query.js +50 -0
  101. package/dist/cli/runs/search.d.ts +2 -1
  102. package/dist/cli/runs/search.js +6 -6
  103. package/dist/documents/index.d.ts +1 -0
  104. package/dist/documents/index.js +1 -0
  105. package/dist/domain/attachments.js +9 -1
  106. package/dist/domain/rankings-options.js +3 -3
  107. package/dist/entities/account-change.d.ts +89 -0
  108. package/dist/entities/account-change.js +20 -0
  109. package/dist/entities/account-profile.d.ts +7 -0
  110. package/dist/entities/account-profile.js +8 -0
  111. package/dist/entities/analysis-consent.d.ts +9 -0
  112. package/dist/entities/analysis-consent.js +4 -0
  113. package/dist/entities/attachment-results.d.ts +96 -0
  114. package/dist/entities/attachment-results.js +31 -0
  115. package/dist/entities/batch-result.d.ts +27 -0
  116. package/dist/entities/batch-result.js +18 -0
  117. package/dist/entities/chat-admin.d.ts +234 -0
  118. package/dist/entities/chat-admin.js +84 -0
  119. package/dist/entities/chat-change.d.ts +25 -0
  120. package/dist/entities/chat-change.js +11 -0
  121. package/dist/entities/chat-metadata.d.ts +34 -0
  122. package/dist/entities/chat-metadata.js +15 -0
  123. package/dist/entities/chat-moderation.d.ts +44 -0
  124. package/dist/entities/chat-moderation.js +37 -0
  125. package/dist/entities/chat-tracking.d.ts +26 -0
  126. package/dist/entities/chat-tracking.js +23 -0
  127. package/dist/entities/contact-activity.d.ts +52 -0
  128. package/dist/entities/contact-activity.js +42 -0
  129. package/dist/entities/contact-context.d.ts +1568 -0
  130. package/dist/entities/contact-context.js +191 -0
  131. package/dist/entities/contact-write.d.ts +22 -0
  132. package/dist/entities/contact-write.js +6 -0
  133. package/dist/entities/conversation-preparation.d.ts +63 -0
  134. package/dist/entities/conversation-preparation.js +23 -0
  135. package/dist/entities/conversation-results.d.ts +567 -0
  136. package/dist/entities/conversation-results.js +94 -0
  137. package/dist/entities/document-link.d.ts +13 -0
  138. package/dist/entities/document-link.js +11 -0
  139. package/dist/entities/extraction-report.d.ts +95 -0
  140. package/dist/entities/extraction-report.js +34 -0
  141. package/dist/entities/hit.d.ts +4 -0
  142. package/dist/entities/hit.js +4 -0
  143. package/dist/entities/image-embedding.d.ts +9 -0
  144. package/dist/entities/image-embedding.js +10 -0
  145. package/dist/entities/index.d.ts +8284 -1921
  146. package/dist/entities/index.js +178 -3
  147. package/dist/entities/listener.d.ts +2150 -0
  148. package/dist/entities/listener.js +46 -0
  149. package/dist/entities/media-archive.d.ts +43 -0
  150. package/dist/entities/media-archive.js +32 -0
  151. package/dist/entities/meeting-evidence.d.ts +86 -0
  152. package/dist/entities/meeting-evidence.js +25 -0
  153. package/dist/entities/meeting-preparation-parts.d.ts +14 -0
  154. package/dist/entities/meeting-preparation-parts.js +15 -13
  155. package/dist/entities/meeting-task-proposal.d.ts +14 -0
  156. package/dist/entities/meeting-task-proposal.js +19 -0
  157. package/dist/entities/meeting.d.ts +1 -1
  158. package/dist/entities/meeting.js +1 -1
  159. package/dist/entities/mention.d.ts +63 -0
  160. package/dist/entities/mention.js +44 -0
  161. package/dist/entities/message-change.d.ts +19 -0
  162. package/dist/entities/message-change.js +6 -0
  163. package/dist/entities/message-context.d.ts +617 -0
  164. package/dist/entities/message-context.js +20 -0
  165. package/dist/entities/message-read.d.ts +73 -0
  166. package/dist/entities/message-read.js +58 -0
  167. package/dist/entities/message-transfer.d.ts +379 -0
  168. package/dist/entities/message-transfer.js +83 -0
  169. package/dist/entities/message-write.d.ts +378 -0
  170. package/dist/entities/message-write.js +10 -0
  171. package/dist/entities/model-key.d.ts +14 -0
  172. package/dist/entities/model-key.js +10 -0
  173. package/dist/entities/poll.d.ts +40 -0
  174. package/dist/entities/poll.js +16 -0
  175. package/dist/entities/private-contact.d.ts +10 -0
  176. package/dist/entities/private-contact.js +4 -0
  177. package/dist/entities/reaction-change.d.ts +7 -0
  178. package/dist/entities/reaction-change.js +8 -0
  179. package/dist/entities/recipient.d.ts +29 -0
  180. package/dist/entities/recipient.js +11 -0
  181. package/dist/entities/recorded-run.d.ts +103 -0
  182. package/dist/entities/recorded-run.js +44 -0
  183. package/dist/entities/saved-search.d.ts +4 -0
  184. package/dist/entities/saved-search.js +2 -0
  185. package/dist/entities/send-attempt.d.ts +31 -0
  186. package/dist/entities/send-attempt.js +29 -0
  187. package/dist/entities/store-maintenance.d.ts +319 -0
  188. package/dist/entities/store-maintenance.js +145 -0
  189. package/dist/entities/store-records.d.ts +442 -0
  190. package/dist/entities/store-records.js +99 -0
  191. package/dist/entities/tag-change.d.ts +74 -0
  192. package/dist/entities/tag-change.js +31 -0
  193. package/dist/entities/task-pair.d.ts +31 -0
  194. package/dist/entities/task-pair.js +23 -0
  195. package/dist/entities/task-results.d.ts +524 -0
  196. package/dist/entities/task-results.js +142 -0
  197. package/dist/errors/reasons.js +3 -0
  198. package/dist/mcp/agent.d.ts +3 -1
  199. package/dist/mcp/agent.js +17 -10
  200. package/dist/mcp/bot/server.d.ts +2 -0
  201. package/dist/mcp/bot/server.js +1 -0
  202. package/dist/mcp/server.js +3 -1
  203. package/dist/mcp/tools/attachments.js +1 -0
  204. package/dist/meetings/cli/index.js +4 -2
  205. package/dist/meetings/cli/passage.js +1 -0
  206. package/dist/meetings/index.d.ts +2 -1
  207. package/dist/meetings/index.js +1 -0
  208. package/dist/meetings/links.d.ts +16 -0
  209. package/dist/meetings/read-answers.d.ts +185 -0
  210. package/dist/meetings/read-answers.js +213 -0
  211. package/dist/ports/messenger.d.ts +10 -1
  212. package/dist/runs/run.d.ts +10 -2
  213. package/dist/runs/run.js +11 -3
  214. package/dist/sends/guard.d.ts +1 -1
  215. package/dist/sends/guard.js +9 -5
  216. package/dist/sends/journal.d.ts +9 -2
  217. package/dist/sends/journal.js +9 -2
  218. package/dist/sends/permissions.d.ts +5 -1
  219. package/dist/sends/permissions.js +42 -2
  220. package/dist/sends/recipients.d.ts +8 -0
  221. package/dist/sends/recipients.js +9 -0
  222. package/dist/sends/upload.d.ts +4 -4
  223. package/dist/sends/upload.js +24 -20
  224. package/dist/services/admin-statistics.js +3 -3
  225. package/dist/services/chat-documents.d.ts +1 -0
  226. package/dist/services/chat-documents.js +9 -3
  227. package/dist/services/chats.d.ts +1 -1
  228. package/dist/services/chats.js +5 -2
  229. package/dist/services/documents/mirrors.d.ts +98 -0
  230. package/dist/services/documents/mirrors.js +144 -0
  231. package/dist/services/meeting-links.d.ts +2 -17
  232. package/dist/services/messages.js +1 -0
  233. package/dist/services/search-all-meetings.js +21 -8
  234. package/dist/services/task-rules.d.ts +1 -1
  235. package/dist/services/tasks.d.ts +2 -2
  236. package/dist/services/tasks.js +1 -1
  237. package/dist/store/exports.d.ts +1 -1
  238. package/dist/store/exports.js +1 -1
  239. package/dist/store/messages.d.ts +3 -1
  240. package/dist/store/messages.js +2 -2
  241. package/dist/store/roster.d.ts +4 -1
  242. package/dist/store/roster.js +2 -2
  243. package/dist/store/sqlite/chats.d.ts +12 -0
  244. package/dist/store/sqlite/chats.js +1 -0
  245. package/dist/store/sqlite/document-links.d.ts +1 -1
  246. package/dist/store/sqlite/document-links.js +5 -5
  247. package/dist/store/sqlite/drizzle/bun.js +3 -3
  248. package/dist/store/sqlite/drizzle/bun.js.map +1 -1
  249. package/dist/store/sqlite/drizzle/core.js +2 -2
  250. package/dist/store/sqlite/drizzle/core.js.map +1 -1
  251. package/dist/store/sqlite/drizzle/node.js +3 -3
  252. package/dist/store/sqlite/drizzle/node.js.map +1 -1
  253. package/dist/store/sqlite/drizzle/{shared-O7CTKP45.js → shared-HKXF6HKX.js} +57 -57
  254. package/dist/store/sqlite/drizzle/{shared-O7CTKP45.js.map → shared-HKXF6HKX.js.map} +1 -1
  255. package/dist/store/sqlite/involvements.js +2 -1
  256. package/dist/store/sqlite/roster.d.ts +2 -1
  257. package/dist/store/sqlite/roster.js +3 -2
  258. package/package.json +2 -2
  259. package/parity.json +14 -69
@@ -0,0 +1,20 @@
1
+ import * as v from "valibot";
2
+ import { count, id, reference, time } from "./fields.js";
3
+ import { message } from "./message.js";
4
+ import { conversationLink } from "./message-read.js";
5
+ export const messageThread = v.strictObject({
6
+ ref: reference,
7
+ chat: id,
8
+ message: id,
9
+ mode: v.picklist(["thread", "time"]),
10
+ fallback: v.optional(v.picklist(["not_built", "not_stored", "not_linked"])),
11
+ items: v.array(message),
12
+ links: v.array(v.strictObject({ ...conversationLink.entries, message_id: id })),
13
+ chain: v.array(id),
14
+ stale: v.boolean(),
15
+ built_at: v.nullable(time),
16
+ stopped: v.array(v.picklist(["hops", "messages", "bytes", "time", "links", "cycle", "aborted", "thread"])),
17
+ bounds: v.strictObject({ max_hops: count, max_messages: count, max_bytes: count, within_ms: count }),
18
+ });
19
+ /** Time windows answer with message items; --thread answers with one bounded graph report. */
20
+ export const messageContext = v.union([message, messageThread]);
@@ -0,0 +1,73 @@
1
+ import * as v from "valibot";
2
+ export declare const messageTranscript: v.StrictObjectSchema<{
3
+ readonly message_id: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.MinLengthAction<string, 1, undefined>]>;
4
+ readonly text: v.StringSchema<undefined>;
5
+ readonly pending: v.BooleanSchema<undefined>;
6
+ readonly via: v.StringSchema<undefined>;
7
+ readonly model: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
8
+ }, undefined>;
9
+ export declare const conversationLink: v.StrictObjectSchema<{
10
+ readonly parent_id: v.NullableSchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.MinLengthAction<string, 1, undefined>]>, undefined>;
11
+ readonly source: v.PicklistSchema<["provider", "rule", "agent"], undefined>;
12
+ readonly kind: v.StringSchema<undefined>;
13
+ readonly confidence: v.NumberSchema<undefined>;
14
+ readonly method: v.StringSchema<undefined>;
15
+ readonly version: v.NullableSchema<v.StringSchema<undefined>, undefined>;
16
+ readonly created_at: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.IsoTimestampAction<string, "an ISO 8601 time in UTC">, v.EndsWithAction<string, "Z", "an ISO 8601 time in UTC, ending in `Z`">]>;
17
+ readonly stale: v.BooleanSchema<undefined>;
18
+ readonly chosen: v.BooleanSchema<undefined>;
19
+ }, undefined>;
20
+ export declare const messageLinks: v.StrictObjectSchema<{
21
+ readonly chat: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.MinLengthAction<string, 1, undefined>]>;
22
+ readonly message: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.MinLengthAction<string, 1, undefined>]>;
23
+ readonly links: v.ArraySchema<v.StrictObjectSchema<{
24
+ readonly parent_id: v.NullableSchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.MinLengthAction<string, 1, undefined>]>, undefined>;
25
+ readonly source: v.PicklistSchema<["provider", "rule", "agent"], undefined>;
26
+ readonly kind: v.StringSchema<undefined>;
27
+ readonly confidence: v.NumberSchema<undefined>;
28
+ readonly method: v.StringSchema<undefined>;
29
+ readonly version: v.NullableSchema<v.StringSchema<undefined>, undefined>;
30
+ readonly created_at: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.IsoTimestampAction<string, "an ISO 8601 time in UTC">, v.EndsWithAction<string, "Z", "an ISO 8601 time in UTC, ending in `Z`">]>;
31
+ readonly stale: v.BooleanSchema<undefined>;
32
+ readonly chosen: v.BooleanSchema<undefined>;
33
+ }, undefined>, undefined>;
34
+ readonly chain: v.ArraySchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.MinLengthAction<string, 1, undefined>]>, undefined>;
35
+ }, undefined>;
36
+ export declare const evidencePacket: v.StrictObjectSchema<{
37
+ readonly schema_version: v.LiteralSchema<1, undefined>;
38
+ readonly id: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.MinLengthAction<string, 1, undefined>]>;
39
+ readonly kind: v.PicklistSchema<["chats", "news", "person"], undefined>;
40
+ readonly source: v.StrictObjectSchema<{
41
+ readonly provider: v.StringSchema<undefined>;
42
+ readonly account: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.MinLengthAction<string, 1, undefined>]>;
43
+ readonly chat: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.MinLengthAction<string, 1, undefined>]>;
44
+ }, undefined>;
45
+ readonly fingerprint: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.RegexAction<string, undefined>]>;
46
+ readonly limits: v.StrictObjectSchema<{
47
+ readonly messages: v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 0, undefined>]>;
48
+ readonly bytes: v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 0, undefined>]>;
49
+ }, undefined>;
50
+ readonly content_bytes: v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 0, undefined>]>;
51
+ readonly coverage: v.StrictObjectSchema<{
52
+ readonly provided: v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 0, undefined>]>;
53
+ readonly included: v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 0, undefined>]>;
54
+ readonly omitted: v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 0, undefined>]>;
55
+ readonly has_more: v.BooleanSchema<undefined>;
56
+ readonly history: v.LiteralSchema<"unknown", undefined>;
57
+ readonly truncated_by: v.NullableSchema<v.PicklistSchema<["messages", "bytes"], undefined>, undefined>;
58
+ }, undefined>;
59
+ readonly items: v.ArraySchema<v.StrictObjectSchema<{
60
+ readonly locator: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.RegexAction<string, "a reference such as `note:42`">]>;
61
+ readonly fingerprint: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.RegexAction<string, undefined>]>;
62
+ readonly timestamp: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.IsoTimestampAction<string, "an ISO 8601 time in UTC">, v.EndsWithAction<string, "Z", "an ISO 8601 time in UTC, ending in `Z`">]>;
63
+ readonly edited_at: v.NullableSchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.IsoTimestampAction<string, "an ISO 8601 time in UTC">, v.EndsWithAction<string, "Z", "an ISO 8601 time in UTC, ending in `Z`">]>, undefined>;
64
+ readonly sender_id: v.NullableSchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.MinLengthAction<string, 1, undefined>]>, undefined>;
65
+ readonly sender_name: v.NullableSchema<v.StringSchema<undefined>, undefined>;
66
+ readonly sender_is_chat: v.BooleanSchema<undefined>;
67
+ readonly outgoing: v.NullableSchema<v.BooleanSchema<undefined>, undefined>;
68
+ readonly text: v.StringSchema<undefined>;
69
+ readonly reply_to: v.NullableSchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.RegexAction<string, "a reference such as `note:42`">]>, undefined>;
70
+ readonly thread_id: v.NullableSchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.MinLengthAction<string, 1, undefined>]>, undefined>;
71
+ readonly attachment_kinds: v.ArraySchema<v.StringSchema<undefined>, undefined>;
72
+ }, undefined>, undefined>;
73
+ }, undefined>;
@@ -0,0 +1,58 @@
1
+ import * as v from "valibot";
2
+ import { count, id, reference, text, time } from "./fields.js";
3
+ export const messageTranscript = v.strictObject({
4
+ message_id: id,
5
+ text,
6
+ pending: v.boolean(),
7
+ via: text,
8
+ model: v.optional(text),
9
+ });
10
+ export const conversationLink = v.strictObject({
11
+ parent_id: v.nullable(id),
12
+ source: v.picklist(["provider", "rule", "agent"]),
13
+ kind: text,
14
+ confidence: v.number(),
15
+ method: text,
16
+ version: v.nullable(text),
17
+ created_at: time,
18
+ stale: v.boolean(),
19
+ chosen: v.boolean(),
20
+ });
21
+ export const messageLinks = v.strictObject({
22
+ chat: id,
23
+ message: id,
24
+ links: v.array(conversationLink),
25
+ chain: v.array(id),
26
+ });
27
+ const fingerprint = v.pipe(text, v.regex(/^[a-f0-9]{64}$/));
28
+ export const evidencePacket = v.strictObject({
29
+ schema_version: v.literal(1),
30
+ id,
31
+ kind: v.picklist(["chats", "news", "person"]),
32
+ source: v.strictObject({ provider: text, account: id, chat: id }),
33
+ fingerprint,
34
+ limits: v.strictObject({ messages: count, bytes: count }),
35
+ content_bytes: count,
36
+ coverage: v.strictObject({
37
+ provided: count,
38
+ included: count,
39
+ omitted: count,
40
+ has_more: v.boolean(),
41
+ history: v.literal("unknown"),
42
+ truncated_by: v.nullable(v.picklist(["messages", "bytes"])),
43
+ }),
44
+ items: v.array(v.strictObject({
45
+ locator: reference,
46
+ fingerprint,
47
+ timestamp: time,
48
+ edited_at: v.nullable(time),
49
+ sender_id: v.nullable(id),
50
+ sender_name: v.nullable(text),
51
+ sender_is_chat: v.boolean(),
52
+ outgoing: v.nullable(v.boolean()),
53
+ text,
54
+ reply_to: v.nullable(reference),
55
+ thread_id: v.nullable(id),
56
+ attachment_kinds: v.array(text),
57
+ })),
58
+ });
@@ -0,0 +1,379 @@
1
+ import * as v from "valibot";
2
+ export declare const savedMessageFile: v.StrictObjectSchema<{
3
+ readonly kind: v.StringSchema<undefined>;
4
+ readonly path: v.StringSchema<undefined>;
5
+ readonly bytes: v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 0, undefined>]>;
6
+ readonly existing: v.OptionalSchema<v.LiteralSchema<true, undefined>, undefined>;
7
+ }, undefined>;
8
+ export declare const messageDownload: v.UnionSchema<[v.StrictObjectSchema<{
9
+ readonly files: v.ArraySchema<v.StrictObjectSchema<{
10
+ readonly kind: v.StringSchema<undefined>;
11
+ readonly path: v.StringSchema<undefined>;
12
+ readonly bytes: v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 0, undefined>]>;
13
+ readonly existing: v.OptionalSchema<v.LiteralSchema<true, undefined>, undefined>;
14
+ }, undefined>, undefined>;
15
+ readonly extraction: v.OptionalSchema<v.StrictObjectSchema<{
16
+ readonly extracted: v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 0, undefined>]>;
17
+ readonly failed: v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 0, undefined>]>;
18
+ readonly needs_agent: v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 0, undefined>]>;
19
+ readonly complete: v.BooleanSchema<undefined>;
20
+ readonly batch: v.OptionalSchema<v.StrictObjectSchema<{
21
+ readonly attempted: v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 0, undefined>]>;
22
+ readonly succeeded: v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 0, undefined>]>;
23
+ readonly failed: v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 0, undefined>]>;
24
+ readonly error_rate: v.NumberSchema<undefined>;
25
+ readonly failures: v.ArraySchema<v.StrictObjectSchema<{
26
+ readonly id: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.MinLengthAction<string, 1, undefined>]>;
27
+ readonly stage: v.StringSchema<undefined>;
28
+ readonly error: v.ObjectWithRestSchema<{
29
+ readonly code: v.StringSchema<undefined>;
30
+ readonly message: v.StringSchema<undefined>;
31
+ readonly retryable: v.BooleanSchema<undefined>;
32
+ readonly retry_after_ms: v.OptionalSchema<v.NumberSchema<undefined>, undefined>;
33
+ }, v.UnknownSchema, undefined>;
34
+ readonly attachment: v.OptionalSchema<v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 0, undefined>]>, undefined>;
35
+ }, undefined>, undefined>;
36
+ readonly stop_reason: v.OptionalSchema<v.PicklistSchema<["rate_limited", "authentication", "error_rate", "cancelled"], undefined>, undefined>;
37
+ readonly max_error_percent: v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 0, undefined>]>;
38
+ }, undefined>, undefined>;
39
+ readonly items: v.ArraySchema<v.StrictObjectSchema<{
40
+ readonly ref: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.RegexAction<string, "a reference such as `note:42`">]>;
41
+ readonly attachment: v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 0, undefined>]>;
42
+ readonly kind: v.StringSchema<undefined>;
43
+ readonly name: v.NullableSchema<v.StringSchema<undefined>, undefined>;
44
+ readonly status: v.PicklistSchema<["extracted", "needs-agent", "unreadable", "engine-missing", "too-large", "missing"], undefined>;
45
+ readonly extractor: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
46
+ readonly chars: v.OptionalSchema<v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 0, undefined>]>, undefined>;
47
+ readonly local_path: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
48
+ readonly pages: v.OptionalSchema<v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 0, undefined>]>, undefined>;
49
+ readonly ocr_pages: v.OptionalSchema<v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 0, undefined>]>, undefined>;
50
+ readonly error: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
51
+ readonly issue: v.OptionalSchema<v.ObjectWithRestSchema<{
52
+ readonly code: v.StringSchema<undefined>;
53
+ readonly message: v.StringSchema<undefined>;
54
+ readonly retryable: v.BooleanSchema<undefined>;
55
+ readonly retry_after_ms: v.OptionalSchema<v.NumberSchema<undefined>, undefined>;
56
+ }, v.UnknownSchema, undefined>, undefined>;
57
+ }, undefined>, undefined>;
58
+ readonly unchanged: v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 0, undefined>]>;
59
+ readonly not_downloaded: v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 0, undefined>]>;
60
+ readonly unsupported: v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 0, undefined>]>;
61
+ readonly engines_missing: v.ArraySchema<v.StringSchema<undefined>, undefined>;
62
+ readonly cursor: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
63
+ }, undefined>, undefined>;
64
+ readonly complete: v.OptionalSchema<v.LiteralSchema<false, undefined>, undefined>;
65
+ readonly batch: v.OptionalSchema<v.StrictObjectSchema<{
66
+ readonly attempted: v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 0, undefined>]>;
67
+ readonly succeeded: v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 0, undefined>]>;
68
+ readonly failed: v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 0, undefined>]>;
69
+ readonly error_rate: v.NumberSchema<undefined>;
70
+ readonly failures: v.ArraySchema<v.StrictObjectSchema<{
71
+ readonly id: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.MinLengthAction<string, 1, undefined>]>;
72
+ readonly stage: v.StringSchema<undefined>;
73
+ readonly error: v.ObjectWithRestSchema<{
74
+ readonly code: v.StringSchema<undefined>;
75
+ readonly message: v.StringSchema<undefined>;
76
+ readonly retryable: v.BooleanSchema<undefined>;
77
+ readonly retry_after_ms: v.OptionalSchema<v.NumberSchema<undefined>, undefined>;
78
+ }, v.UnknownSchema, undefined>;
79
+ readonly attachment: v.OptionalSchema<v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 0, undefined>]>, undefined>;
80
+ }, undefined>, undefined>;
81
+ readonly stop_reason: v.OptionalSchema<v.PicklistSchema<["rate_limited", "authentication", "error_rate", "cancelled"], undefined>, undefined>;
82
+ readonly max_error_percent: v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 0, undefined>]>;
83
+ }, undefined>, undefined>;
84
+ }, undefined>, v.StrictObjectSchema<{
85
+ readonly files: v.ArraySchema<v.StrictObjectSchema<{
86
+ readonly kind: v.StringSchema<undefined>;
87
+ readonly path: v.StringSchema<undefined>;
88
+ readonly bytes: v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 0, undefined>]>;
89
+ readonly existing: v.OptionalSchema<v.LiteralSchema<true, undefined>, undefined>;
90
+ }, undefined>, undefined>;
91
+ readonly chat: v.NullableSchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.MinLengthAction<string, 1, undefined>]>, undefined>;
92
+ readonly saved: v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 0, undefined>]>;
93
+ readonly existing: v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 0, undefined>]>;
94
+ readonly complete: v.BooleanSchema<undefined>;
95
+ readonly batch: v.OptionalSchema<v.StrictObjectSchema<{
96
+ readonly attempted: v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 0, undefined>]>;
97
+ readonly succeeded: v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 0, undefined>]>;
98
+ readonly failed: v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 0, undefined>]>;
99
+ readonly error_rate: v.NumberSchema<undefined>;
100
+ readonly failures: v.ArraySchema<v.StrictObjectSchema<{
101
+ readonly id: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.MinLengthAction<string, 1, undefined>]>;
102
+ readonly stage: v.StringSchema<undefined>;
103
+ readonly error: v.ObjectWithRestSchema<{
104
+ readonly code: v.StringSchema<undefined>;
105
+ readonly message: v.StringSchema<undefined>;
106
+ readonly retryable: v.BooleanSchema<undefined>;
107
+ readonly retry_after_ms: v.OptionalSchema<v.NumberSchema<undefined>, undefined>;
108
+ }, v.UnknownSchema, undefined>;
109
+ readonly attachment: v.OptionalSchema<v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 0, undefined>]>, undefined>;
110
+ }, undefined>, undefined>;
111
+ readonly stop_reason: v.OptionalSchema<v.PicklistSchema<["rate_limited", "authentication", "error_rate", "cancelled"], undefined>, undefined>;
112
+ readonly max_error_percent: v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 0, undefined>]>;
113
+ }, undefined>, undefined>;
114
+ readonly stopped: v.OptionalSchema<v.LiteralSchema<true, undefined>, undefined>;
115
+ readonly extraction: v.OptionalSchema<v.StrictObjectSchema<{
116
+ readonly extracted: v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 0, undefined>]>;
117
+ readonly failed: v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 0, undefined>]>;
118
+ readonly needs_agent: v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 0, undefined>]>;
119
+ readonly complete: v.BooleanSchema<undefined>;
120
+ readonly batch: v.OptionalSchema<v.StrictObjectSchema<{
121
+ readonly attempted: v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 0, undefined>]>;
122
+ readonly succeeded: v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 0, undefined>]>;
123
+ readonly failed: v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 0, undefined>]>;
124
+ readonly error_rate: v.NumberSchema<undefined>;
125
+ readonly failures: v.ArraySchema<v.StrictObjectSchema<{
126
+ readonly id: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.MinLengthAction<string, 1, undefined>]>;
127
+ readonly stage: v.StringSchema<undefined>;
128
+ readonly error: v.ObjectWithRestSchema<{
129
+ readonly code: v.StringSchema<undefined>;
130
+ readonly message: v.StringSchema<undefined>;
131
+ readonly retryable: v.BooleanSchema<undefined>;
132
+ readonly retry_after_ms: v.OptionalSchema<v.NumberSchema<undefined>, undefined>;
133
+ }, v.UnknownSchema, undefined>;
134
+ readonly attachment: v.OptionalSchema<v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 0, undefined>]>, undefined>;
135
+ }, undefined>, undefined>;
136
+ readonly stop_reason: v.OptionalSchema<v.PicklistSchema<["rate_limited", "authentication", "error_rate", "cancelled"], undefined>, undefined>;
137
+ readonly max_error_percent: v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 0, undefined>]>;
138
+ }, undefined>, undefined>;
139
+ }, undefined>, undefined>;
140
+ }, undefined>], undefined>;
141
+ export declare const messageSyncEstimate: v.StrictObjectSchema<{
142
+ readonly chat: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.MinLengthAction<string, 1, undefined>]>;
143
+ readonly held: v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 0, undefined>]>;
144
+ readonly ranges: v.ArraySchema<v.StrictObjectSchema<{
145
+ readonly from: v.NumberSchema<undefined>;
146
+ readonly to: v.NumberSchema<undefined>;
147
+ }, undefined>, undefined>;
148
+ readonly missing: v.NullableSchema<v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 0, undefined>]>, undefined>;
149
+ readonly requests: v.NullableSchema<v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 0, undefined>]>, undefined>;
150
+ readonly runs: v.NullableSchema<v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 0, undefined>]>, undefined>;
151
+ readonly seconds: v.NullableSchema<v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 0, undefined>]>, undefined>;
152
+ }, undefined>;
153
+ export declare const messageSyncChat: v.StrictObjectSchema<{
154
+ readonly issue: v.OptionalSchema<v.ObjectWithRestSchema<{
155
+ readonly code: v.StringSchema<undefined>;
156
+ readonly message: v.StringSchema<undefined>;
157
+ readonly retryable: v.BooleanSchema<undefined>;
158
+ readonly retry_after_ms: v.OptionalSchema<v.NumberSchema<undefined>, undefined>;
159
+ }, v.UnknownSchema, undefined>, undefined>;
160
+ readonly resume: v.OptionalSchema<v.StrictObjectSchema<{
161
+ readonly before: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
162
+ }, undefined>, undefined>;
163
+ readonly prepared: v.OptionalSchema<v.StrictObjectSchema<{
164
+ readonly complete: v.BooleanSchema<undefined>;
165
+ readonly reason: v.OptionalSchema<v.PicklistSchema<["message_bound", "time_or_abort_bound", "preparation_failed", "pending"], undefined>, undefined>;
166
+ readonly prepared: v.OptionalSchema<v.StrictObjectSchema<{
167
+ readonly model: v.StringSchema<undefined>;
168
+ readonly model_available: v.BooleanSchema<undefined>;
169
+ readonly built: v.ArraySchema<v.StrictObjectSchema<{
170
+ readonly chat: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.MinLengthAction<string, 1, undefined>]>;
171
+ readonly messages: v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 0, undefined>]>;
172
+ readonly links: v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 0, undefined>]>;
173
+ readonly conversations: v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 0, undefined>]>;
174
+ readonly built_at: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.IsoTimestampAction<string, "an ISO 8601 time in UTC">, v.EndsWithAction<string, "Z", "an ISO 8601 time in UTC, ending in `Z`">]>;
175
+ readonly rules_version: v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 0, undefined>]>;
176
+ }, undefined>, undefined>;
177
+ readonly embedded: v.ArraySchema<v.StrictObjectSchema<{
178
+ readonly chat: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.MinLengthAction<string, 1, undefined>]>;
179
+ readonly model: v.StringSchema<undefined>;
180
+ readonly embedded: v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 0, undefined>]>;
181
+ readonly skipped: v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 0, undefined>]>;
182
+ }, undefined>, undefined>;
183
+ readonly left: v.ArraySchema<v.StrictObjectSchema<{
184
+ readonly chat: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.MinLengthAction<string, 1, undefined>]>;
185
+ readonly needs: v.PicklistSchema<["build", "embed"], undefined>;
186
+ }, undefined>, undefined>;
187
+ }, undefined>, undefined>;
188
+ }, undefined>, undefined>;
189
+ readonly window_complete: v.OptionalSchema<v.BooleanSchema<undefined>, undefined>;
190
+ readonly requests: v.OptionalSchema<v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 0, undefined>]>, undefined>;
191
+ readonly chat: v.NullableSchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.MinLengthAction<string, 1, undefined>]>, undefined>;
192
+ readonly fetched: v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 0, undefined>]>;
193
+ readonly complete: v.BooleanSchema<undefined>;
194
+ readonly ranges: v.ArraySchema<v.StrictObjectSchema<{
195
+ readonly from: v.NumberSchema<undefined>;
196
+ readonly to: v.NumberSchema<undefined>;
197
+ }, undefined>, undefined>;
198
+ readonly reached_since: v.OptionalSchema<v.LiteralSchema<true, undefined>, undefined>;
199
+ readonly reached_last: v.OptionalSchema<v.LiteralSchema<true, undefined>, undefined>;
200
+ readonly stopped: v.OptionalSchema<v.LiteralSchema<true, undefined>, undefined>;
201
+ readonly tasks: v.OptionalSchema<v.StrictObjectSchema<{
202
+ readonly added: v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 0, undefined>]>;
203
+ readonly closed: v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 0, undefined>]>;
204
+ readonly review: v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 0, undefined>]>;
205
+ readonly held: v.OptionalSchema<v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 0, undefined>]>, undefined>;
206
+ readonly held_chats: v.OptionalSchema<v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 0, undefined>]>, undefined>;
207
+ }, undefined>, undefined>;
208
+ }, undefined>;
209
+ export declare const messageSyncAll: v.StrictObjectSchema<{
210
+ readonly batch: v.OptionalSchema<v.StrictObjectSchema<{
211
+ readonly attempted: v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 0, undefined>]>;
212
+ readonly succeeded: v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 0, undefined>]>;
213
+ readonly failed: v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 0, undefined>]>;
214
+ readonly error_rate: v.NumberSchema<undefined>;
215
+ readonly failures: v.ArraySchema<v.StrictObjectSchema<{
216
+ readonly id: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.MinLengthAction<string, 1, undefined>]>;
217
+ readonly stage: v.StringSchema<undefined>;
218
+ readonly error: v.ObjectWithRestSchema<{
219
+ readonly code: v.StringSchema<undefined>;
220
+ readonly message: v.StringSchema<undefined>;
221
+ readonly retryable: v.BooleanSchema<undefined>;
222
+ readonly retry_after_ms: v.OptionalSchema<v.NumberSchema<undefined>, undefined>;
223
+ }, v.UnknownSchema, undefined>;
224
+ readonly attachment: v.OptionalSchema<v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 0, undefined>]>, undefined>;
225
+ }, undefined>, undefined>;
226
+ readonly stop_reason: v.OptionalSchema<v.PicklistSchema<["rate_limited", "authentication", "error_rate", "cancelled"], undefined>, undefined>;
227
+ readonly max_error_percent: v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 0, undefined>]>;
228
+ }, undefined>, undefined>;
229
+ readonly chats: v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 0, undefined>]>;
230
+ readonly fetched: v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 0, undefined>]>;
231
+ readonly complete: v.BooleanSchema<undefined>;
232
+ readonly stopped: v.OptionalSchema<v.LiteralSchema<true, undefined>, undefined>;
233
+ readonly items: v.ArraySchema<v.StrictObjectSchema<{
234
+ readonly chat: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.MinLengthAction<string, 1, undefined>]>;
235
+ readonly title: v.NullableSchema<v.StringSchema<undefined>, undefined>;
236
+ readonly fetched: v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 0, undefined>]>;
237
+ readonly complete: v.BooleanSchema<undefined>;
238
+ readonly current: v.OptionalSchema<v.LiteralSchema<true, undefined>, undefined>;
239
+ readonly stopped: v.OptionalSchema<v.LiteralSchema<true, undefined>, undefined>;
240
+ readonly error: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
241
+ readonly issue: v.OptionalSchema<v.ObjectWithRestSchema<{
242
+ readonly code: v.StringSchema<undefined>;
243
+ readonly message: v.StringSchema<undefined>;
244
+ readonly retryable: v.BooleanSchema<undefined>;
245
+ readonly retry_after_ms: v.OptionalSchema<v.NumberSchema<undefined>, undefined>;
246
+ }, v.UnknownSchema, undefined>, undefined>;
247
+ }, undefined>, undefined>;
248
+ readonly tasks: v.OptionalSchema<v.StrictObjectSchema<{
249
+ readonly added: v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 0, undefined>]>;
250
+ readonly closed: v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 0, undefined>]>;
251
+ readonly review: v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 0, undefined>]>;
252
+ readonly held: v.OptionalSchema<v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 0, undefined>]>, undefined>;
253
+ readonly held_chats: v.OptionalSchema<v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 0, undefined>]>, undefined>;
254
+ }, undefined>, undefined>;
255
+ }, undefined>;
256
+ export declare const messageSyncStarted: v.StrictObjectSchema<{
257
+ readonly job: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.MinLengthAction<string, 1, undefined>]>;
258
+ readonly pid: v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 0, undefined>]>;
259
+ readonly chat: v.StringSchema<undefined>;
260
+ readonly log: v.StringSchema<undefined>;
261
+ }, undefined>;
262
+ export declare const messageSync: v.UnionSchema<[v.StrictObjectSchema<{
263
+ readonly chat: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.MinLengthAction<string, 1, undefined>]>;
264
+ readonly held: v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 0, undefined>]>;
265
+ readonly ranges: v.ArraySchema<v.StrictObjectSchema<{
266
+ readonly from: v.NumberSchema<undefined>;
267
+ readonly to: v.NumberSchema<undefined>;
268
+ }, undefined>, undefined>;
269
+ readonly missing: v.NullableSchema<v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 0, undefined>]>, undefined>;
270
+ readonly requests: v.NullableSchema<v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 0, undefined>]>, undefined>;
271
+ readonly runs: v.NullableSchema<v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 0, undefined>]>, undefined>;
272
+ readonly seconds: v.NullableSchema<v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 0, undefined>]>, undefined>;
273
+ }, undefined>, v.StrictObjectSchema<{
274
+ readonly issue: v.OptionalSchema<v.ObjectWithRestSchema<{
275
+ readonly code: v.StringSchema<undefined>;
276
+ readonly message: v.StringSchema<undefined>;
277
+ readonly retryable: v.BooleanSchema<undefined>;
278
+ readonly retry_after_ms: v.OptionalSchema<v.NumberSchema<undefined>, undefined>;
279
+ }, v.UnknownSchema, undefined>, undefined>;
280
+ readonly resume: v.OptionalSchema<v.StrictObjectSchema<{
281
+ readonly before: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
282
+ }, undefined>, undefined>;
283
+ readonly prepared: v.OptionalSchema<v.StrictObjectSchema<{
284
+ readonly complete: v.BooleanSchema<undefined>;
285
+ readonly reason: v.OptionalSchema<v.PicklistSchema<["message_bound", "time_or_abort_bound", "preparation_failed", "pending"], undefined>, undefined>;
286
+ readonly prepared: v.OptionalSchema<v.StrictObjectSchema<{
287
+ readonly model: v.StringSchema<undefined>;
288
+ readonly model_available: v.BooleanSchema<undefined>;
289
+ readonly built: v.ArraySchema<v.StrictObjectSchema<{
290
+ readonly chat: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.MinLengthAction<string, 1, undefined>]>;
291
+ readonly messages: v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 0, undefined>]>;
292
+ readonly links: v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 0, undefined>]>;
293
+ readonly conversations: v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 0, undefined>]>;
294
+ readonly built_at: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.IsoTimestampAction<string, "an ISO 8601 time in UTC">, v.EndsWithAction<string, "Z", "an ISO 8601 time in UTC, ending in `Z`">]>;
295
+ readonly rules_version: v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 0, undefined>]>;
296
+ }, undefined>, undefined>;
297
+ readonly embedded: v.ArraySchema<v.StrictObjectSchema<{
298
+ readonly chat: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.MinLengthAction<string, 1, undefined>]>;
299
+ readonly model: v.StringSchema<undefined>;
300
+ readonly embedded: v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 0, undefined>]>;
301
+ readonly skipped: v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 0, undefined>]>;
302
+ }, undefined>, undefined>;
303
+ readonly left: v.ArraySchema<v.StrictObjectSchema<{
304
+ readonly chat: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.MinLengthAction<string, 1, undefined>]>;
305
+ readonly needs: v.PicklistSchema<["build", "embed"], undefined>;
306
+ }, undefined>, undefined>;
307
+ }, undefined>, undefined>;
308
+ }, undefined>, undefined>;
309
+ readonly window_complete: v.OptionalSchema<v.BooleanSchema<undefined>, undefined>;
310
+ readonly requests: v.OptionalSchema<v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 0, undefined>]>, undefined>;
311
+ readonly chat: v.NullableSchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.MinLengthAction<string, 1, undefined>]>, undefined>;
312
+ readonly fetched: v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 0, undefined>]>;
313
+ readonly complete: v.BooleanSchema<undefined>;
314
+ readonly ranges: v.ArraySchema<v.StrictObjectSchema<{
315
+ readonly from: v.NumberSchema<undefined>;
316
+ readonly to: v.NumberSchema<undefined>;
317
+ }, undefined>, undefined>;
318
+ readonly reached_since: v.OptionalSchema<v.LiteralSchema<true, undefined>, undefined>;
319
+ readonly reached_last: v.OptionalSchema<v.LiteralSchema<true, undefined>, undefined>;
320
+ readonly stopped: v.OptionalSchema<v.LiteralSchema<true, undefined>, undefined>;
321
+ readonly tasks: v.OptionalSchema<v.StrictObjectSchema<{
322
+ readonly added: v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 0, undefined>]>;
323
+ readonly closed: v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 0, undefined>]>;
324
+ readonly review: v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 0, undefined>]>;
325
+ readonly held: v.OptionalSchema<v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 0, undefined>]>, undefined>;
326
+ readonly held_chats: v.OptionalSchema<v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 0, undefined>]>, undefined>;
327
+ }, undefined>, undefined>;
328
+ }, undefined>, v.StrictObjectSchema<{
329
+ readonly batch: v.OptionalSchema<v.StrictObjectSchema<{
330
+ readonly attempted: v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 0, undefined>]>;
331
+ readonly succeeded: v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 0, undefined>]>;
332
+ readonly failed: v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 0, undefined>]>;
333
+ readonly error_rate: v.NumberSchema<undefined>;
334
+ readonly failures: v.ArraySchema<v.StrictObjectSchema<{
335
+ readonly id: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.MinLengthAction<string, 1, undefined>]>;
336
+ readonly stage: v.StringSchema<undefined>;
337
+ readonly error: v.ObjectWithRestSchema<{
338
+ readonly code: v.StringSchema<undefined>;
339
+ readonly message: v.StringSchema<undefined>;
340
+ readonly retryable: v.BooleanSchema<undefined>;
341
+ readonly retry_after_ms: v.OptionalSchema<v.NumberSchema<undefined>, undefined>;
342
+ }, v.UnknownSchema, undefined>;
343
+ readonly attachment: v.OptionalSchema<v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 0, undefined>]>, undefined>;
344
+ }, undefined>, undefined>;
345
+ readonly stop_reason: v.OptionalSchema<v.PicklistSchema<["rate_limited", "authentication", "error_rate", "cancelled"], undefined>, undefined>;
346
+ readonly max_error_percent: v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 0, undefined>]>;
347
+ }, undefined>, undefined>;
348
+ readonly chats: v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 0, undefined>]>;
349
+ readonly fetched: v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 0, undefined>]>;
350
+ readonly complete: v.BooleanSchema<undefined>;
351
+ readonly stopped: v.OptionalSchema<v.LiteralSchema<true, undefined>, undefined>;
352
+ readonly items: v.ArraySchema<v.StrictObjectSchema<{
353
+ readonly chat: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.MinLengthAction<string, 1, undefined>]>;
354
+ readonly title: v.NullableSchema<v.StringSchema<undefined>, undefined>;
355
+ readonly fetched: v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 0, undefined>]>;
356
+ readonly complete: v.BooleanSchema<undefined>;
357
+ readonly current: v.OptionalSchema<v.LiteralSchema<true, undefined>, undefined>;
358
+ readonly stopped: v.OptionalSchema<v.LiteralSchema<true, undefined>, undefined>;
359
+ readonly error: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
360
+ readonly issue: v.OptionalSchema<v.ObjectWithRestSchema<{
361
+ readonly code: v.StringSchema<undefined>;
362
+ readonly message: v.StringSchema<undefined>;
363
+ readonly retryable: v.BooleanSchema<undefined>;
364
+ readonly retry_after_ms: v.OptionalSchema<v.NumberSchema<undefined>, undefined>;
365
+ }, v.UnknownSchema, undefined>, undefined>;
366
+ }, undefined>, undefined>;
367
+ readonly tasks: v.OptionalSchema<v.StrictObjectSchema<{
368
+ readonly added: v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 0, undefined>]>;
369
+ readonly closed: v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 0, undefined>]>;
370
+ readonly review: v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 0, undefined>]>;
371
+ readonly held: v.OptionalSchema<v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 0, undefined>]>, undefined>;
372
+ readonly held_chats: v.OptionalSchema<v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 0, undefined>]>, undefined>;
373
+ }, undefined>, undefined>;
374
+ }, undefined>, v.StrictObjectSchema<{
375
+ readonly job: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.MinLengthAction<string, 1, undefined>]>;
376
+ readonly pid: v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 0, undefined>]>;
377
+ readonly chat: v.StringSchema<undefined>;
378
+ readonly log: v.StringSchema<undefined>;
379
+ }, undefined>], undefined>;
@@ -0,0 +1,83 @@
1
+ import * as v from "valibot";
2
+ import { actionableError, batchResult } from "./batch-result.js";
3
+ import { catchUpPreparation } from "./conversation-preparation.js";
4
+ import { extractionReport, extractionSummary } from "./extraction-report.js";
5
+ import { count, id, text } from "./fields.js";
6
+ export const savedMessageFile = v.strictObject({
7
+ kind: text,
8
+ path: text,
9
+ bytes: count,
10
+ existing: v.optional(v.literal(true)),
11
+ });
12
+ const files = v.array(savedMessageFile);
13
+ export const messageDownload = v.union([
14
+ v.strictObject({
15
+ files,
16
+ extraction: v.optional(extractionReport),
17
+ complete: v.optional(v.literal(false)),
18
+ batch: v.optional(batchResult),
19
+ }),
20
+ v.strictObject({
21
+ files,
22
+ chat: v.nullable(id),
23
+ saved: count,
24
+ existing: count,
25
+ complete: v.boolean(),
26
+ batch: v.optional(batchResult),
27
+ stopped: v.optional(v.literal(true)),
28
+ extraction: v.optional(extractionSummary),
29
+ }),
30
+ ]);
31
+ /** Opaque history keys: numeric message IDs, or time indexing selected by the provider. */
32
+ const historyRange = v.strictObject({ from: v.number(), to: v.number() });
33
+ export const messageSyncEstimate = v.strictObject({
34
+ chat: id,
35
+ held: count,
36
+ ranges: v.array(historyRange),
37
+ missing: v.nullable(count),
38
+ requests: v.nullable(count),
39
+ runs: v.nullable(count),
40
+ seconds: v.nullable(count),
41
+ });
42
+ const tasks = v.optional(v.strictObject({
43
+ added: count,
44
+ closed: count,
45
+ review: count,
46
+ held: v.optional(count),
47
+ held_chats: v.optional(count),
48
+ }));
49
+ export const messageSyncChat = v.strictObject({
50
+ issue: v.optional(actionableError),
51
+ resume: v.optional(v.strictObject({ before: v.optional(text) })),
52
+ prepared: v.optional(catchUpPreparation),
53
+ window_complete: v.optional(v.boolean()),
54
+ requests: v.optional(count),
55
+ chat: v.nullable(id),
56
+ fetched: count,
57
+ complete: v.boolean(),
58
+ ranges: v.array(historyRange),
59
+ reached_since: v.optional(v.literal(true)),
60
+ reached_last: v.optional(v.literal(true)),
61
+ stopped: v.optional(v.literal(true)),
62
+ tasks,
63
+ });
64
+ export const messageSyncAll = v.strictObject({
65
+ batch: v.optional(batchResult),
66
+ chats: count,
67
+ fetched: count,
68
+ complete: v.boolean(),
69
+ stopped: v.optional(v.literal(true)),
70
+ items: v.array(v.strictObject({
71
+ chat: id,
72
+ title: v.nullable(text),
73
+ fetched: count,
74
+ complete: v.boolean(),
75
+ current: v.optional(v.literal(true)),
76
+ stopped: v.optional(v.literal(true)),
77
+ error: v.optional(text),
78
+ issue: v.optional(actionableError),
79
+ })),
80
+ tasks,
81
+ });
82
+ export const messageSyncStarted = v.strictObject({ job: id, pid: count, chat: text, log: text });
83
+ export const messageSync = v.union([messageSyncEstimate, messageSyncChat, messageSyncAll, messageSyncStarted]);