@indigoai-us/hq-cloud 6.18.44-alpha.8 → 6.18.44

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 (1068) hide show
  1. package/dist/bin/sync-runner-planning.d.ts +12 -0
  2. package/dist/bin/sync-runner-planning.d.ts.map +1 -1
  3. package/dist/bin/sync-runner-planning.js +18 -0
  4. package/dist/bin/sync-runner-planning.js.map +1 -1
  5. package/dist/bin/sync-runner-watch-loop.d.ts +18 -0
  6. package/dist/bin/sync-runner-watch-loop.d.ts.map +1 -1
  7. package/dist/bin/sync-runner-watch-loop.js +75 -6
  8. package/dist/bin/sync-runner-watch-loop.js.map +1 -1
  9. package/dist/bin/sync-runner.d.ts +22 -1
  10. package/dist/bin/sync-runner.d.ts.map +1 -1
  11. package/dist/bin/sync-runner.js +33 -4
  12. package/dist/bin/sync-runner.js.map +1 -1
  13. package/dist/cli/conflict.d.ts.map +1 -1
  14. package/dist/cli/conflict.js +2 -1
  15. package/dist/cli/conflict.js.map +1 -1
  16. package/dist/cli/rescue-core.d.ts +6 -0
  17. package/dist/cli/rescue-core.d.ts.map +1 -1
  18. package/dist/cli/rescue-core.js +10 -1
  19. package/dist/cli/rescue-core.js.map +1 -1
  20. package/dist/cli/rescue-windows-test-harness.d.ts +19 -0
  21. package/dist/cli/rescue-windows-test-harness.d.ts.map +1 -0
  22. package/dist/cli/rescue-windows-test-harness.js +443 -0
  23. package/dist/cli/rescue-windows-test-harness.js.map +1 -0
  24. package/dist/company-resolver.d.ts +22 -0
  25. package/dist/company-resolver.d.ts.map +1 -1
  26. package/dist/company-resolver.js +1 -1
  27. package/dist/company-resolver.js.map +1 -1
  28. package/dist/ignore.d.ts +4 -1
  29. package/dist/ignore.d.ts.map +1 -1
  30. package/dist/ignore.js +10 -12
  31. package/dist/ignore.js.map +1 -1
  32. package/dist/journal-snapshot-decoder.js +15 -2
  33. package/dist/journal-snapshot-decoder.js.map +1 -1
  34. package/dist/sync/durable-apply.d.ts +2 -0
  35. package/dist/sync/durable-apply.d.ts.map +1 -1
  36. package/dist/sync/durable-apply.js +9 -12
  37. package/dist/sync/durable-apply.js.map +1 -1
  38. package/dist/sync/fsync-compat.d.ts +13 -0
  39. package/dist/sync/fsync-compat.d.ts.map +1 -0
  40. package/dist/sync/fsync-compat.js +33 -0
  41. package/dist/sync/fsync-compat.js.map +1 -0
  42. package/dist/sync/multipart-uploader.d.ts.map +1 -1
  43. package/dist/sync/multipart-uploader.js +2 -1
  44. package/dist/sync/multipart-uploader.js.map +1 -1
  45. package/dist/sync/scope-inventory-client.d.ts.map +1 -1
  46. package/dist/sync/scope-inventory-client.js +7 -2
  47. package/dist/sync/scope-inventory-client.js.map +1 -1
  48. package/dist/telemetry.d.ts +31 -0
  49. package/dist/telemetry.d.ts.map +1 -1
  50. package/dist/telemetry.js +177 -17
  51. package/dist/telemetry.js.map +1 -1
  52. package/dist/usage-company-fallback.d.ts +104 -0
  53. package/dist/usage-company-fallback.d.ts.map +1 -0
  54. package/dist/usage-company-fallback.js +599 -0
  55. package/dist/usage-company-fallback.js.map +1 -0
  56. package/dist/watch-owner-lease.d.ts +3 -0
  57. package/dist/watch-owner-lease.d.ts.map +1 -1
  58. package/dist/watch-owner-lease.js +14 -3
  59. package/dist/watch-owner-lease.js.map +1 -1
  60. package/package.json +2 -2
  61. package/dist/active-company.test.d.ts +0 -2
  62. package/dist/active-company.test.d.ts.map +0 -1
  63. package/dist/active-company.test.js +0 -149
  64. package/dist/active-company.test.js.map +0 -1
  65. package/dist/agent-codex-instructions.test.d.ts +0 -2
  66. package/dist/agent-codex-instructions.test.d.ts.map +0 -1
  67. package/dist/agent-codex-instructions.test.js +0 -271
  68. package/dist/agent-codex-instructions.test.js.map +0 -1
  69. package/dist/backup-prune.test.d.ts +0 -2
  70. package/dist/backup-prune.test.d.ts.map +0 -1
  71. package/dist/backup-prune.test.js +0 -154
  72. package/dist/backup-prune.test.js.map +0 -1
  73. package/dist/bandwidth.test.d.ts +0 -2
  74. package/dist/bandwidth.test.d.ts.map +0 -1
  75. package/dist/bandwidth.test.js +0 -342
  76. package/dist/bandwidth.test.js.map +0 -1
  77. package/dist/best-effort-error.test.d.ts +0 -2
  78. package/dist/best-effort-error.test.d.ts.map +0 -1
  79. package/dist/best-effort-error.test.js +0 -54
  80. package/dist/best-effort-error.test.js.map +0 -1
  81. package/dist/bin/area-ledger-migration.test.d.ts +0 -2
  82. package/dist/bin/area-ledger-migration.test.d.ts.map +0 -1
  83. package/dist/bin/area-ledger-migration.test.js +0 -410
  84. package/dist/bin/area-ledger-migration.test.js.map +0 -1
  85. package/dist/bin/backup-prune-runner.test.d.ts +0 -2
  86. package/dist/bin/backup-prune-runner.test.d.ts.map +0 -1
  87. package/dist/bin/backup-prune-runner.test.js +0 -22
  88. package/dist/bin/backup-prune-runner.test.js.map +0 -1
  89. package/dist/bin/journal-repair.test.d.ts +0 -2
  90. package/dist/bin/journal-repair.test.d.ts.map +0 -1
  91. package/dist/bin/journal-repair.test.js +0 -53
  92. package/dist/bin/journal-repair.test.js.map +0 -1
  93. package/dist/bin/layout-compatibility.test.d.ts +0 -2
  94. package/dist/bin/layout-compatibility.test.d.ts.map +0 -1
  95. package/dist/bin/layout-compatibility.test.js +0 -87
  96. package/dist/bin/layout-compatibility.test.js.map +0 -1
  97. package/dist/bin/outpost-heartbeat.test.d.ts +0 -7
  98. package/dist/bin/outpost-heartbeat.test.d.ts.map +0 -1
  99. package/dist/bin/outpost-heartbeat.test.js +0 -84
  100. package/dist/bin/outpost-heartbeat.test.js.map +0 -1
  101. package/dist/bin/outpost-session-host.test.d.ts +0 -7
  102. package/dist/bin/outpost-session-host.test.d.ts.map +0 -1
  103. package/dist/bin/outpost-session-host.test.js +0 -52
  104. package/dist/bin/outpost-session-host.test.js.map +0 -1
  105. package/dist/bin/sync-mutation.test.d.ts +0 -2
  106. package/dist/bin/sync-mutation.test.d.ts.map +0 -1
  107. package/dist/bin/sync-mutation.test.js +0 -64
  108. package/dist/bin/sync-mutation.test.js.map +0 -1
  109. package/dist/bin/sync-runner-args.test.d.ts +0 -2
  110. package/dist/bin/sync-runner-args.test.d.ts.map +0 -1
  111. package/dist/bin/sync-runner-args.test.js +0 -82
  112. package/dist/bin/sync-runner-args.test.js.map +0 -1
  113. package/dist/bin/sync-runner-auth-wait.test.d.ts +0 -2
  114. package/dist/bin/sync-runner-auth-wait.test.d.ts.map +0 -1
  115. package/dist/bin/sync-runner-auth-wait.test.js +0 -406
  116. package/dist/bin/sync-runner-auth-wait.test.js.map +0 -1
  117. package/dist/bin/sync-runner-backoff.regression.test.d.ts +0 -29
  118. package/dist/bin/sync-runner-backoff.regression.test.d.ts.map +0 -1
  119. package/dist/bin/sync-runner-backoff.regression.test.js +0 -224
  120. package/dist/bin/sync-runner-backoff.regression.test.js.map +0 -1
  121. package/dist/bin/sync-runner-company.test.d.ts +0 -2
  122. package/dist/bin/sync-runner-company.test.d.ts.map +0 -1
  123. package/dist/bin/sync-runner-company.test.js +0 -2439
  124. package/dist/bin/sync-runner-company.test.js.map +0 -1
  125. package/dist/bin/sync-runner-delete-snapshot-mixed.bench.test.d.ts +0 -2
  126. package/dist/bin/sync-runner-delete-snapshot-mixed.bench.test.d.ts.map +0 -1
  127. package/dist/bin/sync-runner-delete-snapshot-mixed.bench.test.js +0 -648
  128. package/dist/bin/sync-runner-delete-snapshot-mixed.bench.test.js.map +0 -1
  129. package/dist/bin/sync-runner-delete-snapshot.bench.test.d.ts +0 -2
  130. package/dist/bin/sync-runner-delete-snapshot.bench.test.d.ts.map +0 -1
  131. package/dist/bin/sync-runner-delete-snapshot.bench.test.js +0 -329
  132. package/dist/bin/sync-runner-delete-snapshot.bench.test.js.map +0 -1
  133. package/dist/bin/sync-runner-events.test.d.ts +0 -2
  134. package/dist/bin/sync-runner-events.test.d.ts.map +0 -1
  135. package/dist/bin/sync-runner-events.test.js +0 -364
  136. package/dist/bin/sync-runner-events.test.js.map +0 -1
  137. package/dist/bin/sync-runner-heap-telemetry.test.d.ts +0 -2
  138. package/dist/bin/sync-runner-heap-telemetry.test.d.ts.map +0 -1
  139. package/dist/bin/sync-runner-heap-telemetry.test.js +0 -1966
  140. package/dist/bin/sync-runner-heap-telemetry.test.js.map +0 -1
  141. package/dist/bin/sync-runner-manifest.test.d.ts +0 -12
  142. package/dist/bin/sync-runner-manifest.test.d.ts.map +0 -1
  143. package/dist/bin/sync-runner-manifest.test.js +0 -921
  144. package/dist/bin/sync-runner-manifest.test.js.map +0 -1
  145. package/dist/bin/sync-runner-planning.test.d.ts +0 -2
  146. package/dist/bin/sync-runner-planning.test.d.ts.map +0 -1
  147. package/dist/bin/sync-runner-planning.test.js +0 -448
  148. package/dist/bin/sync-runner-planning.test.js.map +0 -1
  149. package/dist/bin/sync-runner-post-sync-flags.test.d.ts +0 -2
  150. package/dist/bin/sync-runner-post-sync-flags.test.d.ts.map +0 -1
  151. package/dist/bin/sync-runner-post-sync-flags.test.js +0 -64
  152. package/dist/bin/sync-runner-post-sync-flags.test.js.map +0 -1
  153. package/dist/bin/sync-runner-publish-expansion.test.d.ts +0 -2
  154. package/dist/bin/sync-runner-publish-expansion.test.d.ts.map +0 -1
  155. package/dist/bin/sync-runner-publish-expansion.test.js +0 -54
  156. package/dist/bin/sync-runner-publish-expansion.test.js.map +0 -1
  157. package/dist/bin/sync-runner-receiver-unresolved-company.test.d.ts +0 -2
  158. package/dist/bin/sync-runner-receiver-unresolved-company.test.d.ts.map +0 -1
  159. package/dist/bin/sync-runner-receiver-unresolved-company.test.js +0 -379
  160. package/dist/bin/sync-runner-receiver-unresolved-company.test.js.map +0 -1
  161. package/dist/bin/sync-runner-rollup.test.d.ts +0 -2
  162. package/dist/bin/sync-runner-rollup.test.d.ts.map +0 -1
  163. package/dist/bin/sync-runner-rollup.test.js +0 -24
  164. package/dist/bin/sync-runner-rollup.test.js.map +0 -1
  165. package/dist/bin/sync-runner-watch-loop.test.d.ts +0 -2
  166. package/dist/bin/sync-runner-watch-loop.test.d.ts.map +0 -1
  167. package/dist/bin/sync-runner-watch-loop.test.js +0 -734
  168. package/dist/bin/sync-runner-watch-loop.test.js.map +0 -1
  169. package/dist/bin/sync-runner-watch-routes.test.d.ts +0 -2
  170. package/dist/bin/sync-runner-watch-routes.test.d.ts.map +0 -1
  171. package/dist/bin/sync-runner-watch-routes.test.js +0 -181
  172. package/dist/bin/sync-runner-watch-routes.test.js.map +0 -1
  173. package/dist/bin/sync-runner.test.d.ts +0 -10
  174. package/dist/bin/sync-runner.test.d.ts.map +0 -1
  175. package/dist/bin/sync-runner.test.js +0 -18984
  176. package/dist/bin/sync-runner.test.js.map +0 -1
  177. package/dist/cli/case-alias.test.d.ts +0 -2
  178. package/dist/cli/case-alias.test.d.ts.map +0 -1
  179. package/dist/cli/case-alias.test.js +0 -96
  180. package/dist/cli/case-alias.test.js.map +0 -1
  181. package/dist/cli/conflict-recovery.test.d.ts +0 -2
  182. package/dist/cli/conflict-recovery.test.d.ts.map +0 -1
  183. package/dist/cli/conflict-recovery.test.js +0 -201
  184. package/dist/cli/conflict-recovery.test.js.map +0 -1
  185. package/dist/cli/conflict-winner.test.d.ts +0 -7
  186. package/dist/cli/conflict-winner.test.d.ts.map +0 -1
  187. package/dist/cli/conflict-winner.test.js +0 -98
  188. package/dist/cli/conflict-winner.test.js.map +0 -1
  189. package/dist/cli/doctor.test.d.ts +0 -13
  190. package/dist/cli/doctor.test.d.ts.map +0 -1
  191. package/dist/cli/doctor.test.js +0 -607
  192. package/dist/cli/doctor.test.js.map +0 -1
  193. package/dist/cli/invite.test.d.ts +0 -5
  194. package/dist/cli/invite.test.d.ts.map +0 -1
  195. package/dist/cli/invite.test.js +0 -178
  196. package/dist/cli/invite.test.js.map +0 -1
  197. package/dist/cli/onepass-pull-planner-regressions.test.d.ts +0 -2
  198. package/dist/cli/onepass-pull-planner-regressions.test.d.ts.map +0 -1
  199. package/dist/cli/onepass-pull-planner-regressions.test.js +0 -300
  200. package/dist/cli/onepass-pull-planner-regressions.test.js.map +0 -1
  201. package/dist/cli/onepass-pull-planner.test.d.ts +0 -2
  202. package/dist/cli/onepass-pull-planner.test.d.ts.map +0 -1
  203. package/dist/cli/onepass-pull-planner.test.js +0 -266
  204. package/dist/cli/onepass-pull-planner.test.js.map +0 -1
  205. package/dist/cli/push-scan-exclusions.test.d.ts +0 -2
  206. package/dist/cli/push-scan-exclusions.test.d.ts.map +0 -1
  207. package/dist/cli/push-scan-exclusions.test.js +0 -99
  208. package/dist/cli/push-scan-exclusions.test.js.map +0 -1
  209. package/dist/cli/reindex-knowledge.test.d.ts +0 -12
  210. package/dist/cli/reindex-knowledge.test.d.ts.map +0 -1
  211. package/dist/cli/reindex-knowledge.test.js +0 -260
  212. package/dist/cli/reindex-knowledge.test.js.map +0 -1
  213. package/dist/cli/reindex.test.d.ts +0 -11
  214. package/dist/cli/reindex.test.d.ts.map +0 -1
  215. package/dist/cli/reindex.test.js +0 -811
  216. package/dist/cli/reindex.test.js.map +0 -1
  217. package/dist/cli/rescue-breaker.test.d.ts +0 -2
  218. package/dist/cli/rescue-breaker.test.d.ts.map +0 -1
  219. package/dist/cli/rescue-breaker.test.js +0 -812
  220. package/dist/cli/rescue-breaker.test.js.map +0 -1
  221. package/dist/cli/rescue-classify-ordering.test.d.ts +0 -2
  222. package/dist/cli/rescue-classify-ordering.test.d.ts.map +0 -1
  223. package/dist/cli/rescue-classify-ordering.test.js +0 -500
  224. package/dist/cli/rescue-classify-ordering.test.js.map +0 -1
  225. package/dist/cli/rescue-clone-diagnostics.test.d.ts +0 -2
  226. package/dist/cli/rescue-clone-diagnostics.test.d.ts.map +0 -1
  227. package/dist/cli/rescue-clone-diagnostics.test.js +0 -101
  228. package/dist/cli/rescue-clone-diagnostics.test.js.map +0 -1
  229. package/dist/cli/rescue-clone-network-retry.test.d.ts +0 -2
  230. package/dist/cli/rescue-clone-network-retry.test.d.ts.map +0 -1
  231. package/dist/cli/rescue-clone-network-retry.test.js +0 -415
  232. package/dist/cli/rescue-clone-network-retry.test.js.map +0 -1
  233. package/dist/cli/rescue-core-stamp.test.d.ts +0 -2
  234. package/dist/cli/rescue-core-stamp.test.d.ts.map +0 -1
  235. package/dist/cli/rescue-core-stamp.test.js +0 -364
  236. package/dist/cli/rescue-core-stamp.test.js.map +0 -1
  237. package/dist/cli/rescue-drift-reconcile.test.d.ts +0 -2
  238. package/dist/cli/rescue-drift-reconcile.test.d.ts.map +0 -1
  239. package/dist/cli/rescue-drift-reconcile.test.js +0 -162
  240. package/dist/cli/rescue-drift-reconcile.test.js.map +0 -1
  241. package/dist/cli/rescue-drop-dir-symlink.test.d.ts +0 -2
  242. package/dist/cli/rescue-drop-dir-symlink.test.d.ts.map +0 -1
  243. package/dist/cli/rescue-drop-dir-symlink.test.js +0 -255
  244. package/dist/cli/rescue-drop-dir-symlink.test.js.map +0 -1
  245. package/dist/cli/rescue-exec-bit-preserve.test.d.ts +0 -2
  246. package/dist/cli/rescue-exec-bit-preserve.test.d.ts.map +0 -1
  247. package/dist/cli/rescue-exec-bit-preserve.test.js +0 -177
  248. package/dist/cli/rescue-exec-bit-preserve.test.js.map +0 -1
  249. package/dist/cli/rescue-hq-root-guard.test.d.ts +0 -2
  250. package/dist/cli/rescue-hq-root-guard.test.d.ts.map +0 -1
  251. package/dist/cli/rescue-hq-root-guard.test.js +0 -210
  252. package/dist/cli/rescue-hq-root-guard.test.js.map +0 -1
  253. package/dist/cli/rescue-journal-reconcile.test.d.ts +0 -2
  254. package/dist/cli/rescue-journal-reconcile.test.d.ts.map +0 -1
  255. package/dist/cli/rescue-journal-reconcile.test.js +0 -186
  256. package/dist/cli/rescue-journal-reconcile.test.js.map +0 -1
  257. package/dist/cli/rescue-keep-local-ignore.test.d.ts +0 -2
  258. package/dist/cli/rescue-keep-local-ignore.test.d.ts.map +0 -1
  259. package/dist/cli/rescue-keep-local-ignore.test.js +0 -315
  260. package/dist/cli/rescue-keep-local-ignore.test.js.map +0 -1
  261. package/dist/cli/rescue-move.test.d.ts +0 -2
  262. package/dist/cli/rescue-move.test.d.ts.map +0 -1
  263. package/dist/cli/rescue-move.test.js +0 -166
  264. package/dist/cli/rescue-move.test.js.map +0 -1
  265. package/dist/cli/rescue-mtime-preserve.test.d.ts +0 -2
  266. package/dist/cli/rescue-mtime-preserve.test.d.ts.map +0 -1
  267. package/dist/cli/rescue-mtime-preserve.test.js +0 -186
  268. package/dist/cli/rescue-mtime-preserve.test.js.map +0 -1
  269. package/dist/cli/rescue-preserve-copy-symlink.test.d.ts +0 -2
  270. package/dist/cli/rescue-preserve-copy-symlink.test.d.ts.map +0 -1
  271. package/dist/cli/rescue-preserve-copy-symlink.test.js +0 -483
  272. package/dist/cli/rescue-preserve-copy-symlink.test.js.map +0 -1
  273. package/dist/cli/rescue-realpath.test.d.ts +0 -2
  274. package/dist/cli/rescue-realpath.test.d.ts.map +0 -1
  275. package/dist/cli/rescue-realpath.test.js +0 -109
  276. package/dist/cli/rescue-realpath.test.js.map +0 -1
  277. package/dist/cli/rescue-restore-flag.test.d.ts +0 -2
  278. package/dist/cli/rescue-restore-flag.test.d.ts.map +0 -1
  279. package/dist/cli/rescue-restore-flag.test.js +0 -82
  280. package/dist/cli/rescue-restore-flag.test.js.map +0 -1
  281. package/dist/cli/rescue-rsync-preflight.test.d.ts +0 -2
  282. package/dist/cli/rescue-rsync-preflight.test.d.ts.map +0 -1
  283. package/dist/cli/rescue-rsync-preflight.test.js +0 -579
  284. package/dist/cli/rescue-rsync-preflight.test.js.map +0 -1
  285. package/dist/cli/rescue-rsync-status.test.d.ts +0 -2
  286. package/dist/cli/rescue-rsync-status.test.d.ts.map +0 -1
  287. package/dist/cli/rescue-rsync-status.test.js +0 -406
  288. package/dist/cli/rescue-rsync-status.test.js.map +0 -1
  289. package/dist/cli/rescue-settings-reconcile.test.d.ts +0 -2
  290. package/dist/cli/rescue-settings-reconcile.test.d.ts.map +0 -1
  291. package/dist/cli/rescue-settings-reconcile.test.js +0 -610
  292. package/dist/cli/rescue-settings-reconcile.test.js.map +0 -1
  293. package/dist/cli/rescue-snapshot-copy.test.d.ts +0 -2
  294. package/dist/cli/rescue-snapshot-copy.test.d.ts.map +0 -1
  295. package/dist/cli/rescue-snapshot-copy.test.js +0 -790
  296. package/dist/cli/rescue-snapshot-copy.test.js.map +0 -1
  297. package/dist/cli/rescue-snapshot-recovery.test.d.ts +0 -2
  298. package/dist/cli/rescue-snapshot-recovery.test.d.ts.map +0 -1
  299. package/dist/cli/rescue-snapshot-recovery.test.js +0 -265
  300. package/dist/cli/rescue-snapshot-recovery.test.js.map +0 -1
  301. package/dist/cli/rescue-snapshot.test.d.ts +0 -2
  302. package/dist/cli/rescue-snapshot.test.d.ts.map +0 -1
  303. package/dist/cli/rescue-snapshot.test.js +0 -46
  304. package/dist/cli/rescue-snapshot.test.js.map +0 -1
  305. package/dist/cli/rescue-source-switch-floor.test.d.ts +0 -2
  306. package/dist/cli/rescue-source-switch-floor.test.d.ts.map +0 -1
  307. package/dist/cli/rescue-source-switch-floor.test.js +0 -247
  308. package/dist/cli/rescue-source-switch-floor.test.js.map +0 -1
  309. package/dist/cli/rescue-unchanged-delete.test.d.ts +0 -2
  310. package/dist/cli/rescue-unchanged-delete.test.d.ts.map +0 -1
  311. package/dist/cli/rescue-unchanged-delete.test.js +0 -305
  312. package/dist/cli/rescue-unchanged-delete.test.js.map +0 -1
  313. package/dist/cli/rescue.reindex.test.d.ts +0 -2
  314. package/dist/cli/rescue.reindex.test.d.ts.map +0 -1
  315. package/dist/cli/rescue.reindex.test.js +0 -72
  316. package/dist/cli/rescue.reindex.test.js.map +0 -1
  317. package/dist/cli/rescue.test.d.ts +0 -2
  318. package/dist/cli/rescue.test.d.ts.map +0 -1
  319. package/dist/cli/rescue.test.js +0 -127
  320. package/dist/cli/rescue.test.js.map +0 -1
  321. package/dist/cli/share-plan-limit-presign.test.d.ts +0 -2
  322. package/dist/cli/share-plan-limit-presign.test.d.ts.map +0 -1
  323. package/dist/cli/share-plan-limit-presign.test.js +0 -271
  324. package/dist/cli/share-plan-limit-presign.test.js.map +0 -1
  325. package/dist/cli/share-presign-transport.test.d.ts +0 -22
  326. package/dist/cli/share-presign-transport.test.d.ts.map +0 -1
  327. package/dist/cli/share-presign-transport.test.js +0 -388
  328. package/dist/cli/share-presign-transport.test.js.map +0 -1
  329. package/dist/cli/share.test.d.ts +0 -5
  330. package/dist/cli/share.test.d.ts.map +0 -1
  331. package/dist/cli/share.test.js +0 -12335
  332. package/dist/cli/share.test.js.map +0 -1
  333. package/dist/cli/streaming-pull-planner.bench.test.d.ts +0 -15
  334. package/dist/cli/streaming-pull-planner.bench.test.d.ts.map +0 -1
  335. package/dist/cli/streaming-pull-planner.bench.test.js +0 -273
  336. package/dist/cli/streaming-pull-planner.bench.test.js.map +0 -1
  337. package/dist/cli/sync-scope.test.d.ts +0 -22
  338. package/dist/cli/sync-scope.test.d.ts.map +0 -1
  339. package/dist/cli/sync-scope.test.js +0 -903
  340. package/dist/cli/sync-scope.test.js.map +0 -1
  341. package/dist/cli/sync.test.d.ts +0 -5
  342. package/dist/cli/sync.test.d.ts.map +0 -1
  343. package/dist/cli/sync.test.js +0 -9028
  344. package/dist/cli/sync.test.js.map +0 -1
  345. package/dist/cli/tombstones.test.d.ts +0 -2
  346. package/dist/cli/tombstones.test.d.ts.map +0 -1
  347. package/dist/cli/tombstones.test.js +0 -120
  348. package/dist/cli/tombstones.test.js.map +0 -1
  349. package/dist/cli/watch-event-push-conflict.test.d.ts +0 -25
  350. package/dist/cli/watch-event-push-conflict.test.d.ts.map +0 -1
  351. package/dist/cli/watch-event-push-conflict.test.js +0 -230
  352. package/dist/cli/watch-event-push-conflict.test.js.map +0 -1
  353. package/dist/client-info.test.d.ts +0 -11
  354. package/dist/client-info.test.d.ts.map +0 -1
  355. package/dist/client-info.test.js +0 -168
  356. package/dist/client-info.test.js.map +0 -1
  357. package/dist/cognito-auth-lock-no-hard-links.test.d.ts +0 -11
  358. package/dist/cognito-auth-lock-no-hard-links.test.d.ts.map +0 -1
  359. package/dist/cognito-auth-lock-no-hard-links.test.js +0 -76
  360. package/dist/cognito-auth-lock-no-hard-links.test.js.map +0 -1
  361. package/dist/cognito-auth.test.d.ts +0 -9
  362. package/dist/cognito-auth.test.d.ts.map +0 -1
  363. package/dist/cognito-auth.test.js +0 -745
  364. package/dist/cognito-auth.test.js.map +0 -1
  365. package/dist/company-resolver.test.d.ts +0 -7
  366. package/dist/company-resolver.test.d.ts.map +0 -1
  367. package/dist/company-resolver.test.js +0 -533
  368. package/dist/company-resolver.test.js.map +0 -1
  369. package/dist/company-slug.test.d.ts +0 -7
  370. package/dist/company-slug.test.d.ts.map +0 -1
  371. package/dist/company-slug.test.js +0 -43
  372. package/dist/company-slug.test.js.map +0 -1
  373. package/dist/company-vault-transport.test.d.ts +0 -12
  374. package/dist/company-vault-transport.test.d.ts.map +0 -1
  375. package/dist/company-vault-transport.test.js +0 -97
  376. package/dist/company-vault-transport.test.js.map +0 -1
  377. package/dist/context.test.d.ts +0 -7
  378. package/dist/context.test.d.ts.map +0 -1
  379. package/dist/context.test.js +0 -646
  380. package/dist/context.test.js.map +0 -1
  381. package/dist/entity-resolver.test.d.ts +0 -10
  382. package/dist/entity-resolver.test.d.ts.map +0 -1
  383. package/dist/entity-resolver.test.js +0 -244
  384. package/dist/entity-resolver.test.js.map +0 -1
  385. package/dist/getindigo-dead-refs-contract.test.d.ts +0 -2
  386. package/dist/getindigo-dead-refs-contract.test.d.ts.map +0 -1
  387. package/dist/getindigo-dead-refs-contract.test.js +0 -58
  388. package/dist/getindigo-dead-refs-contract.test.js.map +0 -1
  389. package/dist/hermetic-test-env.test.d.ts +0 -2
  390. package/dist/hermetic-test-env.test.d.ts.map +0 -1
  391. package/dist/hermetic-test-env.test.js +0 -61
  392. package/dist/hermetic-test-env.test.js.map +0 -1
  393. package/dist/hq-root-recovery.test.d.ts +0 -2
  394. package/dist/hq-root-recovery.test.d.ts.map +0 -1
  395. package/dist/hq-root-recovery.test.js +0 -65
  396. package/dist/hq-root-recovery.test.js.map +0 -1
  397. package/dist/ignore.test.d.ts +0 -10
  398. package/dist/ignore.test.d.ts.map +0 -1
  399. package/dist/ignore.test.js +0 -926
  400. package/dist/ignore.test.js.map +0 -1
  401. package/dist/index.test.d.ts +0 -2
  402. package/dist/index.test.d.ts.map +0 -1
  403. package/dist/index.test.js +0 -26
  404. package/dist/index.test.js.map +0 -1
  405. package/dist/journal-area-ledger-read-boundary.test.d.ts +0 -2
  406. package/dist/journal-area-ledger-read-boundary.test.d.ts.map +0 -1
  407. package/dist/journal-area-ledger-read-boundary.test.js +0 -420
  408. package/dist/journal-area-ledger-read-boundary.test.js.map +0 -1
  409. package/dist/journal-baseline.test.d.ts +0 -2
  410. package/dist/journal-baseline.test.d.ts.map +0 -1
  411. package/dist/journal-baseline.test.js +0 -218
  412. package/dist/journal-baseline.test.js.map +0 -1
  413. package/dist/journal-decode-window.test.d.ts +0 -2
  414. package/dist/journal-decode-window.test.d.ts.map +0 -1
  415. package/dist/journal-decode-window.test.js +0 -99
  416. package/dist/journal-decode-window.test.js.map +0 -1
  417. package/dist/journal-delta-writes.test.d.ts +0 -2
  418. package/dist/journal-delta-writes.test.d.ts.map +0 -1
  419. package/dist/journal-delta-writes.test.js +0 -159
  420. package/dist/journal-delta-writes.test.js.map +0 -1
  421. package/dist/journal-ledger-index.test.d.ts +0 -15
  422. package/dist/journal-ledger-index.test.d.ts.map +0 -1
  423. package/dist/journal-ledger-index.test.js +0 -269
  424. package/dist/journal-ledger-index.test.js.map +0 -1
  425. package/dist/journal-public-boundary.test.d.ts +0 -2
  426. package/dist/journal-public-boundary.test.d.ts.map +0 -1
  427. package/dist/journal-public-boundary.test.js +0 -216
  428. package/dist/journal-public-boundary.test.js.map +0 -1
  429. package/dist/journal-row-store.test.d.ts +0 -2
  430. package/dist/journal-row-store.test.d.ts.map +0 -1
  431. package/dist/journal-row-store.test.js +0 -729
  432. package/dist/journal-row-store.test.js.map +0 -1
  433. package/dist/journal-snapshot-memory-helpers.d.ts +0 -33
  434. package/dist/journal-snapshot-memory-helpers.d.ts.map +0 -1
  435. package/dist/journal-snapshot-memory-helpers.js +0 -212
  436. package/dist/journal-snapshot-memory-helpers.js.map +0 -1
  437. package/dist/journal-snapshot-memory.test.d.ts +0 -2
  438. package/dist/journal-snapshot-memory.test.d.ts.map +0 -1
  439. package/dist/journal-snapshot-memory.test.js +0 -47
  440. package/dist/journal-snapshot-memory.test.js.map +0 -1
  441. package/dist/journal-snapshot-v4-memory.test.d.ts +0 -2
  442. package/dist/journal-snapshot-v4-memory.test.d.ts.map +0 -1
  443. package/dist/journal-snapshot-v4-memory.test.js +0 -24
  444. package/dist/journal-snapshot-v4-memory.test.js.map +0 -1
  445. package/dist/journal-snapshot-v4-writer-memory.test.d.ts +0 -2
  446. package/dist/journal-snapshot-v4-writer-memory.test.d.ts.map +0 -1
  447. package/dist/journal-snapshot-v4-writer-memory.test.js +0 -76
  448. package/dist/journal-snapshot-v4-writer-memory.test.js.map +0 -1
  449. package/dist/journal-snapshot-v4-writer.test.d.ts +0 -2
  450. package/dist/journal-snapshot-v4-writer.test.d.ts.map +0 -1
  451. package/dist/journal-snapshot-v4-writer.test.js +0 -282
  452. package/dist/journal-snapshot-v4-writer.test.js.map +0 -1
  453. package/dist/journal-snapshot-v4.test.d.ts +0 -2
  454. package/dist/journal-snapshot-v4.test.d.ts.map +0 -1
  455. package/dist/journal-snapshot-v4.test.js +0 -281
  456. package/dist/journal-snapshot-v4.test.js.map +0 -1
  457. package/dist/journal-store.test.d.ts +0 -2
  458. package/dist/journal-store.test.d.ts.map +0 -1
  459. package/dist/journal-store.test.js +0 -1227
  460. package/dist/journal-store.test.js.map +0 -1
  461. package/dist/journal-streaming.heap.test.d.ts +0 -2
  462. package/dist/journal-streaming.heap.test.d.ts.map +0 -1
  463. package/dist/journal-streaming.heap.test.js +0 -190
  464. package/dist/journal-streaming.heap.test.js.map +0 -1
  465. package/dist/journal.test.d.ts +0 -9
  466. package/dist/journal.test.d.ts.map +0 -1
  467. package/dist/journal.test.js +0 -1074
  468. package/dist/journal.test.js.map +0 -1
  469. package/dist/kms10-etag-safe-pull.test.d.ts +0 -2
  470. package/dist/kms10-etag-safe-pull.test.d.ts.map +0 -1
  471. package/dist/kms10-etag-safe-pull.test.js +0 -53
  472. package/dist/kms10-etag-safe-pull.test.js.map +0 -1
  473. package/dist/lib/cloud-authoritative.test.d.ts +0 -2
  474. package/dist/lib/cloud-authoritative.test.d.ts.map +0 -1
  475. package/dist/lib/cloud-authoritative.test.js +0 -42
  476. package/dist/lib/cloud-authoritative.test.js.map +0 -1
  477. package/dist/lib/conflict-reconcile.test.d.ts +0 -7
  478. package/dist/lib/conflict-reconcile.test.d.ts.map +0 -1
  479. package/dist/lib/conflict-reconcile.test.js +0 -246
  480. package/dist/lib/conflict-reconcile.test.js.map +0 -1
  481. package/dist/lib/conflict.test.d.ts +0 -9
  482. package/dist/lib/conflict.test.d.ts.map +0 -1
  483. package/dist/lib/conflict.test.js +0 -340
  484. package/dist/lib/conflict.test.js.map +0 -1
  485. package/dist/lib/describe-error.test.d.ts +0 -2
  486. package/dist/lib/describe-error.test.d.ts.map +0 -1
  487. package/dist/lib/describe-error.test.js +0 -148
  488. package/dist/lib/describe-error.test.js.map +0 -1
  489. package/dist/lib/machine-id.test.d.ts +0 -8
  490. package/dist/lib/machine-id.test.d.ts.map +0 -1
  491. package/dist/lib/machine-id.test.js +0 -228
  492. package/dist/lib/machine-id.test.js.map +0 -1
  493. package/dist/lib/net-errors.test.d.ts +0 -2
  494. package/dist/lib/net-errors.test.d.ts.map +0 -1
  495. package/dist/lib/net-errors.test.js +0 -111
  496. package/dist/lib/net-errors.test.js.map +0 -1
  497. package/dist/lib/ontology-entity-meta.test.d.ts +0 -2
  498. package/dist/lib/ontology-entity-meta.test.d.ts.map +0 -1
  499. package/dist/lib/ontology-entity-meta.test.js +0 -79
  500. package/dist/lib/ontology-entity-meta.test.js.map +0 -1
  501. package/dist/lib/ontology-entity-push.test.d.ts +0 -2
  502. package/dist/lib/ontology-entity-push.test.d.ts.map +0 -1
  503. package/dist/lib/ontology-entity-push.test.js +0 -156
  504. package/dist/lib/ontology-entity-push.test.js.map +0 -1
  505. package/dist/lib/personal-connector-settings-sync.test.d.ts +0 -2
  506. package/dist/lib/personal-connector-settings-sync.test.d.ts.map +0 -1
  507. package/dist/lib/personal-connector-settings-sync.test.js +0 -34
  508. package/dist/lib/personal-connector-settings-sync.test.js.map +0 -1
  509. package/dist/lib/readlink-safe.test.d.ts +0 -2
  510. package/dist/lib/readlink-safe.test.d.ts.map +0 -1
  511. package/dist/lib/readlink-safe.test.js +0 -34
  512. package/dist/lib/readlink-safe.test.js.map +0 -1
  513. package/dist/lib/s3-content-checksum.test.d.ts +0 -2
  514. package/dist/lib/s3-content-checksum.test.d.ts.map +0 -1
  515. package/dist/lib/s3-content-checksum.test.js +0 -26
  516. package/dist/lib/s3-content-checksum.test.js.map +0 -1
  517. package/dist/lib/skill-register-landed-bytes.test.d.ts +0 -2
  518. package/dist/lib/skill-register-landed-bytes.test.d.ts.map +0 -1
  519. package/dist/lib/skill-register-landed-bytes.test.js +0 -83
  520. package/dist/lib/skill-register-landed-bytes.test.js.map +0 -1
  521. package/dist/local-path-codec.test.d.ts +0 -14
  522. package/dist/local-path-codec.test.d.ts.map +0 -1
  523. package/dist/local-path-codec.test.js +0 -122
  524. package/dist/local-path-codec.test.js.map +0 -1
  525. package/dist/machine-auth.test.d.ts +0 -14
  526. package/dist/machine-auth.test.d.ts.map +0 -1
  527. package/dist/machine-auth.test.js +0 -1482
  528. package/dist/machine-auth.test.js.map +0 -1
  529. package/dist/machine-token-cache-isolation.test.d.ts +0 -24
  530. package/dist/machine-token-cache-isolation.test.d.ts.map +0 -1
  531. package/dist/machine-token-cache-isolation.test.js +0 -284
  532. package/dist/machine-token-cache-isolation.test.js.map +0 -1
  533. package/dist/manifest/US-002.acceptance.test.d.ts +0 -11
  534. package/dist/manifest/US-002.acceptance.test.d.ts.map +0 -1
  535. package/dist/manifest/US-002.acceptance.test.js +0 -160
  536. package/dist/manifest/US-002.acceptance.test.js.map +0 -1
  537. package/dist/manifest/US-004.acceptance.test.d.ts +0 -12
  538. package/dist/manifest/US-004.acceptance.test.d.ts.map +0 -1
  539. package/dist/manifest/US-004.acceptance.test.js +0 -173
  540. package/dist/manifest/US-004.acceptance.test.js.map +0 -1
  541. package/dist/manifest/build-manifest-resident-parity.test.d.ts +0 -2
  542. package/dist/manifest/build-manifest-resident-parity.test.d.ts.map +0 -1
  543. package/dist/manifest/build-manifest-resident-parity.test.js +0 -69
  544. package/dist/manifest/build-manifest-resident-parity.test.js.map +0 -1
  545. package/dist/manifest/build-manifest.bench.test.d.ts +0 -22
  546. package/dist/manifest/build-manifest.bench.test.d.ts.map +0 -1
  547. package/dist/manifest/build-manifest.bench.test.js +0 -930
  548. package/dist/manifest/build-manifest.bench.test.js.map +0 -1
  549. package/dist/manifest/build-manifest.test.d.ts +0 -10
  550. package/dist/manifest/build-manifest.test.d.ts.map +0 -1
  551. package/dist/manifest/build-manifest.test.js +0 -1217
  552. package/dist/manifest/build-manifest.test.js.map +0 -1
  553. package/dist/manifest/contract.test.d.ts +0 -17
  554. package/dist/manifest/contract.test.d.ts.map +0 -1
  555. package/dist/manifest/contract.test.js +0 -346
  556. package/dist/manifest/contract.test.js.map +0 -1
  557. package/dist/manifest/import-graph.test.d.ts +0 -25
  558. package/dist/manifest/import-graph.test.d.ts.map +0 -1
  559. package/dist/manifest/import-graph.test.js +0 -120
  560. package/dist/manifest/import-graph.test.js.map +0 -1
  561. package/dist/manifest/ledger-shard-isolation.test.d.ts +0 -18
  562. package/dist/manifest/ledger-shard-isolation.test.d.ts.map +0 -1
  563. package/dist/manifest/ledger-shard-isolation.test.js +0 -153
  564. package/dist/manifest/ledger-shard-isolation.test.js.map +0 -1
  565. package/dist/manifest/snapshot-store.test.d.ts +0 -11
  566. package/dist/manifest/snapshot-store.test.d.ts.map +0 -1
  567. package/dist/manifest/snapshot-store.test.js +0 -206
  568. package/dist/manifest/snapshot-store.test.js.map +0 -1
  569. package/dist/manifest/upload-manifest.test.d.ts +0 -10
  570. package/dist/manifest/upload-manifest.test.d.ts.map +0 -1
  571. package/dist/manifest/upload-manifest.test.js +0 -1335
  572. package/dist/manifest/upload-manifest.test.js.map +0 -1
  573. package/dist/manifest-reconcile.test.d.ts +0 -2
  574. package/dist/manifest-reconcile.test.d.ts.map +0 -1
  575. package/dist/manifest-reconcile.test.js +0 -1029
  576. package/dist/manifest-reconcile.test.js.map +0 -1
  577. package/dist/object-io.test.d.ts +0 -11
  578. package/dist/object-io.test.d.ts.map +0 -1
  579. package/dist/object-io.test.js +0 -2376
  580. package/dist/object-io.test.js.map +0 -1
  581. package/dist/operation-lock.test.d.ts +0 -5
  582. package/dist/operation-lock.test.d.ts.map +0 -1
  583. package/dist/operation-lock.test.js +0 -796
  584. package/dist/operation-lock.test.js.map +0 -1
  585. package/dist/outcome-telemetry.test.d.ts +0 -9
  586. package/dist/outcome-telemetry.test.d.ts.map +0 -1
  587. package/dist/outcome-telemetry.test.js +0 -663
  588. package/dist/outcome-telemetry.test.js.map +0 -1
  589. package/dist/outposts/client.test.d.ts +0 -9
  590. package/dist/outposts/client.test.d.ts.map +0 -1
  591. package/dist/outposts/client.test.js +0 -415
  592. package/dist/outposts/client.test.js.map +0 -1
  593. package/dist/outposts/command.test.d.ts +0 -18
  594. package/dist/outposts/command.test.d.ts.map +0 -1
  595. package/dist/outposts/command.test.js +0 -1230
  596. package/dist/outposts/command.test.js.map +0 -1
  597. package/dist/outposts/replica-sync.test.d.ts +0 -2
  598. package/dist/outposts/replica-sync.test.d.ts.map +0 -1
  599. package/dist/outposts/replica-sync.test.js +0 -224
  600. package/dist/outposts/replica-sync.test.js.map +0 -1
  601. package/dist/outposts/self-deploy.test.d.ts +0 -2
  602. package/dist/outposts/self-deploy.test.d.ts.map +0 -1
  603. package/dist/outposts/self-deploy.test.js +0 -218
  604. package/dist/outposts/self-deploy.test.js.map +0 -1
  605. package/dist/outposts/session-heartbeat-bounds.test.d.ts +0 -25
  606. package/dist/outposts/session-heartbeat-bounds.test.d.ts.map +0 -1
  607. package/dist/outposts/session-heartbeat-bounds.test.js +0 -156
  608. package/dist/outposts/session-heartbeat-bounds.test.js.map +0 -1
  609. package/dist/outposts/session-heartbeat-guard.test.d.ts +0 -16
  610. package/dist/outposts/session-heartbeat-guard.test.d.ts.map +0 -1
  611. package/dist/outposts/session-heartbeat-guard.test.js +0 -88
  612. package/dist/outposts/session-heartbeat-guard.test.js.map +0 -1
  613. package/dist/outposts/session-heartbeat-publisher.test.d.ts +0 -10
  614. package/dist/outposts/session-heartbeat-publisher.test.d.ts.map +0 -1
  615. package/dist/outposts/session-heartbeat-publisher.test.js +0 -153
  616. package/dist/outposts/session-heartbeat-publisher.test.js.map +0 -1
  617. package/dist/outposts/session-heartbeat-retain-guard.test.d.ts +0 -18
  618. package/dist/outposts/session-heartbeat-retain-guard.test.d.ts.map +0 -1
  619. package/dist/outposts/session-heartbeat-retain-guard.test.js +0 -106
  620. package/dist/outposts/session-heartbeat-retain-guard.test.js.map +0 -1
  621. package/dist/outposts/session-heartbeat-scan.test.d.ts +0 -20
  622. package/dist/outposts/session-heartbeat-scan.test.d.ts.map +0 -1
  623. package/dist/outposts/session-heartbeat-scan.test.js +0 -241
  624. package/dist/outposts/session-heartbeat-scan.test.js.map +0 -1
  625. package/dist/outposts/session-heartbeat.test.d.ts +0 -11
  626. package/dist/outposts/session-heartbeat.test.d.ts.map +0 -1
  627. package/dist/outposts/session-heartbeat.test.js +0 -370
  628. package/dist/outposts/session-heartbeat.test.js.map +0 -1
  629. package/dist/outposts/session-host-auth.test.d.ts +0 -16
  630. package/dist/outposts/session-host-auth.test.d.ts.map +0 -1
  631. package/dist/outposts/session-host-auth.test.js +0 -284
  632. package/dist/outposts/session-host-auth.test.js.map +0 -1
  633. package/dist/outposts/session-host-command.test.d.ts +0 -10
  634. package/dist/outposts/session-host-command.test.d.ts.map +0 -1
  635. package/dist/outposts/session-host-command.test.js +0 -180
  636. package/dist/outposts/session-host-command.test.js.map +0 -1
  637. package/dist/outposts/session-host-connection.test.d.ts +0 -18
  638. package/dist/outposts/session-host-connection.test.d.ts.map +0 -1
  639. package/dist/outposts/session-host-connection.test.js +0 -392
  640. package/dist/outposts/session-host-connection.test.js.map +0 -1
  641. package/dist/outposts/session-host-fakes.d.ts +0 -61
  642. package/dist/outposts/session-host-fakes.d.ts.map +0 -1
  643. package/dist/outposts/session-host-fakes.js +0 -115
  644. package/dist/outposts/session-host-fakes.js.map +0 -1
  645. package/dist/outposts/session-host-ndjson.test.d.ts +0 -11
  646. package/dist/outposts/session-host-ndjson.test.d.ts.map +0 -1
  647. package/dist/outposts/session-host-ndjson.test.js +0 -73
  648. package/dist/outposts/session-host-ndjson.test.js.map +0 -1
  649. package/dist/outposts/session-host-protocol.test.d.ts +0 -15
  650. package/dist/outposts/session-host-protocol.test.d.ts.map +0 -1
  651. package/dist/outposts/session-host-protocol.test.js +0 -0
  652. package/dist/outposts/session-host-protocol.test.js.map +0 -1
  653. package/dist/outposts/session-host-server.test.d.ts +0 -10
  654. package/dist/outposts/session-host-server.test.d.ts.map +0 -1
  655. package/dist/outposts/session-host-server.test.js +0 -118
  656. package/dist/outposts/session-host-server.test.js.map +0 -1
  657. package/dist/outposts/session-host-sessions.test.d.ts +0 -18
  658. package/dist/outposts/session-host-sessions.test.d.ts.map +0 -1
  659. package/dist/outposts/session-host-sessions.test.js +0 -439
  660. package/dist/outposts/session-host-sessions.test.js.map +0 -1
  661. package/dist/outposts/terminal.test.d.ts +0 -2
  662. package/dist/outposts/terminal.test.d.ts.map +0 -1
  663. package/dist/outposts/terminal.test.js +0 -146
  664. package/dist/outposts/terminal.test.js.map +0 -1
  665. package/dist/outposts/transport.test.d.ts +0 -10
  666. package/dist/outposts/transport.test.d.ts.map +0 -1
  667. package/dist/outposts/transport.test.js +0 -205
  668. package/dist/outposts/transport.test.js.map +0 -1
  669. package/dist/packed-journal-phase2.test.d.ts +0 -2
  670. package/dist/packed-journal-phase2.test.d.ts.map +0 -1
  671. package/dist/packed-journal-phase2.test.js +0 -273
  672. package/dist/packed-journal-phase2.test.js.map +0 -1
  673. package/dist/path-ancestors.test.d.ts +0 -2
  674. package/dist/path-ancestors.test.d.ts.map +0 -1
  675. package/dist/path-ancestors.test.js +0 -21
  676. package/dist/path-ancestors.test.js.map +0 -1
  677. package/dist/personal-vault-exclusions.test.d.ts +0 -22
  678. package/dist/personal-vault-exclusions.test.d.ts.map +0 -1
  679. package/dist/personal-vault-exclusions.test.js +0 -294
  680. package/dist/personal-vault-exclusions.test.js.map +0 -1
  681. package/dist/personal-vault.test.d.ts +0 -18
  682. package/dist/personal-vault.test.d.ts.map +0 -1
  683. package/dist/personal-vault.test.js +0 -1099
  684. package/dist/personal-vault.test.js.map +0 -1
  685. package/dist/plan-limit-pause.test.d.ts +0 -2
  686. package/dist/plan-limit-pause.test.d.ts.map +0 -1
  687. package/dist/plan-limit-pause.test.js +0 -150
  688. package/dist/plan-limit-pause.test.js.map +0 -1
  689. package/dist/plan-limit.fixtures.d.ts +0 -34
  690. package/dist/plan-limit.fixtures.d.ts.map +0 -1
  691. package/dist/plan-limit.fixtures.js +0 -96
  692. package/dist/plan-limit.fixtures.js.map +0 -1
  693. package/dist/plan-limit.test.d.ts +0 -2
  694. package/dist/plan-limit.test.d.ts.map +0 -1
  695. package/dist/plan-limit.test.js +0 -132
  696. package/dist/plan-limit.test.js.map +0 -1
  697. package/dist/prefix-coalesce.test.d.ts +0 -2
  698. package/dist/prefix-coalesce.test.d.ts.map +0 -1
  699. package/dist/prefix-coalesce.test.js +0 -260
  700. package/dist/prefix-coalesce.test.js.map +0 -1
  701. package/dist/private-folder-transport.test.d.ts +0 -2
  702. package/dist/private-folder-transport.test.d.ts.map +0 -1
  703. package/dist/private-folder-transport.test.js +0 -33
  704. package/dist/private-folder-transport.test.js.map +0 -1
  705. package/dist/public-surface.test.d.ts +0 -15
  706. package/dist/public-surface.test.d.ts.map +0 -1
  707. package/dist/public-surface.test.js +0 -110
  708. package/dist/public-surface.test.js.map +0 -1
  709. package/dist/qmd-reindex.test.d.ts +0 -14
  710. package/dist/qmd-reindex.test.d.ts.map +0 -1
  711. package/dist/qmd-reindex.test.js +0 -899
  712. package/dist/qmd-reindex.test.js.map +0 -1
  713. package/dist/read-only-state-dir.test.d.ts +0 -27
  714. package/dist/read-only-state-dir.test.d.ts.map +0 -1
  715. package/dist/read-only-state-dir.test.js +0 -167
  716. package/dist/read-only-state-dir.test.js.map +0 -1
  717. package/dist/remote-pull.test.d.ts +0 -2
  718. package/dist/remote-pull.test.d.ts.map +0 -1
  719. package/dist/remote-pull.test.js +0 -1147
  720. package/dist/remote-pull.test.js.map +0 -1
  721. package/dist/s3-download-stream-hash.test.d.ts +0 -2
  722. package/dist/s3-download-stream-hash.test.d.ts.map +0 -1
  723. package/dist/s3-download-stream-hash.test.js +0 -70
  724. package/dist/s3-download-stream-hash.test.js.map +0 -1
  725. package/dist/s3.list-cost.test.d.ts +0 -2
  726. package/dist/s3.list-cost.test.d.ts.map +0 -1
  727. package/dist/s3.list-cost.test.js +0 -51
  728. package/dist/s3.list-cost.test.js.map +0 -1
  729. package/dist/s3.rename-retry.test.d.ts +0 -2
  730. package/dist/s3.rename-retry.test.d.ts.map +0 -1
  731. package/dist/s3.rename-retry.test.js +0 -217
  732. package/dist/s3.rename-retry.test.js.map +0 -1
  733. package/dist/s3.symlink-materialize.test.d.ts +0 -18
  734. package/dist/s3.symlink-materialize.test.d.ts.map +0 -1
  735. package/dist/s3.symlink-materialize.test.js +0 -579
  736. package/dist/s3.symlink-materialize.test.js.map +0 -1
  737. package/dist/s3.test.d.ts +0 -9
  738. package/dist/s3.test.d.ts.map +0 -1
  739. package/dist/s3.test.js +0 -2047
  740. package/dist/s3.test.js.map +0 -1
  741. package/dist/s3.windows-portability.test.d.ts +0 -12
  742. package/dist/s3.windows-portability.test.d.ts.map +0 -1
  743. package/dist/s3.windows-portability.test.js +0 -223
  744. package/dist/s3.windows-portability.test.js.map +0 -1
  745. package/dist/schemas/signal-types.test.d.ts +0 -2
  746. package/dist/schemas/signal-types.test.d.ts.map +0 -1
  747. package/dist/schemas/signal-types.test.js +0 -65
  748. package/dist/schemas/signal-types.test.js.map +0 -1
  749. package/dist/schemas/source-channels.test.d.ts +0 -2
  750. package/dist/schemas/source-channels.test.d.ts.map +0 -1
  751. package/dist/schemas/source-channels.test.js +0 -65
  752. package/dist/schemas/source-channels.test.js.map +0 -1
  753. package/dist/scope-shrink.test.d.ts +0 -13
  754. package/dist/scope-shrink.test.d.ts.map +0 -1
  755. package/dist/scope-shrink.test.js +0 -558
  756. package/dist/scope-shrink.test.js.map +0 -1
  757. package/dist/session-log-capture.test.d.ts +0 -2
  758. package/dist/session-log-capture.test.d.ts.map +0 -1
  759. package/dist/session-log-capture.test.js +0 -533
  760. package/dist/session-log-capture.test.js.map +0 -1
  761. package/dist/session-log-retention.test.d.ts +0 -2
  762. package/dist/session-log-retention.test.d.ts.map +0 -1
  763. package/dist/session-log-retention.test.js +0 -383
  764. package/dist/session-log-retention.test.js.map +0 -1
  765. package/dist/signals/get.test.d.ts +0 -5
  766. package/dist/signals/get.test.d.ts.map +0 -1
  767. package/dist/signals/get.test.js +0 -254
  768. package/dist/signals/get.test.js.map +0 -1
  769. package/dist/signals/list.test.d.ts +0 -9
  770. package/dist/signals/list.test.d.ts.map +0 -1
  771. package/dist/signals/list.test.js +0 -330
  772. package/dist/signals/list.test.js.map +0 -1
  773. package/dist/skill-telemetry.test.d.ts +0 -2
  774. package/dist/skill-telemetry.test.d.ts.map +0 -1
  775. package/dist/skill-telemetry.test.js +0 -1484
  776. package/dist/skill-telemetry.test.js.map +0 -1
  777. package/dist/sources/get.test.d.ts +0 -5
  778. package/dist/sources/get.test.d.ts.map +0 -1
  779. package/dist/sources/get.test.js +0 -236
  780. package/dist/sources/get.test.js.map +0 -1
  781. package/dist/sources/list.test.d.ts +0 -8
  782. package/dist/sources/list.test.d.ts.map +0 -1
  783. package/dist/sources/list.test.js +0 -318
  784. package/dist/sources/list.test.js.map +0 -1
  785. package/dist/sts-credential-refresh.test.d.ts +0 -2
  786. package/dist/sts-credential-refresh.test.d.ts.map +0 -1
  787. package/dist/sts-credential-refresh.test.js +0 -181
  788. package/dist/sts-credential-refresh.test.js.map +0 -1
  789. package/dist/swallowed-error-sites.test.d.ts +0 -2
  790. package/dist/swallowed-error-sites.test.d.ts.map +0 -1
  791. package/dist/swallowed-error-sites.test.js +0 -199
  792. package/dist/swallowed-error-sites.test.js.map +0 -1
  793. package/dist/swallowed-error-w32.test.d.ts +0 -2
  794. package/dist/swallowed-error-w32.test.d.ts.map +0 -1
  795. package/dist/swallowed-error-w32.test.js +0 -171
  796. package/dist/swallowed-error-w32.test.js.map +0 -1
  797. package/dist/swallowed-error-w33.test.d.ts +0 -2
  798. package/dist/swallowed-error-w33.test.d.ts.map +0 -1
  799. package/dist/swallowed-error-w33.test.js +0 -125
  800. package/dist/swallowed-error-w33.test.js.map +0 -1
  801. package/dist/swallowed-error-w34.test.d.ts +0 -2
  802. package/dist/swallowed-error-w34.test.d.ts.map +0 -1
  803. package/dist/swallowed-error-w34.test.js +0 -110
  804. package/dist/swallowed-error-w34.test.js.map +0 -1
  805. package/dist/swallowed-error-w35.test.d.ts +0 -2
  806. package/dist/swallowed-error-w35.test.d.ts.map +0 -1
  807. package/dist/swallowed-error-w35.test.js +0 -223
  808. package/dist/swallowed-error-w35.test.js.map +0 -1
  809. package/dist/sync/area-ledger-auto-migration.test.d.ts +0 -2
  810. package/dist/sync/area-ledger-auto-migration.test.d.ts.map +0 -1
  811. package/dist/sync/area-ledger-auto-migration.test.js +0 -291
  812. package/dist/sync/area-ledger-auto-migration.test.js.map +0 -1
  813. package/dist/sync/area-ledger-migration.test.d.ts +0 -2
  814. package/dist/sync/area-ledger-migration.test.d.ts.map +0 -1
  815. package/dist/sync/area-ledger-migration.test.js +0 -554
  816. package/dist/sync/area-ledger-migration.test.js.map +0 -1
  817. package/dist/sync/area-ledger-recovery.bench.test.d.ts +0 -2
  818. package/dist/sync/area-ledger-recovery.bench.test.d.ts.map +0 -1
  819. package/dist/sync/area-ledger-recovery.bench.test.js +0 -60
  820. package/dist/sync/area-ledger-recovery.bench.test.js.map +0 -1
  821. package/dist/sync/area-ledger-writer-lock.bench.test.d.ts +0 -2
  822. package/dist/sync/area-ledger-writer-lock.bench.test.d.ts.map +0 -1
  823. package/dist/sync/area-ledger-writer-lock.bench.test.js +0 -57
  824. package/dist/sync/area-ledger-writer-lock.bench.test.js.map +0 -1
  825. package/dist/sync/area-ledger.test.d.ts +0 -2
  826. package/dist/sync/area-ledger.test.d.ts.map +0 -1
  827. package/dist/sync/area-ledger.test.js +0 -1401
  828. package/dist/sync/area-ledger.test.js.map +0 -1
  829. package/dist/sync/area-resolver.test.d.ts +0 -2
  830. package/dist/sync/area-resolver.test.d.ts.map +0 -1
  831. package/dist/sync/area-resolver.test.js +0 -234
  832. package/dist/sync/area-resolver.test.js.map +0 -1
  833. package/dist/sync/base-version-resolver.test.d.ts +0 -2
  834. package/dist/sync/base-version-resolver.test.d.ts.map +0 -1
  835. package/dist/sync/base-version-resolver.test.js +0 -24
  836. package/dist/sync/base-version-resolver.test.js.map +0 -1
  837. package/dist/sync/candidate-uploader.test.d.ts +0 -2
  838. package/dist/sync/candidate-uploader.test.d.ts.map +0 -1
  839. package/dist/sync/candidate-uploader.test.js +0 -132
  840. package/dist/sync/candidate-uploader.test.js.map +0 -1
  841. package/dist/sync/child-process-sync-worker-env.test.d.ts +0 -2
  842. package/dist/sync/child-process-sync-worker-env.test.d.ts.map +0 -1
  843. package/dist/sync/child-process-sync-worker-env.test.js +0 -38
  844. package/dist/sync/child-process-sync-worker-env.test.js.map +0 -1
  845. package/dist/sync/child-process-sync-worker-errors.test.d.ts +0 -2
  846. package/dist/sync/child-process-sync-worker-errors.test.d.ts.map +0 -1
  847. package/dist/sync/child-process-sync-worker-errors.test.js +0 -121
  848. package/dist/sync/child-process-sync-worker-errors.test.js.map +0 -1
  849. package/dist/sync/child-process-sync-worker.test.d.ts +0 -2
  850. package/dist/sync/child-process-sync-worker.test.d.ts.map +0 -1
  851. package/dist/sync/child-process-sync-worker.test.js +0 -262
  852. package/dist/sync/child-process-sync-worker.test.js.map +0 -1
  853. package/dist/sync/content-hash.test.d.ts +0 -2
  854. package/dist/sync/content-hash.test.d.ts.map +0 -1
  855. package/dist/sync/content-hash.test.js +0 -16
  856. package/dist/sync/content-hash.test.js.map +0 -1
  857. package/dist/sync/delta-client.test.d.ts +0 -2
  858. package/dist/sync/delta-client.test.d.ts.map +0 -1
  859. package/dist/sync/delta-client.test.js +0 -97
  860. package/dist/sync/delta-client.test.js.map +0 -1
  861. package/dist/sync/durable-apply.test.d.ts +0 -2
  862. package/dist/sync/durable-apply.test.d.ts.map +0 -1
  863. package/dist/sync/durable-apply.test.js +0 -180
  864. package/dist/sync/durable-apply.test.js.map +0 -1
  865. package/dist/sync/event-sync.test.d.ts +0 -14
  866. package/dist/sync/event-sync.test.d.ts.map +0 -1
  867. package/dist/sync/event-sync.test.js +0 -1714
  868. package/dist/sync/event-sync.test.js.map +0 -1
  869. package/dist/sync/feature-flags.test.d.ts +0 -24
  870. package/dist/sync/feature-flags.test.d.ts.map +0 -1
  871. package/dist/sync/feature-flags.test.js +0 -594
  872. package/dist/sync/feature-flags.test.js.map +0 -1
  873. package/dist/sync/full-pass-cap-governor.bench.test.d.ts +0 -2
  874. package/dist/sync/full-pass-cap-governor.bench.test.d.ts.map +0 -1
  875. package/dist/sync/full-pass-cap-governor.bench.test.js +0 -179
  876. package/dist/sync/full-pass-cap-governor.bench.test.js.map +0 -1
  877. package/dist/sync/full-pass-caps.test.d.ts +0 -2
  878. package/dist/sync/full-pass-caps.test.d.ts.map +0 -1
  879. package/dist/sync/full-pass-caps.test.js +0 -550
  880. package/dist/sync/full-pass-caps.test.js.map +0 -1
  881. package/dist/sync/idle-full-reconcile.test.d.ts +0 -2
  882. package/dist/sync/idle-full-reconcile.test.d.ts.map +0 -1
  883. package/dist/sync/idle-full-reconcile.test.js +0 -62
  884. package/dist/sync/idle-full-reconcile.test.js.map +0 -1
  885. package/dist/sync/inbound-event-admission.test.d.ts +0 -2
  886. package/dist/sync/inbound-event-admission.test.d.ts.map +0 -1
  887. package/dist/sync/inbound-event-admission.test.js +0 -125
  888. package/dist/sync/inbound-event-admission.test.js.map +0 -1
  889. package/dist/sync/journal-ledger-stream.test.d.ts +0 -12
  890. package/dist/sync/journal-ledger-stream.test.d.ts.map +0 -1
  891. package/dist/sync/journal-ledger-stream.test.js +0 -134
  892. package/dist/sync/journal-ledger-stream.test.js.map +0 -1
  893. package/dist/sync/lease-client.test.d.ts +0 -2
  894. package/dist/sync/lease-client.test.d.ts.map +0 -1
  895. package/dist/sync/lease-client.test.js +0 -119
  896. package/dist/sync/lease-client.test.js.map +0 -1
  897. package/dist/sync/logger.test.d.ts +0 -19
  898. package/dist/sync/logger.test.d.ts.map +0 -1
  899. package/dist/sync/logger.test.js +0 -204
  900. package/dist/sync/logger.test.js.map +0 -1
  901. package/dist/sync/metrics.test.d.ts +0 -19
  902. package/dist/sync/metrics.test.d.ts.map +0 -1
  903. package/dist/sync/metrics.test.js +0 -357
  904. package/dist/sync/metrics.test.js.map +0 -1
  905. package/dist/sync/multipart-uploader.test.d.ts +0 -2
  906. package/dist/sync/multipart-uploader.test.d.ts.map +0 -1
  907. package/dist/sync/multipart-uploader.test.js +0 -135
  908. package/dist/sync/multipart-uploader.test.js.map +0 -1
  909. package/dist/sync/mutation-client.test.d.ts +0 -2
  910. package/dist/sync/mutation-client.test.d.ts.map +0 -1
  911. package/dist/sync/mutation-client.test.js +0 -100
  912. package/dist/sync/mutation-client.test.js.map +0 -1
  913. package/dist/sync/mutation-session.test.d.ts +0 -2
  914. package/dist/sync/mutation-session.test.d.ts.map +0 -1
  915. package/dist/sync/mutation-session.test.js +0 -190
  916. package/dist/sync/mutation-session.test.js.map +0 -1
  917. package/dist/sync/parallel-sync-coordinator.test.d.ts +0 -2
  918. package/dist/sync/parallel-sync-coordinator.test.d.ts.map +0 -1
  919. package/dist/sync/parallel-sync-coordinator.test.js +0 -564
  920. package/dist/sync/parallel-sync-coordinator.test.js.map +0 -1
  921. package/dist/sync/path-leases.test.d.ts +0 -2
  922. package/dist/sync/path-leases.test.d.ts.map +0 -1
  923. package/dist/sync/path-leases.test.js +0 -51
  924. package/dist/sync/path-leases.test.js.map +0 -1
  925. package/dist/sync/per-area-maintenance.test.d.ts +0 -2
  926. package/dist/sync/per-area-maintenance.test.d.ts.map +0 -1
  927. package/dist/sync/per-area-maintenance.test.js +0 -100
  928. package/dist/sync/per-area-maintenance.test.js.map +0 -1
  929. package/dist/sync/push-event.test.d.ts +0 -15
  930. package/dist/sync/push-event.test.d.ts.map +0 -1
  931. package/dist/sync/push-event.test.js +0 -282
  932. package/dist/sync/push-event.test.js.map +0 -1
  933. package/dist/sync/push-receiver.test.d.ts +0 -25
  934. package/dist/sync/push-receiver.test.d.ts.map +0 -1
  935. package/dist/sync/push-receiver.test.js +0 -2851
  936. package/dist/sync/push-receiver.test.js.map +0 -1
  937. package/dist/sync/push-transport.test.d.ts +0 -2
  938. package/dist/sync/push-transport.test.d.ts.map +0 -1
  939. package/dist/sync/push-transport.test.js +0 -70
  940. package/dist/sync/push-transport.test.js.map +0 -1
  941. package/dist/sync/push-walk-matchers.bench.test.d.ts +0 -2
  942. package/dist/sync/push-walk-matchers.bench.test.d.ts.map +0 -1
  943. package/dist/sync/push-walk-matchers.bench.test.js +0 -230
  944. package/dist/sync/push-walk-matchers.bench.test.js.map +0 -1
  945. package/dist/sync/realtime-network-integration.test.d.ts +0 -2
  946. package/dist/sync/realtime-network-integration.test.d.ts.map +0 -1
  947. package/dist/sync/realtime-network-integration.test.js +0 -83
  948. package/dist/sync/realtime-network-integration.test.js.map +0 -1
  949. package/dist/sync/realtime-rollout.test.d.ts +0 -2
  950. package/dist/sync/realtime-rollout.test.d.ts.map +0 -1
  951. package/dist/sync/realtime-rollout.test.js +0 -94
  952. package/dist/sync/realtime-rollout.test.js.map +0 -1
  953. package/dist/sync/realtime-telemetry.test.d.ts +0 -2
  954. package/dist/sync/realtime-telemetry.test.d.ts.map +0 -1
  955. package/dist/sync/realtime-telemetry.test.js +0 -300
  956. package/dist/sync/realtime-telemetry.test.js.map +0 -1
  957. package/dist/sync/receiver-origin-config.test.d.ts +0 -2
  958. package/dist/sync/receiver-origin-config.test.d.ts.map +0 -1
  959. package/dist/sync/receiver-origin-config.test.js +0 -39
  960. package/dist/sync/receiver-origin-config.test.js.map +0 -1
  961. package/dist/sync/reconcile-cursor.test.d.ts +0 -2
  962. package/dist/sync/reconcile-cursor.test.d.ts.map +0 -1
  963. package/dist/sync/reconcile-cursor.test.js +0 -139
  964. package/dist/sync/reconcile-cursor.test.js.map +0 -1
  965. package/dist/sync/remote-file-spool.test.d.ts +0 -2
  966. package/dist/sync/remote-file-spool.test.d.ts.map +0 -1
  967. package/dist/sync/remote-file-spool.test.js +0 -77
  968. package/dist/sync/remote-file-spool.test.js.map +0 -1
  969. package/dist/sync/scope-inventory-client.test.d.ts +0 -2
  970. package/dist/sync/scope-inventory-client.test.d.ts.map +0 -1
  971. package/dist/sync/scope-inventory-client.test.js +0 -103
  972. package/dist/sync/scope-inventory-client.test.js.map +0 -1
  973. package/dist/sync/secret-path-policy.test.d.ts +0 -2
  974. package/dist/sync/secret-path-policy.test.d.ts.map +0 -1
  975. package/dist/sync/secret-path-policy.test.js +0 -183
  976. package/dist/sync/secret-path-policy.test.js.map +0 -1
  977. package/dist/sync/snapshot-client.test.d.ts +0 -2
  978. package/dist/sync/snapshot-client.test.d.ts.map +0 -1
  979. package/dist/sync/snapshot-client.test.js +0 -169
  980. package/dist/sync/snapshot-client.test.js.map +0 -1
  981. package/dist/sync/state-store.test.d.ts +0 -2
  982. package/dist/sync/state-store.test.d.ts.map +0 -1
  983. package/dist/sync/state-store.test.js +0 -1556
  984. package/dist/sync/state-store.test.js.map +0 -1
  985. package/dist/sync/sync-contract.test.d.ts +0 -2
  986. package/dist/sync/sync-contract.test.d.ts.map +0 -1
  987. package/dist/sync/sync-contract.test.js +0 -141
  988. package/dist/sync/sync-contract.test.js.map +0 -1
  989. package/dist/sync/targeted-pull-prefixes.test.d.ts +0 -2
  990. package/dist/sync/targeted-pull-prefixes.test.d.ts.map +0 -1
  991. package/dist/sync/targeted-pull-prefixes.test.js +0 -33
  992. package/dist/sync/targeted-pull-prefixes.test.js.map +0 -1
  993. package/dist/sync/targeted-upsert-exact-list.test.d.ts +0 -2
  994. package/dist/sync/targeted-upsert-exact-list.test.d.ts.map +0 -1
  995. package/dist/sync/targeted-upsert-exact-list.test.js +0 -247
  996. package/dist/sync/targeted-upsert-exact-list.test.js.map +0 -1
  997. package/dist/sync/unchanged-push-events.test.d.ts +0 -2
  998. package/dist/sync/unchanged-push-events.test.d.ts.map +0 -1
  999. package/dist/sync/unchanged-push-events.test.js +0 -76
  1000. package/dist/sync/unchanged-push-events.test.js.map +0 -1
  1001. package/dist/sync/uploader-finalization.test.d.ts +0 -2
  1002. package/dist/sync/uploader-finalization.test.d.ts.map +0 -1
  1003. package/dist/sync/uploader-finalization.test.js +0 -107
  1004. package/dist/sync/uploader-finalization.test.js.map +0 -1
  1005. package/dist/sync-core.test.d.ts +0 -2
  1006. package/dist/sync-core.test.d.ts.map +0 -1
  1007. package/dist/sync-core.test.js +0 -189
  1008. package/dist/sync-core.test.js.map +0 -1
  1009. package/dist/sync-progress.test.d.ts +0 -2
  1010. package/dist/sync-progress.test.d.ts.map +0 -1
  1011. package/dist/sync-progress.test.js +0 -277
  1012. package/dist/sync-progress.test.js.map +0 -1
  1013. package/dist/telemetry-events.test.d.ts +0 -2
  1014. package/dist/telemetry-events.test.d.ts.map +0 -1
  1015. package/dist/telemetry-events.test.js +0 -113
  1016. package/dist/telemetry-events.test.js.map +0 -1
  1017. package/dist/telemetry.test.d.ts +0 -11
  1018. package/dist/telemetry.test.d.ts.map +0 -1
  1019. package/dist/telemetry.test.js +0 -1603
  1020. package/dist/telemetry.test.js.map +0 -1
  1021. package/dist/vault-client.test.d.ts +0 -7
  1022. package/dist/vault-client.test.d.ts.map +0 -1
  1023. package/dist/vault-client.test.js +0 -1334
  1024. package/dist/vault-client.test.js.map +0 -1
  1025. package/dist/watch-coverage.test.d.ts +0 -2
  1026. package/dist/watch-coverage.test.d.ts.map +0 -1
  1027. package/dist/watch-coverage.test.js +0 -56
  1028. package/dist/watch-coverage.test.js.map +0 -1
  1029. package/dist/watch-owner-lease.test.d.ts +0 -2
  1030. package/dist/watch-owner-lease.test.d.ts.map +0 -1
  1031. package/dist/watch-owner-lease.test.js +0 -353
  1032. package/dist/watch-owner-lease.test.js.map +0 -1
  1033. package/dist/watch-parent.test.d.ts +0 -2
  1034. package/dist/watch-parent.test.d.ts.map +0 -1
  1035. package/dist/watch-parent.test.js +0 -131
  1036. package/dist/watch-parent.test.js.map +0 -1
  1037. package/dist/watch-roots.test.d.ts +0 -18
  1038. package/dist/watch-roots.test.d.ts.map +0 -1
  1039. package/dist/watch-roots.test.js +0 -395
  1040. package/dist/watch-roots.test.js.map +0 -1
  1041. package/dist/watcher-continuity-hot-path.test.d.ts +0 -2
  1042. package/dist/watcher-continuity-hot-path.test.d.ts.map +0 -1
  1043. package/dist/watcher-continuity-hot-path.test.js +0 -40
  1044. package/dist/watcher-continuity-hot-path.test.js.map +0 -1
  1045. package/dist/watcher-event-gate.test.d.ts +0 -16
  1046. package/dist/watcher-event-gate.test.d.ts.map +0 -1
  1047. package/dist/watcher-event-gate.test.js +0 -191
  1048. package/dist/watcher-event-gate.test.js.map +0 -1
  1049. package/dist/watcher-replan-sweep.test.d.ts +0 -2
  1050. package/dist/watcher-replan-sweep.test.d.ts.map +0 -1
  1051. package/dist/watcher-replan-sweep.test.js +0 -245
  1052. package/dist/watcher-replan-sweep.test.js.map +0 -1
  1053. package/dist/watcher-stdout.test.d.ts +0 -2
  1054. package/dist/watcher-stdout.test.d.ts.map +0 -1
  1055. package/dist/watcher-stdout.test.js +0 -86
  1056. package/dist/watcher-stdout.test.js.map +0 -1
  1057. package/dist/watcher.test.d.ts +0 -2
  1058. package/dist/watcher.test.d.ts.map +0 -1
  1059. package/dist/watcher.test.js +0 -4301
  1060. package/dist/watcher.test.js.map +0 -1
  1061. package/dist/watcher.warmup-cancel.test.d.ts +0 -2
  1062. package/dist/watcher.warmup-cancel.test.d.ts.map +0 -1
  1063. package/dist/watcher.warmup-cancel.test.js +0 -59
  1064. package/dist/watcher.warmup-cancel.test.js.map +0 -1
  1065. package/dist/watcher.warmup-responsive.test.d.ts +0 -2
  1066. package/dist/watcher.warmup-responsive.test.d.ts.map +0 -1
  1067. package/dist/watcher.warmup-responsive.test.js +0 -62
  1068. package/dist/watcher.warmup-responsive.test.js.map +0 -1
@@ -1,745 +0,0 @@
1
- /**
2
- * Unit tests for cognito-auth.ts — focus on the `expiresAt` shape contract.
3
- *
4
- * Canonical on-disk shape is epoch milliseconds (number). The reader also
5
- * tolerates ISO 8601 strings for backward compatibility with pre-migration
6
- * token files, and fails safe on anything unparseable.
7
- */
8
- import * as fs from "fs";
9
- import * as os from "os";
10
- import * as path from "path";
11
- import { afterEach, beforeEach, describe, expect, it, vi } from "vitest";
12
- // Sandbox HOME *before* importing the module — it reads os.homedir() at load
13
- // time to compute the cache file path.
14
- let originalHome;
15
- let originalUserProfile;
16
- let originalStateDir;
17
- let originalMachineCredsFile;
18
- let tmpHome;
19
- beforeEach(() => {
20
- originalHome = process.env.HOME;
21
- originalUserProfile = process.env.USERPROFILE;
22
- originalStateDir = process.env.HQ_STATE_DIR;
23
- originalMachineCredsFile = process.env.HQ_MACHINE_CREDS_FILE;
24
- tmpHome = fs.mkdtempSync(path.join(os.tmpdir(), "hq-cognito-auth-test-"));
25
- process.env.HOME = tmpHome;
26
- process.env.USERPROFILE = tmpHome;
27
- // This suite verifies the fallback token cache and machine-creds paths under
28
- // its HOME sandbox, rather than the setup file's hermetic defaults.
29
- delete process.env.HQ_STATE_DIR;
30
- delete process.env.HQ_MACHINE_CREDS_FILE;
31
- vi.resetModules();
32
- });
33
- afterEach(() => {
34
- vi.useRealTimers();
35
- if (originalHome === undefined)
36
- delete process.env.HOME;
37
- else
38
- process.env.HOME = originalHome;
39
- if (originalUserProfile === undefined)
40
- delete process.env.USERPROFILE;
41
- else
42
- process.env.USERPROFILE = originalUserProfile;
43
- if (originalStateDir === undefined)
44
- delete process.env.HQ_STATE_DIR;
45
- else
46
- process.env.HQ_STATE_DIR = originalStateDir;
47
- if (originalMachineCredsFile === undefined)
48
- delete process.env.HQ_MACHINE_CREDS_FILE;
49
- else
50
- process.env.HQ_MACHINE_CREDS_FILE = originalMachineCredsFile;
51
- fs.rmSync(tmpHome, { recursive: true, force: true });
52
- vi.unstubAllGlobals();
53
- vi.restoreAllMocks();
54
- });
55
- async function importModule() {
56
- return await import("./cognito-auth.js");
57
- }
58
- const baseTokens = {
59
- accessToken: "access",
60
- idToken: "id",
61
- refreshToken: "refresh",
62
- tokenType: "Bearer",
63
- };
64
- // ---------------------------------------------------------------------------
65
- // Reader: isExpiring accepts both shapes and fails safe
66
- // ---------------------------------------------------------------------------
67
- describe("isExpiring — expiresAt shape tolerance", () => {
68
- it("returns false for ISO string far in the future", async () => {
69
- const { isExpiring } = await importModule();
70
- const future = new Date(Date.now() + 60 * 60 * 1000).toISOString();
71
- expect(isExpiring({ ...baseTokens, expiresAt: future })).toBe(false);
72
- });
73
- it("returns true for ISO string within the buffer window", async () => {
74
- const { isExpiring } = await importModule();
75
- const soon = new Date(Date.now() + 10 * 1000).toISOString();
76
- expect(isExpiring({ ...baseTokens, expiresAt: soon }, 60)).toBe(true);
77
- });
78
- it("returns false for raw number (ms) far in the future", async () => {
79
- const { isExpiring } = await importModule();
80
- const future = Date.now() + 60 * 60 * 1000;
81
- // Cast because the type says string; the point is runtime tolerance.
82
- expect(isExpiring({ ...baseTokens, expiresAt: future })).toBe(false);
83
- });
84
- it("returns true for raw number (ms) within the buffer window", async () => {
85
- const { isExpiring } = await importModule();
86
- const soon = Date.now() + 10 * 1000;
87
- expect(isExpiring({ ...baseTokens, expiresAt: soon }, 60)).toBe(true);
88
- });
89
- it("fails safe (returns true) for malformed expiresAt", async () => {
90
- const { isExpiring } = await importModule();
91
- expect(isExpiring({ ...baseTokens, expiresAt: "not a date" })).toBe(true);
92
- expect(isExpiring({
93
- ...baseTokens,
94
- expiresAt: undefined,
95
- })).toBe(true);
96
- expect(isExpiring({
97
- ...baseTokens,
98
- expiresAt: Number.NaN,
99
- })).toBe(true);
100
- });
101
- });
102
- // ---------------------------------------------------------------------------
103
- // Stale-pool detection — decodeAccessTokenClientId + getValidAccessToken
104
- // self-evicts cached tokens minted by a different App Client (e.g. dev pool
105
- // tokens left over from before the 2026-04-25 cutover).
106
- // ---------------------------------------------------------------------------
107
- /** Build a minimal unsigned JWT carrying the given claims. Cognito's real */
108
- /** tokens are RS256-signed; we don't verify here so the signature can be */
109
- /** anything — only the base64url-encoded payload matters. */
110
- function makeAccessToken(claims) {
111
- const header = Buffer.from(JSON.stringify({ alg: "RS256", typ: "JWT" }))
112
- .toString("base64")
113
- .replace(/=+$/, "");
114
- const payload = Buffer.from(JSON.stringify(claims))
115
- .toString("base64")
116
- .replace(/=+$/, "");
117
- return `${header}.${payload}.signature`;
118
- }
119
- const DEV_CLIENT = "4mmujmjq3srakdueg656b9m0mp";
120
- const PROD_CLIENT = "7acei2c8v870enheptb1j5foln";
121
- const baseConfig = {
122
- region: "us-east-1",
123
- userPoolDomain: "vault-indigo-hq-prod",
124
- clientId: PROD_CLIENT,
125
- };
126
- describe("decodeAccessTokenClientId", () => {
127
- it("returns the client_id claim from a well-formed JWT", async () => {
128
- const { decodeAccessTokenClientId } = await importModule();
129
- const token = makeAccessToken({ client_id: DEV_CLIENT, sub: "abc" });
130
- expect(decodeAccessTokenClientId(token)).toBe(DEV_CLIENT);
131
- });
132
- it("returns null when client_id is absent", async () => {
133
- const { decodeAccessTokenClientId } = await importModule();
134
- const token = makeAccessToken({ sub: "abc" });
135
- expect(decodeAccessTokenClientId(token)).toBeNull();
136
- });
137
- it("returns null when the token has fewer than two segments", async () => {
138
- const { decodeAccessTokenClientId } = await importModule();
139
- expect(decodeAccessTokenClientId("not-a-jwt")).toBeNull();
140
- });
141
- it("returns null when the payload isn't valid JSON", async () => {
142
- const { decodeAccessTokenClientId } = await importModule();
143
- expect(decodeAccessTokenClientId("aaa.bbb.ccc")).toBeNull();
144
- });
145
- });
146
- describe("getValidAccessToken stale-pool detection", () => {
147
- it("evicts a cached token whose client_id mismatches the current config", async () => {
148
- const { saveCachedTokens, loadCachedTokens, getValidAccessToken } = await importModule();
149
- const devToken = makeAccessToken({ client_id: DEV_CLIENT, sub: "abc" });
150
- saveCachedTokens({
151
- ...baseTokens,
152
- accessToken: devToken,
153
- expiresAt: Date.now() + 60 * 60 * 1000,
154
- });
155
- expect(loadCachedTokens()).not.toBeNull();
156
- await expect(getValidAccessToken(baseConfig, { interactive: false })).rejects.toThrow(/No valid HQ session/);
157
- expect(loadCachedTokens()).toBeNull();
158
- });
159
- it("keeps a cached token whose client_id matches", async () => {
160
- const { saveCachedTokens, getValidAccessToken } = await importModule();
161
- const prodToken = makeAccessToken({ client_id: PROD_CLIENT, sub: "abc" });
162
- saveCachedTokens({
163
- ...baseTokens,
164
- accessToken: prodToken,
165
- expiresAt: Date.now() + 60 * 60 * 1000,
166
- });
167
- const access = await getValidAccessToken(baseConfig, {
168
- interactive: false,
169
- });
170
- expect(access).toBe(prodToken);
171
- });
172
- it("keeps a cached token when client_id can't be decoded (back-compat)", async () => {
173
- const { saveCachedTokens, getValidAccessToken } = await importModule();
174
- saveCachedTokens({
175
- ...baseTokens,
176
- accessToken: "opaque-non-jwt",
177
- expiresAt: Date.now() + 60 * 60 * 1000,
178
- });
179
- const access = await getValidAccessToken(baseConfig, {
180
- interactive: false,
181
- });
182
- expect(access).toBe("opaque-non-jwt");
183
- });
184
- });
185
- // ---------------------------------------------------------------------------
186
- // Machine identity cache isolation — machine mode must not reuse human tokens
187
- // from the shared Cognito cache even when the app client matches.
188
- // ---------------------------------------------------------------------------
189
- describe("machine identity cache isolation", () => {
190
- it("F06: machine mode re-mints instead of reusing a cached human token", async () => {
191
- const { saveCachedTokens, getValidAccessToken } = await importModule();
192
- const cachedHumanAccessToken = makeAccessToken({
193
- token_use: "access",
194
- client_id: PROD_CLIENT,
195
- username: "human@example.com",
196
- sub: "human-sub",
197
- });
198
- const cachedHumanIdToken = makeAccessToken({
199
- token_use: "id",
200
- aud: PROD_CLIENT,
201
- email: "human@example.com",
202
- "cognito:username": "human@example.com",
203
- sub: "human-sub",
204
- });
205
- saveCachedTokens({
206
- ...baseTokens,
207
- accessToken: cachedHumanAccessToken,
208
- idToken: cachedHumanIdToken,
209
- expiresAt: Date.now() + 60 * 60 * 1000,
210
- });
211
- const machineUid = "agt_01JZ0000000000000000000000";
212
- const machineCredsDir = path.join(tmpHome, ".hq-agent");
213
- fs.mkdirSync(machineCredsDir, { recursive: true });
214
- fs.writeFileSync(path.join(machineCredsDir, "machine-creds.json"), JSON.stringify({
215
- username: "agt-01jz0000000000000000000000@agents.getindigo.ai",
216
- secret: "machine-secret",
217
- clientId: PROD_CLIENT,
218
- region: "us-east-1",
219
- }));
220
- const mintedMachineAccessToken = makeAccessToken({
221
- token_use: "access",
222
- client_id: PROD_CLIENT,
223
- username: "agt-01jz0000000000000000000000@agents.getindigo.ai",
224
- sub: machineUid,
225
- });
226
- const mintedMachineIdToken = makeAccessToken({
227
- token_use: "id",
228
- aud: PROD_CLIENT,
229
- "custom:entityType": "agent",
230
- "custom:entityUid": machineUid,
231
- "cognito:username": "agt-01jz0000000000000000000000@agents.getindigo.ai",
232
- sub: machineUid,
233
- });
234
- const fetchMock = vi.fn(async () => new Response(JSON.stringify({
235
- AuthenticationResult: {
236
- AccessToken: mintedMachineAccessToken,
237
- IdToken: mintedMachineIdToken,
238
- ExpiresIn: 3600,
239
- },
240
- }), { status: 200, headers: { "Content-Type": "application/json" } }));
241
- vi.stubGlobal("fetch", fetchMock);
242
- await expect(getValidAccessToken(baseConfig, { interactive: false })).resolves.toBe(mintedMachineIdToken);
243
- expect(fetchMock).toHaveBeenCalledTimes(1);
244
- });
245
- });
246
- // ---------------------------------------------------------------------------
247
- // Round-trip: writers emit epoch-ms, readers read epoch-ms
248
- // ---------------------------------------------------------------------------
249
- describe("expiresAt shape round-trip", () => {
250
- it("saveCachedTokens + loadCachedTokens preserves epoch-ms number shape", async () => {
251
- const { saveCachedTokens, loadCachedTokens } = await importModule();
252
- const epochMs = Date.now() + 3600 * 1000;
253
- saveCachedTokens({ ...baseTokens, expiresAt: epochMs });
254
- const loaded = loadCachedTokens();
255
- expect(loaded).not.toBeNull();
256
- expect(typeof loaded?.expiresAt).toBe("number");
257
- expect(loaded?.expiresAt).toBe(epochMs);
258
- });
259
- it("saveCachedTokens + loadCachedTokens tolerates legacy ISO string", async () => {
260
- const { saveCachedTokens, loadCachedTokens } = await importModule();
261
- const iso = new Date(Date.now() + 3600 * 1000).toISOString();
262
- saveCachedTokens({ ...baseTokens, expiresAt: iso });
263
- const loaded = loadCachedTokens();
264
- expect(loaded).not.toBeNull();
265
- expect(typeof loaded?.expiresAt).toBe("string");
266
- expect(loaded?.expiresAt).toBe(iso);
267
- });
268
- it("refreshTokens writes epoch milliseconds to cache", async () => {
269
- vi.stubGlobal("fetch", vi.fn(async () => new Response(JSON.stringify({
270
- access_token: "new-access",
271
- id_token: "new-id",
272
- refresh_token: "new-refresh",
273
- expires_in: 3600,
274
- token_type: "Bearer",
275
- }), { status: 200, headers: { "Content-Type": "application/json" } })));
276
- const { refreshTokens, loadCachedTokens } = await importModule();
277
- const before = Date.now();
278
- const result = await refreshTokens({
279
- region: "us-east-1",
280
- userPoolDomain: "vault-indigo-hq-dev",
281
- clientId: "test-client",
282
- }, "prior-refresh-token");
283
- const after = Date.now();
284
- expect(typeof result.expiresAt).toBe("number");
285
- expect(result.expiresAt).toBeGreaterThanOrEqual(before + 3600 * 1000);
286
- expect(result.expiresAt).toBeLessThanOrEqual(after + 3600 * 1000);
287
- const onDisk = loadCachedTokens();
288
- expect(onDisk?.expiresAt).toBe(result.expiresAt);
289
- expect(typeof onDisk?.expiresAt).toBe("number");
290
- });
291
- });
292
- // ---------------------------------------------------------------------------
293
- // Concurrency-safe token refresh (cross-process lock)
294
- //
295
- // Boxes run several hq processes (`hq auth refresh` on a timer, the sync runner,
296
- // replica-sync) that refresh the SAME cached session at once. Without
297
- // coordination they race on the shared cache; and if the app client issues
298
- // single-use (rotated) tokens, concurrent refreshers invalidate each other —
299
- // the first consumes the token, the second gets `invalid_grant`. These pin the
300
- // fix: a cross-process lock + a re-read of the freshest token inside the lock,
301
- // so refreshes serialize and a consumed token is never reused. (Rotation does
302
- // NOT reset the 30-day lifetime — see ADR-0009; durable never-log-out is per-box
303
- // machine identity, which reuses this same lock for its mint sequence.)
304
- // ---------------------------------------------------------------------------
305
- describe("refreshTokens — concurrency-safe refresh (cross-process lock)", () => {
306
- const config = {
307
- region: "us-east-1",
308
- userPoolDomain: "vault-indigo-hq-dev",
309
- clientId: "test-client",
310
- };
311
- // A minimal unsigned JWT carrying a client_id claim, so the cache's
312
- // client-ownership check (decodeAccessTokenClientId) resolves in tests.
313
- const jwtFor = (clientId, extra = {}) => "eyJhbGciOiJub25lIn0." +
314
- Buffer.from(JSON.stringify({ client_id: clientId, ...extra })).toString("base64url") +
315
- ".sig";
316
- // Models Cognito refresh-token ROTATION with single-use enforcement: a valid
317
- // refresh mints a new token and consumes the old one; reusing a consumed
318
- // token returns 400 invalid_grant (exactly what took the outposts offline).
319
- function rotatingCognitoFetch(initialToken) {
320
- let current = initialToken;
321
- const consumed = new Set();
322
- let counter = 0;
323
- return vi.fn(async (_url, init) => {
324
- const sent = new URLSearchParams(init?.body ?? "").get("refresh_token") ?? "";
325
- if (sent !== current || consumed.has(sent)) {
326
- return new Response(JSON.stringify({ error: "invalid_grant" }), {
327
- status: 400,
328
- headers: { "Content-Type": "application/json" },
329
- });
330
- }
331
- consumed.add(sent);
332
- counter += 1;
333
- current = `refresh-${counter}`;
334
- return new Response(JSON.stringify({
335
- access_token: jwtFor("test-client", { n: counter }),
336
- id_token: jwtFor("test-client", { n: counter }),
337
- refresh_token: current,
338
- expires_in: 3600,
339
- token_type: "Bearer",
340
- }), { status: 200, headers: { "Content-Type": "application/json" } });
341
- });
342
- }
343
- it("persists the rotated refresh token when Cognito returns one", async () => {
344
- vi.stubGlobal("fetch", rotatingCognitoFetch("R0"));
345
- const { refreshTokens, loadCachedTokens } = await importModule();
346
- const result = await refreshTokens(config, "R0");
347
- expect(result.refreshToken).toBe("refresh-1");
348
- expect(loadCachedTokens()?.refreshToken).toBe("refresh-1");
349
- });
350
- it("serializes concurrent refreshers: ONE network refresh, neither gets invalid_grant", async () => {
351
- const fetchMock = rotatingCognitoFetch("R0");
352
- vi.stubGlobal("fetch", fetchMock);
353
- const { refreshTokens, saveCachedTokens, loadCachedTokens } = await importModule();
354
- // Seed an EXPIRED session (for THIS client) so both callers attempt refresh.
355
- saveCachedTokens({
356
- ...baseTokens,
357
- accessToken: jwtFor("test-client"),
358
- refreshToken: "R0",
359
- expiresAt: Date.now() - 1000,
360
- });
361
- // Two processes refresh the same expiring session at once. Without the lock
362
- // both send "R0"; the second would hit the mock's invalid_grant and throw.
363
- const [a, b] = await Promise.all([
364
- refreshTokens(config, "R0"),
365
- refreshTokens(config, "R0"),
366
- ]);
367
- // Neither threw; the network was hit exactly once (the waiter reused the
368
- // winner's fresh token under the lock); both hold that same token.
369
- expect(fetchMock).toHaveBeenCalledTimes(1);
370
- expect(a.refreshToken).toBe("refresh-1");
371
- expect(b.refreshToken).toBe("refresh-1");
372
- expect(a.accessToken).toBe(b.accessToken);
373
- expect(loadCachedTokens()?.refreshToken).toBe("refresh-1");
374
- });
375
- it("reclaims a lock whose holder process has died (no deadlock)", async () => {
376
- vi.stubGlobal("fetch", rotatingCognitoFetch("R0"));
377
- const { refreshTokens } = await importModule();
378
- // A crashed refresher left its lock behind, tagged with a pid that is not
379
- // running — reclaimed by pid-liveness, not by an mtime heuristic.
380
- const hqDir = path.join(tmpHome, ".hq");
381
- fs.mkdirSync(hqDir, { recursive: true });
382
- const lockPath = path.join(hqDir, "cognito-tokens.json.lock");
383
- fs.writeFileSync(lockPath, "2147483646");
384
- const result = await refreshTokens(config, "R0");
385
- expect(result.refreshToken).toBe("refresh-1");
386
- // Our own lock is released after the refresh completes (no leak).
387
- expect(fs.existsSync(lockPath)).toBe(false);
388
- });
389
- it("does NOT reuse a cached session minted by a different app client", async () => {
390
- const fetchMock = rotatingCognitoFetch("R-B");
391
- vi.stubGlobal("fetch", fetchMock);
392
- const { refreshTokens, saveCachedTokens } = await importModule();
393
- // Cache holds a FRESH token, but for a DIFFERENT client.
394
- saveCachedTokens({
395
- ...baseTokens,
396
- accessToken: jwtFor("other-client"),
397
- refreshToken: "R-other",
398
- expiresAt: Date.now() + 3600 * 1000,
399
- });
400
- // A caller for "test-client" must NOT be handed the other client's cached
401
- // token; it must exchange the token it supplied.
402
- const result = await refreshTokens(config, "R-B");
403
- expect(fetchMock).toHaveBeenCalledTimes(1); // did not short-circuit on the wrong-client cache
404
- expect(result.refreshToken).toBe("refresh-1");
405
- });
406
- it.each([
407
- ["invalid_grant", "invalid_grant"],
408
- ["invalid_client", "invalid_client"],
409
- ["unauthorized_client", "unauthorized_client"],
410
- ["invalid_request", "invalid_request"],
411
- ["invalid_scope", "invalid_scope"],
412
- ["NotAuthorizedException", "NotAuthorizedException"],
413
- ["provider-secret-message", "other"],
414
- [undefined, "unknown"],
415
- ])("returns a closed OAuth error class for %s", async (oauthError, expected) => {
416
- vi.stubGlobal("fetch", vi.fn(async () => new Response(JSON.stringify({ error: oauthError, description: "private detail" }), {
417
- status: 400,
418
- headers: { "Content-Type": "application/json" },
419
- })));
420
- const { refreshTokens } = await importModule();
421
- const caught = await refreshTokens(config, "caller-refresh").catch((error) => error);
422
- expect(caught).toMatchObject({
423
- name: "CognitoRefreshError",
424
- oauthError: expected,
425
- refreshGeneration: "caller_snapshot",
426
- });
427
- expect(caught.message).not.toContain("private detail");
428
- expect(caught.message).not.toContain("provider-secret-message");
429
- expect(JSON.stringify(caught)).not.toContain("private detail");
430
- expect(JSON.stringify(caught)).not.toContain("provider-secret-message");
431
- });
432
- it("labels a rejected refresh that used the matching cache re-read", async () => {
433
- vi.stubGlobal("fetch", vi.fn(async () => new Response(JSON.stringify({ error: "invalid_client" }), {
434
- status: 400,
435
- headers: { "Content-Type": "application/json" },
436
- })));
437
- const { refreshTokens, saveCachedTokens } = await importModule();
438
- saveCachedTokens({
439
- ...baseTokens,
440
- accessToken: jwtFor("test-client"),
441
- refreshToken: "cache-refresh",
442
- expiresAt: 0,
443
- });
444
- const caught = await refreshTokens(config, "caller-refresh").catch((error) => error);
445
- expect(caught).toMatchObject({
446
- name: "CognitoRefreshError",
447
- oauthError: "invalid_client",
448
- refreshGeneration: "cache_reloaded",
449
- });
450
- });
451
- });
452
- describe("refresh expiry hardening", () => {
453
- it("retries one transient refresh failure and preserves the refresh token", async () => {
454
- const fetchMock = vi
455
- .fn()
456
- .mockResolvedValueOnce(new Response(JSON.stringify({ message: "temporarily unavailable" }), {
457
- status: 503,
458
- }))
459
- .mockResolvedValueOnce(new Response(JSON.stringify({
460
- access_token: "fresh-access",
461
- id_token: "fresh-id",
462
- expires_in: 3600,
463
- token_type: "Bearer",
464
- }), { status: 200, headers: { "Content-Type": "application/json" } }));
465
- vi.stubGlobal("fetch", fetchMock);
466
- const { refreshTokens } = await importModule();
467
- const result = await refreshTokens(baseConfig, "preserved-refresh");
468
- expect(fetchMock).toHaveBeenCalledTimes(2);
469
- expect(result.accessToken).toBe("fresh-access");
470
- expect(result.refreshToken).toBe("preserved-refresh");
471
- });
472
- it("clears an expired refresh session after one 401 retry", async () => {
473
- const fetchMock = vi.fn(async () => new Response(JSON.stringify({ message: "refresh token expired" }), {
474
- status: 401,
475
- }));
476
- vi.stubGlobal("fetch", fetchMock);
477
- const { saveCachedTokens, loadCachedTokens, getValidAccessToken } = await importModule();
478
- saveCachedTokens({ ...baseTokens, expiresAt: 0 });
479
- await expect(getValidAccessToken(baseConfig, { interactive: false })).rejects.toThrow(/quick refresh/i);
480
- expect(fetchMock).toHaveBeenCalledTimes(2);
481
- expect(loadCachedTokens()).toBeNull();
482
- });
483
- it("keeps the stored session after two transient network failures", async () => {
484
- vi.useFakeTimers();
485
- const fetchMock = vi.fn(async () => {
486
- throw new Error("ECONNRESET");
487
- });
488
- vi.stubGlobal("fetch", fetchMock);
489
- const { saveCachedTokens, loadCachedTokens, getValidAccessToken } = await importModule();
490
- saveCachedTokens({ ...baseTokens, expiresAt: 0 });
491
- const refresh = getValidAccessToken(baseConfig, { interactive: false });
492
- const result = refresh.then(() => ({ error: null }), (error) => ({ error }));
493
- await vi.advanceTimersByTimeAsync(99);
494
- expect(fetchMock).toHaveBeenCalledTimes(1);
495
- await vi.advanceTimersByTimeAsync(1);
496
- expect((await result).error).toMatchObject({ message: expect.stringMatching(/ECONNRESET/) });
497
- expect(fetchMock).toHaveBeenCalledTimes(2);
498
- expect(loadCachedTokens()?.refreshToken).toBe("refresh");
499
- vi.useRealTimers();
500
- });
501
- it("does not invalidate a newer login when an older token fails late", async () => {
502
- const { accessTokenFingerprint, invalidateCachedTokensByFingerprint, loadCachedTokens, saveCachedTokens, } = await importModule();
503
- saveCachedTokens({
504
- ...baseTokens,
505
- accessToken: "old-access",
506
- expiresAt: Date.now() + 60_000,
507
- });
508
- const oldFingerprint = accessTokenFingerprint("old-access");
509
- saveCachedTokens({
510
- ...baseTokens,
511
- accessToken: "new-access",
512
- expiresAt: Date.now() + 60_000,
513
- });
514
- invalidateCachedTokensByFingerprint(oldFingerprint);
515
- expect(loadCachedTokens()?.accessToken).toBe("new-access");
516
- });
517
- });
518
- // ---------------------------------------------------------------------------
519
- describe("refresh rejection diagnostics", () => {
520
- it.each([400, 401])("keeps the cached session and parks invalid_client from HTTP %i without a marker or quick retry", async (status) => {
521
- const fetchMock = vi.fn(async () => new Response(JSON.stringify({ error: "invalid_client" }), { status }));
522
- vi.stubGlobal("fetch", fetchMock);
523
- const { getValidAccessToken, loadCachedTokens, saveCachedTokens, accessTokenFingerprint } = await importModule();
524
- const tokens = {
525
- ...baseTokens,
526
- accessToken: makeAccessToken({ client_id: PROD_CLIENT }),
527
- refreshToken: "invalid-client-refresh",
528
- expiresAt: Date.now() - 1,
529
- };
530
- saveCachedTokens(tokens);
531
- const result = await getValidAccessToken(baseConfig, { interactive: false }).catch((error) => error);
532
- expect(result).toMatchObject({ requiresReauth: false, oauthError: "invalid_client" });
533
- expect(loadCachedTokens()).toEqual(tokens);
534
- const marker = path.join(tmpHome, ".hq", `cognito-tokens.json.invalid.${accessTokenFingerprint(tokens.accessToken)}`);
535
- expect(fs.existsSync(marker)).toBe(false);
536
- await getValidAccessToken(baseConfig, { interactive: false }).catch(() => undefined);
537
- expect(fetchMock).toHaveBeenCalledTimes(1);
538
- });
539
- it.each([
540
- [401, { error: "unknown_code" }, true, 2],
541
- [401, { error: "invalid_client" }, false, 1],
542
- [400, { error: "invalid_client" }, false, 1],
543
- [400, { error: "invalid_grant" }, true, 1],
544
- [400, { __type: "NotAuthorizedException" }, true, 1],
545
- [400, { error: "unauthorized_client" }, false, 2],
546
- [400, { error: "unknown_code" }, false, 2],
547
- [400, {}, false, 2],
548
- [403, { __type: "ForbiddenException" }, false, 2],
549
- [400, { __type: "TooManyRequestsException" }, false, 2],
550
- [400, { __type: "InternalErrorException" }, false, 2],
551
- [500, { __type: "InternalErrorException" }, false, 2],
552
- ])("classifies status %i and Cognito payload as reauth=%s", async (status, payload, reauth, attempts) => {
553
- const fetchMock = vi.fn(async () => new Response(JSON.stringify(payload), { status }));
554
- vi.stubGlobal("fetch", fetchMock);
555
- const { refreshTokens } = await importModule();
556
- await expect(refreshTokens(baseConfig, "refresh-secret")).rejects.toMatchObject({ requiresReauth: reauth });
557
- expect(fetchMock).toHaveBeenCalledTimes(attempts);
558
- });
559
- it("retries malformed and service errors but rejects only invalid refresh grants", async () => {
560
- const fetchMock = vi.fn(async () => new Response(JSON.stringify({ error: "invalid_request", error_description: "malformed request" }), { status: 400 }));
561
- vi.stubGlobal("fetch", fetchMock);
562
- const { refreshTokens } = await importModule();
563
- await expect(refreshTokens({ region: "us-east-1", userPoolDomain: "test", clientId: "test" }, "refresh-secret")).rejects.toMatchObject({ statusCode: 400, requiresReauth: false, oauthError: "invalid_request" });
564
- expect(fetchMock).toHaveBeenCalledTimes(2);
565
- });
566
- it("records the Cognito refusal code in the invalidation marker", async () => {
567
- const { accessTokenFingerprint, invalidateCachedTokensByFingerprint } = await importModule();
568
- const accessToken = "access-generation-for-marker";
569
- const fingerprint = accessTokenFingerprint(accessToken);
570
- invalidateCachedTokensByFingerprint(fingerprint, "NotAuthorizedException");
571
- const marker = path.join(tmpHome, ".hq", `cognito-tokens.json.invalid.${fingerprint}`);
572
- expect(fs.readFileSync(marker, "utf8")).toBe("refresh-rejected:NotAuthorizedException");
573
- });
574
- it("logs status and Cognito code without token, email, or identifier material", async () => {
575
- const warn = vi.spyOn(console, "warn").mockImplementation(() => { });
576
- vi.stubGlobal("fetch", vi.fn(async () => new Response(JSON.stringify({
577
- error: "invalid_grant",
578
- error_description: "refresh_token=eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJhYmMiLCJlbWFpbCI6ImFsaWNlQGV4YW1wbGUuY29tIn0.signature user_id=12345678-1234-1234-1234-123456789012",
579
- }), { status: 400 })));
580
- const { refreshTokens } = await importModule();
581
- await expect(refreshTokens({ region: "us-east-1", userPoolDomain: "test", clientId: "test" }, "refresh-secret", "access-secret")).rejects.toMatchObject({ statusCode: 400, oauthError: "invalid_grant" });
582
- const logged = JSON.stringify(warn.mock.calls);
583
- expect(warn).toHaveBeenCalledWith("Cognito refresh failed", expect.objectContaining({
584
- status: 400,
585
- code: "invalid_grant",
586
- }));
587
- expect(logged).not.toMatch(/eyJhbGci|alice@example\.com|12345678-1234-1234-1234-123456789012|refresh-secret|access-secret/);
588
- });
589
- });
590
- // Machine mint identity binding under EMAIL-ALIAS pools (regression, 2026-07-20)
591
- //
592
- // The prod pool aliases email-format usernames: Cognito's canonical username
593
- // (`cognito:username` / access `username`) is a generated UUID equal to `sub`,
594
- // NEVER the email-format username the machine creds carry. The 6.14.13
595
- // predicate bound the ID token to creds via username equality only, so every
596
- // valid outpost/agent mint was rejected with "Machine token mint returned
597
- // tokens that do not match the requested machine identity" — a fleet-wide
598
- // sync outage on boxes. Claim shapes below mirror a real prod outpost token
599
- // (email claim ABSENT: the machine app client cannot read `email`, so Cognito
600
- // omits it from the ID token entirely).
601
- // ---------------------------------------------------------------------------
602
- describe("machine mint under email-alias pools (username is a UUID)", () => {
603
- const MACHINE_CLIENT = "4q3bmth9ad4v3be6booc5td193";
604
- const OUTPOST_UID = "out_01KXVRESJMP7TD263P7S0YHPSD";
605
- const COGNITO_INTERNAL_SUB = "f4981438-a0a1-704c-542a-dfac148f2380";
606
- const CREDS_USERNAME = "out-01kxvresjmp7td263p7s0yhpsd@outposts.hq.computer";
607
- function writeOutpostCreds(overrides = {}) {
608
- const dir = path.join(tmpHome, ".hq-agent");
609
- fs.mkdirSync(dir, { recursive: true });
610
- fs.writeFileSync(path.join(dir, "machine-creds.json"), JSON.stringify({
611
- username: CREDS_USERNAME,
612
- secret: "machine-secret",
613
- clientId: MACHINE_CLIENT,
614
- region: "us-east-1",
615
- entityType: "outpost",
616
- entityUid: OUTPOST_UID,
617
- ...overrides,
618
- }));
619
- }
620
- function mintResponse(accessClaims, idClaims) {
621
- return vi.fn(async () => new Response(JSON.stringify({
622
- AuthenticationResult: {
623
- AccessToken: makeAccessToken(accessClaims),
624
- IdToken: makeAccessToken(idClaims),
625
- ExpiresIn: 3600,
626
- },
627
- }), { status: 200, headers: { "Content-Type": "application/json" } }));
628
- }
629
- it("accepts a valid outpost mint whose cognito:username is the internal UUID (alias pool)", async () => {
630
- const { getValidAccessToken } = await importModule();
631
- writeOutpostCreds();
632
- const fetchMock = mintResponse({
633
- token_use: "access",
634
- client_id: MACHINE_CLIENT,
635
- // Alias pool: access username is the internal UUID, not the email-format name.
636
- username: COGNITO_INTERNAL_SUB,
637
- sub: COGNITO_INTERNAL_SUB,
638
- }, {
639
- token_use: "id",
640
- aud: MACHINE_CLIENT,
641
- "cognito:username": COGNITO_INTERNAL_SUB,
642
- sub: COGNITO_INTERNAL_SUB,
643
- // email claim intentionally ABSENT (client cannot read `email`).
644
- "custom:entityType": "outpost",
645
- "custom:entityUid": OUTPOST_UID,
646
- "custom:delegatedSub": "24785418-c071-7077-b7e9-0b1b583cfba1",
647
- "custom:delegatedEmail": "hassaan@getindigo.ai",
648
- });
649
- vi.stubGlobal("fetch", fetchMock);
650
- await expect(getValidAccessToken(baseConfig, { interactive: false })).resolves.toBeTypeOf("string");
651
- expect(fetchMock).toHaveBeenCalledTimes(1);
652
- });
653
- it("still rejects a mint whose entityUid does not match the requested creds", async () => {
654
- const { getValidAccessToken } = await importModule();
655
- writeOutpostCreds();
656
- const fetchMock = mintResponse({
657
- token_use: "access",
658
- client_id: MACHINE_CLIENT,
659
- username: COGNITO_INTERNAL_SUB,
660
- sub: COGNITO_INTERNAL_SUB,
661
- }, {
662
- token_use: "id",
663
- aud: MACHINE_CLIENT,
664
- "cognito:username": COGNITO_INTERNAL_SUB,
665
- sub: COGNITO_INTERNAL_SUB,
666
- "custom:entityType": "outpost",
667
- // A DIFFERENT machine's uid — identity binding must refuse it.
668
- "custom:entityUid": "out_01KX0000000000000000000000",
669
- "custom:delegatedSub": "24785418-c071-7077-b7e9-0b1b583cfba1",
670
- "custom:delegatedEmail": "hassaan@getindigo.ai",
671
- });
672
- vi.stubGlobal("fetch", fetchMock);
673
- await expect(getValidAccessToken(baseConfig, { interactive: false })).rejects.toThrow(/do not match the requested machine identity/);
674
- });
675
- it("still rejects legacy creds (no entityUid) when the username binding fails", async () => {
676
- const { getValidAccessToken } = await importModule();
677
- // Legacy agent creds: no entityType/entityUid persisted.
678
- writeOutpostCreds({ entityType: undefined, entityUid: undefined, username: "agt-legacy@agents.getindigo.ai" });
679
- const fetchMock = mintResponse({
680
- token_use: "access",
681
- client_id: MACHINE_CLIENT,
682
- username: "someone-else",
683
- sub: "someone-else",
684
- }, {
685
- token_use: "id",
686
- aud: MACHINE_CLIENT,
687
- "cognito:username": "someone-else",
688
- sub: "someone-else",
689
- "custom:entityType": "agent",
690
- "custom:entityUid": "agt_01JZ9999999999999999999999",
691
- });
692
- vi.stubGlobal("fetch", fetchMock);
693
- await expect(getValidAccessToken(baseConfig, { interactive: false })).rejects.toThrow(/do not match the requested machine identity/);
694
- });
695
- });
696
- // ---------------------------------------------------------------------------
697
- // Identity-refusal predicates (HQ-DESKTOP-5S)
698
- //
699
- // A mid-pass Cognito refusal must be classified WITHOUT reading message text —
700
- // the split is driven only by class and the authoritative `requiresReauth` bit.
701
- // These two predicates must partition the Cognito error classes: every instance
702
- // is exactly one of terminal / retryable, and nothing else matches either.
703
- // ---------------------------------------------------------------------------
704
- describe("isTerminalIdentityRefusal / isRetryableIdentityRefusal", () => {
705
- it("splits the Cognito classes into exactly terminal xor retryable", async () => {
706
- const { CognitoAuthError, CognitoRefreshError, isTerminalIdentityRefusal, isRetryableIdentityRefusal, } = await importModule();
707
- // A bare CognitoAuthError (interactive login needed, no browser/stdin) is
708
- // never silently recoverable → terminal.
709
- const authOnly = new CognitoAuthError("interactive login required");
710
- expect(isTerminalIdentityRefusal(authOnly)).toBe(true);
711
- expect(isRetryableIdentityRefusal(authOnly)).toBe(false);
712
- // A refresh failure the status classifier marked requiresReauth (401 or a
713
- // non-408/429 4xx) → terminal, even though it is also a CognitoAuthError.
714
- const reauth = new CognitoRefreshError("Your HQ session needs a quick refresh. Sign in again to keep sync moving.", true, 401, "fp-terminal");
715
- expect(isTerminalIdentityRefusal(reauth)).toBe(true);
716
- expect(isRetryableIdentityRefusal(reauth)).toBe(false);
717
- // A retryable refresh failure (5xx/429/408) after the built-in retry was
718
- // spent → retryable, NOT terminal.
719
- const retryable = new CognitoRefreshError("Cognito refresh failed (503): service unavailable", false, 503, "fp-retryable");
720
- expect(isTerminalIdentityRefusal(retryable)).toBe(false);
721
- expect(isRetryableIdentityRefusal(retryable)).toBe(true);
722
- // A transport-layer refresh failure carries requiresReauth=false → retryable.
723
- const transport = new CognitoRefreshError("Cognito refresh request failed: ECONNRESET", false);
724
- expect(isTerminalIdentityRefusal(transport)).toBe(false);
725
- expect(isRetryableIdentityRefusal(transport)).toBe(true);
726
- });
727
- it("never matches a non-Cognito value (null-safe over unknown)", async () => {
728
- const { isTerminalIdentityRefusal, isRetryableIdentityRefusal } = await importModule();
729
- const { VaultAuthError } = await import("./vault-client.js");
730
- const nonCognito = [
731
- new Error("disk exploded"),
732
- new VaultAuthError("token expired"),
733
- Object.assign(new Error("socket hang up"), { code: "ECONNRESET" }),
734
- "not-an-error",
735
- null,
736
- undefined,
737
- 42,
738
- ];
739
- for (const err of nonCognito) {
740
- expect(isTerminalIdentityRefusal(err)).toBe(false);
741
- expect(isRetryableIdentityRefusal(err)).toBe(false);
742
- }
743
- });
744
- });
745
- //# sourceMappingURL=cognito-auth.test.js.map