@vellumai/cli 0.10.11-dev.202607242127.a6bf2b2 → 0.10.11-staging.1

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 (766) hide show
  1. package/knip.json +0 -1
  2. package/node_modules/@vellumai/local-mode/src/lockfile-contract.test.ts +0 -25
  3. package/node_modules/@vellumai/local-mode/src/lockfile-contract.ts +0 -7
  4. package/node_modules/@vellumai/local-mode/src/lockfile.test.ts +0 -24
  5. package/package.json +2 -6
  6. package/src/__tests__/assistant-config.test.ts +2 -118
  7. package/src/__tests__/flags.test.ts +8 -78
  8. package/src/__tests__/input-history.test.ts +6 -1
  9. package/src/__tests__/login-loopback.test.ts +2 -6
  10. package/src/__tests__/nginx-ingress.test.ts +0 -7
  11. package/src/__tests__/pair.test.ts +1 -860
  12. package/src/__tests__/platform-client.test.ts +2 -10
  13. package/src/__tests__/statefulset.test.ts +1 -3
  14. package/src/__tests__/tunnel.test.ts +0 -54
  15. package/src/__tests__/wake.test.ts +16 -210
  16. package/src/commands/backup.ts +16 -22
  17. package/src/commands/client.ts +18 -218
  18. package/src/commands/exec.ts +1 -5
  19. package/src/commands/flags.ts +1 -4
  20. package/src/commands/nginx-ingress.ts +71 -57
  21. package/src/commands/pair.ts +129 -297
  22. package/src/commands/rollback.ts +1 -2
  23. package/src/commands/ssh.ts +4 -1
  24. package/src/commands/tunnel.ts +3 -35
  25. package/src/commands/wake.ts +0 -118
  26. package/src/lib/__tests__/step-runner.test.ts +1 -6
  27. package/src/lib/__tests__/terminal-session.test.ts +14 -5
  28. package/src/lib/assistant-config.ts +2 -8
  29. package/src/lib/cloudflare-tunnel.ts +55 -10
  30. package/src/lib/device-id.ts +3 -1
  31. package/src/lib/flag-args.test.ts +6 -1
  32. package/src/lib/guardian-token.ts +18 -18
  33. package/src/lib/hatch-local.ts +86 -98
  34. package/src/lib/local.ts +3 -21
  35. package/src/lib/loopback-fetch.ts +1 -1
  36. package/src/lib/nginx-ingress.ts +22 -98
  37. package/src/lib/ngrok.ts +65 -12
  38. package/src/lib/retire-apple-container.ts +5 -7
  39. package/src/lib/upgrade-preflight.ts +7 -10
  40. package/node_modules/@vellumai/service-contracts/node_modules/zod/LICENSE +0 -21
  41. package/node_modules/@vellumai/service-contracts/node_modules/zod/README.md +0 -208
  42. package/node_modules/@vellumai/service-contracts/node_modules/zod/index.cjs +0 -33
  43. package/node_modules/@vellumai/service-contracts/node_modules/zod/index.d.cts +0 -4
  44. package/node_modules/@vellumai/service-contracts/node_modules/zod/index.d.ts +0 -4
  45. package/node_modules/@vellumai/service-contracts/node_modules/zod/index.js +0 -4
  46. package/node_modules/@vellumai/service-contracts/node_modules/zod/locales/index.cjs +0 -17
  47. package/node_modules/@vellumai/service-contracts/node_modules/zod/locales/index.d.cts +0 -1
  48. package/node_modules/@vellumai/service-contracts/node_modules/zod/locales/index.d.ts +0 -1
  49. package/node_modules/@vellumai/service-contracts/node_modules/zod/locales/index.js +0 -1
  50. package/node_modules/@vellumai/service-contracts/node_modules/zod/locales/package.json +0 -6
  51. package/node_modules/@vellumai/service-contracts/node_modules/zod/mini/index.cjs +0 -32
  52. package/node_modules/@vellumai/service-contracts/node_modules/zod/mini/index.d.cts +0 -3
  53. package/node_modules/@vellumai/service-contracts/node_modules/zod/mini/index.d.ts +0 -3
  54. package/node_modules/@vellumai/service-contracts/node_modules/zod/mini/index.js +0 -3
  55. package/node_modules/@vellumai/service-contracts/node_modules/zod/mini/package.json +0 -6
  56. package/node_modules/@vellumai/service-contracts/node_modules/zod/package.json +0 -135
  57. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/index.ts +0 -4
  58. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/locales/index.ts +0 -1
  59. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/mini/index.ts +0 -3
  60. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v3/ZodError.ts +0 -330
  61. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v3/benchmarks/datetime.ts +0 -58
  62. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v3/benchmarks/discriminatedUnion.ts +0 -80
  63. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v3/benchmarks/index.ts +0 -59
  64. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v3/benchmarks/ipv4.ts +0 -57
  65. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v3/benchmarks/object.ts +0 -69
  66. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v3/benchmarks/primitives.ts +0 -162
  67. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v3/benchmarks/realworld.ts +0 -63
  68. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v3/benchmarks/string.ts +0 -55
  69. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v3/benchmarks/union.ts +0 -80
  70. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v3/errors.ts +0 -13
  71. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v3/external.ts +0 -6
  72. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v3/helpers/enumUtil.ts +0 -17
  73. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v3/helpers/errorUtil.ts +0 -8
  74. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v3/helpers/parseUtil.ts +0 -176
  75. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v3/helpers/partialUtil.ts +0 -34
  76. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v3/helpers/typeAliases.ts +0 -2
  77. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v3/helpers/util.ts +0 -224
  78. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v3/index.ts +0 -4
  79. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v3/locales/en.ts +0 -124
  80. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v3/standard-schema.ts +0 -113
  81. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v3/tests/Mocker.ts +0 -54
  82. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v3/tests/all-errors.test.ts +0 -157
  83. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v3/tests/anyunknown.test.ts +0 -28
  84. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v3/tests/array.test.ts +0 -71
  85. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v3/tests/async-parsing.test.ts +0 -388
  86. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v3/tests/async-refinements.test.ts +0 -46
  87. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v3/tests/base.test.ts +0 -29
  88. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v3/tests/bigint.test.ts +0 -55
  89. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v3/tests/branded.test.ts +0 -53
  90. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v3/tests/catch.test.ts +0 -220
  91. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v3/tests/coerce.test.ts +0 -133
  92. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v3/tests/complex.test.ts +0 -70
  93. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v3/tests/custom.test.ts +0 -31
  94. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v3/tests/date.test.ts +0 -32
  95. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v3/tests/deepmasking.test.ts +0 -186
  96. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v3/tests/default.test.ts +0 -112
  97. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v3/tests/description.test.ts +0 -33
  98. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v3/tests/discriminated-unions.test.ts +0 -315
  99. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v3/tests/enum.test.ts +0 -80
  100. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v3/tests/error.test.ts +0 -551
  101. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v3/tests/firstparty.test.ts +0 -87
  102. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v3/tests/firstpartyschematypes.test.ts +0 -21
  103. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v3/tests/function.test.ts +0 -261
  104. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v3/tests/generics.test.ts +0 -48
  105. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v3/tests/instanceof.test.ts +0 -37
  106. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v3/tests/intersection.test.ts +0 -110
  107. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v3/tests/language-server.source.ts +0 -76
  108. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v3/tests/language-server.test.ts +0 -207
  109. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v3/tests/literal.test.ts +0 -36
  110. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v3/tests/map.test.ts +0 -110
  111. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v3/tests/masking.test.ts +0 -4
  112. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v3/tests/mocker.test.ts +0 -19
  113. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v3/tests/nan.test.ts +0 -24
  114. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v3/tests/nativeEnum.test.ts +0 -87
  115. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v3/tests/nullable.test.ts +0 -42
  116. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v3/tests/number.test.ts +0 -176
  117. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v3/tests/object-augmentation.test.ts +0 -29
  118. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v3/tests/object-in-es5-env.test.ts +0 -29
  119. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v3/tests/object.test.ts +0 -434
  120. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v3/tests/optional.test.ts +0 -42
  121. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v3/tests/parseUtil.test.ts +0 -23
  122. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v3/tests/parser.test.ts +0 -41
  123. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v3/tests/partials.test.ts +0 -243
  124. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v3/tests/pickomit.test.ts +0 -111
  125. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v3/tests/pipeline.test.ts +0 -29
  126. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v3/tests/preprocess.test.ts +0 -186
  127. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v3/tests/primitive.test.ts +0 -440
  128. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v3/tests/promise.test.ts +0 -90
  129. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v3/tests/readonly.test.ts +0 -194
  130. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v3/tests/record.test.ts +0 -171
  131. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v3/tests/recursive.test.ts +0 -197
  132. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v3/tests/refine.test.ts +0 -313
  133. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v3/tests/safeparse.test.ts +0 -27
  134. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v3/tests/set.test.ts +0 -142
  135. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v3/tests/standard-schema.test.ts +0 -83
  136. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v3/tests/string.test.ts +0 -916
  137. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v3/tests/transformer.test.ts +0 -233
  138. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v3/tests/tuple.test.ts +0 -90
  139. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v3/tests/unions.test.ts +0 -57
  140. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v3/tests/validations.test.ts +0 -133
  141. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v3/tests/void.test.ts +0 -15
  142. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v3/types.ts +0 -5138
  143. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/classic/checks.ts +0 -32
  144. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/classic/coerce.ts +0 -27
  145. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/classic/compat.ts +0 -70
  146. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/classic/errors.ts +0 -82
  147. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/classic/external.ts +0 -51
  148. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/classic/from-json-schema.ts +0 -643
  149. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/classic/index.ts +0 -5
  150. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/classic/iso.ts +0 -90
  151. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/classic/parse.ts +0 -82
  152. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/classic/schemas.ts +0 -2409
  153. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/classic/tests/anyunknown.test.ts +0 -26
  154. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/classic/tests/apply.test.ts +0 -59
  155. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/classic/tests/array.test.ts +0 -264
  156. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/classic/tests/assignability.test.ts +0 -210
  157. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/classic/tests/async-parsing.test.ts +0 -381
  158. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/classic/tests/async-refinements.test.ts +0 -68
  159. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/classic/tests/base.test.ts +0 -7
  160. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/classic/tests/bigint.test.ts +0 -54
  161. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/classic/tests/brand.test.ts +0 -106
  162. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/classic/tests/catch.test.ts +0 -276
  163. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/classic/tests/coalesce.test.ts +0 -20
  164. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/classic/tests/codec-examples.test.ts +0 -573
  165. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/classic/tests/codec.test.ts +0 -562
  166. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/classic/tests/coerce.test.ts +0 -160
  167. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/classic/tests/continuability.test.ts +0 -374
  168. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/classic/tests/custom.test.ts +0 -40
  169. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/classic/tests/date.test.ts +0 -62
  170. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/classic/tests/datetime.test.ts +0 -302
  171. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/classic/tests/default.test.ts +0 -365
  172. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/classic/tests/describe-meta-checks.test.ts +0 -27
  173. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/classic/tests/description.test.ts +0 -32
  174. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/classic/tests/discriminated-unions.test.ts +0 -661
  175. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/classic/tests/enum.test.ts +0 -285
  176. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/classic/tests/error-utils.test.ts +0 -595
  177. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/classic/tests/error.test.ts +0 -711
  178. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/classic/tests/file.test.ts +0 -96
  179. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/classic/tests/firstparty.test.ts +0 -179
  180. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/classic/tests/fix-json-issue.test.ts +0 -26
  181. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/classic/tests/from-json-schema.test.ts +0 -734
  182. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/classic/tests/function.test.ts +0 -360
  183. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/classic/tests/generics.test.ts +0 -72
  184. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/classic/tests/hash.test.ts +0 -68
  185. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/classic/tests/index.test.ts +0 -939
  186. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/classic/tests/instanceof.test.ts +0 -60
  187. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/classic/tests/intersection.test.ts +0 -198
  188. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/classic/tests/json.test.ts +0 -109
  189. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/classic/tests/lazy.test.ts +0 -227
  190. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/classic/tests/literal.test.ts +0 -117
  191. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/classic/tests/map.test.ts +0 -330
  192. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/classic/tests/nan.test.ts +0 -21
  193. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/classic/tests/nested-refine.test.ts +0 -168
  194. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/classic/tests/nonoptional.test.ts +0 -101
  195. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/classic/tests/nullable.test.ts +0 -22
  196. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/classic/tests/number.test.ts +0 -270
  197. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/classic/tests/object.test.ts +0 -640
  198. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/classic/tests/optional.test.ts +0 -223
  199. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/classic/tests/partial.test.ts +0 -427
  200. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/classic/tests/pickomit.test.ts +0 -211
  201. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/classic/tests/pipe.test.ts +0 -101
  202. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/classic/tests/prefault.test.ts +0 -74
  203. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/classic/tests/preprocess.test.ts +0 -282
  204. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/classic/tests/primitive.test.ts +0 -175
  205. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/classic/tests/promise.test.ts +0 -81
  206. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/classic/tests/prototypes.test.ts +0 -23
  207. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/classic/tests/readonly.test.ts +0 -252
  208. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/classic/tests/record.test.ts +0 -632
  209. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/classic/tests/recursive-types.test.ts +0 -582
  210. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/classic/tests/refine.test.ts +0 -570
  211. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/classic/tests/registries.test.ts +0 -243
  212. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/classic/tests/set.test.ts +0 -181
  213. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/classic/tests/standard-schema.test.ts +0 -134
  214. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/classic/tests/string-formats.test.ts +0 -125
  215. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/classic/tests/string.test.ts +0 -1175
  216. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/classic/tests/stringbool.test.ts +0 -106
  217. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/classic/tests/template-literal.test.ts +0 -771
  218. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/classic/tests/to-json-schema-methods.test.ts +0 -438
  219. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/classic/tests/to-json-schema.test.ts +0 -2990
  220. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/classic/tests/transform.test.ts +0 -361
  221. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/classic/tests/tuple.test.ts +0 -183
  222. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/classic/tests/union.test.ts +0 -219
  223. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/classic/tests/url.test.ts +0 -13
  224. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/classic/tests/validations.test.ts +0 -283
  225. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/classic/tests/void.test.ts +0 -12
  226. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/core/api.ts +0 -1798
  227. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/core/checks.ts +0 -1293
  228. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/core/config.ts +0 -15
  229. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/core/core.ts +0 -138
  230. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/core/doc.ts +0 -44
  231. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/core/errors.ts +0 -448
  232. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/core/index.ts +0 -16
  233. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/core/json-schema-generator.ts +0 -126
  234. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/core/json-schema-processors.ts +0 -667
  235. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/core/json-schema.ts +0 -147
  236. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/core/parse.ts +0 -195
  237. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/core/regexes.ts +0 -183
  238. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/core/registries.ts +0 -105
  239. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/core/schemas.ts +0 -4538
  240. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/core/standard-schema.ts +0 -159
  241. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/core/tests/extend.test.ts +0 -59
  242. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/core/tests/index.test.ts +0 -46
  243. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/core/tests/locales/be.test.ts +0 -124
  244. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/core/tests/locales/en.test.ts +0 -22
  245. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/core/tests/locales/es.test.ts +0 -181
  246. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/core/tests/locales/he.test.ts +0 -379
  247. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/core/tests/locales/nl.test.ts +0 -46
  248. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/core/tests/locales/ru.test.ts +0 -128
  249. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/core/tests/locales/tr.test.ts +0 -69
  250. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/core/tests/locales/uz.test.ts +0 -83
  251. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/core/tests/record-constructor.test.ts +0 -67
  252. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/core/tests/recursive-tuples.test.ts +0 -45
  253. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/core/to-json-schema.ts +0 -613
  254. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/core/util.ts +0 -966
  255. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/core/versions.ts +0 -5
  256. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/core/zsf.ts +0 -323
  257. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/index.ts +0 -4
  258. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/locales/ar.ts +0 -115
  259. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/locales/az.ts +0 -111
  260. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/locales/be.ts +0 -176
  261. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/locales/bg.ts +0 -128
  262. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/locales/ca.ts +0 -116
  263. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/locales/cs.ts +0 -118
  264. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/locales/da.ts +0 -123
  265. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/locales/de.ts +0 -116
  266. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/locales/en.ts +0 -119
  267. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/locales/eo.ts +0 -118
  268. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/locales/es.ts +0 -141
  269. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/locales/fa.ts +0 -126
  270. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/locales/fi.ts +0 -121
  271. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/locales/fr-CA.ts +0 -116
  272. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/locales/fr.ts +0 -116
  273. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/locales/he.ts +0 -246
  274. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/locales/hu.ts +0 -117
  275. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/locales/hy.ts +0 -164
  276. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/locales/id.ts +0 -115
  277. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/locales/index.ts +0 -49
  278. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/locales/is.ts +0 -119
  279. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/locales/it.ts +0 -116
  280. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/locales/ja.ts +0 -114
  281. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/locales/ka.ts +0 -123
  282. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/locales/kh.ts +0 -7
  283. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/locales/km.ts +0 -119
  284. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/locales/ko.ts +0 -121
  285. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/locales/lt.ts +0 -239
  286. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/locales/mk.ts +0 -118
  287. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/locales/ms.ts +0 -115
  288. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/locales/nl.ts +0 -121
  289. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/locales/no.ts +0 -116
  290. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/locales/ota.ts +0 -117
  291. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/locales/pl.ts +0 -118
  292. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/locales/ps.ts +0 -126
  293. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/locales/pt.ts +0 -116
  294. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/locales/ru.ts +0 -176
  295. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/locales/sl.ts +0 -118
  296. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/locales/sv.ts +0 -119
  297. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/locales/ta.ts +0 -118
  298. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/locales/th.ts +0 -119
  299. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/locales/tr.ts +0 -111
  300. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/locales/ua.ts +0 -7
  301. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/locales/uk.ts +0 -117
  302. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/locales/ur.ts +0 -119
  303. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/locales/uz.ts +0 -116
  304. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/locales/vi.ts +0 -117
  305. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/locales/yo.ts +0 -124
  306. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/locales/zh-CN.ts +0 -116
  307. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/locales/zh-TW.ts +0 -115
  308. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/mini/checks.ts +0 -32
  309. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/mini/coerce.ts +0 -27
  310. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/mini/external.ts +0 -40
  311. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/mini/index.ts +0 -3
  312. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/mini/iso.ts +0 -66
  313. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/mini/parse.ts +0 -14
  314. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/mini/schemas.ts +0 -1916
  315. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/mini/tests/apply.test.ts +0 -24
  316. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/mini/tests/assignability.test.ts +0 -129
  317. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/mini/tests/brand.test.ts +0 -94
  318. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/mini/tests/checks.test.ts +0 -144
  319. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/mini/tests/codec.test.ts +0 -529
  320. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/mini/tests/computed.test.ts +0 -36
  321. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/mini/tests/error.test.ts +0 -22
  322. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/mini/tests/functions.test.ts +0 -5
  323. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/mini/tests/index.test.ts +0 -963
  324. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/mini/tests/number.test.ts +0 -95
  325. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/mini/tests/object.test.ts +0 -227
  326. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/mini/tests/prototypes.test.ts +0 -43
  327. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/mini/tests/recursive-types.test.ts +0 -275
  328. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/mini/tests/standard-schema.test.ts +0 -50
  329. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4/mini/tests/string.test.ts +0 -347
  330. package/node_modules/@vellumai/service-contracts/node_modules/zod/src/v4-mini/index.ts +0 -3
  331. package/node_modules/@vellumai/service-contracts/node_modules/zod/v3/ZodError.cjs +0 -138
  332. package/node_modules/@vellumai/service-contracts/node_modules/zod/v3/ZodError.d.cts +0 -164
  333. package/node_modules/@vellumai/service-contracts/node_modules/zod/v3/ZodError.d.ts +0 -164
  334. package/node_modules/@vellumai/service-contracts/node_modules/zod/v3/ZodError.js +0 -133
  335. package/node_modules/@vellumai/service-contracts/node_modules/zod/v3/errors.cjs +0 -17
  336. package/node_modules/@vellumai/service-contracts/node_modules/zod/v3/errors.d.cts +0 -5
  337. package/node_modules/@vellumai/service-contracts/node_modules/zod/v3/errors.d.ts +0 -5
  338. package/node_modules/@vellumai/service-contracts/node_modules/zod/v3/errors.js +0 -9
  339. package/node_modules/@vellumai/service-contracts/node_modules/zod/v3/external.cjs +0 -22
  340. package/node_modules/@vellumai/service-contracts/node_modules/zod/v3/external.d.cts +0 -6
  341. package/node_modules/@vellumai/service-contracts/node_modules/zod/v3/external.d.ts +0 -6
  342. package/node_modules/@vellumai/service-contracts/node_modules/zod/v3/external.js +0 -6
  343. package/node_modules/@vellumai/service-contracts/node_modules/zod/v3/helpers/enumUtil.cjs +0 -2
  344. package/node_modules/@vellumai/service-contracts/node_modules/zod/v3/helpers/enumUtil.d.cts +0 -8
  345. package/node_modules/@vellumai/service-contracts/node_modules/zod/v3/helpers/enumUtil.d.ts +0 -8
  346. package/node_modules/@vellumai/service-contracts/node_modules/zod/v3/helpers/enumUtil.js +0 -1
  347. package/node_modules/@vellumai/service-contracts/node_modules/zod/v3/helpers/errorUtil.cjs +0 -9
  348. package/node_modules/@vellumai/service-contracts/node_modules/zod/v3/helpers/errorUtil.d.cts +0 -9
  349. package/node_modules/@vellumai/service-contracts/node_modules/zod/v3/helpers/errorUtil.d.ts +0 -9
  350. package/node_modules/@vellumai/service-contracts/node_modules/zod/v3/helpers/errorUtil.js +0 -6
  351. package/node_modules/@vellumai/service-contracts/node_modules/zod/v3/helpers/parseUtil.cjs +0 -124
  352. package/node_modules/@vellumai/service-contracts/node_modules/zod/v3/helpers/parseUtil.d.cts +0 -78
  353. package/node_modules/@vellumai/service-contracts/node_modules/zod/v3/helpers/parseUtil.d.ts +0 -78
  354. package/node_modules/@vellumai/service-contracts/node_modules/zod/v3/helpers/parseUtil.js +0 -109
  355. package/node_modules/@vellumai/service-contracts/node_modules/zod/v3/helpers/partialUtil.cjs +0 -2
  356. package/node_modules/@vellumai/service-contracts/node_modules/zod/v3/helpers/partialUtil.d.cts +0 -8
  357. package/node_modules/@vellumai/service-contracts/node_modules/zod/v3/helpers/partialUtil.d.ts +0 -8
  358. package/node_modules/@vellumai/service-contracts/node_modules/zod/v3/helpers/partialUtil.js +0 -1
  359. package/node_modules/@vellumai/service-contracts/node_modules/zod/v3/helpers/typeAliases.cjs +0 -2
  360. package/node_modules/@vellumai/service-contracts/node_modules/zod/v3/helpers/typeAliases.d.cts +0 -2
  361. package/node_modules/@vellumai/service-contracts/node_modules/zod/v3/helpers/typeAliases.d.ts +0 -2
  362. package/node_modules/@vellumai/service-contracts/node_modules/zod/v3/helpers/typeAliases.js +0 -1
  363. package/node_modules/@vellumai/service-contracts/node_modules/zod/v3/helpers/util.cjs +0 -137
  364. package/node_modules/@vellumai/service-contracts/node_modules/zod/v3/helpers/util.d.cts +0 -85
  365. package/node_modules/@vellumai/service-contracts/node_modules/zod/v3/helpers/util.d.ts +0 -85
  366. package/node_modules/@vellumai/service-contracts/node_modules/zod/v3/helpers/util.js +0 -133
  367. package/node_modules/@vellumai/service-contracts/node_modules/zod/v3/index.cjs +0 -33
  368. package/node_modules/@vellumai/service-contracts/node_modules/zod/v3/index.d.cts +0 -4
  369. package/node_modules/@vellumai/service-contracts/node_modules/zod/v3/index.d.ts +0 -4
  370. package/node_modules/@vellumai/service-contracts/node_modules/zod/v3/index.js +0 -4
  371. package/node_modules/@vellumai/service-contracts/node_modules/zod/v3/locales/en.cjs +0 -112
  372. package/node_modules/@vellumai/service-contracts/node_modules/zod/v3/locales/en.d.cts +0 -3
  373. package/node_modules/@vellumai/service-contracts/node_modules/zod/v3/locales/en.d.ts +0 -3
  374. package/node_modules/@vellumai/service-contracts/node_modules/zod/v3/locales/en.js +0 -109
  375. package/node_modules/@vellumai/service-contracts/node_modules/zod/v3/package.json +0 -6
  376. package/node_modules/@vellumai/service-contracts/node_modules/zod/v3/standard-schema.cjs +0 -2
  377. package/node_modules/@vellumai/service-contracts/node_modules/zod/v3/standard-schema.d.cts +0 -102
  378. package/node_modules/@vellumai/service-contracts/node_modules/zod/v3/standard-schema.d.ts +0 -102
  379. package/node_modules/@vellumai/service-contracts/node_modules/zod/v3/standard-schema.js +0 -1
  380. package/node_modules/@vellumai/service-contracts/node_modules/zod/v3/types.cjs +0 -3777
  381. package/node_modules/@vellumai/service-contracts/node_modules/zod/v3/types.d.cts +0 -1034
  382. package/node_modules/@vellumai/service-contracts/node_modules/zod/v3/types.d.ts +0 -1034
  383. package/node_modules/@vellumai/service-contracts/node_modules/zod/v3/types.js +0 -3695
  384. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/classic/checks.cjs +0 -33
  385. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/classic/checks.d.cts +0 -1
  386. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/classic/checks.d.ts +0 -1
  387. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/classic/checks.js +0 -1
  388. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/classic/coerce.cjs +0 -47
  389. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/classic/coerce.d.cts +0 -17
  390. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/classic/coerce.d.ts +0 -17
  391. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/classic/coerce.js +0 -17
  392. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/classic/compat.cjs +0 -61
  393. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/classic/compat.d.cts +0 -50
  394. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/classic/compat.d.ts +0 -50
  395. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/classic/compat.js +0 -31
  396. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/classic/errors.cjs +0 -74
  397. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/classic/errors.d.cts +0 -30
  398. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/classic/errors.d.ts +0 -30
  399. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/classic/errors.js +0 -48
  400. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/classic/external.cjs +0 -73
  401. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/classic/external.d.cts +0 -15
  402. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/classic/external.d.ts +0 -15
  403. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/classic/external.js +0 -20
  404. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/classic/from-json-schema.cjs +0 -610
  405. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/classic/from-json-schema.d.cts +0 -12
  406. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/classic/from-json-schema.d.ts +0 -12
  407. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/classic/from-json-schema.js +0 -584
  408. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/classic/index.cjs +0 -33
  409. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/classic/index.d.cts +0 -4
  410. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/classic/index.d.ts +0 -4
  411. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/classic/index.js +0 -4
  412. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/classic/iso.cjs +0 -60
  413. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/classic/iso.d.cts +0 -22
  414. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/classic/iso.d.ts +0 -22
  415. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/classic/iso.js +0 -30
  416. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/classic/package.json +0 -6
  417. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/classic/parse.cjs +0 -41
  418. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/classic/parse.d.cts +0 -31
  419. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/classic/parse.d.ts +0 -31
  420. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/classic/parse.js +0 -15
  421. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/classic/schemas.cjs +0 -1272
  422. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/classic/schemas.d.cts +0 -739
  423. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/classic/schemas.d.ts +0 -739
  424. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/classic/schemas.js +0 -1157
  425. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/core/api.cjs +0 -1222
  426. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/core/api.d.cts +0 -304
  427. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/core/api.d.ts +0 -304
  428. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/core/api.js +0 -1082
  429. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/core/checks.cjs +0 -601
  430. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/core/checks.d.cts +0 -278
  431. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/core/checks.d.ts +0 -278
  432. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/core/checks.js +0 -575
  433. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/core/core.cjs +0 -83
  434. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/core/core.d.cts +0 -70
  435. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/core/core.d.ts +0 -70
  436. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/core/core.js +0 -76
  437. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/core/doc.cjs +0 -39
  438. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/core/doc.d.cts +0 -14
  439. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/core/doc.d.ts +0 -14
  440. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/core/doc.js +0 -35
  441. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/core/errors.cjs +0 -213
  442. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/core/errors.d.cts +0 -220
  443. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/core/errors.d.ts +0 -220
  444. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/core/errors.js +0 -182
  445. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/core/index.cjs +0 -47
  446. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/core/index.d.cts +0 -16
  447. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/core/index.d.ts +0 -16
  448. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/core/index.js +0 -16
  449. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/core/json-schema-generator.cjs +0 -99
  450. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/core/json-schema-generator.d.cts +0 -65
  451. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/core/json-schema-generator.d.ts +0 -65
  452. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/core/json-schema-generator.js +0 -95
  453. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/core/json-schema-processors.cjs +0 -648
  454. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/core/json-schema-processors.d.cts +0 -49
  455. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/core/json-schema-processors.d.ts +0 -49
  456. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/core/json-schema-processors.js +0 -605
  457. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/core/json-schema.cjs +0 -2
  458. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/core/json-schema.d.cts +0 -88
  459. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/core/json-schema.d.ts +0 -88
  460. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/core/json-schema.js +0 -1
  461. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/core/package.json +0 -6
  462. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/core/parse.cjs +0 -131
  463. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/core/parse.d.cts +0 -49
  464. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/core/parse.d.ts +0 -49
  465. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/core/parse.js +0 -93
  466. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/core/regexes.cjs +0 -166
  467. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/core/regexes.d.cts +0 -79
  468. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/core/regexes.d.ts +0 -79
  469. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/core/regexes.js +0 -133
  470. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/core/registries.cjs +0 -56
  471. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/core/registries.d.cts +0 -35
  472. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/core/registries.d.ts +0 -35
  473. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/core/registries.js +0 -51
  474. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/core/schemas.cjs +0 -2124
  475. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/core/schemas.d.cts +0 -1146
  476. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/core/schemas.d.ts +0 -1146
  477. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/core/schemas.js +0 -2093
  478. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/core/standard-schema.cjs +0 -2
  479. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/core/standard-schema.d.cts +0 -126
  480. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/core/standard-schema.d.ts +0 -126
  481. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/core/standard-schema.js +0 -1
  482. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/core/to-json-schema.cjs +0 -446
  483. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/core/to-json-schema.d.cts +0 -114
  484. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/core/to-json-schema.d.ts +0 -114
  485. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/core/to-json-schema.js +0 -437
  486. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/core/util.cjs +0 -710
  487. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/core/util.d.cts +0 -199
  488. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/core/util.d.ts +0 -199
  489. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/core/util.js +0 -651
  490. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/core/versions.cjs +0 -8
  491. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/core/versions.d.cts +0 -5
  492. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/core/versions.d.ts +0 -5
  493. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/core/versions.js +0 -5
  494. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/index.cjs +0 -22
  495. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/index.d.cts +0 -3
  496. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/index.d.ts +0 -3
  497. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/index.js +0 -3
  498. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/ar.cjs +0 -133
  499. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/ar.d.cts +0 -5
  500. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/ar.d.ts +0 -4
  501. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/ar.js +0 -106
  502. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/az.cjs +0 -132
  503. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/az.d.cts +0 -5
  504. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/az.d.ts +0 -4
  505. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/az.js +0 -105
  506. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/be.cjs +0 -183
  507. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/be.d.cts +0 -5
  508. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/be.d.ts +0 -4
  509. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/be.js +0 -156
  510. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/bg.cjs +0 -147
  511. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/bg.d.cts +0 -5
  512. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/bg.d.ts +0 -4
  513. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/bg.js +0 -120
  514. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/ca.cjs +0 -134
  515. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/ca.d.cts +0 -5
  516. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/ca.d.ts +0 -4
  517. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/ca.js +0 -107
  518. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/cs.cjs +0 -138
  519. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/cs.d.cts +0 -5
  520. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/cs.d.ts +0 -4
  521. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/cs.js +0 -111
  522. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/da.cjs +0 -142
  523. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/da.d.cts +0 -5
  524. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/da.d.ts +0 -4
  525. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/da.js +0 -115
  526. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/de.cjs +0 -135
  527. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/de.d.cts +0 -5
  528. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/de.d.ts +0 -4
  529. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/de.js +0 -108
  530. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/en.cjs +0 -136
  531. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/en.d.cts +0 -5
  532. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/en.d.ts +0 -4
  533. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/en.js +0 -109
  534. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/eo.cjs +0 -136
  535. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/eo.d.cts +0 -5
  536. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/eo.d.ts +0 -4
  537. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/eo.js +0 -109
  538. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/es.cjs +0 -159
  539. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/es.d.cts +0 -5
  540. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/es.d.ts +0 -4
  541. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/es.js +0 -132
  542. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/fa.cjs +0 -141
  543. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/fa.d.cts +0 -5
  544. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/fa.d.ts +0 -4
  545. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/fa.js +0 -114
  546. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/fi.cjs +0 -139
  547. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/fi.d.cts +0 -5
  548. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/fi.d.ts +0 -4
  549. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/fi.js +0 -112
  550. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/fr-CA.cjs +0 -134
  551. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/fr-CA.d.cts +0 -5
  552. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/fr-CA.d.ts +0 -4
  553. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/fr-CA.js +0 -107
  554. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/fr.cjs +0 -135
  555. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/fr.d.cts +0 -5
  556. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/fr.d.ts +0 -4
  557. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/fr.js +0 -108
  558. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/he.cjs +0 -241
  559. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/he.d.cts +0 -5
  560. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/he.d.ts +0 -4
  561. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/he.js +0 -214
  562. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/hu.cjs +0 -135
  563. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/hu.d.cts +0 -5
  564. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/hu.d.ts +0 -4
  565. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/hu.js +0 -108
  566. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/hy.cjs +0 -174
  567. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/hy.d.cts +0 -5
  568. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/hy.d.ts +0 -4
  569. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/hy.js +0 -147
  570. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/id.cjs +0 -133
  571. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/id.d.cts +0 -5
  572. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/id.d.ts +0 -4
  573. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/id.js +0 -106
  574. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/index.cjs +0 -104
  575. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/index.d.cts +0 -49
  576. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/index.d.ts +0 -49
  577. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/index.js +0 -49
  578. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/is.cjs +0 -136
  579. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/is.d.cts +0 -5
  580. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/is.d.ts +0 -4
  581. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/is.js +0 -109
  582. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/it.cjs +0 -135
  583. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/it.d.cts +0 -5
  584. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/it.d.ts +0 -4
  585. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/it.js +0 -108
  586. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/ja.cjs +0 -134
  587. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/ja.d.cts +0 -5
  588. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/ja.d.ts +0 -4
  589. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/ja.js +0 -107
  590. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/ka.cjs +0 -139
  591. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/ka.d.cts +0 -5
  592. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/ka.d.ts +0 -4
  593. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/ka.js +0 -112
  594. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/kh.cjs +0 -12
  595. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/kh.d.cts +0 -5
  596. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/kh.d.ts +0 -5
  597. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/kh.js +0 -5
  598. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/km.cjs +0 -137
  599. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/km.d.cts +0 -5
  600. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/km.d.ts +0 -4
  601. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/km.js +0 -110
  602. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/ko.cjs +0 -138
  603. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/ko.d.cts +0 -5
  604. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/ko.d.ts +0 -4
  605. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/ko.js +0 -111
  606. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/lt.cjs +0 -230
  607. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/lt.d.cts +0 -5
  608. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/lt.d.ts +0 -4
  609. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/lt.js +0 -203
  610. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/mk.cjs +0 -136
  611. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/mk.d.cts +0 -5
  612. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/mk.d.ts +0 -4
  613. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/mk.js +0 -109
  614. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/ms.cjs +0 -134
  615. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/ms.d.cts +0 -5
  616. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/ms.d.ts +0 -4
  617. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/ms.js +0 -107
  618. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/nl.cjs +0 -137
  619. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/nl.d.cts +0 -5
  620. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/nl.d.ts +0 -4
  621. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/nl.js +0 -110
  622. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/no.cjs +0 -135
  623. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/no.d.cts +0 -5
  624. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/no.d.ts +0 -4
  625. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/no.js +0 -108
  626. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/ota.cjs +0 -136
  627. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/ota.d.cts +0 -5
  628. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/ota.d.ts +0 -4
  629. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/ota.js +0 -109
  630. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/package.json +0 -6
  631. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/pl.cjs +0 -136
  632. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/pl.d.cts +0 -5
  633. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/pl.d.ts +0 -4
  634. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/pl.js +0 -109
  635. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/ps.cjs +0 -141
  636. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/ps.d.cts +0 -5
  637. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/ps.d.ts +0 -4
  638. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/ps.js +0 -114
  639. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/pt.cjs +0 -135
  640. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/pt.d.cts +0 -5
  641. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/pt.d.ts +0 -4
  642. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/pt.js +0 -108
  643. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/ru.cjs +0 -183
  644. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/ru.d.cts +0 -5
  645. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/ru.d.ts +0 -4
  646. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/ru.js +0 -156
  647. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/sl.cjs +0 -136
  648. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/sl.d.cts +0 -5
  649. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/sl.d.ts +0 -4
  650. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/sl.js +0 -109
  651. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/sv.cjs +0 -137
  652. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/sv.d.cts +0 -5
  653. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/sv.d.ts +0 -4
  654. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/sv.js +0 -110
  655. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/ta.cjs +0 -137
  656. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/ta.d.cts +0 -5
  657. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/ta.d.ts +0 -4
  658. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/ta.js +0 -110
  659. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/th.cjs +0 -137
  660. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/th.d.cts +0 -5
  661. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/th.d.ts +0 -4
  662. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/th.js +0 -110
  663. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/tr.cjs +0 -132
  664. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/tr.d.cts +0 -5
  665. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/tr.d.ts +0 -4
  666. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/tr.js +0 -105
  667. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/ua.cjs +0 -12
  668. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/ua.d.cts +0 -5
  669. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/ua.d.ts +0 -5
  670. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/ua.js +0 -5
  671. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/uk.cjs +0 -135
  672. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/uk.d.cts +0 -5
  673. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/uk.d.ts +0 -4
  674. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/uk.js +0 -108
  675. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/ur.cjs +0 -137
  676. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/ur.d.cts +0 -5
  677. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/ur.d.ts +0 -4
  678. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/ur.js +0 -110
  679. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/uz.cjs +0 -136
  680. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/uz.d.cts +0 -5
  681. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/uz.d.ts +0 -4
  682. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/uz.js +0 -109
  683. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/vi.cjs +0 -135
  684. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/vi.d.cts +0 -5
  685. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/vi.d.ts +0 -4
  686. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/vi.js +0 -108
  687. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/yo.cjs +0 -134
  688. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/yo.d.cts +0 -5
  689. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/yo.d.ts +0 -4
  690. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/yo.js +0 -107
  691. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/zh-CN.cjs +0 -136
  692. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/zh-CN.d.cts +0 -5
  693. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/zh-CN.d.ts +0 -4
  694. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/zh-CN.js +0 -109
  695. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/zh-TW.cjs +0 -134
  696. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/zh-TW.d.cts +0 -5
  697. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/zh-TW.d.ts +0 -4
  698. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/locales/zh-TW.js +0 -107
  699. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/mini/checks.cjs +0 -34
  700. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/mini/checks.d.cts +0 -1
  701. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/mini/checks.d.ts +0 -1
  702. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/mini/checks.js +0 -1
  703. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/mini/coerce.cjs +0 -52
  704. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/mini/coerce.d.cts +0 -7
  705. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/mini/coerce.d.ts +0 -7
  706. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/mini/coerce.js +0 -22
  707. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/mini/external.cjs +0 -63
  708. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/mini/external.d.cts +0 -12
  709. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/mini/external.d.ts +0 -12
  710. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/mini/external.js +0 -14
  711. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/mini/index.cjs +0 -32
  712. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/mini/index.d.cts +0 -3
  713. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/mini/index.d.ts +0 -3
  714. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/mini/index.js +0 -3
  715. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/mini/iso.cjs +0 -64
  716. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/mini/iso.d.cts +0 -22
  717. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/mini/iso.d.ts +0 -22
  718. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/mini/iso.js +0 -34
  719. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/mini/package.json +0 -6
  720. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/mini/parse.cjs +0 -16
  721. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/mini/parse.d.cts +0 -1
  722. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/mini/parse.d.ts +0 -1
  723. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/mini/parse.js +0 -1
  724. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/mini/schemas.cjs +0 -1046
  725. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/mini/schemas.d.cts +0 -427
  726. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/mini/schemas.d.ts +0 -427
  727. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/mini/schemas.js +0 -925
  728. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4/package.json +0 -6
  729. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4-mini/index.cjs +0 -32
  730. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4-mini/index.d.cts +0 -3
  731. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4-mini/index.d.ts +0 -3
  732. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4-mini/index.js +0 -3
  733. package/node_modules/@vellumai/service-contracts/node_modules/zod/v4-mini/package.json +0 -6
  734. package/node_modules/@vellumai/service-contracts/package.json +0 -34
  735. package/node_modules/@vellumai/service-contracts/src/__tests__/attachment-naming.test.ts +0 -104
  736. package/node_modules/@vellumai/service-contracts/src/__tests__/channels.test.ts +0 -28
  737. package/node_modules/@vellumai/service-contracts/src/__tests__/contracts.test.ts +0 -299
  738. package/node_modules/@vellumai/service-contracts/src/__tests__/ingress.test.ts +0 -125
  739. package/node_modules/@vellumai/service-contracts/src/__tests__/package-boundary.test.ts +0 -151
  740. package/node_modules/@vellumai/service-contracts/src/__tests__/redacted-credential.test.ts +0 -200
  741. package/node_modules/@vellumai/service-contracts/src/__tests__/secret-detection.test.ts +0 -449
  742. package/node_modules/@vellumai/service-contracts/src/attachment-naming.ts +0 -118
  743. package/node_modules/@vellumai/service-contracts/src/channels.ts +0 -41
  744. package/node_modules/@vellumai/service-contracts/src/client-metadata.ts +0 -46
  745. package/node_modules/@vellumai/service-contracts/src/credential-rpc.ts +0 -21
  746. package/node_modules/@vellumai/service-contracts/src/error.ts +0 -26
  747. package/node_modules/@vellumai/service-contracts/src/handles.ts +0 -212
  748. package/node_modules/@vellumai/service-contracts/src/index.ts +0 -30
  749. package/node_modules/@vellumai/service-contracts/src/ingress.ts +0 -40
  750. package/node_modules/@vellumai/service-contracts/src/redacted-credential.ts +0 -226
  751. package/node_modules/@vellumai/service-contracts/src/remote-web-pairing.ts +0 -260
  752. package/node_modules/@vellumai/service-contracts/src/rpc.ts +0 -234
  753. package/node_modules/@vellumai/service-contracts/src/secret-detection.ts +0 -468
  754. package/node_modules/@vellumai/service-contracts/src/transport.ts +0 -133
  755. package/node_modules/@vellumai/service-contracts/src/trust-rules.ts +0 -116
  756. package/node_modules/@vellumai/service-contracts/src/twilio-ingress.ts +0 -73
  757. package/node_modules/@vellumai/service-contracts/tsconfig.json +0 -20
  758. package/src/__tests__/ingress-config.test.ts +0 -103
  759. package/src/__tests__/local-hatch-lock.test.ts +0 -163
  760. package/src/__tests__/tailscale-tunnel.test.ts +0 -229
  761. package/src/lib/environments/__tests__/detect.test.ts +0 -101
  762. package/src/lib/environments/detect.ts +0 -79
  763. package/src/lib/ingress-config.ts +0 -101
  764. package/src/lib/local-hatch-lock.ts +0 -322
  765. package/src/lib/stale-cli-hint.ts +0 -11
  766. package/src/lib/tailscale-tunnel.ts +0 -321
@@ -15,7 +15,7 @@ import { join } from "node:path";
15
15
  const testDir = mkdtempSync(join(tmpdir(), "pair-command-test-"));
16
16
  process.env.VELLUM_LOCKFILE_DIR = testDir;
17
17
 
18
- import { buildAppConnectUrl, pair } from "../commands/pair.js";
18
+ import { pair } from "../commands/pair.js";
19
19
 
20
20
  // Distinct loopback (mint) vs reachable (advertised) URLs to verify the split.
21
21
  const LOCAL_URL = "http://127.0.0.1:7830";
@@ -159,100 +159,6 @@ describe("pair command", () => {
159
159
  expect(fetchCalled).toBe(true);
160
160
  });
161
161
 
162
- test("rejects an unknown --flag before any network call", async () => {
163
- let fetchCalled = false;
164
- const origFetch = globalThis.fetch;
165
- globalThis.fetch = (async () => {
166
- fetchCalled = true;
167
- return new Response("{}", { status: 200 });
168
- }) as unknown as typeof fetch;
169
- const errors: string[] = [];
170
- const errSpy = spyOn(console, "error").mockImplementation(
171
- (...a: unknown[]) => {
172
- errors.push(a.join(" "));
173
- },
174
- );
175
- const exitSpy = spyOn(process, "exit").mockImplementation(((
176
- code?: number,
177
- ) => {
178
- throw new Error(`exit:${code}`);
179
- }) as never);
180
-
181
- process.argv = ["bun", "vellum", "pair", "--frobnicate"];
182
- let exited = false;
183
- try {
184
- await pair();
185
- } catch (e) {
186
- exited = (e as Error).message === "exit:1";
187
- } finally {
188
- errSpy.mockRestore();
189
- exitSpy.mockRestore();
190
- globalThis.fetch = origFetch;
191
- }
192
-
193
- // A `--` flag this version doesn't know is a hard error, and it points at
194
- // the CLI self-update path — never a silent fall-through to another flow.
195
- expect(exited).toBe(true);
196
- const joined = errors.join("\n");
197
- expect(joined).toContain("unknown option '--frobnicate'");
198
- expect(joined).toContain("your CLI may be out of date");
199
- expect(joined).toContain("bun install -g vellum@latest");
200
- expect(fetchCalled).toBe(false);
201
- });
202
-
203
- test("rejects an unknown --flag even alongside a multi-word positional name", async () => {
204
- writeFileSync(
205
- join(testDir, ".vellum.lock.json"),
206
- JSON.stringify({
207
- assistants: [
208
- {
209
- assistantId: "pair-test",
210
- name: "My Assistant",
211
- runtimeUrl: RUNTIME_URL,
212
- localUrl: LOCAL_URL,
213
- cloud: "local",
214
- },
215
- ],
216
- activeAssistant: "pair-test",
217
- }),
218
- );
219
-
220
- let fetchCalled = false;
221
- const origFetch = globalThis.fetch;
222
- globalThis.fetch = (async () => {
223
- fetchCalled = true;
224
- return new Response("{}", { status: 200 });
225
- }) as unknown as typeof fetch;
226
- const errors: string[] = [];
227
- const errSpy = spyOn(console, "error").mockImplementation(
228
- (...a: unknown[]) => {
229
- errors.push(a.join(" "));
230
- },
231
- );
232
- const exitSpy = spyOn(process, "exit").mockImplementation(((
233
- code?: number,
234
- ) => {
235
- throw new Error(`exit:${code}`);
236
- }) as never);
237
-
238
- // Positional name tokens must not rescue an unknown flag from rejection.
239
- process.argv = ["bun", "vellum", "pair", "My", "Assistant", "--frobnicate"];
240
- let exited = false;
241
- try {
242
- await pair();
243
- } catch (e) {
244
- exited = (e as Error).message === "exit:1";
245
- } finally {
246
- errSpy.mockRestore();
247
- exitSpy.mockRestore();
248
- globalThis.fetch = origFetch;
249
- }
250
-
251
- expect(exited).toBe(true);
252
- expect(errors.join("\n")).toContain("unknown option '--frobnicate'");
253
- expect(fetchCalled).toBe(false);
254
- });
255
-
256
162
  test("refuses to advertise a loopback URL without --url (suggests the assistant's own port)", async () => {
257
163
  // Local hatch on a NON-default gateway port (e.g. a 2nd instance).
258
164
  const LOOPBACK_CUSTOM = "http://127.0.0.1:7842";
@@ -305,11 +211,6 @@ describe("pair command", () => {
305
211
  expect(errors.join("\n")).toContain(":7842");
306
212
  expect(errors.join("\n")).not.toContain(":7830");
307
213
 
308
- // The refusal cross-points to the QR flow (the phone-pairing path) and its
309
- // https prerequisite, so a user who wanted a QR isn't left at a dead end.
310
- expect(errors.join("\n")).toContain("vellum pair --qr");
311
- expect(errors.join("\n")).toContain("vellum tunnel --provider tailscale");
312
-
313
214
  // Exited with an error before minting — no token created for a dead URL.
314
215
  expect(exited).toBe(true);
315
216
  expect(fetchCalled).toBe(false);
@@ -566,764 +467,4 @@ describe("pair command", () => {
566
467
  expiresAt: "2026-06-04T00:10:00.000Z",
567
468
  });
568
469
  });
569
-
570
- test("--qr mints a challenge, auto-approves it, and emits a device-code link", async () => {
571
- const calls: Array<[string, RequestInit | undefined]> = [];
572
- const origFetch = globalThis.fetch;
573
- globalThis.fetch = (async (url: string, init?: RequestInit) => {
574
- calls.push([url, init]);
575
- if (url === `${LOCAL_URL}/v1/assistants/pair-test/feature-flags`) {
576
- return new Response(
577
- JSON.stringify({
578
- flags: [{ key: "web-remote-ingress", enabled: true }],
579
- }),
580
- { status: 200, headers: { "content-type": "application/json" } },
581
- );
582
- }
583
- if (url === `${LOCAL_URL}/v1/remote-web/pairing-challenge`) {
584
- return new Response(
585
- JSON.stringify({
586
- deviceCode: "device-code",
587
- userCode: "ABCD-EFGH",
588
- verificationUri: "https://pair.example.ts.net/assistant/pair",
589
- expiresAt: "2026-06-04T00:10:00.000Z",
590
- expiresInSeconds: 600,
591
- }),
592
- { status: 200, headers: { "content-type": "application/json" } },
593
- );
594
- }
595
- if (url === `${LOCAL_URL}/v1/remote-web/pairing-verification`) {
596
- return new Response(
597
- JSON.stringify({
598
- status: "approved",
599
- verificationUri: "https://pair.example.ts.net/assistant/pair",
600
- expiresAt: "2026-06-04T00:10:00.000Z",
601
- }),
602
- { status: 200, headers: { "content-type": "application/json" } },
603
- );
604
- }
605
- return new Response("not found", { status: 404 });
606
- }) as unknown as typeof fetch;
607
-
608
- const logs: string[] = [];
609
- const logSpy = spyOn(console, "log").mockImplementation(
610
- (...a: unknown[]) => {
611
- logs.push(a.join(" "));
612
- },
613
- );
614
-
615
- process.argv = [
616
- "bun",
617
- "vellum",
618
- "pair",
619
- "--qr",
620
- "--url",
621
- "https://pair.example.ts.net",
622
- "--json",
623
- ];
624
- try {
625
- await pair();
626
- } finally {
627
- logSpy.mockRestore();
628
- globalThis.fetch = origFetch;
629
- }
630
-
631
- // Flag check → create challenge → approve it, all over loopback. The
632
- // approval is the whole point: running the CLI on the host IS the approval,
633
- // so the scan alone completes pairing.
634
- expect(calls.map((c) => c[0])).toEqual([
635
- `${LOCAL_URL}/v1/assistants/pair-test/feature-flags`,
636
- `${LOCAL_URL}/v1/remote-web/pairing-challenge`,
637
- `${LOCAL_URL}/v1/remote-web/pairing-verification`,
638
- ]);
639
- expect(JSON.parse(calls[1][1]?.body as string)).toEqual({
640
- publicBaseUrl: "https://pair.example.ts.net",
641
- });
642
- expect(JSON.parse(calls[2][1]?.body as string)).toEqual({
643
- userCode: "ABCD-EFGH",
644
- });
645
-
646
- const out = JSON.parse(logs.join("\n"));
647
- expect(out).toEqual({
648
- pairUrl:
649
- "https://pair.example.ts.net/assistant/pair#device_code=device-code",
650
- deviceCode: "device-code",
651
- expiresAt: "2026-06-04T00:10:00.000Z",
652
- expiresInSeconds: 600,
653
- });
654
- // The device code rides the fragment only — never the path or query.
655
- const parsed = new URL(out.pairUrl);
656
- expect(parsed.search).toBe("");
657
- expect(parsed.hash).toBe("#device_code=device-code");
658
- });
659
-
660
- test("--qr renders a QR and prints the fallback URL and expiry", async () => {
661
- const origFetch = globalThis.fetch;
662
- globalThis.fetch = (async (url: string) => {
663
- if (url === `${LOCAL_URL}/v1/assistants/pair-test/feature-flags`) {
664
- return new Response(
665
- JSON.stringify({
666
- flags: [{ key: "web-remote-ingress", enabled: true }],
667
- }),
668
- { status: 200, headers: { "content-type": "application/json" } },
669
- );
670
- }
671
- if (url === `${LOCAL_URL}/v1/remote-web/pairing-challenge`) {
672
- return new Response(
673
- JSON.stringify({
674
- deviceCode: "device-code",
675
- userCode: "ABCD-EFGH",
676
- verificationUri: "https://pair.example.ts.net/assistant/pair",
677
- expiresAt: "2026-06-04T00:10:00.000Z",
678
- expiresInSeconds: 600,
679
- }),
680
- { status: 200, headers: { "content-type": "application/json" } },
681
- );
682
- }
683
- return new Response(
684
- JSON.stringify({
685
- status: "approved",
686
- verificationUri: "https://pair.example.ts.net/assistant/pair",
687
- expiresAt: "2026-06-04T00:10:00.000Z",
688
- }),
689
- { status: 200, headers: { "content-type": "application/json" } },
690
- );
691
- }) as unknown as typeof fetch;
692
-
693
- const logs: string[] = [];
694
- const logSpy = spyOn(console, "log").mockImplementation(
695
- (...a: unknown[]) => {
696
- logs.push(a.join(" "));
697
- },
698
- );
699
-
700
- process.argv = [
701
- "bun",
702
- "vellum",
703
- "pair",
704
- "--qr",
705
- "--url",
706
- "https://pair.example.ts.net",
707
- ];
708
- try {
709
- await pair();
710
- } finally {
711
- logSpy.mockRestore();
712
- globalThis.fetch = origFetch;
713
- }
714
-
715
- const output = logs.join("\n");
716
- expect(output).toContain(
717
- "https://pair.example.ts.net/assistant/pair#device_code=device-code",
718
- );
719
- expect(output).toContain("Expires: 2026-06-04T00:10:00.000Z");
720
- });
721
-
722
- test("--qr refuses a non-https --url without minting", async () => {
723
- let fetchCalled = false;
724
- const origFetch = globalThis.fetch;
725
- globalThis.fetch = (async () => {
726
- fetchCalled = true;
727
- return new Response("{}", { status: 200 });
728
- }) as unknown as typeof fetch;
729
- const errors: string[] = [];
730
- const errSpy = spyOn(console, "error").mockImplementation(
731
- (...a: unknown[]) => {
732
- errors.push(a.join(" "));
733
- },
734
- );
735
- const exitSpy = spyOn(process, "exit").mockImplementation(((
736
- code?: number,
737
- ) => {
738
- throw new Error(`exit:${code}`);
739
- }) as never);
740
-
741
- process.argv = [
742
- "bun",
743
- "vellum",
744
- "pair",
745
- "--qr",
746
- "--url",
747
- "http://pair.example.com",
748
- ];
749
- let exited = false;
750
- try {
751
- await pair();
752
- } catch (e) {
753
- exited = (e as Error).message === "exit:1";
754
- } finally {
755
- errSpy.mockRestore();
756
- exitSpy.mockRestore();
757
- globalThis.fetch = origFetch;
758
- }
759
-
760
- // Validation is local and fails fast — no challenge minted for a dead link.
761
- expect(exited).toBe(true);
762
- expect(errors.join("\n")).toContain("https");
763
- expect(fetchCalled).toBe(false);
764
- });
765
-
766
- test("--qr refuses a loopback --url without minting", async () => {
767
- let fetchCalled = false;
768
- const origFetch = globalThis.fetch;
769
- globalThis.fetch = (async () => {
770
- fetchCalled = true;
771
- return new Response("{}", { status: 200 });
772
- }) as unknown as typeof fetch;
773
- const errors: string[] = [];
774
- const errSpy = spyOn(console, "error").mockImplementation(
775
- (...a: unknown[]) => {
776
- errors.push(a.join(" "));
777
- },
778
- );
779
- const exitSpy = spyOn(process, "exit").mockImplementation(((
780
- code?: number,
781
- ) => {
782
- throw new Error(`exit:${code}`);
783
- }) as never);
784
-
785
- process.argv = [
786
- "bun",
787
- "vellum",
788
- "pair",
789
- "--qr",
790
- "--url",
791
- "http://127.0.0.1:7830",
792
- ];
793
- let exited = false;
794
- try {
795
- await pair();
796
- } catch (e) {
797
- exited = (e as Error).message === "exit:1";
798
- } finally {
799
- errSpy.mockRestore();
800
- exitSpy.mockRestore();
801
- globalThis.fetch = origFetch;
802
- }
803
-
804
- expect(exited).toBe(true);
805
- expect(errors.join("\n")).toContain("loopback");
806
- expect(fetchCalled).toBe(false);
807
- });
808
-
809
- test("--qr refuses an unparseable --url with an accurate error, not a non-https mislabel", async () => {
810
- let fetchCalled = false;
811
- const origFetch = globalThis.fetch;
812
- globalThis.fetch = (async () => {
813
- fetchCalled = true;
814
- return new Response("{}", { status: 200 });
815
- }) as unknown as typeof fetch;
816
- const errors: string[] = [];
817
- const errSpy = spyOn(console, "error").mockImplementation(
818
- (...a: unknown[]) => {
819
- errors.push(a.join(" "));
820
- },
821
- );
822
- const exitSpy = spyOn(process, "exit").mockImplementation(((
823
- code?: number,
824
- ) => {
825
- throw new Error(`exit:${code}`);
826
- }) as never);
827
-
828
- process.argv = ["bun", "vellum", "pair", "--qr", "--url", "not-a-url"];
829
- let exited = false;
830
- try {
831
- await pair();
832
- } catch (e) {
833
- exited = (e as Error).message === "exit:1";
834
- } finally {
835
- errSpy.mockRestore();
836
- exitSpy.mockRestore();
837
- globalThis.fetch = origFetch;
838
- }
839
-
840
- // Unparseable input reports its own reason — not the loopback/non-https
841
- // messages the reason-blind version reconstructed.
842
- expect(exited).toBe(true);
843
- const joined = errors.join("\n");
844
- expect(joined).toContain("isn't a valid URL");
845
- expect(joined).not.toContain("is not https");
846
- expect(joined).not.toContain("loopback");
847
- expect(fetchCalled).toBe(false);
848
- });
849
-
850
- test("--qr refuses a tunnel-provider website URL (Tailscale admin invite) without minting", async () => {
851
- let fetchCalled = false;
852
- const origFetch = globalThis.fetch;
853
- globalThis.fetch = (async () => {
854
- fetchCalled = true;
855
- return new Response("{}", { status: 200 });
856
- }) as unknown as typeof fetch;
857
- const errors: string[] = [];
858
- const errSpy = spyOn(console, "error").mockImplementation(
859
- (...a: unknown[]) => {
860
- errors.push(a.join(" "));
861
- },
862
- );
863
- const exitSpy = spyOn(process, "exit").mockImplementation(((
864
- code?: number,
865
- ) => {
866
- throw new Error(`exit:${code}`);
867
- }) as never);
868
-
869
- process.argv = [
870
- "bun",
871
- "vellum",
872
- "pair",
873
- "--qr",
874
- "--url",
875
- "https://login.tailscale.com/admin/invite/abc123",
876
- ];
877
- let exited = false;
878
- try {
879
- await pair();
880
- } catch (e) {
881
- exited = (e as Error).message === "exit:1";
882
- } finally {
883
- errSpy.mockRestore();
884
- exitSpy.mockRestore();
885
- globalThis.fetch = origFetch;
886
- }
887
-
888
- // The admin-invite link is a vendor website — named as such, not mislabeled
889
- // as non-https, and refused before any challenge is minted.
890
- expect(exited).toBe(true);
891
- const joined = errors.join("\n");
892
- expect(joined).toContain("Tailscale's website");
893
- expect(joined).not.toContain("is not https");
894
- expect(fetchCalled).toBe(false);
895
- });
896
-
897
- test("--qr refuses when the web remote ingress feature flag is off", async () => {
898
- const calls: Array<[string, RequestInit | undefined]> = [];
899
- const origFetch = globalThis.fetch;
900
- globalThis.fetch = (async (url: string, init?: RequestInit) => {
901
- calls.push([url, init]);
902
- return new Response(
903
- JSON.stringify({
904
- flags: [{ key: "web-remote-ingress", enabled: false }],
905
- }),
906
- { status: 200, headers: { "content-type": "application/json" } },
907
- );
908
- }) as unknown as typeof fetch;
909
-
910
- const errors: string[] = [];
911
- const errSpy = spyOn(console, "error").mockImplementation(
912
- (...a: unknown[]) => {
913
- errors.push(a.join(" "));
914
- },
915
- );
916
- const exitSpy = spyOn(process, "exit").mockImplementation(((
917
- code?: number,
918
- ) => {
919
- throw new Error(`exit:${code}`);
920
- }) as never);
921
-
922
- process.argv = [
923
- "bun",
924
- "vellum",
925
- "pair",
926
- "--qr",
927
- "--url",
928
- "https://pair.example.ts.net",
929
- ];
930
- let exited = false;
931
- try {
932
- await pair();
933
- } catch (e) {
934
- exited = (e as Error).message === "exit:1";
935
- } finally {
936
- errSpy.mockRestore();
937
- exitSpy.mockRestore();
938
- globalThis.fetch = origFetch;
939
- }
940
-
941
- // Only the flag check runs; no challenge is minted when the flag is off.
942
- expect(exited).toBe(true);
943
- expect(errors.join("\n")).toContain("web-remote-ingress");
944
- expect(calls).toHaveLength(1);
945
- expect(calls[0][0]).toBe(
946
- `${LOCAL_URL}/v1/assistants/pair-test/feature-flags`,
947
- );
948
- });
949
-
950
- test("buildAppConnectUrl composes and encodes the connect link", () => {
951
- expect(
952
- buildAppConnectUrl(
953
- "vellum-assistant",
954
- "https://pair.example.ts.net",
955
- "device-code",
956
- ),
957
- ).toBe(
958
- "vellum-assistant://connect?url=https%3A%2F%2Fpair.example.ts.net&code=device-code",
959
- );
960
- // Path prefixes and fragment-hostile characters survive the encoding.
961
- expect(
962
- buildAppConnectUrl(
963
- "vellum-assistant-dev",
964
- "https://host.example.ts.net/assistant-123",
965
- "a+b/c=",
966
- ),
967
- ).toBe(
968
- "vellum-assistant-dev://connect?url=https%3A%2F%2Fhost.example.ts.net%2Fassistant-123&code=a%2Bb%2Fc%3D",
969
- );
970
- });
971
-
972
- test("--qr --app emits an app connect URL alongside the browser URL", async () => {
973
- const origFetch = globalThis.fetch;
974
- globalThis.fetch = (async (url: string) => {
975
- if (url === `${LOCAL_URL}/v1/assistants/pair-test/feature-flags`) {
976
- return new Response(
977
- JSON.stringify({
978
- flags: [{ key: "web-remote-ingress", enabled: true }],
979
- }),
980
- { status: 200, headers: { "content-type": "application/json" } },
981
- );
982
- }
983
- if (url === `${LOCAL_URL}/v1/remote-web/pairing-challenge`) {
984
- return new Response(
985
- JSON.stringify({
986
- deviceCode: "device-code",
987
- userCode: "ABCD-EFGH",
988
- verificationUri: "https://pair.example.ts.net/assistant/pair",
989
- expiresAt: "2026-06-04T00:10:00.000Z",
990
- expiresInSeconds: 600,
991
- }),
992
- { status: 200, headers: { "content-type": "application/json" } },
993
- );
994
- }
995
- if (url === `${LOCAL_URL}/v1/remote-web/pairing-verification`) {
996
- return new Response(
997
- JSON.stringify({
998
- status: "approved",
999
- verificationUri: "https://pair.example.ts.net/assistant/pair",
1000
- expiresAt: "2026-06-04T00:10:00.000Z",
1001
- }),
1002
- { status: 200, headers: { "content-type": "application/json" } },
1003
- );
1004
- }
1005
- return new Response("not found", { status: 404 });
1006
- }) as unknown as typeof fetch;
1007
-
1008
- const logs: string[] = [];
1009
- const logSpy = spyOn(console, "log").mockImplementation(
1010
- (...a: unknown[]) => {
1011
- logs.push(a.join(" "));
1012
- },
1013
- );
1014
-
1015
- process.argv = [
1016
- "bun",
1017
- "vellum",
1018
- "pair",
1019
- "--qr",
1020
- "--app",
1021
- "--app-scheme",
1022
- "vellum-assistant-dev",
1023
- "--url",
1024
- "https://pair.example.ts.net",
1025
- "--json",
1026
- ];
1027
- try {
1028
- await pair();
1029
- } finally {
1030
- logSpy.mockRestore();
1031
- globalThis.fetch = origFetch;
1032
- }
1033
-
1034
- const out = JSON.parse(logs.join("\n"));
1035
- expect(out.appUrl).toBe(
1036
- "vellum-assistant-dev://connect?url=https%3A%2F%2Fpair.example.ts.net&code=device-code",
1037
- );
1038
- // The browser URL stays available as the no-app fallback.
1039
- expect(out.pairUrl).toBe(
1040
- "https://pair.example.ts.net/assistant/pair#device_code=device-code",
1041
- );
1042
- expect(out.deviceCode).toBe("device-code");
1043
- });
1044
-
1045
- test("--app without --qr is refused", async () => {
1046
- let fetchCalled = false;
1047
- const origFetch = globalThis.fetch;
1048
- globalThis.fetch = (async () => {
1049
- fetchCalled = true;
1050
- return new Response("{}", { status: 200 });
1051
- }) as unknown as typeof fetch;
1052
- const errors: string[] = [];
1053
- const errSpy = spyOn(console, "error").mockImplementation(
1054
- (...a: unknown[]) => {
1055
- errors.push(a.join(" "));
1056
- },
1057
- );
1058
- const exitSpy = spyOn(process, "exit").mockImplementation(((
1059
- code?: number,
1060
- ) => {
1061
- throw new Error(`exit:${code}`);
1062
- }) as never);
1063
-
1064
- process.argv = ["bun", "vellum", "pair", "--app"];
1065
- let exited = false;
1066
- try {
1067
- await pair();
1068
- } catch (e) {
1069
- exited = (e as Error).message === "exit:1";
1070
- } finally {
1071
- errSpy.mockRestore();
1072
- exitSpy.mockRestore();
1073
- globalThis.fetch = origFetch;
1074
- }
1075
-
1076
- expect(exited).toBe(true);
1077
- expect(errors.join("\n")).toContain("--qr");
1078
- expect(fetchCalled).toBe(false);
1079
- });
1080
-
1081
- function writeLockfileWithIngress(ingressUrl: string): void {
1082
- writeFileSync(
1083
- join(testDir, ".vellum.lock.json"),
1084
- JSON.stringify({
1085
- assistants: [
1086
- {
1087
- assistantId: "pair-test",
1088
- runtimeUrl: RUNTIME_URL,
1089
- localUrl: LOCAL_URL,
1090
- cloud: "local",
1091
- ingressUrl,
1092
- },
1093
- ],
1094
- activeAssistant: "pair-test",
1095
- }),
1096
- );
1097
- }
1098
-
1099
- test("--qr with no --url uses the entry's tunnel-recorded ingress URL", async () => {
1100
- writeLockfileWithIngress("https://saved.example.ts.net");
1101
-
1102
- const calls: string[] = [];
1103
- const origFetch = globalThis.fetch;
1104
- globalThis.fetch = (async (url: string, init?: RequestInit) => {
1105
- calls.push(url);
1106
- if (url === `${LOCAL_URL}/v1/assistants/pair-test/feature-flags`) {
1107
- return new Response(
1108
- JSON.stringify({
1109
- flags: [{ key: "web-remote-ingress", enabled: true }],
1110
- }),
1111
- { status: 200, headers: { "content-type": "application/json" } },
1112
- );
1113
- }
1114
- if (url === `${LOCAL_URL}/v1/remote-web/pairing-challenge`) {
1115
- // The minted challenge must advertise the entry's recorded URL.
1116
- expect(JSON.parse(init?.body as string)).toEqual({
1117
- publicBaseUrl: "https://saved.example.ts.net",
1118
- });
1119
- return new Response(
1120
- JSON.stringify({
1121
- deviceCode: "device-code",
1122
- userCode: "ABCD-EFGH",
1123
- verificationUri: "https://saved.example.ts.net/assistant/pair",
1124
- expiresAt: "2026-06-04T00:10:00.000Z",
1125
- expiresInSeconds: 600,
1126
- }),
1127
- { status: 200, headers: { "content-type": "application/json" } },
1128
- );
1129
- }
1130
- if (url === `${LOCAL_URL}/v1/remote-web/pairing-verification`) {
1131
- return new Response(
1132
- JSON.stringify({
1133
- status: "approved",
1134
- verificationUri: "https://saved.example.ts.net/assistant/pair",
1135
- expiresAt: "2026-06-04T00:10:00.000Z",
1136
- }),
1137
- { status: 200, headers: { "content-type": "application/json" } },
1138
- );
1139
- }
1140
- return new Response("not found", { status: 404 });
1141
- }) as unknown as typeof fetch;
1142
-
1143
- const logs: string[] = [];
1144
- const logSpy = spyOn(console, "log").mockImplementation(
1145
- (...a: unknown[]) => {
1146
- logs.push(a.join(" "));
1147
- },
1148
- );
1149
-
1150
- process.argv = ["bun", "vellum", "pair", "--qr"];
1151
- try {
1152
- await pair();
1153
- } finally {
1154
- logSpy.mockRestore();
1155
- globalThis.fetch = origFetch;
1156
- }
1157
-
1158
- expect(calls).toContain(`${LOCAL_URL}/v1/remote-web/pairing-challenge`);
1159
- const output = logs.join("\n");
1160
- expect(output).toContain(
1161
- "Using saved ingress URL https://saved.example.ts.net",
1162
- );
1163
- expect(output).toContain(
1164
- "https://saved.example.ts.net/assistant/pair#device_code=device-code",
1165
- );
1166
- });
1167
-
1168
- test("--url beats the entry's recorded ingress URL", async () => {
1169
- writeLockfileWithIngress("https://saved.example.ts.net");
1170
-
1171
- const origFetch = globalThis.fetch;
1172
- globalThis.fetch = (async (url: string, init?: RequestInit) => {
1173
- if (url === `${LOCAL_URL}/v1/assistants/pair-test/feature-flags`) {
1174
- return new Response(
1175
- JSON.stringify({
1176
- flags: [{ key: "web-remote-ingress", enabled: true }],
1177
- }),
1178
- { status: 200, headers: { "content-type": "application/json" } },
1179
- );
1180
- }
1181
- if (url === `${LOCAL_URL}/v1/remote-web/pairing-challenge`) {
1182
- expect(JSON.parse(init?.body as string)).toEqual({
1183
- publicBaseUrl: "https://explicit.example.ts.net",
1184
- });
1185
- return new Response(
1186
- JSON.stringify({
1187
- deviceCode: "device-code",
1188
- userCode: "ABCD-EFGH",
1189
- verificationUri: "https://explicit.example.ts.net/assistant/pair",
1190
- expiresAt: "2026-06-04T00:10:00.000Z",
1191
- expiresInSeconds: 600,
1192
- }),
1193
- { status: 200, headers: { "content-type": "application/json" } },
1194
- );
1195
- }
1196
- if (url === `${LOCAL_URL}/v1/remote-web/pairing-verification`) {
1197
- return new Response(
1198
- JSON.stringify({
1199
- status: "approved",
1200
- verificationUri: "https://explicit.example.ts.net/assistant/pair",
1201
- expiresAt: "2026-06-04T00:10:00.000Z",
1202
- }),
1203
- { status: 200, headers: { "content-type": "application/json" } },
1204
- );
1205
- }
1206
- return new Response("not found", { status: 404 });
1207
- }) as unknown as typeof fetch;
1208
-
1209
- const logs: string[] = [];
1210
- const logSpy = spyOn(console, "log").mockImplementation(
1211
- (...a: unknown[]) => {
1212
- logs.push(a.join(" "));
1213
- },
1214
- );
1215
-
1216
- process.argv = [
1217
- "bun",
1218
- "vellum",
1219
- "pair",
1220
- "--qr",
1221
- "--url",
1222
- "https://explicit.example.ts.net",
1223
- ];
1224
- try {
1225
- await pair();
1226
- } finally {
1227
- logSpy.mockRestore();
1228
- globalThis.fetch = origFetch;
1229
- }
1230
-
1231
- expect(logs.join("\n")).not.toContain("Using saved ingress URL");
1232
- });
1233
-
1234
- test("a non-https recorded ingress URL is ignored", async () => {
1235
- writeLockfileWithIngress("http://insecure.example.com");
1236
-
1237
- const origFetch = globalThis.fetch;
1238
- let minted = false;
1239
- globalThis.fetch = (async (url: string) => {
1240
- if (url === `${LOCAL_URL}/v1/assistants/pair-test/feature-flags`) {
1241
- return new Response(
1242
- JSON.stringify({
1243
- flags: [{ key: "web-remote-ingress", enabled: true }],
1244
- }),
1245
- { status: 200, headers: { "content-type": "application/json" } },
1246
- );
1247
- }
1248
- minted = true;
1249
- return new Response("{}", { status: 200 });
1250
- }) as unknown as typeof fetch;
1251
-
1252
- const errors: string[] = [];
1253
- const errSpy = spyOn(console, "error").mockImplementation(
1254
- (...a: unknown[]) => {
1255
- errors.push(a.join(" "));
1256
- },
1257
- );
1258
- const exitSpy = spyOn(process, "exit").mockImplementation(((
1259
- code?: number,
1260
- ) => {
1261
- throw new Error(`exit:${code}`);
1262
- }) as never);
1263
-
1264
- process.argv = ["bun", "vellum", "pair", "--qr"];
1265
- let exited = false;
1266
- try {
1267
- await pair();
1268
- } catch (e) {
1269
- exited = (e as Error).message === "exit:1";
1270
- } finally {
1271
- errSpy.mockRestore();
1272
- exitSpy.mockRestore();
1273
- globalThis.fetch = origFetch;
1274
- }
1275
-
1276
- // The recorded http URL is skipped, so --qr falls through to the
1277
- // (non-https) runtime URL and refuses — proving it was not advertised.
1278
- expect(exited).toBe(true);
1279
- expect(errors.join("\n")).toContain(RUNTIME_URL);
1280
- expect(minted).toBe(false);
1281
- });
1282
-
1283
- test("a loopback recorded ingress URL is ignored", async () => {
1284
- writeLockfileWithIngress("https://127.0.0.1:7840");
1285
-
1286
- const origFetch = globalThis.fetch;
1287
- let minted = false;
1288
- globalThis.fetch = (async (url: string) => {
1289
- if (url === `${LOCAL_URL}/v1/assistants/pair-test/feature-flags`) {
1290
- return new Response(
1291
- JSON.stringify({
1292
- flags: [{ key: "web-remote-ingress", enabled: true }],
1293
- }),
1294
- { status: 200, headers: { "content-type": "application/json" } },
1295
- );
1296
- }
1297
- minted = true;
1298
- return new Response("{}", { status: 200 });
1299
- }) as unknown as typeof fetch;
1300
-
1301
- const errors: string[] = [];
1302
- const errSpy = spyOn(console, "error").mockImplementation(
1303
- (...a: unknown[]) => {
1304
- errors.push(a.join(" "));
1305
- },
1306
- );
1307
- const exitSpy = spyOn(process, "exit").mockImplementation(((
1308
- code?: number,
1309
- ) => {
1310
- throw new Error(`exit:${code}`);
1311
- }) as never);
1312
-
1313
- process.argv = ["bun", "vellum", "pair", "--qr"];
1314
- let exited = false;
1315
- try {
1316
- await pair();
1317
- } catch (e) {
1318
- exited = (e as Error).message === "exit:1";
1319
- } finally {
1320
- errSpy.mockRestore();
1321
- exitSpy.mockRestore();
1322
- globalThis.fetch = origFetch;
1323
- }
1324
-
1325
- expect(exited).toBe(true);
1326
- expect(errors.join("\n")).toContain(RUNTIME_URL);
1327
- expect(minted).toBe(false);
1328
- });
1329
470
  });