@indigoai-us/hq-cli 5.312.2-beta.0 → 5.314.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1144) hide show
  1. package/CHANGELOG.md +1 -4293
  2. package/assets/scaffold/core/scripts/checkpoint-stop-gate.sh +43 -281
  3. package/assets/scaffold/core/scripts/hook-lib.sh +50 -345
  4. package/assets/scaffold/core/scripts/hq-session.sh +23 -184
  5. package/assets/scaffold/core/scripts/lib/session-id.sh +2 -3
  6. package/assets/scaffold/core/scripts/lib/session-scope-capability.sh +1 -1
  7. package/assets/scaffold/core/scripts/lib/work-mesh-enqueue.sh +1 -2
  8. package/assets/scaffold/core/scripts/qmd-reindex-after-sync.sh +87 -10
  9. package/assets/scaffold/core/scripts/rebuild-company-knowledge-index.sh +3 -36
  10. package/assets/scaffold/core/scripts/rebuild-projects-index.sh +12 -99
  11. package/assets/scaffold/core/scripts/token-usage-report.sh +20 -81
  12. package/dist/bin/hq-auth-refresh.d.ts +0 -2
  13. package/dist/bin/hq-auth-refresh.js +6 -12
  14. package/dist/commands/__fixtures__/access-vault.d.ts +0 -2
  15. package/dist/commands/__fixtures__/access-vault.js +1 -1
  16. package/dist/commands/_patterns.d.ts +0 -16
  17. package/dist/commands/_patterns.js +3 -20
  18. package/dist/commands/access.d.ts +1 -2
  19. package/dist/commands/access.js +49 -58
  20. package/dist/commands/agents.d.ts +4 -106
  21. package/dist/commands/agents.js +45 -924
  22. package/dist/commands/auth.d.ts +0 -1
  23. package/dist/commands/auth.js +19 -189
  24. package/dist/commands/billing.d.ts +0 -3
  25. package/dist/commands/billing.js +1 -6
  26. package/dist/commands/channels.js +1 -56
  27. package/dist/commands/cloud-demote.js +2 -3
  28. package/dist/commands/cloud-provision.d.ts +0 -14
  29. package/dist/commands/cloud-provision.js +58 -232
  30. package/dist/commands/cloud.d.ts +15 -49
  31. package/dist/commands/cloud.js +122 -358
  32. package/dist/commands/company-transfer.d.ts +28 -4
  33. package/dist/commands/company-transfer.js +49 -5
  34. package/dist/commands/company.js +3 -66
  35. package/dist/commands/core-checkpoint.d.ts +9 -19
  36. package/dist/commands/core-checkpoint.js +37 -301
  37. package/dist/commands/core.d.ts +0 -4
  38. package/dist/commands/core.js +80 -270
  39. package/dist/commands/crm.js +3 -52
  40. package/dist/commands/db-provision.js +4 -4
  41. package/dist/commands/db-sql.js +21 -7
  42. package/dist/commands/dm.d.ts +12 -119
  43. package/dist/commands/dm.js +38 -388
  44. package/dist/commands/doctor.d.ts +0 -12
  45. package/dist/commands/doctor.js +12 -158
  46. package/dist/commands/feedback.d.ts +0 -6
  47. package/dist/commands/feedback.js +37 -86
  48. package/dist/commands/files-browse.d.ts +12 -32
  49. package/dist/commands/files-browse.js +60 -176
  50. package/dist/commands/files.d.ts +0 -17
  51. package/dist/commands/files.js +47 -300
  52. package/dist/commands/group-grants.js +2 -3
  53. package/dist/commands/groups.js +5 -6
  54. package/dist/commands/index-cmd.d.ts +1 -19
  55. package/dist/commands/index-cmd.js +7 -74
  56. package/dist/commands/integrations-api.d.ts +10 -15
  57. package/dist/commands/integrations-api.js +22 -27
  58. package/dist/commands/integrations-connect.d.ts +13 -51
  59. package/dist/commands/integrations-connect.js +71 -86
  60. package/dist/commands/integrations-core.d.ts +6 -6
  61. package/dist/commands/integrations-core.js +11 -25
  62. package/dist/commands/integrations-import.d.ts +1 -1
  63. package/dist/commands/integrations-import.js +24 -43
  64. package/dist/commands/integrations-manage.js +13 -20
  65. package/dist/commands/integrations.d.ts +0 -8
  66. package/dist/commands/integrations.js +7 -94
  67. package/dist/commands/login.js +6 -49
  68. package/dist/commands/mcp-registration.d.ts +25 -32
  69. package/dist/commands/mcp-registration.js +23 -256
  70. package/dist/commands/mcp-status.js +0 -1
  71. package/dist/commands/meetings.js +34 -55
  72. package/dist/commands/members.js +1 -5
  73. package/dist/commands/mesh.d.ts +0 -11
  74. package/dist/commands/mesh.js +76 -1086
  75. package/dist/commands/onboard-identity-guard.d.ts +1 -1
  76. package/dist/commands/onboard.js +5 -24
  77. package/dist/commands/pack-install.js +1 -3
  78. package/dist/commands/packs.js +1 -11
  79. package/dist/commands/people.d.ts +0 -4
  80. package/dist/commands/people.js +3 -37
  81. package/dist/commands/publish.d.ts +1 -8
  82. package/dist/commands/publish.js +4 -17
  83. package/dist/commands/reindex.js +6 -56
  84. package/dist/commands/rescue.d.ts +0 -4
  85. package/dist/commands/rescue.js +17 -27
  86. package/dist/commands/run.js +4 -18
  87. package/dist/commands/safe-extract.d.ts +2 -11
  88. package/dist/commands/safe-extract.js +8 -36
  89. package/dist/commands/scaffold-fast.d.ts +41 -0
  90. package/dist/commands/scaffold-fast.js +57 -0
  91. package/dist/commands/secrets.d.ts +2 -20
  92. package/dist/commands/secrets.js +71 -175
  93. package/dist/commands/skill.d.ts +4 -35
  94. package/dist/commands/skill.js +18 -357
  95. package/dist/commands/sync-mode.d.ts +0 -11
  96. package/dist/commands/sync-mode.js +0 -30
  97. package/dist/commands/sync-narrow.js +5 -36
  98. package/dist/commands/team-sync.js +10 -71
  99. package/dist/commands/update.js +0 -6
  100. package/dist/commands/whoami.d.ts +0 -22
  101. package/dist/commands/whoami.js +4 -137
  102. package/dist/commands/workers.d.ts +14 -2
  103. package/dist/commands/workers.js +10 -7
  104. package/dist/fast-core.d.ts +7 -6
  105. package/dist/fast-core.js +24 -80
  106. package/dist/index.d.ts +4 -3
  107. package/dist/index.js +9 -59
  108. package/dist/lazy-commands.d.ts +44 -20
  109. package/dist/lazy-commands.js +58 -60
  110. package/dist/lib/company-skill-wrapper.d.ts +0 -1
  111. package/dist/lib/company-skill-wrapper.js +29 -121
  112. package/dist/lib/core-utils/codex-skill-bridge.d.ts +1 -2
  113. package/dist/lib/core-utils/qmd-reindex-after-sync.d.ts +1 -14
  114. package/dist/lib/core-utils/qmd-reindex-after-sync.js +17 -101
  115. package/dist/lib/core-utils/soft-timeout.js +1 -1
  116. package/dist/lib/core-utils/timeout-guard.d.ts +3 -3
  117. package/dist/lib/core-utils/timeout-guard.js +13 -28
  118. package/dist/lib/core-utils/token-usage-report.js +3 -17
  119. package/dist/lib/db/control-plane.js +0 -6
  120. package/dist/lib/db/local.d.ts +5 -0
  121. package/dist/lib/db/local.js +1 -1
  122. package/dist/lib/db/migrate.d.ts +12 -0
  123. package/dist/lib/db/migrate.js +5 -5
  124. package/dist/lib/db/remote-sql.d.ts +2 -2
  125. package/dist/lib/db/remote-sql.js +3 -3
  126. package/dist/lib/db/sql.d.ts +10 -0
  127. package/dist/lib/db/sql.js +8 -4
  128. package/dist/lib/doctor/__testing__/fake-hq-tree.d.ts +1 -1
  129. package/dist/lib/doctor/__testing__/fake-hq-tree.js +1 -1
  130. package/dist/lib/doctor/checks/claude-wiring.js +1 -70
  131. package/dist/lib/doctor/checks/codex-wiring.d.ts +4 -0
  132. package/dist/lib/doctor/checks/codex-wiring.js +35 -3
  133. package/dist/lib/doctor/checks/grok-wiring.js +34 -1
  134. package/dist/lib/doctor/checks/integrations.js +0 -11
  135. package/dist/lib/doctor/checks/runtime-health.d.ts +17 -4
  136. package/dist/lib/doctor/checks/runtime-health.js +7 -20
  137. package/dist/lib/doctor/checks/sync-health.d.ts +0 -21
  138. package/dist/lib/doctor/checks/sync-health.js +2 -72
  139. package/dist/lib/doctor/checks/work-context.js +6 -12
  140. package/dist/lib/doctor/compat.d.ts +16 -0
  141. package/dist/lib/doctor/compat.js +3 -4
  142. package/dist/lib/doctor/deep/effects.js +3 -1
  143. package/dist/lib/doctor/deep/executor.d.ts +10 -4
  144. package/dist/lib/doctor/deep/executor.js +1 -1
  145. package/dist/lib/doctor/deep/parity.d.ts +29 -2
  146. package/dist/lib/doctor/deep/parity.js +7 -7
  147. package/dist/lib/doctor/deep/sandbox.d.ts +25 -7
  148. package/dist/lib/doctor/deep/sandbox.js +7 -5
  149. package/dist/lib/doctor/fix/apply.d.ts +8 -79
  150. package/dist/lib/doctor/fix/apply.js +80 -292
  151. package/dist/lib/doctor/fix/remediation.d.ts +6 -14
  152. package/dist/lib/doctor/fix/remediation.js +9 -49
  153. package/dist/lib/doctor/fixtures/schema.js +3 -1
  154. package/dist/lib/doctor/json-output.d.ts +1 -17
  155. package/dist/lib/doctor/json-output.js +2 -7
  156. package/dist/lib/doctor/platform.d.ts +26 -0
  157. package/dist/lib/doctor/platform.js +5 -5
  158. package/dist/lib/doctor/registry.d.ts +0 -14
  159. package/dist/lib/doctor/registry.js +0 -71
  160. package/dist/lib/doctor/report.js +1 -1
  161. package/dist/lib/doctor/types.d.ts +0 -5
  162. package/dist/lib/doctor/types.js +0 -20
  163. package/dist/lib/flag-registry-worker.js +1 -12
  164. package/dist/lib/flag-registry.d.ts +6 -26
  165. package/dist/lib/flag-registry.js +16 -133
  166. package/dist/lib/index-render/companies.d.ts +1 -4
  167. package/dist/lib/index-render/companies.js +3 -66
  168. package/dist/lib/index-render/company-knowledge.js +17 -80
  169. package/dist/lib/index-render/index.d.ts +0 -1
  170. package/dist/lib/index-render/index.js +1 -2
  171. package/dist/lib/index-render/projects.js +5 -82
  172. package/dist/lib/index-render/shared.d.ts +1 -13
  173. package/dist/lib/index-render/shared.js +2 -41
  174. package/dist/lib/mesh/api.d.ts +10 -103
  175. package/dist/lib/mesh/api.js +64 -334
  176. package/dist/lib/mesh/client.d.ts +2 -3
  177. package/dist/lib/mesh/client.js +2 -3
  178. package/dist/lib/mesh/live/backfill-held.d.ts +16 -67
  179. package/dist/lib/mesh/live/backfill-held.js +61 -415
  180. package/dist/lib/mesh/live/backoff.d.ts +2 -2
  181. package/dist/lib/mesh/live/backoff.js +3 -16
  182. package/dist/lib/mesh/live/daemon/board-refresh.d.ts +1 -7
  183. package/dist/lib/mesh/live/daemon/board-refresh.js +30 -78
  184. package/dist/lib/mesh/live/daemon/credentials.d.ts +10 -64
  185. package/dist/lib/mesh/live/daemon/credentials.js +20 -270
  186. package/dist/lib/mesh/live/daemon/doctor.d.ts +0 -51
  187. package/dist/lib/mesh/live/daemon/doctor.js +6 -180
  188. package/dist/lib/mesh/live/daemon/index.d.ts +10 -13
  189. package/dist/lib/mesh/live/daemon/index.js +6 -7
  190. package/dist/lib/mesh/live/daemon/install.d.ts +1 -255
  191. package/dist/lib/mesh/live/daemon/install.js +13 -811
  192. package/dist/lib/mesh/live/daemon/paths.d.ts +0 -2
  193. package/dist/lib/mesh/live/daemon/paths.js +0 -2
  194. package/dist/lib/mesh/live/daemon/presence.d.ts +5 -24
  195. package/dist/lib/mesh/live/daemon/presence.js +10 -79
  196. package/dist/lib/mesh/live/daemon/run.d.ts +2 -48
  197. package/dist/lib/mesh/live/daemon/run.js +33 -485
  198. package/dist/lib/mesh/live/daemon/state.d.ts +2 -19
  199. package/dist/lib/mesh/live/daemon/state.js +2 -34
  200. package/dist/lib/mesh/live/daemon/transcript-watch.d.ts +9 -45
  201. package/dist/lib/mesh/live/daemon/transcript-watch.js +31 -227
  202. package/dist/lib/mesh/live/emit-client.d.ts +0 -8
  203. package/dist/lib/mesh/live/emit-client.js +8 -23
  204. package/dist/lib/mesh/live/emit-evidence.d.ts +0 -19
  205. package/dist/lib/mesh/live/emit-evidence.js +2 -20
  206. package/dist/lib/mesh/live/emit.d.ts +0 -9
  207. package/dist/lib/mesh/live/emit.js +2 -28
  208. package/dist/lib/mesh/live/enqueue.d.ts +0 -5
  209. package/dist/lib/mesh/live/enqueue.js +0 -19
  210. package/dist/lib/mesh/live/flush.d.ts +5 -17
  211. package/dist/lib/mesh/live/flush.js +38 -391
  212. package/dist/lib/mesh/live/format-spool-line.d.ts +2 -5
  213. package/dist/lib/mesh/live/format-spool-line.js +0 -10
  214. package/dist/lib/mesh/live/paths.d.ts +0 -2
  215. package/dist/lib/mesh/live/paths.js +0 -4
  216. package/dist/lib/mesh/live/session-event.schema.json +1 -24
  217. package/dist/lib/mesh/live/session-events-client.d.ts +0 -2
  218. package/dist/lib/mesh/live/session-events-client.js +0 -26
  219. package/dist/lib/mesh/live/spool.d.ts +0 -19
  220. package/dist/lib/mesh/live/spool.js +3 -269
  221. package/dist/lib/mesh/live/validate-session-event.d.ts +1 -1
  222. package/dist/lib/mesh/live/validate-session-event.js +1 -1
  223. package/dist/lib/plan-limit-nag.d.ts +6 -102
  224. package/dist/lib/plan-limit-nag.js +43 -348
  225. package/dist/lib/scan-packages/index.d.ts +0 -2
  226. package/dist/lib/scan-packages/index.js +6 -168
  227. package/dist/lib/search-index/background.d.ts +1 -8
  228. package/dist/lib/search-index/background.js +200 -55
  229. package/dist/lib/search-index/index.d.ts +0 -12
  230. package/dist/lib/search-index/index.js +7 -153
  231. package/dist/lib/work-context/company.d.ts +20 -22
  232. package/dist/lib/work-context/company.js +40 -124
  233. package/dist/lib/work-context/config.d.ts +11 -58
  234. package/dist/lib/work-context/config.js +83 -334
  235. package/dist/lib/work-context/contract.d.ts +0 -10
  236. package/dist/lib/work-context/index.d.ts +25 -0
  237. package/dist/lib/work-context/index.js +21 -0
  238. package/dist/lib/work-context/outbox.d.ts +1 -14
  239. package/dist/lib/work-context/outbox.js +1 -87
  240. package/dist/lib/work-context/reconcile.d.ts +0 -15
  241. package/dist/lib/work-context/reconcile.js +25 -380
  242. package/dist/lib/work-context/state.d.ts +10 -93
  243. package/dist/lib/work-context/state.js +29 -342
  244. package/dist/lib/workers-registry/index.js +8 -62
  245. package/dist/main.d.ts +0 -12
  246. package/dist/main.js +73 -266
  247. package/dist/node-network-compat.d.ts +30 -2
  248. package/dist/node-network-compat.js +51 -4
  249. package/dist/node-preflight.d.ts +1 -7
  250. package/dist/node-preflight.js +5 -5
  251. package/dist/register-all.d.ts +29 -4
  252. package/dist/register-all.js +233 -4
  253. package/dist/run/discover-schemas.d.ts +1 -2
  254. package/dist/run/env-graph-guard.d.ts +2 -2
  255. package/dist/run/env-graph-guard.js +2 -5
  256. package/dist/run/hq-plugin.d.ts +0 -4
  257. package/dist/run/hq-plugin.js +8 -36
  258. package/dist/sentry-before-send.js +0 -80
  259. package/dist/sentry.d.ts +2 -8
  260. package/dist/sentry.js +13 -117
  261. package/dist/startup-registration.d.ts +2 -26
  262. package/dist/startup-registration.js +15 -116
  263. package/dist/utils/cli-telemetry.d.ts +1 -74
  264. package/dist/utils/cli-telemetry.js +7 -434
  265. package/dist/utils/client-health.d.ts +4 -0
  266. package/dist/utils/client-health.js +2 -2
  267. package/dist/utils/cognito-session.d.ts +0 -71
  268. package/dist/utils/cognito-session.js +27 -481
  269. package/dist/utils/contribution-table.d.ts +1 -1
  270. package/dist/utils/environmental-error.d.ts +0 -18
  271. package/dist/utils/environmental-error.js +7 -240
  272. package/dist/utils/expected-cli-error.d.ts +0 -2
  273. package/dist/utils/expected-cli-error.js +0 -4
  274. package/dist/utils/feedback-diagnostics.d.ts +1 -2
  275. package/dist/utils/feedback-log-bundle.d.ts +26 -51
  276. package/dist/utils/feedback-log-bundle.js +31 -211
  277. package/dist/utils/feedback-logs.d.ts +47 -18
  278. package/dist/utils/feedback-logs.js +21 -50
  279. package/dist/utils/feedback-screenshots.d.ts +1 -0
  280. package/dist/utils/feedback-screenshots.js +1 -1
  281. package/dist/utils/hq-roots.d.ts +2 -25
  282. package/dist/utils/hq-roots.js +7 -67
  283. package/dist/utils/incomplete-install-error.d.ts +19 -87
  284. package/dist/utils/incomplete-install-error.js +68 -319
  285. package/dist/utils/install-tree-torn.d.ts +24 -260
  286. package/dist/utils/install-tree-torn.js +51 -998
  287. package/dist/utils/large-file-guard.d.ts +10 -0
  288. package/dist/utils/large-file-guard.js +1 -1
  289. package/dist/utils/local-files-overview.d.ts +8 -4
  290. package/dist/utils/local-files-overview.js +7 -48
  291. package/dist/utils/login-provider.d.ts +0 -7
  292. package/dist/utils/login-provider.js +0 -34
  293. package/dist/utils/pack-contributions.d.ts +9 -2
  294. package/dist/utils/pack-contributions.js +43 -6
  295. package/dist/utils/package-root-diagnostics.d.ts +1 -1
  296. package/dist/utils/people.d.ts +11 -7
  297. package/dist/utils/people.js +20 -5
  298. package/dist/utils/plan-gate-error.d.ts +10 -52
  299. package/dist/utils/plan-gate-error.js +41 -364
  300. package/dist/utils/qmd-model-download-error.d.ts +8 -0
  301. package/dist/utils/qmd-model-download-error.js +1 -1
  302. package/dist/utils/qmd-query-document-error.d.ts +6 -0
  303. package/dist/utils/qmd-query-document-error.js +1 -1
  304. package/dist/utils/redact-error-text.js +1 -2
  305. package/dist/utils/run-bundled-script.d.ts +0 -6
  306. package/dist/utils/run-bundled-script.js +4 -117
  307. package/dist/utils/secrets-cache.d.ts +3 -7
  308. package/dist/utils/secrets-cache.js +14 -162
  309. package/dist/utils/self-update.d.ts +1 -34
  310. package/dist/utils/self-update.js +42 -660
  311. package/dist/utils/sentry-fingerprint.d.ts +1 -23
  312. package/dist/utils/sentry-fingerprint.js +31 -223
  313. package/dist/utils/team-upgrade.d.ts +1 -1
  314. package/dist/utils/team-upgrade.js +3 -4
  315. package/dist/utils/vault-api.d.ts +1 -21
  316. package/dist/utils/vault-api.js +84 -251
  317. package/dist/utils/version-check.d.ts +1 -11
  318. package/dist/utils/version-check.js +3 -32
  319. package/dist/utils/version-gate.d.ts +17 -101
  320. package/dist/utils/version-gate.js +70 -645
  321. package/dist/utils/windows-spawn.d.ts +0 -6
  322. package/dist/utils/windows-spawn.js +0 -37
  323. package/package.json +8 -20
  324. package/README.md +0 -113
  325. package/assets/bot-workers/setup/context/USER-GUIDE.md +0 -404
  326. package/assets/bot-workers/setup/context/quick-reference.md +0 -199
  327. package/assets/bot-workers/setup/skills/agents-and-team.md +0 -167
  328. package/assets/bot-workers/setup/skills/explain-hq.md +0 -35
  329. package/assets/bot-workers/setup/skills/first-company.md +0 -74
  330. package/assets/bot-workers/setup/skills/joining-a-team.md +0 -125
  331. package/assets/bot-workers/setup/skills/pricing.md +0 -92
  332. package/assets/bot-workers/setup/skills/standing-help.md +0 -81
  333. package/assets/bot-workers/setup/skills/your-business.md +0 -281
  334. package/assets/bot-workers/setup/worker.yaml +0 -791
  335. package/assets/lanes-hooks/hq-lanes-drain.json +0 -15
  336. package/assets/lanes-hooks/hq-lanes-drain.mjs +0 -275
  337. package/assets/lanes-hooks/hq-lanes-drain.sh +0 -21
  338. package/assets/lanes-reconcile/hq-lanes-reconcile.service +0 -11
  339. package/assets/lanes-reconcile/hq-lanes-reconcile.timer +0 -12
  340. package/assets/scaffold/.claude/hooks/validate-policy-frontmatter.sh +0 -485
  341. package/assets/scaffold/core/scripts/audit-log.sh +0 -384
  342. package/assets/scaffold/core/scripts/clean-worktree-reconcile-handoff.sh +0 -171
  343. package/assets/scaffold/core/scripts/eval-trigger.sh +0 -193
  344. package/assets/scaffold/core/scripts/git-pack-extension-check.sh +0 -164
  345. package/assets/scaffold/core/scripts/handoff-finalize.sh +0 -688
  346. package/assets/scaffold/core/scripts/handoff-open-steps.sh +0 -81
  347. package/assets/scaffold/core/scripts/handoff-post.sh +0 -252
  348. package/assets/scaffold/core/scripts/hq-delegate-bundle.sh +0 -307
  349. package/assets/scaffold/core/scripts/hq-delegate-grant.sh +0 -252
  350. package/assets/scaffold/core/scripts/hq-delegate-pickup.sh +0 -99
  351. package/assets/scaffold/core/scripts/hq-delegate-publish.sh +0 -91
  352. package/assets/scaffold/core/scripts/hq-delegate-repo.sh +0 -158
  353. package/assets/scaffold/core/scripts/hq-delegate-resolve.sh +0 -145
  354. package/assets/scaffold/core/scripts/hq-delegate-secrets.sh +0 -129
  355. package/assets/scaffold/core/scripts/hq-delegate-send.sh +0 -259
  356. package/assets/scaffold/core/scripts/hq-delegate-transfer.sh +0 -175
  357. package/assets/scaffold/core/scripts/hq-delegate-verify.sh +0 -238
  358. package/assets/scaffold/core/scripts/hq-dm-bind.sh +0 -585
  359. package/assets/scaffold/core/scripts/hq-job-notify.sh +0 -389
  360. package/assets/scaffold/core/scripts/hq-job-probe.sh +0 -835
  361. package/assets/scaffold/core/scripts/hq-job-remediate.sh +0 -359
  362. package/assets/scaffold/core/scripts/hq-job-run.sh +0 -1025
  363. package/assets/scaffold/core/scripts/hq-pin.sh +0 -118
  364. package/assets/scaffold/core/scripts/jobs-schedule-parse.sh +0 -310
  365. package/assets/scaffold/core/scripts/jobs-validate.sh +0 -451
  366. package/assets/scaffold/core/scripts/knowledge-prefs.sh +0 -55
  367. package/assets/scaffold/core/scripts/lib/portable.sh +0 -211
  368. package/assets/scaffold/core/scripts/lib/secret-patterns.sh +0 -58
  369. package/assets/scaffold/core/scripts/ontology-audience-grant.sh +0 -81
  370. package/assets/scaffold/core/scripts/ontology-brief.mjs +0 -93
  371. package/assets/scaffold/core/scripts/ontology-candidate.sh +0 -100
  372. package/assets/scaffold/core/scripts/ontology-garden.mjs +0 -238
  373. package/assets/scaffold/core/scripts/ontology-source-worklist.sh +0 -79
  374. package/assets/scaffold/core/scripts/outpost-jobs-reconcile.sh +0 -834
  375. package/assets/scaffold/core/scripts/policy-age-report.sh +0 -156
  376. package/assets/scaffold/core/scripts/policy-retire.sh +0 -199
  377. package/assets/scaffold/core/scripts/qmd-reindex-bg.sh +0 -40
  378. package/assets/scaffold/core/scripts/read-policy-frontmatter.sh +0 -32
  379. package/assets/scaffold/core/scripts/refresh-vault-access.sh +0 -188
  380. package/assets/scaffold/core/scripts/resolve-company.sh +0 -199
  381. package/assets/scaffold/core/scripts/resume-thread-lock.sh +0 -285
  382. package/assets/scaffold/core/scripts/source-yaml-validate.sh +0 -36
  383. package/assets/scaffold/core/scripts/verify-story-deliverables.sh +0 -148
  384. package/assets/scaffold/core/scripts/work-mesh-live-bind-trusted.sh +0 -152
  385. package/assets/scaffold/core/scripts/worktree-gc.sh +0 -362
  386. package/contracts/preflight/v1/fixtures.json +0 -87
  387. package/contracts/preflight/v1/schema.json +0 -58
  388. package/dist/command-catalog.generated.d.ts +0 -10655
  389. package/dist/command-catalog.generated.js +0 -13737
  390. package/dist/command-registration-plan.d.ts +0 -474
  391. package/dist/command-registration-plan.js +0 -136
  392. package/dist/commands/agent-enroll.d.ts +0 -146
  393. package/dist/commands/agent-enroll.js +0 -401
  394. package/dist/commands/agent-inbox.d.ts +0 -9
  395. package/dist/commands/agent-inbox.js +0 -102
  396. package/dist/commands/agent-kit.d.ts +0 -87
  397. package/dist/commands/agent-kit.js +0 -480
  398. package/dist/commands/agent-mcp.d.ts +0 -24
  399. package/dist/commands/agent-mcp.js +0 -127
  400. package/dist/commands/agent-probe.d.ts +0 -77
  401. package/dist/commands/agent-probe.js +0 -335
  402. package/dist/commands/agent.d.ts +0 -13
  403. package/dist/commands/agent.js +0 -40
  404. package/dist/commands/billing-sponsor.d.ts +0 -83
  405. package/dist/commands/billing-sponsor.js +0 -344
  406. package/dist/commands/bot-companies.d.ts +0 -40
  407. package/dist/commands/bot-companies.js +0 -64
  408. package/dist/commands/bot-continuity.d.ts +0 -28
  409. package/dist/commands/bot-continuity.js +0 -68
  410. package/dist/commands/bot-jobs.d.ts +0 -127
  411. package/dist/commands/bot-jobs.js +0 -454
  412. package/dist/commands/bot.d.ts +0 -278
  413. package/dist/commands/bot.js +0 -1982
  414. package/dist/commands/cloud-retire.d.ts +0 -51
  415. package/dist/commands/cloud-retire.js +0 -154
  416. package/dist/commands/core-audit-log-native.d.ts +0 -9
  417. package/dist/commands/core-audit-log-native.js +0 -257
  418. package/dist/commands/core-checkpoint-gate-setting.d.ts +0 -59
  419. package/dist/commands/core-checkpoint-gate-setting.js +0 -163
  420. package/dist/commands/core-checkpoint-stop-gate-native.d.ts +0 -34
  421. package/dist/commands/core-checkpoint-stop-gate-native.js +0 -725
  422. package/dist/commands/core-command-catalog.d.ts +0 -34
  423. package/dist/commands/core-command-catalog.js +0 -62
  424. package/dist/commands/core-company-index-scope-flag.d.ts +0 -3
  425. package/dist/commands/core-company-index-scope-flag.js +0 -6
  426. package/dist/commands/core-delegate-w1b.d.ts +0 -10
  427. package/dist/commands/core-delegate-w1b.js +0 -1219
  428. package/dist/commands/core-delegate.d.ts +0 -46
  429. package/dist/commands/core-delegate.js +0 -1040
  430. package/dist/commands/core-dm-bind-native.d.ts +0 -32
  431. package/dist/commands/core-dm-bind-native.js +0 -668
  432. package/dist/commands/core-git-pack-extension-check-native.d.ts +0 -22
  433. package/dist/commands/core-git-pack-extension-check-native.js +0 -190
  434. package/dist/commands/core-handoff-fast.d.ts +0 -18
  435. package/dist/commands/core-handoff-fast.js +0 -104
  436. package/dist/commands/core-handoff-open-steps.d.ts +0 -21
  437. package/dist/commands/core-handoff-open-steps.js +0 -264
  438. package/dist/commands/core-handoff.d.ts +0 -24
  439. package/dist/commands/core-handoff.js +0 -1144
  440. package/dist/commands/core-hq-session-native.d.ts +0 -39
  441. package/dist/commands/core-hq-session-native.js +0 -579
  442. package/dist/commands/core-job-native-utils.d.ts +0 -6
  443. package/dist/commands/core-job-native-utils.js +0 -80
  444. package/dist/commands/core-job-native.d.ts +0 -5
  445. package/dist/commands/core-job-native.js +0 -16
  446. package/dist/commands/core-job-notify-native.d.ts +0 -36
  447. package/dist/commands/core-job-notify-native.js +0 -359
  448. package/dist/commands/core-job-probe-native.d.ts +0 -45
  449. package/dist/commands/core-job-probe-native.js +0 -564
  450. package/dist/commands/core-job-remediate-native.d.ts +0 -26
  451. package/dist/commands/core-job-remediate-native.js +0 -374
  452. package/dist/commands/core-job-remote-launcher.d.ts +0 -7
  453. package/dist/commands/core-job-remote-launcher.js +0 -51
  454. package/dist/commands/core-job-run-native.d.ts +0 -47
  455. package/dist/commands/core-job-run-native.js +0 -1215
  456. package/dist/commands/core-jobs-native.d.ts +0 -25
  457. package/dist/commands/core-jobs-native.js +0 -1339
  458. package/dist/commands/core-knowledge-prefs.d.ts +0 -12
  459. package/dist/commands/core-knowledge-prefs.js +0 -137
  460. package/dist/commands/core-native-handoff-flag.d.ts +0 -4
  461. package/dist/commands/core-native-handoff-flag.js +0 -7
  462. package/dist/commands/core-native-jobs-flag.d.ts +0 -4
  463. package/dist/commands/core-native-jobs-flag.js +0 -7
  464. package/dist/commands/core-native-policy-flag.d.ts +0 -9
  465. package/dist/commands/core-native-policy-flag.js +0 -12
  466. package/dist/commands/core-native-session-flag.d.ts +0 -4
  467. package/dist/commands/core-native-session-flag.js +0 -7
  468. package/dist/commands/core-native-utilities-flag.d.ts +0 -4
  469. package/dist/commands/core-native-utilities-flag.js +0 -7
  470. package/dist/commands/core-native-utilities.d.ts +0 -29
  471. package/dist/commands/core-native-utilities.js +0 -54
  472. package/dist/commands/core-native-worker-skills-flag.d.ts +0 -4
  473. package/dist/commands/core-native-worker-skills-flag.js +0 -7
  474. package/dist/commands/core-ontology-native.d.ts +0 -17
  475. package/dist/commands/core-ontology-native.js +0 -916
  476. package/dist/commands/core-ontology.d.ts +0 -66
  477. package/dist/commands/core-ontology.js +0 -430
  478. package/dist/commands/core-pin-native.d.ts +0 -14
  479. package/dist/commands/core-pin-native.js +0 -236
  480. package/dist/commands/core-policy-frontmatter.d.ts +0 -8
  481. package/dist/commands/core-policy-frontmatter.js +0 -52
  482. package/dist/commands/core-policy.d.ts +0 -14
  483. package/dist/commands/core-policy.js +0 -1018
  484. package/dist/commands/core-refresh-vault-access-native.d.ts +0 -20
  485. package/dist/commands/core-refresh-vault-access-native.js +0 -229
  486. package/dist/commands/core-resolve-company-command.d.ts +0 -4
  487. package/dist/commands/core-resolve-company-command.js +0 -42
  488. package/dist/commands/core-resolve-company-native.d.ts +0 -28
  489. package/dist/commands/core-resolve-company-native.js +0 -408
  490. package/dist/commands/core-work-mesh-bind-trusted-native.d.ts +0 -32
  491. package/dist/commands/core-work-mesh-bind-trusted-native.js +0 -190
  492. package/dist/commands/core-worker-lint-native.d.ts +0 -4
  493. package/dist/commands/core-worker-lint-native.js +0 -160
  494. package/dist/commands/core-worker-share-native.d.ts +0 -5
  495. package/dist/commands/core-worker-share-native.js +0 -260
  496. package/dist/commands/core-worker-skills-command.d.ts +0 -8
  497. package/dist/commands/core-worker-skills-command.js +0 -33
  498. package/dist/commands/core-worker-skills-runtime.d.ts +0 -33
  499. package/dist/commands/core-worker-skills-runtime.js +0 -86
  500. package/dist/commands/daemon.d.ts +0 -63
  501. package/dist/commands/daemon.js +0 -877
  502. package/dist/commands/deploy-comments.d.ts +0 -3
  503. package/dist/commands/deploy-comments.js +0 -162
  504. package/dist/commands/lanes-accounts.d.ts +0 -28
  505. package/dist/commands/lanes-accounts.js +0 -595
  506. package/dist/commands/lanes-autopilot.d.ts +0 -11
  507. package/dist/commands/lanes-autopilot.js +0 -336
  508. package/dist/commands/lanes-checks.d.ts +0 -51
  509. package/dist/commands/lanes-checks.js +0 -941
  510. package/dist/commands/lanes-hold.d.ts +0 -43
  511. package/dist/commands/lanes-hold.js +0 -655
  512. package/dist/commands/lanes-kpis.d.ts +0 -11
  513. package/dist/commands/lanes-kpis.js +0 -34
  514. package/dist/commands/lanes-message.d.ts +0 -9
  515. package/dist/commands/lanes-message.js +0 -934
  516. package/dist/commands/lanes-move.d.ts +0 -12
  517. package/dist/commands/lanes-move.js +0 -397
  518. package/dist/commands/lanes-questions.d.ts +0 -36
  519. package/dist/commands/lanes-questions.js +0 -1004
  520. package/dist/commands/lanes-report.d.ts +0 -11
  521. package/dist/commands/lanes-report.js +0 -333
  522. package/dist/commands/lanes-resume.d.ts +0 -6
  523. package/dist/commands/lanes-resume.js +0 -561
  524. package/dist/commands/lanes-review.d.ts +0 -10
  525. package/dist/commands/lanes-review.js +0 -56
  526. package/dist/commands/lanes-shared.d.ts +0 -448
  527. package/dist/commands/lanes-shared.js +0 -170
  528. package/dist/commands/lanes-stories.d.ts +0 -15
  529. package/dist/commands/lanes-stories.js +0 -347
  530. package/dist/commands/lanes-watch.d.ts +0 -7
  531. package/dist/commands/lanes-watch.js +0 -216
  532. package/dist/commands/lanes.d.ts +0 -149
  533. package/dist/commands/lanes.js +0 -8843
  534. package/dist/commands/monitor.d.ts +0 -58
  535. package/dist/commands/monitor.js +0 -980
  536. package/dist/commands/onboard-bot-membership.d.ts +0 -32
  537. package/dist/commands/onboard-bot-membership.js +0 -40
  538. package/dist/commands/onboard-create-identity.d.ts +0 -26
  539. package/dist/commands/onboard-create-identity.js +0 -23
  540. package/dist/commands/outpost-pruner.d.ts +0 -3
  541. package/dist/commands/outpost-pruner.js +0 -125
  542. package/dist/commands/personal-connector-settings-flag.d.ts +0 -4
  543. package/dist/commands/personal-connector-settings-flag.js +0 -7
  544. package/dist/commands/personal-targeted-push-flag.d.ts +0 -4
  545. package/dist/commands/personal-targeted-push-flag.js +0 -7
  546. package/dist/commands/personal-targeted-push-paths.d.ts +0 -3
  547. package/dist/commands/personal-targeted-push-paths.js +0 -67
  548. package/dist/commands/report.d.ts +0 -19
  549. package/dist/commands/report.js +0 -537
  550. package/dist/commands/run-feature-telemetry.d.ts +0 -3
  551. package/dist/commands/run-feature-telemetry.js +0 -6
  552. package/dist/commands/staff/reset-test-account.d.ts +0 -110
  553. package/dist/commands/staff/reset-test-account.js +0 -268
  554. package/dist/commands/staff/test-account.d.ts +0 -51
  555. package/dist/commands/staff/test-account.js +0 -196
  556. package/dist/commands/vault-retention-flag.d.ts +0 -3
  557. package/dist/commands/vault-retention-flag.js +0 -9
  558. package/dist/commands/vault-retention.d.ts +0 -11
  559. package/dist/commands/vault-retention.js +0 -69
  560. package/dist/commands/version.d.ts +0 -10
  561. package/dist/commands/version.js +0 -11
  562. package/dist/fast-scaffold.d.ts +0 -84
  563. package/dist/fast-scaffold.js +0 -353
  564. package/dist/lanes-drain-hook.d.ts +0 -14
  565. package/dist/lanes-drain-hook.js +0 -203
  566. package/dist/lib/agent-kit/adopt-identity.d.ts +0 -27
  567. package/dist/lib/agent-kit/adopt-identity.js +0 -60
  568. package/dist/lib/agent-kit/attachment-download.d.ts +0 -24
  569. package/dist/lib/agent-kit/attachment-download.js +0 -47
  570. package/dist/lib/agent-kit/creds.d.ts +0 -106
  571. package/dist/lib/agent-kit/creds.js +0 -163
  572. package/dist/lib/agent-kit/fallback.d.ts +0 -78
  573. package/dist/lib/agent-kit/fallback.js +0 -210
  574. package/dist/lib/agent-kit/inbox-state.d.ts +0 -83
  575. package/dist/lib/agent-kit/inbox-state.js +0 -159
  576. package/dist/lib/agent-kit/kit-config.d.ts +0 -56
  577. package/dist/lib/agent-kit/kit-config.js +0 -65
  578. package/dist/lib/agent-kit/log.d.ts +0 -16
  579. package/dist/lib/agent-kit/log.js +0 -46
  580. package/dist/lib/agent-kit/mcp/attachments.d.ts +0 -126
  581. package/dist/lib/agent-kit/mcp/attachments.js +0 -222
  582. package/dist/lib/agent-kit/mcp/jsonrpc.d.ts +0 -75
  583. package/dist/lib/agent-kit/mcp/jsonrpc.js +0 -164
  584. package/dist/lib/agent-kit/mcp/tools.d.ts +0 -64
  585. package/dist/lib/agent-kit/mcp/tools.js +0 -397
  586. package/dist/lib/agent-kit/paths.d.ts +0 -65
  587. package/dist/lib/agent-kit/paths.js +0 -118
  588. package/dist/lib/agent-kit/private-file.d.ts +0 -29
  589. package/dist/lib/agent-kit/private-file.js +0 -91
  590. package/dist/lib/agent-kit/run/heartbeat.d.ts +0 -72
  591. package/dist/lib/agent-kit/run/heartbeat.js +0 -128
  592. package/dist/lib/agent-kit/run/inbox.d.ts +0 -76
  593. package/dist/lib/agent-kit/run/inbox.js +0 -205
  594. package/dist/lib/agent-kit/run/supervisor.d.ts +0 -35
  595. package/dist/lib/agent-kit/run/supervisor.js +0 -85
  596. package/dist/lib/agent-kit/run/sync.d.ts +0 -33
  597. package/dist/lib/agent-kit/run/sync.js +0 -58
  598. package/dist/lib/agent-kit/services.d.ts +0 -31
  599. package/dist/lib/agent-kit/services.js +0 -55
  600. package/dist/lib/agent-kit/skills.d.ts +0 -18
  601. package/dist/lib/agent-kit/skills.js +0 -151
  602. package/dist/lib/agent-kit/wake.d.ts +0 -83
  603. package/dist/lib/agent-kit/wake.js +0 -243
  604. package/dist/lib/agents/model-catalog.d.ts +0 -62
  605. package/dist/lib/agents/model-catalog.js +0 -275
  606. package/dist/lib/auth-login-provider-state.d.ts +0 -8
  607. package/dist/lib/auth-login-provider-state.js +0 -63
  608. package/dist/lib/aws-sdk-node-warning-output.d.ts +0 -12
  609. package/dist/lib/aws-sdk-node-warning-output.js +0 -22
  610. package/dist/lib/billing/free-month.d.ts +0 -18
  611. package/dist/lib/billing/free-month.js +0 -31
  612. package/dist/lib/billing/plan-limit-refusals.d.ts +0 -69
  613. package/dist/lib/billing/plan-limit-refusals.js +0 -187
  614. package/dist/lib/billing/plan-limit-upgrade-url.d.ts +0 -11
  615. package/dist/lib/billing/plan-limit-upgrade-url.js +0 -66
  616. package/dist/lib/billing/plan-lock.d.ts +0 -143
  617. package/dist/lib/billing/plan-lock.js +0 -439
  618. package/dist/lib/bot/api.d.ts +0 -349
  619. package/dist/lib/bot/api.js +0 -316
  620. package/dist/lib/bot/attachments.d.ts +0 -45
  621. package/dist/lib/bot/attachments.js +0 -89
  622. package/dist/lib/bot/cli-update.d.ts +0 -138
  623. package/dist/lib/bot/cli-update.js +0 -278
  624. package/dist/lib/bot/company-bind.d.ts +0 -27
  625. package/dist/lib/bot/company-bind.js +0 -62
  626. package/dist/lib/bot/config.d.ts +0 -153
  627. package/dist/lib/bot/config.js +0 -233
  628. package/dist/lib/bot/continuity-download.d.ts +0 -28
  629. package/dist/lib/bot/continuity-download.js +0 -75
  630. package/dist/lib/bot/continuity-install.d.ts +0 -14
  631. package/dist/lib/bot/continuity-install.js +0 -101
  632. package/dist/lib/bot/continuity.d.ts +0 -67
  633. package/dist/lib/bot/continuity.js +0 -301
  634. package/dist/lib/bot/creds.d.ts +0 -24
  635. package/dist/lib/bot/creds.js +0 -51
  636. package/dist/lib/bot/daemon.d.ts +0 -173
  637. package/dist/lib/bot/daemon.js +0 -552
  638. package/dist/lib/bot/inbox-poll-backoff-flag.d.ts +0 -24
  639. package/dist/lib/bot/inbox-poll-backoff-flag.js +0 -135
  640. package/dist/lib/bot/inbox-state.d.ts +0 -18
  641. package/dist/lib/bot/inbox-state.js +0 -51
  642. package/dist/lib/bot/index.d.ts +0 -23
  643. package/dist/lib/bot/index.js +0 -23
  644. package/dist/lib/bot/inflight.d.ts +0 -119
  645. package/dist/lib/bot/inflight.js +0 -83
  646. package/dist/lib/bot/job-completions.d.ts +0 -89
  647. package/dist/lib/bot/job-completions.js +0 -132
  648. package/dist/lib/bot/job-run.d.ts +0 -109
  649. package/dist/lib/bot/job-run.js +0 -246
  650. package/dist/lib/bot/local-config.d.ts +0 -61
  651. package/dist/lib/bot/local-config.js +0 -145
  652. package/dist/lib/bot/local-jobs.d.ts +0 -89
  653. package/dist/lib/bot/local-jobs.js +0 -459
  654. package/dist/lib/bot/local-name.d.ts +0 -54
  655. package/dist/lib/bot/local-name.js +0 -114
  656. package/dist/lib/bot/log.d.ts +0 -13
  657. package/dist/lib/bot/log.js +0 -59
  658. package/dist/lib/bot/owner-context.d.ts +0 -79
  659. package/dist/lib/bot/owner-context.js +0 -175
  660. package/dist/lib/bot/paths.d.ts +0 -76
  661. package/dist/lib/bot/paths.js +0 -131
  662. package/dist/lib/bot/progress.d.ts +0 -132
  663. package/dist/lib/bot/progress.js +0 -289
  664. package/dist/lib/bot/promote.d.ts +0 -16
  665. package/dist/lib/bot/promote.js +0 -106
  666. package/dist/lib/bot/promotion-hold.d.ts +0 -24
  667. package/dist/lib/bot/promotion-hold.js +0 -103
  668. package/dist/lib/bot/promotion-receipt.d.ts +0 -9
  669. package/dist/lib/bot/promotion-receipt.js +0 -56
  670. package/dist/lib/bot/promotion-upload.d.ts +0 -16
  671. package/dist/lib/bot/promotion-upload.js +0 -80
  672. package/dist/lib/bot/prompt.d.ts +0 -136
  673. package/dist/lib/bot/prompt.js +0 -433
  674. package/dist/lib/bot/room-policy.d.ts +0 -63
  675. package/dist/lib/bot/room-policy.js +0 -91
  676. package/dist/lib/bot/run.d.ts +0 -217
  677. package/dist/lib/bot/run.js +0 -1869
  678. package/dist/lib/bot/runnable.d.ts +0 -51
  679. package/dist/lib/bot/runnable.js +0 -65
  680. package/dist/lib/bot/runtime/claude.d.ts +0 -50
  681. package/dist/lib/bot/runtime/claude.js +0 -170
  682. package/dist/lib/bot/runtime/codex.d.ts +0 -28
  683. package/dist/lib/bot/runtime/codex.js +0 -153
  684. package/dist/lib/bot/runtime/grok-acp.d.ts +0 -40
  685. package/dist/lib/bot/runtime/grok-acp.js +0 -265
  686. package/dist/lib/bot/runtime/grok.d.ts +0 -41
  687. package/dist/lib/bot/runtime/grok.js +0 -169
  688. package/dist/lib/bot/runtime/index.d.ts +0 -36
  689. package/dist/lib/bot/runtime/index.js +0 -417
  690. package/dist/lib/bot/runtime/messages-stream.d.ts +0 -56
  691. package/dist/lib/bot/runtime/messages-stream.js +0 -194
  692. package/dist/lib/bot/runtime/sanitize.d.ts +0 -18
  693. package/dist/lib/bot/runtime/sanitize.js +0 -28
  694. package/dist/lib/bot/runtime/types.d.ts +0 -159
  695. package/dist/lib/bot/runtime/types.js +0 -51
  696. package/dist/lib/bot/runtime/windows.d.ts +0 -10
  697. package/dist/lib/bot/runtime/windows.js +0 -53
  698. package/dist/lib/bot/runtime-sign-in.d.ts +0 -24
  699. package/dist/lib/bot/runtime-sign-in.js +0 -31
  700. package/dist/lib/bot/scaffold.d.ts +0 -38
  701. package/dist/lib/bot/scaffold.js +0 -94
  702. package/dist/lib/bot/self-heal.d.ts +0 -52
  703. package/dist/lib/bot/self-heal.js +0 -79
  704. package/dist/lib/bot/self-process.d.ts +0 -19
  705. package/dist/lib/bot/self-process.js +0 -35
  706. package/dist/lib/bot/session.d.ts +0 -19
  707. package/dist/lib/bot/session.js +0 -39
  708. package/dist/lib/bot/setup-explain.d.ts +0 -64
  709. package/dist/lib/bot/setup-explain.js +0 -141
  710. package/dist/lib/bot/split.d.ts +0 -32
  711. package/dist/lib/bot/split.js +0 -241
  712. package/dist/lib/bot/status.d.ts +0 -57
  713. package/dist/lib/bot/status.js +0 -66
  714. package/dist/lib/bot/worker-source.d.ts +0 -66
  715. package/dist/lib/bot/worker-source.js +0 -283
  716. package/dist/lib/checkpoint-ontology/aliases.d.ts +0 -17
  717. package/dist/lib/checkpoint-ontology/aliases.js +0 -44
  718. package/dist/lib/checkpoint-ontology/apply.d.ts +0 -110
  719. package/dist/lib/checkpoint-ontology/apply.js +0 -777
  720. package/dist/lib/checkpoint-ontology/company-brief.d.ts +0 -18
  721. package/dist/lib/checkpoint-ontology/company-brief.js +0 -337
  722. package/dist/lib/checkpoint-ontology/company.d.ts +0 -44
  723. package/dist/lib/checkpoint-ontology/company.js +0 -118
  724. package/dist/lib/checkpoint-ontology/drop-aliases.d.ts +0 -41
  725. package/dist/lib/checkpoint-ontology/drop-aliases.js +0 -76
  726. package/dist/lib/checkpoint-ontology/entity-file.d.ts +0 -109
  727. package/dist/lib/checkpoint-ontology/entity-file.js +0 -371
  728. package/dist/lib/checkpoint-ontology/identity.d.ts +0 -38
  729. package/dist/lib/checkpoint-ontology/identity.js +0 -95
  730. package/dist/lib/checkpoint-ontology/merge-copies.d.ts +0 -199
  731. package/dist/lib/checkpoint-ontology/merge-copies.js +0 -1086
  732. package/dist/lib/checkpoint-ontology/multi-writer.d.ts +0 -101
  733. package/dist/lib/checkpoint-ontology/multi-writer.js +0 -394
  734. package/dist/lib/checkpoint-ontology/plan.d.ts +0 -193
  735. package/dist/lib/checkpoint-ontology/plan.js +0 -504
  736. package/dist/lib/checkpoint-ontology/queued-touches.d.ts +0 -29
  737. package/dist/lib/checkpoint-ontology/queued-touches.js +0 -193
  738. package/dist/lib/checkpoint-ontology/sync-client.d.ts +0 -38
  739. package/dist/lib/checkpoint-ontology/sync-client.js +0 -84
  740. package/dist/lib/checkpoint-ontology/tree.d.ts +0 -55
  741. package/dist/lib/checkpoint-ontology/tree.js +0 -198
  742. package/dist/lib/company-errors-sdk-warning-flag.d.ts +0 -5
  743. package/dist/lib/company-errors-sdk-warning-flag.js +0 -8
  744. package/dist/lib/core-utils/hook-timeout-debug-context-flag.d.ts +0 -20
  745. package/dist/lib/core-utils/hook-timeout-debug-context-flag.js +0 -81
  746. package/dist/lib/core-utils/jq-json-serializer.d.ts +0 -5
  747. package/dist/lib/core-utils/jq-json-serializer.js +0 -10
  748. package/dist/lib/core-utils/secret-patterns.d.ts +0 -43
  749. package/dist/lib/core-utils/secret-patterns.js +0 -34
  750. package/dist/lib/core-utils/sentry-report.d.ts +0 -114
  751. package/dist/lib/core-utils/sentry-report.js +0 -1034
  752. package/dist/lib/core-utils/timeout-guard-native.d.ts +0 -7
  753. package/dist/lib/core-utils/timeout-guard-native.js +0 -40
  754. package/dist/lib/core-utils/worktree-resume.d.ts +0 -20
  755. package/dist/lib/core-utils/worktree-resume.js +0 -1198
  756. package/dist/lib/daemon/catalog.d.ts +0 -134
  757. package/dist/lib/daemon/catalog.js +0 -358
  758. package/dist/lib/daemon/config.d.ts +0 -35
  759. package/dist/lib/daemon/config.js +0 -108
  760. package/dist/lib/daemon/flag.d.ts +0 -25
  761. package/dist/lib/daemon/flag.js +0 -59
  762. package/dist/lib/daemon/handoff.d.ts +0 -56
  763. package/dist/lib/daemon/handoff.js +0 -161
  764. package/dist/lib/daemon/hq-cloud.d.ts +0 -79
  765. package/dist/lib/daemon/hq-cloud.js +0 -183
  766. package/dist/lib/daemon/install.d.ts +0 -85
  767. package/dist/lib/daemon/install.js +0 -320
  768. package/dist/lib/daemon/legacy-sync-env.d.ts +0 -10
  769. package/dist/lib/daemon/legacy-sync-env.js +0 -58
  770. package/dist/lib/daemon/legacy.d.ts +0 -45
  771. package/dist/lib/daemon/legacy.js +0 -133
  772. package/dist/lib/daemon/lock.d.ts +0 -47
  773. package/dist/lib/daemon/lock.js +0 -138
  774. package/dist/lib/daemon/machine-type.d.ts +0 -50
  775. package/dist/lib/daemon/machine-type.js +0 -159
  776. package/dist/lib/daemon/migrate.d.ts +0 -77
  777. package/dist/lib/daemon/migrate.js +0 -265
  778. package/dist/lib/daemon/paths.d.ts +0 -24
  779. package/dist/lib/daemon/paths.js +0 -43
  780. package/dist/lib/daemon/protocol-tail.d.ts +0 -33
  781. package/dist/lib/daemon/protocol-tail.js +0 -131
  782. package/dist/lib/daemon/remote-control.d.ts +0 -74
  783. package/dist/lib/daemon/remote-control.js +0 -153
  784. package/dist/lib/daemon/requests.d.ts +0 -28
  785. package/dist/lib/daemon/requests.js +0 -65
  786. package/dist/lib/daemon/run.d.ts +0 -79
  787. package/dist/lib/daemon/run.js +0 -755
  788. package/dist/lib/daemon/succession.d.ts +0 -118
  789. package/dist/lib/daemon/succession.js +0 -263
  790. package/dist/lib/daemon/supervisor.d.ts +0 -132
  791. package/dist/lib/daemon/supervisor.js +0 -836
  792. package/dist/lib/daemon/sync-runner.d.ts +0 -58
  793. package/dist/lib/daemon/sync-runner.js +0 -277
  794. package/dist/lib/daemon/tools.d.ts +0 -52
  795. package/dist/lib/daemon/tools.js +0 -95
  796. package/dist/lib/daemon/updater.d.ts +0 -57
  797. package/dist/lib/daemon/updater.js +0 -163
  798. package/dist/lib/deploy-api.d.ts +0 -5
  799. package/dist/lib/deploy-api.js +0 -21
  800. package/dist/lib/deploy-apps.d.ts +0 -13
  801. package/dist/lib/deploy-apps.js +0 -29
  802. package/dist/lib/doctor/__testing__/run-doctor.d.ts +0 -8
  803. package/dist/lib/doctor/__testing__/run-doctor.js +0 -52
  804. package/dist/lib/doctor/checks/bots.d.ts +0 -13
  805. package/dist/lib/doctor/checks/bots.js +0 -189
  806. package/dist/lib/doctor/checks/scaffold-cli-floor.d.ts +0 -6
  807. package/dist/lib/doctor/checks/scaffold-cli-floor.js +0 -73
  808. package/dist/lib/doctor/checks/sync-runtime.d.ts +0 -11
  809. package/dist/lib/doctor/checks/sync-runtime.js +0 -216
  810. package/dist/lib/doctor/client-health-flag-token.d.ts +0 -15
  811. package/dist/lib/doctor/client-health-flag-token.js +0 -66
  812. package/dist/lib/doctor/client-health-reason-codes-flag.d.ts +0 -27
  813. package/dist/lib/doctor/client-health-reason-codes-flag.js +0 -106
  814. package/dist/lib/doctor/fix/json-output.d.ts +0 -28
  815. package/dist/lib/doctor/fix/json-output.js +0 -33
  816. package/dist/lib/doctor/fix/refresh-sync-outcome.d.ts +0 -12
  817. package/dist/lib/doctor/fix/refresh-sync-outcome.js +0 -25
  818. package/dist/lib/doctor/shared.d.ts +0 -8
  819. package/dist/lib/doctor/shared.js +0 -38
  820. package/dist/lib/doctor/stray-gate-entries.d.ts +0 -35
  821. package/dist/lib/doctor/stray-gate-entries.js +0 -83
  822. package/dist/lib/first-sync-next-step.d.ts +0 -37
  823. package/dist/lib/first-sync-next-step.js +0 -189
  824. package/dist/lib/flag-registry-endpoint.d.ts +0 -5
  825. package/dist/lib/flag-registry-endpoint.js +0 -9
  826. package/dist/lib/flag-registry-worker-source.generated.d.ts +0 -2
  827. package/dist/lib/flag-registry-worker-source.generated.js +0 -3
  828. package/dist/lib/flag-snapshot-file.d.ts +0 -20
  829. package/dist/lib/flag-snapshot-file.js +0 -91
  830. package/dist/lib/heartbeat-identity.d.ts +0 -30
  831. package/dist/lib/heartbeat-identity.js +0 -76
  832. package/dist/lib/lanes/account-home.d.ts +0 -8
  833. package/dist/lib/lanes/account-home.js +0 -10
  834. package/dist/lib/lanes/accounts.d.ts +0 -117
  835. package/dist/lib/lanes/accounts.js +0 -366
  836. package/dist/lib/lanes/admission-host.d.ts +0 -22
  837. package/dist/lib/lanes/admission-host.js +0 -37
  838. package/dist/lib/lanes/admission.d.ts +0 -26
  839. package/dist/lib/lanes/admission.js +0 -210
  840. package/dist/lib/lanes/approval-gate.d.ts +0 -8
  841. package/dist/lib/lanes/approval-gate.js +0 -90
  842. package/dist/lib/lanes/autopilot-metrics.d.ts +0 -99
  843. package/dist/lib/lanes/autopilot-metrics.js +0 -301
  844. package/dist/lib/lanes/autopilot-registry.d.ts +0 -62
  845. package/dist/lib/lanes/autopilot-registry.js +0 -192
  846. package/dist/lib/lanes/autopilot.d.ts +0 -120
  847. package/dist/lib/lanes/autopilot.js +0 -1061
  848. package/dist/lib/lanes/blocker-freshness.d.ts +0 -31
  849. package/dist/lib/lanes/blocker-freshness.js +0 -168
  850. package/dist/lib/lanes/checked-company-path.d.ts +0 -3
  851. package/dist/lib/lanes/checked-company-path.js +0 -39
  852. package/dist/lib/lanes/claude-balance.d.ts +0 -97
  853. package/dist/lib/lanes/claude-balance.js +0 -319
  854. package/dist/lib/lanes/compaction.d.ts +0 -110
  855. package/dist/lib/lanes/compaction.js +0 -293
  856. package/dist/lib/lanes/config.d.ts +0 -91
  857. package/dist/lib/lanes/config.js +0 -592
  858. package/dist/lib/lanes/constants.d.ts +0 -3
  859. package/dist/lib/lanes/constants.js +0 -3
  860. package/dist/lib/lanes/delivery-core.d.ts +0 -15
  861. package/dist/lib/lanes/delivery-core.js +0 -21
  862. package/dist/lib/lanes/delivery.d.ts +0 -180
  863. package/dist/lib/lanes/delivery.js +0 -443
  864. package/dist/lib/lanes/dropbox.d.ts +0 -129
  865. package/dist/lib/lanes/dropbox.js +0 -601
  866. package/dist/lib/lanes/effort.d.ts +0 -51
  867. package/dist/lib/lanes/effort.js +0 -113
  868. package/dist/lib/lanes/envelope-repair-dispatch.d.ts +0 -26
  869. package/dist/lib/lanes/envelope-repair-dispatch.js +0 -74
  870. package/dist/lib/lanes/errors.d.ts +0 -39
  871. package/dist/lib/lanes/errors.js +0 -72
  872. package/dist/lib/lanes/flag-keys.d.ts +0 -13
  873. package/dist/lib/lanes/flag-keys.js +0 -13
  874. package/dist/lib/lanes/grants.d.ts +0 -29
  875. package/dist/lib/lanes/grants.js +0 -166
  876. package/dist/lib/lanes/hire-grant-dispatch.d.ts +0 -29
  877. package/dist/lib/lanes/hire-grant-dispatch.js +0 -316
  878. package/dist/lib/lanes/hooks-install.d.ts +0 -82
  879. package/dist/lib/lanes/hooks-install.js +0 -479
  880. package/dist/lib/lanes/host-capacity.d.ts +0 -69
  881. package/dist/lib/lanes/host-capacity.js +0 -254
  882. package/dist/lib/lanes/hq-root.d.ts +0 -19
  883. package/dist/lib/lanes/hq-root.js +0 -28
  884. package/dist/lib/lanes/index.d.ts +0 -76
  885. package/dist/lib/lanes/index.js +0 -42
  886. package/dist/lib/lanes/keep-alive.d.ts +0 -68
  887. package/dist/lib/lanes/keep-alive.js +0 -343
  888. package/dist/lib/lanes/kr-freshness.d.ts +0 -76
  889. package/dist/lib/lanes/kr-freshness.js +0 -413
  890. package/dist/lib/lanes/lane-company.d.ts +0 -10
  891. package/dist/lib/lanes/lane-company.js +0 -41
  892. package/dist/lib/lanes/liveness.d.ts +0 -108
  893. package/dist/lib/lanes/liveness.js +0 -396
  894. package/dist/lib/lanes/machine-identity.d.ts +0 -34
  895. package/dist/lib/lanes/machine-identity.js +0 -92
  896. package/dist/lib/lanes/manager-status-gate.d.ts +0 -17
  897. package/dist/lib/lanes/manager-status-gate.js +0 -133
  898. package/dist/lib/lanes/merge-command.d.ts +0 -15
  899. package/dist/lib/lanes/merge-command.js +0 -629
  900. package/dist/lib/lanes/mesh-events.d.ts +0 -127
  901. package/dist/lib/lanes/mesh-events.js +0 -564
  902. package/dist/lib/lanes/message-replay.d.ts +0 -21
  903. package/dist/lib/lanes/message-replay.js +0 -122
  904. package/dist/lib/lanes/models.d.ts +0 -86
  905. package/dist/lib/lanes/models.js +0 -234
  906. package/dist/lib/lanes/monitor.d.ts +0 -48
  907. package/dist/lib/lanes/monitor.js +0 -428
  908. package/dist/lib/lanes/move-account.d.ts +0 -56
  909. package/dist/lib/lanes/move-account.js +0 -193
  910. package/dist/lib/lanes/orphans.d.ts +0 -25
  911. package/dist/lib/lanes/orphans.js +0 -102
  912. package/dist/lib/lanes/outpost-dispatch.d.ts +0 -147
  913. package/dist/lib/lanes/outpost-dispatch.js +0 -271
  914. package/dist/lib/lanes/outpost-hire-cache.d.ts +0 -22
  915. package/dist/lib/lanes/outpost-hire-cache.js +0 -153
  916. package/dist/lib/lanes/outpost-identity.d.ts +0 -33
  917. package/dist/lib/lanes/outpost-identity.js +0 -59
  918. package/dist/lib/lanes/outpost-profile-repin.d.ts +0 -17
  919. package/dist/lib/lanes/outpost-profile-repin.js +0 -84
  920. package/dist/lib/lanes/outpost-pruner-install.d.ts +0 -37
  921. package/dist/lib/lanes/outpost-pruner-install.js +0 -238
  922. package/dist/lib/lanes/outpost-registry-worker-approval.d.ts +0 -18
  923. package/dist/lib/lanes/outpost-registry-worker-approval.js +0 -109
  924. package/dist/lib/lanes/outpost-snapshot-memo.d.ts +0 -6
  925. package/dist/lib/lanes/outpost-snapshot-memo.js +0 -14
  926. package/dist/lib/lanes/outpost-worktree-pruner-flag.d.ts +0 -19
  927. package/dist/lib/lanes/outpost-worktree-pruner-flag.js +0 -86
  928. package/dist/lib/lanes/outpost-worktree-pruner.d.ts +0 -62
  929. package/dist/lib/lanes/outpost-worktree-pruner.js +0 -1201
  930. package/dist/lib/lanes/profile.d.ts +0 -69
  931. package/dist/lib/lanes/profile.js +0 -552
  932. package/dist/lib/lanes/provider-rejection.d.ts +0 -86
  933. package/dist/lib/lanes/provider-rejection.js +0 -286
  934. package/dist/lib/lanes/questions.d.ts +0 -90
  935. package/dist/lib/lanes/questions.js +0 -384
  936. package/dist/lib/lanes/quota.d.ts +0 -134
  937. package/dist/lib/lanes/quota.js +0 -471
  938. package/dist/lib/lanes/reconcile-install.d.ts +0 -90
  939. package/dist/lib/lanes/reconcile-install.js +0 -257
  940. package/dist/lib/lanes/reconcile.d.ts +0 -155
  941. package/dist/lib/lanes/reconcile.js +0 -3193
  942. package/dist/lib/lanes/registry-flag.d.ts +0 -29
  943. package/dist/lib/lanes/registry-flag.js +0 -139
  944. package/dist/lib/lanes/registry-persona.d.ts +0 -20
  945. package/dist/lib/lanes/registry-persona.js +0 -329
  946. package/dist/lib/lanes/registry.d.ts +0 -122
  947. package/dist/lib/lanes/registry.js +0 -570
  948. package/dist/lib/lanes/reviews.d.ts +0 -38
  949. package/dist/lib/lanes/reviews.js +0 -395
  950. package/dist/lib/lanes/runaway-tool-guard.d.ts +0 -38
  951. package/dist/lib/lanes/runaway-tool-guard.js +0 -284
  952. package/dist/lib/lanes/session-relink.d.ts +0 -25
  953. package/dist/lib/lanes/session-relink.js +0 -216
  954. package/dist/lib/lanes/spawn.d.ts +0 -350
  955. package/dist/lib/lanes/spawn.js +0 -2643
  956. package/dist/lib/lanes/ssm-command-context.d.ts +0 -12
  957. package/dist/lib/lanes/ssm-command-context.js +0 -52
  958. package/dist/lib/lanes/store.d.ts +0 -91
  959. package/dist/lib/lanes/store.js +0 -1811
  960. package/dist/lib/lanes/stories.d.ts +0 -23
  961. package/dist/lib/lanes/stories.js +0 -92
  962. package/dist/lib/lanes/story-ledger.d.ts +0 -80
  963. package/dist/lib/lanes/story-ledger.js +0 -815
  964. package/dist/lib/lanes/story-switch.d.ts +0 -21
  965. package/dist/lib/lanes/story-switch.js +0 -75
  966. package/dist/lib/lanes/text-scan.d.ts +0 -11
  967. package/dist/lib/lanes/text-scan.js +0 -103
  968. package/dist/lib/lanes/throttle.d.ts +0 -116
  969. package/dist/lib/lanes/throttle.js +0 -437
  970. package/dist/lib/lanes/timestamp.d.ts +0 -3
  971. package/dist/lib/lanes/timestamp.js +0 -26
  972. package/dist/lib/lanes/tracker-checks.d.ts +0 -77
  973. package/dist/lib/lanes/tracker-checks.js +0 -134
  974. package/dist/lib/lanes/tracker-report-state.d.ts +0 -10
  975. package/dist/lib/lanes/tracker-report-state.js +0 -124
  976. package/dist/lib/lanes/tracker-report.d.ts +0 -203
  977. package/dist/lib/lanes/tracker-report.js +0 -522
  978. package/dist/lib/lanes/tracker-store.d.ts +0 -18
  979. package/dist/lib/lanes/tracker-store.js +0 -106
  980. package/dist/lib/lanes/types.d.ts +0 -1020
  981. package/dist/lib/lanes/types.js +0 -417
  982. package/dist/lib/lanes/wait.d.ts +0 -39
  983. package/dist/lib/lanes/wait.js +0 -159
  984. package/dist/lib/lanes/watch.d.ts +0 -39
  985. package/dist/lib/lanes/watch.js +0 -249
  986. package/dist/lib/lanes/watcher-main.d.ts +0 -11
  987. package/dist/lib/lanes/watcher-main.js +0 -108
  988. package/dist/lib/lanes/watcher.d.ts +0 -287
  989. package/dist/lib/lanes/watcher.js +0 -1972
  990. package/dist/lib/mesh/live/daemon/config.d.ts +0 -36
  991. package/dist/lib/mesh/live/daemon/config.js +0 -120
  992. package/dist/lib/mesh/live/daemon/legacy-listen.d.ts +0 -43
  993. package/dist/lib/mesh/live/daemon/legacy-listen.js +0 -89
  994. package/dist/lib/mesh/live/daemon/live-cache.d.ts +0 -26
  995. package/dist/lib/mesh/live/daemon/live-cache.js +0 -116
  996. package/dist/lib/mesh/live/daemon/mqtt-events.d.ts +0 -7
  997. package/dist/lib/mesh/live/daemon/mqtt-events.js +0 -2
  998. package/dist/lib/mesh/live/daemon/mqtt-events.test-d.d.ts +0 -2
  999. package/dist/lib/mesh/live/daemon/mqtt-events.test-d.js +0 -10
  1000. package/dist/lib/mesh/live/daemon/version-drift.d.ts +0 -5
  1001. package/dist/lib/mesh/live/daemon/version-drift.js +0 -47
  1002. package/dist/lib/mesh/live/daemon/work-subscribe.d.ts +0 -32
  1003. package/dist/lib/mesh/live/daemon/work-subscribe.js +0 -262
  1004. package/dist/lib/mesh/live/report-summary.d.ts +0 -45
  1005. package/dist/lib/mesh/live/report-summary.js +0 -234
  1006. package/dist/lib/mesh/live/session-seq.d.ts +0 -4
  1007. package/dist/lib/mesh/live/session-seq.js +0 -33
  1008. package/dist/lib/mesh/project-board.d.ts +0 -65
  1009. package/dist/lib/mesh/project-board.js +0 -181
  1010. package/dist/lib/mesh/story-status.d.ts +0 -22
  1011. package/dist/lib/mesh/story-status.js +0 -49
  1012. package/dist/lib/monitor.d.ts +0 -149
  1013. package/dist/lib/monitor.js +0 -519
  1014. package/dist/lib/node-binary.d.ts +0 -50
  1015. package/dist/lib/node-binary.js +0 -133
  1016. package/dist/lib/notify-recipient.d.ts +0 -7
  1017. package/dist/lib/notify-recipient.js +0 -11
  1018. package/dist/lib/onboarding/checkpoint.d.ts +0 -13
  1019. package/dist/lib/onboarding/checkpoint.js +0 -44
  1020. package/dist/lib/onboarding/cli/onboard.d.ts +0 -53
  1021. package/dist/lib/onboarding/cli/onboard.js +0 -135
  1022. package/dist/lib/onboarding/cli/prompts.d.ts +0 -28
  1023. package/dist/lib/onboarding/cli/prompts.js +0 -83
  1024. package/dist/lib/onboarding/errors.d.ts +0 -34
  1025. package/dist/lib/onboarding/errors.js +0 -59
  1026. package/dist/lib/onboarding/index.d.ts +0 -13
  1027. package/dist/lib/onboarding/index.js +0 -13
  1028. package/dist/lib/onboarding/orchestrator.d.ts +0 -47
  1029. package/dist/lib/onboarding/orchestrator.js +0 -569
  1030. package/dist/lib/onboarding/types.d.ts +0 -79
  1031. package/dist/lib/onboarding/types.js +0 -8
  1032. package/dist/lib/policy-validator.d.ts +0 -7
  1033. package/dist/lib/policy-validator.js +0 -187
  1034. package/dist/lib/process-flag-company-context.d.ts +0 -8
  1035. package/dist/lib/process-flag-company-context.js +0 -67
  1036. package/dist/lib/report-publish.d.ts +0 -175
  1037. package/dist/lib/report-publish.js +0 -421
  1038. package/dist/lib/report-run.d.ts +0 -62
  1039. package/dist/lib/report-run.js +0 -123
  1040. package/dist/lib/report-snapshot.d.ts +0 -12
  1041. package/dist/lib/report-snapshot.js +0 -135
  1042. package/dist/lib/report-templates.d.ts +0 -9
  1043. package/dist/lib/report-templates.js +0 -21
  1044. package/dist/lib/scaffold-cli-floor.d.ts +0 -8
  1045. package/dist/lib/scaffold-cli-floor.js +0 -50
  1046. package/dist/lib/search-index/collection-path-repair-flag.d.ts +0 -4
  1047. package/dist/lib/search-index/collection-path-repair-flag.js +0 -7
  1048. package/dist/lib/search-index/embed-lock.d.ts +0 -32
  1049. package/dist/lib/search-index/embed-lock.js +0 -286
  1050. package/dist/lib/search-index/load-gate.d.ts +0 -57
  1051. package/dist/lib/search-index/load-gate.js +0 -270
  1052. package/dist/lib/search-index/max-doc-bytes.d.ts +0 -219
  1053. package/dist/lib/search-index/max-doc-bytes.js +0 -463
  1054. package/dist/lib/search-index/qmd-exit-diagnostics.d.ts +0 -5
  1055. package/dist/lib/search-index/qmd-exit-diagnostics.js +0 -40
  1056. package/dist/lib/search-index/reindex-single-flight-flag.d.ts +0 -5
  1057. package/dist/lib/search-index/reindex-single-flight-flag.js +0 -8
  1058. package/dist/lib/service-manager/index.d.ts +0 -42
  1059. package/dist/lib/service-manager/index.js +0 -105
  1060. package/dist/lib/service-manager/launchd.d.ts +0 -81
  1061. package/dist/lib/service-manager/launchd.js +0 -212
  1062. package/dist/lib/service-manager/systemd.d.ts +0 -19
  1063. package/dist/lib/service-manager/systemd.js +0 -72
  1064. package/dist/lib/service-manager/types.d.ts +0 -34
  1065. package/dist/lib/service-manager/types.js +0 -26
  1066. package/dist/lib/test-utils/isolated-flag-company-context.d.ts +0 -3
  1067. package/dist/lib/test-utils/isolated-flag-company-context.js +0 -18
  1068. package/dist/lib/work-context/bind-best.d.ts +0 -66
  1069. package/dist/lib/work-context/bind-best.js +0 -344
  1070. package/dist/lib/work-context/bind-calling-session.d.ts +0 -26
  1071. package/dist/lib/work-context/bind-calling-session.js +0 -63
  1072. package/dist/lib/work-context/company-rebind.d.ts +0 -23
  1073. package/dist/lib/work-context/company-rebind.js +0 -59
  1074. package/dist/lib/work-context/default-company.d.ts +0 -43
  1075. package/dist/lib/work-context/default-company.js +0 -83
  1076. package/dist/lib/work-context/outbox-quarantine-status-flag.d.ts +0 -4
  1077. package/dist/lib/work-context/outbox-quarantine-status-flag.js +0 -7
  1078. package/dist/lib/work-context/prd-sync.d.ts +0 -56
  1079. package/dist/lib/work-context/prd-sync.js +0 -197
  1080. package/dist/lib/work-context/preflight-contract.d.ts +0 -28
  1081. package/dist/lib/work-context/preflight-contract.js +0 -85
  1082. package/dist/lib/work-context/prompt-rebind.d.ts +0 -25
  1083. package/dist/lib/work-context/prompt-rebind.js +0 -85
  1084. package/dist/lib/work-context/windows-acl.d.ts +0 -123
  1085. package/dist/lib/work-context/windows-acl.js +0 -425
  1086. package/dist/lib/workers-registry/read.d.ts +0 -15
  1087. package/dist/lib/workers-registry/read.js +0 -17
  1088. package/dist/native-fast-route.d.ts +0 -7
  1089. package/dist/native-fast-route.js +0 -45
  1090. package/dist/node-network-compat-core.d.ts +0 -12
  1091. package/dist/node-network-compat-core.js +0 -41
  1092. package/dist/node-network-compat-fast.d.ts +0 -7
  1093. package/dist/node-network-compat-fast.js +0 -23
  1094. package/dist/secrets-env-fast-path.d.ts +0 -5
  1095. package/dist/secrets-env-fast-path.js +0 -16
  1096. package/dist/secrets-env-fast-route.d.ts +0 -18
  1097. package/dist/secrets-env-fast-route.js +0 -54
  1098. package/dist/utils/checkpoint-stamp-write-error.d.ts +0 -28
  1099. package/dist/utils/checkpoint-stamp-write-error.js +0 -99
  1100. package/dist/utils/cli-network-lifecycle.d.ts +0 -4
  1101. package/dist/utils/cli-network-lifecycle.js +0 -11
  1102. package/dist/utils/cognito-refresh-sentry.d.ts +0 -3
  1103. package/dist/utils/cognito-refresh-sentry.js +0 -49
  1104. package/dist/utils/console-origin.d.ts +0 -9
  1105. package/dist/utils/console-origin.js +0 -28
  1106. package/dist/utils/exclusive-lock.d.ts +0 -32
  1107. package/dist/utils/exclusive-lock.js +0 -75
  1108. package/dist/utils/fast-stream-errors.d.ts +0 -12
  1109. package/dist/utils/fast-stream-errors.js +0 -18
  1110. package/dist/utils/files-browse-acl.d.ts +0 -5
  1111. package/dist/utils/files-browse-acl.js +0 -11
  1112. package/dist/utils/hq-core-yaml.d.ts +0 -10
  1113. package/dist/utils/hq-core-yaml.js +0 -40
  1114. package/dist/utils/hq-root-resolver.d.ts +0 -13
  1115. package/dist/utils/hq-root-resolver.js +0 -103
  1116. package/dist/utils/redact-url.d.ts +0 -14
  1117. package/dist/utils/redact-url.js +0 -218
  1118. package/dist/utils/scaffold-fast-import-guard.d.ts +0 -2
  1119. package/dist/utils/scaffold-fast-import-guard.js +0 -40
  1120. package/dist/utils/scaffold-packlist-guard.d.ts +0 -7
  1121. package/dist/utils/scaffold-packlist-guard.js +0 -23
  1122. package/dist/utils/scaffold-sibling-references.d.ts +0 -22
  1123. package/dist/utils/scaffold-sibling-references.js +0 -156
  1124. package/dist/utils/secret-load-availability.d.ts +0 -8
  1125. package/dist/utils/secret-load-availability.js +0 -54
  1126. package/dist/utils/staged-install.d.ts +0 -34
  1127. package/dist/utils/staged-install.js +0 -346
  1128. package/dist/utils/staged-npm-install.d.ts +0 -16
  1129. package/dist/utils/staged-npm-install.js +0 -264
  1130. package/dist/utils/sync-log-sources.d.ts +0 -15
  1131. package/dist/utils/sync-log-sources.js +0 -36
  1132. package/dist/utils/table-width.d.ts +0 -7
  1133. package/dist/utils/table-width.js +0 -15
  1134. package/dist/utils/update-command-supervisor.cjs +0 -247
  1135. package/dist/utils/upload-author.d.ts +0 -15
  1136. package/dist/utils/upload-author.js +0 -39
  1137. package/dist/utils/version-report.d.ts +0 -27
  1138. package/dist/utils/version-report.js +0 -105
  1139. package/dist/version-request.d.ts +0 -14
  1140. package/dist/version-request.js +0 -36
  1141. package/scripts/mesh-daemon-if-stale.mjs +0 -20
  1142. package/templates/reports/blank.md +0 -3
  1143. package/templates/reports/daily-digest.md +0 -11
  1144. package/templates/runbooks/update-report.md +0 -21
@@ -16,16 +16,10 @@ import { isAccessDeniedError, accessDeniedKeyOf, formatAccessDenied, } from "../
16
16
  import chalk from "chalk";
17
17
  import * as fs from "fs";
18
18
  import * as path from "path";
19
- import { share, sync, getStateDir, listJournals, VaultClient, computePersonalVaultPaths, PERSONAL_VAULT_JOURNAL_SLUG, resolvePullScope, syncDoctor, } from "@indigoai-us/hq-cloud";
19
+ import { share, sync, getStateDir, listJournals, loadCachedTokens, VaultClient, computePersonalVaultPaths, PERSONAL_VAULT_JOURNAL_SLUG, resolvePullScope, syncDoctor, } from "@indigoai-us/hq-cloud";
20
20
  import { DEFAULT_HQ_ROOT, ensureCognitoToken, buildVaultConfig, } from "../utils/cognito-session.js";
21
- import { resolveUploadAuthor } from "../utils/upload-author.js";
22
21
  import { companyFolderExceedsThreshold, emitNarrowHint, isStrictRefusal, resolveBannerLevel, resolveNarrowHintPresentationLevel, resolveNarrowHintMinBytes, } from "../lib/narrow-hint-banner.js";
23
22
  import { beginSyncHealthReport, } from "../utils/client-health.js";
24
- import { recordFirstWorkBearingSync } from "../lib/first-sync-next-step.js";
25
- import { createPlanLimitRefusalTracker, describeRefusedCount, describeRefusedFiles, mergePlanLimitRefusals, renderPlanLimitRefusalLines, trackingProgressRecorder, } from "../lib/billing/plan-limit-refusals.js";
26
- import { formatPlanGateError, planGateErrorFromVaultError, } from "../utils/plan-gate-error.js";
27
- import { personalTargetedPushPathsEnabled } from "./personal-targeted-push-flag.js";
28
- import { resolveExplicitPersonalPushPaths } from "./personal-targeted-push-paths.js";
29
23
  /**
30
24
  * Terminal-failure signal for the sync fanout runners. The runners
31
25
  * (`runPushAll` / `runPullAll` / `runPullPersonal` / `runNowSingle` /
@@ -39,41 +33,18 @@ import { resolveExplicitPersonalPushPaths } from "./personal-targeted-push-paths
39
33
  */
40
34
  export class SyncExitError extends Error {
41
35
  code;
42
- /**
43
- * The client-health outcome to record for this exit. A run whose only
44
- * problem was a plan-limit refusal exits non-zero (it did not upload what
45
- * was asked) but is not a sync failure: the engine worked and the refusal
46
- * is plan state, so it must not count toward `consecutiveFailures`.
47
- */
48
- health;
49
- constructor(code, opts = {}) {
36
+ constructor(code) {
50
37
  super(`sync command exit ${code}`);
51
38
  this.code = code;
52
39
  this.name = "SyncExitError";
53
- this.health = opts.health ?? "failed";
54
40
  }
55
41
  }
56
- async function ensureSyncCognitoToken() {
57
- return ensureCognitoToken({
58
- interactive: process.stdin.isTTY === true && process.stdout.isTTY === true,
59
- });
60
- }
61
42
  /**
62
43
  * Preserve the vault's typed write-scope refusal at the CLI boundary. This is
63
44
  * deliberately duck-typed so hq-cli remains compatible while hq-cloud and the
64
45
  * CLI are released independently.
65
46
  */
66
47
  export function formatSyncFailure(err) {
67
- // A plan-limit refusal the runner threw (a 402 on the whole request) renders
68
- // with the same reason, fix options and upgrade link as every other refusal.
69
- const planGate = planGateErrorFromVaultError(err);
70
- if (planGate) {
71
- const refusedPath = typeof err.path === "string"
72
- ? err.path
73
- : undefined;
74
- return (formatPlanGateError(planGate) +
75
- (refusedPath ? `\nNot uploaded: ${refusedPath}` : ""));
76
- }
77
48
  if (isAccessDeniedError(err)) {
78
49
  const key = accessDeniedKeyOf(err);
79
50
  const base = err instanceof Error ? err.message : String(err);
@@ -119,12 +90,7 @@ export async function withSyncHealthReport(run) {
119
90
  return result;
120
91
  }
121
92
  catch (err) {
122
- if (err instanceof SyncExitError && err.health === "succeeded") {
123
- await health.succeeded();
124
- }
125
- else {
126
- await health.failed();
127
- }
93
+ await health.failed();
128
94
  if (err instanceof SyncExitError)
129
95
  process.exit(err.code);
130
96
  throw err;
@@ -149,39 +115,11 @@ export function scopeExcludedWarning(count) {
149
115
  * dropped files — helps debug ACL vs scope-excluded mismatches (feedback_7e9c535e).
150
116
  */
151
117
  export function scopeExcludedPrefixDetail(prefixSet) {
152
- // No client-side prefix scope applied: the server refused the paths one by
153
- // one, and scopeExcludedLines' primary line already says so.
154
- if (prefixSet === undefined)
155
- return null;
156
- if (prefixSet.length === 0) {
118
+ if (!prefixSet || prefixSet.length === 0) {
157
119
  return " Granted write prefixes: (none — shared-mode membership with no explicit grants)";
158
120
  }
159
121
  return ` Granted write prefixes: ${prefixSet.join(", ")}`;
160
122
  }
161
- /**
162
- * Every warning line for a push that dropped files, shared by `push`, `now`
163
- * and `push --all`. With a client prefix scope the files fell outside the
164
- * caller's write prefixes; without one (prefixSet undefined) the server
165
- * refused them path by path — typically another member's child in a private
166
- * folder foo/ — and grant advice would point the reader the wrong way.
167
- */
168
- export function scopeExcludedLines(count, prefixSet) {
169
- if (count <= 0)
170
- return [];
171
- if (prefixSet === undefined) {
172
- return [
173
- `⚠ ${count} file(s) were NOT uploaded — the server refused them. ` +
174
- `A common cause is a file someone else created in a private folder ` +
175
- `(foo/): only its creator can change it. They were skipped, not ` +
176
- `synced. Re-run with --json to list them.`,
177
- ];
178
- }
179
- const lines = [scopeExcludedWarning(count)];
180
- const detail = scopeExcludedPrefixDetail(prefixSet);
181
- if (detail)
182
- lines.push(detail);
183
- return lines;
184
- }
185
123
  /**
186
124
  * Resolve the `propagateDeletePolicy` for share() calls.
187
125
  *
@@ -450,7 +388,6 @@ export async function pushAll(options, deps) {
450
388
  companyUid: m.companyUid,
451
389
  shareOptions: {
452
390
  company: m.companyUid,
453
- targetSlug: slug,
454
391
  hqRoot: options.hqRoot,
455
392
  paths: [path.join(options.hqRoot, "companies", slug)],
456
393
  skipUnchanged: true,
@@ -508,13 +445,7 @@ export async function pushAll(options, deps) {
508
445
  result.bytesUploaded += r.bytesUploaded;
509
446
  result.filesDeleted += r.filesDeleted;
510
447
  result.filesExcludedByScope += r.filesExcludedByScope;
511
- result.perCompany.push({
512
- slug: entry.slug,
513
- result: r,
514
- ...(entry.shareOptions.prefixSet !== undefined
515
- ? { prefixSet: entry.shareOptions.prefixSet }
516
- : {}),
517
- });
448
+ result.perCompany.push({ slug: entry.slug, result: r });
518
449
  }
519
450
  catch (err) {
520
451
  const message = formatSyncFailure(err);
@@ -524,24 +455,6 @@ export async function pushAll(options, deps) {
524
455
  }
525
456
  return result;
526
457
  }
527
- /**
528
- * Credentials `hq sync push` hands to share(). A pre-vended EntityContext
529
- * (AppBar's `--creds-from-stdin` first push) cannot write under private
530
- * folders directly, so it travels with the caller's vault config as
531
- * `privateFolderVaultConfig`. share() takes exactly one of `vaultConfig` /
532
- * `entityContext`.
533
- */
534
- export function pushShareCredentials(input) {
535
- if (input.entityContext) {
536
- return {
537
- entityContext: input.entityContext,
538
- ...(input.scopeVaultConfig
539
- ? { privateFolderVaultConfig: input.scopeVaultConfig }
540
- : {}),
541
- };
542
- }
543
- return input.vaultConfig ? { vaultConfig: input.vaultConfig } : {};
544
- }
545
458
  /**
546
459
  * Resolve the canonical person entity UID for the logged-in user. Used by
547
460
  * `hq sync {push,pull,now} --personal` to target the personal vault without
@@ -559,15 +472,21 @@ export async function resolveCanonicalPersonUid(vaultClient) {
559
472
  return pick.uid;
560
473
  }
561
474
  /**
562
- * Keep `hq sync push --personal <path>` refused by default. Positional paths
563
- * bypass `computePersonalVaultPaths` and can send excluded `companies/`,
564
- * `repos/`, `workspace/`, or `.git/` content to the personal vault. The
565
- * default-off targeted-paths gate allows the combination only after every
566
- * path is realpath-normalized and checked against the computed personal scope
567
- * and its file exclusions. Closes hq-cli#25.
475
+ * Refuse `hq sync push --personal <path>` — the combination silently
476
+ * bypasses `PERSONAL_VAULT_EXCLUDED_TOP_LEVEL` (which is only applied by
477
+ * `computePersonalVaultPaths`), risking cross-scope upload of `companies/`,
478
+ * `repos/`, `workspace/`, or `.git/` content to the personal vault. Real
479
+ * incident (2026-05-21): a single command uploaded 196 `companies/{slug}/**`
480
+ * objects to a personal vault before being killed. Cleanup required a
481
+ * hand-rolled S3 sweep. Closes hq-cli#25.
482
+ *
483
+ * Refusal — not silent filtering — is intentional: explicit is better than
484
+ * implicit guesswork, and the legitimate "I want to push a subset of my
485
+ * personal vault" use case has a clean workaround (drop `--personal`, the
486
+ * subset upload targets the active company via standard semantics).
568
487
  */
569
- export function assertNoPersonalPositionalPaths(opts, paths, targetedPersonalPathsEnabled = false) {
570
- if (opts.personal && paths && paths.length > 0 && !targetedPersonalPathsEnabled) {
488
+ export function assertNoPersonalPositionalPaths(opts, paths) {
489
+ if (opts.personal && paths && paths.length > 0) {
571
490
  throw new Error("`--personal` cannot be combined with explicit [paths]: " +
572
491
  "positional paths bypass the PERSONAL_VAULT_EXCLUDED_TOP_LEVEL " +
573
492
  "guard (skips .git/, companies/, repos/, workspace/), risking " +
@@ -697,32 +616,6 @@ async function resolveCliPullScope(client, companyRef, hqRoot) {
697
616
  }
698
617
  return resolvePullScope(client, companyUid, slug, hqRoot);
699
618
  }
700
- /**
701
- * The progress-snapshot label share()'s default recorder would use: the
702
- * target's slug, or null for a personal-vault push. A pre-vended context
703
- * carries its slug; otherwise the caller's company reference is the best the
704
- * CLI knows before share() resolves it.
705
- */
706
- function shareProgressCompany(input) {
707
- if (input.personalMode)
708
- return null;
709
- if (input.entityContext) {
710
- return input.entityContext.uid.startsWith("prs_")
711
- ? null
712
- : input.entityContext.slug;
713
- }
714
- return input.companyRef ?? null;
715
- }
716
- /** Only a real slug builds a company billing link; a raw uid does not. */
717
- function companySlugForBilling(label) {
718
- return label && !/^(?:cmp|prs)_/.test(label) ? { companySlug: label } : {};
719
- }
720
- /** Print one push leg's refusal block under its row. */
721
- function printPlanLimitRefusal(summary, indent = " ") {
722
- for (const line of renderPlanLimitRefusalLines(summary, indent)) {
723
- console.log(chalk.yellow(line));
724
- }
725
- }
726
619
  export function registerCloudCommands(program) {
727
620
  program
728
621
  .command("push")
@@ -789,13 +682,7 @@ export function registerCloudCommands(program) {
789
682
  // the fanout" — wired through to `pushAll.skipPersonal`. Outside
790
683
  // `--all` the flag has no effect (logged above as part of the
791
684
  // option's help text).
792
- await withSyncHealthReport(async () => {
793
- const refused = await runPushAll(options.hqRoot, options.message, options.onConflict, options.personal === false);
794
- // A plan-limit refusal is not a sync failure, but the push did
795
- // not upload everything it was asked to: exit non-zero.
796
- if (refused)
797
- throw new SyncExitError(1, { health: "succeeded" });
798
- });
685
+ await withSyncHealthReport(() => runPushAll(options.hqRoot, options.message, options.onConflict, options.personal === false));
799
686
  return;
800
687
  }
801
688
  const jsonMode = options.json === true;
@@ -811,7 +698,6 @@ export function registerCloudCommands(program) {
811
698
  // Assigned right before the sync engine runs, so option-validation
812
699
  // failures never count as a sync attempt (US-003).
813
700
  let syncHealth;
814
- let explicitPersonalPaths;
815
701
  try {
816
702
  if (options.personal && options.credsFromStdin) {
817
703
  throw new Error("`--personal` cannot be combined with --creds-from-stdin: " +
@@ -820,11 +706,7 @@ export function registerCloudCommands(program) {
820
706
  "to have already resolved entity + credentials. Pick one.");
821
707
  }
822
708
  // Closes hq-cli#25 — see `assertNoPersonalPositionalPaths` doc-block.
823
- const targetedPersonalPathsEnabled = Boolean(options.personal && paths && paths.length > 0 && personalTargetedPushPathsEnabled());
824
- assertNoPersonalPositionalPaths(options, paths, targetedPersonalPathsEnabled);
825
- if (targetedPersonalPathsEnabled) {
826
- explicitPersonalPaths = resolveExplicitPersonalPushPaths(options.hqRoot, paths);
827
- }
709
+ assertNoPersonalPositionalPaths(options, paths);
828
710
  log(chalk.bold("\nHQ Sync — Push"));
829
711
  log(` HQ root: ${options.hqRoot}`);
830
712
  // Resolve credentials. Two paths:
@@ -833,7 +715,7 @@ export function registerCloudCommands(program) {
833
715
  // 2. default: vend via cached Cognito session (the human CLI path).
834
716
  let entityContext;
835
717
  let vaultConfig;
836
- /** Vault API config for membership/grant scope lookups and, on the pre-vended `--creds-from-stdin` path, private-folder uploads. */
718
+ /** Vault API config for membership/grant scope lookups. Set even on the pre-vended `--creds-from-stdin` path — share() accepts entityContext OR vaultConfig, not both. */
837
719
  let scopeVaultConfig;
838
720
  if (options.credsFromStdin) {
839
721
  if (process.stdin.isTTY) {
@@ -850,11 +732,11 @@ export function registerCloudCommands(program) {
850
732
  }
851
733
  // Upload creds are pre-vended in entityContext, but prefix filtering
852
734
  // still needs vault-service membership/grant resolution.
853
- const accessToken = await ensureSyncCognitoToken();
735
+ const accessToken = await ensureCognitoToken();
854
736
  scopeVaultConfig = buildVaultConfig(accessToken);
855
737
  }
856
738
  else {
857
- const accessToken = await ensureSyncCognitoToken();
739
+ const accessToken = await ensureCognitoToken();
858
740
  vaultConfig = buildVaultConfig(accessToken);
859
741
  scopeVaultConfig = vaultConfig;
860
742
  }
@@ -882,13 +764,11 @@ export function registerCloudCommands(program) {
882
764
  // Otherwise preserve the historical "default to cwd" semantics so
883
765
  // `hq sync push <file>` and bare `hq sync push` from inside the
884
766
  // company tree both work as before.
885
- const targetPaths = explicitPersonalPaths
886
- ? explicitPersonalPaths
887
- : paths && paths.length > 0
888
- ? paths
889
- : options.personal
890
- ? computePersonalVaultPaths(options.hqRoot)
891
- : [process.cwd()];
767
+ const targetPaths = paths && paths.length > 0
768
+ ? paths
769
+ : options.personal
770
+ ? computePersonalVaultPaths(options.hqRoot)
771
+ : [process.cwd()];
892
772
  log(` Company: ${options.personal
893
773
  ? `(personal: ${targetCompany})`
894
774
  : (options.company ?? "(from .hq/config.json or stdin)")}`);
@@ -905,50 +785,33 @@ export function registerCloudCommands(program) {
905
785
  // every row renders `—`. Resolved best-effort from the cached
906
786
  // idToken — pre-vended `--creds-from-stdin` paths still get author
907
787
  // attribution as long as the caller is logged in locally.
908
- const author = resolveUploadAuthor();
788
+ const author = resolveUploadAuthorFromCache();
909
789
  let pushPrefixSet;
910
790
  if (!personalMode && scopeVaultConfig) {
911
791
  const scopeClient = new VaultClient(scopeVaultConfig);
912
792
  const scope = await resolveCliPullScope(scopeClient, targetCompany, options.hqRoot);
913
793
  pushPrefixSet = scope?.prefixSet;
914
794
  }
915
- // Collect plan-limit refusals from the runner's events through the
916
- // progress-recorder seam, which (unlike onEvent) leaves share()'s own
917
- // console output untouched. The snapshot label mirrors share()'s
918
- // default recorder: the target slug, or null for the personal vault.
919
- const progressCompany = shareProgressCompany({
920
- personalMode,
921
- entityContext,
922
- companyRef: targetCompany ?? readActiveCompany(options.hqRoot),
923
- });
924
- const planLimitTracker = createPlanLimitRefusalTracker(companySlugForBilling(progressCompany));
925
795
  syncHealth = beginSyncHealthReport();
926
796
  const result = await share({
927
797
  paths: targetPaths,
928
798
  company: targetCompany,
929
799
  message: options.message,
930
800
  onConflict: options.onConflict,
931
- ...pushShareCredentials({
932
- entityContext,
933
- vaultConfig,
934
- scopeVaultConfig,
935
- }),
801
+ vaultConfig,
802
+ entityContext,
936
803
  hqRoot: options.hqRoot,
937
804
  onEvent,
938
- progressRecorder: trackingProgressRecorder(planLimitTracker, progressCompany),
939
805
  ...(personalMode ? { personalMode: true } : {}),
940
806
  ...(journalSlug !== undefined ? { journalSlug } : {}),
941
807
  ...(author ? { author } : {}),
942
808
  ...(pushPrefixSet !== undefined ? { prefixSet: pushPrefixSet } : {}),
943
809
  });
944
- const planLimitRefused = planLimitTracker.summary();
945
810
  if (jsonMode) {
946
811
  // Synthetic terminal event so subprocess consumers can read final
947
812
  // counts without summing per-file events. Distinguished from
948
813
  // SyncProgressEvent by `type:"complete"` (not in the share()
949
- // event schema — added at the CLI seam). `planLimitRefused` is
950
- // additive: present only when a plan limit refused new files, so a
951
- // consumer never has to infer a refusal from the counts.
814
+ // event schema — added at the CLI seam).
952
815
  emitJson({
953
816
  type: "complete",
954
817
  filesUploaded: result.filesUploaded,
@@ -956,7 +819,6 @@ export function registerCloudCommands(program) {
956
819
  filesSkipped: result.filesSkipped,
957
820
  conflictPaths: result.conflictPaths,
958
821
  aborted: result.aborted,
959
- ...(planLimitRefused ? { planLimitRefused } : {}),
960
822
  });
961
823
  }
962
824
  if (result.aborted) {
@@ -964,37 +826,13 @@ export function registerCloudCommands(program) {
964
826
  await syncHealth.failed();
965
827
  process.exit(1);
966
828
  }
967
- recordFirstWorkBearingSync({
968
- filesUploaded: result.filesUploaded,
969
- filesDeleted: result.filesDeleted,
970
- aborted: result.aborted,
971
- });
972
- if (planLimitRefused) {
973
- // Never a success line over a refusal: say what was pushed, what
974
- // was refused and how to fix it, then exit non-zero. The sync
975
- // itself worked, so client health records a success. `--json`
976
- // callers read `planLimitRefused` on the complete event instead
977
- // and keep their exit status.
978
- log(chalk.yellow(`\n⚠ Pushed ${result.filesUploaded} file(s) (${formatBytes(result.bytesUploaded)}, ` +
979
- `${result.filesSkipped} skipped), but ${describeRefusedFiles(planLimitRefused)} ` +
980
- "refused by your plan limit."));
981
- for (const line of renderPlanLimitRefusalLines(planLimitRefused)) {
982
- log(chalk.yellow(line));
983
- }
984
- for (const line of scopeExcludedLines(result.filesExcludedByScope, pushPrefixSet)) {
985
- log(chalk.yellow(line));
986
- }
987
- await syncHealth.succeeded();
988
- if (!jsonMode)
989
- process.exit(1);
990
- return;
991
- }
992
829
  if (result.filesExcludedByScope > 0) {
993
830
  log(chalk.yellow(`\n⚠ Pushed ${result.filesUploaded} file(s) (${formatBytes(result.bytesUploaded)}, ` +
994
831
  `${result.filesSkipped} skipped, ${result.filesExcludedByScope} scope-excluded)`));
995
- for (const line of scopeExcludedLines(result.filesExcludedByScope, pushPrefixSet)) {
996
- log(chalk.yellow(line));
997
- }
832
+ log(chalk.yellow(scopeExcludedWarning(result.filesExcludedByScope)));
833
+ const prefixDetail = scopeExcludedPrefixDetail(pushPrefixSet);
834
+ if (prefixDetail)
835
+ log(chalk.yellow(prefixDetail));
998
836
  }
999
837
  else {
1000
838
  log(chalk.green(`\n✓ Pushed ${result.filesUploaded} file(s) (${formatBytes(result.bytesUploaded)}, ${result.filesSkipped} skipped)`));
@@ -1069,7 +907,7 @@ export function registerCloudCommands(program) {
1069
907
  console.log(chalk.bold("\nHQ Sync — Pull"));
1070
908
  console.log(` HQ root: ${options.hqRoot}`);
1071
909
  console.log(` Company: ${options.company ?? "(from .hq/config.json)"}\n`);
1072
- const accessToken = await ensureSyncCognitoToken();
910
+ const accessToken = await ensureCognitoToken();
1073
911
  const vaultConfig = buildVaultConfig(accessToken);
1074
912
  // US-011 (2026-05-21 fix): resolve the caller's sync-config for
1075
913
  // the targeted membership BEFORE the pull, so we can (a) emit the
@@ -1133,10 +971,6 @@ export function registerCloudCommands(program) {
1133
971
  await syncHealth.failed();
1134
972
  process.exit(1);
1135
973
  }
1136
- recordFirstWorkBearingSync({
1137
- filesDownloaded: result.filesDownloaded,
1138
- aborted: result.aborted,
1139
- });
1140
974
  console.log(chalk.green(`\n✓ Pulled ${result.filesDownloaded} file(s) (${formatBytes(result.bytesDownloaded)}, ${result.filesSkipped} skipped, ${result.conflicts} conflicts)`));
1141
975
  // Emit the hint banner after success so it appears alongside the
1142
976
  // summary line. Mirrors the wiring in runPullAll and runNowSingle.
@@ -1162,18 +996,8 @@ export function registerCloudCommands(program) {
1162
996
  .command("status")
1163
997
  .description("Show local sync journal summary")
1164
998
  .option("--hq-root <path>", `Local HQ tree root (default: ${DEFAULT_HQ_ROOT})`, DEFAULT_HQ_ROOT)
1165
- .action((options, command) => {
1166
- const explicitHqRoot = command.getOptionValueSource("hqRoot") === "cli";
999
+ .action((options) => {
1167
1000
  try {
1168
- const hqRoot = options.hqRoot;
1169
- if (explicitHqRoot) {
1170
- if (!fs.existsSync(hqRoot)) {
1171
- throw new Error(`HQ root does not exist: ${hqRoot}`);
1172
- }
1173
- if (!fs.statSync(hqRoot).isDirectory()) {
1174
- throw new Error(`HQ root is not a directory: ${hqRoot}`);
1175
- }
1176
- }
1177
1001
  // The engine SHARDS the journal by slug — the personal-vault fanout
1178
1002
  // slot, one shard per cloud company, and the legacy "personal" shard.
1179
1003
  // Enumerate EVERY shard the engine can write (via the engine's own
@@ -1182,7 +1006,13 @@ export function registerCloudCommands(program) {
1182
1006
  // looked at `sync-journal._Users_<user>_hq.json` — a slug the engine
1183
1007
  // never writes — and printed "No sync journal yet" right after a
1184
1008
  // successful sync (feedback_9fbf1f82 / feedback_46288b7b).
1185
- const configPath = path.join(hqRoot, ".hq", "config.json");
1009
+ const journals = listJournals();
1010
+ if (journals.length === 0) {
1011
+ console.log(chalk.dim("No sync journal yet — run `hq sync now`, `hq sync push`, or `hq sync pull` to create one."));
1012
+ console.log(chalk.dim(` Looked in: ${getStateDir()} (sync-journal.*.json)`));
1013
+ return;
1014
+ }
1015
+ const configPath = path.join(options.hqRoot, ".hq", "config.json");
1186
1016
  let activeCompany;
1187
1017
  if (fs.existsSync(configPath)) {
1188
1018
  try {
@@ -1193,22 +1023,13 @@ export function registerCloudCommands(program) {
1193
1023
  // ignore
1194
1024
  }
1195
1025
  }
1196
- // Journals live in the machine-wide state directory, independently
1197
- // of the HQ content root selected for this status display.
1198
- const stateDir = getStateDir();
1199
- const journals = listJournals();
1200
1026
  let grandFiles = 0;
1201
1027
  let grandBytes = 0;
1202
1028
  let grandLastSync = "";
1203
1029
  console.log(chalk.bold("\nHQ Sync — Status"));
1204
- console.log(` HQ root: ${hqRoot}`);
1030
+ console.log(` HQ root: ${options.hqRoot}`);
1205
1031
  console.log(` Active company: ${activeCompany ?? chalk.dim("(none)")}`);
1206
- console.log(` State dir: ${stateDir}`);
1207
1032
  console.log(` Journals: ${journals.length}`);
1208
- if (journals.length === 0) {
1209
- console.log(chalk.dim("No sync journal yet — run `hq sync now`, `hq sync push`, or `hq sync pull` to create one."));
1210
- return;
1211
- }
1212
1033
  for (const j of journals) {
1213
1034
  const entries = Object.entries(j.journal.files ?? {});
1214
1035
  // Tombstones record removed files — exclude them from "tracked".
@@ -1373,7 +1194,7 @@ async function runPullAll(hqRoot, onConflict, modeAllOverride, skipPersonal, for
1373
1194
  console.log("");
1374
1195
  let result;
1375
1196
  try {
1376
- const accessToken = await ensureSyncCognitoToken();
1197
+ const accessToken = await ensureCognitoToken();
1377
1198
  const vaultConfig = buildVaultConfig(accessToken);
1378
1199
  const realClient = new VaultClient(vaultConfig);
1379
1200
  const adapter = {
@@ -1449,14 +1270,6 @@ async function runPullAll(hqRoot, onConflict, modeAllOverride, skipPersonal, for
1449
1270
  `(${formatBytes(result.bytesDownloaded)}) across ${result.attempted} ` +
1450
1271
  `target(s); ${result.conflicts} conflict(s); ${errored} error(s)`;
1451
1272
  console.log(errored > 0 ? chalk.yellow(summary) : chalk.green(summary));
1452
- for (const row of result.perCompany) {
1453
- if (row.result && !row.error) {
1454
- recordFirstWorkBearingSync({
1455
- filesDownloaded: row.result.filesDownloaded,
1456
- aborted: row.result.aborted,
1457
- });
1458
- }
1459
- }
1460
1273
  if (errored > 0)
1461
1274
  throw new SyncExitError(1);
1462
1275
  }
@@ -1466,7 +1279,7 @@ export async function runPullPersonal(hqRoot, onConflict) {
1466
1279
  console.log(` HQ root: ${hqRoot}`);
1467
1280
  console.log(` Strategy: ${onConflict ?? "(interactive)"}\n`);
1468
1281
  try {
1469
- const accessToken = await ensureSyncCognitoToken();
1282
+ const accessToken = await ensureCognitoToken();
1470
1283
  const vaultConfig = buildVaultConfig(accessToken);
1471
1284
  const client = new VaultClient(vaultConfig);
1472
1285
  const personalUid = await resolveCanonicalPersonUid({
@@ -1487,10 +1300,6 @@ export async function runPullPersonal(hqRoot, onConflict) {
1487
1300
  throw new SyncExitError(1);
1488
1301
  }
1489
1302
  console.log(chalk.green(`\n✓ Pulled ${result.filesDownloaded} file(s) (${formatBytes(result.bytesDownloaded)}, ${result.filesSkipped} skipped, ${result.conflicts} conflicts)`));
1490
- recordFirstWorkBearingSync({
1491
- filesDownloaded: result.filesDownloaded,
1492
- aborted: result.aborted,
1493
- });
1494
1303
  }
1495
1304
  catch (err) {
1496
1305
  if (err instanceof SyncExitError)
@@ -1499,11 +1308,6 @@ export async function runPullPersonal(hqRoot, onConflict) {
1499
1308
  throw new SyncExitError(1);
1500
1309
  }
1501
1310
  }
1502
- /**
1503
- * Run `push --all` and print its per-target report. Returns the files a plan
1504
- * limit refused across every target (null when none were), so the caller can
1505
- * refuse to report success; hard failures still throw {@link SyncExitError}.
1506
- */
1507
1311
  async function runPushAll(hqRoot, message, onConflict, skipPersonal) {
1508
1312
  console.log(chalk.bold("\nHQ Sync — Push (all)"));
1509
1313
  console.log(` HQ root: ${hqRoot}`);
@@ -1514,10 +1318,10 @@ async function runPushAll(hqRoot, message, onConflict, skipPersonal) {
1514
1318
  console.log("");
1515
1319
  let result;
1516
1320
  try {
1517
- const accessToken = await ensureSyncCognitoToken();
1321
+ const accessToken = await ensureCognitoToken();
1518
1322
  const vaultConfig = buildVaultConfig(accessToken);
1519
1323
  const realClient = new VaultClient(vaultConfig);
1520
- const author = resolveUploadAuthor();
1324
+ const author = resolveUploadAuthorFromCache();
1521
1325
  const adapter = {
1522
1326
  listMyMemberships: () => realClient.listMyMemberships(),
1523
1327
  listPersonEntities: () => realClient.entity.listByType("person"),
@@ -1538,39 +1342,31 @@ async function runPushAll(hqRoot, message, onConflict, skipPersonal) {
1538
1342
  }, {
1539
1343
  vaultClient: adapter,
1540
1344
  resolveScope: (companyUid, slug) => resolvePullScope(realClient, companyUid, slug, hqRoot),
1541
- share: async (opts) => {
1542
- const progressCompany = opts.personalMode
1543
- ? null
1544
- : (opts.targetSlug ?? opts.company);
1545
- const tracker = createPlanLimitRefusalTracker(companySlugForBilling(progressCompany));
1546
- const shareResult = await share({
1547
- paths: opts.paths,
1548
- company: opts.company,
1549
- vaultConfig,
1550
- hqRoot: opts.hqRoot,
1551
- progressRecorder: trackingProgressRecorder(tracker, progressCompany),
1552
- ...(opts.onConflict ? { onConflict: opts.onConflict } : {}),
1553
- ...(opts.personalMode !== undefined
1554
- ? { personalMode: opts.personalMode }
1555
- : {}),
1556
- ...(opts.journalSlug !== undefined
1557
- ? { journalSlug: opts.journalSlug }
1558
- : {}),
1559
- ...(opts.message !== undefined ? { message: opts.message } : {}),
1560
- ...(opts.skipUnchanged !== undefined
1561
- ? { skipUnchanged: opts.skipUnchanged }
1562
- : {}),
1563
- ...(opts.propagateDeletes !== undefined
1564
- ? { propagateDeletes: opts.propagateDeletes }
1565
- : {}),
1566
- ...(opts.propagateDeletePolicy !== undefined
1567
- ? { propagateDeletePolicy: opts.propagateDeletePolicy }
1568
- : {}),
1569
- ...(opts.prefixSet !== undefined ? { prefixSet: opts.prefixSet } : {}),
1570
- ...(author ? { author } : {}),
1571
- });
1572
- return { ...shareResult, planLimit: tracker.summary() };
1573
- },
1345
+ share: (opts) => share({
1346
+ paths: opts.paths,
1347
+ company: opts.company,
1348
+ vaultConfig,
1349
+ hqRoot: opts.hqRoot,
1350
+ ...(opts.onConflict ? { onConflict: opts.onConflict } : {}),
1351
+ ...(opts.personalMode !== undefined
1352
+ ? { personalMode: opts.personalMode }
1353
+ : {}),
1354
+ ...(opts.journalSlug !== undefined
1355
+ ? { journalSlug: opts.journalSlug }
1356
+ : {}),
1357
+ ...(opts.message !== undefined ? { message: opts.message } : {}),
1358
+ ...(opts.skipUnchanged !== undefined
1359
+ ? { skipUnchanged: opts.skipUnchanged }
1360
+ : {}),
1361
+ ...(opts.propagateDeletes !== undefined
1362
+ ? { propagateDeletes: opts.propagateDeletes }
1363
+ : {}),
1364
+ ...(opts.propagateDeletePolicy !== undefined
1365
+ ? { propagateDeletePolicy: opts.propagateDeletePolicy }
1366
+ : {}),
1367
+ ...(opts.prefixSet !== undefined ? { prefixSet: opts.prefixSet } : {}),
1368
+ ...(author ? { author } : {}),
1369
+ }),
1574
1370
  });
1575
1371
  }
1576
1372
  catch (err) {
@@ -1579,62 +1375,35 @@ async function runPushAll(hqRoot, message, onConflict, skipPersonal) {
1579
1375
  // terminal sync_failure before exiting on our behalf.
1580
1376
  throw new SyncExitError(1);
1581
1377
  }
1582
- let refused = null;
1583
- let refusedTargets = 0;
1584
1378
  for (const row of result.perCompany) {
1585
1379
  if (row.error) {
1586
1380
  console.log(chalk.red(` ✗ ${row.slug}: ${row.error}`));
1587
1381
  }
1588
1382
  else if (row.result) {
1589
1383
  const r = row.result;
1590
- const legRefused = r.planLimit ?? null;
1591
- const status = r.aborted || r.filesExcludedByScope > 0 || legRefused
1384
+ const status = r.aborted || r.filesExcludedByScope > 0
1592
1385
  ? chalk.yellow("⚠")
1593
1386
  : chalk.green("✓");
1594
1387
  console.log(` ${status} ${row.slug}: ${r.filesUploaded} file(s), ` +
1595
1388
  `${formatBytes(r.bytesUploaded)}, ${r.filesSkipped} skipped, ` +
1596
1389
  `${r.filesDeleted} deleted, ${r.filesExcludedByScope} scope-excluded, ` +
1597
1390
  `${r.conflictPaths.length} conflict(s)` +
1598
- (r.aborted ? " — aborted" : "") +
1599
- (legRefused
1600
- ? ` — ${describeRefusedCount(legRefused)} refused by plan limit`
1601
- : ""));
1602
- if (legRefused) {
1603
- printPlanLimitRefusal(legRefused);
1604
- refused = mergePlanLimitRefusals(refused, legRefused);
1605
- refusedTargets += 1;
1606
- }
1391
+ (r.aborted ? " — aborted" : ""));
1607
1392
  }
1608
1393
  }
1609
1394
  const errored = result.errors.length;
1610
1395
  const summary = `\nPushed ${result.filesUploaded} file(s) ` +
1611
1396
  `(${formatBytes(result.bytesUploaded)}) across ${result.attempted} ` +
1612
1397
  `target(s); ${result.filesDeleted} deleted; ${errored} error(s); ` +
1613
- `${result.filesExcludedByScope} scope-excluded` +
1614
- (refusedTargets > 0
1615
- ? `; new files refused by a plan limit on ${refusedTargets} target(s)`
1616
- : "");
1617
- console.log(errored > 0 || result.filesExcludedByScope > 0 || refusedTargets > 0
1398
+ `${result.filesExcludedByScope} scope-excluded`;
1399
+ console.log(errored > 0 || result.filesExcludedByScope > 0
1618
1400
  ? chalk.yellow(summary)
1619
1401
  : chalk.green(summary));
1620
- for (const row of result.perCompany) {
1621
- if (row.result && !row.error) {
1622
- recordFirstWorkBearingSync({
1623
- filesUploaded: row.result.filesUploaded,
1624
- filesDeleted: row.result.filesDeleted,
1625
- aborted: row.result.aborted,
1626
- });
1627
- }
1628
- }
1629
- for (const row of result.perCompany) {
1630
- const excluded = row.result?.filesExcludedByScope ?? 0;
1631
- for (const line of scopeExcludedLines(excluded, row.prefixSet)) {
1632
- console.log(chalk.yellow(`${row.slug}: ${line}`));
1633
- }
1402
+ if (result.filesExcludedByScope > 0) {
1403
+ console.log(chalk.yellow(scopeExcludedWarning(result.filesExcludedByScope)));
1634
1404
  }
1635
1405
  if (errored > 0)
1636
1406
  throw new SyncExitError(1);
1637
- return refused;
1638
1407
  }
1639
1408
  async function runNowSingle(hqRoot, company, personal, message, onConflict, modeAllOverride, forceScopeShrink) {
1640
1409
  console.log(chalk.bold("\nHQ Sync — Now"));
@@ -1642,9 +1411,9 @@ async function runNowSingle(hqRoot, company, personal, message, onConflict, mode
1642
1411
  console.log(` Target: ${personal ? "(personal)" : (company ?? "(active company)")}`);
1643
1412
  console.log(` Strategy: ${onConflict ?? "(interactive)"}\n`);
1644
1413
  try {
1645
- const accessToken = await ensureSyncCognitoToken();
1414
+ const accessToken = await ensureCognitoToken();
1646
1415
  const vaultConfig = buildVaultConfig(accessToken);
1647
- const author = resolveUploadAuthor();
1416
+ const author = resolveUploadAuthorFromCache();
1648
1417
  // Resolve the target. For --personal, look up the canonical person and
1649
1418
  // route paths/journal through personalMode. Otherwise use the company arg
1650
1419
  // (or fall back to the active company inside share()/sync()).
@@ -1652,7 +1421,6 @@ async function runNowSingle(hqRoot, company, personal, message, onConflict, mode
1652
1421
  let personalMode = false;
1653
1422
  let journalSlug;
1654
1423
  let pushPaths;
1655
- let pushSlug;
1656
1424
  if (personal) {
1657
1425
  const client = new VaultClient(vaultConfig);
1658
1426
  targetCompany = await resolveCanonicalPersonUid({
@@ -1677,7 +1445,6 @@ async function runNowSingle(hqRoot, company, personal, message, onConflict, mode
1677
1445
  "Use --company <slug>, --personal, or set up .hq/config.json.");
1678
1446
  }
1679
1447
  pushPaths = [path.join(hqRoot, "companies", slug)];
1680
- pushSlug = slug;
1681
1448
  }
1682
1449
  // Push first so the subsequent pull doesn't redownload files we were
1683
1450
  // about to broadcast (matches hq-sync-runner ordering).
@@ -1688,16 +1455,12 @@ async function runNowSingle(hqRoot, company, personal, message, onConflict, mode
1688
1455
  const pushScope = await resolveCliPullScope(scopeClient, targetCompany, hqRoot);
1689
1456
  nowPushPrefixSet = pushScope?.prefixSet;
1690
1457
  }
1691
- const pushProgressCompany = personalMode ? null : (pushSlug ?? null);
1692
- const planLimitTracker = createPlanLimitRefusalTracker(companySlugForBilling(pushProgressCompany));
1693
1458
  const pushResult = await share({
1694
1459
  paths: pushPaths,
1695
1460
  company: targetCompany,
1696
1461
  vaultConfig,
1697
1462
  hqRoot,
1698
- progressRecorder: trackingProgressRecorder(planLimitTracker, pushProgressCompany),
1699
1463
  skipUnchanged: true,
1700
- serverOwnedPathPolicy: "skip",
1701
1464
  propagateDeletes: true,
1702
1465
  propagateDeletePolicy: resolveDeletePolicy(),
1703
1466
  ...(onConflict ? { onConflict } : {}),
@@ -1707,33 +1470,23 @@ async function runNowSingle(hqRoot, company, personal, message, onConflict, mode
1707
1470
  ...(author ? { author } : {}),
1708
1471
  ...(nowPushPrefixSet !== undefined ? { prefixSet: nowPushPrefixSet } : {}),
1709
1472
  });
1710
- const pushRefused = planLimitTracker.summary();
1711
- const pushStatus = pushResult.aborted || pushResult.filesExcludedByScope > 0 || pushRefused
1473
+ const pushStatus = pushResult.aborted || pushResult.filesExcludedByScope > 0
1712
1474
  ? chalk.yellow("⚠")
1713
1475
  : chalk.green("✓");
1714
1476
  console.log(` ${pushStatus} ` +
1715
1477
  `${pushResult.filesUploaded} uploaded, ${pushResult.filesSkipped} skipped, ` +
1716
1478
  `${pushResult.filesDeleted} deleted, ${pushResult.filesExcludedByScope} scope-excluded` +
1717
- (pushResult.aborted ? " — aborted" : "") +
1718
- (pushRefused
1719
- ? ` — ${describeRefusedCount(pushRefused)} refused by plan limit`
1720
- : ""));
1721
- if (pushRefused)
1722
- printPlanLimitRefusal(pushRefused, " ");
1479
+ (pushResult.aborted ? " — aborted" : ""));
1723
1480
  if (pushResult.filesExcludedByScope > 0) {
1724
- for (const line of scopeExcludedLines(pushResult.filesExcludedByScope, nowPushPrefixSet)) {
1725
- console.log(chalk.yellow(line));
1726
- }
1481
+ console.log(chalk.yellow(scopeExcludedWarning(pushResult.filesExcludedByScope)));
1482
+ const prefixDetail = scopeExcludedPrefixDetail(nowPushPrefixSet);
1483
+ if (prefixDetail)
1484
+ console.log(chalk.yellow(prefixDetail));
1727
1485
  }
1728
1486
  if (pushResult.aborted) {
1729
1487
  console.log(chalk.yellow("\n⚠ Sync now aborted on push leg; pull skipped."));
1730
1488
  throw new SyncExitError(1);
1731
1489
  }
1732
- recordFirstWorkBearingSync({
1733
- filesUploaded: pushResult.filesUploaded,
1734
- filesDeleted: pushResult.filesDeleted,
1735
- aborted: pushResult.aborted,
1736
- });
1737
1490
  // US-011: resolve membership sync-config so we can either nudge an
1738
1491
  // all-mode owner or refuse the pull when strict-mode is on. Skipped
1739
1492
  // for personal targets (personal vault has no membership row) and
@@ -1825,10 +1578,6 @@ async function runNowSingle(hqRoot, company, personal, message, onConflict, mode
1825
1578
  console.log(chalk.yellow("\n⚠ Sync now finished with pull leg aborted."));
1826
1579
  throw new SyncExitError(1);
1827
1580
  }
1828
- recordFirstWorkBearingSync({
1829
- filesDownloaded: pullResult.filesDownloaded,
1830
- aborted: pullResult.aborted,
1831
- });
1832
1581
  // Emit the hint banner after a successful pull so it appears at the
1833
1582
  // bottom of the summary rather than mid-stream. Size-gated: only a large
1834
1583
  // local folder is nudged.
@@ -1839,12 +1588,6 @@ async function runNowSingle(hqRoot, company, personal, message, onConflict, mode
1839
1588
  level: bannerLevel,
1840
1589
  });
1841
1590
  }
1842
- if (pushRefused) {
1843
- // The pull ran, but the push did not upload everything: no success line.
1844
- console.log(chalk.yellow(`\n⚠ Sync now finished, but ${describeRefusedFiles(pushRefused)} ` +
1845
- "refused by your plan limit (listed above)."));
1846
- throw new SyncExitError(1, { health: "succeeded" });
1847
- }
1848
1591
  console.log(chalk.green("\n✓ Sync now complete"));
1849
1592
  }
1850
1593
  catch (err) {
@@ -1866,22 +1609,12 @@ async function runNowAll(hqRoot, message, onConflict, modeAllOverride, skipPerso
1866
1609
  // so the per-target rendering, error isolation, and exit codes are
1867
1610
  // identical to running `push --all` then `pull --all` back-to-back.
1868
1611
  console.log(chalk.dim("→ push --all"));
1869
- const refused = await runPushAll(hqRoot, message, onConflict, skipPersonal);
1612
+ await runPushAll(hqRoot, message, onConflict, skipPersonal);
1870
1613
  console.log(chalk.dim("\n→ pull --all"));
1871
1614
  // US-011: forward --mode-all so the strict refusal applies to the
1872
1615
  // pull leg (push doesn't need a narrow-hint — the narrow ritual is
1873
1616
  // pull-side).
1874
1617
  await runPullAll(hqRoot, onConflict, modeAllOverride, skipPersonal, forceScopeShrink);
1875
- if (refused) {
1876
- // A plan-limit refusal does not stop the pull, but the run must not end
1877
- // looking like a clean sync: say so last and exit non-zero.
1878
- console.log(chalk.yellow(`\n⚠ Sync finished, but ${describeRefusedFiles(refused)} refused ` +
1879
- "by your plan limit (listed under push --all above)."));
1880
- if (refused.upgradeUrl) {
1881
- console.log(chalk.yellow(` Upgrade: ${refused.upgradeUrl}`));
1882
- }
1883
- throw new SyncExitError(1, { health: "succeeded" });
1884
- }
1885
1618
  }
1886
1619
  /**
1887
1620
  * Best-effort read of the active company slug from `<hqRoot>/.hq/config.json`.
@@ -1935,4 +1668,35 @@ async function readAllStdin() {
1935
1668
  }
1936
1669
  return Buffer.concat(chunks).toString("utf8");
1937
1670
  }
1671
+ /**
1672
+ * Resolve the syncing user's `UploadAuthor` (sub + email) from the cached
1673
+ * Cognito idToken. Returns `undefined` when no tokens are cached or the
1674
+ * token is missing the required claims — share() then skips the metadata
1675
+ * stamp gracefully (not an error).
1676
+ *
1677
+ * We deliberately decode the JWT here instead of verifying it: Cognito
1678
+ * already verified at issuance, and we only use the public claims to
1679
+ * label the upload's S3 user metadata (no auth decision rides on it).
1680
+ */
1681
+ function resolveUploadAuthorFromCache() {
1682
+ const tokens = loadCachedTokens();
1683
+ if (!tokens?.idToken)
1684
+ return undefined;
1685
+ const parts = tokens.idToken.split(".");
1686
+ if (parts.length !== 3)
1687
+ return undefined;
1688
+ try {
1689
+ const payload = parts[1].replace(/-/g, "+").replace(/_/g, "/");
1690
+ const padded = payload + "=".repeat((4 - (payload.length % 4)) % 4);
1691
+ const json = Buffer.from(padded, "base64").toString("utf-8");
1692
+ const claims = JSON.parse(json);
1693
+ if (claims.sub && claims.email) {
1694
+ return { userSub: claims.sub, email: claims.email };
1695
+ }
1696
+ return undefined;
1697
+ }
1698
+ catch {
1699
+ return undefined;
1700
+ }
1701
+ }
1938
1702
  //# sourceMappingURL=cloud.js.map