@productbrain/cli 0.1.0-beta.1400 → 0.1.0-beta.14010

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 (1711) hide show
  1. package/README.md +18 -6
  2. package/dist/__tests__/adminConfig.test.d.ts +18 -0
  3. package/dist/__tests__/adminConfig.test.d.ts.map +1 -0
  4. package/dist/__tests__/adminConfig.test.js +221 -0
  5. package/dist/__tests__/adminConfig.test.js.map +1 -0
  6. package/dist/__tests__/canonicalRefs.vocab.test.js +2 -2
  7. package/dist/__tests__/canonicalRefs.vocab.test.js.map +1 -1
  8. package/dist/__tests__/capture-receipt-coaching.test.d.ts +2 -0
  9. package/dist/__tests__/capture-receipt-coaching.test.d.ts.map +1 -0
  10. package/dist/__tests__/capture-receipt-coaching.test.js +119 -0
  11. package/dist/__tests__/capture-receipt-coaching.test.js.map +1 -0
  12. package/dist/__tests__/capture-receipt-role-hint.test.d.ts +2 -0
  13. package/dist/__tests__/capture-receipt-role-hint.test.d.ts.map +1 -0
  14. package/dist/__tests__/capture-receipt-role-hint.test.js +64 -0
  15. package/dist/__tests__/capture-receipt-role-hint.test.js.map +1 -0
  16. package/dist/__tests__/capture-receipt-spine-floor.test.d.ts +2 -0
  17. package/dist/__tests__/capture-receipt-spine-floor.test.d.ts.map +1 -0
  18. package/dist/__tests__/capture-receipt-spine-floor.test.js +95 -0
  19. package/dist/__tests__/capture-receipt-spine-floor.test.js.map +1 -0
  20. package/dist/__tests__/capture.test.js +519 -231
  21. package/dist/__tests__/capture.test.js.map +1 -1
  22. package/dist/__tests__/cli-error-once.test.d.ts +2 -0
  23. package/dist/__tests__/cli-error-once.test.d.ts.map +1 -0
  24. package/dist/__tests__/cli-error-once.test.js +51 -0
  25. package/dist/__tests__/cli-error-once.test.js.map +1 -0
  26. package/dist/__tests__/client-binding-guard.test.d.ts +2 -0
  27. package/dist/__tests__/client-binding-guard.test.d.ts.map +1 -0
  28. package/dist/__tests__/client-binding-guard.test.js +84 -0
  29. package/dist/__tests__/client-binding-guard.test.js.map +1 -0
  30. package/dist/__tests__/coaching-mirror-drift.test.d.ts +2 -0
  31. package/dist/__tests__/coaching-mirror-drift.test.d.ts.map +1 -0
  32. package/dist/__tests__/coaching-mirror-drift.test.js +49 -0
  33. package/dist/__tests__/coaching-mirror-drift.test.js.map +1 -0
  34. package/dist/__tests__/codex-prep-parity.test.d.ts +2 -0
  35. package/dist/__tests__/codex-prep-parity.test.d.ts.map +1 -0
  36. package/dist/__tests__/codex-prep-parity.test.js +82 -0
  37. package/dist/__tests__/codex-prep-parity.test.js.map +1 -0
  38. package/dist/__tests__/config-conversation-profile.test.d.ts +2 -0
  39. package/dist/__tests__/config-conversation-profile.test.d.ts.map +1 -0
  40. package/dist/__tests__/config-conversation-profile.test.js +91 -0
  41. package/dist/__tests__/config-conversation-profile.test.js.map +1 -0
  42. package/dist/__tests__/config-prod-fallthrough.test.js +23 -12
  43. package/dist/__tests__/config-prod-fallthrough.test.js.map +1 -1
  44. package/dist/__tests__/config.test.js +583 -40
  45. package/dist/__tests__/config.test.js.map +1 -1
  46. package/dist/__tests__/constants.test.js +13 -4
  47. package/dist/__tests__/constants.test.js.map +1 -1
  48. package/dist/__tests__/constellation.test.js +41 -15
  49. package/dist/__tests__/constellation.test.js.map +1 -1
  50. package/dist/__tests__/conversation.test.d.ts +2 -0
  51. package/dist/__tests__/conversation.test.d.ts.map +1 -0
  52. package/dist/__tests__/conversation.test.js +113 -0
  53. package/dist/__tests__/conversation.test.js.map +1 -0
  54. package/dist/__tests__/entry-formatter.test.d.ts +2 -0
  55. package/dist/__tests__/entry-formatter.test.d.ts.map +1 -0
  56. package/dist/__tests__/entry-formatter.test.js +272 -0
  57. package/dist/__tests__/entry-formatter.test.js.map +1 -0
  58. package/dist/__tests__/entry-preflight.test.d.ts +2 -0
  59. package/dist/__tests__/entry-preflight.test.d.ts.map +1 -0
  60. package/dist/__tests__/entry-preflight.test.js +58 -0
  61. package/dist/__tests__/entry-preflight.test.js.map +1 -0
  62. package/dist/__tests__/entryAccept-batch.test.d.ts +2 -0
  63. package/dist/__tests__/entryAccept-batch.test.d.ts.map +1 -0
  64. package/dist/__tests__/entryAccept-batch.test.js +275 -0
  65. package/dist/__tests__/entryAccept-batch.test.js.map +1 -0
  66. package/dist/__tests__/entryAccept.test.d.ts +2 -0
  67. package/dist/__tests__/entryAccept.test.d.ts.map +1 -0
  68. package/dist/__tests__/entryAccept.test.js +573 -0
  69. package/dist/__tests__/entryAccept.test.js.map +1 -0
  70. package/dist/__tests__/entryDiscardResolve.test.d.ts +2 -0
  71. package/dist/__tests__/entryDiscardResolve.test.d.ts.map +1 -0
  72. package/dist/__tests__/entryDiscardResolve.test.js +36 -0
  73. package/dist/__tests__/entryDiscardResolve.test.js.map +1 -0
  74. package/dist/__tests__/entryOwn.test.d.ts +2 -0
  75. package/dist/__tests__/entryOwn.test.d.ts.map +1 -0
  76. package/dist/__tests__/entryOwn.test.js +95 -0
  77. package/dist/__tests__/entryOwn.test.js.map +1 -0
  78. package/dist/__tests__/entryReplace.test.d.ts +2 -0
  79. package/dist/__tests__/entryReplace.test.d.ts.map +1 -0
  80. package/dist/__tests__/entryReplace.test.js +60 -0
  81. package/dist/__tests__/entryReplace.test.js.map +1 -0
  82. package/dist/__tests__/entryTick.test.d.ts +2 -0
  83. package/dist/__tests__/entryTick.test.d.ts.map +1 -0
  84. package/dist/__tests__/entryTick.test.js +40 -0
  85. package/dist/__tests__/entryTick.test.js.map +1 -0
  86. package/dist/__tests__/envelope-contract.test.js +7 -5
  87. package/dist/__tests__/envelope-contract.test.js.map +1 -1
  88. package/dist/__tests__/errors.test.js +70 -0
  89. package/dist/__tests__/errors.test.js.map +1 -1
  90. package/dist/__tests__/fields.test.js +14 -3
  91. package/dist/__tests__/fields.test.js.map +1 -1
  92. package/dist/__tests__/gateway-dry-run-timeout.test.d.ts +2 -0
  93. package/dist/__tests__/gateway-dry-run-timeout.test.d.ts.map +1 -0
  94. package/dist/__tests__/gateway-dry-run-timeout.test.js +70 -0
  95. package/dist/__tests__/gateway-dry-run-timeout.test.js.map +1 -0
  96. package/dist/__tests__/gateway-timeout-body-phase.test.d.ts +2 -0
  97. package/dist/__tests__/gateway-timeout-body-phase.test.d.ts.map +1 -0
  98. package/dist/__tests__/gateway-timeout-body-phase.test.js +116 -0
  99. package/dist/__tests__/gateway-timeout-body-phase.test.js.map +1 -0
  100. package/dist/__tests__/glossary.test.js +10 -27
  101. package/dist/__tests__/glossary.test.js.map +1 -1
  102. package/dist/__tests__/health-gap-kinds-drift.test.d.ts +2 -0
  103. package/dist/__tests__/health-gap-kinds-drift.test.d.ts.map +1 -0
  104. package/dist/__tests__/health-gap-kinds-drift.test.js +43 -0
  105. package/dist/__tests__/health-gap-kinds-drift.test.js.map +1 -0
  106. package/dist/__tests__/help-no-ids.test.d.ts +2 -0
  107. package/dist/__tests__/help-no-ids.test.d.ts.map +1 -0
  108. package/dist/__tests__/help-no-ids.test.js +81 -0
  109. package/dist/__tests__/help-no-ids.test.js.map +1 -0
  110. package/dist/__tests__/init.test.d.ts +2 -1
  111. package/dist/__tests__/init.test.d.ts.map +1 -1
  112. package/dist/__tests__/init.test.js +283 -23
  113. package/dist/__tests__/init.test.js.map +1 -1
  114. package/dist/__tests__/kernel-value-sets-drift.test.d.ts +2 -0
  115. package/dist/__tests__/kernel-value-sets-drift.test.d.ts.map +1 -0
  116. package/dist/__tests__/kernel-value-sets-drift.test.js +46 -0
  117. package/dist/__tests__/kernel-value-sets-drift.test.js.map +1 -0
  118. package/dist/__tests__/kernel-value-sets-generator.test.d.ts +2 -0
  119. package/dist/__tests__/kernel-value-sets-generator.test.d.ts.map +1 -0
  120. package/dist/__tests__/kernel-value-sets-generator.test.js +108 -0
  121. package/dist/__tests__/kernel-value-sets-generator.test.js.map +1 -0
  122. package/dist/__tests__/login.test.js +35 -4
  123. package/dist/__tests__/login.test.js.map +1 -1
  124. package/dist/__tests__/missingPin.test.d.ts +11 -0
  125. package/dist/__tests__/missingPin.test.d.ts.map +1 -0
  126. package/dist/__tests__/missingPin.test.js +232 -0
  127. package/dist/__tests__/missingPin.test.js.map +1 -0
  128. package/dist/__tests__/no-session-one-place.test.d.ts +2 -0
  129. package/dist/__tests__/no-session-one-place.test.d.ts.map +1 -0
  130. package/dist/__tests__/no-session-one-place.test.js +33 -0
  131. package/dist/__tests__/no-session-one-place.test.js.map +1 -0
  132. package/dist/__tests__/notice-marker.test.js +146 -11
  133. package/dist/__tests__/notice-marker.test.js.map +1 -1
  134. package/dist/__tests__/orient.test.js +348 -61
  135. package/dist/__tests__/orient.test.js.map +1 -1
  136. package/dist/__tests__/preview-key-refresh.test.js +73 -13
  137. package/dist/__tests__/preview-key-refresh.test.js.map +1 -1
  138. package/dist/__tests__/profile-create-key.test.d.ts +2 -0
  139. package/dist/__tests__/profile-create-key.test.d.ts.map +1 -0
  140. package/dist/__tests__/profile-create-key.test.js +57 -0
  141. package/dist/__tests__/profile-create-key.test.js.map +1 -0
  142. package/dist/__tests__/profiles.test.js +534 -16
  143. package/dist/__tests__/profiles.test.js.map +1 -1
  144. package/dist/__tests__/prompts.test.js +18 -1
  145. package/dist/__tests__/prompts.test.js.map +1 -1
  146. package/dist/__tests__/rate-limit-resilience.test.d.ts +8 -0
  147. package/dist/__tests__/rate-limit-resilience.test.d.ts.map +1 -0
  148. package/dist/__tests__/rate-limit-resilience.test.js +191 -0
  149. package/dist/__tests__/rate-limit-resilience.test.js.map +1 -0
  150. package/dist/__tests__/read-target-notice.test.d.ts +2 -0
  151. package/dist/__tests__/read-target-notice.test.d.ts.map +1 -0
  152. package/dist/__tests__/read-target-notice.test.js +125 -0
  153. package/dist/__tests__/read-target-notice.test.js.map +1 -0
  154. package/dist/__tests__/relate.test.js +269 -14
  155. package/dist/__tests__/relate.test.js.map +1 -1
  156. package/dist/__tests__/removed-commands.test.d.ts +2 -0
  157. package/dist/__tests__/removed-commands.test.d.ts.map +1 -0
  158. package/dist/__tests__/removed-commands.test.js +99 -0
  159. package/dist/__tests__/removed-commands.test.js.map +1 -0
  160. package/dist/__tests__/reply-commands-registered.test.d.ts +2 -0
  161. package/dist/__tests__/reply-commands-registered.test.d.ts.map +1 -0
  162. package/dist/__tests__/reply-commands-registered.test.js +83 -0
  163. package/dist/__tests__/reply-commands-registered.test.js.map +1 -0
  164. package/dist/__tests__/reportedProfile.test.d.ts +2 -0
  165. package/dist/__tests__/reportedProfile.test.d.ts.map +1 -0
  166. package/dist/__tests__/reportedProfile.test.js +328 -0
  167. package/dist/__tests__/reportedProfile.test.js.map +1 -0
  168. package/dist/__tests__/restore.test.d.ts +2 -0
  169. package/dist/__tests__/restore.test.d.ts.map +1 -0
  170. package/dist/__tests__/restore.test.js +91 -0
  171. package/dist/__tests__/restore.test.js.map +1 -0
  172. package/dist/__tests__/route-latency-budget.test.d.ts +2 -0
  173. package/dist/__tests__/route-latency-budget.test.d.ts.map +1 -0
  174. package/dist/__tests__/route-latency-budget.test.js +111 -0
  175. package/dist/__tests__/route-latency-budget.test.js.map +1 -0
  176. package/dist/__tests__/runner.test.js +59 -44
  177. package/dist/__tests__/runner.test.js.map +1 -1
  178. package/dist/__tests__/session-binding-refusal-tenant.test.d.ts +2 -0
  179. package/dist/__tests__/session-binding-refusal-tenant.test.d.ts.map +1 -0
  180. package/dist/__tests__/session-binding-refusal-tenant.test.js +112 -0
  181. package/dist/__tests__/session-binding-refusal-tenant.test.js.map +1 -0
  182. package/dist/__tests__/session-close-conversation.test.d.ts +2 -0
  183. package/dist/__tests__/session-close-conversation.test.d.ts.map +1 -0
  184. package/dist/__tests__/session-close-conversation.test.js +75 -0
  185. package/dist/__tests__/session-close-conversation.test.js.map +1 -0
  186. package/dist/__tests__/session-close-loop.test.js +150 -32
  187. package/dist/__tests__/session-close-loop.test.js.map +1 -1
  188. package/dist/__tests__/session-ended-refusal.test.d.ts +2 -0
  189. package/dist/__tests__/session-ended-refusal.test.d.ts.map +1 -0
  190. package/dist/__tests__/session-ended-refusal.test.js +76 -0
  191. package/dist/__tests__/session-ended-refusal.test.js.map +1 -0
  192. package/dist/__tests__/session-hook-conversation.test.d.ts +2 -0
  193. package/dist/__tests__/session-hook-conversation.test.d.ts.map +1 -0
  194. package/dist/__tests__/session-hook-conversation.test.js +87 -0
  195. package/dist/__tests__/session-hook-conversation.test.js.map +1 -0
  196. package/dist/__tests__/session-label.test.d.ts +2 -0
  197. package/dist/__tests__/session-label.test.d.ts.map +1 -0
  198. package/dist/__tests__/session-label.test.js +46 -0
  199. package/dist/__tests__/session-label.test.js.map +1 -0
  200. package/dist/__tests__/session-list-show.test.d.ts +2 -0
  201. package/dist/__tests__/session-list-show.test.d.ts.map +1 -0
  202. package/dist/__tests__/session-list-show.test.js +171 -0
  203. package/dist/__tests__/session-list-show.test.js.map +1 -0
  204. package/dist/__tests__/session-pinned-role.test.d.ts +2 -0
  205. package/dist/__tests__/session-pinned-role.test.d.ts.map +1 -0
  206. package/dist/__tests__/session-pinned-role.test.js +333 -0
  207. package/dist/__tests__/session-pinned-role.test.js.map +1 -0
  208. package/dist/__tests__/session-reset.test.js +26 -11
  209. package/dist/__tests__/session-reset.test.js.map +1 -1
  210. package/dist/__tests__/session-resume-backstop.test.js +42 -2
  211. package/dist/__tests__/session-resume-backstop.test.js.map +1 -1
  212. package/dist/__tests__/session-role-name-sanitize.test.d.ts +2 -0
  213. package/dist/__tests__/session-role-name-sanitize.test.d.ts.map +1 -0
  214. package/dist/__tests__/session-role-name-sanitize.test.js +119 -0
  215. package/dist/__tests__/session-role-name-sanitize.test.js.map +1 -0
  216. package/dist/__tests__/session-seat-split.test.d.ts +2 -0
  217. package/dist/__tests__/session-seat-split.test.d.ts.map +1 -0
  218. package/dist/__tests__/session-seat-split.test.js +142 -0
  219. package/dist/__tests__/session-seat-split.test.js.map +1 -0
  220. package/dist/__tests__/session-start-key-refresh.test.js +64 -30
  221. package/dist/__tests__/session-start-key-refresh.test.js.map +1 -1
  222. package/dist/__tests__/session-state-machine.test.js +193 -27
  223. package/dist/__tests__/session-state-machine.test.js.map +1 -1
  224. package/dist/__tests__/session-switch.test.js +218 -7
  225. package/dist/__tests__/session-switch.test.js.map +1 -1
  226. package/dist/__tests__/session-touch.test.js +86 -107
  227. package/dist/__tests__/session-touch.test.js.map +1 -1
  228. package/dist/__tests__/session.test.js +0 -3
  229. package/dist/__tests__/session.test.js.map +1 -1
  230. package/dist/__tests__/sessionBinding.test.d.ts +2 -0
  231. package/dist/__tests__/sessionBinding.test.d.ts.map +1 -0
  232. package/dist/__tests__/sessionBinding.test.js +131 -0
  233. package/dist/__tests__/sessionBinding.test.js.map +1 -0
  234. package/dist/__tests__/sessionByIdLookup.test.d.ts +2 -0
  235. package/dist/__tests__/sessionByIdLookup.test.d.ts.map +1 -0
  236. package/dist/__tests__/sessionByIdLookup.test.js +63 -0
  237. package/dist/__tests__/sessionByIdLookup.test.js.map +1 -0
  238. package/dist/__tests__/state.test.js +21 -1
  239. package/dist/__tests__/state.test.js.map +1 -1
  240. package/dist/__tests__/stillTrue.test.d.ts +2 -0
  241. package/dist/__tests__/stillTrue.test.d.ts.map +1 -0
  242. package/dist/__tests__/stillTrue.test.js +53 -0
  243. package/dist/__tests__/stillTrue.test.js.map +1 -0
  244. package/dist/__tests__/strip.test.js +57 -3
  245. package/dist/__tests__/strip.test.js.map +1 -1
  246. package/dist/__tests__/tenant-notice-write-path.test.d.ts +2 -0
  247. package/dist/__tests__/tenant-notice-write-path.test.d.ts.map +1 -0
  248. package/dist/__tests__/tenant-notice-write-path.test.js +183 -0
  249. package/dist/__tests__/tenant-notice-write-path.test.js.map +1 -0
  250. package/dist/__tests__/update-check.test.js +21 -1
  251. package/dist/__tests__/update-check.test.js.map +1 -1
  252. package/dist/__tests__/update.test.js +535 -8
  253. package/dist/__tests__/update.test.js.map +1 -1
  254. package/dist/__tests__/upgrade-runner.test.js +44 -21
  255. package/dist/__tests__/upgrade-runner.test.js.map +1 -1
  256. package/dist/__tests__/verify-formatter.test.d.ts +2 -0
  257. package/dist/__tests__/verify-formatter.test.d.ts.map +1 -0
  258. package/dist/__tests__/verify-formatter.test.js +85 -0
  259. package/dist/__tests__/verify-formatter.test.js.map +1 -0
  260. package/dist/__tests__/vocabulary-leak.test.d.ts +1 -7
  261. package/dist/__tests__/vocabulary-leak.test.d.ts.map +1 -1
  262. package/dist/__tests__/vocabulary-leak.test.js +8 -117
  263. package/dist/__tests__/vocabulary-leak.test.js.map +1 -1
  264. package/dist/__tests__/workspace.test.js +10 -71
  265. package/dist/__tests__/workspace.test.js.map +1 -1
  266. package/dist/__tests__/workspaceNotice.test.d.ts +2 -0
  267. package/dist/__tests__/workspaceNotice.test.d.ts.map +1 -0
  268. package/dist/__tests__/workspaceNotice.test.js +551 -0
  269. package/dist/__tests__/workspaceNotice.test.js.map +1 -0
  270. package/dist/commands/__tests__/quality.test.d.ts +2 -0
  271. package/dist/commands/__tests__/quality.test.d.ts.map +1 -0
  272. package/dist/commands/__tests__/quality.test.js +315 -0
  273. package/dist/commands/__tests__/quality.test.js.map +1 -0
  274. package/dist/commands/__tests__/rework.test.d.ts +2 -0
  275. package/dist/commands/__tests__/rework.test.d.ts.map +1 -0
  276. package/dist/commands/__tests__/rework.test.js +151 -0
  277. package/dist/commands/__tests__/rework.test.js.map +1 -0
  278. package/dist/commands/__tests__/tasksList.test.d.ts +2 -0
  279. package/dist/commands/__tests__/tasksList.test.d.ts.map +1 -0
  280. package/dist/commands/__tests__/tasksList.test.js +66 -0
  281. package/dist/commands/__tests__/tasksList.test.js.map +1 -0
  282. package/dist/commands/__tests__/tensionsList.test.d.ts +2 -0
  283. package/dist/commands/__tests__/tensionsList.test.d.ts.map +1 -0
  284. package/dist/commands/__tests__/tensionsList.test.js +63 -0
  285. package/dist/commands/__tests__/tensionsList.test.js.map +1 -0
  286. package/dist/commands/accept-policy.d.ts +10 -0
  287. package/dist/commands/accept-policy.d.ts.map +1 -0
  288. package/dist/commands/accept-policy.js +101 -0
  289. package/dist/commands/accept-policy.js.map +1 -0
  290. package/dist/commands/admin/cockpit.d.ts +3 -14
  291. package/dist/commands/admin/cockpit.d.ts.map +1 -1
  292. package/dist/commands/admin/cockpit.js +14 -79
  293. package/dist/commands/admin/cockpit.js.map +1 -1
  294. package/dist/commands/admin/cockpit.test.d.ts +2 -0
  295. package/dist/commands/admin/cockpit.test.d.ts.map +1 -0
  296. package/dist/commands/admin/cockpit.test.js +104 -0
  297. package/dist/commands/admin/cockpit.test.js.map +1 -0
  298. package/dist/commands/admin/index.d.ts +49 -0
  299. package/dist/commands/admin/index.d.ts.map +1 -1
  300. package/dist/commands/admin/index.js +149 -30
  301. package/dist/commands/admin/index.js.map +1 -1
  302. package/dist/commands/admin/index.test.d.ts +2 -0
  303. package/dist/commands/admin/index.test.d.ts.map +1 -0
  304. package/dist/commands/admin/index.test.js +94 -0
  305. package/dist/commands/admin/index.test.js.map +1 -0
  306. package/dist/commands/admin/inspect.d.ts.map +1 -1
  307. package/dist/commands/admin/inspect.js +10 -15
  308. package/dist/commands/admin/inspect.js.map +1 -1
  309. package/dist/commands/admin/manage.d.ts.map +1 -1
  310. package/dist/commands/admin/manage.js +17 -224
  311. package/dist/commands/admin/manage.js.map +1 -1
  312. package/dist/commands/admin/manage.test.d.ts +0 -14
  313. package/dist/commands/admin/manage.test.d.ts.map +1 -1
  314. package/dist/commands/admin/manage.test.js +86 -142
  315. package/dist/commands/admin/manage.test.js.map +1 -1
  316. package/dist/commands/admin/probe.d.ts +75 -0
  317. package/dist/commands/admin/probe.d.ts.map +1 -0
  318. package/dist/commands/admin/probe.js +224 -0
  319. package/dist/commands/admin/probe.js.map +1 -0
  320. package/dist/commands/admin/probe.test.d.ts +2 -0
  321. package/dist/commands/admin/probe.test.d.ts.map +1 -0
  322. package/dist/commands/admin/probe.test.js +193 -0
  323. package/dist/commands/admin/probe.test.js.map +1 -0
  324. package/dist/commands/admin/run.d.ts +43 -0
  325. package/dist/commands/admin/run.d.ts.map +1 -0
  326. package/dist/commands/admin/run.js +78 -0
  327. package/dist/commands/admin/run.js.map +1 -0
  328. package/dist/commands/admin/run.test.d.ts +18 -0
  329. package/dist/commands/admin/run.test.d.ts.map +1 -0
  330. package/dist/commands/admin/run.test.js +168 -0
  331. package/dist/commands/admin/run.test.js.map +1 -0
  332. package/dist/commands/admin/seed.d.ts +14 -35
  333. package/dist/commands/admin/seed.d.ts.map +1 -1
  334. package/dist/commands/admin/seed.js +50 -352
  335. package/dist/commands/admin/seed.js.map +1 -1
  336. package/dist/commands/admin/seed.test.d.ts +3 -4
  337. package/dist/commands/admin/seed.test.d.ts.map +1 -1
  338. package/dist/commands/admin/seed.test.js +36 -73
  339. package/dist/commands/admin/seed.test.js.map +1 -1
  340. package/dist/commands/admin/seedRegistryEntries.generated.d.ts +3 -1
  341. package/dist/commands/admin/seedRegistryEntries.generated.d.ts.map +1 -1
  342. package/dist/commands/admin/seedRegistryEntries.generated.js +21 -102
  343. package/dist/commands/admin/seedRegistryEntries.generated.js.map +1 -1
  344. package/dist/commands/admin/seedRegistryEntries.test.d.ts +5 -3
  345. package/dist/commands/admin/seedRegistryEntries.test.d.ts.map +1 -1
  346. package/dist/commands/admin/seedRegistryEntries.test.js +69 -30
  347. package/dist/commands/admin/seedRegistryEntries.test.js.map +1 -1
  348. package/dist/commands/admin/seedRowType.d.ts +22 -0
  349. package/dist/commands/admin/seedRowType.d.ts.map +1 -0
  350. package/dist/commands/admin/seedRowType.js +2 -0
  351. package/dist/commands/admin/seedRowType.js.map +1 -0
  352. package/dist/commands/admin/seedStatusColor.d.ts +9 -0
  353. package/dist/commands/admin/seedStatusColor.d.ts.map +1 -0
  354. package/dist/commands/admin/seedStatusColor.js +19 -0
  355. package/dist/commands/admin/seedStatusColor.js.map +1 -0
  356. package/dist/commands/admin/seedStatusColor.test.d.ts +2 -0
  357. package/dist/commands/admin/seedStatusColor.test.d.ts.map +1 -0
  358. package/dist/commands/admin/seedStatusColor.test.js +31 -0
  359. package/dist/commands/admin/seedStatusColor.test.js.map +1 -0
  360. package/dist/commands/brief.d.ts.map +1 -1
  361. package/dist/commands/brief.js +27 -10
  362. package/dist/commands/brief.js.map +1 -1
  363. package/dist/commands/capture.d.ts +17 -16
  364. package/dist/commands/capture.d.ts.map +1 -1
  365. package/dist/commands/capture.js +114 -300
  366. package/dist/commands/capture.js.map +1 -1
  367. package/dist/commands/chain-walk.d.ts.map +1 -1
  368. package/dist/commands/chain-walk.js +1 -3
  369. package/dist/commands/chain-walk.js.map +1 -1
  370. package/dist/commands/changes.d.ts.map +1 -1
  371. package/dist/commands/changes.js +1 -3
  372. package/dist/commands/changes.js.map +1 -1
  373. package/dist/commands/codex-prep.d.ts +11 -1
  374. package/dist/commands/codex-prep.d.ts.map +1 -1
  375. package/dist/commands/codex-prep.js +15 -86
  376. package/dist/commands/codex-prep.js.map +1 -1
  377. package/dist/commands/collections.d.ts +1 -1
  378. package/dist/commands/collections.d.ts.map +1 -1
  379. package/dist/commands/collections.js +5 -13
  380. package/dist/commands/collections.js.map +1 -1
  381. package/dist/commands/conflicts.d.ts +40 -0
  382. package/dist/commands/conflicts.d.ts.map +1 -0
  383. package/dist/commands/conflicts.js +213 -0
  384. package/dist/commands/conflicts.js.map +1 -0
  385. package/dist/commands/conflicts.test.d.ts +2 -0
  386. package/dist/commands/conflicts.test.d.ts.map +1 -0
  387. package/dist/commands/conflicts.test.js +202 -0
  388. package/dist/commands/conflicts.test.js.map +1 -0
  389. package/dist/commands/connect-config.test.js +12 -9
  390. package/dist/commands/connect-config.test.js.map +1 -1
  391. package/dist/commands/connect-decline.test.d.ts +2 -0
  392. package/dist/commands/connect-decline.test.d.ts.map +1 -0
  393. package/dist/commands/connect-decline.test.js +70 -0
  394. package/dist/commands/connect-decline.test.js.map +1 -0
  395. package/dist/commands/connect-integration.test.d.ts +2 -2
  396. package/dist/commands/connect-integration.test.js +38 -18
  397. package/dist/commands/connect-integration.test.js.map +1 -1
  398. package/dist/commands/connect-legacy-migration.test.d.ts +2 -0
  399. package/dist/commands/connect-legacy-migration.test.d.ts.map +1 -0
  400. package/dist/commands/connect-legacy-migration.test.js +108 -0
  401. package/dist/commands/connect-legacy-migration.test.js.map +1 -0
  402. package/dist/commands/connect-redeem-failure.test.d.ts +2 -0
  403. package/dist/commands/connect-redeem-failure.test.d.ts.map +1 -0
  404. package/dist/commands/connect-redeem-failure.test.js +133 -0
  405. package/dist/commands/connect-redeem-failure.test.js.map +1 -0
  406. package/dist/commands/connect-screens.d.ts +11 -17
  407. package/dist/commands/connect-screens.d.ts.map +1 -1
  408. package/dist/commands/connect-screens.js +19 -81
  409. package/dist/commands/connect-screens.js.map +1 -1
  410. package/dist/commands/connect-screens.test.d.ts +2 -0
  411. package/dist/commands/connect-screens.test.d.ts.map +1 -0
  412. package/dist/commands/connect-screens.test.js +19 -0
  413. package/dist/commands/connect-screens.test.js.map +1 -0
  414. package/dist/commands/connect-seal.test.d.ts +2 -0
  415. package/dist/commands/connect-seal.test.d.ts.map +1 -0
  416. package/dist/commands/connect-seal.test.js +54 -0
  417. package/dist/commands/connect-seal.test.js.map +1 -0
  418. package/dist/commands/connect.d.ts +16 -14
  419. package/dist/commands/connect.d.ts.map +1 -1
  420. package/dist/commands/connect.js +249 -89
  421. package/dist/commands/connect.js.map +1 -1
  422. package/dist/commands/connect.test.js +254 -30
  423. package/dist/commands/connect.test.js.map +1 -1
  424. package/dist/commands/constellation.d.ts.map +1 -1
  425. package/dist/commands/constellation.js +1 -3
  426. package/dist/commands/constellation.js.map +1 -1
  427. package/dist/commands/context.d.ts.map +1 -1
  428. package/dist/commands/context.js +1 -3
  429. package/dist/commands/context.js.map +1 -1
  430. package/dist/commands/cross-cut.d.ts.map +1 -1
  431. package/dist/commands/cross-cut.js +1 -3
  432. package/dist/commands/cross-cut.js.map +1 -1
  433. package/dist/commands/direction.d.ts +10 -0
  434. package/dist/commands/direction.d.ts.map +1 -0
  435. package/dist/commands/direction.js +75 -0
  436. package/dist/commands/direction.js.map +1 -0
  437. package/dist/commands/doctor.d.ts.map +1 -1
  438. package/dist/commands/doctor.js +115 -48
  439. package/dist/commands/doctor.js.map +1 -1
  440. package/dist/commands/doctor.test.js +220 -29
  441. package/dist/commands/doctor.test.js.map +1 -1
  442. package/dist/commands/entryAccept.d.ts +59 -0
  443. package/dist/commands/entryAccept.d.ts.map +1 -0
  444. package/dist/commands/entryAccept.js +288 -0
  445. package/dist/commands/entryAccept.js.map +1 -0
  446. package/dist/commands/entryDiscardResolve.d.ts +9 -0
  447. package/dist/commands/entryDiscardResolve.d.ts.map +1 -0
  448. package/dist/commands/entryDiscardResolve.js +27 -0
  449. package/dist/commands/entryDiscardResolve.js.map +1 -0
  450. package/dist/commands/entryOwn.d.ts +10 -0
  451. package/dist/commands/entryOwn.d.ts.map +1 -0
  452. package/dist/commands/entryOwn.js +40 -0
  453. package/dist/commands/entryOwn.js.map +1 -0
  454. package/dist/commands/entryPreflight.d.ts +8 -0
  455. package/dist/commands/entryPreflight.d.ts.map +1 -0
  456. package/dist/commands/entryPreflight.js +44 -0
  457. package/dist/commands/entryPreflight.js.map +1 -0
  458. package/dist/commands/entryReplace.d.ts +7 -0
  459. package/dist/commands/entryReplace.d.ts.map +1 -0
  460. package/dist/commands/entryReplace.js +34 -0
  461. package/dist/commands/entryReplace.js.map +1 -0
  462. package/dist/commands/entryTick.d.ts +8 -0
  463. package/dist/commands/entryTick.d.ts.map +1 -0
  464. package/dist/commands/entryTick.js +42 -0
  465. package/dist/commands/entryTick.js.map +1 -0
  466. package/dist/commands/feedback.d.ts +39 -0
  467. package/dist/commands/feedback.d.ts.map +1 -0
  468. package/dist/commands/feedback.js +165 -0
  469. package/dist/commands/feedback.js.map +1 -0
  470. package/dist/commands/feedback.test.d.ts +2 -0
  471. package/dist/commands/feedback.test.d.ts.map +1 -0
  472. package/dist/commands/feedback.test.js +109 -0
  473. package/dist/commands/feedback.test.js.map +1 -0
  474. package/dist/commands/fields.d.ts.map +1 -1
  475. package/dist/commands/fields.js +2 -4
  476. package/dist/commands/fields.js.map +1 -1
  477. package/dist/commands/files.d.ts +26 -0
  478. package/dist/commands/files.d.ts.map +1 -0
  479. package/dist/commands/files.js +160 -0
  480. package/dist/commands/files.js.map +1 -0
  481. package/dist/commands/files.test.d.ts +2 -0
  482. package/dist/commands/files.test.d.ts.map +1 -0
  483. package/dist/commands/files.test.js +278 -0
  484. package/dist/commands/files.test.js.map +1 -0
  485. package/dist/commands/get.d.ts.map +1 -1
  486. package/dist/commands/get.js +4 -8
  487. package/dist/commands/get.js.map +1 -1
  488. package/dist/commands/history.d.ts +32 -0
  489. package/dist/commands/history.d.ts.map +1 -0
  490. package/dist/commands/history.js +53 -0
  491. package/dist/commands/history.js.map +1 -0
  492. package/dist/commands/history.test.d.ts +2 -0
  493. package/dist/commands/history.test.d.ts.map +1 -0
  494. package/dist/commands/history.test.js +121 -0
  495. package/dist/commands/history.test.js.map +1 -0
  496. package/dist/commands/init.d.ts +29 -2
  497. package/dist/commands/init.d.ts.map +1 -1
  498. package/dist/commands/init.js +178 -21
  499. package/dist/commands/init.js.map +1 -1
  500. package/dist/commands/login.d.ts.map +1 -1
  501. package/dist/commands/login.js +25 -20
  502. package/dist/commands/login.js.map +1 -1
  503. package/dist/commands/method.d.ts +5 -97
  504. package/dist/commands/method.d.ts.map +1 -1
  505. package/dist/commands/method.js +47 -765
  506. package/dist/commands/method.js.map +1 -1
  507. package/dist/commands/organisation.d.ts +12 -0
  508. package/dist/commands/organisation.d.ts.map +1 -0
  509. package/dist/commands/organisation.js +143 -0
  510. package/dist/commands/organisation.js.map +1 -0
  511. package/dist/commands/organisation.test.d.ts +2 -0
  512. package/dist/commands/organisation.test.d.ts.map +1 -0
  513. package/dist/commands/organisation.test.js +116 -0
  514. package/dist/commands/organisation.test.js.map +1 -0
  515. package/dist/commands/organisationHierarchy.d.ts +15 -0
  516. package/dist/commands/organisationHierarchy.d.ts.map +1 -0
  517. package/dist/commands/organisationHierarchy.js +102 -0
  518. package/dist/commands/organisationHierarchy.js.map +1 -0
  519. package/dist/commands/organisationHierarchy.test.d.ts +2 -0
  520. package/dist/commands/organisationHierarchy.test.d.ts.map +1 -0
  521. package/dist/commands/organisationHierarchy.test.js +144 -0
  522. package/dist/commands/organisationHierarchy.test.js.map +1 -0
  523. package/dist/commands/organisationWrite.d.ts +20 -0
  524. package/dist/commands/organisationWrite.d.ts.map +1 -0
  525. package/dist/commands/organisationWrite.js +44 -0
  526. package/dist/commands/organisationWrite.js.map +1 -0
  527. package/dist/commands/orient.d.ts +48 -121
  528. package/dist/commands/orient.d.ts.map +1 -1
  529. package/dist/commands/orient.js +146 -40
  530. package/dist/commands/orient.js.map +1 -1
  531. package/dist/commands/outcome.d.ts +96 -0
  532. package/dist/commands/outcome.d.ts.map +1 -0
  533. package/dist/commands/outcome.js +194 -0
  534. package/dist/commands/outcome.js.map +1 -0
  535. package/dist/commands/outcome.test.d.ts +2 -0
  536. package/dist/commands/outcome.test.d.ts.map +1 -0
  537. package/dist/commands/outcome.test.js +326 -0
  538. package/dist/commands/outcome.test.js.map +1 -0
  539. package/dist/commands/people.d.ts +6 -0
  540. package/dist/commands/people.d.ts.map +1 -0
  541. package/dist/commands/people.js +21 -0
  542. package/dist/commands/people.js.map +1 -0
  543. package/dist/commands/people.test.d.ts +2 -0
  544. package/dist/commands/people.test.d.ts.map +1 -0
  545. package/dist/commands/people.test.js +61 -0
  546. package/dist/commands/people.test.js.map +1 -0
  547. package/dist/commands/profile.d.ts +42 -4
  548. package/dist/commands/profile.d.ts.map +1 -1
  549. package/dist/commands/profile.js +222 -36
  550. package/dist/commands/profile.js.map +1 -1
  551. package/dist/commands/quality.d.ts +38 -0
  552. package/dist/commands/quality.d.ts.map +1 -0
  553. package/dist/commands/quality.js +99 -0
  554. package/dist/commands/quality.js.map +1 -0
  555. package/dist/commands/questions.d.ts +27 -0
  556. package/dist/commands/questions.d.ts.map +1 -0
  557. package/dist/commands/questions.js +261 -0
  558. package/dist/commands/questions.js.map +1 -0
  559. package/dist/commands/questions.test.d.ts +2 -0
  560. package/dist/commands/questions.test.d.ts.map +1 -0
  561. package/dist/commands/questions.test.js +238 -0
  562. package/dist/commands/questions.test.js.map +1 -0
  563. package/dist/commands/relate.d.ts +10 -0
  564. package/dist/commands/relate.d.ts.map +1 -1
  565. package/dist/commands/relate.js +119 -26
  566. package/dist/commands/relate.js.map +1 -1
  567. package/dist/commands/restore.d.ts +2 -0
  568. package/dist/commands/restore.d.ts.map +1 -0
  569. package/dist/commands/restore.js +88 -0
  570. package/dist/commands/restore.js.map +1 -0
  571. package/dist/commands/rework.d.ts +24 -0
  572. package/dist/commands/rework.d.ts.map +1 -0
  573. package/dist/commands/rework.js +96 -0
  574. package/dist/commands/rework.js.map +1 -0
  575. package/dist/commands/role.d.ts +90 -0
  576. package/dist/commands/role.d.ts.map +1 -0
  577. package/dist/commands/role.js +172 -0
  578. package/dist/commands/role.js.map +1 -0
  579. package/dist/commands/role.test.d.ts +2 -0
  580. package/dist/commands/role.test.d.ts.map +1 -0
  581. package/dist/commands/role.test.js +345 -0
  582. package/dist/commands/role.test.js.map +1 -0
  583. package/dist/commands/scoreboard.d.ts +23 -0
  584. package/dist/commands/scoreboard.d.ts.map +1 -0
  585. package/dist/commands/scoreboard.js +33 -0
  586. package/dist/commands/scoreboard.js.map +1 -0
  587. package/dist/commands/scoreboard.test.d.ts +2 -0
  588. package/dist/commands/scoreboard.test.d.ts.map +1 -0
  589. package/dist/commands/scoreboard.test.js +51 -0
  590. package/dist/commands/scoreboard.test.js.map +1 -0
  591. package/dist/commands/search.d.ts +2 -1
  592. package/dist/commands/search.d.ts.map +1 -1
  593. package/dist/commands/search.js +6 -7
  594. package/dist/commands/search.js.map +1 -1
  595. package/dist/commands/session-hook.d.ts +38 -0
  596. package/dist/commands/session-hook.d.ts.map +1 -0
  597. package/dist/commands/session-hook.js +97 -0
  598. package/dist/commands/session-hook.js.map +1 -0
  599. package/dist/commands/session-hook.test.d.ts +2 -0
  600. package/dist/commands/session-hook.test.d.ts.map +1 -0
  601. package/dist/commands/session-hook.test.js +89 -0
  602. package/dist/commands/session-hook.test.js.map +1 -0
  603. package/dist/commands/session.d.ts +38 -5
  604. package/dist/commands/session.d.ts.map +1 -1
  605. package/dist/commands/session.js +292 -214
  606. package/dist/commands/session.js.map +1 -1
  607. package/dist/commands/status.d.ts +7 -0
  608. package/dist/commands/status.d.ts.map +1 -0
  609. package/dist/commands/status.js +101 -0
  610. package/dist/commands/status.js.map +1 -0
  611. package/dist/commands/status.test.d.ts +2 -0
  612. package/dist/commands/status.test.d.ts.map +1 -0
  613. package/dist/commands/status.test.js +75 -0
  614. package/dist/commands/status.test.js.map +1 -0
  615. package/dist/commands/stillTrue.d.ts +14 -0
  616. package/dist/commands/stillTrue.d.ts.map +1 -0
  617. package/dist/commands/stillTrue.js +47 -0
  618. package/dist/commands/stillTrue.js.map +1 -0
  619. package/dist/commands/tasksList.d.ts +12 -0
  620. package/dist/commands/tasksList.d.ts.map +1 -0
  621. package/dist/commands/tasksList.js +45 -0
  622. package/dist/commands/tasksList.js.map +1 -0
  623. package/dist/commands/tensionsList.d.ts +5 -0
  624. package/dist/commands/tensionsList.d.ts.map +1 -0
  625. package/dist/commands/tensionsList.js +25 -0
  626. package/dist/commands/tensionsList.js.map +1 -0
  627. package/dist/commands/update.d.ts +23 -0
  628. package/dist/commands/update.d.ts.map +1 -1
  629. package/dist/commands/update.js +198 -48
  630. package/dist/commands/update.js.map +1 -1
  631. package/dist/commands/upgrade.js +9 -9
  632. package/dist/commands/upgrade.js.map +1 -1
  633. package/dist/commands/usage.d.ts.map +1 -1
  634. package/dist/commands/usage.js +0 -18
  635. package/dist/commands/usage.js.map +1 -1
  636. package/dist/commands/verify.d.ts.map +1 -1
  637. package/dist/commands/verify.js +9 -6
  638. package/dist/commands/verify.js.map +1 -1
  639. package/dist/commands/welcome.d.ts.map +1 -1
  640. package/dist/commands/welcome.js +7 -3
  641. package/dist/commands/welcome.js.map +1 -1
  642. package/dist/commands/whoami.d.ts +13 -2
  643. package/dist/commands/whoami.d.ts.map +1 -1
  644. package/dist/commands/whoami.js +82 -20
  645. package/dist/commands/whoami.js.map +1 -1
  646. package/dist/commands/whoami.test.js +101 -6
  647. package/dist/commands/whoami.test.js.map +1 -1
  648. package/dist/commands/workspace.d.ts +7 -74
  649. package/dist/commands/workspace.d.ts.map +1 -1
  650. package/dist/commands/workspace.js +11 -76
  651. package/dist/commands/workspace.js.map +1 -1
  652. package/dist/formatters/__tests__/orient-openTasks.test.d.ts +2 -0
  653. package/dist/formatters/__tests__/orient-openTasks.test.d.ts.map +1 -0
  654. package/dist/formatters/__tests__/orient-openTasks.test.js +77 -0
  655. package/dist/formatters/__tests__/orient-openTasks.test.js.map +1 -0
  656. package/dist/formatters/__tests__/orient-plannedWorkCut.test.d.ts +2 -0
  657. package/dist/formatters/__tests__/orient-plannedWorkCut.test.d.ts.map +1 -0
  658. package/dist/formatters/__tests__/orient-plannedWorkCut.test.js +38 -0
  659. package/dist/formatters/__tests__/orient-plannedWorkCut.test.js.map +1 -0
  660. package/dist/formatters/__tests__/orient-provenance.test.d.ts +2 -3
  661. package/dist/formatters/__tests__/orient-provenance.test.d.ts.map +1 -1
  662. package/dist/formatters/__tests__/orient-provenance.test.js +41 -183
  663. package/dist/formatters/__tests__/orient-provenance.test.js.map +1 -1
  664. package/dist/formatters/__tests__/orient-ruleLists.test.d.ts +2 -0
  665. package/dist/formatters/__tests__/orient-ruleLists.test.d.ts.map +1 -0
  666. package/dist/formatters/__tests__/orient-ruleLists.test.js +93 -0
  667. package/dist/formatters/__tests__/orient-ruleLists.test.js.map +1 -0
  668. package/dist/formatters/__tests__/orient-workPackageList.test.d.ts +2 -0
  669. package/dist/formatters/__tests__/orient-workPackageList.test.d.ts.map +1 -0
  670. package/dist/formatters/__tests__/orient-workPackageList.test.js +69 -0
  671. package/dist/formatters/__tests__/orient-workPackageList.test.js.map +1 -0
  672. package/dist/formatters/__tests__/session-list-show.test.d.ts +2 -0
  673. package/dist/formatters/__tests__/session-list-show.test.d.ts.map +1 -0
  674. package/dist/formatters/__tests__/session-list-show.test.js +195 -0
  675. package/dist/formatters/__tests__/session-list-show.test.js.map +1 -0
  676. package/dist/formatters/__tests__/session.test.js +203 -43
  677. package/dist/formatters/__tests__/session.test.js.map +1 -1
  678. package/dist/formatters/__tests__/tensionsList.test.d.ts +2 -0
  679. package/dist/formatters/__tests__/tensionsList.test.d.ts.map +1 -0
  680. package/dist/formatters/__tests__/tensionsList.test.js +30 -0
  681. package/dist/formatters/__tests__/tensionsList.test.js.map +1 -0
  682. package/dist/formatters/brief.d.ts +7 -15
  683. package/dist/formatters/brief.d.ts.map +1 -1
  684. package/dist/formatters/brief.js +18 -15
  685. package/dist/formatters/brief.js.map +1 -1
  686. package/dist/formatters/brief.test.d.ts +2 -0
  687. package/dist/formatters/brief.test.d.ts.map +1 -0
  688. package/dist/formatters/brief.test.js +33 -0
  689. package/dist/formatters/brief.test.js.map +1 -0
  690. package/dist/formatters/capture.d.ts +26 -17
  691. package/dist/formatters/capture.d.ts.map +1 -1
  692. package/dist/formatters/capture.js +44 -19
  693. package/dist/formatters/capture.js.map +1 -1
  694. package/dist/formatters/coaching.d.ts +59 -0
  695. package/dist/formatters/coaching.d.ts.map +1 -0
  696. package/dist/formatters/coaching.js +51 -0
  697. package/dist/formatters/coaching.js.map +1 -0
  698. package/dist/formatters/collections.d.ts +0 -1
  699. package/dist/formatters/collections.d.ts.map +1 -1
  700. package/dist/formatters/collections.js +14 -5
  701. package/dist/formatters/collections.js.map +1 -1
  702. package/dist/formatters/conflicts.d.ts +81 -0
  703. package/dist/formatters/conflicts.d.ts.map +1 -0
  704. package/dist/formatters/conflicts.js +102 -0
  705. package/dist/formatters/conflicts.js.map +1 -0
  706. package/dist/formatters/conflicts.test.d.ts +2 -0
  707. package/dist/formatters/conflicts.test.d.ts.map +1 -0
  708. package/dist/formatters/conflicts.test.js +179 -0
  709. package/dist/formatters/conflicts.test.js.map +1 -0
  710. package/dist/formatters/constellation.d.ts +2 -0
  711. package/dist/formatters/constellation.d.ts.map +1 -1
  712. package/dist/formatters/constellation.js +2 -0
  713. package/dist/formatters/constellation.js.map +1 -1
  714. package/dist/formatters/context.d.ts +1 -1
  715. package/dist/formatters/context.d.ts.map +1 -1
  716. package/dist/formatters/context.js.map +1 -1
  717. package/dist/formatters/direction.d.ts +48 -0
  718. package/dist/formatters/direction.d.ts.map +1 -0
  719. package/dist/formatters/direction.js +75 -0
  720. package/dist/formatters/direction.js.map +1 -0
  721. package/dist/formatters/direction.test.d.ts +2 -0
  722. package/dist/formatters/direction.test.d.ts.map +1 -0
  723. package/dist/formatters/direction.test.js +70 -0
  724. package/dist/formatters/direction.test.js.map +1 -0
  725. package/dist/formatters/entry.d.ts +77 -3
  726. package/dist/formatters/entry.d.ts.map +1 -1
  727. package/dist/formatters/entry.js +79 -8
  728. package/dist/formatters/entry.js.map +1 -1
  729. package/dist/formatters/entryAccept.d.ts +86 -0
  730. package/dist/formatters/entryAccept.d.ts.map +1 -0
  731. package/dist/formatters/entryAccept.js +78 -0
  732. package/dist/formatters/entryAccept.js.map +1 -0
  733. package/dist/formatters/feedback.d.ts +61 -0
  734. package/dist/formatters/feedback.d.ts.map +1 -0
  735. package/dist/formatters/feedback.js +95 -0
  736. package/dist/formatters/feedback.js.map +1 -0
  737. package/dist/formatters/feedback.test.d.ts +2 -0
  738. package/dist/formatters/feedback.test.d.ts.map +1 -0
  739. package/dist/formatters/feedback.test.js +142 -0
  740. package/dist/formatters/feedback.test.js.map +1 -0
  741. package/dist/formatters/fields.d.ts +7 -1
  742. package/dist/formatters/fields.d.ts.map +1 -1
  743. package/dist/formatters/fields.js +9 -3
  744. package/dist/formatters/fields.js.map +1 -1
  745. package/dist/formatters/fields.test.d.ts +2 -0
  746. package/dist/formatters/fields.test.d.ts.map +1 -0
  747. package/dist/formatters/fields.test.js +42 -0
  748. package/dist/formatters/fields.test.js.map +1 -0
  749. package/dist/formatters/orient.coherencyCheckTag.test.d.ts +2 -0
  750. package/dist/formatters/orient.coherencyCheckTag.test.d.ts.map +1 -0
  751. package/dist/formatters/orient.coherencyCheckTag.test.js +22 -0
  752. package/dist/formatters/orient.coherencyCheckTag.test.js.map +1 -0
  753. package/dist/formatters/orient.d.ts +101 -170
  754. package/dist/formatters/orient.d.ts.map +1 -1
  755. package/dist/formatters/orient.js +158 -240
  756. package/dist/formatters/orient.js.map +1 -1
  757. package/dist/formatters/orient.rcrtMiss.test.d.ts +2 -0
  758. package/dist/formatters/orient.rcrtMiss.test.d.ts.map +1 -0
  759. package/dist/formatters/orient.rcrtMiss.test.js +75 -0
  760. package/dist/formatters/orient.rcrtMiss.test.js.map +1 -0
  761. package/dist/formatters/orient.rituals.test.d.ts +2 -0
  762. package/dist/formatters/orient.rituals.test.d.ts.map +1 -0
  763. package/dist/formatters/orient.rituals.test.js +70 -0
  764. package/dist/formatters/orient.rituals.test.js.map +1 -0
  765. package/dist/formatters/orient.taskAlignment.test.d.ts +2 -0
  766. package/dist/formatters/orient.taskAlignment.test.d.ts.map +1 -0
  767. package/dist/formatters/orient.taskAlignment.test.js +52 -0
  768. package/dist/formatters/orient.taskAlignment.test.js.map +1 -0
  769. package/dist/formatters/orientDegradation.d.ts +35 -0
  770. package/dist/formatters/orientDegradation.d.ts.map +1 -0
  771. package/dist/formatters/orientDegradation.js +47 -0
  772. package/dist/formatters/orientDegradation.js.map +1 -0
  773. package/dist/formatters/orientDegradation.test.d.ts +2 -0
  774. package/dist/formatters/orientDegradation.test.d.ts.map +1 -0
  775. package/dist/formatters/orientDegradation.test.js +26 -0
  776. package/dist/formatters/orientDegradation.test.js.map +1 -0
  777. package/dist/formatters/orientDirection.d.ts +25 -0
  778. package/dist/formatters/orientDirection.d.ts.map +1 -0
  779. package/dist/formatters/orientDirection.js +7 -0
  780. package/dist/formatters/orientDirection.js.map +1 -0
  781. package/dist/formatters/orientDirection.test.d.ts +2 -0
  782. package/dist/formatters/orientDirection.test.d.ts.map +1 -0
  783. package/dist/formatters/orientDirection.test.js +66 -0
  784. package/dist/formatters/orientDirection.test.js.map +1 -0
  785. package/dist/formatters/orientRetrievalMiss.d.ts +22 -0
  786. package/dist/formatters/orientRetrievalMiss.d.ts.map +1 -0
  787. package/dist/formatters/orientRetrievalMiss.js +17 -0
  788. package/dist/formatters/orientRetrievalMiss.js.map +1 -0
  789. package/dist/formatters/plannedWorkCounts.d.ts +16 -0
  790. package/dist/formatters/plannedWorkCounts.d.ts.map +1 -0
  791. package/dist/formatters/plannedWorkCounts.js +15 -0
  792. package/dist/formatters/plannedWorkCounts.js.map +1 -0
  793. package/dist/formatters/qualityChecks.d.ts +21 -0
  794. package/dist/formatters/qualityChecks.d.ts.map +1 -0
  795. package/dist/formatters/qualityChecks.js +132 -0
  796. package/dist/formatters/qualityChecks.js.map +1 -0
  797. package/dist/formatters/questions.d.ts +90 -0
  798. package/dist/formatters/questions.d.ts.map +1 -0
  799. package/dist/formatters/questions.js +126 -0
  800. package/dist/formatters/questions.js.map +1 -0
  801. package/dist/formatters/questions.test.d.ts +2 -0
  802. package/dist/formatters/questions.test.d.ts.map +1 -0
  803. package/dist/formatters/questions.test.js +176 -0
  804. package/dist/formatters/questions.test.js.map +1 -0
  805. package/dist/formatters/relate.d.ts +13 -2
  806. package/dist/formatters/relate.d.ts.map +1 -1
  807. package/dist/formatters/relate.js +15 -5
  808. package/dist/formatters/relate.js.map +1 -1
  809. package/dist/formatters/relate.test.d.ts +2 -0
  810. package/dist/formatters/relate.test.d.ts.map +1 -0
  811. package/dist/formatters/relate.test.js +91 -0
  812. package/dist/formatters/relate.test.js.map +1 -0
  813. package/dist/formatters/scoreboard.d.ts +11 -0
  814. package/dist/formatters/scoreboard.d.ts.map +1 -0
  815. package/dist/formatters/scoreboard.js +143 -0
  816. package/dist/formatters/scoreboard.js.map +1 -0
  817. package/dist/formatters/scoreboard.test.d.ts +2 -0
  818. package/dist/formatters/scoreboard.test.d.ts.map +1 -0
  819. package/dist/formatters/scoreboard.test.js +262 -0
  820. package/dist/formatters/scoreboard.test.js.map +1 -0
  821. package/dist/formatters/search.d.ts +24 -0
  822. package/dist/formatters/search.d.ts.map +1 -1
  823. package/dist/formatters/search.js +26 -11
  824. package/dist/formatters/search.js.map +1 -1
  825. package/dist/formatters/search.test.d.ts +2 -0
  826. package/dist/formatters/search.test.d.ts.map +1 -0
  827. package/dist/formatters/search.test.js +86 -0
  828. package/dist/formatters/search.test.js.map +1 -0
  829. package/dist/formatters/session-feedback.test.d.ts +2 -0
  830. package/dist/formatters/session-feedback.test.d.ts.map +1 -0
  831. package/dist/formatters/session-feedback.test.js +274 -0
  832. package/dist/formatters/session-feedback.test.js.map +1 -0
  833. package/dist/formatters/session.d.ts +106 -13
  834. package/dist/formatters/session.d.ts.map +1 -1
  835. package/dist/formatters/session.js +286 -83
  836. package/dist/formatters/session.js.map +1 -1
  837. package/dist/formatters/spineCheck.d.ts +14 -0
  838. package/dist/formatters/spineCheck.d.ts.map +1 -0
  839. package/dist/formatters/spineCheck.js +128 -0
  840. package/dist/formatters/spineCheck.js.map +1 -0
  841. package/dist/formatters/spineCheck.test.d.ts +2 -0
  842. package/dist/formatters/spineCheck.test.d.ts.map +1 -0
  843. package/dist/formatters/spineCheck.test.js +85 -0
  844. package/dist/formatters/spineCheck.test.js.map +1 -0
  845. package/dist/formatters/tensionsList.d.ts +17 -0
  846. package/dist/formatters/tensionsList.d.ts.map +1 -0
  847. package/dist/formatters/tensionsList.js +33 -0
  848. package/dist/formatters/tensionsList.js.map +1 -0
  849. package/dist/formatters/update.d.ts +26 -0
  850. package/dist/formatters/update.d.ts.map +1 -1
  851. package/dist/formatters/update.js +39 -7
  852. package/dist/formatters/update.js.map +1 -1
  853. package/dist/formatters/update.test.d.ts +2 -0
  854. package/dist/formatters/update.test.d.ts.map +1 -0
  855. package/dist/formatters/update.test.js +71 -0
  856. package/dist/formatters/update.test.js.map +1 -0
  857. package/dist/formatters/verify.d.ts +12 -4
  858. package/dist/formatters/verify.d.ts.map +1 -1
  859. package/dist/formatters/verify.js +20 -2
  860. package/dist/formatters/verify.js.map +1 -1
  861. package/dist/generated/healthGapKinds.generated.d.ts +12 -0
  862. package/dist/generated/healthGapKinds.generated.d.ts.map +1 -0
  863. package/dist/generated/healthGapKinds.generated.js +16 -0
  864. package/dist/generated/healthGapKinds.generated.js.map +1 -0
  865. package/dist/generated/organisationalAuthorityRefusalCodes.generated.d.ts +12 -0
  866. package/dist/generated/organisationalAuthorityRefusalCodes.generated.d.ts.map +1 -0
  867. package/dist/generated/organisationalAuthorityRefusalCodes.generated.js +11 -0
  868. package/dist/generated/organisationalAuthorityRefusalCodes.generated.js.map +1 -0
  869. package/dist/generated/routeLatencyBudget.generated.d.ts +54 -0
  870. package/dist/generated/routeLatencyBudget.generated.d.ts.map +1 -0
  871. package/dist/generated/routeLatencyBudget.generated.js +255 -0
  872. package/dist/generated/routeLatencyBudget.generated.js.map +1 -0
  873. package/dist/handleCliError.d.ts +30 -0
  874. package/dist/handleCliError.d.ts.map +1 -0
  875. package/dist/handleCliError.js +91 -0
  876. package/dist/handleCliError.js.map +1 -0
  877. package/dist/index.d.ts +0 -5
  878. package/dist/index.d.ts.map +1 -1
  879. package/dist/index.js +189 -665
  880. package/dist/index.js.map +1 -1
  881. package/dist/lib/__tests__/parseFields.test.d.ts +2 -0
  882. package/dist/lib/__tests__/parseFields.test.d.ts.map +1 -0
  883. package/dist/lib/__tests__/parseFields.test.js +40 -0
  884. package/dist/lib/__tests__/parseFields.test.js.map +1 -0
  885. package/dist/lib/adminConfig.d.ts +48 -0
  886. package/dist/lib/adminConfig.d.ts.map +1 -0
  887. package/dist/lib/adminConfig.js +126 -0
  888. package/dist/lib/adminConfig.js.map +1 -0
  889. package/dist/lib/canonicalRefs.d.ts +28 -14
  890. package/dist/lib/canonicalRefs.d.ts.map +1 -1
  891. package/dist/lib/canonicalRefs.js +9 -28
  892. package/dist/lib/canonicalRefs.js.map +1 -1
  893. package/dist/lib/captureLink.d.ts +7 -0
  894. package/dist/lib/captureLink.d.ts.map +1 -0
  895. package/dist/lib/captureLink.js +29 -0
  896. package/dist/lib/captureLink.js.map +1 -0
  897. package/dist/lib/checklist.d.ts +151 -0
  898. package/dist/lib/checklist.d.ts.map +1 -0
  899. package/dist/lib/checklist.js +235 -0
  900. package/dist/lib/checklist.js.map +1 -0
  901. package/dist/lib/cliFirstRun.d.ts +36 -0
  902. package/dist/lib/cliFirstRun.d.ts.map +1 -0
  903. package/dist/lib/cliFirstRun.js +36 -0
  904. package/dist/lib/cliFirstRun.js.map +1 -0
  905. package/dist/lib/client.d.ts +30 -27
  906. package/dist/lib/client.d.ts.map +1 -1
  907. package/dist/lib/client.js +250 -110
  908. package/dist/lib/client.js.map +1 -1
  909. package/dist/lib/compose-wrapup-view.d.ts +23 -5
  910. package/dist/lib/compose-wrapup-view.d.ts.map +1 -1
  911. package/dist/lib/compose-wrapup-view.js +6 -4
  912. package/dist/lib/compose-wrapup-view.js.map +1 -1
  913. package/dist/lib/config.d.ts +58 -117
  914. package/dist/lib/config.d.ts.map +1 -1
  915. package/dist/lib/config.js +154 -402
  916. package/dist/lib/config.js.map +1 -1
  917. package/dist/lib/configResult.d.ts +110 -0
  918. package/dist/lib/configResult.d.ts.map +1 -0
  919. package/dist/lib/configResult.js +189 -0
  920. package/dist/lib/configResult.js.map +1 -0
  921. package/dist/lib/conflictResolution.d.ts +37 -0
  922. package/dist/lib/conflictResolution.d.ts.map +1 -0
  923. package/dist/lib/conflictResolution.js +29 -0
  924. package/dist/lib/conflictResolution.js.map +1 -0
  925. package/dist/lib/connectKeyLabel.d.ts +2 -2
  926. package/dist/lib/connectKeyLabel.js +2 -2
  927. package/dist/lib/connectProfileName.d.ts +36 -0
  928. package/dist/lib/connectProfileName.d.ts.map +1 -0
  929. package/dist/lib/connectProfileName.js +72 -0
  930. package/dist/lib/connectProfileName.js.map +1 -0
  931. package/dist/lib/connectProfileName.test.d.ts +2 -0
  932. package/dist/lib/connectProfileName.test.d.ts.map +1 -0
  933. package/dist/lib/connectProfileName.test.js +100 -0
  934. package/dist/lib/connectProfileName.test.js.map +1 -0
  935. package/dist/lib/constants.d.ts +7 -2
  936. package/dist/lib/constants.d.ts.map +1 -1
  937. package/dist/lib/constants.js +9 -2
  938. package/dist/lib/constants.js.map +1 -1
  939. package/dist/lib/conversation.d.ts +48 -0
  940. package/dist/lib/conversation.d.ts.map +1 -0
  941. package/dist/lib/conversation.js +136 -0
  942. package/dist/lib/conversation.js.map +1 -0
  943. package/dist/lib/createEntryResult.d.ts +34 -0
  944. package/dist/lib/createEntryResult.d.ts.map +1 -0
  945. package/dist/lib/createEntryResult.js +12 -0
  946. package/dist/lib/createEntryResult.js.map +1 -0
  947. package/dist/lib/deployment.js +2 -2
  948. package/dist/lib/deployment.js.map +1 -1
  949. package/dist/lib/deployment.test.js +20 -1
  950. package/dist/lib/deployment.test.js.map +1 -1
  951. package/dist/lib/envKeySnapshot.d.ts +10 -0
  952. package/dist/lib/envKeySnapshot.d.ts.map +1 -0
  953. package/dist/lib/envKeySnapshot.js +30 -0
  954. package/dist/lib/envKeySnapshot.js.map +1 -0
  955. package/dist/lib/errors.d.ts +91 -1
  956. package/dist/lib/errors.d.ts.map +1 -1
  957. package/dist/lib/errors.js +87 -1
  958. package/dist/lib/errors.js.map +1 -1
  959. package/dist/lib/gatewayTimeout.d.ts +88 -0
  960. package/dist/lib/gatewayTimeout.d.ts.map +1 -0
  961. package/dist/lib/gatewayTimeout.js +124 -0
  962. package/dist/lib/gatewayTimeout.js.map +1 -0
  963. package/dist/lib/gitEnvLeakKeysParity.test.d.ts +2 -0
  964. package/dist/lib/gitEnvLeakKeysParity.test.d.ts.map +1 -0
  965. package/dist/lib/gitEnvLeakKeysParity.test.js +73 -0
  966. package/dist/lib/gitEnvLeakKeysParity.test.js.map +1 -0
  967. package/dist/lib/glossary.d.ts +3 -15
  968. package/dist/lib/glossary.d.ts.map +1 -1
  969. package/dist/lib/glossary.js +6 -47
  970. package/dist/lib/glossary.js.map +1 -1
  971. package/dist/lib/judgeWait.d.ts +50 -0
  972. package/dist/lib/judgeWait.d.ts.map +1 -0
  973. package/dist/lib/judgeWait.js +64 -0
  974. package/dist/lib/judgeWait.js.map +1 -0
  975. package/dist/lib/kernelEnvelope.d.ts +61 -0
  976. package/dist/lib/kernelEnvelope.d.ts.map +1 -0
  977. package/dist/lib/kernelEnvelope.js +98 -0
  978. package/dist/lib/kernelEnvelope.js.map +1 -0
  979. package/dist/lib/keyResultLines.d.ts +27 -0
  980. package/dist/lib/keyResultLines.d.ts.map +1 -0
  981. package/dist/lib/keyResultLines.js +32 -0
  982. package/dist/lib/keyResultLines.js.map +1 -0
  983. package/dist/lib/limits.d.ts +88 -0
  984. package/dist/lib/limits.d.ts.map +1 -0
  985. package/dist/lib/limits.js +141 -0
  986. package/dist/lib/limits.js.map +1 -0
  987. package/dist/lib/localBinding.d.ts +86 -0
  988. package/dist/lib/localBinding.d.ts.map +1 -0
  989. package/dist/lib/localBinding.js +173 -0
  990. package/dist/lib/localBinding.js.map +1 -0
  991. package/dist/lib/nameFromText.d.ts +15 -0
  992. package/dist/lib/nameFromText.d.ts.map +1 -0
  993. package/dist/lib/nameFromText.js +36 -0
  994. package/dist/lib/nameFromText.js.map +1 -0
  995. package/dist/lib/notice-marker.d.ts.map +1 -1
  996. package/dist/lib/notice-marker.js +186 -16
  997. package/dist/lib/notice-marker.js.map +1 -1
  998. package/dist/lib/outcomeObjectiveLines.d.ts +34 -0
  999. package/dist/lib/outcomeObjectiveLines.d.ts.map +1 -0
  1000. package/dist/lib/outcomeObjectiveLines.js +30 -0
  1001. package/dist/lib/outcomeObjectiveLines.js.map +1 -0
  1002. package/dist/lib/ownerLine.d.ts +90 -0
  1003. package/dist/lib/ownerLine.d.ts.map +1 -0
  1004. package/dist/lib/ownerLine.js +77 -0
  1005. package/dist/lib/ownerLine.js.map +1 -0
  1006. package/dist/lib/parseFields.d.ts +19 -0
  1007. package/dist/lib/parseFields.d.ts.map +1 -0
  1008. package/dist/lib/parseFields.js +49 -0
  1009. package/dist/lib/parseFields.js.map +1 -0
  1010. package/dist/lib/pinnedRole.d.ts +29 -0
  1011. package/dist/lib/pinnedRole.d.ts.map +1 -0
  1012. package/dist/lib/pinnedRole.js +115 -0
  1013. package/dist/lib/pinnedRole.js.map +1 -0
  1014. package/dist/lib/platformGlossary.d.ts +22 -0
  1015. package/dist/lib/platformGlossary.d.ts.map +1 -0
  1016. package/dist/lib/platformGlossary.js +26 -0
  1017. package/dist/lib/platformGlossary.js.map +1 -0
  1018. package/dist/lib/previewBanner.d.ts +9 -0
  1019. package/dist/lib/previewBanner.d.ts.map +1 -0
  1020. package/dist/lib/previewBanner.js +36 -0
  1021. package/dist/lib/previewBanner.js.map +1 -0
  1022. package/dist/lib/priority.d.ts +64 -0
  1023. package/dist/lib/priority.d.ts.map +1 -0
  1024. package/dist/lib/priority.js +31 -0
  1025. package/dist/lib/priority.js.map +1 -0
  1026. package/dist/lib/privateFile.d.ts +13 -0
  1027. package/dist/lib/privateFile.d.ts.map +1 -0
  1028. package/dist/lib/privateFile.js +65 -0
  1029. package/dist/lib/privateFile.js.map +1 -0
  1030. package/dist/lib/privateFile.test.d.ts +2 -0
  1031. package/dist/lib/privateFile.test.d.ts.map +1 -0
  1032. package/dist/lib/privateFile.test.js +76 -0
  1033. package/dist/lib/privateFile.test.js.map +1 -0
  1034. package/dist/lib/productbrain-files.d.ts +108 -0
  1035. package/dist/lib/productbrain-files.d.ts.map +1 -0
  1036. package/dist/lib/productbrain-files.js +240 -0
  1037. package/dist/lib/productbrain-files.js.map +1 -0
  1038. package/dist/lib/productbrain-files.test.d.ts +2 -0
  1039. package/dist/lib/productbrain-files.test.d.ts.map +1 -0
  1040. package/dist/lib/productbrain-files.test.js +518 -0
  1041. package/dist/lib/productbrain-files.test.js.map +1 -0
  1042. package/dist/lib/profiles.d.ts +52 -4
  1043. package/dist/lib/profiles.d.ts.map +1 -1
  1044. package/dist/lib/profiles.js +75 -23
  1045. package/dist/lib/profiles.js.map +1 -1
  1046. package/dist/lib/projectConfig.d.ts +130 -0
  1047. package/dist/lib/projectConfig.d.ts.map +1 -0
  1048. package/dist/lib/projectConfig.js +252 -0
  1049. package/dist/lib/projectConfig.js.map +1 -0
  1050. package/dist/lib/prompts.d.ts +2 -0
  1051. package/dist/lib/prompts.d.ts.map +1 -1
  1052. package/dist/lib/prompts.js +2 -0
  1053. package/dist/lib/prompts.js.map +1 -1
  1054. package/dist/lib/proseBody.d.ts +14 -0
  1055. package/dist/lib/proseBody.d.ts.map +1 -0
  1056. package/dist/lib/proseBody.js +25 -0
  1057. package/dist/lib/proseBody.js.map +1 -0
  1058. package/dist/lib/rate-limit.d.ts +40 -0
  1059. package/dist/lib/rate-limit.d.ts.map +1 -0
  1060. package/dist/lib/rate-limit.js +89 -0
  1061. package/dist/lib/rate-limit.js.map +1 -0
  1062. package/dist/lib/readinessNotices.d.ts +2 -0
  1063. package/dist/lib/readinessNotices.d.ts.map +1 -0
  1064. package/dist/lib/readinessNotices.js +12 -0
  1065. package/dist/lib/readinessNotices.js.map +1 -0
  1066. package/dist/lib/reportedProfile.d.ts +18 -0
  1067. package/dist/lib/reportedProfile.d.ts.map +1 -0
  1068. package/dist/lib/reportedProfile.js +148 -0
  1069. package/dist/lib/reportedProfile.js.map +1 -0
  1070. package/dist/lib/restsOn.d.ts +33 -0
  1071. package/dist/lib/restsOn.d.ts.map +1 -0
  1072. package/dist/lib/restsOn.js +34 -0
  1073. package/dist/lib/restsOn.js.map +1 -0
  1074. package/dist/lib/routeCommandWords.d.ts +13 -0
  1075. package/dist/lib/routeCommandWords.d.ts.map +1 -0
  1076. package/dist/lib/routeCommandWords.js +27 -0
  1077. package/dist/lib/routeCommandWords.js.map +1 -0
  1078. package/dist/lib/ruleListRender.d.ts +315 -0
  1079. package/dist/lib/ruleListRender.d.ts.map +1 -0
  1080. package/dist/lib/ruleListRender.js +386 -0
  1081. package/dist/lib/ruleListRender.js.map +1 -0
  1082. package/dist/lib/runner.d.ts +9 -1
  1083. package/dist/lib/runner.d.ts.map +1 -1
  1084. package/dist/lib/runner.js +30 -4
  1085. package/dist/lib/runner.js.map +1 -1
  1086. package/dist/lib/seatRoster.d.ts +65 -0
  1087. package/dist/lib/seatRoster.d.ts.map +1 -0
  1088. package/dist/lib/seatRoster.js +41 -0
  1089. package/dist/lib/seatRoster.js.map +1 -0
  1090. package/dist/lib/seatSentence.d.ts +196 -0
  1091. package/dist/lib/seatSentence.d.ts.map +1 -0
  1092. package/dist/lib/seatSentence.js +214 -0
  1093. package/dist/lib/seatSentence.js.map +1 -0
  1094. package/dist/lib/session.d.ts +84 -12
  1095. package/dist/lib/session.d.ts.map +1 -1
  1096. package/dist/lib/session.js +238 -24
  1097. package/dist/lib/session.js.map +1 -1
  1098. package/dist/lib/sessionBinding.d.ts +62 -0
  1099. package/dist/lib/sessionBinding.d.ts.map +1 -0
  1100. package/dist/lib/sessionBinding.js +126 -0
  1101. package/dist/lib/sessionBinding.js.map +1 -0
  1102. package/dist/lib/sessionNotices.d.ts +52 -0
  1103. package/dist/lib/sessionNotices.d.ts.map +1 -0
  1104. package/dist/lib/sessionNotices.js +124 -0
  1105. package/dist/lib/sessionNotices.js.map +1 -0
  1106. package/dist/lib/sessionNotices.test.d.ts +2 -0
  1107. package/dist/lib/sessionNotices.test.d.ts.map +1 -0
  1108. package/dist/lib/sessionNotices.test.js +53 -0
  1109. package/dist/lib/sessionNotices.test.js.map +1 -0
  1110. package/dist/lib/sessionOpen.d.ts +26 -0
  1111. package/dist/lib/sessionOpen.d.ts.map +1 -0
  1112. package/dist/lib/sessionOpen.js +56 -0
  1113. package/dist/lib/sessionOpen.js.map +1 -0
  1114. package/dist/lib/sessionStartCommands.d.ts +5 -0
  1115. package/dist/lib/sessionStartCommands.d.ts.map +1 -0
  1116. package/dist/lib/sessionStartCommands.js +12 -0
  1117. package/dist/lib/sessionStartCommands.js.map +1 -0
  1118. package/dist/lib/sessionStartWords.d.ts +18 -0
  1119. package/dist/lib/sessionStartWords.d.ts.map +1 -0
  1120. package/dist/lib/sessionStartWords.js +34 -0
  1121. package/dist/lib/sessionStartWords.js.map +1 -0
  1122. package/dist/lib/spineRungs.d.ts +44 -0
  1123. package/dist/lib/spineRungs.d.ts.map +1 -0
  1124. package/dist/lib/spineRungs.js +19 -0
  1125. package/dist/lib/spineRungs.js.map +1 -0
  1126. package/dist/lib/spineVerdictRead.d.ts +76 -0
  1127. package/dist/lib/spineVerdictRead.d.ts.map +1 -0
  1128. package/dist/lib/spineVerdictRead.js +76 -0
  1129. package/dist/lib/spineVerdictRead.js.map +1 -0
  1130. package/dist/lib/spinner.js +2 -2
  1131. package/dist/lib/spinner.js.map +1 -1
  1132. package/dist/lib/startup-signals.d.ts +12 -0
  1133. package/dist/lib/startup-signals.d.ts.map +1 -0
  1134. package/dist/lib/startup-signals.js +173 -0
  1135. package/dist/lib/startup-signals.js.map +1 -0
  1136. package/dist/lib/startup-signals.test.d.ts +2 -0
  1137. package/dist/lib/startup-signals.test.d.ts.map +1 -0
  1138. package/dist/lib/startup-signals.test.js +165 -0
  1139. package/dist/lib/startup-signals.test.js.map +1 -0
  1140. package/dist/lib/state.d.ts +11 -2
  1141. package/dist/lib/state.d.ts.map +1 -1
  1142. package/dist/lib/state.js +11 -4
  1143. package/dist/lib/state.js.map +1 -1
  1144. package/dist/lib/statusCategories.d.ts +168 -0
  1145. package/dist/lib/statusCategories.d.ts.map +1 -0
  1146. package/dist/lib/statusCategories.js +299 -0
  1147. package/dist/lib/statusCategories.js.map +1 -0
  1148. package/dist/lib/strip.d.ts +17 -0
  1149. package/dist/lib/strip.d.ts.map +1 -1
  1150. package/dist/lib/strip.js +48 -1
  1151. package/dist/lib/strip.js.map +1 -1
  1152. package/dist/lib/style.d.ts +18 -5
  1153. package/dist/lib/style.d.ts.map +1 -1
  1154. package/dist/lib/style.js +34 -20
  1155. package/dist/lib/style.js.map +1 -1
  1156. package/dist/lib/style.test.js +1 -2
  1157. package/dist/lib/style.test.js.map +1 -1
  1158. package/dist/lib/tokenConstants.d.ts +14 -2
  1159. package/dist/lib/tokenConstants.d.ts.map +1 -1
  1160. package/dist/lib/tokenConstants.js +17 -2
  1161. package/dist/lib/tokenConstants.js.map +1 -1
  1162. package/dist/lib/update-check.d.ts +3 -8
  1163. package/dist/lib/update-check.d.ts.map +1 -1
  1164. package/dist/lib/update-check.js +11 -46
  1165. package/dist/lib/update-check.js.map +1 -1
  1166. package/dist/lib/upgrade-runner.d.ts +20 -4
  1167. package/dist/lib/upgrade-runner.d.ts.map +1 -1
  1168. package/dist/lib/upgrade-runner.js +67 -37
  1169. package/dist/lib/upgrade-runner.js.map +1 -1
  1170. package/dist/lib/workPackageList.d.ts +138 -0
  1171. package/dist/lib/workPackageList.d.ts.map +1 -0
  1172. package/dist/lib/workPackageList.js +139 -0
  1173. package/dist/lib/workPackageList.js.map +1 -0
  1174. package/dist/lib/workspace-probe.d.ts +9 -0
  1175. package/dist/lib/workspace-probe.d.ts.map +1 -1
  1176. package/dist/lib/workspace-probe.js +1 -8
  1177. package/dist/lib/workspace-probe.js.map +1 -1
  1178. package/dist/lib/workspaceNotice.d.ts +201 -0
  1179. package/dist/lib/workspaceNotice.d.ts.map +1 -0
  1180. package/dist/lib/workspaceNotice.js +346 -0
  1181. package/dist/lib/workspaceNotice.js.map +1 -0
  1182. package/dist/lib/workspaceVocabCache.d.ts +3 -9
  1183. package/dist/lib/workspaceVocabCache.d.ts.map +1 -1
  1184. package/dist/lib/workspaceVocabCache.js +3 -9
  1185. package/dist/lib/workspaceVocabCache.js.map +1 -1
  1186. package/dist/registerEntryCommands.d.ts +18 -0
  1187. package/dist/registerEntryCommands.d.ts.map +1 -0
  1188. package/dist/registerEntryCommands.js +146 -0
  1189. package/dist/registerEntryCommands.js.map +1 -0
  1190. package/dist/registerHistoryCommand.d.ts +8 -0
  1191. package/dist/registerHistoryCommand.d.ts.map +1 -0
  1192. package/dist/registerHistoryCommand.js +14 -0
  1193. package/dist/registerHistoryCommand.js.map +1 -0
  1194. package/dist/registerOutcomeCommands.d.ts +27 -0
  1195. package/dist/registerOutcomeCommands.d.ts.map +1 -0
  1196. package/dist/registerOutcomeCommands.js +27 -0
  1197. package/dist/registerOutcomeCommands.js.map +1 -0
  1198. package/dist/registerRoleCommands.d.ts +11 -0
  1199. package/dist/registerRoleCommands.d.ts.map +1 -0
  1200. package/dist/registerRoleCommands.js +43 -0
  1201. package/dist/registerRoleCommands.js.map +1 -0
  1202. package/dist/registerTensionsCommands.d.ts +11 -0
  1203. package/dist/registerTensionsCommands.d.ts.map +1 -0
  1204. package/dist/registerTensionsCommands.js +28 -0
  1205. package/dist/registerTensionsCommands.js.map +1 -0
  1206. package/dist/scoreboard/diagnose.d.ts +133 -0
  1207. package/dist/scoreboard/diagnose.d.ts.map +1 -0
  1208. package/dist/scoreboard/diagnose.js +150 -0
  1209. package/dist/scoreboard/diagnose.js.map +1 -0
  1210. package/dist/scoreboard/diagnose.test.d.ts +15 -0
  1211. package/dist/scoreboard/diagnose.test.d.ts.map +1 -0
  1212. package/dist/scoreboard/diagnose.test.js +189 -0
  1213. package/dist/scoreboard/diagnose.test.js.map +1 -0
  1214. package/dist/scoreboard/floors.d.ts +34 -0
  1215. package/dist/scoreboard/floors.d.ts.map +1 -0
  1216. package/dist/scoreboard/floors.js +11 -0
  1217. package/dist/scoreboard/floors.js.map +1 -0
  1218. package/dist/served-doors.test.d.ts +2 -0
  1219. package/dist/served-doors.test.d.ts.map +1 -0
  1220. package/dist/served-doors.test.js +169 -0
  1221. package/dist/served-doors.test.js.map +1 -0
  1222. package/package.json +8 -8
  1223. package/dist/__tests__/adapters.test.d.ts +0 -2
  1224. package/dist/__tests__/adapters.test.d.ts.map +0 -1
  1225. package/dist/__tests__/adapters.test.js +0 -417
  1226. package/dist/__tests__/adapters.test.js.map +0 -1
  1227. package/dist/__tests__/audit.test.d.ts +0 -2
  1228. package/dist/__tests__/audit.test.d.ts.map +0 -1
  1229. package/dist/__tests__/audit.test.js +0 -399
  1230. package/dist/__tests__/audit.test.js.map +0 -1
  1231. package/dist/__tests__/authority-domains-queue.test.d.ts +0 -2
  1232. package/dist/__tests__/authority-domains-queue.test.d.ts.map +0 -1
  1233. package/dist/__tests__/authority-domains-queue.test.js +0 -169
  1234. package/dist/__tests__/authority-domains-queue.test.js.map +0 -1
  1235. package/dist/__tests__/authority-domains.test.d.ts +0 -2
  1236. package/dist/__tests__/authority-domains.test.d.ts.map +0 -1
  1237. package/dist/__tests__/authority-domains.test.js +0 -48
  1238. package/dist/__tests__/authority-domains.test.js.map +0 -1
  1239. package/dist/__tests__/batch-transformations.test.d.ts +0 -2
  1240. package/dist/__tests__/batch-transformations.test.d.ts.map +0 -1
  1241. package/dist/__tests__/batch-transformations.test.js +0 -263
  1242. package/dist/__tests__/batch-transformations.test.js.map +0 -1
  1243. package/dist/__tests__/capture-receipt-domain.test.d.ts +0 -2
  1244. package/dist/__tests__/capture-receipt-domain.test.d.ts.map +0 -1
  1245. package/dist/__tests__/capture-receipt-domain.test.js +0 -29
  1246. package/dist/__tests__/capture-receipt-domain.test.js.map +0 -1
  1247. package/dist/__tests__/experiment.test.d.ts +0 -6
  1248. package/dist/__tests__/experiment.test.d.ts.map +0 -1
  1249. package/dist/__tests__/experiment.test.js +0 -69
  1250. package/dist/__tests__/experiment.test.js.map +0 -1
  1251. package/dist/__tests__/handshake-augment.test.d.ts +0 -2
  1252. package/dist/__tests__/handshake-augment.test.d.ts.map +0 -1
  1253. package/dist/__tests__/handshake-augment.test.js +0 -423
  1254. package/dist/__tests__/handshake-augment.test.js.map +0 -1
  1255. package/dist/__tests__/handshake-dormancy.test.d.ts +0 -2
  1256. package/dist/__tests__/handshake-dormancy.test.d.ts.map +0 -1
  1257. package/dist/__tests__/handshake-dormancy.test.js +0 -207
  1258. package/dist/__tests__/handshake-dormancy.test.js.map +0 -1
  1259. package/dist/__tests__/handshake-formatter.test.d.ts +0 -2
  1260. package/dist/__tests__/handshake-formatter.test.d.ts.map +0 -1
  1261. package/dist/__tests__/handshake-formatter.test.js +0 -67
  1262. package/dist/__tests__/handshake-formatter.test.js.map +0 -1
  1263. package/dist/__tests__/handshake-preview.test.d.ts +0 -2
  1264. package/dist/__tests__/handshake-preview.test.d.ts.map +0 -1
  1265. package/dist/__tests__/handshake-preview.test.js +0 -949
  1266. package/dist/__tests__/handshake-preview.test.js.map +0 -1
  1267. package/dist/__tests__/handshake.e2e.test.d.ts +0 -2
  1268. package/dist/__tests__/handshake.e2e.test.d.ts.map +0 -1
  1269. package/dist/__tests__/handshake.e2e.test.js +0 -1252
  1270. package/dist/__tests__/handshake.e2e.test.js.map +0 -1
  1271. package/dist/__tests__/handshake.test.d.ts +0 -2
  1272. package/dist/__tests__/handshake.test.d.ts.map +0 -1
  1273. package/dist/__tests__/handshake.test.js +0 -981
  1274. package/dist/__tests__/handshake.test.js.map +0 -1
  1275. package/dist/__tests__/hook-intents.test.d.ts +0 -2
  1276. package/dist/__tests__/hook-intents.test.d.ts.map +0 -1
  1277. package/dist/__tests__/hook-intents.test.js +0 -184
  1278. package/dist/__tests__/hook-intents.test.js.map +0 -1
  1279. package/dist/__tests__/ingest.test.d.ts +0 -2
  1280. package/dist/__tests__/ingest.test.d.ts.map +0 -1
  1281. package/dist/__tests__/ingest.test.js +0 -185
  1282. package/dist/__tests__/ingest.test.js.map +0 -1
  1283. package/dist/__tests__/manifest.test.d.ts +0 -6
  1284. package/dist/__tests__/manifest.test.d.ts.map +0 -1
  1285. package/dist/__tests__/manifest.test.js +0 -255
  1286. package/dist/__tests__/manifest.test.js.map +0 -1
  1287. package/dist/__tests__/method-registry.integration.test.d.ts +0 -6
  1288. package/dist/__tests__/method-registry.integration.test.d.ts.map +0 -1
  1289. package/dist/__tests__/method-registry.integration.test.js +0 -18
  1290. package/dist/__tests__/method-registry.integration.test.js.map +0 -1
  1291. package/dist/__tests__/method-registry.test.d.ts +0 -14
  1292. package/dist/__tests__/method-registry.test.d.ts.map +0 -1
  1293. package/dist/__tests__/method-registry.test.js +0 -134
  1294. package/dist/__tests__/method-registry.test.js.map +0 -1
  1295. package/dist/__tests__/onboarding-path-b.test.d.ts +0 -2
  1296. package/dist/__tests__/onboarding-path-b.test.d.ts.map +0 -1
  1297. package/dist/__tests__/onboarding-path-b.test.js +0 -46
  1298. package/dist/__tests__/onboarding-path-b.test.js.map +0 -1
  1299. package/dist/__tests__/onboarding.test.d.ts +0 -6
  1300. package/dist/__tests__/onboarding.test.d.ts.map +0 -1
  1301. package/dist/__tests__/onboarding.test.js +0 -347
  1302. package/dist/__tests__/onboarding.test.js.map +0 -1
  1303. package/dist/__tests__/perimeter.test.d.ts +0 -2
  1304. package/dist/__tests__/perimeter.test.d.ts.map +0 -1
  1305. package/dist/__tests__/perimeter.test.js +0 -165
  1306. package/dist/__tests__/perimeter.test.js.map +0 -1
  1307. package/dist/__tests__/personal-layer.test.d.ts +0 -11
  1308. package/dist/__tests__/personal-layer.test.d.ts.map +0 -1
  1309. package/dist/__tests__/personal-layer.test.js +0 -268
  1310. package/dist/__tests__/personal-layer.test.js.map +0 -1
  1311. package/dist/__tests__/promote-batch.test.d.ts +0 -2
  1312. package/dist/__tests__/promote-batch.test.d.ts.map +0 -1
  1313. package/dist/__tests__/promote-batch.test.js +0 -185
  1314. package/dist/__tests__/promote-batch.test.js.map +0 -1
  1315. package/dist/__tests__/promote.test.d.ts +0 -2
  1316. package/dist/__tests__/promote.test.d.ts.map +0 -1
  1317. package/dist/__tests__/promote.test.js +0 -230
  1318. package/dist/__tests__/promote.test.js.map +0 -1
  1319. package/dist/__tests__/proposals.test.d.ts +0 -2
  1320. package/dist/__tests__/proposals.test.d.ts.map +0 -1
  1321. package/dist/__tests__/proposals.test.js +0 -167
  1322. package/dist/__tests__/proposals.test.js.map +0 -1
  1323. package/dist/__tests__/repo-detect.test.d.ts +0 -2
  1324. package/dist/__tests__/repo-detect.test.d.ts.map +0 -1
  1325. package/dist/__tests__/repo-detect.test.js +0 -215
  1326. package/dist/__tests__/repo-detect.test.js.map +0 -1
  1327. package/dist/__tests__/setup-ingest.test.d.ts +0 -2
  1328. package/dist/__tests__/setup-ingest.test.d.ts.map +0 -1
  1329. package/dist/__tests__/setup-ingest.test.js +0 -71
  1330. package/dist/__tests__/setup-ingest.test.js.map +0 -1
  1331. package/dist/__tests__/setup-resolver.test.d.ts +0 -14
  1332. package/dist/__tests__/setup-resolver.test.d.ts.map +0 -1
  1333. package/dist/__tests__/setup-resolver.test.js +0 -228
  1334. package/dist/__tests__/setup-resolver.test.js.map +0 -1
  1335. package/dist/__tests__/surface-profiles.test.d.ts +0 -2
  1336. package/dist/__tests__/surface-profiles.test.d.ts.map +0 -1
  1337. package/dist/__tests__/surface-profiles.test.js +0 -233
  1338. package/dist/__tests__/surface-profiles.test.js.map +0 -1
  1339. package/dist/__tests__/surfaces.test.d.ts +0 -2
  1340. package/dist/__tests__/surfaces.test.d.ts.map +0 -1
  1341. package/dist/__tests__/surfaces.test.js +0 -46
  1342. package/dist/__tests__/surfaces.test.js.map +0 -1
  1343. package/dist/commands/__tests__/connect-handoff.test.d.ts +0 -11
  1344. package/dist/commands/__tests__/connect-handoff.test.d.ts.map +0 -1
  1345. package/dist/commands/__tests__/connect-handoff.test.js +0 -111
  1346. package/dist/commands/__tests__/connect-handoff.test.js.map +0 -1
  1347. package/dist/commands/__tests__/setup-detect-surfaces.test.d.ts +0 -15
  1348. package/dist/commands/__tests__/setup-detect-surfaces.test.d.ts.map +0 -1
  1349. package/dist/commands/__tests__/setup-detect-surfaces.test.js +0 -149
  1350. package/dist/commands/__tests__/setup-detect-surfaces.test.js.map +0 -1
  1351. package/dist/commands/__tests__/setup-state.test.d.ts +0 -2
  1352. package/dist/commands/__tests__/setup-state.test.d.ts.map +0 -1
  1353. package/dist/commands/__tests__/setup-state.test.js +0 -194
  1354. package/dist/commands/__tests__/setup-state.test.js.map +0 -1
  1355. package/dist/commands/accept.d.ts +0 -18
  1356. package/dist/commands/accept.d.ts.map +0 -1
  1357. package/dist/commands/accept.js +0 -76
  1358. package/dist/commands/accept.js.map +0 -1
  1359. package/dist/commands/audit.d.ts +0 -25
  1360. package/dist/commands/audit.d.ts.map +0 -1
  1361. package/dist/commands/audit.js +0 -215
  1362. package/dist/commands/audit.js.map +0 -1
  1363. package/dist/commands/authority-domains.d.ts +0 -157
  1364. package/dist/commands/authority-domains.d.ts.map +0 -1
  1365. package/dist/commands/authority-domains.js +0 -356
  1366. package/dist/commands/authority-domains.js.map +0 -1
  1367. package/dist/commands/brand-pack.d.ts +0 -2
  1368. package/dist/commands/brand-pack.d.ts.map +0 -1
  1369. package/dist/commands/brand-pack.js +0 -25
  1370. package/dist/commands/brand-pack.js.map +0 -1
  1371. package/dist/commands/connect-context.d.ts +0 -45
  1372. package/dist/commands/connect-context.d.ts.map +0 -1
  1373. package/dist/commands/connect-context.js +0 -64
  1374. package/dist/commands/connect-context.js.map +0 -1
  1375. package/dist/commands/connect-context.test.d.ts +0 -2
  1376. package/dist/commands/connect-context.test.d.ts.map +0 -1
  1377. package/dist/commands/connect-context.test.js +0 -110
  1378. package/dist/commands/connect-context.test.js.map +0 -1
  1379. package/dist/commands/connect-handoff.d.ts +0 -51
  1380. package/dist/commands/connect-handoff.d.ts.map +0 -1
  1381. package/dist/commands/connect-handoff.js +0 -70
  1382. package/dist/commands/connect-handoff.js.map +0 -1
  1383. package/dist/commands/handshake.d.ts +0 -249
  1384. package/dist/commands/handshake.d.ts.map +0 -1
  1385. package/dist/commands/handshake.js +0 -2663
  1386. package/dist/commands/handshake.js.map +0 -1
  1387. package/dist/commands/ingest.d.ts +0 -14
  1388. package/dist/commands/ingest.d.ts.map +0 -1
  1389. package/dist/commands/ingest.js +0 -189
  1390. package/dist/commands/ingest.js.map +0 -1
  1391. package/dist/commands/migrate-setup.d.ts +0 -18
  1392. package/dist/commands/migrate-setup.d.ts.map +0 -1
  1393. package/dist/commands/migrate-setup.js +0 -198
  1394. package/dist/commands/migrate-setup.js.map +0 -1
  1395. package/dist/commands/promote.d.ts +0 -15
  1396. package/dist/commands/promote.d.ts.map +0 -1
  1397. package/dist/commands/promote.js +0 -182
  1398. package/dist/commands/promote.js.map +0 -1
  1399. package/dist/commands/proposals.d.ts +0 -9
  1400. package/dist/commands/proposals.d.ts.map +0 -1
  1401. package/dist/commands/proposals.js +0 -24
  1402. package/dist/commands/proposals.js.map +0 -1
  1403. package/dist/commands/reject.d.ts +0 -14
  1404. package/dist/commands/reject.d.ts.map +0 -1
  1405. package/dist/commands/reject.js +0 -44
  1406. package/dist/commands/reject.js.map +0 -1
  1407. package/dist/commands/setup-audit.d.ts +0 -59
  1408. package/dist/commands/setup-audit.d.ts.map +0 -1
  1409. package/dist/commands/setup-audit.js +0 -250
  1410. package/dist/commands/setup-audit.js.map +0 -1
  1411. package/dist/commands/setup-detect-surfaces.d.ts +0 -38
  1412. package/dist/commands/setup-detect-surfaces.d.ts.map +0 -1
  1413. package/dist/commands/setup-detect-surfaces.js +0 -76
  1414. package/dist/commands/setup-detect-surfaces.js.map +0 -1
  1415. package/dist/commands/setup-ingest.d.ts +0 -17
  1416. package/dist/commands/setup-ingest.d.ts.map +0 -1
  1417. package/dist/commands/setup-ingest.js +0 -226
  1418. package/dist/commands/setup-ingest.js.map +0 -1
  1419. package/dist/commands/setup-resolver.d.ts +0 -58
  1420. package/dist/commands/setup-resolver.d.ts.map +0 -1
  1421. package/dist/commands/setup-resolver.js +0 -150
  1422. package/dist/commands/setup-resolver.js.map +0 -1
  1423. package/dist/commands/setup-state.d.ts +0 -42
  1424. package/dist/commands/setup-state.d.ts.map +0 -1
  1425. package/dist/commands/setup-state.js +0 -93
  1426. package/dist/commands/setup-state.js.map +0 -1
  1427. package/dist/commands/setup.d.ts +0 -23
  1428. package/dist/commands/setup.d.ts.map +0 -1
  1429. package/dist/commands/setup.js +0 -69
  1430. package/dist/commands/setup.js.map +0 -1
  1431. package/dist/formatters/audit.d.ts +0 -52
  1432. package/dist/formatters/audit.d.ts.map +0 -1
  1433. package/dist/formatters/audit.js +0 -81
  1434. package/dist/formatters/audit.js.map +0 -1
  1435. package/dist/formatters/handshake.d.ts +0 -62
  1436. package/dist/formatters/handshake.d.ts.map +0 -1
  1437. package/dist/formatters/handshake.js +0 -198
  1438. package/dist/formatters/handshake.js.map +0 -1
  1439. package/dist/formatters/promote.d.ts +0 -30
  1440. package/dist/formatters/promote.d.ts.map +0 -1
  1441. package/dist/formatters/promote.js +0 -39
  1442. package/dist/formatters/promote.js.map +0 -1
  1443. package/dist/formatters/proposals.d.ts +0 -45
  1444. package/dist/formatters/proposals.d.ts.map +0 -1
  1445. package/dist/formatters/proposals.js +0 -62
  1446. package/dist/formatters/proposals.js.map +0 -1
  1447. package/dist/generators/adapters.d.ts +0 -44
  1448. package/dist/generators/adapters.d.ts.map +0 -1
  1449. package/dist/generators/adapters.js +0 -290
  1450. package/dist/generators/adapters.js.map +0 -1
  1451. package/dist/generators/adapters.test.d.ts +0 -2
  1452. package/dist/generators/adapters.test.d.ts.map +0 -1
  1453. package/dist/generators/adapters.test.js +0 -27
  1454. package/dist/generators/adapters.test.js.map +0 -1
  1455. package/dist/generators/archetypes.d.ts +0 -52
  1456. package/dist/generators/archetypes.d.ts.map +0 -1
  1457. package/dist/generators/archetypes.js +0 -190
  1458. package/dist/generators/archetypes.js.map +0 -1
  1459. package/dist/generators/archetypes.test.d.ts +0 -2
  1460. package/dist/generators/archetypes.test.d.ts.map +0 -1
  1461. package/dist/generators/archetypes.test.js +0 -272
  1462. package/dist/generators/archetypes.test.js.map +0 -1
  1463. package/dist/generators/boundary-manifest.d.ts +0 -29
  1464. package/dist/generators/boundary-manifest.d.ts.map +0 -1
  1465. package/dist/generators/boundary-manifest.js +0 -183
  1466. package/dist/generators/boundary-manifest.js.map +0 -1
  1467. package/dist/generators/boundary-manifest.test.d.ts +0 -2
  1468. package/dist/generators/boundary-manifest.test.d.ts.map +0 -1
  1469. package/dist/generators/boundary-manifest.test.js +0 -91
  1470. package/dist/generators/boundary-manifest.test.js.map +0 -1
  1471. package/dist/generators/briefing-md.d.ts +0 -8
  1472. package/dist/generators/briefing-md.d.ts.map +0 -1
  1473. package/dist/generators/briefing-md.js +0 -51
  1474. package/dist/generators/briefing-md.js.map +0 -1
  1475. package/dist/generators/chain-classifier.d.ts +0 -63
  1476. package/dist/generators/chain-classifier.d.ts.map +0 -1
  1477. package/dist/generators/chain-classifier.js +0 -131
  1478. package/dist/generators/chain-classifier.js.map +0 -1
  1479. package/dist/generators/chain-classifier.test.d.ts +0 -2
  1480. package/dist/generators/chain-classifier.test.d.ts.map +0 -1
  1481. package/dist/generators/chain-classifier.test.js +0 -371
  1482. package/dist/generators/chain-classifier.test.js.map +0 -1
  1483. package/dist/generators/chain-rules.d.ts +0 -42
  1484. package/dist/generators/chain-rules.d.ts.map +0 -1
  1485. package/dist/generators/chain-rules.js +0 -152
  1486. package/dist/generators/chain-rules.js.map +0 -1
  1487. package/dist/generators/chain-rules.test.d.ts +0 -2
  1488. package/dist/generators/chain-rules.test.d.ts.map +0 -1
  1489. package/dist/generators/chain-rules.test.js +0 -211
  1490. package/dist/generators/chain-rules.test.js.map +0 -1
  1491. package/dist/generators/context-md.d.ts +0 -8
  1492. package/dist/generators/context-md.d.ts.map +0 -1
  1493. package/dist/generators/context-md.js +0 -134
  1494. package/dist/generators/context-md.js.map +0 -1
  1495. package/dist/generators/handshake-diff.d.ts +0 -67
  1496. package/dist/generators/handshake-diff.d.ts.map +0 -1
  1497. package/dist/generators/handshake-diff.js +0 -183
  1498. package/dist/generators/handshake-diff.js.map +0 -1
  1499. package/dist/generators/handshake-diff.test.d.ts +0 -2
  1500. package/dist/generators/handshake-diff.test.d.ts.map +0 -1
  1501. package/dist/generators/handshake-diff.test.js +0 -264
  1502. package/dist/generators/handshake-diff.test.js.map +0 -1
  1503. package/dist/generators/manifest.d.ts +0 -115
  1504. package/dist/generators/manifest.d.ts.map +0 -1
  1505. package/dist/generators/manifest.js +0 -277
  1506. package/dist/generators/manifest.js.map +0 -1
  1507. package/dist/generators/portable-knowledge.d.ts +0 -159
  1508. package/dist/generators/portable-knowledge.d.ts.map +0 -1
  1509. package/dist/generators/portable-knowledge.js +0 -596
  1510. package/dist/generators/portable-knowledge.js.map +0 -1
  1511. package/dist/generators/portable-knowledge.test.d.ts +0 -2
  1512. package/dist/generators/portable-knowledge.test.d.ts.map +0 -1
  1513. package/dist/generators/portable-knowledge.test.js +0 -927
  1514. package/dist/generators/portable-knowledge.test.js.map +0 -1
  1515. package/dist/generators/region-projections.d.ts +0 -18
  1516. package/dist/generators/region-projections.d.ts.map +0 -1
  1517. package/dist/generators/region-projections.js +0 -49
  1518. package/dist/generators/region-projections.js.map +0 -1
  1519. package/dist/generators/region-projections.test.d.ts +0 -2
  1520. package/dist/generators/region-projections.test.d.ts.map +0 -1
  1521. package/dist/generators/region-projections.test.js +0 -63
  1522. package/dist/generators/region-projections.test.js.map +0 -1
  1523. package/dist/generators/region.d.ts +0 -24
  1524. package/dist/generators/region.d.ts.map +0 -1
  1525. package/dist/generators/region.js +0 -87
  1526. package/dist/generators/region.js.map +0 -1
  1527. package/dist/generators/region.test.d.ts +0 -2
  1528. package/dist/generators/region.test.d.ts.map +0 -1
  1529. package/dist/generators/region.test.js +0 -126
  1530. package/dist/generators/region.test.js.map +0 -1
  1531. package/dist/generators/surface-profiles.d.ts +0 -48
  1532. package/dist/generators/surface-profiles.d.ts.map +0 -1
  1533. package/dist/generators/surface-profiles.js +0 -98
  1534. package/dist/generators/surface-profiles.js.map +0 -1
  1535. package/dist/lib/activation.d.ts +0 -28
  1536. package/dist/lib/activation.d.ts.map +0 -1
  1537. package/dist/lib/activation.js +0 -57
  1538. package/dist/lib/activation.js.map +0 -1
  1539. package/dist/lib/activation.test.d.ts +0 -6
  1540. package/dist/lib/activation.test.d.ts.map +0 -1
  1541. package/dist/lib/activation.test.js +0 -121
  1542. package/dist/lib/activation.test.js.map +0 -1
  1543. package/dist/lib/collectionRegistry.d.ts +0 -40
  1544. package/dist/lib/collectionRegistry.d.ts.map +0 -1
  1545. package/dist/lib/collectionRegistry.js +0 -112
  1546. package/dist/lib/collectionRegistry.js.map +0 -1
  1547. package/dist/lib/conversation-engine.d.ts +0 -45
  1548. package/dist/lib/conversation-engine.d.ts.map +0 -1
  1549. package/dist/lib/conversation-engine.js +0 -112
  1550. package/dist/lib/conversation-engine.js.map +0 -1
  1551. package/dist/lib/conversation-phases.d.ts +0 -59
  1552. package/dist/lib/conversation-phases.d.ts.map +0 -1
  1553. package/dist/lib/conversation-phases.js +0 -11
  1554. package/dist/lib/conversation-phases.js.map +0 -1
  1555. package/dist/lib/conversation-signals.d.ts +0 -30
  1556. package/dist/lib/conversation-signals.d.ts.map +0 -1
  1557. package/dist/lib/conversation-signals.js +0 -64
  1558. package/dist/lib/conversation-signals.js.map +0 -1
  1559. package/dist/lib/experiment.d.ts +0 -18
  1560. package/dist/lib/experiment.d.ts.map +0 -1
  1561. package/dist/lib/experiment.js +0 -28
  1562. package/dist/lib/experiment.js.map +0 -1
  1563. package/dist/lib/hook-intents.d.ts +0 -51
  1564. package/dist/lib/hook-intents.d.ts.map +0 -1
  1565. package/dist/lib/hook-intents.js +0 -85
  1566. package/dist/lib/hook-intents.js.map +0 -1
  1567. package/dist/lib/inferSourceDate.d.ts +0 -12
  1568. package/dist/lib/inferSourceDate.d.ts.map +0 -1
  1569. package/dist/lib/inferSourceDate.js +0 -44
  1570. package/dist/lib/inferSourceDate.js.map +0 -1
  1571. package/dist/lib/method-registry.d.ts +0 -32
  1572. package/dist/lib/method-registry.d.ts.map +0 -1
  1573. package/dist/lib/method-registry.js +0 -53
  1574. package/dist/lib/method-registry.js.map +0 -1
  1575. package/dist/lib/normalizeMaterializedFilename.d.ts +0 -28
  1576. package/dist/lib/normalizeMaterializedFilename.d.ts.map +0 -1
  1577. package/dist/lib/normalizeMaterializedFilename.js +0 -56
  1578. package/dist/lib/normalizeMaterializedFilename.js.map +0 -1
  1579. package/dist/lib/normalizeMaterializedFilename.test.d.ts +0 -16
  1580. package/dist/lib/normalizeMaterializedFilename.test.d.ts.map +0 -1
  1581. package/dist/lib/normalizeMaterializedFilename.test.js +0 -90
  1582. package/dist/lib/normalizeMaterializedFilename.test.js.map +0 -1
  1583. package/dist/lib/onboarding-path-b.d.ts +0 -10
  1584. package/dist/lib/onboarding-path-b.d.ts.map +0 -1
  1585. package/dist/lib/onboarding-path-b.js +0 -213
  1586. package/dist/lib/onboarding-path-b.js.map +0 -1
  1587. package/dist/lib/onboarding-shared.d.ts +0 -80
  1588. package/dist/lib/onboarding-shared.d.ts.map +0 -1
  1589. package/dist/lib/onboarding-shared.js +0 -174
  1590. package/dist/lib/onboarding-shared.js.map +0 -1
  1591. package/dist/lib/onboarding-topics.d.ts +0 -27
  1592. package/dist/lib/onboarding-topics.d.ts.map +0 -1
  1593. package/dist/lib/onboarding-topics.js +0 -57
  1594. package/dist/lib/onboarding-topics.js.map +0 -1
  1595. package/dist/lib/onboarding.d.ts +0 -17
  1596. package/dist/lib/onboarding.d.ts.map +0 -1
  1597. package/dist/lib/onboarding.js +0 -350
  1598. package/dist/lib/onboarding.js.map +0 -1
  1599. package/dist/lib/repo-detect.d.ts +0 -33
  1600. package/dist/lib/repo-detect.d.ts.map +0 -1
  1601. package/dist/lib/repo-detect.js +0 -83
  1602. package/dist/lib/repo-detect.js.map +0 -1
  1603. package/dist/lib/startup-resolution-signals.d.ts +0 -34
  1604. package/dist/lib/startup-resolution-signals.d.ts.map +0 -1
  1605. package/dist/lib/startup-resolution-signals.js +0 -118
  1606. package/dist/lib/startup-resolution-signals.js.map +0 -1
  1607. package/dist/lib/startup-resolution-signals.test.d.ts +0 -2
  1608. package/dist/lib/startup-resolution-signals.test.d.ts.map +0 -1
  1609. package/dist/lib/startup-resolution-signals.test.js +0 -113
  1610. package/dist/lib/startup-resolution-signals.test.js.map +0 -1
  1611. package/dist/lib/telemetry.d.ts +0 -15
  1612. package/dist/lib/telemetry.d.ts.map +0 -1
  1613. package/dist/lib/telemetry.js +0 -47
  1614. package/dist/lib/telemetry.js.map +0 -1
  1615. package/dist/lib/wizard-surfaces.d.ts +0 -47
  1616. package/dist/lib/wizard-surfaces.d.ts.map +0 -1
  1617. package/dist/lib/wizard-surfaces.js +0 -176
  1618. package/dist/lib/wizard-surfaces.js.map +0 -1
  1619. package/dist/lib/wizard-surfaces.test.d.ts +0 -2
  1620. package/dist/lib/wizard-surfaces.test.d.ts.map +0 -1
  1621. package/dist/lib/wizard-surfaces.test.js +0 -127
  1622. package/dist/lib/wizard-surfaces.test.js.map +0 -1
  1623. package/dist/lib/wizard-trust.d.ts +0 -31
  1624. package/dist/lib/wizard-trust.d.ts.map +0 -1
  1625. package/dist/lib/wizard-trust.js +0 -66
  1626. package/dist/lib/wizard-trust.js.map +0 -1
  1627. package/dist/lib/wizard-trust.test.d.ts +0 -2
  1628. package/dist/lib/wizard-trust.test.d.ts.map +0 -1
  1629. package/dist/lib/wizard-trust.test.js +0 -32
  1630. package/dist/lib/wizard-trust.test.js.map +0 -1
  1631. package/dist/setup/__tests__/coach-traces.test.d.ts +0 -2
  1632. package/dist/setup/__tests__/coach-traces.test.d.ts.map +0 -1
  1633. package/dist/setup/__tests__/coach-traces.test.js +0 -189
  1634. package/dist/setup/__tests__/coach-traces.test.js.map +0 -1
  1635. package/dist/setup/__tests__/setup-commands.test.d.ts +0 -2
  1636. package/dist/setup/__tests__/setup-commands.test.d.ts.map +0 -1
  1637. package/dist/setup/__tests__/setup-commands.test.js +0 -177
  1638. package/dist/setup/__tests__/setup-commands.test.js.map +0 -1
  1639. package/dist/setup/__tests__/state-machine.test.d.ts +0 -2
  1640. package/dist/setup/__tests__/state-machine.test.d.ts.map +0 -1
  1641. package/dist/setup/__tests__/state-machine.test.js +0 -341
  1642. package/dist/setup/__tests__/state-machine.test.js.map +0 -1
  1643. package/dist/setup/detect-surfaces.d.ts +0 -21
  1644. package/dist/setup/detect-surfaces.d.ts.map +0 -1
  1645. package/dist/setup/detect-surfaces.js +0 -39
  1646. package/dist/setup/detect-surfaces.js.map +0 -1
  1647. package/dist/setup/manifest-writer.d.ts +0 -17
  1648. package/dist/setup/manifest-writer.d.ts.map +0 -1
  1649. package/dist/setup/manifest-writer.js +0 -153
  1650. package/dist/setup/manifest-writer.js.map +0 -1
  1651. package/dist/setup/perimeter.d.ts +0 -72
  1652. package/dist/setup/perimeter.d.ts.map +0 -1
  1653. package/dist/setup/perimeter.js +0 -128
  1654. package/dist/setup/perimeter.js.map +0 -1
  1655. package/dist/setup/state-machine.d.ts +0 -67
  1656. package/dist/setup/state-machine.d.ts.map +0 -1
  1657. package/dist/setup/state-machine.js +0 -124
  1658. package/dist/setup/state-machine.js.map +0 -1
  1659. package/dist/surfaces/__tests__/adapter.test.d.ts +0 -2
  1660. package/dist/surfaces/__tests__/adapter.test.d.ts.map +0 -1
  1661. package/dist/surfaces/__tests__/adapter.test.js +0 -90
  1662. package/dist/surfaces/__tests__/adapter.test.js.map +0 -1
  1663. package/dist/surfaces/__tests__/pb-setup-passthrough.test.d.ts +0 -2
  1664. package/dist/surfaces/__tests__/pb-setup-passthrough.test.d.ts.map +0 -1
  1665. package/dist/surfaces/__tests__/pb-setup-passthrough.test.js +0 -132
  1666. package/dist/surfaces/__tests__/pb-setup-passthrough.test.js.map +0 -1
  1667. package/dist/surfaces/__tests__/telemetry.test.d.ts +0 -2
  1668. package/dist/surfaces/__tests__/telemetry.test.d.ts.map +0 -1
  1669. package/dist/surfaces/__tests__/telemetry.test.js +0 -55
  1670. package/dist/surfaces/__tests__/telemetry.test.js.map +0 -1
  1671. package/dist/surfaces/adapter.d.ts +0 -70
  1672. package/dist/surfaces/adapter.d.ts.map +0 -1
  1673. package/dist/surfaces/adapter.js +0 -2
  1674. package/dist/surfaces/adapter.js.map +0 -1
  1675. package/dist/surfaces/adapters/claude.d.ts +0 -3
  1676. package/dist/surfaces/adapters/claude.d.ts.map +0 -1
  1677. package/dist/surfaces/adapters/claude.js +0 -67
  1678. package/dist/surfaces/adapters/claude.js.map +0 -1
  1679. package/dist/surfaces/adapters/codex.d.ts +0 -3
  1680. package/dist/surfaces/adapters/codex.d.ts.map +0 -1
  1681. package/dist/surfaces/adapters/codex.js +0 -61
  1682. package/dist/surfaces/adapters/codex.js.map +0 -1
  1683. package/dist/surfaces/adapters/copilot.d.ts +0 -3
  1684. package/dist/surfaces/adapters/copilot.d.ts.map +0 -1
  1685. package/dist/surfaces/adapters/copilot.js +0 -59
  1686. package/dist/surfaces/adapters/copilot.js.map +0 -1
  1687. package/dist/surfaces/adapters/cursor.d.ts +0 -3
  1688. package/dist/surfaces/adapters/cursor.d.ts.map +0 -1
  1689. package/dist/surfaces/adapters/cursor.js +0 -78
  1690. package/dist/surfaces/adapters/cursor.js.map +0 -1
  1691. package/dist/surfaces/registry.d.ts +0 -76
  1692. package/dist/surfaces/registry.d.ts.map +0 -1
  1693. package/dist/surfaces/registry.js +0 -117
  1694. package/dist/surfaces/registry.js.map +0 -1
  1695. package/dist/surfaces/telemetry.d.ts +0 -17
  1696. package/dist/surfaces/telemetry.d.ts.map +0 -1
  1697. package/dist/surfaces/telemetry.js +0 -31
  1698. package/dist/surfaces/telemetry.js.map +0 -1
  1699. package/templates/archetypes/boundary.md +0 -23
  1700. package/templates/archetypes/constraint.md +0 -23
  1701. package/templates/archetypes/convention.md +0 -23
  1702. package/templates/archetypes/policy.md +0 -23
  1703. package/templates/archetypes/quality-gate.md +0 -23
  1704. package/templates/archetypes/workflow.md +0 -23
  1705. package/templates/general/code-integrity.md +0 -11
  1706. package/templates/general/getting-started.md +0 -12
  1707. package/templates/method-registry.json +0 -16
  1708. package/templates/node-ts/code-integrity.md +0 -13
  1709. package/templates/node-ts/testing.md +0 -12
  1710. package/templates/python/code-integrity.md +0 -13
  1711. package/templates/python/testing.md +0 -12
@@ -1,10 +1,13 @@
1
1
  /**
2
2
  * pb capture extensions — --link, --json flags, WP-319 grounding.
3
- * TEN-341 test contract: capture --link calls createEntryRelation, capture --json outputs JSON.
4
- * WP-319 S3: grounding fires in parallel, fail-open, --suggest-only, --strict, PB_GROUNDING_MODE.
3
+ * TASK-897 (DEC-2113): capture --link rides in the one chain.createEntry request as links[]; the reply's outcomes print.
4
+ * TASK-894 (DEC-2113): one chain.createEntry per capture; the kernel's verdict rides the reply.
5
5
  */
6
6
  import { beforeEach, describe, expect, it, vi } from 'vitest';
7
7
  import { runCapture } from '../commands/capture.js';
8
+ import { formatCaptureReceipt } from '../formatters/capture.js';
9
+ import { CLIError, ErrorCode } from '../lib/errors.js';
10
+ import { setOutputMode } from '../lib/runner.js';
8
11
  const kernelCallWithSessionMock = vi.fn();
9
12
  vi.mock('../lib/client.js', () => ({
10
13
  kernelCallWithSession: (...args) => kernelCallWithSessionMock(...args),
@@ -17,59 +20,145 @@ vi.mock('../lib/session.js', () => ({
17
20
  readSession: () => mockSession,
18
21
  addCapturedEntry: vi.fn(),
19
22
  }));
20
- describe('runCapture --link', () => {
23
+ // TASK-897 (DEC-2113): a linked capture is ONE request. The --link/--link-type pairs ride in chain.createEntry as
24
+ // links[]; the kernel judges each in the transaction that lands the entry and answers per link, in its own words
25
+ // (`line`, RULE-664). A refused link never fails the capture (exit 0, the entry landed); a pair the kernel could never
26
+ // judge (no type, an empty id) is refused before anything is sent, so nothing is half-done.
27
+ describe('runCapture --link (TASK-897)', () => {
21
28
  beforeEach(() => {
22
29
  kernelCallWithSessionMock.mockReset();
23
30
  mockSession = { sessionId: 'sess-test' };
24
31
  });
25
- it('creates entry then links to target with default relation type', async () => {
26
- // Prefix "TEN:" is extracted → skips classification, routes directly to tensions
32
+ const LINKS = [
33
+ { toEntryId: 'DEC-29', type: 'related_to', outcome: 'written', line: 'linked related_to DEC-29' },
34
+ { toEntryId: 'WP-29', type: 'part_of', outcome: 'refused', reason: 'A work package is never part_of another work package.', line: 'link refused: A work package is never part_of another work package.' },
35
+ ];
36
+ async function captureWithTwoLinks(json) {
37
+ kernelCallWithSessionMock.mockImplementation((fn) => (fn === 'chain.createEntry' ? Promise.resolve({ docId: 'doc-1', entryId: 'TEN-710', collection: 'tensions', links: LINKS }) : Promise.resolve({})));
38
+ let out = '';
39
+ const writeSpy = vi.spyOn(process.stdout, 'write').mockImplementation((chunk) => { out += String(chunk); return true; });
40
+ const errSpy = vi.spyOn(process.stderr, 'write').mockImplementation(() => true);
41
+ setOutputMode(json ? 'json' : 'pretty');
42
+ try {
43
+ await runCapture({ text: 'TEN: missing validation', link: ['DEC-29', 'WP-29'], linkType: ['related_to', 'part_of'], json });
44
+ }
45
+ finally {
46
+ setOutputMode('auto');
47
+ writeSpy.mockRestore();
48
+ errSpy.mockRestore();
49
+ }
50
+ return out;
51
+ }
52
+ it('two --link pairs send ONE request carrying links[], and the receipt prints the kernel line per link; a refused link exits 0', async () => {
53
+ const out = await captureWithTwoLinks(false);
54
+ expect(kernelCallWithSessionMock.mock.calls.map(([fn]) => fn)).toEqual(['chain.createEntry']);
55
+ expect(kernelCallWithSessionMock.mock.calls[0][1]).toMatchObject({
56
+ name: 'TEN: missing validation', links: [{ toEntryId: 'DEC-29', type: 'related_to' }, { toEntryId: 'WP-29', type: 'part_of' }],
57
+ });
58
+ expect(kernelCallWithSessionMock.mock.calls[0][1]).not.toHaveProperty('deferLLMSchedule');
59
+ expect(out).toContain('→ TEN-710 captured');
60
+ expect(out).toContain(' linked related_to DEC-29');
61
+ expect(out).toContain(' link refused: A work package is never part_of another work package.');
62
+ });
63
+ it('--json carries the links as the kernel answered them', async () => {
64
+ const out = await captureWithTwoLinks(true);
65
+ const output = JSON.parse(out.trim().split('\n').pop());
66
+ expect(output).toMatchObject({ id: 'TEN-710', collection: 'tensions', links: LINKS });
67
+ expect(output).not.toHaveProperty('relationType');
68
+ });
69
+ it('no --link: the request carries no links field and no defer flag', async () => {
70
+ kernelCallWithSessionMock.mockImplementation((fn) => (fn === 'chain.createEntry' ? Promise.resolve({ docId: 'doc-2', entryId: 'TEN-711' }) : Promise.resolve({})));
71
+ const writeSpy = vi.spyOn(process.stdout, 'write').mockImplementation(() => true);
72
+ await runCapture({ text: 'TEN: plain', json: true });
73
+ writeSpy.mockRestore();
74
+ const args = kernelCallWithSessionMock.mock.calls[0][1];
75
+ expect(args).not.toHaveProperty('links');
76
+ expect(args).not.toHaveProperty('deferLLMSchedule');
77
+ expect(kernelCallWithSessionMock.mock.calls.map(([fn]) => fn)).toEqual(['chain.createEntry']);
78
+ });
79
+ // WP-688 S4 (element 11): no default verb, ever. TASK-897: the refusal comes before the request, so nothing is captured.
80
+ it('--link without --link-type is refused before anything is sent', async () => {
81
+ let caught;
82
+ try {
83
+ await runCapture({ text: 'TEN: missing validation', link: ['BET-151'] });
84
+ }
85
+ catch (e) {
86
+ caught = e;
87
+ }
88
+ expect(caught).toBeInstanceOf(CLIError);
89
+ expect(caught?.code).toBe(ErrorCode.VALIDATION_FAILED);
90
+ expect(caught?.message).toContain('--link BET-151 requires --link-type');
91
+ expect(caught?.guidance).toContain('Nothing was captured');
92
+ expect(kernelCallWithSessionMock).not.toHaveBeenCalled();
93
+ });
94
+ it('a second --link without its own --link-type is refused before anything is sent', async () => {
95
+ await expect(runCapture({ text: 'TEN: two links one type', link: ['DEC-29', 'WP-29'], linkType: ['related_to'] })).rejects.toThrow('--link WP-29 requires --link-type');
96
+ expect(kernelCallWithSessionMock).not.toHaveBeenCalled();
97
+ });
98
+ // WP-688 S4 review round 5 (bcRUML, bcRpJQ): an empty or whitespace-only --link never silently no-ops.
99
+ it.each(['', ' '])('--link %j is refused before anything is sent', async (link) => {
100
+ await expect(runCapture({ text: 'TEN: empty link', link: [link], linkType: ['related_to'] })).rejects.toThrow('--link requires a non-empty entry ID');
101
+ expect(kernelCallWithSessionMock).not.toHaveBeenCalled();
102
+ });
103
+ // TASK-584 (WP-802, TEN-4312): a dropped field is a warning on the landed reply; with a refused link both reach the operator and the command exits 0.
104
+ it('prints the dropped-field warning AND the refused link on one landed capture, exit 0', async () => {
105
+ kernelCallWithSessionMock.mockImplementation((fn) => (fn === 'chain.createEntry'
106
+ ? Promise.resolve({ docId: 'doc-5', entryId: 'TEN-21', normalization: { remapped: {}, rejected: ['badField'], accepted: [] }, links: [LINKS[1]] })
107
+ : Promise.resolve({})));
108
+ let out = '';
109
+ const writeSpy = vi.spyOn(process.stdout, 'write').mockImplementation((chunk) => { out += String(chunk); return true; });
110
+ await runCapture({ text: 'TEN: both at once', link: ['WP-29'], linkType: ['part_of'], json: true });
111
+ writeSpy.mockRestore();
112
+ expect(JSON.parse(out.trim())).toMatchObject({ id: 'TEN-21', droppedFields: ['badField'], links: [{ outcome: 'refused' }] });
113
+ });
114
+ });
115
+ // WP-684 TASK-77 (E1.3): one-step typed create — --entry-type forwards to chain.createEntry's
116
+ // existing `canonicalKey` arg. Named --entry-type since -t/--type is the --link relation type.
117
+ describe('runCapture --entry-type', () => {
118
+ beforeEach(() => {
119
+ kernelCallWithSessionMock.mockReset();
120
+ mockSession = { sessionId: 'sess-test' };
121
+ });
122
+ it('forwards --entry-type as canonicalKey on the chain.createEntry payload', async () => {
27
123
  kernelCallWithSessionMock.mockImplementation((fn) => {
28
- if (fn === 'chain.suggestLinksForCapture')
29
- return Promise.resolve([]);
30
124
  if (fn === 'chain.createEntry')
31
- return Promise.resolve({ docId: 'doc-1', entryId: 'TEN-710' });
32
- if (fn === 'chain.createEntryRelation')
33
- return Promise.resolve({});
125
+ return Promise.resolve({ docId: 'doc-3', entryId: 'OBJ-1' });
34
126
  return Promise.resolve({});
35
127
  });
36
128
  const writeSpy = vi.spyOn(process.stdout, 'write').mockImplementation(() => true);
37
- await runCapture({ text: 'TEN: missing validation', link: 'BET-151' });
38
- // Verify classification was skipped (no resolveCollection call)
39
- expect(kernelCallWithSessionMock).not.toHaveBeenCalledWith('chain.resolveCollection', expect.anything());
40
- // Verify prefix was stripped from entry name and routed to correct collection
129
+ await runCapture({ text: 'the objective', collection: 'key-results', entryType: 'objective' });
41
130
  expect(kernelCallWithSessionMock).toHaveBeenCalledWith('chain.createEntry', expect.objectContaining({
42
- collectionSlug: 'tensions',
43
- name: 'missing validation',
131
+ collectionSlug: 'key-results',
132
+ canonicalKey: 'objective',
44
133
  }));
45
- expect(kernelCallWithSessionMock).toHaveBeenCalledWith('chain.createEntryRelation', {
46
- fromEntryId: 'TEN-710',
47
- toEntryId: 'BET-151',
48
- type: 'surfaces_tension_in',
49
- });
50
134
  writeSpy.mockRestore();
51
135
  });
52
- it('uses custom relation type when --type provided', async () => {
53
- // Prefix "INS:" is extracted → skips classification, routes directly to insights
136
+ it('omits canonicalKey entirely when --entry-type is absent (byte-identical default path)', async () => {
54
137
  kernelCallWithSessionMock.mockImplementation((fn) => {
55
- if (fn === 'chain.suggestLinksForCapture')
56
- return Promise.resolve([]);
57
138
  if (fn === 'chain.createEntry')
58
- return Promise.resolve({ docId: 'doc-2', entryId: 'INS-50' });
59
- if (fn === 'chain.createEntryRelation')
60
- return Promise.resolve({});
139
+ return Promise.resolve({ docId: 'doc-4', entryId: 'OBJ-1' });
61
140
  return Promise.resolve({});
62
141
  });
63
142
  const writeSpy = vi.spyOn(process.stdout, 'write').mockImplementation(() => true);
64
- await runCapture({ text: 'INS: discovered X', link: 'DEC-264', type: 'informed_by' });
65
- expect(kernelCallWithSessionMock).not.toHaveBeenCalledWith('chain.resolveCollection', expect.anything());
66
- expect(kernelCallWithSessionMock).toHaveBeenCalledWith('chain.createEntryRelation', {
67
- fromEntryId: 'INS-50',
68
- toEntryId: 'DEC-264',
69
- type: 'informed_by',
70
- });
143
+ await runCapture({ text: 'a key result', collection: 'key-results' });
144
+ const call = kernelCallWithSessionMock.mock.calls.find(([fn]) => fn === 'chain.createEntry');
145
+ expect(call?.[1]).not.toHaveProperty('canonicalKey');
71
146
  writeSpy.mockRestore();
72
147
  });
148
+ // TASK-894 (DEC-2113): --entry-type alone routes in the kernel (getTypeHintMap), so the CLI sends
149
+ // one request with the key and no collection: no listCollections, no resolveCollection.
150
+ it('--entry-type alone sends one chain.createEntry with canonicalKey and no collectionSlug', async () => {
151
+ kernelCallWithSessionMock.mockImplementation((fn) => (fn === 'chain.createEntry' ? Promise.resolve({ docId: 'doc-5', entryId: 'OBJ-2', collection: 'objectives' }) : Promise.resolve({})));
152
+ const writeSpy = vi.spyOn(process.stdout, 'write').mockImplementation(() => true);
153
+ const stderrSpy = vi.spyOn(process.stderr, 'write').mockImplementation(() => true);
154
+ await runCapture({ text: 'another objective', entryType: 'objective' });
155
+ expect(kernelCallWithSessionMock.mock.calls.map(([fn]) => fn)).toEqual(['chain.createEntry']);
156
+ const args = kernelCallWithSessionMock.mock.calls[0][1];
157
+ expect(args).toMatchObject({ canonicalKey: 'objective', name: 'another objective' });
158
+ expect(args).not.toHaveProperty('collectionSlug');
159
+ writeSpy.mockRestore();
160
+ stderrSpy.mockRestore();
161
+ });
73
162
  });
74
163
  describe('runCapture --json', () => {
75
164
  beforeEach(() => {
@@ -77,12 +166,10 @@ describe('runCapture --json', () => {
77
166
  mockSession = { sessionId: 'sess-test' };
78
167
  });
79
168
  it('outputs valid JSON with id field and no other stdout', async () => {
80
- // Prefix "TEN:" is extracted → skips classification
169
+ // TASK-894: the kernel routes the "TEN:" prefix and names the slug on the reply.
81
170
  kernelCallWithSessionMock.mockImplementation((fn) => {
82
- if (fn === 'chain.suggestLinksForCapture')
83
- return Promise.resolve([]);
84
171
  if (fn === 'chain.createEntry')
85
- return Promise.resolve({ docId: 'doc-1', entryId: 'TEN-711' });
172
+ return Promise.resolve({ docId: 'doc-1', entryId: 'TEN-711', collection: 'tensions' });
86
173
  return Promise.resolve({});
87
174
  });
88
175
  let stdoutOutput = '';
@@ -109,269 +196,470 @@ describe('runCapture --json', () => {
109
196
  expect(output).toHaveProperty('confidence');
110
197
  });
111
198
  });
112
- describe('runCapture description field routing', () => {
199
+ describe('runCapture coaching passthrough (WP-475 E1)', () => {
113
200
  beforeEach(() => {
114
201
  kernelCallWithSessionMock.mockReset();
115
202
  mockSession = { sessionId: 'sess-test' };
116
203
  });
117
- it('passes description key to createEntry for assumptions (TEN-1258 — remap happens in Convex)', async () => {
118
- // The CLI always sends `description` — the Convex write gate remaps it to `belief`
119
- // for the assumptions collection (TEN-1258). Verify the CLI routes correctly and
120
- // sends the text as description so the Convex remap can fire.
204
+ const coaching = {
205
+ source: 'heuristic',
206
+ verdict: {
207
+ entryId: 'DEC-77',
208
+ canonicalKey: 'decision',
209
+ tier: 'assertive',
210
+ context: 'capture',
211
+ passed: false,
212
+ criteria: [
213
+ { id: 'specificity', passed: false, weight: 2, hint: 'Be specific.', questionTemplate: 'What exactly?' },
214
+ ],
215
+ weakest: { criterion: 'specificity', hint: 'Be specific.', questionTemplate: 'What exactly?' },
216
+ },
217
+ };
218
+ it('--json output includes the raw coaching object from the write response', async () => {
121
219
  kernelCallWithSessionMock.mockImplementation((fn) => {
122
- if (fn === 'chain.suggestLinksForCapture')
123
- return Promise.resolve([]);
124
220
  if (fn === 'chain.createEntry')
125
- return Promise.resolve({ docId: 'doc-5', entryId: 'ASM-1' });
221
+ return Promise.resolve({ docId: 'doc-c1', entryId: 'DEC-77', coaching });
126
222
  return Promise.resolve({});
127
223
  });
128
- const writeSpy = vi.spyOn(process.stdout, 'write').mockImplementation(() => true);
129
- await runCapture({ text: 'ASM: users won\'t pay before seeing value' });
130
- const createCall = kernelCallWithSessionMock.mock.calls.find(([fn]) => fn === 'chain.createEntry');
131
- expect(createCall?.[1]).toMatchObject({
132
- collectionSlug: 'assumptions',
133
- name: "users won't pay before seeing value",
134
- data: { description: "users won't pay before seeing value" },
224
+ let stdoutOutput = '';
225
+ const writeSpy = vi.spyOn(process.stdout, 'write').mockImplementation((chunk) => {
226
+ stdoutOutput += String(chunk);
227
+ return true;
135
228
  });
229
+ await runCapture({ text: 'DEC: chose something', json: true });
136
230
  writeSpy.mockRestore();
231
+ const jsonLines = stdoutOutput.split('\n').filter((line) => {
232
+ try {
233
+ JSON.parse(line);
234
+ return true;
235
+ }
236
+ catch {
237
+ return false;
238
+ }
239
+ });
240
+ expect(jsonLines).toHaveLength(1);
241
+ const output = JSON.parse(jsonLines[0]);
242
+ expect(output.coaching).toEqual(coaching);
137
243
  });
138
- });
139
- describe('runCapture classification guard', () => {
140
- beforeEach(() => {
141
- kernelCallWithSessionMock.mockReset();
142
- mockSession = { sessionId: 'sess-test' };
244
+ it('--json output omits coaching when the write response has none (backward compat)', async () => {
245
+ kernelCallWithSessionMock.mockImplementation((fn) => {
246
+ if (fn === 'chain.createEntry')
247
+ return Promise.resolve({ docId: 'doc-c2', entryId: 'DEC-78' });
248
+ return Promise.resolve({});
249
+ });
250
+ let stdoutOutput = '';
251
+ const writeSpy = vi.spyOn(process.stdout, 'write').mockImplementation((chunk) => {
252
+ stdoutOutput += String(chunk);
253
+ return true;
254
+ });
255
+ await runCapture({ text: 'DEC: chose another thing', json: true });
256
+ writeSpy.mockRestore();
257
+ const jsonLines = stdoutOutput.split('\n').filter((line) => {
258
+ try {
259
+ JSON.parse(line);
260
+ return true;
261
+ }
262
+ catch {
263
+ return false;
264
+ }
265
+ });
266
+ expect(jsonLines).toHaveLength(1);
267
+ expect(JSON.parse(jsonLines[0])).not.toHaveProperty('coaching');
143
268
  });
144
- it('throws CLIError when classification requires review', async () => {
145
- kernelCallWithSessionMock.mockResolvedValueOnce(null);
146
- await expect(runCapture({ text: 'Ambiguous capture' })).rejects.toThrow('Classification needs review before capture can continue.');
269
+ // TASK-897: the one verdict on the reply already saw the links (the kernel writes them before it judges), so a
270
+ // linked capture renders the create-response verdict as a plain one does; nothing is re-evaluated.
271
+ it('--link: renders the create-response verdict and calls no re-evaluation', async () => {
272
+ kernelCallWithSessionMock.mockImplementation((fn) => (fn === 'chain.createEntry'
273
+ ? Promise.resolve({ docId: 'doc-c3', entryId: 'DEC-79', coaching, links: [{ toEntryId: 'TEN-1', type: 'informs', outcome: 'written', line: 'linked informs TEN-1' }] })
274
+ : Promise.resolve({})));
275
+ let stdoutOutput = '';
276
+ const writeSpy = vi.spyOn(process.stdout, 'write').mockImplementation((chunk) => { stdoutOutput += String(chunk); return true; });
277
+ await runCapture({ text: 'DEC: chose with a link', link: ['TEN-1'], linkType: ['informs'], json: true });
278
+ writeSpy.mockRestore();
279
+ expect(kernelCallWithSessionMock.mock.calls.map(([fn]) => fn)).toEqual(['chain.createEntry']);
280
+ const output = JSON.parse(stdoutOutput.trim());
281
+ expect(output.coaching).toEqual(coaching);
282
+ expect(output.links).toEqual([{ toEntryId: 'TEN-1', type: 'informs', outcome: 'written', line: 'linked informs TEN-1' }]);
147
283
  });
148
284
  });
149
- describe('runCapture date inference', () => {
285
+ // WP-690 S7 (TASK-120): the 'runCapture description field routing' describe block (TEN-1258's
286
+ // ASM:-shortcode -> 'assumptions' collectionSlug routing test) is DELETED here — `assumption` is
287
+ // one of the 15 genuinely-retired canonicalKeys (collectionRegistry.ts no longer carries an
288
+ // 'assumptions'/ASM entry at all), so the scenario this test asserted can no longer occur: an
289
+ // 'ASM:' capture now falls through to auto-classification (collectionSlug: undefined) instead of
290
+ // the old explicit-shortcode routing. Found via the CI Quality Gate on this PR (new failure caused
291
+ // by the S7 registry purge, fixed at root per the standing "fix new failures at root" contract —
292
+ // not deferred, not papered over).
293
+ describe('runCapture --field passthrough', () => {
150
294
  beforeEach(() => {
151
295
  kernelCallWithSessionMock.mockReset();
152
296
  mockSession = { sessionId: 'sess-test' };
153
297
  });
154
- it('does not default date to today when no source date is present', async () => {
298
+ it('merges --field pairs into data', async () => {
155
299
  kernelCallWithSessionMock.mockImplementation((fn) => {
156
- if (fn === 'chain.suggestLinksForCapture')
157
- return Promise.resolve([]);
158
- if (fn === 'chain.resolveCollection')
159
- return Promise.resolve({ collection: 'decisions', confidence: 0.9, tier: 'high' });
160
300
  if (fn === 'chain.createEntry')
161
- return Promise.resolve({ docId: 'doc-3', entryId: 'DEC-10' });
301
+ return Promise.resolve({ docId: 'doc-6', entryId: 'STD-1' });
162
302
  return Promise.resolve({});
163
303
  });
164
304
  const writeSpy = vi.spyOn(process.stdout, 'write').mockImplementation(() => true);
165
- await runCapture({ text: 'Decision without explicit source date' });
166
- const createCall = kernelCallWithSessionMock.mock.calls.find(([fn]) => fn === 'chain.createEntry');
167
- expect(createCall?.[1]).toMatchObject({
168
- collectionSlug: 'decisions',
169
- data: { description: 'Decision without explicit source date' },
305
+ await runCapture({
306
+ text: 'touched-code stewardship',
307
+ collection: 'standards',
308
+ field: ['rationale=signed specs define scope but agents need permission'],
170
309
  });
171
- expect((createCall?.[1]).data).not.toHaveProperty('date');
310
+ expect(kernelCallWithSessionMock).toHaveBeenCalledWith('chain.createEntry', expect.objectContaining({
311
+ description: 'touched-code stewardship', // TASK-894: the capture text; the kernel files it when the main field is empty
312
+ data: { rationale: 'signed specs define scope but agents need permission' },
313
+ }));
172
314
  writeSpy.mockRestore();
173
315
  });
174
- it('uses inferred source date when the capture text includes one', async () => {
316
+ it('--field description=X overrides the derived description', async () => {
175
317
  kernelCallWithSessionMock.mockImplementation((fn) => {
176
- if (fn === 'chain.suggestLinksForCapture')
177
- return Promise.resolve([]);
178
- if (fn === 'chain.resolveCollection')
179
- return Promise.resolve({ collection: 'decisions', confidence: 0.9, tier: 'high' });
180
318
  if (fn === 'chain.createEntry')
181
- return Promise.resolve({ docId: 'doc-4', entryId: 'DEC-11' });
319
+ return Promise.resolve({ docId: 'doc-7', entryId: 'TEN-1' });
182
320
  return Promise.resolve({});
183
321
  });
184
322
  const writeSpy = vi.spyOn(process.stdout, 'write').mockImplementation(() => true);
185
- await runCapture({ text: 'Decision from April 1, 2026 steering meeting' });
186
- const createCall = kernelCallWithSessionMock.mock.calls.find(([fn]) => fn === 'chain.createEntry');
187
- expect((createCall?.[1]).data.date).toBe('2026-04-01');
323
+ await runCapture({
324
+ text: 'derived',
325
+ collection: 'tensions',
326
+ field: ['description=explicit'],
327
+ });
328
+ expect(kernelCallWithSessionMock).toHaveBeenCalledWith('chain.createEntry', expect.objectContaining({
329
+ data: expect.objectContaining({ description: 'explicit' }),
330
+ }));
188
331
  writeSpy.mockRestore();
189
332
  });
190
333
  });
191
- // ---------------------------------------------------------------------------
192
- // WP-319 S3: Pre-write grounding tests
193
- // ---------------------------------------------------------------------------
194
- describe('runCapture WP-319 grounding', () => {
195
- const emptyGrounding = { index: 0, related: [], duplicates: [], governance: [], v: 1 };
196
- const groundingWithDuplicate = {
197
- index: 0,
198
- related: [],
199
- duplicates: [{ entryId: 'TEN-5', name: 'Similar tension', collectionSlug: 'tensions', matchType: 'possible_duplicate', overlapRatio: 0.9 }],
200
- governance: [],
201
- v: 1,
202
- };
334
+ // TASK-584 (WP-802, TEN-4312): the CLI sends only the fields the caller sent. The default
335
+ // description (the capture text) exists to be remapped into the collection's primary field;
336
+ // TASK-894: data carries only what the caller sent; the kernel fills the main text field when it is empty.
337
+ describe('runCapture sends only caller fields (TASK-584)', () => {
203
338
  beforeEach(() => {
204
339
  kernelCallWithSessionMock.mockReset();
205
340
  mockSession = { sessionId: 'sess-test' };
206
- delete process.env.PB_GROUNDING_MODE;
207
- });
208
- it('fires chain.suggestLinksForCapture in parallel and still calls createEntry', async () => {
209
- // Prefix-based route skips classification; grounding fires for TEN prefix
210
- kernelCallWithSessionMock
211
- .mockImplementation((fn) => {
212
- if (fn === 'chain.suggestLinksForCapture')
213
- return Promise.resolve([emptyGrounding]);
341
+ });
342
+ const createData = () => kernelCallWithSessionMock.mock.calls.find(([fn]) => fn === 'chain.createEntry')?.[1]?.data;
343
+ it('omits description when -f sets the primary field and no -d is given', async () => {
344
+ kernelCallWithSessionMock.mockImplementation((fn) => {
214
345
  if (fn === 'chain.createEntry')
215
- return Promise.resolve({ docId: 'doc-1', entryId: 'TEN-720' });
346
+ return Promise.resolve({ docId: 'd', entryId: 'INS-1', status: 'draft' });
216
347
  return Promise.resolve({});
217
348
  });
218
349
  const writeSpy = vi.spyOn(process.stdout, 'write').mockImplementation(() => true);
219
- const stderrSpy = vi.spyOn(process.stderr, 'write').mockImplementation(() => true);
220
- await runCapture({ text: 'TEN: grounding test tension' });
221
- expect(kernelCallWithSessionMock).toHaveBeenCalledWith('chain.suggestLinksForCapture', expect.objectContaining({
222
- entries: expect.arrayContaining([expect.objectContaining({ name: 'grounding test tension' })]),
223
- }));
224
- expect(kernelCallWithSessionMock).toHaveBeenCalledWith('chain.createEntry', expect.anything());
350
+ await runCapture({ text: 'an insight', collection: 'insights', field: ['body=the full body'] });
225
351
  writeSpy.mockRestore();
226
- stderrSpy.mockRestore();
352
+ expect(createData()).toEqual({ body: 'the full body' });
227
353
  });
228
- it('does NOT block capture when grounding call fails', async () => {
229
- kernelCallWithSessionMock
230
- .mockImplementation((fn) => {
231
- if (fn === 'chain.suggestLinksForCapture')
232
- return Promise.reject(new Error('network error'));
354
+ it('keeps description when -d is given, even with -f body', async () => {
355
+ kernelCallWithSessionMock.mockImplementation((fn) => {
233
356
  if (fn === 'chain.createEntry')
234
- return Promise.resolve({ docId: 'doc-2', entryId: 'TEN-721' });
357
+ return Promise.resolve({ docId: 'd', entryId: 'INS-2', status: 'draft' });
235
358
  return Promise.resolve({});
236
359
  });
237
360
  const writeSpy = vi.spyOn(process.stdout, 'write').mockImplementation(() => true);
238
- const stderrSpy = vi.spyOn(process.stderr, 'write').mockImplementation(() => true);
239
- // Must not throw — grounding failure is fail-open
240
- await expect(runCapture({ text: 'TEN: grounding failure test' })).resolves.toBeUndefined();
241
- expect(kernelCallWithSessionMock).toHaveBeenCalledWith('chain.createEntry', expect.anything());
361
+ await runCapture({ text: 'an insight', description: 'explicit', collection: 'insights', field: ['body=b'] });
242
362
  writeSpy.mockRestore();
243
- stderrSpy.mockRestore();
363
+ expect(createData()).toEqual({ description: 'explicit', body: 'b' });
244
364
  });
245
- it('--suggest-only does NOT call createEntry and outputs grounding data', async () => {
246
- // In test env (non-TTY), isJsonMode() returns true → JSON path is taken.
247
- kernelCallWithSessionMock
248
- .mockImplementation((fn) => {
249
- if (fn === 'chain.suggestLinksForCapture')
250
- return Promise.resolve([groundingWithDuplicate]);
365
+ it('a bare capture sends its text as description only, for the kernel to file in the empty body', async () => {
366
+ kernelCallWithSessionMock.mockImplementation((fn) => {
367
+ if (fn === 'chain.createEntry')
368
+ return Promise.resolve({ docId: 'd', entryId: 'INS-3', status: 'draft' });
251
369
  return Promise.resolve({});
252
370
  });
253
- let stdoutOutput = '';
254
- const writeSpy = vi.spyOn(process.stdout, 'write').mockImplementation((chunk) => {
255
- stdoutOutput += String(chunk);
256
- return true;
257
- });
258
- const stderrSpy = vi.spyOn(process.stderr, 'write').mockImplementation(() => true);
259
- await runCapture({ text: 'TEN: duplicate candidate', suggestOnly: true });
260
- expect(kernelCallWithSessionMock).not.toHaveBeenCalledWith('chain.createEntry', expect.anything());
261
- // JSON output contains suggestOnly flag and grounding report
262
- const jsonLines = stdoutOutput.split('\n').filter((l) => { try {
263
- JSON.parse(l);
264
- return true;
265
- }
266
- catch {
267
- return false;
268
- } });
269
- expect(jsonLines).toHaveLength(1);
270
- const parsed = JSON.parse(jsonLines[0]);
271
- expect(parsed.suggestOnly).toBe(true);
272
- expect(parsed.groundingReport).toBeDefined();
371
+ const writeSpy = vi.spyOn(process.stdout, 'write').mockImplementation(() => true);
372
+ await runCapture({ text: 'an insight', collection: 'insights' });
273
373
  writeSpy.mockRestore();
274
- stderrSpy.mockRestore();
374
+ expect(createData()).toEqual({});
375
+ expect(kernelCallWithSessionMock.mock.calls[0][1]).toMatchObject({ description: 'an insight' });
275
376
  });
276
- it('--suggest-only with --json outputs machine-readable object without calling createEntry', async () => {
277
- kernelCallWithSessionMock
278
- .mockImplementation((fn) => {
279
- if (fn === 'chain.suggestLinksForCapture')
280
- return Promise.resolve([emptyGrounding]);
377
+ it('a landed create with a dropped field resolves (exit 0) and names only that field as dropped', async () => {
378
+ kernelCallWithSessionMock.mockImplementation((fn) => {
379
+ if (fn === 'chain.createEntry') {
380
+ return Promise.resolve({
381
+ docId: 'd', entryId: 'INS-5', status: 'draft', warnings: ['Unknown fields dropped: nosuchfield. Expected: body (text, required).'],
382
+ normalization: { remapped: {}, rejected: ['nosuchfield'], accepted: ['body'] },
383
+ });
384
+ }
281
385
  return Promise.resolve({});
282
386
  });
283
- let stdoutOutput = '';
284
- const writeSpy = vi.spyOn(process.stdout, 'write').mockImplementation((chunk) => {
285
- stdoutOutput += String(chunk);
286
- return true;
287
- });
288
- const stderrSpy = vi.spyOn(process.stderr, 'write').mockImplementation(() => true);
289
- await runCapture({ text: 'TEN: dry run json', json: true, suggestOnly: true });
290
- expect(kernelCallWithSessionMock).not.toHaveBeenCalledWith('chain.createEntry', expect.anything());
291
- const jsonLines = stdoutOutput.split('\n').filter((l) => { try {
292
- JSON.parse(l);
293
- return true;
294
- }
295
- catch {
296
- return false;
297
- } });
298
- expect(jsonLines).toHaveLength(1);
299
- const parsed = JSON.parse(jsonLines[0]);
300
- expect(parsed.suggestOnly).toBe(true);
387
+ const out = [];
388
+ const errOut = [];
389
+ const writeSpy = vi.spyOn(process.stdout, 'write').mockImplementation((chunk) => { out.push(String(chunk)); return true; });
390
+ const errSpy = vi.spyOn(process.stderr, 'write').mockImplementation((chunk) => { errOut.push(String(chunk)); return true; });
391
+ await expect(runCapture({ text: 'an insight', collection: 'insights', field: ['nosuchfield=x'], json: true })).resolves.toBeUndefined();
301
392
  writeSpy.mockRestore();
302
- stderrSpy.mockRestore();
393
+ errSpy.mockRestore();
394
+ expect(JSON.parse(out.join(''))).toMatchObject({ id: 'INS-5', droppedFields: ['nosuchfield'] });
395
+ expect(errOut.join('')).not.toContain('Fields rejected');
396
+ });
397
+ it('the human receipt names the dropped field as a warning, with pb fields for the collection', () => {
398
+ const out = formatCaptureReceipt({
399
+ entryId: 'INS-5', name: 'an insight', collection: 'insights', statusLabel: 'Draft', classification: null,
400
+ warnings: ['Unknown fields dropped: nosuchfield. Expected: body (text, required).'],
401
+ normalization: { remapped: {}, rejected: ['nosuchfield'], accepted: [] },
402
+ });
403
+ expect(out).toContain('Warning: Unknown fields dropped: nosuchfield.');
404
+ expect(out).toContain('pb fields insights');
405
+ expect(out).not.toContain('Rejected fields');
303
406
  });
304
- it('banner is suppressed when grounding has no matches (zero-noise floor)', async () => {
305
- kernelCallWithSessionMock
306
- .mockImplementation((fn) => {
307
- if (fn === 'chain.suggestLinksForCapture')
308
- return Promise.resolve([emptyGrounding]);
407
+ });
408
+ describe('runCapture prints the kernel pool sentence (TASK-800)', () => {
409
+ const POOL = 'This workspace already has an unscoped strategy, Grow the core (STR-1). Saved as a draft. Scope this one to a product (belongs_to a product), or merge it into Grow the core by hand.';
410
+ beforeEach(() => {
411
+ kernelCallWithSessionMock.mockReset();
412
+ mockSession = { sessionId: 'sess-test' };
413
+ kernelCallWithSessionMock.mockImplementation((fn) => {
309
414
  if (fn === 'chain.createEntry')
310
- return Promise.resolve({ docId: 'doc-3', entryId: 'TEN-722' });
415
+ return Promise.resolve({ docId: 'd', entryId: 'STR-2', status: 'draft', warnings: [POOL] });
311
416
  return Promise.resolve({});
312
417
  });
313
- const writeSpy = vi.spyOn(process.stdout, 'write').mockImplementation(() => true);
314
- const stderrLines = [];
315
- const stderrSpy = vi.spyOn(process.stderr, 'write').mockImplementation((chunk) => {
316
- stderrLines.push(String(chunk));
317
- return true;
318
- });
319
- await runCapture({ text: 'TEN: no matches tension' });
320
- // No "Grounding" banner in stderr when zero matches
321
- const groundingInStderr = stderrLines.some((l) => l.includes('Grounding'));
322
- expect(groundingInStderr).toBe(false);
418
+ });
419
+ it('--json carries the sentence verbatim in warnings', async () => {
420
+ const out = [];
421
+ const writeSpy = vi.spyOn(process.stdout, 'write').mockImplementation((chunk) => { out.push(String(chunk)); return true; });
422
+ await runCapture({ text: 'Grow through partner referrals', collection: 'strategy', json: true });
323
423
  writeSpy.mockRestore();
424
+ expect(JSON.parse(out.join(''))).toMatchObject({ id: 'STR-2', status: 'draft', warnings: [POOL] });
425
+ });
426
+ it('the human receipt prints the sentence verbatim', () => {
427
+ const out = formatCaptureReceipt({ entryId: 'STR-2', name: 'Grow through partner referrals', collection: 'strategy', statusLabel: 'Draft', classification: null, warnings: [POOL] });
428
+ expect(out).toContain(`Warning: ${POOL}`);
429
+ });
430
+ // TASK-1160: the why hold's sentence is the kernel's (kernel/coherency/whyCheck.ts whyHeldSentence; whyCheck.test.ts pins this text).
431
+ it('a held why prints the kernel sentence verbatim, coaching line included', () => {
432
+ const held = 'Held as a draft: the why does not say why. This repeats the decision; name the evidence that made provider B the choice. Rewrite the why and accept, or keep it as a draft.';
433
+ const out = formatCaptureReceipt({ entryId: 'DEC-7', name: 'Switch payments to provider B', collection: 'decisions', statusLabel: 'Draft', classification: null, warnings: [held] });
434
+ expect(out).toContain(`Warning: ${held}`);
435
+ });
436
+ it('TASK-1046 (DEC-2219): the receipt prints the name whole, never cut at read', () => {
437
+ const name = 'Every message a person or an agent reads is understood and acted on in three seconds; any moving entry says so';
438
+ const out = formatCaptureReceipt({ entryId: 'RULE-9', name, collection: 'rules', statusLabel: 'Draft', classification: null });
439
+ expect(out).toContain(` Name: ${name}\n`);
440
+ });
441
+ });
442
+ // TASK-894 (DEC-2113): no client pre-check answers before the kernel; every refusal is the server's own 400.
443
+ describe('runCapture leaves every refusal to the kernel', () => {
444
+ beforeEach(() => {
445
+ kernelCallWithSessionMock.mockReset();
446
+ mockSession = { sessionId: 'sess-test' };
447
+ });
448
+ it.each([
449
+ ['the WHY gate', 'Not saved: a standard needs a why, at least 12 characters.'],
450
+ ['an abstaining classifier', 'No collection fits this capture. Choose one: decisions, insights, tensions.'],
451
+ ['the exact-name guard', 'Duplicate entry: "x" already exists in tensions.'],
452
+ ])('%s: the one request is refused and the server sentence reaches the caller unchanged', async (_gate, reason) => {
453
+ kernelCallWithSessionMock.mockImplementation((fn) => (fn === 'chain.createEntry' ? Promise.reject(new CLIError(reason, { code: ErrorCode.VALIDATION_FAILED, category: 'validation' })) : Promise.resolve({})));
454
+ const stderrSpy = vi.spyOn(process.stderr, 'write').mockImplementation(() => true);
455
+ await expect(runCapture({ text: 'x', collection: 'standards', field: ['rationale=short'] })).rejects.toThrow(reason);
456
+ expect(kernelCallWithSessionMock.mock.calls.map(([fn]) => fn)).toEqual(['chain.createEntry']);
324
457
  stderrSpy.mockRestore();
325
458
  });
326
- it('PB_GROUNDING_MODE=off skips grounding call entirely', async () => {
327
- process.env.PB_GROUNDING_MODE = 'off';
328
- kernelCallWithSessionMock
329
- .mockImplementation((fn) => {
459
+ });
460
+ describe('runCapture writes no date (TEN-4244, DEC-1787)', () => {
461
+ beforeEach(() => {
462
+ kernelCallWithSessionMock.mockReset();
463
+ mockSession = { sessionId: 'sess-test' };
464
+ });
465
+ it.each([
466
+ ['tasks', 'TASK-10', 'Task due April 1, 2026'],
467
+ ['decisions', 'DEC-10', 'Decision from April 1, 2026 steering meeting'],
468
+ ['tasks', 'TASK-11', 'Task without any date'],
469
+ ])('a %s capture carries no data.date, even when the text names a date', async (collection, entryId, text) => {
470
+ kernelCallWithSessionMock.mockImplementation((fn) => {
330
471
  if (fn === 'chain.createEntry')
331
- return Promise.resolve({ docId: 'doc-4', entryId: 'TEN-723' });
472
+ return Promise.resolve({ docId: 'doc-3', entryId, collection });
332
473
  return Promise.resolve({});
333
474
  });
334
475
  const writeSpy = vi.spyOn(process.stdout, 'write').mockImplementation(() => true);
335
- const stderrSpy = vi.spyOn(process.stderr, 'write').mockImplementation(() => true);
336
- await runCapture({ text: 'TEN: no grounding env off' });
337
- expect(kernelCallWithSessionMock).not.toHaveBeenCalledWith('chain.suggestLinksForCapture', expect.anything());
338
- expect(kernelCallWithSessionMock).toHaveBeenCalledWith('chain.createEntry', expect.anything());
339
- delete process.env.PB_GROUNDING_MODE;
476
+ await runCapture({ text });
477
+ const createCall = kernelCallWithSessionMock.mock.calls.find(([fn]) => fn === 'chain.createEntry');
478
+ expect(createCall?.[1]).not.toHaveProperty('collectionSlug');
479
+ expect((createCall?.[1]).data).not.toHaveProperty('date');
340
480
  writeSpy.mockRestore();
341
- stderrSpy.mockRestore();
342
481
  });
343
- it('--json output stdout is clean (no grounding on stdout)', async () => {
344
- kernelCallWithSessionMock
345
- .mockImplementation((fn) => {
346
- if (fn === 'chain.suggestLinksForCapture')
347
- return Promise.resolve([groundingWithDuplicate]);
348
- if (fn === 'chain.createEntry')
349
- return Promise.resolve({ docId: 'doc-5', entryId: 'TEN-724' });
350
- return Promise.resolve({});
351
- });
352
- let stdoutOutput = '';
353
- const writeSpy = vi.spyOn(process.stdout, 'write').mockImplementation((chunk) => {
354
- stdoutOutput += String(chunk);
355
- return true;
482
+ });
483
+ // TASK-894 (DEC-2113): the kernel judges inside chain.createEntry; the CLI renders its verdict.
484
+ describe('runCapture renders the kernel verdict', () => {
485
+ const ask = { kind: 'ask', matches: [{ entryId: 'TEN-5', name: 'Similar tension', collectionSlug: 'tensions', score: 0.6 }] };
486
+ beforeEach(() => {
487
+ kernelCallWithSessionMock.mockReset();
488
+ mockSession = { sessionId: 'sess-test' };
489
+ setOutputMode('auto'); // runner.ts keeps output mode at module level; an earlier json test must not leak it
490
+ });
491
+ async function capture(reply, options = {}) {
492
+ kernelCallWithSessionMock.mockImplementation((fn) => Promise.resolve(fn === 'chain.createEntry' ? { docId: 'doc-1', collection: 'tensions', ...reply } : {}));
493
+ let out = '';
494
+ let err = '';
495
+ const writeSpy = vi.spyOn(process.stdout, 'write').mockImplementation((chunk) => { out += String(chunk); return true; });
496
+ const stderrSpy = vi.spyOn(process.stderr, 'write').mockImplementation((chunk) => { err += String(chunk); return true; });
497
+ try {
498
+ await runCapture({ text: 'TEN: a capture', ...options });
499
+ }
500
+ finally {
501
+ writeSpy.mockRestore();
502
+ stderrSpy.mockRestore();
503
+ }
504
+ return { out, err };
505
+ }
506
+ it('one request: no chain.capture, listCollections, resolveCollection, getCollectionFields or recordGroundingOutcome', async () => {
507
+ await capture({ entryId: 'TEN-720', verdict: { kind: 'create' }, judged: true });
508
+ expect(kernelCallWithSessionMock.mock.calls.map(([fn]) => fn)).toEqual(['chain.createEntry']);
509
+ expect(kernelCallWithSessionMock.mock.calls[0][1]).toMatchObject({ name: 'TEN: a capture', description: 'TEN: a capture' });
510
+ });
511
+ it('a create verdict prints no Possible match line (TASK-608, DEC-1915)', async () => {
512
+ const { err } = await capture({ entryId: 'TEN-722', verdict: { kind: 'create' }, judged: true });
513
+ expect(err).not.toContain('Possible match');
514
+ });
515
+ // TASK-619 (TEN-4420): a close match is named and never written to.
516
+ it('an ask names the match on stderr and never updates it', async () => {
517
+ const { err } = await capture({ entryId: 'TEN-729', verdict: ask, judged: true });
518
+ expect(err).toContain('Possible match: TEN-5 "Similar tension". Nothing was written to it');
519
+ expect(kernelCallWithSessionMock).not.toHaveBeenCalledWith('chain.updateEntry', expect.anything());
520
+ });
521
+ it('a judge that missed its budget says the check is still running', async () => {
522
+ const { err } = await capture({ entryId: 'TEN-730', judged: false });
523
+ expect(err).toContain('The duplicate check is still running; pb get TEN-730');
524
+ });
525
+ it('--json is one clean line carrying possibleMatches, verdict and judged', async () => {
526
+ const { out } = await capture({ entryId: 'TEN-725', verdict: ask, judged: true }, { json: true });
527
+ const lines = out.split('\n').filter((l) => l.trim());
528
+ expect(lines).toHaveLength(1);
529
+ expect(JSON.parse(lines[0])).toMatchObject({
530
+ id: 'TEN-725', collection: 'tensions', verdict: ask, judged: true,
531
+ possibleMatches: [{ entryId: 'TEN-5', name: 'Similar tension', collection: 'tensions', score: 0.6 }],
356
532
  });
357
- const stderrSpy = vi.spyOn(process.stderr, 'write').mockImplementation(() => true);
358
- await runCapture({ text: 'TEN: json clean stdout', json: true });
359
- // Stdout must be exactly one valid JSON line (jq .id must work)
360
- const jsonLines = stdoutOutput.split('\n').filter((l) => { try {
361
- JSON.parse(l);
362
- return true;
533
+ });
534
+ it('--json on a create verdict carries no possibleMatches field', async () => {
535
+ const { out } = await capture({ entryId: 'TEN-726', verdict: { kind: 'create' }, judged: true }, { json: true });
536
+ expect(JSON.parse(out.trim())).not.toHaveProperty('possibleMatches');
537
+ });
538
+ });
539
+ // TASK-898 (DEC-2113): a re-sent capture the kernel replayed. TASK-897: the kernel answers the retry's links from the rows
540
+ // (written by the first send, or refused then); the CLI prints them as on a first send and sends nothing more.
541
+ describe('runCapture on a replayed reply (TASK-898)', () => {
542
+ const REPLAY_LINKS = [
543
+ { toEntryId: 'DEC-266', type: 'informed_by', outcome: 'written', line: 'linked informed_by DEC-266' },
544
+ { toEntryId: 'WP-29', type: 'part_of', outcome: 'refused', reason: 'Not written when INS-60 first landed; this reply is a replay. Relate it again to read the reason.', line: 'link refused: Not written when INS-60 first landed; this reply is a replay. Relate it again to read the reason.' },
545
+ ];
546
+ const REPLAY = { entryId: 'INS-60', docId: 'doc-60', status: 'draft', collection: 'decisions', replayed: true, links: REPLAY_LINKS };
547
+ async function run(json) {
548
+ kernelCallWithSessionMock.mockReset();
549
+ mockSession = { sessionId: 'sess-test' };
550
+ kernelCallWithSessionMock.mockImplementation((fn) => (fn === 'chain.createEntry' ? Promise.resolve(REPLAY) : Promise.resolve({})));
551
+ let out = '';
552
+ const writeSpy = vi.spyOn(process.stdout, 'write').mockImplementation((chunk) => { out += String(chunk); return true; });
553
+ const errSpy = vi.spyOn(process.stderr, 'write').mockImplementation(() => true);
554
+ setOutputMode(json ? 'json' : 'pretty');
555
+ try {
556
+ await runCapture({ text: 'INS: discovered Z', link: ['DEC-266', 'WP-29'], linkType: ['informed_by', 'part_of'], json });
363
557
  }
364
- catch {
365
- return false;
366
- } });
367
- expect(jsonLines).toHaveLength(1);
368
- const parsed = JSON.parse(jsonLines[0]);
369
- expect(parsed.id).toBe('TEN-724');
370
- // No grounding content in stdout
371
- expect(stdoutOutput).not.toContain('Grounding');
372
- expect(stdoutOutput).not.toContain('duplicate');
373
- writeSpy.mockRestore();
374
- stderrSpy.mockRestore();
558
+ finally {
559
+ setOutputMode('auto');
560
+ writeSpy.mockRestore();
561
+ errSpy.mockRestore();
562
+ }
563
+ return out;
564
+ }
565
+ it('the replay is one request too: exit 0, the kernel collection, the links as the kernel reports them', async () => {
566
+ const output = JSON.parse((await run(true)).trim().split('\n').pop());
567
+ expect(output).toMatchObject({ id: 'INS-60', collection: 'decisions', replayed: true, links: REPLAY_LINKS });
568
+ expect(kernelCallWithSessionMock.mock.calls.map(([fn]) => fn)).toEqual(['chain.createEntry']);
569
+ });
570
+ it('the receipt names the first send\'s collection, says nothing was written twice, and prints the link lines', async () => {
571
+ const out = await run(false);
572
+ expect(out).toContain('decisions');
573
+ expect(out).toContain('Already captured as INS-60');
574
+ expect(out).toContain(' linked informed_by DEC-266');
575
+ expect(out).toContain(' link refused: Not written when INS-60 first landed');
576
+ });
577
+ it('a replay of a draft still without a required field prints the same lines as the first reply, before the Next', async () => {
578
+ kernelCallWithSessionMock.mockReset();
579
+ mockSession = { sessionId: 'sess-test' };
580
+ const lines = ['Add a Done When item before accepting.', 'pb update WP-36 -f doneWhen="<item>"'];
581
+ const spineFloor = { relationType: 'validates', parentKind: 'key_result', exempt: false, linkWritten: false, line: 'Validates one of 2 accepted key results.', nextTo: '<one of them>' };
582
+ kernelCallWithSessionMock.mockImplementation((fn) => (fn === 'chain.createEntry'
583
+ ? Promise.resolve({ entryId: 'WP-36', docId: 'doc-36', status: 'draft', collection: 'work-packages', replayed: true, missingFieldLines: lines, spineFloor }) : Promise.resolve({})));
584
+ let out = '';
585
+ const writeSpy = vi.spyOn(process.stdout, 'write').mockImplementation((chunk) => { out += String(chunk); return true; });
586
+ const errSpy = vi.spyOn(process.stderr, 'write').mockImplementation(() => true);
587
+ setOutputMode('pretty');
588
+ try {
589
+ await runCapture({ text: 'WP: ship the ledger', json: false });
590
+ }
591
+ finally {
592
+ setOutputMode('auto');
593
+ writeSpy.mockRestore();
594
+ errSpy.mockRestore();
595
+ }
596
+ expect(out).toContain('Already captured as WP-36');
597
+ expect(out).toContain(` ${lines[0]}\n ${lines[1]}`);
598
+ expect(out).toContain(' Kept as a draft. Validates one of 2 accepted key results.');
599
+ expect(out.indexOf(lines[0])).toBeLessThan(out.indexOf('Next: pb relate WP-36 validates <one of them>'));
600
+ });
601
+ });
602
+ // TASK-889 (TEN-4610, RULE-664): the capture receipt names the new row in the kernel's word, the one the Rail shows.
603
+ describe('formatCaptureReceipt state word (TASK-889)', () => {
604
+ it('prints the kernel label for a born-live question, never the stored trust word', () => {
605
+ const out = formatCaptureReceipt({ entryId: 'Q-1', name: 'Who decides?', collection: 'questions', statusLabel: 'Open', classification: null });
606
+ expect(out.split('\n')[0]).toBe('→ Q-1 captured as Open');
607
+ expect(out).not.toContain('current');
608
+ });
609
+ it('names no state when the backend sends no label', () => {
610
+ const out = formatCaptureReceipt({ entryId: 'Q-1', name: 'Who decides?', collection: 'questions', classification: null });
611
+ expect(out.split('\n')[0]).toBe('→ Q-1 captured');
612
+ });
613
+ });
614
+ // TASK-1419 (WP-876, DEC-2512): the name is the text's first sentence, the whole text is the body, --name wins.
615
+ describe('runCapture names a capture from its text', () => {
616
+ beforeEach(() => {
617
+ kernelCallWithSessionMock.mockReset();
618
+ kernelCallWithSessionMock.mockResolvedValue({ docId: 'doc-1', entryId: 'DEC-900', collection: 'decisions' });
619
+ mockSession = { sessionId: 'sess-test' };
620
+ });
621
+ async function sent(options) {
622
+ const writeSpy = vi.spyOn(process.stdout, 'write').mockImplementation(() => true);
623
+ const errSpy = vi.spyOn(process.stderr, 'write').mockImplementation(() => true);
624
+ setOutputMode('pretty');
625
+ try {
626
+ await runCapture(options);
627
+ }
628
+ finally {
629
+ setOutputMode('auto');
630
+ writeSpy.mockRestore();
631
+ errSpy.mockRestore();
632
+ }
633
+ return kernelCallWithSessionMock.mock.calls[0][1];
634
+ }
635
+ const LONG = 'DEC: Names stay short and the detail goes in the body. The long reasons, the history and every option that was weighed follow here, '
636
+ + 'well past the point where a name could carry them, so the whole text is the body and only the first sentence is the name.';
637
+ it('sends the first sentence as the name and the whole text as the body', async () => {
638
+ const call = await sent({ text: LONG });
639
+ expect(call.name).toBe('DEC: Names stay short and the detail goes in the body.');
640
+ expect(call.description).toBe(LONG);
641
+ });
642
+ it('cuts a long first sentence at the last word within the working cap, prefix kept', async () => {
643
+ const text = `TEN: ${'a word of the sentence '.repeat(12)}`.trim();
644
+ const call = await sent({ text });
645
+ expect(Array.from(call.name).length).toBeLessThanOrEqual(80);
646
+ expect(call.name.startsWith('TEN: a word of the sentence')).toBe(true);
647
+ expect(text.startsWith(call.name)).toBe(true);
648
+ expect(call.description).toBe(text);
649
+ });
650
+ it('lets a direction kind keep a longer first sentence when the collection is named', async () => {
651
+ const sentence = `PUR: ${'People are free to act with confidence '.repeat(4).trim()}.`;
652
+ const call = await sent({ text: `${sentence} More words follow.`, collection: 'purpose' });
653
+ expect(call.name).toBe(sentence);
654
+ });
655
+ it('--name wins over the text, and --description over the body', async () => {
656
+ const call = await sent({ text: LONG, name: 'A name I chose', description: 'My own body.' });
657
+ expect(call.name).toBe('A name I chose');
658
+ expect(call.description).toBe('My own body.');
659
+ });
660
+ it('keeps a short text as the name, as before', async () => {
661
+ const call = await sent({ text: 'TEN: missing validation' });
662
+ expect(call.name).toBe('TEN: missing validation');
375
663
  });
376
664
  });
377
665
  //# sourceMappingURL=capture.test.js.map