@wirecat/cli-core 0.398.0 → 0.400.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 (248) hide show
  1. package/CHANGELOG.md +106 -0
  2. package/dist/analysis/consents.d.ts +11 -6
  3. package/dist/analysis/consents.js +5 -2
  4. package/dist/cli/analysis-choice.d.ts +1 -0
  5. package/dist/cli/analysis-choice.js +3 -0
  6. package/dist/cli/bot/admins.js +14 -4
  7. package/dist/cli/bot/command.js +38 -16
  8. package/dist/cli/bot/examples.d.ts +3 -0
  9. package/dist/cli/bot/examples.js +2 -0
  10. package/dist/cli/bot/mcp.js +6 -2
  11. package/dist/cli/bot/messages.js +17 -6
  12. package/dist/cli/bot/moderation.js +16 -4
  13. package/dist/cli/bot/people.js +16 -4
  14. package/dist/cli/bot/setup.js +27 -8
  15. package/dist/cli/bot/watch.js +7 -1
  16. package/dist/cli/config-command.js +20 -1
  17. package/dist/cli/context.d.ts +2 -0
  18. package/dist/cli/context.js +1 -1
  19. package/dist/cli/effects.d.ts +4 -1
  20. package/dist/cli/effects.js +10 -2
  21. package/dist/cli/embedding-choice.d.ts +2 -1
  22. package/dist/cli/embedding-choice.js +4 -1
  23. package/dist/cli/index.d.ts +1 -1
  24. package/dist/cli/index.js +1 -1
  25. package/dist/cli/json-fields.js +12 -1
  26. package/dist/cli/messenger/account-command.js +15 -6
  27. package/dist/cli/messenger/account-profile-query.d.ts +2 -0
  28. package/dist/cli/messenger/account-profile-query.js +13 -0
  29. package/dist/cli/messenger/account-sessions-command.js +1 -0
  30. package/dist/cli/messenger/admin-commands.js +30 -21
  31. package/dist/cli/messenger/admin-contacts-command.js +6 -3
  32. package/dist/cli/messenger/admin-folders-command.js +5 -5
  33. package/dist/cli/messenger/admin-moderation-command.js +4 -4
  34. package/dist/cli/messenger/admin-statistics-command.js +6 -14
  35. package/dist/cli/messenger/analysis-consents-query.d.ts +5 -0
  36. package/dist/cli/messenger/analysis-consents-query.js +20 -0
  37. package/dist/cli/messenger/archive-commands.js +3 -3
  38. package/dist/cli/messenger/attachments-command.js +3 -0
  39. package/dist/cli/messenger/backfill-command.js +5 -4
  40. package/dist/cli/messenger/catch-up-answers.d.ts +2 -1
  41. package/dist/cli/messenger/catch-up-answers.js +6 -2
  42. package/dist/cli/messenger/chat-queries.d.ts +1 -0
  43. package/dist/cli/messenger/chat-queries.js +12 -2
  44. package/dist/cli/messenger/chats-command.js +2 -2
  45. package/dist/cli/messenger/chats-documents-command.js +7 -5
  46. package/dist/cli/messenger/chats-members-command.js +7 -3
  47. package/dist/cli/messenger/chats-read-command.js +1 -1
  48. package/dist/cli/messenger/chats-stats-command.js +1 -1
  49. package/dist/cli/messenger/chats-tracking-command.js +14 -6
  50. package/dist/cli/messenger/contacts-command.js +11 -7
  51. package/dist/cli/messenger/context.d.ts +2 -0
  52. package/dist/cli/messenger/conversations-command.js +47 -29
  53. package/dist/cli/messenger/doctor-command.js +5 -1
  54. package/dist/cli/messenger/document-links-query.d.ts +2 -0
  55. package/dist/cli/messenger/document-links-query.js +9 -0
  56. package/dist/cli/messenger/download-command.js +1 -0
  57. package/dist/cli/messenger/flood-command.d.ts +2 -2
  58. package/dist/cli/messenger/flood-command.js +3 -3
  59. package/dist/cli/messenger/gaps-command.js +2 -2
  60. package/dist/cli/messenger/guard-commands.js +35 -13
  61. package/dist/cli/messenger/hearing-command.d.ts +1 -1
  62. package/dist/cli/messenger/hearing-command.js +1 -1
  63. package/dist/cli/messenger/images-command.js +1 -0
  64. package/dist/cli/messenger/inbox.js +6 -4
  65. package/dist/cli/messenger/media-archive-command.js +2 -0
  66. package/dist/cli/messenger/media-archive-move-command.js +1 -0
  67. package/dist/cli/messenger/media-archive-timer-command.js +1 -1
  68. package/dist/cli/messenger/mentions-command.js +15 -2
  69. package/dist/cli/messenger/messages-command.js +2 -0
  70. package/dist/cli/messenger/messages-delete-command.js +1 -0
  71. package/dist/cli/messenger/messages-edit-command.js +1 -0
  72. package/dist/cli/messenger/messages-evidence-command.js +3 -1
  73. package/dist/cli/messenger/messages-forward-command.js +1 -0
  74. package/dist/cli/messenger/messages-pin-command.js +3 -0
  75. package/dist/cli/messenger/messages-send-command.js +1 -0
  76. package/dist/cli/messenger/messages-stats-command.js +1 -1
  77. package/dist/cli/messenger/metadata-command.js +7 -2
  78. package/dist/cli/messenger/models-command.js +10 -2
  79. package/dist/cli/messenger/polls-command.js +4 -0
  80. package/dist/cli/messenger/private-people-command.js +8 -6
  81. package/dist/cli/messenger/rankings-command.js +6 -11
  82. package/dist/cli/messenger/reactions-command.js +2 -0
  83. package/dist/cli/messenger/recipients-query.d.ts +5 -0
  84. package/dist/cli/messenger/recipients-query.js +18 -0
  85. package/dist/cli/messenger/records-command.js +13 -6
  86. package/dist/cli/messenger/replies-edit-command.d.ts +1 -1
  87. package/dist/cli/messenger/replies-edit-command.js +13 -5
  88. package/dist/cli/messenger/retention-command.js +1 -1
  89. package/dist/cli/messenger/review.js +6 -4
  90. package/dist/cli/messenger/search-command.js +3 -1
  91. package/dist/cli/messenger/searches-command.js +6 -2
  92. package/dist/cli/messenger/sends-query.d.ts +5 -0
  93. package/dist/cli/messenger/sends-query.js +33 -0
  94. package/dist/cli/messenger/serve-command.js +1 -0
  95. package/dist/cli/messenger/serve-relay.d.ts +1 -0
  96. package/dist/cli/messenger/statistics-query.d.ts +14 -0
  97. package/dist/cli/messenger/statistics-query.js +143 -0
  98. package/dist/cli/messenger/stats-command.js +6 -6
  99. package/dist/cli/messenger/store-maintenance-command.d.ts +1 -1
  100. package/dist/cli/messenger/store-maintenance-command.js +10 -10
  101. package/dist/cli/messenger/tags-command.js +18 -6
  102. package/dist/cli/messenger/tasks-command.js +47 -8
  103. package/dist/cli/messenger/transcribe-command.js +2 -1
  104. package/dist/cli/messenger/watch-answers.d.ts +6 -0
  105. package/dist/cli/messenger/watch-answers.js +69 -0
  106. package/dist/cli/messenger/watch-command.d.ts +1 -1
  107. package/dist/cli/messenger/watch-command.js +56 -7
  108. package/dist/cli/program.js +5 -1
  109. package/dist/cli/runs/command.js +25 -38
  110. package/dist/cli/runs/query.d.ts +5 -0
  111. package/dist/cli/runs/query.js +32 -0
  112. package/dist/cli/runs/search-command.d.ts +4 -0
  113. package/dist/cli/runs/search-command.js +27 -0
  114. package/dist/cli/runs/search-query.d.ts +4 -0
  115. package/dist/cli/runs/search-query.js +50 -0
  116. package/dist/cli/runs/search.d.ts +2 -1
  117. package/dist/cli/runs/search.js +6 -6
  118. package/dist/domain/attachments.js +9 -1
  119. package/dist/domain/rankings-options.js +3 -3
  120. package/dist/entities/account-change.d.ts +89 -0
  121. package/dist/entities/account-change.js +20 -0
  122. package/dist/entities/account-profile.d.ts +7 -0
  123. package/dist/entities/account-profile.js +8 -0
  124. package/dist/entities/analysis-consent.d.ts +9 -0
  125. package/dist/entities/analysis-consent.js +4 -0
  126. package/dist/entities/attachment-results.d.ts +96 -0
  127. package/dist/entities/attachment-results.js +31 -0
  128. package/dist/entities/batch-result.d.ts +27 -0
  129. package/dist/entities/batch-result.js +18 -0
  130. package/dist/entities/chat-admin.d.ts +234 -0
  131. package/dist/entities/chat-admin.js +84 -0
  132. package/dist/entities/chat-change.d.ts +25 -0
  133. package/dist/entities/chat-change.js +11 -0
  134. package/dist/entities/chat-metadata.d.ts +34 -0
  135. package/dist/entities/chat-metadata.js +15 -0
  136. package/dist/entities/chat-moderation.d.ts +44 -0
  137. package/dist/entities/chat-moderation.js +37 -0
  138. package/dist/entities/chat-tracking.d.ts +26 -0
  139. package/dist/entities/chat-tracking.js +23 -0
  140. package/dist/entities/contact-activity.d.ts +52 -0
  141. package/dist/entities/contact-activity.js +42 -0
  142. package/dist/entities/contact-context.d.ts +1568 -0
  143. package/dist/entities/contact-context.js +191 -0
  144. package/dist/entities/contact-write.d.ts +22 -0
  145. package/dist/entities/contact-write.js +6 -0
  146. package/dist/entities/conversation-preparation.d.ts +63 -0
  147. package/dist/entities/conversation-preparation.js +23 -0
  148. package/dist/entities/conversation-results.d.ts +567 -0
  149. package/dist/entities/conversation-results.js +94 -0
  150. package/dist/entities/document-link.d.ts +13 -0
  151. package/dist/entities/document-link.js +11 -0
  152. package/dist/entities/extraction-report.d.ts +95 -0
  153. package/dist/entities/extraction-report.js +34 -0
  154. package/dist/entities/image-embedding.d.ts +9 -0
  155. package/dist/entities/image-embedding.js +10 -0
  156. package/dist/entities/index.d.ts +8006 -1928
  157. package/dist/entities/index.js +174 -3
  158. package/dist/entities/listener.d.ts +2150 -0
  159. package/dist/entities/listener.js +46 -0
  160. package/dist/entities/media-archive.d.ts +43 -0
  161. package/dist/entities/media-archive.js +32 -0
  162. package/dist/entities/meeting-task-proposal.d.ts +14 -0
  163. package/dist/entities/meeting-task-proposal.js +19 -0
  164. package/dist/entities/meeting.d.ts +1 -1
  165. package/dist/entities/meeting.js +1 -1
  166. package/dist/entities/mention.d.ts +63 -0
  167. package/dist/entities/mention.js +44 -0
  168. package/dist/entities/message-change.d.ts +19 -0
  169. package/dist/entities/message-change.js +6 -0
  170. package/dist/entities/message-context.d.ts +617 -0
  171. package/dist/entities/message-context.js +20 -0
  172. package/dist/entities/message-read.d.ts +73 -0
  173. package/dist/entities/message-read.js +58 -0
  174. package/dist/entities/message-transfer.d.ts +379 -0
  175. package/dist/entities/message-transfer.js +83 -0
  176. package/dist/entities/message-write.d.ts +191 -0
  177. package/dist/entities/message-write.js +8 -0
  178. package/dist/entities/model-key.d.ts +14 -0
  179. package/dist/entities/model-key.js +10 -0
  180. package/dist/entities/poll.d.ts +40 -0
  181. package/dist/entities/poll.js +16 -0
  182. package/dist/entities/private-contact.d.ts +10 -0
  183. package/dist/entities/private-contact.js +4 -0
  184. package/dist/entities/reaction-change.d.ts +7 -0
  185. package/dist/entities/reaction-change.js +8 -0
  186. package/dist/entities/recipient.d.ts +29 -0
  187. package/dist/entities/recipient.js +11 -0
  188. package/dist/entities/recorded-run.d.ts +103 -0
  189. package/dist/entities/recorded-run.js +44 -0
  190. package/dist/entities/saved-search.d.ts +4 -0
  191. package/dist/entities/saved-search.js +2 -0
  192. package/dist/entities/send-attempt.d.ts +31 -0
  193. package/dist/entities/send-attempt.js +29 -0
  194. package/dist/entities/store-maintenance.d.ts +319 -0
  195. package/dist/entities/store-maintenance.js +145 -0
  196. package/dist/entities/store-records.d.ts +442 -0
  197. package/dist/entities/store-records.js +99 -0
  198. package/dist/entities/tag-change.d.ts +74 -0
  199. package/dist/entities/tag-change.js +31 -0
  200. package/dist/entities/task-pair.d.ts +31 -0
  201. package/dist/entities/task-pair.js +23 -0
  202. package/dist/entities/task-results.d.ts +524 -0
  203. package/dist/entities/task-results.js +142 -0
  204. package/dist/errors/reasons.js +1 -0
  205. package/dist/mcp/agent.d.ts +3 -1
  206. package/dist/mcp/agent.js +9 -6
  207. package/dist/mcp/bot/server.d.ts +2 -0
  208. package/dist/mcp/bot/server.js +1 -0
  209. package/dist/mcp/prompts.js +8 -2
  210. package/dist/mcp/server.js +3 -1
  211. package/dist/mcp/tools/attachments.js +1 -0
  212. package/dist/meetings/cli/index.js +1 -1
  213. package/dist/meetings/cli/passage.js +1 -0
  214. package/dist/meetings/index.d.ts +2 -1
  215. package/dist/meetings/index.js +1 -0
  216. package/dist/meetings/links.d.ts +16 -0
  217. package/dist/meetings/mcp/index.d.ts +15 -15
  218. package/dist/meetings/read-answers.d.ts +167 -0
  219. package/dist/meetings/read-answers.js +183 -0
  220. package/dist/runs/run.d.ts +10 -2
  221. package/dist/runs/run.js +11 -3
  222. package/dist/sends/journal.d.ts +8 -1
  223. package/dist/sends/journal.js +9 -2
  224. package/dist/sends/permissions.d.ts +5 -1
  225. package/dist/sends/permissions.js +11 -1
  226. package/dist/sends/recipients.d.ts +8 -0
  227. package/dist/sends/recipients.js +9 -0
  228. package/dist/services/admin-statistics.js +3 -3
  229. package/dist/services/chat-documents.d.ts +1 -0
  230. package/dist/services/chat-documents.js +9 -3
  231. package/dist/services/chats.d.ts +1 -1
  232. package/dist/services/chats.js +5 -2
  233. package/dist/services/meeting-links.d.ts +2 -17
  234. package/dist/store/exports.d.ts +1 -1
  235. package/dist/store/exports.js +1 -1
  236. package/dist/store/messages.d.ts +3 -1
  237. package/dist/store/messages.js +2 -2
  238. package/dist/store/roster.d.ts +4 -1
  239. package/dist/store/roster.js +2 -2
  240. package/dist/store/sqlite/chats.d.ts +12 -0
  241. package/dist/store/sqlite/chats.js +1 -0
  242. package/dist/store/sqlite/document-links.d.ts +1 -1
  243. package/dist/store/sqlite/document-links.js +5 -5
  244. package/dist/store/sqlite/involvements.js +2 -1
  245. package/dist/store/sqlite/roster.d.ts +2 -1
  246. package/dist/store/sqlite/roster.js +3 -2
  247. package/package.json +3 -3
  248. package/parity.json +76 -108
@@ -0,0 +1,94 @@
1
+ import * as v from "valibot";
2
+ import { conversation } from "./conversation.js";
3
+ import { chatEmbedding, conversationBuild, conversationPreparation } from "./conversation-preparation.js";
4
+ import { count, id, reference, text, time } from "./fields.js";
5
+ import { message } from "./message.js";
6
+ /** JSON returns the conversation with its messages; JSONL streams the messages themselves. */
7
+ export const conversationDetails = v.union([
8
+ v.strictObject({ ...conversation.entries, messages: v.array(message) }),
9
+ message,
10
+ ]);
11
+ export const conversationBatchStatus = v.strictObject({
12
+ chat: id,
13
+ messages: count,
14
+ characters: count,
15
+ batches: count,
16
+ tokens_estimate: count,
17
+ });
18
+ const batchMessage = v.strictObject({
19
+ id,
20
+ at: time,
21
+ sender: v.strictObject({ id: v.nullable(id), name: v.nullable(text) }),
22
+ text,
23
+ reply_to: v.optional(id),
24
+ thread: v.optional(id),
25
+ mentions: v.optional(v.array(id)),
26
+ answer: v.boolean(),
27
+ candidates: v.optional(v.array(v.strictObject({ parent: v.nullable(id), source: text, kind: text, confidence: v.number() }))),
28
+ });
29
+ export const conversationBatch = v.union([
30
+ v.strictObject({ batch: v.null() }),
31
+ v.strictObject({
32
+ batch: id,
33
+ chat: id,
34
+ messages: v.array(batchMessage),
35
+ remaining: v.strictObject({ messages: count, characters: count }),
36
+ }),
37
+ ]);
38
+ const analyzedConversation = v.strictObject({
39
+ chat: id,
40
+ model: text,
41
+ batches: count,
42
+ stored: count,
43
+ tokens: count,
44
+ reserved_tokens: count,
45
+ max_tokens: count,
46
+ stopped: v.picklist(["complete", "budget"]),
47
+ remaining: conversationBatchStatus,
48
+ built: v.optional(conversationBuild),
49
+ });
50
+ export const conversationBuildResult = v.union([conversationBuild, conversationPreparation, analyzedConversation]);
51
+ export const conversationEmbedding = v.union([chatEmbedding, conversationPreparation]);
52
+ export const conversationChange = v.union([
53
+ v.strictObject({ chat: id, stored: count }),
54
+ v.strictObject({ chat: id, cleared: count }),
55
+ ]);
56
+ export const conversationReadiness = v.strictObject({
57
+ chat: id,
58
+ model: text,
59
+ state: v.picklist(["ready", "stale", "partial", "words-only", "not-built"]),
60
+ graph: v.nullable(v.strictObject({ built_at: time, rules_version: v.nullable(count), outdated_rules: v.boolean() })),
61
+ pending: v.strictObject({ new: count, edited: count, deleted: count }),
62
+ vectors: v.strictObject({ chunks: count, current: count, stale: count, missing: count }),
63
+ });
64
+ export const conversationEmbeddingStatus = v.strictObject({
65
+ chat: id,
66
+ model: text,
67
+ chunks: count,
68
+ embedded: count,
69
+ left: count,
70
+ estimate_seconds: v.nullable(v.number()),
71
+ tokens_at_most: count,
72
+ price_at_most: v.optional(v.strictObject({ usd: v.number(), read: text })),
73
+ });
74
+ const summary = v.strictObject({
75
+ id,
76
+ chat_id: id,
77
+ first_message_id: id,
78
+ first_at: time,
79
+ last_at: time,
80
+ message_count: count,
81
+ senders: count,
82
+ built_at: time,
83
+ algorithm_version: count,
84
+ });
85
+ export const conversationHit = v.strictObject({
86
+ source: v.optional(v.strictObject({ provider: text, account: id })),
87
+ locator: v.optional(reference),
88
+ summary,
89
+ chunk: v.strictObject({ first_message_id: id, last_message_id: id }),
90
+ score: v.nullable(v.number()),
91
+ matched_in: v.optional(v.literal("context")),
92
+ by: v.array(v.picklist(["meaning", "words"])),
93
+ stale: v.boolean(),
94
+ });
@@ -0,0 +1,13 @@
1
+ import * as v from "valibot";
2
+ export declare const documentLink: v.StrictObjectSchema<{
3
+ readonly ref: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.RegexAction<string, "a reference such as `note:42`">]>;
4
+ readonly url: v.StringSchema<undefined>;
5
+ readonly document_id: v.NullableSchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.MinLengthAction<string, 1, undefined>]>, undefined>;
6
+ readonly title: v.NullableSchema<v.StringSchema<undefined>, undefined>;
7
+ readonly in_store: v.BooleanSchema<undefined>;
8
+ readonly sent_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`">]>;
9
+ readonly sender: v.StrictObjectSchema<{
10
+ readonly id: v.NullableSchema<v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.MinLengthAction<string, 1, undefined>]>, undefined>;
11
+ readonly name: v.NullableSchema<v.StringSchema<undefined>, undefined>;
12
+ }, undefined>;
13
+ }, undefined>;
@@ -0,0 +1,11 @@
1
+ import * as v from "valibot";
2
+ import { id, reference, text, time } from "./fields.js";
3
+ export const documentLink = v.strictObject({
4
+ ref: reference,
5
+ url: text,
6
+ document_id: v.nullable(id),
7
+ title: v.nullable(text),
8
+ in_store: v.boolean(),
9
+ sent_at: time,
10
+ sender: v.strictObject({ id: v.nullable(id), name: v.nullable(text) }),
11
+ });
@@ -0,0 +1,95 @@
1
+ import * as v from "valibot";
2
+ export declare const extractionItem: v.StrictObjectSchema<{
3
+ readonly ref: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.RegexAction<string, "a reference such as `note:42`">]>;
4
+ readonly attachment: v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 0, undefined>]>;
5
+ readonly kind: v.StringSchema<undefined>;
6
+ readonly name: v.NullableSchema<v.StringSchema<undefined>, undefined>;
7
+ readonly status: v.PicklistSchema<["extracted", "needs-agent", "unreadable", "engine-missing", "too-large", "missing"], undefined>;
8
+ readonly extractor: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
9
+ readonly chars: v.OptionalSchema<v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 0, undefined>]>, undefined>;
10
+ readonly local_path: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
11
+ readonly pages: v.OptionalSchema<v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 0, undefined>]>, undefined>;
12
+ readonly ocr_pages: v.OptionalSchema<v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 0, undefined>]>, undefined>;
13
+ readonly error: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
14
+ readonly issue: v.OptionalSchema<v.ObjectWithRestSchema<{
15
+ readonly code: v.StringSchema<undefined>;
16
+ readonly message: v.StringSchema<undefined>;
17
+ readonly retryable: v.BooleanSchema<undefined>;
18
+ readonly retry_after_ms: v.OptionalSchema<v.NumberSchema<undefined>, undefined>;
19
+ }, v.UnknownSchema, undefined>, undefined>;
20
+ }, undefined>;
21
+ export declare const extractionSummary: v.StrictObjectSchema<{
22
+ readonly extracted: 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 needs_agent: v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 0, undefined>]>;
25
+ readonly complete: v.BooleanSchema<undefined>;
26
+ readonly batch: v.OptionalSchema<v.StrictObjectSchema<{
27
+ readonly attempted: v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 0, undefined>]>;
28
+ readonly succeeded: v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 0, undefined>]>;
29
+ readonly failed: v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 0, undefined>]>;
30
+ readonly error_rate: v.NumberSchema<undefined>;
31
+ readonly failures: v.ArraySchema<v.StrictObjectSchema<{
32
+ readonly id: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.MinLengthAction<string, 1, undefined>]>;
33
+ readonly stage: v.StringSchema<undefined>;
34
+ readonly error: v.ObjectWithRestSchema<{
35
+ readonly code: v.StringSchema<undefined>;
36
+ readonly message: v.StringSchema<undefined>;
37
+ readonly retryable: v.BooleanSchema<undefined>;
38
+ readonly retry_after_ms: v.OptionalSchema<v.NumberSchema<undefined>, undefined>;
39
+ }, v.UnknownSchema, undefined>;
40
+ readonly attachment: v.OptionalSchema<v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 0, undefined>]>, undefined>;
41
+ }, undefined>, undefined>;
42
+ readonly stop_reason: v.OptionalSchema<v.PicklistSchema<["rate_limited", "authentication", "error_rate", "cancelled"], undefined>, undefined>;
43
+ readonly max_error_percent: v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 0, undefined>]>;
44
+ }, undefined>, undefined>;
45
+ }, undefined>;
46
+ export declare const extractionReport: v.StrictObjectSchema<{
47
+ readonly extracted: v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 0, undefined>]>;
48
+ readonly failed: v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 0, undefined>]>;
49
+ readonly needs_agent: v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 0, undefined>]>;
50
+ readonly complete: v.BooleanSchema<undefined>;
51
+ readonly batch: v.OptionalSchema<v.StrictObjectSchema<{
52
+ readonly attempted: v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 0, undefined>]>;
53
+ readonly succeeded: v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 0, undefined>]>;
54
+ readonly failed: v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 0, undefined>]>;
55
+ readonly error_rate: v.NumberSchema<undefined>;
56
+ readonly failures: v.ArraySchema<v.StrictObjectSchema<{
57
+ readonly id: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.MinLengthAction<string, 1, undefined>]>;
58
+ readonly stage: v.StringSchema<undefined>;
59
+ readonly error: v.ObjectWithRestSchema<{
60
+ readonly code: v.StringSchema<undefined>;
61
+ readonly message: v.StringSchema<undefined>;
62
+ readonly retryable: v.BooleanSchema<undefined>;
63
+ readonly retry_after_ms: v.OptionalSchema<v.NumberSchema<undefined>, undefined>;
64
+ }, v.UnknownSchema, undefined>;
65
+ readonly attachment: v.OptionalSchema<v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 0, undefined>]>, undefined>;
66
+ }, undefined>, undefined>;
67
+ readonly stop_reason: v.OptionalSchema<v.PicklistSchema<["rate_limited", "authentication", "error_rate", "cancelled"], undefined>, undefined>;
68
+ readonly max_error_percent: v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 0, undefined>]>;
69
+ }, undefined>, undefined>;
70
+ readonly items: v.ArraySchema<v.StrictObjectSchema<{
71
+ readonly ref: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.RegexAction<string, "a reference such as `note:42`">]>;
72
+ readonly attachment: v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 0, undefined>]>;
73
+ readonly kind: v.StringSchema<undefined>;
74
+ readonly name: v.NullableSchema<v.StringSchema<undefined>, undefined>;
75
+ readonly status: v.PicklistSchema<["extracted", "needs-agent", "unreadable", "engine-missing", "too-large", "missing"], undefined>;
76
+ readonly extractor: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
77
+ readonly chars: v.OptionalSchema<v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 0, undefined>]>, undefined>;
78
+ readonly local_path: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
79
+ readonly pages: v.OptionalSchema<v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 0, undefined>]>, undefined>;
80
+ readonly ocr_pages: v.OptionalSchema<v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 0, undefined>]>, undefined>;
81
+ readonly error: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
82
+ readonly issue: v.OptionalSchema<v.ObjectWithRestSchema<{
83
+ readonly code: v.StringSchema<undefined>;
84
+ readonly message: v.StringSchema<undefined>;
85
+ readonly retryable: v.BooleanSchema<undefined>;
86
+ readonly retry_after_ms: v.OptionalSchema<v.NumberSchema<undefined>, undefined>;
87
+ }, v.UnknownSchema, undefined>, undefined>;
88
+ }, undefined>, undefined>;
89
+ readonly unchanged: v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 0, undefined>]>;
90
+ readonly not_downloaded: v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 0, undefined>]>;
91
+ readonly unsupported: v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 0, undefined>]>;
92
+ /** Reader package names, such as unpdf or @napi-rs/canvas. */
93
+ readonly engines_missing: v.ArraySchema<v.StringSchema<undefined>, undefined>;
94
+ readonly cursor: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
95
+ }, undefined>;
@@ -0,0 +1,34 @@
1
+ import * as v from "valibot";
2
+ import { actionableError, batchResult } from "./batch-result.js";
3
+ import { count, reference, text } from "./fields.js";
4
+ export const extractionItem = v.strictObject({
5
+ ref: reference,
6
+ attachment: count,
7
+ kind: text,
8
+ name: v.nullable(text),
9
+ status: v.picklist(["extracted", "needs-agent", "unreadable", "engine-missing", "too-large", "missing"]),
10
+ extractor: v.optional(text),
11
+ chars: v.optional(count),
12
+ local_path: v.optional(text),
13
+ pages: v.optional(count),
14
+ ocr_pages: v.optional(count),
15
+ error: v.optional(text),
16
+ issue: v.optional(actionableError),
17
+ });
18
+ export const extractionSummary = v.strictObject({
19
+ extracted: count,
20
+ failed: count,
21
+ needs_agent: count,
22
+ complete: v.boolean(),
23
+ batch: v.optional(batchResult),
24
+ });
25
+ export const extractionReport = v.strictObject({
26
+ ...extractionSummary.entries,
27
+ items: v.array(extractionItem),
28
+ unchanged: count,
29
+ not_downloaded: count,
30
+ unsupported: count,
31
+ /** Reader package names, such as unpdf or @napi-rs/canvas. */
32
+ engines_missing: v.array(text),
33
+ cursor: v.optional(text),
34
+ });
@@ -0,0 +1,9 @@
1
+ import * as v from "valibot";
2
+ /** The bounded image batch's progress; failed and unreadable pictures remain distinct. */
3
+ export declare const imageEmbedding: v.StrictObjectSchema<{
4
+ readonly model: v.StringSchema<undefined>;
5
+ readonly embedded: v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 0, undefined>]>;
6
+ readonly skipped: v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 0, undefined>]>;
7
+ readonly failed: v.SchemaWithPipe<readonly [v.NumberSchema<undefined>, v.IntegerAction<number, undefined>, v.MinValueAction<number, 0, undefined>]>;
8
+ readonly more: v.BooleanSchema<undefined>;
9
+ }, undefined>;
@@ -0,0 +1,10 @@
1
+ import * as v from "valibot";
2
+ import { count, text } from "./fields.js";
3
+ /** The bounded image batch's progress; failed and unreadable pictures remain distinct. */
4
+ export const imageEmbedding = v.strictObject({
5
+ model: text,
6
+ embedded: count,
7
+ skipped: count,
8
+ failed: count,
9
+ more: v.boolean(),
10
+ });