@wirecat/zoom-cli 0.13.0 → 0.15.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 (213) hide show
  1. package/README.md +4 -4
  2. package/dist/answer-output.d.ts +21 -2
  3. package/dist/answer-output.d.ts.map +1 -1
  4. package/dist/answer-output.js +44 -37
  5. package/dist/answer-output.js.map +1 -1
  6. package/dist/answers.d.ts +2 -2
  7. package/dist/answers.d.ts.map +1 -1
  8. package/dist/answers.js +12 -43
  9. package/dist/answers.js.map +1 -1
  10. package/dist/api.d.ts.map +1 -1
  11. package/dist/api.js +20 -19
  12. package/dist/api.js.map +1 -1
  13. package/dist/archive-commands.d.ts +5 -4
  14. package/dist/archive-commands.d.ts.map +1 -1
  15. package/dist/archive-commands.js +31 -30
  16. package/dist/archive-commands.js.map +1 -1
  17. package/dist/archive-import.d.ts +2 -2
  18. package/dist/archive-import.d.ts.map +1 -1
  19. package/dist/archive-import.js +20 -30
  20. package/dist/archive-import.js.map +1 -1
  21. package/dist/archive-transcripts.d.ts.map +1 -1
  22. package/dist/archive-transcripts.js +22 -21
  23. package/dist/archive-transcripts.js.map +1 -1
  24. package/dist/bin/zm.js +2 -5
  25. package/dist/bin/zm.js.map +1 -1
  26. package/dist/command-effects.js +1 -1
  27. package/dist/command-effects.js.map +1 -1
  28. package/dist/commands.d.ts +2 -1
  29. package/dist/commands.d.ts.map +1 -1
  30. package/dist/commands.js +8 -8
  31. package/dist/commands.js.map +1 -1
  32. package/dist/config.d.ts.map +1 -1
  33. package/dist/config.js +54 -37
  34. package/dist/config.js.map +1 -1
  35. package/dist/errors.d.ts +0 -4
  36. package/dist/errors.d.ts.map +1 -1
  37. package/dist/errors.js +2 -7
  38. package/dist/errors.js.map +1 -1
  39. package/dist/execution.d.ts.map +1 -1
  40. package/dist/execution.js +3 -4
  41. package/dist/execution.js.map +1 -1
  42. package/dist/files.d.ts.map +1 -1
  43. package/dist/files.js +9 -9
  44. package/dist/files.js.map +1 -1
  45. package/dist/folders.d.ts +2 -7
  46. package/dist/folders.d.ts.map +1 -1
  47. package/dist/folders.js +2 -35
  48. package/dist/folders.js.map +1 -1
  49. package/dist/index.d.ts +2 -1
  50. package/dist/index.d.ts.map +1 -1
  51. package/dist/index.js +2 -1
  52. package/dist/index.js.map +1 -1
  53. package/dist/ingestion-search-commands.d.ts +3 -2
  54. package/dist/ingestion-search-commands.d.ts.map +1 -1
  55. package/dist/ingestion-search-commands.js +5 -5
  56. package/dist/ingestion-search-commands.js.map +1 -1
  57. package/dist/json-fields.d.ts +7 -0
  58. package/dist/json-fields.d.ts.map +1 -0
  59. package/dist/json-fields.js +23 -0
  60. package/dist/json-fields.js.map +1 -0
  61. package/dist/keys.d.ts +1 -1
  62. package/dist/keys.d.ts.map +1 -1
  63. package/dist/keys.js +7 -5
  64. package/dist/keys.js.map +1 -1
  65. package/dist/local-transcription-commands.d.ts +3 -2
  66. package/dist/local-transcription-commands.d.ts.map +1 -1
  67. package/dist/local-transcription-commands.js +6 -6
  68. package/dist/local-transcription-commands.js.map +1 -1
  69. package/dist/local-transcription.d.ts.map +1 -1
  70. package/dist/local-transcription.js +13 -12
  71. package/dist/local-transcription.js.map +1 -1
  72. package/dist/login.d.ts.map +1 -1
  73. package/dist/login.js +8 -7
  74. package/dist/login.js.map +1 -1
  75. package/dist/mcp-server.d.ts +2 -0
  76. package/dist/mcp-server.d.ts.map +1 -1
  77. package/dist/mcp-server.js +33 -42
  78. package/dist/mcp-server.js.map +1 -1
  79. package/dist/meeting-context-commands.d.ts +2 -1
  80. package/dist/meeting-context-commands.d.ts.map +1 -1
  81. package/dist/meeting-context-commands.js +10 -15
  82. package/dist/meeting-context-commands.js.map +1 -1
  83. package/dist/meeting-context.d.ts +6 -6
  84. package/dist/meeting-context.d.ts.map +1 -1
  85. package/dist/meeting-context.js +8 -21
  86. package/dist/meeting-context.js.map +1 -1
  87. package/dist/meeting-integration-commands.d.ts +3 -2
  88. package/dist/meeting-integration-commands.d.ts.map +1 -1
  89. package/dist/meeting-integration-commands.js +6 -6
  90. package/dist/meeting-integration-commands.js.map +1 -1
  91. package/dist/meeting-integration.d.ts.map +1 -1
  92. package/dist/meeting-integration.js +2 -2
  93. package/dist/meeting-integration.js.map +1 -1
  94. package/dist/meeting-mcp-command.d.ts +19 -0
  95. package/dist/meeting-mcp-command.d.ts.map +1 -0
  96. package/dist/meeting-mcp-command.js +41 -0
  97. package/dist/meeting-mcp-command.js.map +1 -0
  98. package/dist/meeting-preparation-mcp.d.ts +131 -0
  99. package/dist/meeting-preparation-mcp.d.ts.map +1 -0
  100. package/dist/meeting-preparation-mcp.js +20 -0
  101. package/dist/meeting-preparation-mcp.js.map +1 -0
  102. package/dist/meeting-preparation.d.ts +22 -0
  103. package/dist/meeting-preparation.d.ts.map +1 -0
  104. package/dist/meeting-preparation.js +29 -0
  105. package/dist/meeting-preparation.js.map +1 -0
  106. package/dist/meeting-project-evidence-commands.d.ts +1 -4
  107. package/dist/meeting-project-evidence-commands.d.ts.map +1 -1
  108. package/dist/meeting-project-evidence-commands.js +2 -6
  109. package/dist/meeting-project-evidence-commands.js.map +1 -1
  110. package/dist/meeting-project-evidence-mcp.d.ts.map +1 -1
  111. package/dist/meeting-project-evidence-mcp.js +2 -4
  112. package/dist/meeting-project-evidence-mcp.js.map +1 -1
  113. package/dist/meeting-read-command-bindings.d.ts +10 -0
  114. package/dist/meeting-read-command-bindings.d.ts.map +1 -0
  115. package/dist/meeting-read-command-bindings.js +13 -0
  116. package/dist/meeting-read-command-bindings.js.map +1 -0
  117. package/dist/meeting-search-commands.d.ts +3 -2
  118. package/dist/meeting-search-commands.d.ts.map +1 -1
  119. package/dist/meeting-search-commands.js +46 -38
  120. package/dist/meeting-search-commands.js.map +1 -1
  121. package/dist/meeting-semantic-commands.d.ts +3 -2
  122. package/dist/meeting-semantic-commands.d.ts.map +1 -1
  123. package/dist/meeting-semantic-commands.js +12 -12
  124. package/dist/meeting-semantic-commands.js.map +1 -1
  125. package/dist/meeting-semantic.d.ts.map +1 -1
  126. package/dist/meeting-semantic.js +3 -2
  127. package/dist/meeting-semantic.js.map +1 -1
  128. package/dist/occurrence-schedule.d.ts +3 -0
  129. package/dist/occurrence-schedule.d.ts.map +1 -0
  130. package/dist/occurrence-schedule.js +106 -0
  131. package/dist/occurrence-schedule.js.map +1 -0
  132. package/dist/output-file.js +3 -3
  133. package/dist/output-file.js.map +1 -1
  134. package/dist/program.d.ts +14 -28
  135. package/dist/program.d.ts.map +1 -1
  136. package/dist/program.js +152 -317
  137. package/dist/program.js.map +1 -1
  138. package/dist/recording-archive.d.ts +1 -1
  139. package/dist/recording-archive.d.ts.map +1 -1
  140. package/dist/recording-archive.js +99 -46
  141. package/dist/recording-archive.js.map +1 -1
  142. package/dist/recording-partial-store.d.ts.map +1 -1
  143. package/dist/recording-partial-store.js +11 -10
  144. package/dist/recording-partial-store.js.map +1 -1
  145. package/dist/recording-promotion-store.d.ts.map +1 -1
  146. package/dist/recording-promotion-store.js +4 -4
  147. package/dist/recording-promotion-store.js.map +1 -1
  148. package/dist/recording-schedule-commands.d.ts +3 -2
  149. package/dist/recording-schedule-commands.d.ts.map +1 -1
  150. package/dist/recording-schedule-commands.js +12 -12
  151. package/dist/recording-schedule-commands.js.map +1 -1
  152. package/dist/recording-schedule-store.d.ts.map +1 -1
  153. package/dist/recording-schedule-store.js +15 -14
  154. package/dist/recording-schedule-store.js.map +1 -1
  155. package/dist/recording-schedule-systemd.d.ts.map +1 -1
  156. package/dist/recording-schedule-systemd.js +16 -15
  157. package/dist/recording-schedule-systemd.js.map +1 -1
  158. package/dist/recording-schedule.d.ts +1 -1
  159. package/dist/recording-schedule.d.ts.map +1 -1
  160. package/dist/recording-schedule.js +15 -14
  161. package/dist/recording-schedule.js.map +1 -1
  162. package/dist/recording-sync-store.d.ts.map +1 -1
  163. package/dist/recording-sync-store.js +9 -9
  164. package/dist/recording-sync-store.js.map +1 -1
  165. package/dist/recording-sync.d.ts +1 -1
  166. package/dist/recording-sync.d.ts.map +1 -1
  167. package/dist/recording-sync.js +10 -19
  168. package/dist/recording-sync.js.map +1 -1
  169. package/dist/recordings.d.ts.map +1 -1
  170. package/dist/recordings.js +19 -18
  171. package/dist/recordings.js.map +1 -1
  172. package/dist/remote-http.d.ts +1 -0
  173. package/dist/remote-http.d.ts.map +1 -1
  174. package/dist/remote-http.js +26 -14
  175. package/dist/remote-http.js.map +1 -1
  176. package/dist/remote-meeting-id.d.ts +2 -0
  177. package/dist/remote-meeting-id.d.ts.map +1 -0
  178. package/dist/remote-meeting-id.js +7 -0
  179. package/dist/remote-meeting-id.js.map +1 -0
  180. package/dist/remote-meetings.d.ts.map +1 -1
  181. package/dist/remote-meetings.js +10 -13
  182. package/dist/remote-meetings.js.map +1 -1
  183. package/dist/store-connection.d.ts +1 -7
  184. package/dist/store-connection.d.ts.map +1 -1
  185. package/dist/store-connection.js +95 -176
  186. package/dist/store-connection.js.map +1 -1
  187. package/dist/streaming.js +3 -3
  188. package/dist/streaming.js.map +1 -1
  189. package/dist/tokens.d.ts.map +1 -1
  190. package/dist/tokens.js +10 -9
  191. package/dist/tokens.js.map +1 -1
  192. package/dist/unified-search.d.ts +1 -10
  193. package/dist/unified-search.d.ts.map +1 -1
  194. package/dist/unified-search.js +7 -6
  195. package/dist/unified-search.js.map +1 -1
  196. package/dist/upcoming-meetings.d.ts +10 -0
  197. package/dist/upcoming-meetings.d.ts.map +1 -0
  198. package/dist/upcoming-meetings.js +24 -0
  199. package/dist/upcoming-meetings.js.map +1 -0
  200. package/dist/watch-commands.d.ts +2 -1
  201. package/dist/watch-commands.d.ts.map +1 -1
  202. package/dist/watch-commands.js +8 -8
  203. package/dist/watch-commands.js.map +1 -1
  204. package/package.json +3 -3
  205. package/skills/zoom-cli/SKILL.md +127 -169
  206. package/dist/ordinary-file.d.ts +0 -3
  207. package/dist/ordinary-file.d.ts.map +0 -1
  208. package/dist/ordinary-file.js +0 -16
  209. package/dist/ordinary-file.js.map +0 -1
  210. package/dist/wav-audio.d.ts +0 -2
  211. package/dist/wav-audio.d.ts.map +0 -1
  212. package/dist/wav-audio.js +0 -2
  213. package/dist/wav-audio.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"program.js","sourceRoot":"","sources":["../src/program.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"program.js","sourceRoot":"","sources":["../src/program.ts"],"names":[],"mappings":"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"}
@@ -2,7 +2,7 @@ import type { RecordingAsset, RecordingMeeting } from "./recordings.js";
2
2
  import { type ZoomRemote } from "./remote-http.js";
3
3
  export interface DownloadOptions {
4
4
  destination: string;
5
- account?: string;
5
+ account: string;
6
6
  resume?: boolean;
7
7
  fileIds?: string[];
8
8
  signal?: AbortSignal;
@@ -1 +1 @@
1
- {"version":3,"file":"recording-archive.d.ts","sourceRoot":"","sources":["../src/recording-archive.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAE,cAAc,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAA;AACvE,OAAO,EAAmB,KAAK,UAAU,EAAE,MAAM,kBAAkB,CAAA;AAEnE,MAAM,WAAW,eAAe;IAC9B,WAAW,EAAE,MAAM,CAAA;IACnB,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,MAAM,CAAC,EAAE,OAAO,CAAA;IAChB,OAAO,CAAC,EAAE,MAAM,EAAE,CAAA;IAClB,MAAM,CAAC,EAAE,WAAW,CAAA;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAA;CAClB;AACD,eAAO,MAAM,uBAAuB,YAAa,eAAe,KAAG,MA6BlE,CAAA;AACD,MAAM,WAAW,YAAY;IAC3B,EAAE,EAAE,MAAM,CAAA;IACV,IAAI,EAAE,MAAM,CAAA;IACZ,IAAI,EAAE,MAAM,CAAA;IACZ,MAAM,EAAE,MAAM,CAAA;IACd,UAAU,EAAE,MAAM,GAAG,IAAI,CAAA;IACzB,IAAI,EAAE,MAAM,CAAA;IACZ,MAAM,EAAE,MAAM,GAAG,IAAI,CAAA;IACrB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAA;IACxB,OAAO,EAAE,MAAM,GAAG,IAAI,CAAA;CACvB;AACD,MAAM,WAAW,eAAe;IAC9B,OAAO,EAAE,CAAC,CAAA;IACV,OAAO,EAAE,IAAI,CAAC,gBAAgB,EAAE,QAAQ,CAAC,CAAA;IACzC,KAAK,EAAE,YAAY,EAAE,CAAA;CACtB;AACD,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,MAAM,CAAA;IACZ,YAAY,EAAE,MAAM,CAAA;IACpB,UAAU,EAAE,YAAY,EAAE,CAAA;IAC1B,OAAO,EAAE,YAAY,EAAE,CAAA;IACvB,WAAW,EAAE,cAAc,EAAE,CAAA;CAC9B;AACD,MAAM,WAAW,mBAAmB;IAClC,YAAY,EAAE,MAAM,CAAA;IACpB,EAAE,EAAE,MAAM,CAAA;IACV,IAAI,EAAE,MAAM,CAAA;IACZ,KAAK,EAAE,OAAO,CAAA;CACf;AACD,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,MAAM,CAAA;IACZ,MAAM,EAAE,QAAQ,GAAG,OAAO,GAAG,SAAS,GAAG,cAAc,CAAA;IACvD,GAAG,EAAE,MAAM,GAAG,IAAI,CAAA;IAClB,IAAI,EAAE,MAAM,GAAG,IAAI,CAAA;CACpB;AA4CD,eAAO,MAAM,mBAAmB,gBACjB,MAAM,YACV;IAAE,MAAM,CAAC,EAAE,WAAW,CAAA;CAAE,KAChC,OAAO,CAAC,eAAe,EAAE,CA0B3B,CAAA;AACD,eAAO,MAAM,mBAAmB,gBACjB,MAAM,YACV;IAAE,KAAK,CAAC,EAAE,OAAO,CAAC;IAAC,MAAM,CAAC,EAAE,WAAW,CAAA;CAAE,KACjD,OAAO,CAAC;IAAE,KAAK,EAAE,eAAe,EAAE,CAAC;IAAC,OAAO,EAAE,MAAM,EAAE,CAAA;CAAE,CAqBzD,CAAA;AAqQD,eAAO,MAAM,gBAAgB,WACnB,UAAU,WACT,gBAAgB,QACnB,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,WAChB,eAAe,KACvB,OAAO,CAAC,aAAa,CAwJvB,CAAA;AACD,eAAO,MAAM,cAAc,gBACZ,MAAM,YACV;IAAE,MAAM,CAAC,EAAE,WAAW,CAAA;CAAE,KAChC,OAAO,CAAC,eAAe,EAAE,CAiB3B,CAAA;AACD,eAAO,MAAM,aAAa,gBACX,MAAM,YACV;IAAE,MAAM,CAAC,EAAE,WAAW,CAAA;CAAE,KAChC,OAAO,CAAC,mBAAmB,EAAE,CAuB/B,CAAA"}
1
+ {"version":3,"file":"recording-archive.d.ts","sourceRoot":"","sources":["../src/recording-archive.ts"],"names":[],"mappings":"AAWA,OAAO,KAAK,EAAE,cAAc,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAA;AACvE,OAAO,EAAmB,KAAK,UAAU,EAAE,MAAM,kBAAkB,CAAA;AAEnE,MAAM,WAAW,eAAe;IAC9B,WAAW,EAAE,MAAM,CAAA;IACnB,OAAO,EAAE,MAAM,CAAA;IACf,MAAM,CAAC,EAAE,OAAO,CAAA;IAChB,OAAO,CAAC,EAAE,MAAM,EAAE,CAAA;IAClB,MAAM,CAAC,EAAE,WAAW,CAAA;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAA;CAClB;AACD,eAAO,MAAM,uBAAuB,YAAa,eAAe,KAAG,MA0BlE,CAAA;AACD,MAAM,WAAW,YAAY;IAC3B,EAAE,EAAE,MAAM,CAAA;IACV,IAAI,EAAE,MAAM,CAAA;IACZ,IAAI,EAAE,MAAM,CAAA;IACZ,MAAM,EAAE,MAAM,CAAA;IACd,UAAU,EAAE,MAAM,GAAG,IAAI,CAAA;IACzB,IAAI,EAAE,MAAM,CAAA;IACZ,MAAM,EAAE,MAAM,GAAG,IAAI,CAAA;IACrB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAA;IACxB,OAAO,EAAE,MAAM,GAAG,IAAI,CAAA;CACvB;AACD,MAAM,WAAW,eAAe;IAC9B,OAAO,EAAE,CAAC,CAAA;IACV,OAAO,EAAE,IAAI,CAAC,gBAAgB,EAAE,QAAQ,CAAC,CAAA;IACzC,KAAK,EAAE,YAAY,EAAE,CAAA;CACtB;AACD,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,MAAM,CAAA;IACZ,YAAY,EAAE,MAAM,CAAA;IACpB,UAAU,EAAE,YAAY,EAAE,CAAA;IAC1B,OAAO,EAAE,YAAY,EAAE,CAAA;IACvB,WAAW,EAAE,cAAc,EAAE,CAAA;CAC9B;AACD,MAAM,WAAW,mBAAmB;IAClC,YAAY,EAAE,MAAM,CAAA;IACpB,EAAE,EAAE,MAAM,CAAA;IACV,IAAI,EAAE,MAAM,CAAA;IACZ,KAAK,EAAE,OAAO,CAAA;CACf;AACD,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,MAAM,CAAA;IACZ,MAAM,EAAE,QAAQ,GAAG,OAAO,GAAG,SAAS,GAAG,cAAc,CAAA;IACvD,GAAG,EAAE,MAAM,GAAG,IAAI,CAAA;IAClB,IAAI,EAAE,MAAM,GAAG,IAAI,CAAA;CACpB;AA4CD,eAAO,MAAM,mBAAmB,gBACjB,MAAM,YACV;IAAE,MAAM,CAAC,EAAE,WAAW,CAAA;CAAE,KAChC,OAAO,CAAC,eAAe,EAAE,CA0B3B,CAAA;AACD,eAAO,MAAM,mBAAmB,gBACjB,MAAM,YACV;IAAE,KAAK,CAAC,EAAE,OAAO,CAAC;IAAC,MAAM,CAAC,EAAE,WAAW,CAAA;CAAE,KACjD,OAAO,CAAC;IAAE,KAAK,EAAE,eAAe,EAAE,CAAC;IAAC,OAAO,EAAE,MAAM,EAAE,CAAA;CAAE,CAqBzD,CAAA;AAySD,eAAO,MAAM,gBAAgB,WACnB,UAAU,WACT,gBAAgB,QACnB,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,WAChB,eAAe,KACvB,OAAO,CAAC,aAAa,CA2KvB,CAAA;AACD,eAAO,MAAM,cAAc,gBACZ,MAAM,YACV;IAAE,MAAM,CAAC,EAAE,WAAW,CAAA;CAAE,KAChC,OAAO,CAAC,eAAe,EAAE,CAiB3B,CAAA;AACD,eAAO,MAAM,aAAa,gBACX,MAAM,YACV;IAAE,MAAM,CAAC,EAAE,WAAW,CAAA;CAAE,KAChC,OAAO,CAAC,mBAAmB,EAAE,CAuB/B,CAAA"}
@@ -2,10 +2,11 @@ import { createHash, randomUUID } from "node:crypto";
2
2
  import { link, lstat, mkdir, open, readdir, realpath, rename, rmdir, unlink } from "node:fs/promises";
3
3
  import { hostname } from "node:os";
4
4
  import { join } from "node:path";
5
+ import { CliError, isCliError } from "@wirecat/cli-base";
5
6
  import { retryableStatus, statusToCode } from "@wirecat/cli-base/http";
6
- import { RecordingTransferError, transferRecording } from "@wirecat/cli-core/meetings";
7
- import { checkCancelled, string, ZoomError } from "./errors.js";
8
- import { openOrdinaryFile, syncDirectory } from "./ordinary-file.js";
7
+ import { openOrdinaryFile, syncDirectory } from "@wirecat/cli-core/files";
8
+ import { transferRecording } from "@wirecat/cli-core/meetings";
9
+ import { checkCancelled, string } from "./errors.js";
9
10
  import { RecordingPartialStore } from "./recording-partial-store.js";
10
11
  import { readRecordingPromotion, writeRecordingPromotion } from "./recording-promotion-store.js";
11
12
  import { operationSignal } from "./remote-http.js";
@@ -15,22 +16,19 @@ export const validateDownloadOptions = (options) => {
15
16
  !options.destination.trim() ||
16
17
  !Number.isSafeInteger(maxBytes) ||
17
18
  maxBytes <= 0)
18
- throw new ZoomError("validation_error", "archive destination and positive download limit are required");
19
+ throw new CliError("validation_error", "archive destination and positive download limit are required");
19
20
  if (options.resume !== undefined && typeof options.resume !== "boolean")
20
- throw new ZoomError("validation_error", "recording resume must be a boolean");
21
- if (options.account !== undefined &&
22
- (typeof options.account !== "string" ||
23
- !options.account.trim() ||
24
- /[\0\r\n]/.test(options.account) ||
25
- options.account.length > 1000))
26
- throw new ZoomError("validation_error", "recording account scope must be a nonempty identifier");
27
- if (options.resume && !options.account)
28
- throw new ZoomError("validation_error", "resuming recordings requires an explicit account scope");
21
+ throw new CliError("validation_error", "recording resume must be a boolean");
22
+ if (typeof options.account !== "string" ||
23
+ !options.account.trim() ||
24
+ /[\0\r\n]/.test(options.account) ||
25
+ options.account.length > 1000)
26
+ throw new CliError("validation_error", "recording account scope must be a nonempty identifier");
29
27
  if (options.fileIds !== undefined &&
30
28
  (!Array.isArray(options.fileIds) ||
31
29
  options.fileIds.length === 0 ||
32
30
  options.fileIds.some((id) => typeof id !== "string" || !id.trim())))
33
- throw new ZoomError("validation_error", "recording selection must contain nonempty file ids");
31
+ throw new CliError("validation_error", "recording selection must contain nonempty file ids");
34
32
  return maxBytes;
35
33
  };
36
34
  const locksFolder = ".zoom-archive-locks";
@@ -81,13 +79,13 @@ export const inspectArchiveLocks = async (destination, options = {}) => {
81
79
  let names;
82
80
  try {
83
81
  if ((await lstat(folder)).isSymbolicLink())
84
- throw new ZoomError("validation_error", "archive lock directory must not be a symlink");
82
+ throw new CliError("validation_error", "archive lock directory must not be a symlink");
85
83
  names = await readdir(folder);
86
84
  }
87
85
  catch (error) {
88
86
  if (missing(error))
89
87
  return [];
90
- throw new ZoomError("configuration_error", "archive lock directory could not be read");
88
+ throw new CliError("configuration_error", "archive lock directory could not be read");
91
89
  }
92
90
  const result = [];
93
91
  for (const name of names.sort()) {
@@ -123,7 +121,7 @@ export const recoverArchiveLocks = async (destination, options = {}) => {
123
121
  }
124
122
  catch (error) {
125
123
  if (!missing(error))
126
- throw new ZoomError("configuration_error", "stale archive lock could not be removed");
124
+ throw new CliError("configuration_error", "stale archive lock could not be removed");
127
125
  }
128
126
  }
129
127
  return { locks, removed };
@@ -132,7 +130,9 @@ const acquireArchiveLock = async (root) => {
132
130
  const folder = join(root, locksFolder);
133
131
  await mkdir(folder, { recursive: true });
134
132
  if ((await lstat(folder)).isSymbolicLink())
135
- throw new ZoomError("validation_error", "archive lock directory must not be a symlink");
133
+ throw new CliError("validation_error", "archive lock directory must not be a symlink");
134
+ // A lock whose process on this machine is gone is taken over; foreign and unreadable ones still need `locks recover`.
135
+ await recoverArchiveLocks(root, { apply: true });
136
136
  const owner = { version: 1, pid: process.pid, host: hostname(), nonce: randomUUID() };
137
137
  const name = `${owner.pid}-${owner.nonce}.json`;
138
138
  const path = join(folder, name);
@@ -143,10 +143,10 @@ const acquireArchiveLock = async (root) => {
143
143
  await file.close();
144
144
  const locks = await inspectArchiveLocks(root);
145
145
  if (locks.some((lock) => lock.name !== name))
146
- throw new ZoomError("validation_error", "archive is locked; inspect or recover stale local locks");
146
+ throw new CliError("validation_error", "archive is locked; inspect or recover stale local locks");
147
147
  try {
148
148
  await lstat(join(root, ".zoom-archive.lock"));
149
- throw new ZoomError("validation_error", "archive has an unrecognized legacy lock");
149
+ throw new CliError("validation_error", "archive has an unrecognized legacy lock");
150
150
  }
151
151
  catch (error) {
152
152
  if (!missing(error))
@@ -176,7 +176,7 @@ const fingerprint = async (path, signal, maxBytes) => {
176
176
  checkCancelled(signal);
177
177
  size += chunk.length;
178
178
  if (maxBytes !== undefined && size > maxBytes)
179
- throw new ZoomError("validation_error", "recording exceeds its verified recovery size");
179
+ throw new CliError("validation_error", "recording exceeds its verified recovery size");
180
180
  hash.update(chunk);
181
181
  }
182
182
  return { size, sha256: hash.digest("hex") };
@@ -185,6 +185,40 @@ const fingerprint = async (path, signal, maxBytes) => {
185
185
  await file.close();
186
186
  }
187
187
  };
188
+ const verifiedName = ".zoom-verified.json";
189
+ const readVerified = async (root) => {
190
+ try {
191
+ const file = await localFile(join(root, verifiedName));
192
+ try {
193
+ const value = JSON.parse(await file.readFile("utf8"));
194
+ if (value.version === 1 && typeof value.files === "object" && value.files !== null)
195
+ return value;
196
+ }
197
+ finally {
198
+ await file.close();
199
+ }
200
+ }
201
+ catch { }
202
+ return { version: 1, files: {} };
203
+ };
204
+ const writeVerified = async (root, verified) => {
205
+ const temp = join(root, `.zoom-verified-${randomUUID()}.tmp`);
206
+ try {
207
+ await open(temp, "wx", 0o600).then(async (file) => {
208
+ try {
209
+ await file.writeFile(JSON.stringify(verified));
210
+ }
211
+ finally {
212
+ await file.close();
213
+ }
214
+ });
215
+ await rename(temp, join(root, verifiedName));
216
+ }
217
+ catch {
218
+ // Only a cache: losing it costs one rehash on the next run.
219
+ await unlink(temp).catch(() => undefined);
220
+ }
221
+ };
188
222
  const onlyKeys = (value, keys) => Object.keys(value).every((key) => keys.includes(key));
189
223
  const nullableText = (value) => value === null || typeof value === "string";
190
224
  const nullableTime = (value) => value === null ||
@@ -259,7 +293,7 @@ const readManifest = async (path, signal) => {
259
293
  }
260
294
  catch {
261
295
  checkCancelled(signal);
262
- throw new ZoomError("validation_error", "archive manifest is invalid");
296
+ throw new CliError("validation_error", "archive manifest is invalid");
263
297
  }
264
298
  finally {
265
299
  await file.close();
@@ -289,17 +323,17 @@ const targetUrl = (input, base) => {
289
323
  target = new URL(input, base);
290
324
  }
291
325
  catch {
292
- throw new ZoomError("invalid_response", "Zoom returned an unexpected recording download host");
326
+ throw new CliError("invalid_response", "Zoom returned an unexpected recording download host");
293
327
  }
294
328
  if (target.protocol !== "https:" ||
295
329
  target.username ||
296
330
  target.password ||
297
331
  (target.port && target.port !== "443") ||
298
332
  !/(^|\.)zoom\.(us|com)$/.test(target.hostname))
299
- throw new ZoomError("invalid_response", "Zoom returned an unexpected recording download host");
333
+ throw new CliError("invalid_response", "Zoom returned an unexpected recording download host");
300
334
  return target;
301
335
  };
302
- class DownloadFailure extends ZoomError {
336
+ class DownloadFailure extends CliError {
303
337
  response;
304
338
  constructor(response) {
305
339
  super(statusToCode(response.status), `Recording download failed (HTTP ${response.status})`);
@@ -325,14 +359,14 @@ const transferSource = (remote, url, accessToken, format, signal) => ({
325
359
  }
326
360
  catch {
327
361
  checkCancelled(signal);
328
- throw new ZoomError("network_error", "Recording download could not be completed");
362
+ throw new CliError("network_error", "Recording download could not be completed");
329
363
  }
330
364
  if (![301, 302, 303, 307, 308].includes(response.status))
331
365
  break;
332
366
  const location = response.headers.get("location");
333
367
  await response.body?.cancel();
334
368
  if (!location || redirects >= 5)
335
- throw new ZoomError("invalid_response", "Zoom returned invalid recording redirects");
369
+ throw new CliError("invalid_response", "Zoom returned invalid recording redirects");
336
370
  target = targetUrl(location, target);
337
371
  }
338
372
  if (![200, 206, 416].includes(response.status)) {
@@ -346,7 +380,7 @@ const transferSource = (remote, url, accessToken, format, signal) => ({
346
380
  /\bapplication\/json\b/i.test(response.headers.get("content-type") ?? "")) ||
347
381
  ![null, "identity"].includes(response.headers.get("content-encoding")))) {
348
382
  await response.body?.cancel();
349
- throw new ZoomError("invalid_response", "Zoom returned an unexpected recording body");
383
+ throw new CliError("invalid_response", "Zoom returned an unexpected recording body");
350
384
  }
351
385
  const reader = response.body?.getReader();
352
386
  const abortReader = () => {
@@ -370,7 +404,7 @@ const transferSource = (remote, url, accessToken, format, signal) => ({
370
404
  }
371
405
  catch {
372
406
  checkCancelled(signal);
373
- throw new ZoomError("network_error", "Recording download could not be completed");
407
+ throw new CliError("network_error", "Recording download could not be completed");
374
408
  }
375
409
  checkCancelled(signal);
376
410
  if (chunk.done)
@@ -392,7 +426,7 @@ export const archiveRecording = async (remote, meeting, urls, options) => {
392
426
  checkCancelled(signal);
393
427
  const maxBytes = validateDownloadOptions(options);
394
428
  if (options.fileIds?.some((id) => !meeting.assets.some((asset) => asset.id === id)))
395
- throw new ZoomError("validation_error", "requested recording file was not found");
429
+ throw new CliError("validation_error", "requested recording file was not found");
396
430
  let lock;
397
431
  let root = "";
398
432
  try {
@@ -407,6 +441,13 @@ export const archiveRecording = async (remote, meeting, urls, options) => {
407
441
  files: [],
408
442
  };
409
443
  const report = { uuid: meeting.uuid, manifestPath, downloaded: [], skipped: [], unavailable: [] };
444
+ const verified = await readVerified(root);
445
+ let verifiedChanged = false;
446
+ const remember = async (path, sha256) => {
447
+ const stat = await lstat(join(root, path));
448
+ verified.files[path] = { size: stat.size, mtimeMs: stat.mtimeMs, sha256 };
449
+ verifiedChanged = true;
450
+ };
410
451
  for (const asset of meeting.assets) {
411
452
  checkCancelled(signal);
412
453
  if (options.fileIds && (asset.id === null || !options.fileIds.includes(asset.id)))
@@ -418,24 +459,35 @@ export const archiveRecording = async (remote, meeting, urls, options) => {
418
459
  const path = filename(meeting.uuid, asset);
419
460
  const existing = manifest.files.find((file) => file.id === asset.id);
420
461
  if (existing) {
421
- const local = await fingerprint(join(root, existing.path), signal);
462
+ const seen = verified.files[existing.path];
463
+ const stat = await lstat(join(root, existing.path)).catch(() => undefined);
464
+ const unchanged = seen !== undefined &&
465
+ stat?.isFile() === true &&
466
+ seen.size === stat.size &&
467
+ seen.mtimeMs === stat.mtimeMs &&
468
+ seen.sha256 === existing.sha256;
469
+ const local = unchanged
470
+ ? { size: seen.size, sha256: seen.sha256 }
471
+ : await fingerprint(join(root, existing.path), signal);
422
472
  if (existing.path !== path ||
423
473
  existing.remoteSize !== asset.size ||
424
474
  existing.startedAt !== asset.startedAt ||
425
475
  existing.endedAt !== asset.endedAt ||
426
476
  existing.size !== local.size ||
427
477
  existing.sha256 !== local.sha256)
428
- throw new ZoomError("validation_error", "existing recording has changed; choose a new archive destination");
478
+ throw new CliError("validation_error", "existing recording has changed; choose a new archive destination");
479
+ if (!unchanged)
480
+ await remember(existing.path, existing.sha256);
429
481
  report.skipped.push(existing);
430
482
  continue;
431
483
  }
432
484
  const locator = {
433
485
  provider: "zoom",
434
- account: options.account ?? "default",
486
+ account: options.account,
435
487
  occurrenceId: meeting.uuid,
436
488
  assetId: asset.id,
437
489
  };
438
- const persistent = options.resume ?? Boolean(options.account);
490
+ const persistent = options.resume ?? true;
439
491
  const storage = new RecordingPartialStore(root, locator, signal, persistent, maxBytes);
440
492
  const promotionMeeting = {
441
493
  id: meeting.id,
@@ -464,17 +516,17 @@ export const archiveRecording = async (remote, meeting, urls, options) => {
464
516
  if (present) {
465
517
  const intent = persistent ? await readRecordingPromotion(root, locator, promotionMeeting, metadata) : null;
466
518
  if (!intent || intent.file.size > maxBytes)
467
- throw new ZoomError("validation_error", "recording path already exists without a verified manifest or scoped recovery record");
519
+ throw new CliError("validation_error", "recording path already exists without a verified manifest or scoped recovery record");
468
520
  const completed = await storage.load(locator);
469
521
  if (!completed ||
470
522
  completed.offset !== intent.file.size ||
471
523
  completed.sha256 !== intent.file.sha256 ||
472
524
  completed.validator !== intent.validator ||
473
525
  (completed.total !== null && completed.total !== intent.file.size))
474
- throw new ZoomError("validation_error", "recording recovery checkpoint does not prove this completed asset");
526
+ throw new CliError("validation_error", "recording recovery checkpoint does not prove this completed asset");
475
527
  const local = await fingerprint(join(root, path), signal, intent.file.size);
476
528
  if (local.size !== intent.file.size || local.sha256 !== intent.file.sha256)
477
- throw new ZoomError("validation_error", "recording recovery final checksum does not match");
529
+ throw new CliError("validation_error", "recording recovery final checksum does not match");
478
530
  manifest.files.push(intent.file);
479
531
  await writeManifest(root, manifest);
480
532
  await unlink(storage.path);
@@ -489,7 +541,7 @@ export const archiveRecording = async (remote, meeting, urls, options) => {
489
541
  const transferred = await transferRecording(transferSource(remote, urls.get(asset.id) ?? "", tokens.accessToken, asset.format, signal), storage, { locator, maxBytes, expectedSize: asset.size, signal });
490
542
  entry = { ...metadata, size: transferred.size, sha256: transferred.sha256 };
491
543
  if (asset.size !== null && entry.size !== asset.size)
492
- throw new ZoomError("invalid_response", "recording download size does not match Zoom metadata");
544
+ throw new CliError("invalid_response", "recording download size does not match Zoom metadata");
493
545
  checkCancelled(signal);
494
546
  if (persistent && storage.completed)
495
547
  await writeRecordingPromotion(root, locator, promotionMeeting, entry, storage.completed);
@@ -503,7 +555,7 @@ export const archiveRecording = async (remote, meeting, urls, options) => {
503
555
  checkCancelled(signal);
504
556
  const retryable = error instanceof DownloadFailure
505
557
  ? retryableStatus(error.response.status)
506
- : error instanceof ZoomError && error.code === "network_error";
558
+ : isCliError(error) && error.code === "network_error";
507
559
  if (attempt >= 2 ||
508
560
  !retryable ||
509
561
  !(await remote.pause(error instanceof DownloadFailure ? error.response : null, attempt, signal)))
@@ -511,23 +563,24 @@ export const archiveRecording = async (remote, meeting, urls, options) => {
511
563
  }
512
564
  }
513
565
  if (!entry)
514
- throw new ZoomError("invalid_response", "recording transfer did not produce a verified receipt");
566
+ throw new CliError("invalid_response", "recording transfer did not produce a verified receipt");
515
567
  manifest.files.push(entry);
516
568
  await writeManifest(root, manifest);
517
569
  await unlink(temp);
570
+ await remember(entry.path, entry.sha256);
518
571
  report.downloaded.push(entry);
519
572
  }
520
573
  if (!previous)
521
574
  await writeManifest(root, manifest);
575
+ if (verifiedChanged)
576
+ await writeVerified(root, verified);
522
577
  return report;
523
578
  }
524
579
  catch (error) {
525
580
  checkCancelled(signal);
526
- if (error instanceof ZoomError)
581
+ if (isCliError(error))
527
582
  throw error;
528
- if (error instanceof RecordingTransferError)
529
- throw new ZoomError(error.code, error.message);
530
- throw new ZoomError("provider_error", "archive operation could not be completed");
583
+ throw new CliError("provider_error", "archive operation could not be completed");
531
584
  }
532
585
  finally {
533
586
  if (root && !lock)
@@ -554,9 +607,9 @@ export const inspectArchive = async (destination, options = {}) => {
554
607
  }
555
608
  catch (error) {
556
609
  checkCancelled(options.signal);
557
- if (error instanceof ZoomError)
610
+ if (isCliError(error))
558
611
  throw error;
559
- throw new ZoomError("configuration_error", "archive destination could not be read");
612
+ throw new CliError("configuration_error", "archive destination could not be read");
560
613
  }
561
614
  };
562
615
  export const verifyArchive = async (destination, options = {}) => {