@productbrain/cli 0.1.0-beta.36 → 0.1.0-beta.3616

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 (1169) hide show
  1. package/README.md +14 -0
  2. package/dist/__tests__/adapters.test.js +54 -1
  3. package/dist/__tests__/adapters.test.js.map +1 -1
  4. package/dist/__tests__/audit.test.js +65 -44
  5. package/dist/__tests__/audit.test.js.map +1 -1
  6. package/dist/__tests__/authority-domains-queue.test.d.ts +2 -0
  7. package/dist/__tests__/authority-domains-queue.test.d.ts.map +1 -0
  8. package/dist/__tests__/authority-domains-queue.test.js +169 -0
  9. package/dist/__tests__/authority-domains-queue.test.js.map +1 -0
  10. package/dist/__tests__/authority-domains.test.d.ts +2 -0
  11. package/dist/__tests__/authority-domains.test.d.ts.map +1 -0
  12. package/dist/__tests__/authority-domains.test.js +48 -0
  13. package/dist/__tests__/authority-domains.test.js.map +1 -0
  14. package/dist/__tests__/canonicalRefs.vocab.test.d.ts +2 -0
  15. package/dist/__tests__/canonicalRefs.vocab.test.d.ts.map +1 -0
  16. package/dist/__tests__/canonicalRefs.vocab.test.js +251 -0
  17. package/dist/__tests__/canonicalRefs.vocab.test.js.map +1 -0
  18. package/dist/__tests__/capture-receipt-coaching.test.d.ts +2 -0
  19. package/dist/__tests__/capture-receipt-coaching.test.d.ts.map +1 -0
  20. package/dist/__tests__/capture-receipt-coaching.test.js +89 -0
  21. package/dist/__tests__/capture-receipt-coaching.test.js.map +1 -0
  22. package/dist/__tests__/capture-receipt-domain.test.d.ts +2 -0
  23. package/dist/__tests__/capture-receipt-domain.test.d.ts.map +1 -0
  24. package/dist/__tests__/capture-receipt-domain.test.js +29 -0
  25. package/dist/__tests__/capture-receipt-domain.test.js.map +1 -0
  26. package/dist/__tests__/capture.test.js +625 -33
  27. package/dist/__tests__/capture.test.js.map +1 -1
  28. package/dist/__tests__/coaching-mirror-drift.test.d.ts +2 -0
  29. package/dist/__tests__/coaching-mirror-drift.test.d.ts.map +1 -0
  30. package/dist/__tests__/coaching-mirror-drift.test.js +47 -0
  31. package/dist/__tests__/coaching-mirror-drift.test.js.map +1 -0
  32. package/dist/__tests__/codex-prep-parity.test.d.ts +2 -0
  33. package/dist/__tests__/codex-prep-parity.test.d.ts.map +1 -0
  34. package/dist/__tests__/codex-prep-parity.test.js +107 -0
  35. package/dist/__tests__/codex-prep-parity.test.js.map +1 -0
  36. package/dist/__tests__/collection-registry-seed-drift.test.d.ts +2 -0
  37. package/dist/__tests__/collection-registry-seed-drift.test.d.ts.map +1 -0
  38. package/dist/__tests__/collection-registry-seed-drift.test.js +58 -0
  39. package/dist/__tests__/collection-registry-seed-drift.test.js.map +1 -0
  40. package/dist/__tests__/config-prod-fallthrough.test.d.ts +2 -0
  41. package/dist/__tests__/config-prod-fallthrough.test.d.ts.map +1 -0
  42. package/dist/__tests__/config-prod-fallthrough.test.js +82 -0
  43. package/dist/__tests__/config-prod-fallthrough.test.js.map +1 -0
  44. package/dist/__tests__/config.test.d.ts +1 -1
  45. package/dist/__tests__/config.test.js +410 -10
  46. package/dist/__tests__/config.test.js.map +1 -1
  47. package/dist/__tests__/constants.test.js +53 -1
  48. package/dist/__tests__/constants.test.js.map +1 -1
  49. package/dist/__tests__/constellation.test.js +14 -14
  50. package/dist/__tests__/constellation.test.js.map +1 -1
  51. package/dist/__tests__/context-strategy.test.js +8 -8
  52. package/dist/__tests__/context-strategy.test.js.map +1 -1
  53. package/dist/__tests__/conversation.test.d.ts +2 -0
  54. package/dist/__tests__/conversation.test.d.ts.map +1 -0
  55. package/dist/__tests__/conversation.test.js +113 -0
  56. package/dist/__tests__/conversation.test.js.map +1 -0
  57. package/dist/__tests__/entry-formatter.test.d.ts +2 -0
  58. package/dist/__tests__/entry-formatter.test.d.ts.map +1 -0
  59. package/dist/__tests__/entry-formatter.test.js +82 -0
  60. package/dist/__tests__/entry-formatter.test.js.map +1 -0
  61. package/dist/__tests__/envelope-contract.test.d.ts +15 -0
  62. package/dist/__tests__/envelope-contract.test.d.ts.map +1 -0
  63. package/dist/__tests__/envelope-contract.test.js +152 -0
  64. package/dist/__tests__/envelope-contract.test.js.map +1 -0
  65. package/dist/__tests__/errors.test.js +26 -0
  66. package/dist/__tests__/errors.test.js.map +1 -1
  67. package/dist/__tests__/experiment.test.d.ts +6 -0
  68. package/dist/__tests__/experiment.test.d.ts.map +1 -0
  69. package/dist/__tests__/experiment.test.js +69 -0
  70. package/dist/__tests__/experiment.test.js.map +1 -0
  71. package/dist/__tests__/fields.test.js +20 -20
  72. package/dist/__tests__/fields.test.js.map +1 -1
  73. package/dist/__tests__/gateway-dry-run-timeout.test.d.ts +2 -0
  74. package/dist/__tests__/gateway-dry-run-timeout.test.d.ts.map +1 -0
  75. package/dist/__tests__/gateway-dry-run-timeout.test.js +70 -0
  76. package/dist/__tests__/gateway-dry-run-timeout.test.js.map +1 -0
  77. package/dist/__tests__/gateway-timeout-body-phase.test.d.ts +2 -0
  78. package/dist/__tests__/gateway-timeout-body-phase.test.d.ts.map +1 -0
  79. package/dist/__tests__/gateway-timeout-body-phase.test.js +121 -0
  80. package/dist/__tests__/gateway-timeout-body-phase.test.js.map +1 -0
  81. package/dist/__tests__/handshake-augment.test.d.ts +2 -0
  82. package/dist/__tests__/handshake-augment.test.d.ts.map +1 -0
  83. package/dist/__tests__/handshake-augment.test.js +424 -0
  84. package/dist/__tests__/handshake-augment.test.js.map +1 -0
  85. package/dist/__tests__/handshake-dormancy.test.d.ts +2 -0
  86. package/dist/__tests__/handshake-dormancy.test.d.ts.map +1 -0
  87. package/dist/__tests__/handshake-dormancy.test.js +207 -0
  88. package/dist/__tests__/handshake-dormancy.test.js.map +1 -0
  89. package/dist/__tests__/handshake-formatter.test.d.ts +2 -0
  90. package/dist/__tests__/handshake-formatter.test.d.ts.map +1 -0
  91. package/dist/__tests__/handshake-formatter.test.js +67 -0
  92. package/dist/__tests__/handshake-formatter.test.js.map +1 -0
  93. package/dist/__tests__/handshake-preview.test.d.ts +2 -0
  94. package/dist/__tests__/handshake-preview.test.d.ts.map +1 -0
  95. package/dist/__tests__/handshake-preview.test.js +950 -0
  96. package/dist/__tests__/handshake-preview.test.js.map +1 -0
  97. package/dist/__tests__/handshake.e2e.test.d.ts +2 -0
  98. package/dist/__tests__/handshake.e2e.test.d.ts.map +1 -0
  99. package/dist/__tests__/handshake.e2e.test.js +1255 -0
  100. package/dist/__tests__/handshake.e2e.test.js.map +1 -0
  101. package/dist/__tests__/handshake.test.js +787 -2
  102. package/dist/__tests__/handshake.test.js.map +1 -1
  103. package/dist/__tests__/health-gap-kinds-drift.test.d.ts +2 -0
  104. package/dist/__tests__/health-gap-kinds-drift.test.d.ts.map +1 -0
  105. package/dist/__tests__/health-gap-kinds-drift.test.js +41 -0
  106. package/dist/__tests__/health-gap-kinds-drift.test.js.map +1 -0
  107. package/dist/__tests__/hook-intents.test.d.ts +2 -0
  108. package/dist/__tests__/hook-intents.test.d.ts.map +1 -0
  109. package/dist/__tests__/hook-intents.test.js +184 -0
  110. package/dist/__tests__/hook-intents.test.js.map +1 -0
  111. package/dist/__tests__/ingest.test.js +37 -28
  112. package/dist/__tests__/ingest.test.js.map +1 -1
  113. package/dist/__tests__/kernel-value-sets-drift.test.d.ts +2 -0
  114. package/dist/__tests__/kernel-value-sets-drift.test.d.ts.map +1 -0
  115. package/dist/__tests__/kernel-value-sets-drift.test.js +46 -0
  116. package/dist/__tests__/kernel-value-sets-drift.test.js.map +1 -0
  117. package/dist/__tests__/kernel-value-sets-generator.test.d.ts +2 -0
  118. package/dist/__tests__/kernel-value-sets-generator.test.d.ts.map +1 -0
  119. package/dist/__tests__/kernel-value-sets-generator.test.js +108 -0
  120. package/dist/__tests__/kernel-value-sets-generator.test.js.map +1 -0
  121. package/dist/__tests__/manifest.test.d.ts +6 -0
  122. package/dist/__tests__/manifest.test.d.ts.map +1 -0
  123. package/dist/__tests__/manifest.test.js +255 -0
  124. package/dist/__tests__/manifest.test.js.map +1 -0
  125. package/dist/__tests__/method-publish-coherency.test.d.ts +9 -0
  126. package/dist/__tests__/method-publish-coherency.test.d.ts.map +1 -0
  127. package/dist/__tests__/method-publish-coherency.test.js +71 -0
  128. package/dist/__tests__/method-publish-coherency.test.js.map +1 -0
  129. package/dist/__tests__/method-registry.integration.test.d.ts +6 -0
  130. package/dist/__tests__/method-registry.integration.test.d.ts.map +1 -0
  131. package/dist/__tests__/method-registry.integration.test.js +17 -0
  132. package/dist/__tests__/method-registry.integration.test.js.map +1 -0
  133. package/dist/__tests__/method-registry.test.d.ts +12 -0
  134. package/dist/__tests__/method-registry.test.d.ts.map +1 -0
  135. package/dist/__tests__/method-registry.test.js +86 -0
  136. package/dist/__tests__/method-registry.test.js.map +1 -0
  137. package/dist/__tests__/notice-marker.test.d.ts +2 -0
  138. package/dist/__tests__/notice-marker.test.d.ts.map +1 -0
  139. package/dist/__tests__/notice-marker.test.js +41 -0
  140. package/dist/__tests__/notice-marker.test.js.map +1 -0
  141. package/dist/__tests__/onboarding-path-b.test.d.ts +2 -0
  142. package/dist/__tests__/onboarding-path-b.test.d.ts.map +1 -0
  143. package/dist/__tests__/onboarding-path-b.test.js +46 -0
  144. package/dist/__tests__/onboarding-path-b.test.js.map +1 -0
  145. package/dist/__tests__/onboarding.test.js +242 -89
  146. package/dist/__tests__/onboarding.test.js.map +1 -1
  147. package/dist/__tests__/orient.test.js +498 -12
  148. package/dist/__tests__/orient.test.js.map +1 -1
  149. package/dist/__tests__/perimeter.test.d.ts +2 -0
  150. package/dist/__tests__/perimeter.test.d.ts.map +1 -0
  151. package/dist/__tests__/perimeter.test.js +165 -0
  152. package/dist/__tests__/perimeter.test.js.map +1 -0
  153. package/dist/__tests__/personal-layer.test.d.ts +11 -0
  154. package/dist/__tests__/personal-layer.test.d.ts.map +1 -0
  155. package/dist/__tests__/personal-layer.test.js +268 -0
  156. package/dist/__tests__/personal-layer.test.js.map +1 -0
  157. package/dist/__tests__/preview-key-refresh.test.d.ts +2 -0
  158. package/dist/__tests__/preview-key-refresh.test.d.ts.map +1 -0
  159. package/dist/__tests__/preview-key-refresh.test.js +126 -0
  160. package/dist/__tests__/preview-key-refresh.test.js.map +1 -0
  161. package/dist/__tests__/profiles.test.js +162 -10
  162. package/dist/__tests__/profiles.test.js.map +1 -1
  163. package/dist/__tests__/promote-batch.test.d.ts +2 -0
  164. package/dist/__tests__/promote-batch.test.d.ts.map +1 -0
  165. package/dist/__tests__/promote-batch.test.js +185 -0
  166. package/dist/__tests__/promote-batch.test.js.map +1 -0
  167. package/dist/__tests__/promote.test.js +292 -23
  168. package/dist/__tests__/promote.test.js.map +1 -1
  169. package/dist/__tests__/proof-run.test.d.ts +2 -0
  170. package/dist/__tests__/proof-run.test.d.ts.map +1 -0
  171. package/dist/__tests__/proof-run.test.js +255 -0
  172. package/dist/__tests__/proof-run.test.js.map +1 -0
  173. package/dist/__tests__/proposals.test.js +18 -18
  174. package/dist/__tests__/proposals.test.js.map +1 -1
  175. package/dist/__tests__/rate-limit-resilience.test.d.ts +7 -0
  176. package/dist/__tests__/rate-limit-resilience.test.d.ts.map +1 -0
  177. package/dist/__tests__/rate-limit-resilience.test.js +207 -0
  178. package/dist/__tests__/rate-limit-resilience.test.js.map +1 -0
  179. package/dist/__tests__/relate.test.js +14 -14
  180. package/dist/__tests__/relate.test.js.map +1 -1
  181. package/dist/__tests__/restore.test.d.ts +2 -0
  182. package/dist/__tests__/restore.test.d.ts.map +1 -0
  183. package/dist/__tests__/restore.test.js +85 -0
  184. package/dist/__tests__/restore.test.js.map +1 -0
  185. package/dist/__tests__/route-latency-budget.test.d.ts +2 -0
  186. package/dist/__tests__/route-latency-budget.test.d.ts.map +1 -0
  187. package/dist/__tests__/route-latency-budget.test.js +103 -0
  188. package/dist/__tests__/route-latency-budget.test.js.map +1 -0
  189. package/dist/__tests__/session-close-loop.test.d.ts +2 -0
  190. package/dist/__tests__/session-close-loop.test.d.ts.map +1 -0
  191. package/dist/__tests__/session-close-loop.test.js +231 -0
  192. package/dist/__tests__/session-close-loop.test.js.map +1 -0
  193. package/dist/__tests__/session-label.test.d.ts +2 -0
  194. package/dist/__tests__/session-label.test.d.ts.map +1 -0
  195. package/dist/__tests__/session-label.test.js +46 -0
  196. package/dist/__tests__/session-label.test.js.map +1 -0
  197. package/dist/__tests__/session-list-show.test.d.ts +2 -0
  198. package/dist/__tests__/session-list-show.test.d.ts.map +1 -0
  199. package/dist/__tests__/session-list-show.test.js +174 -0
  200. package/dist/__tests__/session-list-show.test.js.map +1 -0
  201. package/dist/__tests__/session-reset.test.d.ts +2 -0
  202. package/dist/__tests__/session-reset.test.d.ts.map +1 -0
  203. package/dist/__tests__/session-reset.test.js +138 -0
  204. package/dist/__tests__/session-reset.test.js.map +1 -0
  205. package/dist/__tests__/session-resume-backstop.test.d.ts +2 -0
  206. package/dist/__tests__/session-resume-backstop.test.d.ts.map +1 -0
  207. package/dist/__tests__/session-resume-backstop.test.js +99 -0
  208. package/dist/__tests__/session-resume-backstop.test.js.map +1 -0
  209. package/dist/__tests__/session-start-key-refresh.test.d.ts +2 -0
  210. package/dist/__tests__/session-start-key-refresh.test.d.ts.map +1 -0
  211. package/dist/__tests__/session-start-key-refresh.test.js +183 -0
  212. package/dist/__tests__/session-start-key-refresh.test.js.map +1 -0
  213. package/dist/__tests__/session-state-machine.test.d.ts +2 -0
  214. package/dist/__tests__/session-state-machine.test.d.ts.map +1 -0
  215. package/dist/__tests__/session-state-machine.test.js +379 -0
  216. package/dist/__tests__/session-state-machine.test.js.map +1 -0
  217. package/dist/__tests__/session-switch.test.d.ts +2 -0
  218. package/dist/__tests__/session-switch.test.d.ts.map +1 -0
  219. package/dist/__tests__/session-switch.test.js +132 -0
  220. package/dist/__tests__/session-switch.test.js.map +1 -0
  221. package/dist/__tests__/session-touch.test.js +16 -11
  222. package/dist/__tests__/session-touch.test.js.map +1 -1
  223. package/dist/__tests__/session.test.js +2 -2
  224. package/dist/__tests__/session.test.js.map +1 -1
  225. package/dist/__tests__/setup-ingest.test.d.ts +2 -0
  226. package/dist/__tests__/setup-ingest.test.d.ts.map +1 -0
  227. package/dist/__tests__/setup-ingest.test.js +71 -0
  228. package/dist/__tests__/setup-ingest.test.js.map +1 -0
  229. package/dist/__tests__/setup-resolver.test.d.ts +14 -0
  230. package/dist/__tests__/setup-resolver.test.d.ts.map +1 -0
  231. package/dist/__tests__/setup-resolver.test.js +228 -0
  232. package/dist/__tests__/setup-resolver.test.js.map +1 -0
  233. package/dist/__tests__/skill-vocabulary.test.d.ts +21 -0
  234. package/dist/__tests__/skill-vocabulary.test.d.ts.map +1 -0
  235. package/dist/__tests__/skill-vocabulary.test.js +192 -0
  236. package/dist/__tests__/skill-vocabulary.test.js.map +1 -0
  237. package/dist/__tests__/state.test.d.ts +6 -0
  238. package/dist/__tests__/state.test.d.ts.map +1 -0
  239. package/dist/__tests__/state.test.js +97 -0
  240. package/dist/__tests__/state.test.js.map +1 -0
  241. package/dist/__tests__/surfaces.test.d.ts +2 -0
  242. package/dist/__tests__/surfaces.test.d.ts.map +1 -0
  243. package/dist/__tests__/surfaces.test.js +46 -0
  244. package/dist/__tests__/surfaces.test.js.map +1 -0
  245. package/dist/__tests__/update-check.test.d.ts +2 -0
  246. package/dist/__tests__/update-check.test.d.ts.map +1 -0
  247. package/dist/__tests__/update-check.test.js +215 -0
  248. package/dist/__tests__/update-check.test.js.map +1 -0
  249. package/dist/__tests__/update.test.js +97 -22
  250. package/dist/__tests__/update.test.js.map +1 -1
  251. package/dist/__tests__/upgrade-runner.test.d.ts +2 -0
  252. package/dist/__tests__/upgrade-runner.test.d.ts.map +1 -0
  253. package/dist/__tests__/upgrade-runner.test.js +54 -0
  254. package/dist/__tests__/upgrade-runner.test.js.map +1 -0
  255. package/dist/__tests__/upgrade.test.d.ts +2 -0
  256. package/dist/__tests__/upgrade.test.d.ts.map +1 -0
  257. package/dist/__tests__/upgrade.test.js +56 -0
  258. package/dist/__tests__/upgrade.test.js.map +1 -0
  259. package/dist/__tests__/verify-formatter.test.d.ts +2 -0
  260. package/dist/__tests__/verify-formatter.test.d.ts.map +1 -0
  261. package/dist/__tests__/verify-formatter.test.js +85 -0
  262. package/dist/__tests__/verify-formatter.test.js.map +1 -0
  263. package/dist/__tests__/vocabulary-leak.test.d.ts +39 -0
  264. package/dist/__tests__/vocabulary-leak.test.d.ts.map +1 -0
  265. package/dist/__tests__/vocabulary-leak.test.js +539 -0
  266. package/dist/__tests__/vocabulary-leak.test.js.map +1 -0
  267. package/dist/__tests__/workspace.test.js +52 -32
  268. package/dist/__tests__/workspace.test.js.map +1 -1
  269. package/dist/__tests__/workspaceNotice.test.d.ts +2 -0
  270. package/dist/__tests__/workspaceNotice.test.d.ts.map +1 -0
  271. package/dist/__tests__/workspaceNotice.test.js +338 -0
  272. package/dist/__tests__/workspaceNotice.test.js.map +1 -0
  273. package/dist/commands/__tests__/connect-handoff.test.d.ts +11 -0
  274. package/dist/commands/__tests__/connect-handoff.test.d.ts.map +1 -0
  275. package/dist/commands/__tests__/connect-handoff.test.js +111 -0
  276. package/dist/commands/__tests__/connect-handoff.test.js.map +1 -0
  277. package/dist/commands/__tests__/quality.test.d.ts +2 -0
  278. package/dist/commands/__tests__/quality.test.d.ts.map +1 -0
  279. package/dist/commands/__tests__/quality.test.js +156 -0
  280. package/dist/commands/__tests__/quality.test.js.map +1 -0
  281. package/dist/commands/__tests__/rework.test.d.ts +2 -0
  282. package/dist/commands/__tests__/rework.test.d.ts.map +1 -0
  283. package/dist/commands/__tests__/rework.test.js +149 -0
  284. package/dist/commands/__tests__/rework.test.js.map +1 -0
  285. package/dist/commands/__tests__/setup-detect-surfaces.test.d.ts +15 -0
  286. package/dist/commands/__tests__/setup-detect-surfaces.test.d.ts.map +1 -0
  287. package/dist/commands/__tests__/setup-detect-surfaces.test.js +149 -0
  288. package/dist/commands/__tests__/setup-detect-surfaces.test.js.map +1 -0
  289. package/dist/commands/__tests__/setup-state.test.d.ts +2 -0
  290. package/dist/commands/__tests__/setup-state.test.d.ts.map +1 -0
  291. package/dist/commands/__tests__/setup-state.test.js +194 -0
  292. package/dist/commands/__tests__/setup-state.test.js.map +1 -0
  293. package/dist/commands/accept.d.ts.map +1 -1
  294. package/dist/commands/accept.js +4 -4
  295. package/dist/commands/accept.js.map +1 -1
  296. package/dist/commands/admin/cockpit.d.ts +90 -0
  297. package/dist/commands/admin/cockpit.d.ts.map +1 -0
  298. package/dist/commands/admin/cockpit.js +618 -0
  299. package/dist/commands/admin/cockpit.js.map +1 -0
  300. package/dist/commands/admin/index.d.ts +21 -0
  301. package/dist/commands/admin/index.d.ts.map +1 -0
  302. package/dist/commands/admin/index.js +258 -0
  303. package/dist/commands/admin/index.js.map +1 -0
  304. package/dist/commands/admin/inspect.d.ts +30 -0
  305. package/dist/commands/admin/inspect.d.ts.map +1 -0
  306. package/dist/commands/admin/inspect.js +555 -0
  307. package/dist/commands/admin/inspect.js.map +1 -0
  308. package/dist/commands/admin/inspect.test.d.ts +7 -0
  309. package/dist/commands/admin/inspect.test.d.ts.map +1 -0
  310. package/dist/commands/admin/inspect.test.js +90 -0
  311. package/dist/commands/admin/inspect.test.js.map +1 -0
  312. package/dist/commands/admin/manage.d.ts +8 -0
  313. package/dist/commands/admin/manage.d.ts.map +1 -0
  314. package/dist/commands/admin/manage.js +260 -0
  315. package/dist/commands/admin/manage.js.map +1 -0
  316. package/dist/commands/admin/manage.test.d.ts +16 -0
  317. package/dist/commands/admin/manage.test.d.ts.map +1 -0
  318. package/dist/commands/admin/manage.test.js +159 -0
  319. package/dist/commands/admin/manage.test.js.map +1 -0
  320. package/dist/commands/admin/run.d.ts +43 -0
  321. package/dist/commands/admin/run.d.ts.map +1 -0
  322. package/dist/commands/admin/run.js +68 -0
  323. package/dist/commands/admin/run.js.map +1 -0
  324. package/dist/commands/admin/run.test.d.ts +18 -0
  325. package/dist/commands/admin/run.test.d.ts.map +1 -0
  326. package/dist/commands/admin/run.test.js +146 -0
  327. package/dist/commands/admin/run.test.js.map +1 -0
  328. package/dist/commands/admin/seed.d.ts +75 -0
  329. package/dist/commands/admin/seed.d.ts.map +1 -0
  330. package/dist/commands/admin/seed.js +944 -0
  331. package/dist/commands/admin/seed.js.map +1 -0
  332. package/dist/commands/admin/seed.test.d.ts +11 -0
  333. package/dist/commands/admin/seed.test.d.ts.map +1 -0
  334. package/dist/commands/admin/seed.test.js +127 -0
  335. package/dist/commands/admin/seed.test.js.map +1 -0
  336. package/dist/commands/admin/seedRegistryEntries.generated.d.ts +14 -0
  337. package/dist/commands/admin/seedRegistryEntries.generated.d.ts.map +1 -0
  338. package/dist/commands/admin/seedRegistryEntries.generated.js +153 -0
  339. package/dist/commands/admin/seedRegistryEntries.generated.js.map +1 -0
  340. package/dist/commands/admin/seedRegistryEntries.test.d.ts +13 -0
  341. package/dist/commands/admin/seedRegistryEntries.test.d.ts.map +1 -0
  342. package/dist/commands/admin/seedRegistryEntries.test.js +91 -0
  343. package/dist/commands/admin/seedRegistryEntries.test.js.map +1 -0
  344. package/dist/commands/audit.d.ts.map +1 -1
  345. package/dist/commands/audit.js +42 -7
  346. package/dist/commands/audit.js.map +1 -1
  347. package/dist/commands/authority-domains.d.ts +157 -0
  348. package/dist/commands/authority-domains.d.ts.map +1 -0
  349. package/dist/commands/authority-domains.js +387 -0
  350. package/dist/commands/authority-domains.js.map +1 -0
  351. package/dist/commands/brief.d.ts.map +1 -1
  352. package/dist/commands/brief.js +9 -5
  353. package/dist/commands/brief.js.map +1 -1
  354. package/dist/commands/capture.d.ts +12 -0
  355. package/dist/commands/capture.d.ts.map +1 -1
  356. package/dist/commands/capture.js +266 -69
  357. package/dist/commands/capture.js.map +1 -1
  358. package/dist/commands/chain-walk.d.ts.map +1 -1
  359. package/dist/commands/chain-walk.js +2 -2
  360. package/dist/commands/chain-walk.js.map +1 -1
  361. package/dist/commands/changes.d.ts.map +1 -1
  362. package/dist/commands/changes.js +2 -2
  363. package/dist/commands/changes.js.map +1 -1
  364. package/dist/commands/codex-prep.d.ts +12 -1
  365. package/dist/commands/codex-prep.d.ts.map +1 -1
  366. package/dist/commands/codex-prep.js +19 -85
  367. package/dist/commands/codex-prep.js.map +1 -1
  368. package/dist/commands/collections.d.ts.map +1 -1
  369. package/dist/commands/collections.js +5 -5
  370. package/dist/commands/collections.js.map +1 -1
  371. package/dist/commands/conflicts.d.ts +40 -0
  372. package/dist/commands/conflicts.d.ts.map +1 -0
  373. package/dist/commands/conflicts.js +267 -0
  374. package/dist/commands/conflicts.js.map +1 -0
  375. package/dist/commands/conflicts.test.d.ts +2 -0
  376. package/dist/commands/conflicts.test.d.ts.map +1 -0
  377. package/dist/commands/conflicts.test.js +219 -0
  378. package/dist/commands/conflicts.test.js.map +1 -0
  379. package/dist/commands/connect-config.test.d.ts +2 -0
  380. package/dist/commands/connect-config.test.d.ts.map +1 -0
  381. package/dist/commands/connect-config.test.js +44 -0
  382. package/dist/commands/connect-config.test.js.map +1 -0
  383. package/dist/commands/connect-context.d.ts +45 -0
  384. package/dist/commands/connect-context.d.ts.map +1 -0
  385. package/dist/commands/connect-context.js +83 -0
  386. package/dist/commands/connect-context.js.map +1 -0
  387. package/dist/commands/connect-context.test.d.ts +2 -0
  388. package/dist/commands/connect-context.test.d.ts.map +1 -0
  389. package/dist/commands/connect-context.test.js +158 -0
  390. package/dist/commands/connect-context.test.js.map +1 -0
  391. package/dist/commands/connect-handoff.d.ts +51 -0
  392. package/dist/commands/connect-handoff.d.ts.map +1 -0
  393. package/dist/commands/connect-handoff.js +70 -0
  394. package/dist/commands/connect-handoff.js.map +1 -0
  395. package/dist/commands/connect-integration.test.d.ts +7 -0
  396. package/dist/commands/connect-integration.test.d.ts.map +1 -0
  397. package/dist/commands/connect-integration.test.js +219 -0
  398. package/dist/commands/connect-integration.test.js.map +1 -0
  399. package/dist/commands/connect-screens.d.ts +33 -0
  400. package/dist/commands/connect-screens.d.ts.map +1 -0
  401. package/dist/commands/connect-screens.js +124 -0
  402. package/dist/commands/connect-screens.js.map +1 -0
  403. package/dist/commands/connect.d.ts +42 -0
  404. package/dist/commands/connect.d.ts.map +1 -0
  405. package/dist/commands/connect.js +361 -0
  406. package/dist/commands/connect.js.map +1 -0
  407. package/dist/commands/connect.test.d.ts +6 -0
  408. package/dist/commands/connect.test.d.ts.map +1 -0
  409. package/dist/commands/connect.test.js +428 -0
  410. package/dist/commands/connect.test.js.map +1 -0
  411. package/dist/commands/constellation.d.ts.map +1 -1
  412. package/dist/commands/constellation.js +2 -2
  413. package/dist/commands/constellation.js.map +1 -1
  414. package/dist/commands/context.d.ts.map +1 -1
  415. package/dist/commands/context.js +2 -2
  416. package/dist/commands/context.js.map +1 -1
  417. package/dist/commands/cross-cut.d.ts.map +1 -1
  418. package/dist/commands/cross-cut.js +2 -2
  419. package/dist/commands/cross-cut.js.map +1 -1
  420. package/dist/commands/direction.d.ts +10 -0
  421. package/dist/commands/direction.d.ts.map +1 -0
  422. package/dist/commands/direction.js +79 -0
  423. package/dist/commands/direction.js.map +1 -0
  424. package/dist/commands/doctor.d.ts.map +1 -1
  425. package/dist/commands/doctor.js +95 -19
  426. package/dist/commands/doctor.js.map +1 -1
  427. package/dist/commands/doctor.test.js +165 -2
  428. package/dist/commands/doctor.test.js.map +1 -1
  429. package/dist/commands/feedback.d.ts +36 -0
  430. package/dist/commands/feedback.d.ts.map +1 -0
  431. package/dist/commands/feedback.js +193 -0
  432. package/dist/commands/feedback.js.map +1 -0
  433. package/dist/commands/feedback.test.d.ts +2 -0
  434. package/dist/commands/feedback.test.d.ts.map +1 -0
  435. package/dist/commands/feedback.test.js +125 -0
  436. package/dist/commands/feedback.test.js.map +1 -0
  437. package/dist/commands/fields.d.ts.map +1 -1
  438. package/dist/commands/fields.js +2 -2
  439. package/dist/commands/fields.js.map +1 -1
  440. package/dist/commands/files.d.ts +26 -0
  441. package/dist/commands/files.d.ts.map +1 -0
  442. package/dist/commands/files.js +160 -0
  443. package/dist/commands/files.js.map +1 -0
  444. package/dist/commands/files.test.d.ts +2 -0
  445. package/dist/commands/files.test.d.ts.map +1 -0
  446. package/dist/commands/files.test.js +243 -0
  447. package/dist/commands/files.test.js.map +1 -0
  448. package/dist/commands/get.js +3 -3
  449. package/dist/commands/get.js.map +1 -1
  450. package/dist/commands/handshake.d.ts +225 -2
  451. package/dist/commands/handshake.d.ts.map +1 -1
  452. package/dist/commands/handshake.js +2119 -60
  453. package/dist/commands/handshake.js.map +1 -1
  454. package/dist/commands/ingest.d.ts.map +1 -1
  455. package/dist/commands/ingest.js +15 -6
  456. package/dist/commands/ingest.js.map +1 -1
  457. package/dist/commands/init.d.ts +1 -1
  458. package/dist/commands/init.d.ts.map +1 -1
  459. package/dist/commands/init.js +1 -9
  460. package/dist/commands/init.js.map +1 -1
  461. package/dist/commands/login.d.ts.map +1 -1
  462. package/dist/commands/login.js +44 -19
  463. package/dist/commands/login.js.map +1 -1
  464. package/dist/commands/method.d.ts +99 -0
  465. package/dist/commands/method.d.ts.map +1 -0
  466. package/dist/commands/method.js +804 -0
  467. package/dist/commands/method.js.map +1 -0
  468. package/dist/commands/migrate-setup.d.ts +18 -0
  469. package/dist/commands/migrate-setup.d.ts.map +1 -0
  470. package/dist/commands/migrate-setup.js +148 -0
  471. package/dist/commands/migrate-setup.js.map +1 -0
  472. package/dist/commands/organisation.d.ts +41 -0
  473. package/dist/commands/organisation.d.ts.map +1 -0
  474. package/dist/commands/organisation.js +353 -0
  475. package/dist/commands/organisation.js.map +1 -0
  476. package/dist/commands/organisation.test.d.ts +2 -0
  477. package/dist/commands/organisation.test.d.ts.map +1 -0
  478. package/dist/commands/organisation.test.js +233 -0
  479. package/dist/commands/organisation.test.js.map +1 -0
  480. package/dist/commands/organisationHierarchy.d.ts +8 -0
  481. package/dist/commands/organisationHierarchy.d.ts.map +1 -0
  482. package/dist/commands/organisationHierarchy.js +67 -0
  483. package/dist/commands/organisationHierarchy.js.map +1 -0
  484. package/dist/commands/organisationHierarchy.test.d.ts +2 -0
  485. package/dist/commands/organisationHierarchy.test.d.ts.map +1 -0
  486. package/dist/commands/organisationHierarchy.test.js +55 -0
  487. package/dist/commands/organisationHierarchy.test.js.map +1 -0
  488. package/dist/commands/organisationWrite.d.ts +18 -0
  489. package/dist/commands/organisationWrite.d.ts.map +1 -0
  490. package/dist/commands/organisationWrite.js +50 -0
  491. package/dist/commands/organisationWrite.js.map +1 -0
  492. package/dist/commands/orient.d.ts +125 -2
  493. package/dist/commands/orient.d.ts.map +1 -1
  494. package/dist/commands/orient.js +222 -7
  495. package/dist/commands/orient.js.map +1 -1
  496. package/dist/commands/profile.d.ts +11 -1
  497. package/dist/commands/profile.d.ts.map +1 -1
  498. package/dist/commands/profile.js +114 -26
  499. package/dist/commands/profile.js.map +1 -1
  500. package/dist/commands/promote.d.ts +12 -1
  501. package/dist/commands/promote.d.ts.map +1 -1
  502. package/dist/commands/promote.js +239 -57
  503. package/dist/commands/promote.js.map +1 -1
  504. package/dist/commands/proof-run.d.ts +51 -0
  505. package/dist/commands/proof-run.d.ts.map +1 -0
  506. package/dist/commands/proof-run.js +209 -0
  507. package/dist/commands/proof-run.js.map +1 -0
  508. package/dist/commands/proposals.d.ts.map +1 -1
  509. package/dist/commands/proposals.js +2 -2
  510. package/dist/commands/proposals.js.map +1 -1
  511. package/dist/commands/quality.d.ts +16 -0
  512. package/dist/commands/quality.d.ts.map +1 -0
  513. package/dist/commands/quality.js +29 -0
  514. package/dist/commands/quality.js.map +1 -0
  515. package/dist/commands/reject.d.ts.map +1 -1
  516. package/dist/commands/reject.js +4 -3
  517. package/dist/commands/reject.js.map +1 -1
  518. package/dist/commands/relate.d.ts.map +1 -1
  519. package/dist/commands/relate.js +26 -6
  520. package/dist/commands/relate.js.map +1 -1
  521. package/dist/commands/restore.d.ts +2 -0
  522. package/dist/commands/restore.d.ts.map +1 -0
  523. package/dist/commands/restore.js +83 -0
  524. package/dist/commands/restore.js.map +1 -0
  525. package/dist/commands/rework.d.ts +24 -0
  526. package/dist/commands/rework.d.ts.map +1 -0
  527. package/dist/commands/rework.js +97 -0
  528. package/dist/commands/rework.js.map +1 -0
  529. package/dist/commands/scoreboard.d.ts +28 -0
  530. package/dist/commands/scoreboard.d.ts.map +1 -0
  531. package/dist/commands/scoreboard.js +40 -0
  532. package/dist/commands/scoreboard.js.map +1 -0
  533. package/dist/commands/search.d.ts.map +1 -1
  534. package/dist/commands/search.js +2 -2
  535. package/dist/commands/search.js.map +1 -1
  536. package/dist/commands/session.d.ts +59 -7
  537. package/dist/commands/session.d.ts.map +1 -1
  538. package/dist/commands/session.js +482 -46
  539. package/dist/commands/session.js.map +1 -1
  540. package/dist/commands/setup-audit.d.ts +59 -0
  541. package/dist/commands/setup-audit.d.ts.map +1 -0
  542. package/dist/commands/setup-audit.js +250 -0
  543. package/dist/commands/setup-audit.js.map +1 -0
  544. package/dist/commands/setup-detect-surfaces.d.ts +38 -0
  545. package/dist/commands/setup-detect-surfaces.d.ts.map +1 -0
  546. package/dist/commands/setup-detect-surfaces.js +76 -0
  547. package/dist/commands/setup-detect-surfaces.js.map +1 -0
  548. package/dist/commands/setup-ingest.d.ts +17 -0
  549. package/dist/commands/setup-ingest.d.ts.map +1 -0
  550. package/dist/commands/setup-ingest.js +174 -0
  551. package/dist/commands/setup-ingest.js.map +1 -0
  552. package/dist/commands/setup-resolver.d.ts +58 -0
  553. package/dist/commands/setup-resolver.d.ts.map +1 -0
  554. package/dist/commands/setup-resolver.js +150 -0
  555. package/dist/commands/setup-resolver.js.map +1 -0
  556. package/dist/commands/setup-state.d.ts +42 -0
  557. package/dist/commands/setup-state.d.ts.map +1 -0
  558. package/dist/commands/setup-state.js +93 -0
  559. package/dist/commands/setup-state.js.map +1 -0
  560. package/dist/commands/setup.d.ts +17 -9
  561. package/dist/commands/setup.d.ts.map +1 -1
  562. package/dist/commands/setup.js +53 -125
  563. package/dist/commands/setup.js.map +1 -1
  564. package/dist/commands/shape.d.ts +16 -0
  565. package/dist/commands/shape.d.ts.map +1 -0
  566. package/dist/commands/shape.js +149 -0
  567. package/dist/commands/shape.js.map +1 -0
  568. package/dist/commands/shape.test.d.ts +2 -0
  569. package/dist/commands/shape.test.d.ts.map +1 -0
  570. package/dist/commands/shape.test.js +148 -0
  571. package/dist/commands/shape.test.js.map +1 -0
  572. package/dist/commands/update.d.ts +8 -0
  573. package/dist/commands/update.d.ts.map +1 -1
  574. package/dist/commands/update.js +55 -32
  575. package/dist/commands/update.js.map +1 -1
  576. package/dist/commands/upgrade.d.ts +5 -0
  577. package/dist/commands/upgrade.d.ts.map +1 -0
  578. package/dist/commands/upgrade.js +110 -0
  579. package/dist/commands/upgrade.js.map +1 -0
  580. package/dist/commands/usage.d.ts +40 -0
  581. package/dist/commands/usage.d.ts.map +1 -0
  582. package/dist/commands/usage.js +214 -0
  583. package/dist/commands/usage.js.map +1 -0
  584. package/dist/commands/verify.d.ts.map +1 -1
  585. package/dist/commands/verify.js +9 -3
  586. package/dist/commands/verify.js.map +1 -1
  587. package/dist/commands/welcome.d.ts +21 -0
  588. package/dist/commands/welcome.d.ts.map +1 -0
  589. package/dist/commands/welcome.js +50 -0
  590. package/dist/commands/welcome.js.map +1 -0
  591. package/dist/commands/whoami.d.ts +12 -0
  592. package/dist/commands/whoami.d.ts.map +1 -0
  593. package/dist/commands/whoami.js +70 -0
  594. package/dist/commands/whoami.js.map +1 -0
  595. package/dist/commands/whoami.test.d.ts +2 -0
  596. package/dist/commands/whoami.test.d.ts.map +1 -0
  597. package/dist/commands/whoami.test.js +50 -0
  598. package/dist/commands/whoami.test.js.map +1 -0
  599. package/dist/commands/workspace.d.ts +76 -2
  600. package/dist/commands/workspace.d.ts.map +1 -1
  601. package/dist/commands/workspace.js +30 -6
  602. package/dist/commands/workspace.js.map +1 -1
  603. package/dist/formatters/__tests__/orient-possibleConflict.test.d.ts +2 -0
  604. package/dist/formatters/__tests__/orient-possibleConflict.test.d.ts.map +1 -0
  605. package/dist/formatters/__tests__/orient-possibleConflict.test.js +68 -0
  606. package/dist/formatters/__tests__/orient-possibleConflict.test.js.map +1 -0
  607. package/dist/formatters/__tests__/orient-provenance.test.d.ts +7 -0
  608. package/dist/formatters/__tests__/orient-provenance.test.d.ts.map +1 -0
  609. package/dist/formatters/__tests__/orient-provenance.test.js +548 -0
  610. package/dist/formatters/__tests__/orient-provenance.test.js.map +1 -0
  611. package/dist/formatters/__tests__/session-list-show.test.d.ts +2 -0
  612. package/dist/formatters/__tests__/session-list-show.test.d.ts.map +1 -0
  613. package/dist/formatters/__tests__/session-list-show.test.js +159 -0
  614. package/dist/formatters/__tests__/session-list-show.test.js.map +1 -0
  615. package/dist/formatters/__tests__/session.test.d.ts +2 -0
  616. package/dist/formatters/__tests__/session.test.d.ts.map +1 -0
  617. package/dist/formatters/__tests__/session.test.js +136 -0
  618. package/dist/formatters/__tests__/session.test.js.map +1 -0
  619. package/dist/formatters/audit.d.ts +6 -0
  620. package/dist/formatters/audit.d.ts.map +1 -1
  621. package/dist/formatters/audit.js.map +1 -1
  622. package/dist/formatters/capture.d.ts +8 -0
  623. package/dist/formatters/capture.d.ts.map +1 -1
  624. package/dist/formatters/capture.js +9 -0
  625. package/dist/formatters/capture.js.map +1 -1
  626. package/dist/formatters/coaching.d.ts +51 -0
  627. package/dist/formatters/coaching.d.ts.map +1 -0
  628. package/dist/formatters/coaching.js +46 -0
  629. package/dist/formatters/coaching.js.map +1 -0
  630. package/dist/formatters/conflicts.d.ts +69 -0
  631. package/dist/formatters/conflicts.d.ts.map +1 -0
  632. package/dist/formatters/conflicts.js +87 -0
  633. package/dist/formatters/conflicts.js.map +1 -0
  634. package/dist/formatters/conflicts.test.d.ts +2 -0
  635. package/dist/formatters/conflicts.test.d.ts.map +1 -0
  636. package/dist/formatters/conflicts.test.js +136 -0
  637. package/dist/formatters/conflicts.test.js.map +1 -0
  638. package/dist/formatters/context.d.ts +1 -1
  639. package/dist/formatters/context.d.ts.map +1 -1
  640. package/dist/formatters/context.js.map +1 -1
  641. package/dist/formatters/direction.d.ts +48 -0
  642. package/dist/formatters/direction.d.ts.map +1 -0
  643. package/dist/formatters/direction.js +75 -0
  644. package/dist/formatters/direction.js.map +1 -0
  645. package/dist/formatters/direction.test.d.ts +2 -0
  646. package/dist/formatters/direction.test.d.ts.map +1 -0
  647. package/dist/formatters/direction.test.js +70 -0
  648. package/dist/formatters/direction.test.js.map +1 -0
  649. package/dist/formatters/entry.d.ts +44 -0
  650. package/dist/formatters/entry.d.ts.map +1 -1
  651. package/dist/formatters/entry.js +70 -7
  652. package/dist/formatters/entry.js.map +1 -1
  653. package/dist/formatters/feedback.d.ts +56 -0
  654. package/dist/formatters/feedback.d.ts.map +1 -0
  655. package/dist/formatters/feedback.js +89 -0
  656. package/dist/formatters/feedback.js.map +1 -0
  657. package/dist/formatters/feedback.test.d.ts +2 -0
  658. package/dist/formatters/feedback.test.d.ts.map +1 -0
  659. package/dist/formatters/feedback.test.js +112 -0
  660. package/dist/formatters/feedback.test.js.map +1 -0
  661. package/dist/formatters/handshake.d.ts +39 -0
  662. package/dist/formatters/handshake.d.ts.map +1 -1
  663. package/dist/formatters/handshake.js +133 -3
  664. package/dist/formatters/handshake.js.map +1 -1
  665. package/dist/formatters/orient.coherencyCheckTag.test.d.ts +2 -0
  666. package/dist/formatters/orient.coherencyCheckTag.test.d.ts.map +1 -0
  667. package/dist/formatters/orient.coherencyCheckTag.test.js +22 -0
  668. package/dist/formatters/orient.coherencyCheckTag.test.js.map +1 -0
  669. package/dist/formatters/orient.d.ts +247 -8
  670. package/dist/formatters/orient.d.ts.map +1 -1
  671. package/dist/formatters/orient.js +296 -29
  672. package/dist/formatters/orient.js.map +1 -1
  673. package/dist/formatters/orient.rcrtMiss.test.d.ts +2 -0
  674. package/dist/formatters/orient.rcrtMiss.test.d.ts.map +1 -0
  675. package/dist/formatters/orient.rcrtMiss.test.js +146 -0
  676. package/dist/formatters/orient.rcrtMiss.test.js.map +1 -0
  677. package/dist/formatters/orient.rituals.test.d.ts +2 -0
  678. package/dist/formatters/orient.rituals.test.d.ts.map +1 -0
  679. package/dist/formatters/orient.rituals.test.js +70 -0
  680. package/dist/formatters/orient.rituals.test.js.map +1 -0
  681. package/dist/formatters/orient.shapeAdvisorySummary.test.d.ts +2 -0
  682. package/dist/formatters/orient.shapeAdvisorySummary.test.d.ts.map +1 -0
  683. package/dist/formatters/orient.shapeAdvisorySummary.test.js +62 -0
  684. package/dist/formatters/orient.shapeAdvisorySummary.test.js.map +1 -0
  685. package/dist/formatters/orientRetrievalMiss.d.ts +30 -0
  686. package/dist/formatters/orientRetrievalMiss.d.ts.map +1 -0
  687. package/dist/formatters/orientRetrievalMiss.js +24 -0
  688. package/dist/formatters/orientRetrievalMiss.js.map +1 -0
  689. package/dist/formatters/promote.d.ts +49 -0
  690. package/dist/formatters/promote.d.ts.map +1 -1
  691. package/dist/formatters/promote.js +40 -0
  692. package/dist/formatters/promote.js.map +1 -1
  693. package/dist/formatters/scoreboard.d.ts +11 -0
  694. package/dist/formatters/scoreboard.d.ts.map +1 -0
  695. package/dist/formatters/scoreboard.js +164 -0
  696. package/dist/formatters/scoreboard.js.map +1 -0
  697. package/dist/formatters/scoreboard.test.d.ts +2 -0
  698. package/dist/formatters/scoreboard.test.d.ts.map +1 -0
  699. package/dist/formatters/scoreboard.test.js +303 -0
  700. package/dist/formatters/scoreboard.test.js.map +1 -0
  701. package/dist/formatters/session-feedback.test.d.ts +2 -0
  702. package/dist/formatters/session-feedback.test.d.ts.map +1 -0
  703. package/dist/formatters/session-feedback.test.js +61 -0
  704. package/dist/formatters/session-feedback.test.js.map +1 -0
  705. package/dist/formatters/session.d.ts +115 -5
  706. package/dist/formatters/session.d.ts.map +1 -1
  707. package/dist/formatters/session.js +293 -12
  708. package/dist/formatters/session.js.map +1 -1
  709. package/dist/formatters/shape.d.ts +54 -0
  710. package/dist/formatters/shape.d.ts.map +1 -0
  711. package/dist/formatters/shape.js +97 -0
  712. package/dist/formatters/shape.js.map +1 -0
  713. package/dist/formatters/shape.test.d.ts +2 -0
  714. package/dist/formatters/shape.test.d.ts.map +1 -0
  715. package/dist/formatters/shape.test.js +80 -0
  716. package/dist/formatters/shape.test.js.map +1 -0
  717. package/dist/formatters/spineCheck.d.ts +64 -0
  718. package/dist/formatters/spineCheck.d.ts.map +1 -0
  719. package/dist/formatters/spineCheck.js +92 -0
  720. package/dist/formatters/spineCheck.js.map +1 -0
  721. package/dist/formatters/update.d.ts +3 -0
  722. package/dist/formatters/update.d.ts.map +1 -1
  723. package/dist/formatters/update.js +4 -0
  724. package/dist/formatters/update.js.map +1 -1
  725. package/dist/formatters/verify.d.ts +12 -4
  726. package/dist/formatters/verify.d.ts.map +1 -1
  727. package/dist/formatters/verify.js +20 -2
  728. package/dist/formatters/verify.js.map +1 -1
  729. package/dist/generated/healthGapKinds.generated.d.ts +12 -0
  730. package/dist/generated/healthGapKinds.generated.d.ts.map +1 -0
  731. package/dist/generated/healthGapKinds.generated.js +24 -0
  732. package/dist/generated/healthGapKinds.generated.js.map +1 -0
  733. package/dist/generated/routeLatencyBudget.generated.d.ts +55 -0
  734. package/dist/generated/routeLatencyBudget.generated.d.ts.map +1 -0
  735. package/dist/generated/routeLatencyBudget.generated.js +348 -0
  736. package/dist/generated/routeLatencyBudget.generated.js.map +1 -0
  737. package/dist/generated/sourceSurfaces.generated.d.ts +12 -0
  738. package/dist/generated/sourceSurfaces.generated.d.ts.map +1 -0
  739. package/dist/generated/sourceSurfaces.generated.js +11 -0
  740. package/dist/generated/sourceSurfaces.generated.js.map +1 -0
  741. package/dist/generators/adapters.d.ts +33 -0
  742. package/dist/generators/adapters.d.ts.map +1 -1
  743. package/dist/generators/adapters.js +64 -4
  744. package/dist/generators/adapters.js.map +1 -1
  745. package/dist/generators/archetypes.d.ts.map +1 -1
  746. package/dist/generators/archetypes.js +46 -9
  747. package/dist/generators/archetypes.js.map +1 -1
  748. package/dist/generators/archetypes.test.js +35 -0
  749. package/dist/generators/archetypes.test.js.map +1 -1
  750. package/dist/generators/boundary-manifest.d.ts +29 -0
  751. package/dist/generators/boundary-manifest.d.ts.map +1 -0
  752. package/dist/generators/boundary-manifest.js +183 -0
  753. package/dist/generators/boundary-manifest.js.map +1 -0
  754. package/dist/generators/boundary-manifest.real-file.test.d.ts +2 -0
  755. package/dist/generators/boundary-manifest.real-file.test.d.ts.map +1 -0
  756. package/dist/generators/boundary-manifest.real-file.test.js +70 -0
  757. package/dist/generators/boundary-manifest.real-file.test.js.map +1 -0
  758. package/dist/generators/boundary-manifest.test.d.ts +2 -0
  759. package/dist/generators/boundary-manifest.test.d.ts.map +1 -0
  760. package/dist/generators/boundary-manifest.test.js +91 -0
  761. package/dist/generators/boundary-manifest.test.js.map +1 -0
  762. package/dist/generators/chain-classifier-kernel-client-drift.test.d.ts +2 -0
  763. package/dist/generators/chain-classifier-kernel-client-drift.test.d.ts.map +1 -0
  764. package/dist/generators/chain-classifier-kernel-client-drift.test.js +41 -0
  765. package/dist/generators/chain-classifier-kernel-client-drift.test.js.map +1 -0
  766. package/dist/generators/chain-classifier.d.ts +67 -14
  767. package/dist/generators/chain-classifier.d.ts.map +1 -1
  768. package/dist/generators/chain-classifier.js +46 -174
  769. package/dist/generators/chain-classifier.js.map +1 -1
  770. package/dist/generators/chain-rules.d.ts +3 -3
  771. package/dist/generators/chain-rules.d.ts.map +1 -1
  772. package/dist/generators/chain-rules.js +118 -6
  773. package/dist/generators/chain-rules.js.map +1 -1
  774. package/dist/generators/chain-rules.test.js +273 -4
  775. package/dist/generators/chain-rules.test.js.map +1 -1
  776. package/dist/generators/context-md.d.ts +1 -1
  777. package/dist/generators/context-md.d.ts.map +1 -1
  778. package/dist/generators/context-md.js +18 -7
  779. package/dist/generators/context-md.js.map +1 -1
  780. package/dist/generators/manifest.d.ts +115 -0
  781. package/dist/generators/manifest.d.ts.map +1 -0
  782. package/dist/generators/manifest.js +277 -0
  783. package/dist/generators/manifest.js.map +1 -0
  784. package/dist/generators/portable-knowledge.d.ts +24 -2
  785. package/dist/generators/portable-knowledge.d.ts.map +1 -1
  786. package/dist/generators/portable-knowledge.js +97 -2
  787. package/dist/generators/portable-knowledge.js.map +1 -1
  788. package/dist/generators/portable-knowledge.test.js +43 -0
  789. package/dist/generators/portable-knowledge.test.js.map +1 -1
  790. package/dist/generators/region-projections.d.ts +18 -0
  791. package/dist/generators/region-projections.d.ts.map +1 -0
  792. package/dist/generators/region-projections.js +49 -0
  793. package/dist/generators/region-projections.js.map +1 -0
  794. package/dist/generators/region-projections.test.d.ts +2 -0
  795. package/dist/generators/region-projections.test.d.ts.map +1 -0
  796. package/dist/generators/region-projections.test.js +63 -0
  797. package/dist/generators/region-projections.test.js.map +1 -0
  798. package/dist/generators/region.d.ts +24 -0
  799. package/dist/generators/region.d.ts.map +1 -0
  800. package/dist/generators/region.js +87 -0
  801. package/dist/generators/region.js.map +1 -0
  802. package/dist/generators/region.test.d.ts +2 -0
  803. package/dist/generators/region.test.d.ts.map +1 -0
  804. package/dist/generators/region.test.js +126 -0
  805. package/dist/generators/region.test.js.map +1 -0
  806. package/dist/generators/surface-profiles.d.ts +1 -2
  807. package/dist/generators/surface-profiles.d.ts.map +1 -1
  808. package/dist/generators/surface-profiles.js.map +1 -1
  809. package/dist/index.d.ts +2 -3
  810. package/dist/index.d.ts.map +1 -1
  811. package/dist/index.js +513 -102
  812. package/dist/index.js.map +1 -1
  813. package/dist/lib/__tests__/parseFields.test.d.ts +2 -0
  814. package/dist/lib/__tests__/parseFields.test.d.ts.map +1 -0
  815. package/dist/lib/__tests__/parseFields.test.js +40 -0
  816. package/dist/lib/__tests__/parseFields.test.js.map +1 -0
  817. package/dist/lib/activation.d.ts.map +1 -1
  818. package/dist/lib/activation.js +8 -4
  819. package/dist/lib/activation.js.map +1 -1
  820. package/dist/lib/activation.test.js +6 -6
  821. package/dist/lib/activation.test.js.map +1 -1
  822. package/dist/lib/canonicalRefs.d.ts +141 -0
  823. package/dist/lib/canonicalRefs.d.ts.map +1 -0
  824. package/dist/lib/canonicalRefs.js +150 -0
  825. package/dist/lib/canonicalRefs.js.map +1 -0
  826. package/dist/lib/client.d.ts +46 -14
  827. package/dist/lib/client.d.ts.map +1 -1
  828. package/dist/lib/client.js +218 -43
  829. package/dist/lib/client.js.map +1 -1
  830. package/dist/lib/collectionRegistry.d.ts +52 -0
  831. package/dist/lib/collectionRegistry.d.ts.map +1 -0
  832. package/dist/lib/collectionRegistry.js +118 -0
  833. package/dist/lib/collectionRegistry.js.map +1 -0
  834. package/dist/lib/commanderOptions.d.ts +8 -0
  835. package/dist/lib/commanderOptions.d.ts.map +1 -0
  836. package/dist/lib/commanderOptions.js +10 -0
  837. package/dist/lib/commanderOptions.js.map +1 -0
  838. package/dist/lib/compose-wrapup-view.d.ts +48 -0
  839. package/dist/lib/compose-wrapup-view.d.ts.map +1 -0
  840. package/dist/lib/compose-wrapup-view.js +37 -0
  841. package/dist/lib/compose-wrapup-view.js.map +1 -0
  842. package/dist/lib/config.d.ts +149 -8
  843. package/dist/lib/config.d.ts.map +1 -1
  844. package/dist/lib/config.js +394 -38
  845. package/dist/lib/config.js.map +1 -1
  846. package/dist/lib/connectKeyLabel.d.ts +9 -0
  847. package/dist/lib/connectKeyLabel.d.ts.map +1 -0
  848. package/dist/lib/connectKeyLabel.js +12 -0
  849. package/dist/lib/connectKeyLabel.js.map +1 -0
  850. package/dist/lib/constants.d.ts +27 -2
  851. package/dist/lib/constants.d.ts.map +1 -1
  852. package/dist/lib/constants.js +47 -3
  853. package/dist/lib/constants.js.map +1 -1
  854. package/dist/lib/conversation-engine.d.ts +22 -27
  855. package/dist/lib/conversation-engine.d.ts.map +1 -1
  856. package/dist/lib/conversation-engine.js +58 -80
  857. package/dist/lib/conversation-engine.js.map +1 -1
  858. package/dist/lib/conversation-phases.d.ts +22 -37
  859. package/dist/lib/conversation-phases.d.ts.map +1 -1
  860. package/dist/lib/conversation-phases.js +4 -4
  861. package/dist/lib/conversation-signals.d.ts +3 -0
  862. package/dist/lib/conversation-signals.d.ts.map +1 -1
  863. package/dist/lib/conversation-signals.js +14 -3
  864. package/dist/lib/conversation-signals.js.map +1 -1
  865. package/dist/lib/conversation.d.ts +36 -0
  866. package/dist/lib/conversation.d.ts.map +1 -0
  867. package/dist/lib/conversation.js +66 -0
  868. package/dist/lib/conversation.js.map +1 -0
  869. package/dist/lib/createEntryResult.d.ts +34 -0
  870. package/dist/lib/createEntryResult.d.ts.map +1 -0
  871. package/dist/lib/createEntryResult.js +12 -0
  872. package/dist/lib/createEntryResult.js.map +1 -0
  873. package/dist/lib/deployment.d.ts +23 -0
  874. package/dist/lib/deployment.d.ts.map +1 -0
  875. package/dist/lib/deployment.js +78 -0
  876. package/dist/lib/deployment.js.map +1 -0
  877. package/dist/lib/deployment.test.d.ts +5 -0
  878. package/dist/lib/deployment.test.d.ts.map +1 -0
  879. package/dist/lib/deployment.test.js +54 -0
  880. package/dist/lib/deployment.test.js.map +1 -0
  881. package/dist/lib/errors.d.ts +60 -0
  882. package/dist/lib/errors.d.ts.map +1 -1
  883. package/dist/lib/errors.js +60 -0
  884. package/dist/lib/errors.js.map +1 -1
  885. package/dist/lib/experiment.d.ts +18 -0
  886. package/dist/lib/experiment.d.ts.map +1 -0
  887. package/dist/lib/experiment.js +28 -0
  888. package/dist/lib/experiment.js.map +1 -0
  889. package/dist/lib/frontmatter.d.ts +55 -0
  890. package/dist/lib/frontmatter.d.ts.map +1 -0
  891. package/dist/lib/frontmatter.js +92 -0
  892. package/dist/lib/frontmatter.js.map +1 -0
  893. package/dist/lib/frontmatter.test.d.ts +15 -0
  894. package/dist/lib/frontmatter.test.d.ts.map +1 -0
  895. package/dist/lib/frontmatter.test.js +98 -0
  896. package/dist/lib/frontmatter.test.js.map +1 -0
  897. package/dist/lib/gatewayTimeout.d.ts +88 -0
  898. package/dist/lib/gatewayTimeout.d.ts.map +1 -0
  899. package/dist/lib/gatewayTimeout.js +118 -0
  900. package/dist/lib/gatewayTimeout.js.map +1 -0
  901. package/dist/lib/hook-intents.d.ts +51 -0
  902. package/dist/lib/hook-intents.d.ts.map +1 -0
  903. package/dist/lib/hook-intents.js +85 -0
  904. package/dist/lib/hook-intents.js.map +1 -0
  905. package/dist/lib/inferSourceDate.d.ts +12 -0
  906. package/dist/lib/inferSourceDate.d.ts.map +1 -0
  907. package/dist/lib/inferSourceDate.js +44 -0
  908. package/dist/lib/inferSourceDate.js.map +1 -0
  909. package/dist/lib/kernelEnvelope.d.ts +31 -0
  910. package/dist/lib/kernelEnvelope.d.ts.map +1 -0
  911. package/dist/lib/kernelEnvelope.js +52 -0
  912. package/dist/lib/kernelEnvelope.js.map +1 -0
  913. package/dist/lib/method-registry.d.ts +37 -0
  914. package/dist/lib/method-registry.d.ts.map +1 -0
  915. package/dist/lib/method-registry.js +41 -0
  916. package/dist/lib/method-registry.js.map +1 -0
  917. package/dist/lib/normalizeMaterializedFilename.d.ts +28 -0
  918. package/dist/lib/normalizeMaterializedFilename.d.ts.map +1 -0
  919. package/dist/lib/normalizeMaterializedFilename.js +56 -0
  920. package/dist/lib/normalizeMaterializedFilename.js.map +1 -0
  921. package/dist/lib/normalizeMaterializedFilename.test.d.ts +16 -0
  922. package/dist/lib/normalizeMaterializedFilename.test.d.ts.map +1 -0
  923. package/dist/lib/normalizeMaterializedFilename.test.js +90 -0
  924. package/dist/lib/normalizeMaterializedFilename.test.js.map +1 -0
  925. package/dist/lib/notice-marker.d.ts +3 -0
  926. package/dist/lib/notice-marker.d.ts.map +1 -0
  927. package/dist/lib/notice-marker.js +53 -0
  928. package/dist/lib/notice-marker.js.map +1 -0
  929. package/dist/lib/onboarding-path-b.d.ts +10 -0
  930. package/dist/lib/onboarding-path-b.d.ts.map +1 -0
  931. package/dist/lib/onboarding-path-b.js +243 -0
  932. package/dist/lib/onboarding-path-b.js.map +1 -0
  933. package/dist/lib/onboarding-shared.d.ts +81 -0
  934. package/dist/lib/onboarding-shared.d.ts.map +1 -0
  935. package/dist/lib/onboarding-shared.js +175 -0
  936. package/dist/lib/onboarding-shared.js.map +1 -0
  937. package/dist/lib/onboarding-topics.d.ts +27 -0
  938. package/dist/lib/onboarding-topics.d.ts.map +1 -0
  939. package/dist/lib/onboarding-topics.js +57 -0
  940. package/dist/lib/onboarding-topics.js.map +1 -0
  941. package/dist/lib/onboarding.d.ts +3 -3
  942. package/dist/lib/onboarding.d.ts.map +1 -1
  943. package/dist/lib/onboarding.js +120 -243
  944. package/dist/lib/onboarding.js.map +1 -1
  945. package/dist/lib/parseFields.d.ts +19 -0
  946. package/dist/lib/parseFields.d.ts.map +1 -0
  947. package/dist/lib/parseFields.js +49 -0
  948. package/dist/lib/parseFields.js.map +1 -0
  949. package/dist/lib/previewBanner.d.ts +9 -0
  950. package/dist/lib/previewBanner.d.ts.map +1 -0
  951. package/dist/lib/previewBanner.js +37 -0
  952. package/dist/lib/previewBanner.js.map +1 -0
  953. package/dist/lib/productbrain-files.d.ts +94 -0
  954. package/dist/lib/productbrain-files.d.ts.map +1 -0
  955. package/dist/lib/productbrain-files.js +214 -0
  956. package/dist/lib/productbrain-files.js.map +1 -0
  957. package/dist/lib/productbrain-files.test.d.ts +2 -0
  958. package/dist/lib/productbrain-files.test.d.ts.map +1 -0
  959. package/dist/lib/productbrain-files.test.js +258 -0
  960. package/dist/lib/productbrain-files.test.js.map +1 -0
  961. package/dist/lib/profiles.d.ts +8 -1
  962. package/dist/lib/profiles.d.ts.map +1 -1
  963. package/dist/lib/profiles.js +22 -7
  964. package/dist/lib/profiles.js.map +1 -1
  965. package/dist/lib/prompts.d.ts +27 -0
  966. package/dist/lib/prompts.d.ts.map +1 -1
  967. package/dist/lib/prompts.js +42 -0
  968. package/dist/lib/prompts.js.map +1 -1
  969. package/dist/lib/rate-limit.d.ts +37 -0
  970. package/dist/lib/rate-limit.d.ts.map +1 -0
  971. package/dist/lib/rate-limit.js +83 -0
  972. package/dist/lib/rate-limit.js.map +1 -0
  973. package/dist/lib/runner.d.ts +8 -0
  974. package/dist/lib/runner.d.ts.map +1 -1
  975. package/dist/lib/runner.js +23 -0
  976. package/dist/lib/runner.js.map +1 -1
  977. package/dist/lib/session.d.ts +85 -4
  978. package/dist/lib/session.d.ts.map +1 -1
  979. package/dist/lib/session.js +276 -13
  980. package/dist/lib/session.js.map +1 -1
  981. package/dist/lib/sessionNotices.d.ts +26 -0
  982. package/dist/lib/sessionNotices.d.ts.map +1 -0
  983. package/dist/lib/sessionNotices.js +31 -0
  984. package/dist/lib/sessionNotices.js.map +1 -0
  985. package/dist/lib/sessionNotices.test.d.ts +2 -0
  986. package/dist/lib/sessionNotices.test.d.ts.map +1 -0
  987. package/dist/lib/sessionNotices.test.js +48 -0
  988. package/dist/lib/sessionNotices.test.js.map +1 -0
  989. package/dist/lib/spinner.js +2 -2
  990. package/dist/lib/spinner.js.map +1 -1
  991. package/dist/lib/startup-resolution-signals.d.ts +34 -0
  992. package/dist/lib/startup-resolution-signals.d.ts.map +1 -0
  993. package/dist/lib/startup-resolution-signals.js +116 -0
  994. package/dist/lib/startup-resolution-signals.js.map +1 -0
  995. package/dist/lib/startup-resolution-signals.test.d.ts +2 -0
  996. package/dist/lib/startup-resolution-signals.test.d.ts.map +1 -0
  997. package/dist/lib/startup-resolution-signals.test.js +113 -0
  998. package/dist/lib/startup-resolution-signals.test.js.map +1 -0
  999. package/dist/lib/startup-signals.d.ts +12 -0
  1000. package/dist/lib/startup-signals.d.ts.map +1 -0
  1001. package/dist/lib/startup-signals.js +172 -0
  1002. package/dist/lib/startup-signals.js.map +1 -0
  1003. package/dist/lib/startup-signals.test.d.ts +2 -0
  1004. package/dist/lib/startup-signals.test.d.ts.map +1 -0
  1005. package/dist/lib/startup-signals.test.js +165 -0
  1006. package/dist/lib/startup-signals.test.js.map +1 -0
  1007. package/dist/lib/state.d.ts +51 -0
  1008. package/dist/lib/state.d.ts.map +1 -0
  1009. package/dist/lib/state.js +90 -0
  1010. package/dist/lib/state.js.map +1 -0
  1011. package/dist/lib/strip.d.ts.map +1 -1
  1012. package/dist/lib/strip.js +7 -1
  1013. package/dist/lib/strip.js.map +1 -1
  1014. package/dist/lib/style.d.ts +31 -0
  1015. package/dist/lib/style.d.ts.map +1 -1
  1016. package/dist/lib/style.js +61 -0
  1017. package/dist/lib/style.js.map +1 -1
  1018. package/dist/lib/style.test.js +69 -1
  1019. package/dist/lib/style.test.js.map +1 -1
  1020. package/dist/lib/telemetry.d.ts +5 -5
  1021. package/dist/lib/telemetry.d.ts.map +1 -1
  1022. package/dist/lib/telemetry.js +34 -16
  1023. package/dist/lib/telemetry.js.map +1 -1
  1024. package/dist/lib/tokenConstants.d.ts +19 -0
  1025. package/dist/lib/tokenConstants.d.ts.map +1 -0
  1026. package/dist/lib/tokenConstants.js +19 -0
  1027. package/dist/lib/tokenConstants.js.map +1 -0
  1028. package/dist/lib/update-check.d.ts +56 -0
  1029. package/dist/lib/update-check.d.ts.map +1 -0
  1030. package/dist/lib/update-check.js +296 -0
  1031. package/dist/lib/update-check.js.map +1 -0
  1032. package/dist/lib/upgrade-runner.d.ts +22 -0
  1033. package/dist/lib/upgrade-runner.d.ts.map +1 -0
  1034. package/dist/lib/upgrade-runner.js +110 -0
  1035. package/dist/lib/upgrade-runner.js.map +1 -0
  1036. package/dist/lib/wizard-surfaces.d.ts +47 -0
  1037. package/dist/lib/wizard-surfaces.d.ts.map +1 -0
  1038. package/dist/lib/wizard-surfaces.js +176 -0
  1039. package/dist/lib/wizard-surfaces.js.map +1 -0
  1040. package/dist/lib/wizard-surfaces.test.d.ts +2 -0
  1041. package/dist/lib/wizard-surfaces.test.d.ts.map +1 -0
  1042. package/dist/lib/wizard-surfaces.test.js +127 -0
  1043. package/dist/lib/wizard-surfaces.test.js.map +1 -0
  1044. package/dist/lib/wizard-trust.d.ts +31 -0
  1045. package/dist/lib/wizard-trust.d.ts.map +1 -0
  1046. package/dist/lib/wizard-trust.js +66 -0
  1047. package/dist/lib/wizard-trust.js.map +1 -0
  1048. package/dist/lib/wizard-trust.test.d.ts +2 -0
  1049. package/dist/lib/wizard-trust.test.d.ts.map +1 -0
  1050. package/dist/lib/wizard-trust.test.js +32 -0
  1051. package/dist/lib/wizard-trust.test.js.map +1 -0
  1052. package/dist/lib/workspace-probe.d.ts +3 -0
  1053. package/dist/lib/workspace-probe.d.ts.map +1 -1
  1054. package/dist/lib/workspace-probe.js +8 -14
  1055. package/dist/lib/workspace-probe.js.map +1 -1
  1056. package/dist/lib/workspaceNotice.d.ts +59 -0
  1057. package/dist/lib/workspaceNotice.d.ts.map +1 -0
  1058. package/dist/lib/workspaceNotice.js +77 -0
  1059. package/dist/lib/workspaceNotice.js.map +1 -0
  1060. package/dist/lib/workspaceVocabCache.d.ts +60 -0
  1061. package/dist/lib/workspaceVocabCache.d.ts.map +1 -0
  1062. package/dist/lib/workspaceVocabCache.js +98 -0
  1063. package/dist/lib/workspaceVocabCache.js.map +1 -0
  1064. package/dist/scoreboard/diagnose.d.ts +226 -0
  1065. package/dist/scoreboard/diagnose.d.ts.map +1 -0
  1066. package/dist/scoreboard/diagnose.js +344 -0
  1067. package/dist/scoreboard/diagnose.js.map +1 -0
  1068. package/dist/scoreboard/diagnose.test.d.ts +15 -0
  1069. package/dist/scoreboard/diagnose.test.d.ts.map +1 -0
  1070. package/dist/scoreboard/diagnose.test.js +355 -0
  1071. package/dist/scoreboard/diagnose.test.js.map +1 -0
  1072. package/dist/scoreboard/floors.d.ts +47 -0
  1073. package/dist/scoreboard/floors.d.ts.map +1 -0
  1074. package/dist/scoreboard/floors.js +33 -0
  1075. package/dist/scoreboard/floors.js.map +1 -0
  1076. package/dist/scoreboard/localDrift.d.ts +23 -0
  1077. package/dist/scoreboard/localDrift.d.ts.map +1 -0
  1078. package/dist/scoreboard/localDrift.js +111 -0
  1079. package/dist/scoreboard/localDrift.js.map +1 -0
  1080. package/dist/scoreboard/localDrift.test.d.ts +9 -0
  1081. package/dist/scoreboard/localDrift.test.d.ts.map +1 -0
  1082. package/dist/scoreboard/localDrift.test.js +82 -0
  1083. package/dist/scoreboard/localDrift.test.js.map +1 -0
  1084. package/dist/setup/__tests__/coach-traces.test.d.ts +2 -0
  1085. package/dist/setup/__tests__/coach-traces.test.d.ts.map +1 -0
  1086. package/dist/setup/__tests__/coach-traces.test.js +189 -0
  1087. package/dist/setup/__tests__/coach-traces.test.js.map +1 -0
  1088. package/dist/setup/__tests__/setup-commands.test.d.ts +2 -0
  1089. package/dist/setup/__tests__/setup-commands.test.d.ts.map +1 -0
  1090. package/dist/setup/__tests__/setup-commands.test.js +177 -0
  1091. package/dist/setup/__tests__/setup-commands.test.js.map +1 -0
  1092. package/dist/setup/__tests__/state-machine.test.d.ts +2 -0
  1093. package/dist/setup/__tests__/state-machine.test.d.ts.map +1 -0
  1094. package/dist/setup/__tests__/state-machine.test.js +341 -0
  1095. package/dist/setup/__tests__/state-machine.test.js.map +1 -0
  1096. package/dist/setup/detect-surfaces.d.ts +21 -0
  1097. package/dist/setup/detect-surfaces.d.ts.map +1 -0
  1098. package/dist/setup/detect-surfaces.js +39 -0
  1099. package/dist/setup/detect-surfaces.js.map +1 -0
  1100. package/dist/setup/manifest-writer.d.ts +17 -0
  1101. package/dist/setup/manifest-writer.d.ts.map +1 -0
  1102. package/dist/setup/manifest-writer.js +153 -0
  1103. package/dist/setup/manifest-writer.js.map +1 -0
  1104. package/dist/setup/perimeter.d.ts +72 -0
  1105. package/dist/setup/perimeter.d.ts.map +1 -0
  1106. package/dist/setup/perimeter.js +128 -0
  1107. package/dist/setup/perimeter.js.map +1 -0
  1108. package/dist/setup/state-machine.d.ts +67 -0
  1109. package/dist/setup/state-machine.d.ts.map +1 -0
  1110. package/dist/setup/state-machine.js +124 -0
  1111. package/dist/setup/state-machine.js.map +1 -0
  1112. package/dist/surfaces/__tests__/adapter.test.d.ts +2 -0
  1113. package/dist/surfaces/__tests__/adapter.test.d.ts.map +1 -0
  1114. package/dist/surfaces/__tests__/adapter.test.js +90 -0
  1115. package/dist/surfaces/__tests__/adapter.test.js.map +1 -0
  1116. package/dist/surfaces/__tests__/pb-setup-passthrough.test.d.ts +2 -0
  1117. package/dist/surfaces/__tests__/pb-setup-passthrough.test.d.ts.map +1 -0
  1118. package/dist/surfaces/__tests__/pb-setup-passthrough.test.js +132 -0
  1119. package/dist/surfaces/__tests__/pb-setup-passthrough.test.js.map +1 -0
  1120. package/dist/surfaces/__tests__/telemetry.test.d.ts +2 -0
  1121. package/dist/surfaces/__tests__/telemetry.test.d.ts.map +1 -0
  1122. package/dist/surfaces/__tests__/telemetry.test.js +55 -0
  1123. package/dist/surfaces/__tests__/telemetry.test.js.map +1 -0
  1124. package/dist/surfaces/adapter.d.ts +70 -0
  1125. package/dist/surfaces/adapter.d.ts.map +1 -0
  1126. package/dist/surfaces/adapter.js +2 -0
  1127. package/dist/surfaces/adapter.js.map +1 -0
  1128. package/dist/surfaces/adapters/claude.d.ts +3 -0
  1129. package/dist/surfaces/adapters/claude.d.ts.map +1 -0
  1130. package/dist/surfaces/adapters/claude.js +67 -0
  1131. package/dist/surfaces/adapters/claude.js.map +1 -0
  1132. package/dist/surfaces/adapters/codex.d.ts +3 -0
  1133. package/dist/surfaces/adapters/codex.d.ts.map +1 -0
  1134. package/dist/surfaces/adapters/codex.js +61 -0
  1135. package/dist/surfaces/adapters/codex.js.map +1 -0
  1136. package/dist/surfaces/adapters/copilot.d.ts +3 -0
  1137. package/dist/surfaces/adapters/copilot.d.ts.map +1 -0
  1138. package/dist/surfaces/adapters/copilot.js +59 -0
  1139. package/dist/surfaces/adapters/copilot.js.map +1 -0
  1140. package/dist/surfaces/adapters/cursor.d.ts +3 -0
  1141. package/dist/surfaces/adapters/cursor.d.ts.map +1 -0
  1142. package/dist/surfaces/adapters/cursor.js +78 -0
  1143. package/dist/surfaces/adapters/cursor.js.map +1 -0
  1144. package/dist/surfaces/registry.d.ts +76 -0
  1145. package/dist/surfaces/registry.d.ts.map +1 -0
  1146. package/dist/surfaces/registry.js +117 -0
  1147. package/dist/surfaces/registry.js.map +1 -0
  1148. package/dist/surfaces/telemetry.d.ts +17 -0
  1149. package/dist/surfaces/telemetry.d.ts.map +1 -0
  1150. package/dist/surfaces/telemetry.js +31 -0
  1151. package/dist/surfaces/telemetry.js.map +1 -0
  1152. package/package.json +11 -3
  1153. package/templates/method-registry.json +16 -0
  1154. package/dist/__tests__/setup.test.d.ts +0 -2
  1155. package/dist/__tests__/setup.test.d.ts.map +0 -1
  1156. package/dist/__tests__/setup.test.js +0 -132
  1157. package/dist/__tests__/setup.test.js.map +0 -1
  1158. package/dist/generators/__tests__/surface-profiles.test.d.ts +0 -2
  1159. package/dist/generators/__tests__/surface-profiles.test.d.ts.map +0 -1
  1160. package/dist/generators/__tests__/surface-profiles.test.js +0 -89
  1161. package/dist/generators/__tests__/surface-profiles.test.js.map +0 -1
  1162. package/dist/generators/chain-classifier.test.d.ts +0 -2
  1163. package/dist/generators/chain-classifier.test.d.ts.map +0 -1
  1164. package/dist/generators/chain-classifier.test.js +0 -257
  1165. package/dist/generators/chain-classifier.test.js.map +0 -1
  1166. package/dist/lib/onboarding-phases.d.ts +0 -9
  1167. package/dist/lib/onboarding-phases.d.ts.map +0 -1
  1168. package/dist/lib/onboarding-phases.js +0 -120
  1169. package/dist/lib/onboarding-phases.js.map +0 -1
package/dist/index.js CHANGED
@@ -1,8 +1,7 @@
1
1
  #!/usr/bin/env node
2
2
  /**
3
- * Product Brain CLI — Chain knowledge + write-back in the terminal.
4
- * Read: BET-108. Write: pb session + pb capture (TEN-27, INS-80).
5
- * BET-181 Slice 0: global --json / --pretty flags for agent-native output (DEC-299).
3
+ * Product Brain CLI — Chain knowledge + write-back in the terminal. Read: BET-108.
4
+ * Write: pb session + pb capture (TEN-27, INS-80). BET-181 Slice 0: global --json / --pretty flags for agent-native output (DEC-299).
6
5
  */
7
6
  import { readFileSync } from 'node:fs';
8
7
  import { dirname, join } from 'node:path';
@@ -12,16 +11,24 @@ const __dirname = dirname(fileURLToPath(import.meta.url));
12
11
  const cliPackageVersion = JSON.parse(readFileSync(join(__dirname, '..', 'package.json'), 'utf8'));
13
12
  import { setOutputMode, setQuietMode, isJsonMode } from './lib/runner.js';
14
13
  import { CLIError, ErrorCode } from './lib/errors.js';
14
+ import { collectRepeatableOption } from './lib/commanderOptions.js';
15
15
  import { runContext } from './commands/context.js';
16
16
  import { runGet, runGetMany } from './commands/get.js';
17
+ import { runScoreboard } from './commands/scoreboard.js';
18
+ import { runReworkReport } from './commands/rework.js';
19
+ import { runConnect } from './commands/connect.js';
17
20
  import { runLogin } from './commands/login.js';
18
21
  import { runSetup } from './commands/setup.js';
22
+ import { runSetupDetectSurfaces, formatDetectSurfacesSummary } from './commands/setup-detect-surfaces.js';
23
+ import { runSetupState } from './commands/setup-state.js';
24
+ import { runSetupAudit } from './commands/setup-audit.js';
19
25
  import { runOrient } from './commands/orient.js';
20
26
  import { runSearch } from './commands/search.js';
21
27
  import { runHandshake, runHandshakeInit } from './commands/handshake.js';
22
- import { runSessionStart, runSessionClose, runSessionId } from './commands/session.js';
28
+ import { runSessionStart, runSessionClose, runSessionId, runSessionReset, runSessionList, runSessionShow } from './commands/session.js';
23
29
  import { runCapture } from './commands/capture.js';
24
30
  import { runUpdate } from './commands/update.js';
31
+ import { runRestore } from './commands/restore.js';
25
32
  import { runRelate, runUnrelate } from './commands/relate.js';
26
33
  import { runIngest } from './commands/ingest.js';
27
34
  import { runFields } from './commands/fields.js';
@@ -40,20 +47,35 @@ import { runVerify } from './commands/verify.js';
40
47
  import { runCodexPrep } from './commands/codex-prep.js';
41
48
  import { runCollectionsList, runCollectionsGet, runCollectionsAudit, runCollectionsExport } from './commands/collections.js';
42
49
  import { runWorkspaceVerify, runWorkspaceRepair, runDefinitionsDiff } from './commands/workspace.js';
50
+ import { runAuthorityDomainsActivateCutover, runAuthorityDomainsAdd, runAuthorityDomainsDeactivateCutover, runAuthorityDomainsBenchmark, runAuthorityDomainsDiscardPending, runAuthorityDomainsPropose, runAuthorityDomainsQueueTag, runAuthorityDomainsRatify, runAuthorityDomainsReadiness, runAuthorityDomainsRecordSample, runAuthorityDomainsReject, runAuthorityDomainsReview, runAuthorityDomainsPrincipleDistribution, } from './commands/authority-domains.js';
43
51
  import { runDoctor } from './commands/doctor.js';
52
+ import { runWhoami } from './commands/whoami.js';
53
+ import { runFiles } from './commands/files.js';
54
+ import { runUpgrade } from './commands/upgrade.js';
44
55
  import { runProfileList, runProfileCreate, runProfileUse, runProfileDelete } from './commands/profile.js';
45
56
  import { runInit } from './commands/init.js';
57
+ import { runMethodList, runMethodShow, runMethodDiff, runMethodPublish } from './commands/method.js';
58
+ import { createAdminCommand } from './commands/admin/index.js';
59
+ import { createFeedbackCommand } from './commands/feedback.js';
60
+ import { createConflictsCommand } from './commands/conflicts.js';
61
+ import { createShapeCommand } from './commands/shape.js';
62
+ import { createDirectionCommand } from './commands/direction.js';
63
+ import { createOrganisationCommand } from './commands/organisation.js';
64
+ import { runUsage } from './commands/usage.js';
65
+ import { runProofRun } from './commands/proof-run.js';
66
+ import { runQualitySpineCheck } from './commands/quality.js';
46
67
  import { GLOSSARY, formatGlossary } from './lib/glossary.js';
68
+ import { API_KEY_PREFIX } from './lib/tokenConstants.js';
47
69
  import { hint, heading, bold, dim, green, icons } from './lib/style.js';
48
- import { readSession } from './lib/session.js';
49
- import { formatElapsed } from './lib/format.js';
50
- import { probeWorkspace } from './lib/workspace-probe.js';
70
+ import { printPreviewBanner } from './lib/previewBanner.js';
71
+ import { checkForUpdate } from './lib/update-check.js';
72
+ import { UPGRADE_COMMAND } from './lib/constants.js';
73
+ import { resolveSetupState, detectRenderTier } from './lib/state.js';
51
74
  const program = new Command();
52
75
  /**
53
- * Global error handler — single exit point for all CLI errors.
54
- * CLIError: format with code + category + guidance.
55
- * CommanderError: re-throw for --help / --version (exitCode 0), format others.
56
- * Regular Error: wrap as INTERNAL.
76
+ * Global error handler — single exit point for all CLI errors. CLIError: format with code +
77
+ * category + guidance. CommanderError: re-throw for --help / --version (exitCode 0), format
78
+ * others. Regular Error: wrap as INTERNAL.
57
79
  */
58
80
  function handleError(err) {
59
81
  // Commander help/version exits with code 0 — let them through
@@ -106,8 +128,8 @@ program
106
128
  .option('--pretty', 'Force human-readable output even when piped')
107
129
  .option('-q, --quiet', 'Suppress non-essential output (banners, hints, progress)')
108
130
  .exitOverride(); // Throw CommanderError instead of calling process.exit directly
109
- // Apply global output mode BEFORE subcommand actions run
110
- program.hook('preAction', (thisCommand) => {
131
+ // Apply global output mode BEFORE subcommand actions run. Commander preAction hook signature: (hookedCommand = root program, actionCommand = the subcommand actually invoked).
132
+ program.hook('preAction', (_hookedCommand, actionCommand) => {
111
133
  const globalOpts = program.opts();
112
134
  if (globalOpts.json) {
113
135
  setOutputMode('json');
@@ -119,24 +141,45 @@ program.hook('preAction', (thisCommand) => {
119
141
  if (globalOpts.quiet) {
120
142
  setQuietMode(true);
121
143
  }
122
- void thisCommand;
144
+ // Ambient update notification — non-blocking, suppressed in JSON mode (WP-322 S1)
145
+ checkForUpdate(cliPackageVersion.version);
146
+ // PREVIEW banner — writes to stderr so it's always visible even in --json/--quiet mode. Advisory line added for top-level Chain-write commands: real learnings belong in the real Chain.
147
+ printPreviewBanner(actionCommand);
123
148
  });
124
- // Default action — status dashboard when `pb` is invoked with no command.
125
- // `pb --help` still works because Commander intercepts --help before the action runs.
149
+ // Default action — status dashboard when `pb` is invoked with no command. `pb --help` still works because Commander intercepts --help before the action runs.
126
150
  program.action(async () => {
127
- // Check if we have a valid API key (sync, no network)
128
- let hasKey = false;
129
- let config = null;
130
- try {
131
- const { getConfig: gc } = await import('./lib/config.js');
132
- config = gc();
133
- hasKey = true;
134
- }
135
- catch {
136
- // No valid key
137
- }
138
- // JSON mode: structured status
139
- if (isJsonMode()) {
151
+ // Alias handling — forward common shorthands before showing the welcome screen
152
+ if (program.args.length > 0) {
153
+ const args = program.args;
154
+ // `pb start` / `pb start session` → `pb session start`
155
+ if (args[0] === 'start') {
156
+ await runSessionStart();
157
+ return;
158
+ }
159
+ // `pb close` / `pb close session` → `pb session close`
160
+ if (args[0] === 'close') {
161
+ await runSessionClose({});
162
+ return;
163
+ }
164
+ // Unknown command — show a helpful error instead of the welcome screen
165
+ const unknown = args[0];
166
+ process.stderr.write(`error: unknown command '${unknown}'\n`);
167
+ process.stderr.write(`Run 'pb --help' to see available commands.\n`);
168
+ process.exit(1);
169
+ }
170
+ const tier = detectRenderTier();
171
+ // JSON tier — structured status output
172
+ if (tier === 'json') {
173
+ // Check for API key first (sync, no network)
174
+ let hasKey = false;
175
+ try {
176
+ const { getConfig: gc } = await import('./lib/config.js');
177
+ gc();
178
+ hasKey = true;
179
+ }
180
+ catch {
181
+ // No valid key
182
+ }
140
183
  if (!hasKey) {
141
184
  process.stdout.write(JSON.stringify({
142
185
  configured: false,
@@ -144,6 +187,8 @@ program.action(async () => {
144
187
  }) + '\n');
145
188
  return;
146
189
  }
190
+ const { readSession } = await import('./lib/session.js');
191
+ const { probeWorkspace } = await import('./lib/workspace-probe.js');
147
192
  const session = readSession();
148
193
  const wsInfo = await probeWorkspace();
149
194
  process.stdout.write(JSON.stringify({
@@ -155,54 +200,64 @@ program.action(async () => {
155
200
  }) + '\n');
156
201
  return;
157
202
  }
158
- // Human mode — not configured
159
- if (!hasKey) {
160
- process.stdout.write('\n');
161
- process.stdout.write(`${bold('Product Brain')} ${dim('— not connected')}\n\n`);
162
- process.stdout.write(`${heading('Get started')}\n\n`);
163
- hint('1. pb login Save your API key');
164
- hint('2. pb setup Connect a workspace');
165
- hint('3. pb orient -b See what\'s happening');
166
- process.stdout.write('\n');
167
- hint('pb --help Show all commands');
168
- process.stdout.write('\n');
169
- return;
170
- }
171
- // Human mode — configured, try workspace probe
172
- const session = readSession();
173
- const wsInfo = await probeWorkspace();
174
- const workspaceName = wsInfo?.name ?? null;
175
- const entryCount = wsInfo?.entryCount ?? null;
176
- const offline = !wsInfo;
177
- process.stdout.write('\n');
178
- if (offline) {
179
- process.stdout.write(`${bold('Product Brain')} ${dim('— connected (offline)')}\n\n`);
180
- process.stdout.write(` ${green(icons.pass)} Key: configured\n`);
181
- process.stdout.write(` ${dim('Server: unreachable — check your connection')}\n\n`);
182
- hint('pb doctor Diagnose connection issues');
183
- hint('pb --help Show all commands');
203
+ // Ink tier: suppress withSpinner output before Ink mounts — spinner writes pollute the TUI canvas
204
+ if (tier === 'ink')
205
+ setQuietMode(true);
206
+ // Resolve state (plain and ink both need it)
207
+ const state = await resolveSetupState();
208
+ // Plain tier — console output driven by state
209
+ if (tier === 'plain') {
184
210
  process.stdout.write('\n');
211
+ if (state.stage === 'unconfigured') {
212
+ process.stdout.write(`${bold('Product Brain')} ${dim('— not connected')}\n\n`);
213
+ process.stdout.write(`${heading('Get started')}\n\n`);
214
+ hint('1. pb login Save your API key');
215
+ hint('2. pb connect Connect a workspace');
216
+ hint('3. pb orient -b See what\'s happening');
217
+ process.stdout.write('\n');
218
+ hint('pb --help Show all commands');
219
+ process.stdout.write('\n');
220
+ }
221
+ else if (state.stage === 'authenticated') {
222
+ process.stdout.write(`${bold('Product Brain')} ${dim('— server unreachable')}\n\n`);
223
+ process.stdout.write(` ${green(icons.pass)} Key: configured\n`);
224
+ process.stdout.write(` ! Server: unreachable — run pb doctor to diagnose\n\n`);
225
+ hint('pb session start Start a write session');
226
+ hint('pb doctor Diagnose connection issues');
227
+ hint('pb --help Show all commands');
228
+ process.stdout.write('\n');
229
+ }
230
+ else {
231
+ // workspace-bound or active
232
+ const workspaceName = state.workspaceName ?? 'unknown';
233
+ const entryCount = state.entryCount ?? 0;
234
+ const title = `${bold('Product Brain')} ${dim('—')} ${bold(workspaceName)}`;
235
+ process.stdout.write(`${title}\n\n`);
236
+ process.stdout.write(` ${green(icons.pass)} Key: configured\n`);
237
+ process.stdout.write(` ${green(icons.pass)} Workspace: ${workspaceName} (${entryCount} entries)\n`);
238
+ if (state.sessionActive) {
239
+ process.stdout.write(` ${green(icons.pass)} Session: active\n`);
240
+ }
241
+ else {
242
+ process.stdout.write(` ${dim('- Session: none')}\n`);
243
+ }
244
+ process.stdout.write('\n');
245
+ if (!state.sessionActive) {
246
+ hint('pb session start Start a write session');
247
+ }
248
+ hint('pb orient -b Workspace overview');
249
+ hint('pb --help Show all commands');
250
+ process.stdout.write('\n');
251
+ }
185
252
  return;
186
253
  }
187
- // Online with workspace
188
- const title = workspaceName
189
- ? `${bold('Product Brain')} ${dim('—')} ${bold(workspaceName)}`
190
- : `${bold('Product Brain')}`;
191
- process.stdout.write(`${title}\n\n`);
192
- if (session) {
193
- const elapsed = formatElapsed(session.startedAt);
194
- process.stdout.write(` Session: active (started ${elapsed})\n`);
195
- }
196
- if (entryCount !== null && entryCount > 0) {
197
- process.stdout.write(` Entries: ${entryCount}\n`);
198
- }
199
- process.stdout.write('\n');
200
- if (!session) {
201
- hint('pb session start Start a write session');
202
- }
203
- hint('pb orient -b Workspace overview');
204
- hint('pb --help Show all commands');
205
- process.stdout.write('\n');
254
+ // Ink tier — interactive TUI
255
+ const version = cliPackageVersion.version;
256
+ const { render } = await import('ink');
257
+ const { WelcomeCockpit } = await import('./commands/welcome.js');
258
+ const React = await import('react');
259
+ const { waitUntilExit, unmount } = render(React.default.createElement(WelcomeCockpit, { state, version, onExit: () => unmount() }));
260
+ await waitUntilExit();
206
261
  });
207
262
  program
208
263
  .command('get <entry-id>')
@@ -214,6 +269,42 @@ program
214
269
  }
215
270
  await runGet({ entryId: entryId.trim() });
216
271
  });
272
+ program
273
+ .command('scoreboard')
274
+ .description('Flywheel scoreboard — M1-M5 metrics + diagnosis layer (agent-primary; --json for structured consumption)')
275
+ .option('-t, --task <task>', 'Task context for the ranking-agreement (M2) + truth-state (M1) read')
276
+ .action(async (opts) => {
277
+ await runScoreboard({ ...(opts.task ? { task: opts.task } : {}) });
278
+ });
279
+ const qualityCmd = program
280
+ .command('quality')
281
+ .description('Quality-check surfaces');
282
+ qualityCmd
283
+ .command('spine-check')
284
+ .description('Check purpose+vision+strategy structural completeness + refusal heuristic; --story runs the on-demand one-story LLM judgment')
285
+ .option('--story', 'Also run the on-demand one-story judgment (never scheduled; result labelled [unvalidated])')
286
+ .action(async (opts) => { await runQualitySpineCheck({ story: opts.story }); });
287
+ const reworkCmd = program
288
+ .command('rework')
289
+ .description('Report observed rework signals (WP-487 / FEAT-1373 — fills the M4 rework meter)');
290
+ reworkCmd
291
+ .command('report <entry-id>')
292
+ .description('Report a rework event attributed to a previously served governance entry (agent-native checkpoint; requires an active session)')
293
+ .requiredOption('--classification <kind>', 'revision | ci_review_correction | user_override')
294
+ .option('--via <kind>', 'How this was observed: followup_commit | ci_rerun | manual', 'manual')
295
+ .option('--attributable', 'Flag: this ci_review_correction is attributed to a missing/violated served decision')
296
+ .option('--task <text>', 'Task context this rework relates to (truncated server-side, never raw diff/comment text)')
297
+ .option('--conversation <id>', 'Explicit conversation override, matching `pb session start --conversation <id>` — use when the shell has no PB_CONVERSATION_ID set')
298
+ .action(async (entryId, opts) => {
299
+ await runReworkReport({
300
+ entryId,
301
+ classification: opts.classification,
302
+ reportedVia: opts.via,
303
+ attributable: opts.attributable,
304
+ task: opts.task,
305
+ conversation: opts.conversation,
306
+ });
307
+ });
217
308
  program
218
309
  .command('get-many <entry-ids...>')
219
310
  .description('Fetch multiple entries in parallel (space-separated IDs)')
@@ -307,37 +398,48 @@ program
307
398
  .description('Print workspace stage and all orient sections (strategic context, bets, governance, tensions, etc.)')
308
399
  .option('-b, --brief', 'Compact view: stage, counts, top bets, tensions, planned work')
309
400
  .option('-t, --task <task>', 'Task description for task-shaped governance and context')
310
- // SYNC: domain list must match TaskDomain in convex/mcpKnowledge/startupResolver.ts
311
- .option('-s, --scope <domain>', 'Domain scope for governance filtering. Valid values: auth, governance, architecture, product, data-foundation, chainwork, capture-pipeline, ingestion, intelligence-and-operations, review-and-learning, general')
401
+ .option('-s, --scope <domain>', 'Domain scope for governance filtering. Forwarded to the workspace model for validation and custom domain resolution.')
402
+ .option('--full', 'Full depth orient (tier=full). Use for thorough context loading.')
312
403
  .action(async (opts) => {
313
- await runOrient({ brief: opts.brief, task: opts.task?.trim() || undefined, scope: opts.scope?.trim() || undefined });
404
+ await runOrient({ brief: opts.brief, task: opts.task?.trim() || undefined, scope: opts.scope?.trim() || undefined, full: opts.full });
314
405
  });
315
406
  program
316
407
  .command('handshake')
317
408
  .description('Generate context files for AI developer tools (AGENTS.md, .codex/skills/, CLAUDE.md, .cursor/rules/, .github/copilot-instructions.md)')
318
409
  .option('--force', 'Overwrite adapter files even if they exist without auto-generated marker')
319
- .option('--dry-run', 'Show what would be generated without writing files')
410
+ .option('--apply', 'Write files (default: preview only)')
411
+ .option('--dry-run', 'Show what would be generated without writing files (alias for preview)')
320
412
  .option('--init', 'Set up Claude Code integration: team hooks + personal trust level')
321
413
  .option('--level <level>', 'With --init: trust level (guide|work|silent|full-trust). Without --init: content tier (beginner|intermediate|expert)')
322
414
  .option('--generate', 'Fetch governance entries from the Chain and merge generated rules (BET-286)')
415
+ .option('--surfaces <list>', 'Comma-separated surfaces to write (cursor,claude,copilot,codex)')
416
+ .option('--no-prompt', 'Headless mode: refuse on tampered projection files (WP-421 S3, doneWhen #17). Always implied when stdout is not a TTY.')
417
+ .option('--lenient', 'WP-439 S4: continue past setup-asset body fetch failures with a warning (legacy behaviour). By default, body fetch failures are hard errors; run `pb setup-audit --repair` to fix orphaned rows.')
323
418
  .action(async (opts) => {
324
419
  if (opts.init) {
325
420
  await runHandshakeInit({ level: opts.level, dryRun: opts.dryRun });
326
421
  return;
327
422
  }
328
- await runHandshake({ force: opts.force, dryRun: opts.dryRun, level: opts.level, generate: opts.generate });
423
+ // Commander turns `--no-prompt` into `prompt: false`. We invert so HandshakeOptions sees noPrompt=true.
424
+ const noPrompt = opts.prompt === false;
425
+ // Attribute the bare-handshake invocation so its context.served row is separable from
426
+ // session-start ('session-start') / session-close ('session-close') / manual orient rows.
427
+ // Without this, the kernel used to coerce the absent path to 'manual-orient', polluting the
428
+ // proof slice that isolates manual `pb orient --task` rows (the 'handshake' union member was otherwise never emitted).
429
+ await runHandshake({ force: opts.force, apply: opts.apply, dryRun: opts.dryRun, level: opts.level, generate: opts.generate, surfaces: opts.surfaces?.split(','), noPrompt, lenient: opts.lenient, invocationPath: 'handshake' });
329
430
  });
330
431
  program
331
432
  .command('codex-prep <task...>')
332
433
  .description('Generate task-specific governance context for Codex (.codex/task-context.md)')
333
434
  .option('--dry-run', 'Print to stdout instead of writing file')
435
+ .option('--full', 'Full depth orient (tier=full). Use for thorough context loading.')
334
436
  .action(async (taskParts, opts) => {
335
437
  const task = taskParts.join(' ').trim();
336
438
  if (!task) {
337
439
  program.commands.find((c) => c.name() === 'codex-prep')?.help();
338
440
  return;
339
441
  }
340
- await runCodexPrep({ task, dryRun: opts.dryRun });
442
+ await runCodexPrep({ task, dryRun: opts.dryRun, full: opts.full });
341
443
  });
342
444
  program
343
445
  .command('init')
@@ -345,6 +447,19 @@ program
345
447
  .action(async () => {
346
448
  await runInit();
347
449
  });
450
+ program
451
+ .command('connect <token>')
452
+ .description('Redeem an onboarding token and save your API key locally (FEAT-958). Uses CONVEX_SITE_URL if set, otherwise the production gateway. Override with --gateway or PB_CONNECT_GATEWAY_URL. In a non-interactive shell (e.g. CI), pass --yes to confirm the workspace, optionally with --name to label the key.')
453
+ .option('--gateway <url>', 'Override redeem gateway (default: CONVEX_SITE_URL or production). Use when token came from a different Convex deployment.')
454
+ .option('--name <label>', 'Optional label for this API key in workspace settings. Skips the key-label prompt when set.')
455
+ .option('-y, --yes', 'Skip the interactive workspace confirmation. Required to connect in a non-interactive shell (e.g. CI).')
456
+ .action(async (token, opts) => {
457
+ if (!token?.trim()) {
458
+ program.commands.find((c) => c.name() === 'connect')?.help();
459
+ return;
460
+ }
461
+ await runConnect(token.trim(), { gateway: opts.gateway, name: opts.name, assumeYes: opts.yes });
462
+ });
348
463
  program
349
464
  .command('login')
350
465
  .description('Save your API key to ~/.config/productbrain/.env (works from any directory)')
@@ -359,12 +474,54 @@ program
359
474
  .action(async (opts) => {
360
475
  await runDoctor({ fix: opts.fix, dryRun: opts.dryRun });
361
476
  });
477
+ program
478
+ .command('whoami')
479
+ .alias('status')
480
+ .description('Show the active profile + workspace (fast; no session required).')
481
+ .action(async () => {
482
+ await runWhoami();
483
+ });
484
+ program
485
+ .command('files')
486
+ .description('Show which .productbrain files are pb-owned vs committed, and what writes each.')
487
+ .option('--fix', 'Add any exposed pb-owned files to .gitignore (idempotent)')
488
+ .option('--dry-run', 'With --fix: preview the .gitignore lines without writing')
489
+ .action(async (opts) => {
490
+ await runFiles({ fix: opts.fix, dryRun: opts.dryRun });
491
+ });
362
492
  program
363
493
  .command('setup')
364
- .description('Guided first-time setup: account, login, workspace, first capture')
494
+ .description('Canonical pb-setup entry (DEC-995): detect surfaces, read state, emit JSON for the skill body.')
365
495
  .action(async () => {
366
496
  await runSetup();
367
497
  });
498
+ program
499
+ .command('setup-detect-surfaces')
500
+ .description('Detect local surface markers and union-merge into manifest.surfaces (STD-235 forward-only)')
501
+ .action(async () => {
502
+ const result = await runSetupDetectSurfaces();
503
+ if (process.stdout.isTTY) {
504
+ process.stdout.write(formatDetectSurfacesSummary(result) + '\n');
505
+ }
506
+ else {
507
+ process.stderr.write(formatDetectSurfacesSummary(result) + '\n');
508
+ }
509
+ });
510
+ program
511
+ .command('setup-state')
512
+ .description('Emit compact JSON of getPbSetupState (machine-readable, used by the pb-setup skill body)')
513
+ .action(async () => {
514
+ await runSetupState();
515
+ });
516
+ // WP-439 S2: setup-asset orphan audit. Read-only diagnostic; exits 1 if any setup_asset row has a broken body wiring (will fail at handshake). WP-439 S3: --repair attempts to restore class III/II orphans from STARTER_* constants. Class I (inline-only) and IV (hash drift) are NOT touched.
517
+ program
518
+ .command('setup-audit')
519
+ .description('Audit setup_asset rows for orphaned bodies (WP-439 S2/S3). Exits 1 if any orphan or repair-failure.')
520
+ .option('--json', 'Emit machine-readable JSON (overrides pretty output for this command)')
521
+ .option('--repair', 'Attempt to restore class III/II orphans from STARTER_* constants (WP-439 S3)')
522
+ .action(async (opts) => {
523
+ await runSetupAudit({ json: opts.json, repair: opts.repair });
524
+ });
368
525
  // --- Write commands (require active session) ---
369
526
  const sessionCmd = program
370
527
  .command('session')
@@ -373,8 +530,9 @@ sessionCmd
373
530
  .command('start')
374
531
  .description('Start a tracked write session (opens session, refreshes context)')
375
532
  .option('--json', 'Output machine-readable JSON (deprecated: use global --json flag)')
533
+ .option('--conversation <id>', 'Explicit conversation identity override (WP-479 E2) — takes priority over env-detected channels. Pair with PB_CONVERSATION_ID=<id> so later bare pb commands (orient, capture) attribute to the same conversation — they resolve identity from env only')
376
534
  .action(async (opts) => {
377
- await runSessionStart({ json: opts.json });
535
+ await runSessionStart({ json: opts.json, conversation: opts.conversation });
378
536
  });
379
537
  sessionCmd
380
538
  .command('id')
@@ -389,17 +547,45 @@ sessionCmd
389
547
  .action(async (opts) => {
390
548
  await runSessionClose({ force: opts.force });
391
549
  });
550
+ // WP-479 E4: traceback + quota observability.
551
+ sessionCmd
552
+ .command('list')
553
+ .description('List active sessions (with quota gauge) + recent non-active ones (WP-479 E4)')
554
+ .action(async () => {
555
+ await runSessionList();
556
+ });
557
+ sessionCmd
558
+ .command('show <id-or-conversation>')
559
+ .description('Show a conversation\'s full session lineage + governance serves (WP-479 E4)')
560
+ .action(async (idOrConversation) => {
561
+ await runSessionShow(idOrConversation);
562
+ });
563
+ // TEN-2189 / WP-456 E2: hard-reset worktree-local session state (no resume marker) + clear the PREVIEW_MODE marker. Recovery path for a session stranded on the wrong workspace after a pb:preview/pb:real binding flip.
564
+ sessionCmd
565
+ .command('reset')
566
+ .description('Hard-reset local session state (discard session.json + clear PREVIEW_MODE)')
567
+ .option('--force', 'Skip the confirmation prompt when an active session is present')
568
+ .action(async (opts) => {
569
+ await runSessionReset({ force: opts.force });
570
+ });
392
571
  program
393
572
  .command('capture [text...]')
394
573
  .description('Capture knowledge to the Chain (requires active session)')
395
574
  .option('-n, --name <name>', 'Entry name (defaults to capture text)')
396
575
  .option('-d, --description <desc>', 'Entry description (defaults to capture text)')
397
576
  .option('-c, --collection <slug>', 'Explicit collection (skip auto-classification)')
577
+ .option('-f, --field <key=value>', 'Set a data field (repeatable; e.g. rationale="...")', (val, prev) => [...prev, val], [])
398
578
  .option('-l, --link <entry-id>', 'Link new entry to an existing entry (TEN-705)')
399
579
  .option('-t, --type <relation-type>', 'Relation type for --link (default: surfaces_tension_in)')
400
580
  .option('--source-ref <ref>', 'Source reference URI (BET-240 E2: e.g. "meeting-2026-03-28.md")')
401
581
  .option('--source-excerpt <text>', 'Verbatim source excerpt (BET-240 E2)')
582
+ // TEN-2226 / WP-456 E1: opt-in override — keeps the entry a draft even in Open governance mode.
583
+ .option('--draft', 'Force the entry to draft regardless of workspace governance mode (TEN-2226)')
402
584
  .option('--json', 'Output machine-readable JSON (deprecated: use global --json flag)')
585
+ .option('--suggest-only', 'Show grounding preview (possible duplicates, related entries) without creating entry (WP-319)')
586
+ .option('--strict', 'Prompt y/N before capturing when a possible duplicate is detected (WP-319)')
587
+ .option('--owner-team <entry-id>', 'Existing Team entry ID to create AS OWNER of (WP-513 rung 2; pair with --owner-role)')
588
+ .option('--owner-role <entry-id>', 'Existing Role entry ID to create AS OWNER of (WP-513 rung 2; pair with --owner-team)')
403
589
  .action(async (textParts = [], opts) => {
404
590
  const text = textParts.join(' ').trim();
405
591
  if (!text && !opts.name) {
@@ -407,15 +593,10 @@ program
407
593
  return;
408
594
  }
409
595
  await runCapture({
410
- text: text || opts.name || '',
411
- name: opts.name,
412
- description: opts.description,
413
- collection: opts.collection,
414
- link: opts.link,
415
- type: opts.type,
416
- sourceRef: opts.sourceRef,
417
- sourceExcerpt: opts.sourceExcerpt,
418
- json: opts.json,
596
+ text: text || opts.name || '', name: opts.name, description: opts.description, collection: opts.collection,
597
+ field: opts.field, link: opts.link, type: opts.type, sourceRef: opts.sourceRef, sourceExcerpt: opts.sourceExcerpt,
598
+ draft: opts.draft, json: opts.json, suggestOnly: opts.suggestOnly, strict: opts.strict,
599
+ ownerTeam: opts.ownerTeam, ownerRole: opts.ownerRole,
419
600
  });
420
601
  });
421
602
  // --- Update command (TEN-703) ---
@@ -427,6 +608,10 @@ program
427
608
  .option('--status <status>', 'Update entry status (draft | active | deprecated | archived)')
428
609
  .option('--workflow-status <status>', 'Set workflow status (server-validated)')
429
610
  .option('--note <text>', 'Change note for history')
611
+ .option('--override-reason <text>', 'Typed override (≥12 chars) clearing a steering coherency block — recorded with author attribution (WP-465)')
612
+ .option('--acknowledge <response>', 'Respond to a coherency challenge: linked | accepted-fix | diverged (WP-465)')
613
+ .option('--ack-entry <entry-id>', 'Authorizing entry for --acknowledge linked / accepted-fix')
614
+ .option('--ack-reason <text>', 'Divergence rationale (≥12 chars) for --acknowledge diverged')
430
615
  .action(async (entryId, opts) => {
431
616
  await runUpdate({
432
617
  entryId,
@@ -435,8 +620,17 @@ program
435
620
  status: opts.status,
436
621
  workflowStatus: opts.workflowStatus,
437
622
  note: opts.note,
623
+ overrideReason: opts.overrideReason,
624
+ acknowledge: opts.acknowledge,
625
+ ackEntry: opts.ackEntry,
626
+ ackReason: opts.ackReason,
438
627
  });
439
628
  });
629
+ // --- Restore command (WP-514 review round 2, P1) ---
630
+ program
631
+ .command('restore <entry-id>')
632
+ .description('Restore an archived Chain entry to draft (requires active session + rung-3 authority coverage)')
633
+ .action(async (entryId) => { await runRestore(entryId); });
440
634
  // --- Promote command (Wave 2 CLI Polish) ---
441
635
  program
442
636
  .command('verify <entry-id>')
@@ -449,11 +643,15 @@ program
449
643
  await runVerify({ entryId: entryId.trim() });
450
644
  });
451
645
  program
452
- .command('promote <entry-id>')
453
- .description('Promote entry from draft to active (commit to SSOT)')
454
- .option('-m, --message <text>', 'Commit message')
455
- .action(async (entryId, opts) => {
456
- await runPromote({ entryId, message: opts.message });
646
+ .command('promote <entry-ids...>')
647
+ .description('Promote one or more entries from draft to active (commit to SSOT). Batch: a single failure does not abort the rest (INS-1813).')
648
+ .option('-m, --message <text>', 'Commit message (applied to every entry in the batch)')
649
+ .option('--override-reason <text>', 'Typed override (≥12 chars) clearing a steering coherency block at publish — recorded with author attribution (WP-465)')
650
+ .option('--acknowledge <response>', 'Respond to a coherency challenge: linked | accepted-fix | diverged (WP-465)')
651
+ .option('--ack-entry <entry-id>', 'Authorizing entry for --acknowledge linked / accepted-fix')
652
+ .option('--ack-reason <text>', 'Divergence rationale (≥12 chars) for --acknowledge diverged')
653
+ .action(async (entryIds, opts) => {
654
+ await runPromote({ entryIds, message: opts.message, overrideReason: opts.overrideReason, acknowledge: opts.acknowledge, ackEntry: opts.ackEntry, ackReason: opts.ackReason });
457
655
  });
458
656
  // --- Relate / Unrelate commands (TEN-704) ---
459
657
  program
@@ -491,6 +689,30 @@ program
491
689
  concurrency,
492
690
  });
493
691
  });
692
+ // --- migrate:setup command (WP-345 S0b) ---
693
+ program
694
+ .command('migrate:setup')
695
+ .description('Migrate .productbrain/skills|rules|hooks/*.md into the DB setup-assets collection (WP-345)')
696
+ .option('--dry-run', 'Show what would be migrated without writing to DB.')
697
+ .option('--cwd <path>', 'Override working directory (default: process.cwd())')
698
+ .action(async (opts) => {
699
+ const { runMigrateSetup } = await import('./commands/migrate-setup.js');
700
+ await runMigrateSetup({ dryRun: opts.dryRun, cwd: opts.cwd });
701
+ });
702
+ // --- setup:ingest command (WP-345 S3) ---
703
+ program
704
+ .command('setup:ingest <path>')
705
+ .description('Push a single .productbrain skill/rule/hook file to the DB setup-assets SSOT (WP-345)')
706
+ .option('--dry-run', 'Show what would be ingested without writing to DB.')
707
+ .option('--json', 'Output machine-readable JSON (deprecated: use global --json flag)')
708
+ .action(async (filePath, opts) => {
709
+ if (!filePath?.trim()) {
710
+ program.commands.find((c) => c.name() === 'setup:ingest')?.help();
711
+ return;
712
+ }
713
+ const { runSetupIngest } = await import('./commands/setup-ingest.js');
714
+ await runSetupIngest(filePath.trim(), { dryRun: opts.dryRun });
715
+ });
494
716
  // --- Fields command (BET-181 Slice 2) ---
495
717
  program
496
718
  .command('fields <collection>')
@@ -516,7 +738,7 @@ program
516
738
  // --- Audit command (BET-182 Slice 2) ---
517
739
  program
518
740
  .command('audit <entry-ids...>')
519
- .description('Run STD-113 hygiene audit on bet(s) — 13 gates, exit code reflects verdict')
741
+ .description('Run hygiene audit on bet(s) — 13 gates (shaping) / 18 gates (handoff), exit code reflects verdict')
520
742
  .option('--phase <phase>', 'Override phase detection (shaping | handoff)')
521
743
  .option('--gate <name>', 'Run only specified gate(s) (repeatable)', (val, prev) => [...prev, val], [])
522
744
  .option('--fix', 'Auto-execute exact fixes via pb update, rerun once')
@@ -613,6 +835,115 @@ workspaceCmd
613
835
  .action(async () => {
614
836
  await runWorkspaceRepair();
615
837
  });
838
+ const authorityDomainsCmd = program
839
+ .command('authority-domains')
840
+ .description('Operator commands for WP-354 authority-domain readiness and evidence');
841
+ authorityDomainsCmd
842
+ .command('add <slug>')
843
+ .description('Create an authority domain for this workspace')
844
+ .option('--description <description>', 'Authority-domain description')
845
+ .option('--alias <alias>', 'Alias/keyword for this domain (repeatable)', collectRepeatableOption)
846
+ .option('--path-glob <glob>', 'Changed-path glob for this domain (repeatable)', collectRepeatableOption)
847
+ .action(async (slug, opts) => {
848
+ await runAuthorityDomainsAdd(slug, opts);
849
+ });
850
+ authorityDomainsCmd
851
+ .command('propose')
852
+ .description('Generate authority-domain tag proposals')
853
+ .option('--dry-run', 'Preview without writing staging proposals')
854
+ .option('--limit <n>', 'Maximum governance entries to classify')
855
+ .option('--mock', 'Use deterministic mock classifier')
856
+ .action(async (opts) => {
857
+ await runAuthorityDomainsPropose(opts);
858
+ });
859
+ authorityDomainsCmd
860
+ .command('review')
861
+ .description('List authority-domain tag proposals')
862
+ .option('--status <status>', 'pending, committed, rejected, or skipped', 'pending')
863
+ .option('--limit <n>', 'Maximum proposals to list')
864
+ .option('--sample <n>', 'Return a stable proposal sample')
865
+ .option('--stratified', 'Stratify sample across proposed domain and source collection')
866
+ .action(async (opts) => {
867
+ await runAuthorityDomainsReview(opts);
868
+ });
869
+ const authorityDomainsSampleCmd = authorityDomainsCmd
870
+ .command('sample')
871
+ .description('Manage human-reviewed authority-domain proposal samples');
872
+ authorityDomainsSampleCmd
873
+ .command('record')
874
+ .description('Record human-reviewed sample accuracy for authority-domain proposals')
875
+ .requiredOption('--sample-id <id>', 'Stable sample identifier from the review packet')
876
+ .option('--run-id <id>', 'Proposal run identifier')
877
+ .requiredOption('--approved <n>', 'Count of sampled proposals approved as-is')
878
+ .requiredOption('--rejected <n>', 'Count of sampled proposals rejected')
879
+ .requiredOption('--corrected <n>', 'Count of sampled proposals corrected to another domain')
880
+ .action(async (opts) => {
881
+ await runAuthorityDomainsRecordSample(opts);
882
+ });
883
+ authorityDomainsCmd
884
+ .command('ratify <proposal-id>')
885
+ .description('Ratify an authority-domain tag proposal')
886
+ .option('--note <note>', 'Review note')
887
+ .action(async (proposalId, opts) => {
888
+ await runAuthorityDomainsRatify(proposalId, opts);
889
+ });
890
+ authorityDomainsCmd
891
+ .command('queue-tag')
892
+ .description('Queue a known-correct authority-domain tag proposal')
893
+ .requiredOption('--entry <entryId>', 'Entry ID to tag, e.g. DEC-1244')
894
+ .requiredOption('--domain <domainSlug>', 'Authority-domain slug, e.g. product-design/ux')
895
+ .option('--note <note>', 'Known-correct evidence note')
896
+ .option('--ratify', 'Immediately ratify using the generated confirmation string')
897
+ .action(async (opts) => {
898
+ await runAuthorityDomainsQueueTag(opts);
899
+ });
900
+ authorityDomainsCmd
901
+ .command('reject <proposal-id>')
902
+ .description('Reject an authority-domain tag proposal')
903
+ .option('--reason <reason>', 'Rejection reason')
904
+ .action(async (proposalId, opts) => {
905
+ await runAuthorityDomainsReject(proposalId, opts);
906
+ });
907
+ authorityDomainsCmd
908
+ .command('discard-pending')
909
+ .description('Reject all pending authority-domain tag proposals after a failed batch diagnosis')
910
+ .option('--reason <reason>', 'Discard reason')
911
+ .action(async (opts) => {
912
+ await runAuthorityDomainsDiscardPending(opts);
913
+ });
914
+ authorityDomainsCmd
915
+ .command('readiness')
916
+ .description('Show WP-354 authority-domain readiness, evidence gap, and next action')
917
+ .action(async () => {
918
+ await runAuthorityDomainsReadiness();
919
+ });
920
+ authorityDomainsCmd
921
+ .command('benchmark')
922
+ .description('Run and persist the WP-354 authority-domain benchmark')
923
+ .action(async () => {
924
+ await runAuthorityDomainsBenchmark();
925
+ });
926
+ authorityDomainsCmd
927
+ .command('activate-cutover')
928
+ .description('Activate graph retrieval after WP-354 evidence gates pass')
929
+ .option('--force-pre-production', 'Bypass the permanently-locked valueProof gate (requires --dec-id, DEC-864)')
930
+ .option('--dec-id <decId>', 'Chain DEC ID authorizing the bypass')
931
+ .action(async (opts) => {
932
+ await runAuthorityDomainsActivateCutover({ forcePreProduction: opts.forcePreProduction, decId: opts.decId });
933
+ });
934
+ authorityDomainsCmd
935
+ .command('deactivate-cutover')
936
+ .description('Deactivate the active WP-354 authorityDomain cutover for this workspace (DEC-864 rollback).')
937
+ .option('--clerk-user-id <clerkUserId>', 'Override the Clerk user ID for audit trail')
938
+ .action(async (opts) => {
939
+ await runAuthorityDomainsDeactivateCutover({ clerkUserId: opts.clerkUserId });
940
+ });
941
+ authorityDomainsCmd
942
+ .command('principle-distribution')
943
+ .description('Pre-merge gate: check governance category match rate for principles entries')
944
+ .action(async () => {
945
+ await runAuthorityDomainsPrincipleDistribution();
946
+ });
616
947
  // --- Definitions diff command (WP-305 Slice 4) ---
617
948
  const definitionsCmd = program
618
949
  .command('definitions')
@@ -623,6 +954,47 @@ definitionsCmd
623
954
  .action(async (file) => {
624
955
  await runDefinitionsDiff({ file });
625
956
  });
957
+ // --- Method commands (WP-329 S1: method visibility) ---
958
+ const methodCmd = program
959
+ .command('method')
960
+ .description('Inspect published methods (skills + rules) and their per-surface adapter status (WP-329)');
961
+ methodCmd
962
+ .command('ls')
963
+ .description('List all methods with version, published status, and adapter presence')
964
+ .action(async () => {
965
+ await runMethodList();
966
+ });
967
+ methodCmd
968
+ .command('show <name>')
969
+ .description('Show details for one method: frontmatter, Chain entry, and per-adapter fork status')
970
+ .action(async (name) => {
971
+ if (!name?.trim()) {
972
+ program.commands.find((c) => c.name() === 'method')?.help();
973
+ return;
974
+ }
975
+ await runMethodShow({ name: name.trim() });
976
+ });
977
+ methodCmd
978
+ .command('diff <name>')
979
+ .description('Show diff between local .productbrain/ source and last-published Chain version (WP-329 S2)')
980
+ .action(async (name) => {
981
+ if (!name?.trim()) {
982
+ program.commands.find((c) => c.name() === 'method')?.help();
983
+ return;
984
+ }
985
+ await runMethodDiff({ name: name.trim() });
986
+ });
987
+ methodCmd
988
+ .command('publish <name>')
989
+ .description('Publish a local .productbrain/ method (skill or rule) to the Chain methods collection (WP-329 S3)')
990
+ .option('--force', 'Publish even when local body matches the last-published version (override D4 no-op guard)')
991
+ .action(async (name, opts) => {
992
+ if (!name?.trim()) {
993
+ program.commands.find((c) => c.name() === 'method')?.help();
994
+ return;
995
+ }
996
+ await runMethodPublish({ name: name.trim(), force: opts.force });
997
+ });
626
998
  // --- Profile commands (WP-302 Slice 2) ---
627
999
  const profileCmd = program
628
1000
  .command('profile')
@@ -636,16 +1008,18 @@ profileCmd
636
1008
  profileCmd
637
1009
  .command('create <name>')
638
1010
  .description('Create a new profile with an API key')
639
- .requiredOption('--api-key <key>', 'API key (pb_sk_...)')
1011
+ .requiredOption('--api-key <key>', `API key (${API_KEY_PREFIX}...)`)
640
1012
  .option('--url <url>', 'Convex site URL (defaults to production)')
641
1013
  .action(async (name, opts) => {
642
1014
  await runProfileCreate({ name, apiKey: opts.apiKey, url: opts.url });
643
1015
  });
644
1016
  profileCmd
645
1017
  .command('use <name>')
646
- .description('Switch active profile (closes any active session)')
647
- .action(async (name) => {
648
- await runProfileUse({ name });
1018
+ .description('Switch profile: reconciles the repo pin + global by default. --local = repo pin only; --global = global only.')
1019
+ .option('--local', 'Write the profile pin only to .productbrain/config.local.json (repo-local, gitignored)')
1020
+ .option('--global', 'Switch only the global active profile (does not change a locally-pinned repo)')
1021
+ .action(async (name, opts) => {
1022
+ await runProfileUse({ name, local: opts.local, global: opts.global });
649
1023
  });
650
1024
  profileCmd
651
1025
  .command('delete <name>')
@@ -653,6 +1027,14 @@ profileCmd
653
1027
  .action(async (name) => {
654
1028
  await runProfileDelete({ name });
655
1029
  });
1030
+ program
1031
+ .command('use <name>')
1032
+ .description('Switch the active workspace profile (alias for `pb profile use`).')
1033
+ .option('--local', 'Write the profile pin only to .productbrain/config.local.json (repo-local, gitignored)')
1034
+ .option('--global', 'Switch only the global active profile (does not change a locally-pinned repo)')
1035
+ .action(async (name, opts) => {
1036
+ await runProfileUse({ name, local: opts.local, global: opts.global });
1037
+ });
656
1038
  // --- Glossary command (WP-302 Slice 4) ---
657
1039
  program
658
1040
  .command('glossary')
@@ -671,6 +1053,35 @@ program
671
1053
  ];
672
1054
  process.stdout.write(lines.join('\n') + '\n');
673
1055
  });
1056
+ // --- Usage command (WP-322 S4, FEAT-1011) ---
1057
+ program
1058
+ .command('usage')
1059
+ .description('Session and activity dashboard — 4-tab Ink TUI (WP-322)')
1060
+ .option('--json', 'Output machine-readable JSON (sessions, entries30d, activity array)')
1061
+ .action(async (opts) => {
1062
+ await runUsage({ json: opts.json });
1063
+ });
1064
+ // --- Proof-run command (WP-459: admin-proof bridge dogfood) ---
1065
+ program
1066
+ .command('proof-run <proof-name>')
1067
+ .description('Run an admin-only proof against the seeded preview via the proof bridge (WP-459)')
1068
+ .action(async (proofName) => {
1069
+ await runProofRun({ proofName: proofName.trim() });
1070
+ });
1071
+ // --- Admin command group (WP-312 S2, FEAT-969) ---
1072
+ program.addCommand(createAdminCommand());
1073
+ program.addCommand(createFeedbackCommand());
1074
+ program.addCommand(createConflictsCommand());
1075
+ program.addCommand(createShapeCommand());
1076
+ program.addCommand(createDirectionCommand());
1077
+ program.addCommand(createOrganisationCommand());
1078
+ // --- Upgrade command (WP-322 S1: ambient update notification) ---
1079
+ program
1080
+ .command('upgrade')
1081
+ .description(`Upgrade pb CLI to the latest beta (${UPGRADE_COMMAND})`)
1082
+ .action(async () => {
1083
+ await runUpgrade({ currentVersion: cliPackageVersion.version });
1084
+ });
674
1085
  // Parse with global error handler — all uncaught errors route through handleError
675
- program.parseAsync().catch(handleError);
1086
+ program.parseAsync(process.argv).catch(handleError);
676
1087
  //# sourceMappingURL=index.js.map