@productbrain/cli 0.1.0-beta.919 → 0.1.0-beta.9197

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 (1402) hide show
  1. package/README.md +11 -2
  2. package/dist/__tests__/adapters.test.js +76 -23
  3. package/dist/__tests__/adapters.test.js.map +1 -1
  4. package/dist/__tests__/adminConfig.test.d.ts +18 -0
  5. package/dist/__tests__/adminConfig.test.d.ts.map +1 -0
  6. package/dist/__tests__/adminConfig.test.js +221 -0
  7. package/dist/__tests__/adminConfig.test.js.map +1 -0
  8. package/dist/__tests__/batch-transformations.test.js +2 -26
  9. package/dist/__tests__/batch-transformations.test.js.map +1 -1
  10. package/dist/__tests__/capture-receipt-coaching.test.d.ts +2 -0
  11. package/dist/__tests__/capture-receipt-coaching.test.d.ts.map +1 -0
  12. package/dist/__tests__/capture-receipt-coaching.test.js +109 -0
  13. package/dist/__tests__/capture-receipt-coaching.test.js.map +1 -0
  14. package/dist/__tests__/capture-receipt-role-hint.test.d.ts +2 -0
  15. package/dist/__tests__/capture-receipt-role-hint.test.d.ts.map +1 -0
  16. package/dist/__tests__/capture-receipt-role-hint.test.js +66 -0
  17. package/dist/__tests__/capture-receipt-role-hint.test.js.map +1 -0
  18. package/dist/__tests__/capture-receipt-spine-floor.test.d.ts +2 -0
  19. package/dist/__tests__/capture-receipt-spine-floor.test.d.ts.map +1 -0
  20. package/dist/__tests__/capture-receipt-spine-floor.test.js +45 -0
  21. package/dist/__tests__/capture-receipt-spine-floor.test.js.map +1 -0
  22. package/dist/__tests__/capture.test.js +1337 -181
  23. package/dist/__tests__/capture.test.js.map +1 -1
  24. package/dist/__tests__/client-binding-guard.test.d.ts +2 -0
  25. package/dist/__tests__/client-binding-guard.test.d.ts.map +1 -0
  26. package/dist/__tests__/client-binding-guard.test.js +84 -0
  27. package/dist/__tests__/client-binding-guard.test.js.map +1 -0
  28. package/dist/__tests__/coaching-mirror-drift.test.d.ts +2 -0
  29. package/dist/__tests__/coaching-mirror-drift.test.d.ts.map +1 -0
  30. package/dist/__tests__/coaching-mirror-drift.test.js +47 -0
  31. package/dist/__tests__/coaching-mirror-drift.test.js.map +1 -0
  32. package/dist/__tests__/codex-prep-parity.test.d.ts +2 -0
  33. package/dist/__tests__/codex-prep-parity.test.d.ts.map +1 -0
  34. package/dist/__tests__/codex-prep-parity.test.js +85 -0
  35. package/dist/__tests__/codex-prep-parity.test.js.map +1 -0
  36. package/dist/__tests__/collection-registry-seed-drift.test.d.ts +2 -0
  37. package/dist/__tests__/collection-registry-seed-drift.test.d.ts.map +1 -0
  38. package/dist/__tests__/collection-registry-seed-drift.test.js +107 -0
  39. package/dist/__tests__/collection-registry-seed-drift.test.js.map +1 -0
  40. package/dist/__tests__/config-prod-fallthrough.test.d.ts +2 -0
  41. package/dist/__tests__/config-prod-fallthrough.test.d.ts.map +1 -0
  42. package/dist/__tests__/config-prod-fallthrough.test.js +93 -0
  43. package/dist/__tests__/config-prod-fallthrough.test.js.map +1 -0
  44. package/dist/__tests__/config.test.js +466 -39
  45. package/dist/__tests__/config.test.js.map +1 -1
  46. package/dist/__tests__/constellation.test.js +26 -14
  47. package/dist/__tests__/constellation.test.js.map +1 -1
  48. package/dist/__tests__/conversation.test.d.ts +2 -0
  49. package/dist/__tests__/conversation.test.d.ts.map +1 -0
  50. package/dist/__tests__/conversation.test.js +113 -0
  51. package/dist/__tests__/conversation.test.js.map +1 -0
  52. package/dist/__tests__/entry-formatter.test.d.ts +2 -0
  53. package/dist/__tests__/entry-formatter.test.d.ts.map +1 -0
  54. package/dist/__tests__/entry-formatter.test.js +135 -0
  55. package/dist/__tests__/entry-formatter.test.js.map +1 -0
  56. package/dist/__tests__/entry-preflight.test.d.ts +2 -0
  57. package/dist/__tests__/entry-preflight.test.d.ts.map +1 -0
  58. package/dist/__tests__/entry-preflight.test.js +58 -0
  59. package/dist/__tests__/entry-preflight.test.js.map +1 -0
  60. package/dist/__tests__/entryAccept-batch.test.d.ts +2 -0
  61. package/dist/__tests__/entryAccept-batch.test.d.ts.map +1 -0
  62. package/dist/__tests__/entryAccept-batch.test.js +305 -0
  63. package/dist/__tests__/entryAccept-batch.test.js.map +1 -0
  64. package/dist/__tests__/entryAccept.test.d.ts +2 -0
  65. package/dist/__tests__/entryAccept.test.d.ts.map +1 -0
  66. package/dist/__tests__/entryAccept.test.js +506 -0
  67. package/dist/__tests__/entryAccept.test.js.map +1 -0
  68. package/dist/__tests__/entryDiscardResolve.test.d.ts +2 -0
  69. package/dist/__tests__/entryDiscardResolve.test.d.ts.map +1 -0
  70. package/dist/__tests__/entryDiscardResolve.test.js +28 -0
  71. package/dist/__tests__/entryDiscardResolve.test.js.map +1 -0
  72. package/dist/__tests__/entryOwn.test.d.ts +2 -0
  73. package/dist/__tests__/entryOwn.test.d.ts.map +1 -0
  74. package/dist/__tests__/entryOwn.test.js +50 -0
  75. package/dist/__tests__/entryOwn.test.js.map +1 -0
  76. package/dist/__tests__/entryTick.test.d.ts +2 -0
  77. package/dist/__tests__/entryTick.test.d.ts.map +1 -0
  78. package/dist/__tests__/entryTick.test.js +40 -0
  79. package/dist/__tests__/entryTick.test.js.map +1 -0
  80. package/dist/__tests__/envelope-contract.test.js +2 -0
  81. package/dist/__tests__/envelope-contract.test.js.map +1 -1
  82. package/dist/__tests__/errors.test.js +41 -0
  83. package/dist/__tests__/errors.test.js.map +1 -1
  84. package/dist/__tests__/fields.test.js +14 -3
  85. package/dist/__tests__/fields.test.js.map +1 -1
  86. package/dist/__tests__/gateway-dry-run-timeout.test.d.ts +2 -0
  87. package/dist/__tests__/gateway-dry-run-timeout.test.d.ts.map +1 -0
  88. package/dist/__tests__/gateway-dry-run-timeout.test.js +70 -0
  89. package/dist/__tests__/gateway-dry-run-timeout.test.js.map +1 -0
  90. package/dist/__tests__/gateway-timeout-body-phase.test.d.ts +2 -0
  91. package/dist/__tests__/gateway-timeout-body-phase.test.d.ts.map +1 -0
  92. package/dist/__tests__/gateway-timeout-body-phase.test.js +121 -0
  93. package/dist/__tests__/gateway-timeout-body-phase.test.js.map +1 -0
  94. package/dist/__tests__/handshake-augment.test.js +4 -20
  95. package/dist/__tests__/handshake-augment.test.js.map +1 -1
  96. package/dist/__tests__/handshake-dormancy.test.js +10 -193
  97. package/dist/__tests__/handshake-dormancy.test.js.map +1 -1
  98. package/dist/__tests__/handshake-formatter.test.js +44 -0
  99. package/dist/__tests__/handshake-formatter.test.js.map +1 -1
  100. package/dist/__tests__/handshake-preview.test.js +271 -612
  101. package/dist/__tests__/handshake-preview.test.js.map +1 -1
  102. package/dist/__tests__/handshake-session-threading.test.d.ts +2 -0
  103. package/dist/__tests__/handshake-session-threading.test.d.ts.map +1 -0
  104. package/dist/__tests__/handshake-session-threading.test.js +185 -0
  105. package/dist/__tests__/handshake-session-threading.test.js.map +1 -0
  106. package/dist/__tests__/handshake.e2e.test.js +7 -1033
  107. package/dist/__tests__/handshake.e2e.test.js.map +1 -1
  108. package/dist/__tests__/handshake.test.js +523 -308
  109. package/dist/__tests__/handshake.test.js.map +1 -1
  110. package/dist/__tests__/health-gap-kinds-drift.test.d.ts +2 -0
  111. package/dist/__tests__/health-gap-kinds-drift.test.d.ts.map +1 -0
  112. package/dist/__tests__/health-gap-kinds-drift.test.js +43 -0
  113. package/dist/__tests__/health-gap-kinds-drift.test.js.map +1 -0
  114. package/dist/__tests__/hook-intents.test.js +2 -2
  115. package/dist/__tests__/hook-intents.test.js.map +1 -1
  116. package/dist/__tests__/ingest.test.js +9 -0
  117. package/dist/__tests__/ingest.test.js.map +1 -1
  118. package/dist/__tests__/init.test.js +51 -14
  119. package/dist/__tests__/init.test.js.map +1 -1
  120. package/dist/__tests__/kernel-value-sets-drift.test.d.ts +2 -0
  121. package/dist/__tests__/kernel-value-sets-drift.test.d.ts.map +1 -0
  122. package/dist/__tests__/kernel-value-sets-drift.test.js +46 -0
  123. package/dist/__tests__/kernel-value-sets-drift.test.js.map +1 -0
  124. package/dist/__tests__/kernel-value-sets-generator.test.d.ts +2 -0
  125. package/dist/__tests__/kernel-value-sets-generator.test.d.ts.map +1 -0
  126. package/dist/__tests__/kernel-value-sets-generator.test.js +108 -0
  127. package/dist/__tests__/kernel-value-sets-generator.test.js.map +1 -0
  128. package/dist/__tests__/method-registry.integration.test.js +2 -3
  129. package/dist/__tests__/method-registry.integration.test.js.map +1 -1
  130. package/dist/__tests__/method-registry.test.d.ts +6 -8
  131. package/dist/__tests__/method-registry.test.d.ts.map +1 -1
  132. package/dist/__tests__/method-registry.test.js +22 -70
  133. package/dist/__tests__/method-registry.test.js.map +1 -1
  134. package/dist/__tests__/missingPin.test.d.ts +11 -0
  135. package/dist/__tests__/missingPin.test.d.ts.map +1 -0
  136. package/dist/__tests__/missingPin.test.js +233 -0
  137. package/dist/__tests__/missingPin.test.js.map +1 -0
  138. package/dist/__tests__/notice-marker.test.d.ts +2 -0
  139. package/dist/__tests__/notice-marker.test.d.ts.map +1 -0
  140. package/dist/__tests__/notice-marker.test.js +176 -0
  141. package/dist/__tests__/notice-marker.test.js.map +1 -0
  142. package/dist/__tests__/onboarding.test.js +29 -5
  143. package/dist/__tests__/onboarding.test.js.map +1 -1
  144. package/dist/__tests__/onboardingFallback.test.d.ts +2 -0
  145. package/dist/__tests__/onboardingFallback.test.d.ts.map +1 -0
  146. package/dist/__tests__/onboardingFallback.test.js +74 -0
  147. package/dist/__tests__/onboardingFallback.test.js.map +1 -0
  148. package/dist/__tests__/orient.test.js +429 -37
  149. package/dist/__tests__/orient.test.js.map +1 -1
  150. package/dist/__tests__/perimeter.test.js +1 -1
  151. package/dist/__tests__/perimeter.test.js.map +1 -1
  152. package/dist/__tests__/preview-key-refresh.test.d.ts +2 -0
  153. package/dist/__tests__/preview-key-refresh.test.d.ts.map +1 -0
  154. package/dist/__tests__/preview-key-refresh.test.js +126 -0
  155. package/dist/__tests__/preview-key-refresh.test.js.map +1 -0
  156. package/dist/__tests__/profiles.test.js +467 -7
  157. package/dist/__tests__/profiles.test.js.map +1 -1
  158. package/dist/__tests__/proof-run.test.d.ts +2 -0
  159. package/dist/__tests__/proof-run.test.d.ts.map +1 -0
  160. package/dist/__tests__/proof-run.test.js +255 -0
  161. package/dist/__tests__/proof-run.test.js.map +1 -0
  162. package/dist/__tests__/rate-limit-resilience.test.d.ts +7 -0
  163. package/dist/__tests__/rate-limit-resilience.test.d.ts.map +1 -0
  164. package/dist/__tests__/rate-limit-resilience.test.js +209 -0
  165. package/dist/__tests__/rate-limit-resilience.test.js.map +1 -0
  166. package/dist/__tests__/read-target-notice.test.d.ts +2 -0
  167. package/dist/__tests__/read-target-notice.test.d.ts.map +1 -0
  168. package/dist/__tests__/read-target-notice.test.js +129 -0
  169. package/dist/__tests__/read-target-notice.test.js.map +1 -0
  170. package/dist/__tests__/relate.test.js +246 -14
  171. package/dist/__tests__/relate.test.js.map +1 -1
  172. package/dist/__tests__/reply-commands-registered.test.d.ts +2 -0
  173. package/dist/__tests__/reply-commands-registered.test.d.ts.map +1 -0
  174. package/dist/__tests__/reply-commands-registered.test.js +81 -0
  175. package/dist/__tests__/reply-commands-registered.test.js.map +1 -0
  176. package/dist/__tests__/repo-detect.test.js +18 -38
  177. package/dist/__tests__/repo-detect.test.js.map +1 -1
  178. package/dist/__tests__/reportedProfile.test.d.ts +2 -0
  179. package/dist/__tests__/reportedProfile.test.d.ts.map +1 -0
  180. package/dist/__tests__/reportedProfile.test.js +328 -0
  181. package/dist/__tests__/reportedProfile.test.js.map +1 -0
  182. package/dist/__tests__/restore.test.d.ts +2 -0
  183. package/dist/__tests__/restore.test.d.ts.map +1 -0
  184. package/dist/__tests__/restore.test.js +85 -0
  185. package/dist/__tests__/restore.test.js.map +1 -0
  186. package/dist/__tests__/route-latency-budget.test.d.ts +2 -0
  187. package/dist/__tests__/route-latency-budget.test.d.ts.map +1 -0
  188. package/dist/__tests__/route-latency-budget.test.js +106 -0
  189. package/dist/__tests__/route-latency-budget.test.js.map +1 -0
  190. package/dist/__tests__/runner.test.js +59 -44
  191. package/dist/__tests__/runner.test.js.map +1 -1
  192. package/dist/__tests__/session-binding-refusal-tenant.test.d.ts +2 -0
  193. package/dist/__tests__/session-binding-refusal-tenant.test.d.ts.map +1 -0
  194. package/dist/__tests__/session-binding-refusal-tenant.test.js +112 -0
  195. package/dist/__tests__/session-binding-refusal-tenant.test.js.map +1 -0
  196. package/dist/__tests__/session-close-loop.test.d.ts +2 -0
  197. package/dist/__tests__/session-close-loop.test.d.ts.map +1 -0
  198. package/dist/__tests__/session-close-loop.test.js +213 -0
  199. package/dist/__tests__/session-close-loop.test.js.map +1 -0
  200. package/dist/__tests__/session-label.test.d.ts +2 -0
  201. package/dist/__tests__/session-label.test.d.ts.map +1 -0
  202. package/dist/__tests__/session-label.test.js +46 -0
  203. package/dist/__tests__/session-label.test.js.map +1 -0
  204. package/dist/__tests__/session-list-show.test.d.ts +2 -0
  205. package/dist/__tests__/session-list-show.test.d.ts.map +1 -0
  206. package/dist/__tests__/session-list-show.test.js +174 -0
  207. package/dist/__tests__/session-list-show.test.js.map +1 -0
  208. package/dist/__tests__/session-reset.test.d.ts +2 -0
  209. package/dist/__tests__/session-reset.test.d.ts.map +1 -0
  210. package/dist/__tests__/session-reset.test.js +138 -0
  211. package/dist/__tests__/session-reset.test.js.map +1 -0
  212. package/dist/__tests__/session-resume-backstop.test.d.ts +2 -0
  213. package/dist/__tests__/session-resume-backstop.test.d.ts.map +1 -0
  214. package/dist/__tests__/session-resume-backstop.test.js +139 -0
  215. package/dist/__tests__/session-resume-backstop.test.js.map +1 -0
  216. package/dist/__tests__/session-role-name-sanitize.test.d.ts +2 -0
  217. package/dist/__tests__/session-role-name-sanitize.test.d.ts.map +1 -0
  218. package/dist/__tests__/session-role-name-sanitize.test.js +127 -0
  219. package/dist/__tests__/session-role-name-sanitize.test.js.map +1 -0
  220. package/dist/__tests__/session-start-key-refresh.test.d.ts +2 -0
  221. package/dist/__tests__/session-start-key-refresh.test.d.ts.map +1 -0
  222. package/dist/__tests__/session-start-key-refresh.test.js +197 -0
  223. package/dist/__tests__/session-start-key-refresh.test.js.map +1 -0
  224. package/dist/__tests__/session-state-machine.test.js +190 -9
  225. package/dist/__tests__/session-state-machine.test.js.map +1 -1
  226. package/dist/__tests__/session-switch.test.js +218 -3
  227. package/dist/__tests__/session-switch.test.js.map +1 -1
  228. package/dist/__tests__/session-touch.test.js +6 -1
  229. package/dist/__tests__/session-touch.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 +118 -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__/skill-vocabulary.test.d.ts +1 -1
  239. package/dist/__tests__/skill-vocabulary.test.js +7 -2
  240. package/dist/__tests__/skill-vocabulary.test.js.map +1 -1
  241. package/dist/__tests__/state.test.js +21 -1
  242. package/dist/__tests__/state.test.js.map +1 -1
  243. package/dist/__tests__/stillTrue.test.d.ts +2 -0
  244. package/dist/__tests__/stillTrue.test.d.ts.map +1 -0
  245. package/dist/__tests__/stillTrue.test.js +52 -0
  246. package/dist/__tests__/stillTrue.test.js.map +1 -0
  247. package/dist/__tests__/strip.test.js +57 -3
  248. package/dist/__tests__/strip.test.js.map +1 -1
  249. package/dist/__tests__/tenant-notice-write-path.test.d.ts +2 -0
  250. package/dist/__tests__/tenant-notice-write-path.test.d.ts.map +1 -0
  251. package/dist/__tests__/tenant-notice-write-path.test.js +169 -0
  252. package/dist/__tests__/tenant-notice-write-path.test.js.map +1 -0
  253. package/dist/__tests__/update-check.test.js +160 -1
  254. package/dist/__tests__/update-check.test.js.map +1 -1
  255. package/dist/__tests__/update.test.js +458 -8
  256. package/dist/__tests__/update.test.js.map +1 -1
  257. package/dist/__tests__/upgrade-runner.test.js +12 -0
  258. package/dist/__tests__/upgrade-runner.test.js.map +1 -1
  259. package/dist/__tests__/upgrade.test.d.ts +2 -0
  260. package/dist/__tests__/upgrade.test.d.ts.map +1 -0
  261. package/dist/__tests__/upgrade.test.js +56 -0
  262. package/dist/__tests__/upgrade.test.js.map +1 -0
  263. package/dist/__tests__/verify-formatter.test.d.ts +2 -0
  264. package/dist/__tests__/verify-formatter.test.d.ts.map +1 -0
  265. package/dist/__tests__/verify-formatter.test.js +85 -0
  266. package/dist/__tests__/verify-formatter.test.js.map +1 -0
  267. package/dist/__tests__/vocabulary-leak.test.d.ts +1 -7
  268. package/dist/__tests__/vocabulary-leak.test.d.ts.map +1 -1
  269. package/dist/__tests__/vocabulary-leak.test.js +8 -114
  270. package/dist/__tests__/vocabulary-leak.test.js.map +1 -1
  271. package/dist/__tests__/workspace.test.js +8 -26
  272. package/dist/__tests__/workspace.test.js.map +1 -1
  273. package/dist/__tests__/workspaceNotice.test.d.ts +2 -0
  274. package/dist/__tests__/workspaceNotice.test.d.ts.map +1 -0
  275. package/dist/__tests__/workspaceNotice.test.js +571 -0
  276. package/dist/__tests__/workspaceNotice.test.js.map +1 -0
  277. package/dist/commands/__tests__/quality.test.d.ts +2 -0
  278. package/dist/commands/__tests__/quality.test.d.ts.map +1 -0
  279. package/dist/commands/__tests__/quality.test.js +156 -0
  280. package/dist/commands/__tests__/quality.test.js.map +1 -0
  281. package/dist/commands/__tests__/rework.test.d.ts +2 -0
  282. package/dist/commands/__tests__/rework.test.d.ts.map +1 -0
  283. package/dist/commands/__tests__/rework.test.js +149 -0
  284. package/dist/commands/__tests__/rework.test.js.map +1 -0
  285. package/dist/commands/__tests__/tensionsList.test.d.ts +2 -0
  286. package/dist/commands/__tests__/tensionsList.test.d.ts.map +1 -0
  287. package/dist/commands/__tests__/tensionsList.test.js +63 -0
  288. package/dist/commands/__tests__/tensionsList.test.js.map +1 -0
  289. package/dist/commands/accept-policy.d.ts +10 -0
  290. package/dist/commands/accept-policy.d.ts.map +1 -0
  291. package/dist/commands/accept-policy.js +107 -0
  292. package/dist/commands/accept-policy.js.map +1 -0
  293. package/dist/commands/admin/cockpit.d.ts +2 -13
  294. package/dist/commands/admin/cockpit.d.ts.map +1 -1
  295. package/dist/commands/admin/cockpit.js +5 -5
  296. package/dist/commands/admin/cockpit.js.map +1 -1
  297. package/dist/commands/admin/index.d.ts +49 -0
  298. package/dist/commands/admin/index.d.ts.map +1 -1
  299. package/dist/commands/admin/index.js +148 -29
  300. package/dist/commands/admin/index.js.map +1 -1
  301. package/dist/commands/admin/index.test.d.ts +2 -0
  302. package/dist/commands/admin/index.test.d.ts.map +1 -0
  303. package/dist/commands/admin/index.test.js +94 -0
  304. package/dist/commands/admin/index.test.js.map +1 -0
  305. package/dist/commands/admin/inspect.js +1 -1
  306. package/dist/commands/admin/inspect.js.map +1 -1
  307. package/dist/commands/admin/probe.d.ts +75 -0
  308. package/dist/commands/admin/probe.d.ts.map +1 -0
  309. package/dist/commands/admin/probe.js +224 -0
  310. package/dist/commands/admin/probe.js.map +1 -0
  311. package/dist/commands/admin/probe.test.d.ts +2 -0
  312. package/dist/commands/admin/probe.test.d.ts.map +1 -0
  313. package/dist/commands/admin/probe.test.js +193 -0
  314. package/dist/commands/admin/probe.test.js.map +1 -0
  315. package/dist/commands/admin/run.d.ts +43 -0
  316. package/dist/commands/admin/run.d.ts.map +1 -0
  317. package/dist/commands/admin/run.js +78 -0
  318. package/dist/commands/admin/run.js.map +1 -0
  319. package/dist/commands/admin/run.test.d.ts +18 -0
  320. package/dist/commands/admin/run.test.d.ts.map +1 -0
  321. package/dist/commands/admin/run.test.js +168 -0
  322. package/dist/commands/admin/run.test.js.map +1 -0
  323. package/dist/commands/admin/seed.d.ts +6 -21
  324. package/dist/commands/admin/seed.d.ts.map +1 -1
  325. package/dist/commands/admin/seed.js +41 -304
  326. package/dist/commands/admin/seed.js.map +1 -1
  327. package/dist/commands/admin/seed.test.d.ts +3 -4
  328. package/dist/commands/admin/seed.test.d.ts.map +1 -1
  329. package/dist/commands/admin/seed.test.js +26 -76
  330. package/dist/commands/admin/seed.test.js.map +1 -1
  331. package/dist/commands/admin/seedRegistryEntries.generated.d.ts.map +1 -1
  332. package/dist/commands/admin/seedRegistryEntries.generated.js +3 -84
  333. package/dist/commands/admin/seedRegistryEntries.generated.js.map +1 -1
  334. package/dist/commands/admin/seedRegistryEntries.test.d.ts +5 -3
  335. package/dist/commands/admin/seedRegistryEntries.test.d.ts.map +1 -1
  336. package/dist/commands/admin/seedRegistryEntries.test.js +60 -26
  337. package/dist/commands/admin/seedRegistryEntries.test.js.map +1 -1
  338. package/dist/commands/admin/seedRowType.d.ts +22 -0
  339. package/dist/commands/admin/seedRowType.d.ts.map +1 -0
  340. package/dist/commands/admin/seedRowType.js +2 -0
  341. package/dist/commands/admin/seedRowType.js.map +1 -0
  342. package/dist/commands/admin/seedStatusColor.d.ts +9 -0
  343. package/dist/commands/admin/seedStatusColor.d.ts.map +1 -0
  344. package/dist/commands/admin/seedStatusColor.js +19 -0
  345. package/dist/commands/admin/seedStatusColor.js.map +1 -0
  346. package/dist/commands/admin/seedStatusColor.test.d.ts +2 -0
  347. package/dist/commands/admin/seedStatusColor.test.d.ts.map +1 -0
  348. package/dist/commands/admin/seedStatusColor.test.js +31 -0
  349. package/dist/commands/admin/seedStatusColor.test.js.map +1 -0
  350. package/dist/commands/brief.d.ts.map +1 -1
  351. package/dist/commands/brief.js +24 -2
  352. package/dist/commands/brief.js.map +1 -1
  353. package/dist/commands/capture.d.ts +15 -9
  354. package/dist/commands/capture.d.ts.map +1 -1
  355. package/dist/commands/capture.js +172 -228
  356. package/dist/commands/capture.js.map +1 -1
  357. package/dist/commands/chain-walk.d.ts.map +1 -1
  358. package/dist/commands/chain-walk.js.map +1 -1
  359. package/dist/commands/changes.d.ts.map +1 -1
  360. package/dist/commands/changes.js.map +1 -1
  361. package/dist/commands/codex-prep.d.ts +11 -1
  362. package/dist/commands/codex-prep.d.ts.map +1 -1
  363. package/dist/commands/codex-prep.js +14 -83
  364. package/dist/commands/codex-prep.js.map +1 -1
  365. package/dist/commands/collections.d.ts +1 -1
  366. package/dist/commands/collections.d.ts.map +1 -1
  367. package/dist/commands/collections.js +1 -1
  368. package/dist/commands/collections.js.map +1 -1
  369. package/dist/commands/conflicts.d.ts +35 -0
  370. package/dist/commands/conflicts.d.ts.map +1 -0
  371. package/dist/commands/conflicts.js +194 -0
  372. package/dist/commands/conflicts.js.map +1 -0
  373. package/dist/commands/conflicts.test.d.ts +2 -0
  374. package/dist/commands/conflicts.test.d.ts.map +1 -0
  375. package/dist/commands/conflicts.test.js +179 -0
  376. package/dist/commands/conflicts.test.js.map +1 -0
  377. package/dist/commands/connect-context.d.ts +27 -17
  378. package/dist/commands/connect-context.d.ts.map +1 -1
  379. package/dist/commands/connect-context.js +45 -31
  380. package/dist/commands/connect-context.js.map +1 -1
  381. package/dist/commands/connect-context.test.js +91 -53
  382. package/dist/commands/connect-context.test.js.map +1 -1
  383. package/dist/commands/connect-integration.test.js +15 -4
  384. package/dist/commands/connect-integration.test.js.map +1 -1
  385. package/dist/commands/connect-legacy-migration.test.d.ts +2 -0
  386. package/dist/commands/connect-legacy-migration.test.d.ts.map +1 -0
  387. package/dist/commands/connect-legacy-migration.test.js +109 -0
  388. package/dist/commands/connect-legacy-migration.test.js.map +1 -0
  389. package/dist/commands/connect-screens.d.ts +14 -3
  390. package/dist/commands/connect-screens.d.ts.map +1 -1
  391. package/dist/commands/connect-screens.js +62 -9
  392. package/dist/commands/connect-screens.js.map +1 -1
  393. package/dist/commands/connect.d.ts +6 -0
  394. package/dist/commands/connect.d.ts.map +1 -1
  395. package/dist/commands/connect.js +183 -31
  396. package/dist/commands/connect.js.map +1 -1
  397. package/dist/commands/connect.test.js +280 -6
  398. package/dist/commands/connect.test.js.map +1 -1
  399. package/dist/commands/constellation.d.ts.map +1 -1
  400. package/dist/commands/constellation.js.map +1 -1
  401. package/dist/commands/context.d.ts.map +1 -1
  402. package/dist/commands/context.js.map +1 -1
  403. package/dist/commands/cross-cut.d.ts.map +1 -1
  404. package/dist/commands/cross-cut.js.map +1 -1
  405. package/dist/commands/digest.d.ts +17 -0
  406. package/dist/commands/digest.d.ts.map +1 -0
  407. package/dist/commands/digest.js +58 -0
  408. package/dist/commands/digest.js.map +1 -0
  409. package/dist/commands/digest.test.d.ts +2 -0
  410. package/dist/commands/digest.test.d.ts.map +1 -0
  411. package/dist/commands/digest.test.js +36 -0
  412. package/dist/commands/digest.test.js.map +1 -0
  413. package/dist/commands/direction.d.ts +10 -0
  414. package/dist/commands/direction.d.ts.map +1 -0
  415. package/dist/commands/direction.js +79 -0
  416. package/dist/commands/direction.js.map +1 -0
  417. package/dist/commands/doctor.d.ts.map +1 -1
  418. package/dist/commands/doctor.js +107 -37
  419. package/dist/commands/doctor.js.map +1 -1
  420. package/dist/commands/doctor.test.js +221 -6
  421. package/dist/commands/doctor.test.js.map +1 -1
  422. package/dist/commands/entryAccept.d.ts +24 -0
  423. package/dist/commands/entryAccept.d.ts.map +1 -0
  424. package/dist/commands/entryAccept.js +296 -0
  425. package/dist/commands/entryAccept.js.map +1 -0
  426. package/dist/commands/entryDiscardResolve.d.ts +9 -0
  427. package/dist/commands/entryDiscardResolve.d.ts.map +1 -0
  428. package/dist/commands/entryDiscardResolve.js +27 -0
  429. package/dist/commands/entryDiscardResolve.js.map +1 -0
  430. package/dist/commands/entryOwn.d.ts +5 -0
  431. package/dist/commands/entryOwn.d.ts.map +1 -0
  432. package/dist/commands/entryOwn.js +17 -0
  433. package/dist/commands/entryOwn.js.map +1 -0
  434. package/dist/commands/entryPreflight.d.ts +8 -0
  435. package/dist/commands/entryPreflight.d.ts.map +1 -0
  436. package/dist/commands/entryPreflight.js +48 -0
  437. package/dist/commands/entryPreflight.js.map +1 -0
  438. package/dist/commands/entryTick.d.ts +8 -0
  439. package/dist/commands/entryTick.d.ts.map +1 -0
  440. package/dist/commands/entryTick.js +43 -0
  441. package/dist/commands/entryTick.js.map +1 -0
  442. package/dist/commands/feedback.d.ts +36 -0
  443. package/dist/commands/feedback.d.ts.map +1 -0
  444. package/dist/commands/feedback.js +174 -0
  445. package/dist/commands/feedback.js.map +1 -0
  446. package/dist/commands/feedback.test.d.ts +2 -0
  447. package/dist/commands/feedback.test.d.ts.map +1 -0
  448. package/dist/commands/feedback.test.js +109 -0
  449. package/dist/commands/feedback.test.js.map +1 -0
  450. package/dist/commands/fields.d.ts.map +1 -1
  451. package/dist/commands/fields.js +1 -1
  452. package/dist/commands/fields.js.map +1 -1
  453. package/dist/commands/files.d.ts +26 -0
  454. package/dist/commands/files.d.ts.map +1 -0
  455. package/dist/commands/files.js +160 -0
  456. package/dist/commands/files.js.map +1 -0
  457. package/dist/commands/files.test.d.ts +2 -0
  458. package/dist/commands/files.test.d.ts.map +1 -0
  459. package/dist/commands/files.test.js +278 -0
  460. package/dist/commands/files.test.js.map +1 -0
  461. package/dist/commands/handshake.d.ts +42 -186
  462. package/dist/commands/handshake.d.ts.map +1 -1
  463. package/dist/commands/handshake.js +469 -1539
  464. package/dist/commands/handshake.js.map +1 -1
  465. package/dist/commands/handshakeCursorSkillCleanup.d.ts +36 -0
  466. package/dist/commands/handshakeCursorSkillCleanup.d.ts.map +1 -0
  467. package/dist/commands/handshakeCursorSkillCleanup.js +110 -0
  468. package/dist/commands/handshakeCursorSkillCleanup.js.map +1 -0
  469. package/dist/commands/handshakeDriftClassification.d.ts +33 -0
  470. package/dist/commands/handshakeDriftClassification.d.ts.map +1 -0
  471. package/dist/commands/handshakeDriftClassification.js +62 -0
  472. package/dist/commands/handshakeDriftClassification.js.map +1 -0
  473. package/dist/commands/history.d.ts +30 -0
  474. package/dist/commands/history.d.ts.map +1 -0
  475. package/dist/commands/history.js +62 -0
  476. package/dist/commands/history.js.map +1 -0
  477. package/dist/commands/history.test.d.ts +2 -0
  478. package/dist/commands/history.test.d.ts.map +1 -0
  479. package/dist/commands/history.test.js +106 -0
  480. package/dist/commands/history.test.js.map +1 -0
  481. package/dist/commands/ingest.d.ts.map +1 -1
  482. package/dist/commands/ingest.js +9 -0
  483. package/dist/commands/ingest.js.map +1 -1
  484. package/dist/commands/init.d.ts +1 -1
  485. package/dist/commands/init.d.ts.map +1 -1
  486. package/dist/commands/init.js +22 -13
  487. package/dist/commands/init.js.map +1 -1
  488. package/dist/commands/organisation.d.ts +17 -0
  489. package/dist/commands/organisation.d.ts.map +1 -0
  490. package/dist/commands/organisation.js +199 -0
  491. package/dist/commands/organisation.js.map +1 -0
  492. package/dist/commands/organisation.test.d.ts +2 -0
  493. package/dist/commands/organisation.test.d.ts.map +1 -0
  494. package/dist/commands/organisation.test.js +210 -0
  495. package/dist/commands/organisation.test.js.map +1 -0
  496. package/dist/commands/organisationHierarchy.d.ts +8 -0
  497. package/dist/commands/organisationHierarchy.d.ts.map +1 -0
  498. package/dist/commands/organisationHierarchy.js +75 -0
  499. package/dist/commands/organisationHierarchy.js.map +1 -0
  500. package/dist/commands/organisationHierarchy.test.d.ts +2 -0
  501. package/dist/commands/organisationHierarchy.test.d.ts.map +1 -0
  502. package/dist/commands/organisationHierarchy.test.js +72 -0
  503. package/dist/commands/organisationHierarchy.test.js.map +1 -0
  504. package/dist/commands/organisationWrite.d.ts +18 -0
  505. package/dist/commands/organisationWrite.d.ts.map +1 -0
  506. package/dist/commands/organisationWrite.js +71 -0
  507. package/dist/commands/organisationWrite.js.map +1 -0
  508. package/dist/commands/orient.d.ts +69 -66
  509. package/dist/commands/orient.d.ts.map +1 -1
  510. package/dist/commands/orient.js +146 -20
  511. package/dist/commands/orient.js.map +1 -1
  512. package/dist/commands/outcome.d.ts +91 -0
  513. package/dist/commands/outcome.d.ts.map +1 -0
  514. package/dist/commands/outcome.js +204 -0
  515. package/dist/commands/outcome.js.map +1 -0
  516. package/dist/commands/outcome.test.d.ts +2 -0
  517. package/dist/commands/outcome.test.d.ts.map +1 -0
  518. package/dist/commands/outcome.test.js +308 -0
  519. package/dist/commands/outcome.test.js.map +1 -0
  520. package/dist/commands/profile.d.ts +24 -2
  521. package/dist/commands/profile.d.ts.map +1 -1
  522. package/dist/commands/profile.js +206 -36
  523. package/dist/commands/profile.js.map +1 -1
  524. package/dist/commands/proof-run.d.ts +51 -0
  525. package/dist/commands/proof-run.d.ts.map +1 -0
  526. package/dist/commands/proof-run.js +209 -0
  527. package/dist/commands/proof-run.js.map +1 -0
  528. package/dist/commands/quality.d.ts +16 -0
  529. package/dist/commands/quality.d.ts.map +1 -0
  530. package/dist/commands/quality.js +29 -0
  531. package/dist/commands/quality.js.map +1 -0
  532. package/dist/commands/questions.d.ts +23 -0
  533. package/dist/commands/questions.d.ts.map +1 -0
  534. package/dist/commands/questions.js +238 -0
  535. package/dist/commands/questions.js.map +1 -0
  536. package/dist/commands/questions.test.d.ts +2 -0
  537. package/dist/commands/questions.test.d.ts.map +1 -0
  538. package/dist/commands/questions.test.js +159 -0
  539. package/dist/commands/questions.test.js.map +1 -0
  540. package/dist/commands/relate.d.ts +1 -0
  541. package/dist/commands/relate.d.ts.map +1 -1
  542. package/dist/commands/relate.js +89 -15
  543. package/dist/commands/relate.js.map +1 -1
  544. package/dist/commands/restore.d.ts +2 -0
  545. package/dist/commands/restore.d.ts.map +1 -0
  546. package/dist/commands/restore.js +83 -0
  547. package/dist/commands/restore.js.map +1 -0
  548. package/dist/commands/rework.d.ts +24 -0
  549. package/dist/commands/rework.d.ts.map +1 -0
  550. package/dist/commands/rework.js +97 -0
  551. package/dist/commands/rework.js.map +1 -0
  552. package/dist/commands/role.d.ts +57 -0
  553. package/dist/commands/role.d.ts.map +1 -0
  554. package/dist/commands/role.js +141 -0
  555. package/dist/commands/role.js.map +1 -0
  556. package/dist/commands/role.test.d.ts +2 -0
  557. package/dist/commands/role.test.d.ts.map +1 -0
  558. package/dist/commands/role.test.js +211 -0
  559. package/dist/commands/role.test.js.map +1 -0
  560. package/dist/commands/scoreboard.d.ts +26 -0
  561. package/dist/commands/scoreboard.d.ts.map +1 -0
  562. package/dist/commands/scoreboard.js +40 -0
  563. package/dist/commands/scoreboard.js.map +1 -0
  564. package/dist/commands/search.d.ts.map +1 -1
  565. package/dist/commands/search.js.map +1 -1
  566. package/dist/commands/session.d.ts +60 -7
  567. package/dist/commands/session.d.ts.map +1 -1
  568. package/dist/commands/session.js +405 -98
  569. package/dist/commands/session.js.map +1 -1
  570. package/dist/commands/shape.d.ts +16 -0
  571. package/dist/commands/shape.d.ts.map +1 -0
  572. package/dist/commands/shape.js +149 -0
  573. package/dist/commands/shape.js.map +1 -0
  574. package/dist/commands/shape.test.d.ts +2 -0
  575. package/dist/commands/shape.test.d.ts.map +1 -0
  576. package/dist/commands/shape.test.js +148 -0
  577. package/dist/commands/shape.test.js.map +1 -0
  578. package/dist/commands/status.d.ts +7 -0
  579. package/dist/commands/status.d.ts.map +1 -0
  580. package/dist/commands/status.js +102 -0
  581. package/dist/commands/status.js.map +1 -0
  582. package/dist/commands/status.test.d.ts +2 -0
  583. package/dist/commands/status.test.d.ts.map +1 -0
  584. package/dist/commands/status.test.js +75 -0
  585. package/dist/commands/status.test.js.map +1 -0
  586. package/dist/commands/stillTrue.d.ts +14 -0
  587. package/dist/commands/stillTrue.d.ts.map +1 -0
  588. package/dist/commands/stillTrue.js +48 -0
  589. package/dist/commands/stillTrue.js.map +1 -0
  590. package/dist/commands/tensionsList.d.ts +5 -0
  591. package/dist/commands/tensionsList.d.ts.map +1 -0
  592. package/dist/commands/tensionsList.js +27 -0
  593. package/dist/commands/tensionsList.js.map +1 -0
  594. package/dist/commands/update.d.ts +21 -0
  595. package/dist/commands/update.d.ts.map +1 -1
  596. package/dist/commands/update.js +157 -42
  597. package/dist/commands/update.js.map +1 -1
  598. package/dist/commands/upgrade.d.ts.map +1 -1
  599. package/dist/commands/upgrade.js +31 -10
  600. package/dist/commands/upgrade.js.map +1 -1
  601. package/dist/commands/usage.d.ts.map +1 -1
  602. package/dist/commands/usage.js +0 -18
  603. package/dist/commands/usage.js.map +1 -1
  604. package/dist/commands/verify.d.ts.map +1 -1
  605. package/dist/commands/verify.js +7 -1
  606. package/dist/commands/verify.js.map +1 -1
  607. package/dist/commands/welcome.d.ts.map +1 -1
  608. package/dist/commands/welcome.js +5 -2
  609. package/dist/commands/welcome.js.map +1 -1
  610. package/dist/commands/whoami.d.ts +10 -2
  611. package/dist/commands/whoami.d.ts.map +1 -1
  612. package/dist/commands/whoami.js +76 -20
  613. package/dist/commands/whoami.js.map +1 -1
  614. package/dist/commands/whoami.test.js +86 -6
  615. package/dist/commands/whoami.test.js.map +1 -1
  616. package/dist/commands/workspace.d.ts +6 -64
  617. package/dist/commands/workspace.d.ts.map +1 -1
  618. package/dist/commands/workspace.js +3 -26
  619. package/dist/commands/workspace.js.map +1 -1
  620. package/dist/formatters/__tests__/orient-provenance.test.d.ts +6 -0
  621. package/dist/formatters/__tests__/orient-provenance.test.d.ts.map +1 -0
  622. package/dist/formatters/__tests__/orient-provenance.test.js +320 -0
  623. package/dist/formatters/__tests__/orient-provenance.test.js.map +1 -0
  624. package/dist/formatters/__tests__/orient-ruleLists.test.d.ts +2 -0
  625. package/dist/formatters/__tests__/orient-ruleLists.test.d.ts.map +1 -0
  626. package/dist/formatters/__tests__/orient-ruleLists.test.js +93 -0
  627. package/dist/formatters/__tests__/orient-ruleLists.test.js.map +1 -0
  628. package/dist/formatters/__tests__/session-list-show.test.d.ts +2 -0
  629. package/dist/formatters/__tests__/session-list-show.test.d.ts.map +1 -0
  630. package/dist/formatters/__tests__/session-list-show.test.js +195 -0
  631. package/dist/formatters/__tests__/session-list-show.test.js.map +1 -0
  632. package/dist/formatters/__tests__/session.test.d.ts +2 -0
  633. package/dist/formatters/__tests__/session.test.d.ts.map +1 -0
  634. package/dist/formatters/__tests__/session.test.js +193 -0
  635. package/dist/formatters/__tests__/session.test.js.map +1 -0
  636. package/dist/formatters/__tests__/tensionsList.test.d.ts +2 -0
  637. package/dist/formatters/__tests__/tensionsList.test.d.ts.map +1 -0
  638. package/dist/formatters/__tests__/tensionsList.test.js +30 -0
  639. package/dist/formatters/__tests__/tensionsList.test.js.map +1 -0
  640. package/dist/formatters/brief.d.ts +6 -15
  641. package/dist/formatters/brief.d.ts.map +1 -1
  642. package/dist/formatters/brief.js +16 -14
  643. package/dist/formatters/brief.js.map +1 -1
  644. package/dist/formatters/brief.test.d.ts +2 -0
  645. package/dist/formatters/brief.test.d.ts.map +1 -0
  646. package/dist/formatters/brief.test.js +21 -0
  647. package/dist/formatters/brief.test.js.map +1 -0
  648. package/dist/formatters/capture.d.ts +17 -10
  649. package/dist/formatters/capture.d.ts.map +1 -1
  650. package/dist/formatters/capture.js +32 -10
  651. package/dist/formatters/capture.js.map +1 -1
  652. package/dist/formatters/coaching.d.ts +53 -0
  653. package/dist/formatters/coaching.d.ts.map +1 -0
  654. package/dist/formatters/coaching.js +51 -0
  655. package/dist/formatters/coaching.js.map +1 -0
  656. package/dist/formatters/collections.d.ts +0 -1
  657. package/dist/formatters/collections.d.ts.map +1 -1
  658. package/dist/formatters/collections.js +14 -5
  659. package/dist/formatters/collections.js.map +1 -1
  660. package/dist/formatters/conflicts.d.ts +69 -0
  661. package/dist/formatters/conflicts.d.ts.map +1 -0
  662. package/dist/formatters/conflicts.js +87 -0
  663. package/dist/formatters/conflicts.js.map +1 -0
  664. package/dist/formatters/conflicts.test.d.ts +2 -0
  665. package/dist/formatters/conflicts.test.d.ts.map +1 -0
  666. package/dist/formatters/conflicts.test.js +136 -0
  667. package/dist/formatters/conflicts.test.js.map +1 -0
  668. package/dist/formatters/context.d.ts +1 -1
  669. package/dist/formatters/context.d.ts.map +1 -1
  670. package/dist/formatters/context.js.map +1 -1
  671. package/dist/formatters/digest.d.ts +13 -0
  672. package/dist/formatters/digest.d.ts.map +1 -0
  673. package/dist/formatters/digest.js +98 -0
  674. package/dist/formatters/digest.js.map +1 -0
  675. package/dist/formatters/digest.test.d.ts +2 -0
  676. package/dist/formatters/digest.test.d.ts.map +1 -0
  677. package/dist/formatters/digest.test.js +166 -0
  678. package/dist/formatters/digest.test.js.map +1 -0
  679. package/dist/formatters/direction.d.ts +48 -0
  680. package/dist/formatters/direction.d.ts.map +1 -0
  681. package/dist/formatters/direction.js +75 -0
  682. package/dist/formatters/direction.js.map +1 -0
  683. package/dist/formatters/direction.test.d.ts +2 -0
  684. package/dist/formatters/direction.test.d.ts.map +1 -0
  685. package/dist/formatters/direction.test.js +70 -0
  686. package/dist/formatters/direction.test.js.map +1 -0
  687. package/dist/formatters/entry.d.ts +61 -0
  688. package/dist/formatters/entry.d.ts.map +1 -1
  689. package/dist/formatters/entry.js +100 -11
  690. package/dist/formatters/entry.js.map +1 -1
  691. package/dist/formatters/entryAccept.d.ts +77 -0
  692. package/dist/formatters/entryAccept.d.ts.map +1 -0
  693. package/dist/formatters/entryAccept.js +76 -0
  694. package/dist/formatters/entryAccept.js.map +1 -0
  695. package/dist/formatters/feedback.d.ts +56 -0
  696. package/dist/formatters/feedback.d.ts.map +1 -0
  697. package/dist/formatters/feedback.js +89 -0
  698. package/dist/formatters/feedback.js.map +1 -0
  699. package/dist/formatters/feedback.test.d.ts +2 -0
  700. package/dist/formatters/feedback.test.d.ts.map +1 -0
  701. package/dist/formatters/feedback.test.js +112 -0
  702. package/dist/formatters/feedback.test.js.map +1 -0
  703. package/dist/formatters/fields.d.ts +7 -1
  704. package/dist/formatters/fields.d.ts.map +1 -1
  705. package/dist/formatters/fields.js +9 -3
  706. package/dist/formatters/fields.js.map +1 -1
  707. package/dist/formatters/fields.test.d.ts +2 -0
  708. package/dist/formatters/fields.test.d.ts.map +1 -0
  709. package/dist/formatters/fields.test.js +42 -0
  710. package/dist/formatters/fields.test.js.map +1 -0
  711. package/dist/formatters/handshake.d.ts +24 -6
  712. package/dist/formatters/handshake.d.ts.map +1 -1
  713. package/dist/formatters/handshake.js +34 -15
  714. package/dist/formatters/handshake.js.map +1 -1
  715. package/dist/formatters/orient.coherencyCheckTag.test.d.ts +2 -0
  716. package/dist/formatters/orient.coherencyCheckTag.test.d.ts.map +1 -0
  717. package/dist/formatters/orient.coherencyCheckTag.test.js +22 -0
  718. package/dist/formatters/orient.coherencyCheckTag.test.js.map +1 -0
  719. package/dist/formatters/orient.d.ts +128 -109
  720. package/dist/formatters/orient.d.ts.map +1 -1
  721. package/dist/formatters/orient.js +187 -143
  722. package/dist/formatters/orient.js.map +1 -1
  723. package/dist/formatters/orient.rcrtMiss.test.d.ts +2 -0
  724. package/dist/formatters/orient.rcrtMiss.test.d.ts.map +1 -0
  725. package/dist/formatters/orient.rcrtMiss.test.js +78 -0
  726. package/dist/formatters/orient.rcrtMiss.test.js.map +1 -0
  727. package/dist/formatters/orient.rituals.test.d.ts +2 -0
  728. package/dist/formatters/orient.rituals.test.d.ts.map +1 -0
  729. package/dist/formatters/orient.rituals.test.js +74 -0
  730. package/dist/formatters/orient.rituals.test.js.map +1 -0
  731. package/dist/formatters/orient.shapeAdvisorySummary.test.d.ts +2 -0
  732. package/dist/formatters/orient.shapeAdvisorySummary.test.d.ts.map +1 -0
  733. package/dist/formatters/orient.shapeAdvisorySummary.test.js +60 -0
  734. package/dist/formatters/orient.shapeAdvisorySummary.test.js.map +1 -0
  735. package/dist/formatters/orientDegradation.d.ts +38 -0
  736. package/dist/formatters/orientDegradation.d.ts.map +1 -0
  737. package/dist/formatters/orientDegradation.js +50 -0
  738. package/dist/formatters/orientDegradation.js.map +1 -0
  739. package/dist/formatters/orientDegradation.test.d.ts +2 -0
  740. package/dist/formatters/orientDegradation.test.d.ts.map +1 -0
  741. package/dist/formatters/orientDegradation.test.js +28 -0
  742. package/dist/formatters/orientDegradation.test.js.map +1 -0
  743. package/dist/formatters/orientDirection.d.ts +81 -0
  744. package/dist/formatters/orientDirection.d.ts.map +1 -0
  745. package/dist/formatters/orientDirection.js +23 -0
  746. package/dist/formatters/orientDirection.js.map +1 -0
  747. package/dist/formatters/orientDirection.test.d.ts +2 -0
  748. package/dist/formatters/orientDirection.test.d.ts.map +1 -0
  749. package/dist/formatters/orientDirection.test.js +71 -0
  750. package/dist/formatters/orientDirection.test.js.map +1 -0
  751. package/dist/formatters/orientRetrievalMiss.d.ts +22 -0
  752. package/dist/formatters/orientRetrievalMiss.d.ts.map +1 -0
  753. package/dist/formatters/orientRetrievalMiss.js +17 -0
  754. package/dist/formatters/orientRetrievalMiss.js.map +1 -0
  755. package/dist/formatters/questions.d.ts +72 -0
  756. package/dist/formatters/questions.d.ts.map +1 -0
  757. package/dist/formatters/questions.js +116 -0
  758. package/dist/formatters/questions.js.map +1 -0
  759. package/dist/formatters/questions.test.d.ts +2 -0
  760. package/dist/formatters/questions.test.d.ts.map +1 -0
  761. package/dist/formatters/questions.test.js +144 -0
  762. package/dist/formatters/questions.test.js.map +1 -0
  763. package/dist/formatters/relate.d.ts +13 -2
  764. package/dist/formatters/relate.d.ts.map +1 -1
  765. package/dist/formatters/relate.js +15 -5
  766. package/dist/formatters/relate.js.map +1 -1
  767. package/dist/formatters/relate.test.d.ts +2 -0
  768. package/dist/formatters/relate.test.d.ts.map +1 -0
  769. package/dist/formatters/relate.test.js +91 -0
  770. package/dist/formatters/relate.test.js.map +1 -0
  771. package/dist/formatters/scoreboard.d.ts +11 -0
  772. package/dist/formatters/scoreboard.d.ts.map +1 -0
  773. package/dist/formatters/scoreboard.js +162 -0
  774. package/dist/formatters/scoreboard.js.map +1 -0
  775. package/dist/formatters/scoreboard.test.d.ts +2 -0
  776. package/dist/formatters/scoreboard.test.d.ts.map +1 -0
  777. package/dist/formatters/scoreboard.test.js +301 -0
  778. package/dist/formatters/scoreboard.test.js.map +1 -0
  779. package/dist/formatters/search.d.ts.map +1 -1
  780. package/dist/formatters/search.js +11 -1
  781. package/dist/formatters/search.js.map +1 -1
  782. package/dist/formatters/search.test.d.ts +2 -0
  783. package/dist/formatters/search.test.d.ts.map +1 -0
  784. package/dist/formatters/search.test.js +57 -0
  785. package/dist/formatters/search.test.js.map +1 -0
  786. package/dist/formatters/session-feedback.test.d.ts +2 -0
  787. package/dist/formatters/session-feedback.test.d.ts.map +1 -0
  788. package/dist/formatters/session-feedback.test.js +146 -0
  789. package/dist/formatters/session-feedback.test.js.map +1 -0
  790. package/dist/formatters/session.d.ts +122 -5
  791. package/dist/formatters/session.d.ts.map +1 -1
  792. package/dist/formatters/session.js +312 -21
  793. package/dist/formatters/session.js.map +1 -1
  794. package/dist/formatters/shape.d.ts +54 -0
  795. package/dist/formatters/shape.d.ts.map +1 -0
  796. package/dist/formatters/shape.js +97 -0
  797. package/dist/formatters/shape.js.map +1 -0
  798. package/dist/formatters/shape.test.d.ts +2 -0
  799. package/dist/formatters/shape.test.d.ts.map +1 -0
  800. package/dist/formatters/shape.test.js +80 -0
  801. package/dist/formatters/shape.test.js.map +1 -0
  802. package/dist/formatters/spineCheck.d.ts +14 -0
  803. package/dist/formatters/spineCheck.d.ts.map +1 -0
  804. package/dist/formatters/spineCheck.js +113 -0
  805. package/dist/formatters/spineCheck.js.map +1 -0
  806. package/dist/formatters/spineCheck.test.d.ts +2 -0
  807. package/dist/formatters/spineCheck.test.d.ts.map +1 -0
  808. package/dist/formatters/spineCheck.test.js +76 -0
  809. package/dist/formatters/spineCheck.test.js.map +1 -0
  810. package/dist/formatters/tensionsList.d.ts +17 -0
  811. package/dist/formatters/tensionsList.d.ts.map +1 -0
  812. package/dist/formatters/tensionsList.js +33 -0
  813. package/dist/formatters/tensionsList.js.map +1 -0
  814. package/dist/formatters/update.d.ts +22 -0
  815. package/dist/formatters/update.d.ts.map +1 -1
  816. package/dist/formatters/update.js +36 -7
  817. package/dist/formatters/update.js.map +1 -1
  818. package/dist/formatters/update.test.d.ts +2 -0
  819. package/dist/formatters/update.test.d.ts.map +1 -0
  820. package/dist/formatters/update.test.js +59 -0
  821. package/dist/formatters/update.test.js.map +1 -0
  822. package/dist/formatters/verify.d.ts +12 -4
  823. package/dist/formatters/verify.d.ts.map +1 -1
  824. package/dist/formatters/verify.js +20 -2
  825. package/dist/formatters/verify.js.map +1 -1
  826. package/dist/generated/healthGapKinds.generated.d.ts +12 -0
  827. package/dist/generated/healthGapKinds.generated.d.ts.map +1 -0
  828. package/dist/generated/healthGapKinds.generated.js +17 -0
  829. package/dist/generated/healthGapKinds.generated.js.map +1 -0
  830. package/dist/generated/organisationalAuthorityRefusalCodes.generated.d.ts +12 -0
  831. package/dist/generated/organisationalAuthorityRefusalCodes.generated.d.ts.map +1 -0
  832. package/dist/generated/organisationalAuthorityRefusalCodes.generated.js +11 -0
  833. package/dist/generated/organisationalAuthorityRefusalCodes.generated.js.map +1 -0
  834. package/dist/generated/relationTypes.generated.d.ts +12 -0
  835. package/dist/generated/relationTypes.generated.d.ts.map +1 -0
  836. package/dist/generated/relationTypes.generated.js +11 -0
  837. package/dist/generated/relationTypes.generated.js.map +1 -0
  838. package/dist/generated/routeLatencyBudget.generated.d.ts +56 -0
  839. package/dist/generated/routeLatencyBudget.generated.d.ts.map +1 -0
  840. package/dist/generated/routeLatencyBudget.generated.js +281 -0
  841. package/dist/generated/routeLatencyBudget.generated.js.map +1 -0
  842. package/dist/generated/sourceSurfaces.generated.d.ts +12 -0
  843. package/dist/generated/sourceSurfaces.generated.d.ts.map +1 -0
  844. package/dist/generated/sourceSurfaces.generated.js +11 -0
  845. package/dist/generated/sourceSurfaces.generated.js.map +1 -0
  846. package/dist/generators/adapters.d.ts +39 -6
  847. package/dist/generators/adapters.d.ts.map +1 -1
  848. package/dist/generators/adapters.js +86 -55
  849. package/dist/generators/adapters.js.map +1 -1
  850. package/dist/generators/adapters.test.js +1 -3
  851. package/dist/generators/adapters.test.js.map +1 -1
  852. package/dist/generators/boundary-manifest.real-file.test.d.ts +2 -0
  853. package/dist/generators/boundary-manifest.real-file.test.d.ts.map +1 -0
  854. package/dist/generators/boundary-manifest.real-file.test.js +70 -0
  855. package/dist/generators/boundary-manifest.real-file.test.js.map +1 -0
  856. package/dist/generators/briefing-projections.test.d.ts +2 -0
  857. package/dist/generators/briefing-projections.test.d.ts.map +1 -0
  858. package/dist/generators/briefing-projections.test.js +97 -0
  859. package/dist/generators/briefing-projections.test.js.map +1 -0
  860. package/dist/generators/context-md.d.ts +7 -2
  861. package/dist/generators/context-md.d.ts.map +1 -1
  862. package/dist/generators/context-md.js +10 -50
  863. package/dist/generators/context-md.js.map +1 -1
  864. package/dist/generators/everyone-rules-md.d.ts +9 -0
  865. package/dist/generators/everyone-rules-md.d.ts.map +1 -0
  866. package/dist/generators/everyone-rules-md.js +21 -0
  867. package/dist/generators/everyone-rules-md.js.map +1 -0
  868. package/dist/generators/noProjectionAssets.d.ts +15 -0
  869. package/dist/generators/noProjectionAssets.d.ts.map +1 -0
  870. package/dist/generators/noProjectionAssets.js +6 -0
  871. package/dist/generators/noProjectionAssets.js.map +1 -0
  872. package/dist/generators/portable-knowledge.d.ts +9 -26
  873. package/dist/generators/portable-knowledge.d.ts.map +1 -1
  874. package/dist/generators/portable-knowledge.js +11 -125
  875. package/dist/generators/portable-knowledge.js.map +1 -1
  876. package/dist/generators/portable-knowledge.test.js +82 -267
  877. package/dist/generators/portable-knowledge.test.js.map +1 -1
  878. package/dist/generators/region-projections.d.ts +0 -1
  879. package/dist/generators/region-projections.d.ts.map +1 -1
  880. package/dist/generators/region-projections.js +7 -5
  881. package/dist/generators/region-projections.js.map +1 -1
  882. package/dist/generators/region-projections.test.js +10 -15
  883. package/dist/generators/region-projections.test.js.map +1 -1
  884. package/dist/generators/retired-projections.d.ts +12 -0
  885. package/dist/generators/retired-projections.d.ts.map +1 -0
  886. package/dist/generators/retired-projections.js +75 -0
  887. package/dist/generators/retired-projections.js.map +1 -0
  888. package/dist/generators/retired-projections.test.d.ts +2 -0
  889. package/dist/generators/retired-projections.test.d.ts.map +1 -0
  890. package/dist/generators/retired-projections.test.js +64 -0
  891. package/dist/generators/retired-projections.test.js.map +1 -0
  892. package/dist/handleCliError.d.ts +2 -0
  893. package/dist/handleCliError.d.ts.map +1 -0
  894. package/dist/handleCliError.js +56 -0
  895. package/dist/handleCliError.js.map +1 -0
  896. package/dist/index.d.ts +0 -5
  897. package/dist/index.d.ts.map +1 -1
  898. package/dist/index.js +182 -532
  899. package/dist/index.js.map +1 -1
  900. package/dist/lib/__tests__/legalRelationTypes.test.d.ts +2 -0
  901. package/dist/lib/__tests__/legalRelationTypes.test.d.ts.map +1 -0
  902. package/dist/lib/__tests__/legalRelationTypes.test.js +61 -0
  903. package/dist/lib/__tests__/legalRelationTypes.test.js.map +1 -0
  904. package/dist/lib/__tests__/parseFields.test.d.ts +2 -0
  905. package/dist/lib/__tests__/parseFields.test.d.ts.map +1 -0
  906. package/dist/lib/__tests__/parseFields.test.js +40 -0
  907. package/dist/lib/__tests__/parseFields.test.js.map +1 -0
  908. package/dist/lib/adminConfig.d.ts +48 -0
  909. package/dist/lib/adminConfig.d.ts.map +1 -0
  910. package/dist/lib/adminConfig.js +130 -0
  911. package/dist/lib/adminConfig.js.map +1 -0
  912. package/dist/lib/canonicalRefs.d.ts +27 -8
  913. package/dist/lib/canonicalRefs.d.ts.map +1 -1
  914. package/dist/lib/canonicalRefs.js +25 -6
  915. package/dist/lib/canonicalRefs.js.map +1 -1
  916. package/dist/lib/captureGrounding.d.ts +48 -0
  917. package/dist/lib/captureGrounding.d.ts.map +1 -0
  918. package/dist/lib/captureGrounding.js +54 -0
  919. package/dist/lib/captureGrounding.js.map +1 -0
  920. package/dist/lib/captureGrounding.test.d.ts +2 -0
  921. package/dist/lib/captureGrounding.test.d.ts.map +1 -0
  922. package/dist/lib/captureGrounding.test.js +74 -0
  923. package/dist/lib/captureGrounding.test.js.map +1 -0
  924. package/dist/lib/captureLink.d.ts +26 -0
  925. package/dist/lib/captureLink.d.ts.map +1 -0
  926. package/dist/lib/captureLink.js +110 -0
  927. package/dist/lib/captureLink.js.map +1 -0
  928. package/dist/lib/checklist.d.ts +32 -0
  929. package/dist/lib/checklist.d.ts.map +1 -0
  930. package/dist/lib/checklist.js +77 -0
  931. package/dist/lib/checklist.js.map +1 -0
  932. package/dist/lib/client.d.ts +46 -19
  933. package/dist/lib/client.d.ts.map +1 -1
  934. package/dist/lib/client.js +221 -66
  935. package/dist/lib/client.js.map +1 -1
  936. package/dist/lib/collectionRegistry.d.ts +40 -5
  937. package/dist/lib/collectionRegistry.d.ts.map +1 -1
  938. package/dist/lib/collectionRegistry.js +70 -39
  939. package/dist/lib/collectionRegistry.js.map +1 -1
  940. package/dist/lib/commanderOptions.d.ts +8 -0
  941. package/dist/lib/commanderOptions.d.ts.map +1 -0
  942. package/dist/lib/commanderOptions.js +10 -0
  943. package/dist/lib/commanderOptions.js.map +1 -0
  944. package/dist/lib/compose-wrapup-view.d.ts +48 -0
  945. package/dist/lib/compose-wrapup-view.d.ts.map +1 -0
  946. package/dist/lib/compose-wrapup-view.js +37 -0
  947. package/dist/lib/compose-wrapup-view.js.map +1 -0
  948. package/dist/lib/config.d.ts +59 -100
  949. package/dist/lib/config.d.ts.map +1 -1
  950. package/dist/lib/config.js +162 -253
  951. package/dist/lib/config.js.map +1 -1
  952. package/dist/lib/configResult.d.ts +103 -0
  953. package/dist/lib/configResult.d.ts.map +1 -0
  954. package/dist/lib/configResult.js +180 -0
  955. package/dist/lib/configResult.js.map +1 -0
  956. package/dist/lib/constants.d.ts +3 -1
  957. package/dist/lib/constants.d.ts.map +1 -1
  958. package/dist/lib/constants.js +6 -1
  959. package/dist/lib/constants.js.map +1 -1
  960. package/dist/lib/conversation.d.ts +36 -0
  961. package/dist/lib/conversation.d.ts.map +1 -0
  962. package/dist/lib/conversation.js +66 -0
  963. package/dist/lib/conversation.js.map +1 -0
  964. package/dist/lib/createEntryResult.d.ts +34 -0
  965. package/dist/lib/createEntryResult.d.ts.map +1 -0
  966. package/dist/lib/createEntryResult.js +12 -0
  967. package/dist/lib/createEntryResult.js.map +1 -0
  968. package/dist/lib/deployment.js +2 -2
  969. package/dist/lib/deployment.js.map +1 -1
  970. package/dist/lib/deployment.test.js +20 -1
  971. package/dist/lib/deployment.test.js.map +1 -1
  972. package/dist/lib/envKeySnapshot.d.ts +10 -0
  973. package/dist/lib/envKeySnapshot.d.ts.map +1 -0
  974. package/dist/lib/envKeySnapshot.js +30 -0
  975. package/dist/lib/envKeySnapshot.js.map +1 -0
  976. package/dist/lib/errors.d.ts +87 -0
  977. package/dist/lib/errors.d.ts.map +1 -1
  978. package/dist/lib/errors.js +78 -0
  979. package/dist/lib/errors.js.map +1 -1
  980. package/dist/lib/frontmatter.d.ts +55 -0
  981. package/dist/lib/frontmatter.d.ts.map +1 -0
  982. package/dist/lib/frontmatter.js +92 -0
  983. package/dist/lib/frontmatter.js.map +1 -0
  984. package/dist/lib/frontmatter.test.d.ts +15 -0
  985. package/dist/lib/frontmatter.test.d.ts.map +1 -0
  986. package/dist/lib/frontmatter.test.js +98 -0
  987. package/dist/lib/frontmatter.test.js.map +1 -0
  988. package/dist/lib/gatewayTimeout.d.ts +88 -0
  989. package/dist/lib/gatewayTimeout.d.ts.map +1 -0
  990. package/dist/lib/gatewayTimeout.js +118 -0
  991. package/dist/lib/gatewayTimeout.js.map +1 -0
  992. package/dist/lib/gitEnvLeakKeysParity.test.d.ts +2 -0
  993. package/dist/lib/gitEnvLeakKeysParity.test.d.ts.map +1 -0
  994. package/dist/lib/gitEnvLeakKeysParity.test.js +73 -0
  995. package/dist/lib/gitEnvLeakKeysParity.test.js.map +1 -0
  996. package/dist/lib/glossary.js +1 -1
  997. package/dist/lib/glossary.js.map +1 -1
  998. package/dist/lib/hook-intents.d.ts.map +1 -1
  999. package/dist/lib/hook-intents.js +2 -3
  1000. package/dist/lib/hook-intents.js.map +1 -1
  1001. package/dist/lib/judgeWait.d.ts +50 -0
  1002. package/dist/lib/judgeWait.d.ts.map +1 -0
  1003. package/dist/lib/judgeWait.js +64 -0
  1004. package/dist/lib/judgeWait.js.map +1 -0
  1005. package/dist/lib/kernelEnvelope.d.ts +42 -0
  1006. package/dist/lib/kernelEnvelope.d.ts.map +1 -0
  1007. package/dist/lib/kernelEnvelope.js +67 -0
  1008. package/dist/lib/kernelEnvelope.js.map +1 -0
  1009. package/dist/lib/legalRelationTypes.d.ts +19 -0
  1010. package/dist/lib/legalRelationTypes.d.ts.map +1 -0
  1011. package/dist/lib/legalRelationTypes.js +64 -0
  1012. package/dist/lib/legalRelationTypes.js.map +1 -0
  1013. package/dist/lib/localBinding.d.ts +86 -0
  1014. package/dist/lib/localBinding.d.ts.map +1 -0
  1015. package/dist/lib/localBinding.js +173 -0
  1016. package/dist/lib/localBinding.js.map +1 -0
  1017. package/dist/lib/method-registry.d.ts +16 -11
  1018. package/dist/lib/method-registry.d.ts.map +1 -1
  1019. package/dist/lib/method-registry.js +13 -25
  1020. package/dist/lib/method-registry.js.map +1 -1
  1021. package/dist/lib/normalizeMaterializedFilename.d.ts +3 -3
  1022. package/dist/lib/normalizeMaterializedFilename.js +3 -3
  1023. package/dist/lib/notice-marker.d.ts +3 -0
  1024. package/dist/lib/notice-marker.d.ts.map +1 -0
  1025. package/dist/lib/notice-marker.js +223 -0
  1026. package/dist/lib/notice-marker.js.map +1 -0
  1027. package/dist/lib/onboarding-path-b.d.ts.map +1 -1
  1028. package/dist/lib/onboarding-path-b.js +39 -14
  1029. package/dist/lib/onboarding-path-b.js.map +1 -1
  1030. package/dist/lib/onboarding-shared.d.ts +27 -4
  1031. package/dist/lib/onboarding-shared.d.ts.map +1 -1
  1032. package/dist/lib/onboarding-shared.js +54 -20
  1033. package/dist/lib/onboarding-shared.js.map +1 -1
  1034. package/dist/lib/onboarding-shared.test.d.ts +2 -0
  1035. package/dist/lib/onboarding-shared.test.d.ts.map +1 -0
  1036. package/dist/lib/onboarding-shared.test.js +131 -0
  1037. package/dist/lib/onboarding-shared.test.js.map +1 -0
  1038. package/dist/lib/onboarding-topics.js +1 -1
  1039. package/dist/lib/onboarding.d.ts +5 -1
  1040. package/dist/lib/onboarding.d.ts.map +1 -1
  1041. package/dist/lib/onboarding.js +62 -25
  1042. package/dist/lib/onboarding.js.map +1 -1
  1043. package/dist/lib/ownerLine.d.ts +73 -0
  1044. package/dist/lib/ownerLine.d.ts.map +1 -0
  1045. package/dist/lib/ownerLine.js +57 -0
  1046. package/dist/lib/ownerLine.js.map +1 -0
  1047. package/dist/lib/parseFields.d.ts +19 -0
  1048. package/dist/lib/parseFields.d.ts.map +1 -0
  1049. package/dist/lib/parseFields.js +49 -0
  1050. package/dist/lib/parseFields.js.map +1 -0
  1051. package/dist/lib/previewBanner.d.ts +9 -0
  1052. package/dist/lib/previewBanner.d.ts.map +1 -0
  1053. package/dist/lib/previewBanner.js +37 -0
  1054. package/dist/lib/previewBanner.js.map +1 -0
  1055. package/dist/lib/productbrain-files.d.ts +94 -0
  1056. package/dist/lib/productbrain-files.d.ts.map +1 -0
  1057. package/dist/lib/productbrain-files.js +214 -0
  1058. package/dist/lib/productbrain-files.js.map +1 -0
  1059. package/dist/lib/productbrain-files.test.d.ts +2 -0
  1060. package/dist/lib/productbrain-files.test.d.ts.map +1 -0
  1061. package/dist/lib/productbrain-files.test.js +293 -0
  1062. package/dist/lib/productbrain-files.test.js.map +1 -0
  1063. package/dist/lib/profiles.d.ts +50 -4
  1064. package/dist/lib/profiles.d.ts.map +1 -1
  1065. package/dist/lib/profiles.js +68 -17
  1066. package/dist/lib/profiles.js.map +1 -1
  1067. package/dist/lib/projectConfig.d.ts +81 -0
  1068. package/dist/lib/projectConfig.d.ts.map +1 -0
  1069. package/dist/lib/projectConfig.js +157 -0
  1070. package/dist/lib/projectConfig.js.map +1 -0
  1071. package/dist/lib/proseBody.d.ts +14 -0
  1072. package/dist/lib/proseBody.d.ts.map +1 -0
  1073. package/dist/lib/proseBody.js +25 -0
  1074. package/dist/lib/proseBody.js.map +1 -0
  1075. package/dist/lib/rate-limit.d.ts +38 -0
  1076. package/dist/lib/rate-limit.d.ts.map +1 -0
  1077. package/dist/lib/rate-limit.js +83 -0
  1078. package/dist/lib/rate-limit.js.map +1 -0
  1079. package/dist/lib/readinessNotices.d.ts +12 -0
  1080. package/dist/lib/readinessNotices.d.ts.map +1 -0
  1081. package/dist/lib/readinessNotices.js +15 -0
  1082. package/dist/lib/readinessNotices.js.map +1 -0
  1083. package/dist/lib/repo-detect.d.ts +8 -2
  1084. package/dist/lib/repo-detect.d.ts.map +1 -1
  1085. package/dist/lib/repo-detect.js +11 -6
  1086. package/dist/lib/repo-detect.js.map +1 -1
  1087. package/dist/lib/reportedProfile.d.ts +18 -0
  1088. package/dist/lib/reportedProfile.d.ts.map +1 -0
  1089. package/dist/lib/reportedProfile.js +144 -0
  1090. package/dist/lib/reportedProfile.js.map +1 -0
  1091. package/dist/lib/ruleListRender.d.ts +178 -0
  1092. package/dist/lib/ruleListRender.d.ts.map +1 -0
  1093. package/dist/lib/ruleListRender.js +257 -0
  1094. package/dist/lib/ruleListRender.js.map +1 -0
  1095. package/dist/lib/runner.d.ts +9 -1
  1096. package/dist/lib/runner.d.ts.map +1 -1
  1097. package/dist/lib/runner.js +30 -4
  1098. package/dist/lib/runner.js.map +1 -1
  1099. package/dist/lib/session.d.ts +86 -12
  1100. package/dist/lib/session.d.ts.map +1 -1
  1101. package/dist/lib/session.js +255 -25
  1102. package/dist/lib/session.js.map +1 -1
  1103. package/dist/lib/sessionBinding.d.ts +61 -0
  1104. package/dist/lib/sessionBinding.d.ts.map +1 -0
  1105. package/dist/lib/sessionBinding.js +125 -0
  1106. package/dist/lib/sessionBinding.js.map +1 -0
  1107. package/dist/lib/sessionNotices.d.ts +54 -0
  1108. package/dist/lib/sessionNotices.d.ts.map +1 -0
  1109. package/dist/lib/sessionNotices.js +130 -0
  1110. package/dist/lib/sessionNotices.js.map +1 -0
  1111. package/dist/lib/sessionNotices.test.d.ts +2 -0
  1112. package/dist/lib/sessionNotices.test.d.ts.map +1 -0
  1113. package/dist/lib/sessionNotices.test.js +55 -0
  1114. package/dist/lib/sessionNotices.test.js.map +1 -0
  1115. package/dist/lib/spineVerdictRead.d.ts +70 -0
  1116. package/dist/lib/spineVerdictRead.d.ts.map +1 -0
  1117. package/dist/lib/spineVerdictRead.js +73 -0
  1118. package/dist/lib/spineVerdictRead.js.map +1 -0
  1119. package/dist/lib/spinner.js +2 -2
  1120. package/dist/lib/spinner.js.map +1 -1
  1121. package/dist/lib/startup-resolution-signals.d.ts +34 -0
  1122. package/dist/lib/startup-resolution-signals.d.ts.map +1 -0
  1123. package/dist/lib/startup-resolution-signals.js +116 -0
  1124. package/dist/lib/startup-resolution-signals.js.map +1 -0
  1125. package/dist/lib/startup-resolution-signals.test.d.ts +2 -0
  1126. package/dist/lib/startup-resolution-signals.test.d.ts.map +1 -0
  1127. package/dist/lib/startup-resolution-signals.test.js +113 -0
  1128. package/dist/lib/startup-resolution-signals.test.js.map +1 -0
  1129. package/dist/lib/startup-signals.d.ts +12 -0
  1130. package/dist/lib/startup-signals.d.ts.map +1 -0
  1131. package/dist/lib/startup-signals.js +179 -0
  1132. package/dist/lib/startup-signals.js.map +1 -0
  1133. package/dist/lib/startup-signals.test.d.ts +2 -0
  1134. package/dist/lib/startup-signals.test.d.ts.map +1 -0
  1135. package/dist/lib/startup-signals.test.js +165 -0
  1136. package/dist/lib/startup-signals.test.js.map +1 -0
  1137. package/dist/lib/state.d.ts +11 -2
  1138. package/dist/lib/state.d.ts.map +1 -1
  1139. package/dist/lib/state.js +11 -4
  1140. package/dist/lib/state.js.map +1 -1
  1141. package/dist/lib/statusCategories.d.ts +160 -0
  1142. package/dist/lib/statusCategories.d.ts.map +1 -0
  1143. package/dist/lib/statusCategories.js +284 -0
  1144. package/dist/lib/statusCategories.js.map +1 -0
  1145. package/dist/lib/strip.d.ts +17 -0
  1146. package/dist/lib/strip.d.ts.map +1 -1
  1147. package/dist/lib/strip.js +48 -1
  1148. package/dist/lib/strip.js.map +1 -1
  1149. package/dist/lib/style.d.ts +8 -2
  1150. package/dist/lib/style.d.ts.map +1 -1
  1151. package/dist/lib/style.js +24 -17
  1152. package/dist/lib/style.js.map +1 -1
  1153. package/dist/lib/tokenConstants.d.ts +2 -0
  1154. package/dist/lib/tokenConstants.d.ts.map +1 -1
  1155. package/dist/lib/tokenConstants.js +2 -0
  1156. package/dist/lib/tokenConstants.js.map +1 -1
  1157. package/dist/lib/update-check.d.ts +26 -11
  1158. package/dist/lib/update-check.d.ts.map +1 -1
  1159. package/dist/lib/update-check.js +123 -73
  1160. package/dist/lib/update-check.js.map +1 -1
  1161. package/dist/lib/upgrade-runner.d.ts +2 -1
  1162. package/dist/lib/upgrade-runner.d.ts.map +1 -1
  1163. package/dist/lib/upgrade-runner.js +8 -7
  1164. package/dist/lib/upgrade-runner.js.map +1 -1
  1165. package/dist/lib/workspaceNotice.d.ts +202 -0
  1166. package/dist/lib/workspaceNotice.d.ts.map +1 -0
  1167. package/dist/lib/workspaceNotice.js +345 -0
  1168. package/dist/lib/workspaceNotice.js.map +1 -0
  1169. package/dist/{setup/perimeter.d.ts → lib/writePerimeter.d.ts} +11 -11
  1170. package/dist/lib/writePerimeter.d.ts.map +1 -0
  1171. package/dist/{setup/perimeter.js → lib/writePerimeter.js} +11 -11
  1172. package/dist/lib/writePerimeter.js.map +1 -0
  1173. package/dist/registerEntryCommands.d.ts +18 -0
  1174. package/dist/registerEntryCommands.d.ts.map +1 -0
  1175. package/dist/registerEntryCommands.js +122 -0
  1176. package/dist/registerEntryCommands.js.map +1 -0
  1177. package/dist/registerHistoryCommand.d.ts +8 -0
  1178. package/dist/registerHistoryCommand.d.ts.map +1 -0
  1179. package/dist/registerHistoryCommand.js +14 -0
  1180. package/dist/registerHistoryCommand.js.map +1 -0
  1181. package/dist/registerOutcomeCommands.d.ts +27 -0
  1182. package/dist/registerOutcomeCommands.d.ts.map +1 -0
  1183. package/dist/registerOutcomeCommands.js +27 -0
  1184. package/dist/registerOutcomeCommands.js.map +1 -0
  1185. package/dist/registerRoleCommands.d.ts +10 -0
  1186. package/dist/registerRoleCommands.d.ts.map +1 -0
  1187. package/dist/registerRoleCommands.js +14 -0
  1188. package/dist/registerRoleCommands.js.map +1 -0
  1189. package/dist/registerTensionsCommands.d.ts +10 -0
  1190. package/dist/registerTensionsCommands.d.ts.map +1 -0
  1191. package/dist/registerTensionsCommands.js +15 -0
  1192. package/dist/registerTensionsCommands.js.map +1 -0
  1193. package/dist/scoreboard/diagnose.d.ts +190 -0
  1194. package/dist/scoreboard/diagnose.d.ts.map +1 -0
  1195. package/dist/scoreboard/diagnose.js +282 -0
  1196. package/dist/scoreboard/diagnose.js.map +1 -0
  1197. package/dist/scoreboard/diagnose.test.d.ts +15 -0
  1198. package/dist/scoreboard/diagnose.test.d.ts.map +1 -0
  1199. package/dist/scoreboard/diagnose.test.js +288 -0
  1200. package/dist/scoreboard/diagnose.test.js.map +1 -0
  1201. package/dist/scoreboard/floors.d.ts +47 -0
  1202. package/dist/scoreboard/floors.d.ts.map +1 -0
  1203. package/dist/scoreboard/floors.js +33 -0
  1204. package/dist/scoreboard/floors.js.map +1 -0
  1205. package/dist/scoreboard/localDrift.d.ts +23 -0
  1206. package/dist/scoreboard/localDrift.d.ts.map +1 -0
  1207. package/dist/scoreboard/localDrift.js +111 -0
  1208. package/dist/scoreboard/localDrift.js.map +1 -0
  1209. package/dist/scoreboard/localDrift.test.d.ts +9 -0
  1210. package/dist/scoreboard/localDrift.test.d.ts.map +1 -0
  1211. package/dist/scoreboard/localDrift.test.js +82 -0
  1212. package/dist/scoreboard/localDrift.test.js.map +1 -0
  1213. package/dist/surfaces/__tests__/adapter.test.js +2 -6
  1214. package/dist/surfaces/__tests__/adapter.test.js.map +1 -1
  1215. package/dist/surfaces/__tests__/claude-skill-pointer-drift.test.d.ts +2 -0
  1216. package/dist/surfaces/__tests__/claude-skill-pointer-drift.test.d.ts.map +1 -0
  1217. package/dist/surfaces/__tests__/claude-skill-pointer-drift.test.js +179 -0
  1218. package/dist/surfaces/__tests__/claude-skill-pointer-drift.test.js.map +1 -0
  1219. package/dist/surfaces/adapters/claude.d.ts.map +1 -1
  1220. package/dist/surfaces/adapters/claude.js +30 -25
  1221. package/dist/surfaces/adapters/claude.js.map +1 -1
  1222. package/package.json +9 -7
  1223. package/dist/__tests__/audit.test.d.ts +0 -2
  1224. package/dist/__tests__/audit.test.d.ts.map +0 -1
  1225. package/dist/__tests__/audit.test.js +0 -399
  1226. package/dist/__tests__/audit.test.js.map +0 -1
  1227. package/dist/__tests__/authority-domains.test.d.ts +0 -2
  1228. package/dist/__tests__/authority-domains.test.d.ts.map +0 -1
  1229. package/dist/__tests__/authority-domains.test.js +0 -48
  1230. package/dist/__tests__/authority-domains.test.js.map +0 -1
  1231. package/dist/__tests__/promote.test.d.ts +0 -2
  1232. package/dist/__tests__/promote.test.d.ts.map +0 -1
  1233. package/dist/__tests__/promote.test.js +0 -230
  1234. package/dist/__tests__/promote.test.js.map +0 -1
  1235. package/dist/__tests__/proposals.test.d.ts +0 -2
  1236. package/dist/__tests__/proposals.test.d.ts.map +0 -1
  1237. package/dist/__tests__/proposals.test.js +0 -167
  1238. package/dist/__tests__/proposals.test.js.map +0 -1
  1239. package/dist/__tests__/setup-ingest.test.d.ts +0 -2
  1240. package/dist/__tests__/setup-ingest.test.d.ts.map +0 -1
  1241. package/dist/__tests__/setup-ingest.test.js +0 -71
  1242. package/dist/__tests__/setup-ingest.test.js.map +0 -1
  1243. package/dist/__tests__/setup-resolver.test.d.ts +0 -14
  1244. package/dist/__tests__/setup-resolver.test.d.ts.map +0 -1
  1245. package/dist/__tests__/setup-resolver.test.js +0 -228
  1246. package/dist/__tests__/setup-resolver.test.js.map +0 -1
  1247. package/dist/commands/__tests__/setup-detect-surfaces.test.d.ts +0 -15
  1248. package/dist/commands/__tests__/setup-detect-surfaces.test.d.ts.map +0 -1
  1249. package/dist/commands/__tests__/setup-detect-surfaces.test.js +0 -149
  1250. package/dist/commands/__tests__/setup-detect-surfaces.test.js.map +0 -1
  1251. package/dist/commands/__tests__/setup-state.test.d.ts +0 -2
  1252. package/dist/commands/__tests__/setup-state.test.d.ts.map +0 -1
  1253. package/dist/commands/__tests__/setup-state.test.js +0 -194
  1254. package/dist/commands/__tests__/setup-state.test.js.map +0 -1
  1255. package/dist/commands/accept.d.ts +0 -18
  1256. package/dist/commands/accept.d.ts.map +0 -1
  1257. package/dist/commands/accept.js +0 -76
  1258. package/dist/commands/accept.js.map +0 -1
  1259. package/dist/commands/audit.d.ts +0 -25
  1260. package/dist/commands/audit.d.ts.map +0 -1
  1261. package/dist/commands/audit.js +0 -215
  1262. package/dist/commands/audit.js.map +0 -1
  1263. package/dist/commands/authority-domains.d.ts +0 -146
  1264. package/dist/commands/authority-domains.d.ts.map +0 -1
  1265. package/dist/commands/authority-domains.js +0 -282
  1266. package/dist/commands/authority-domains.js.map +0 -1
  1267. package/dist/commands/method.d.ts +0 -99
  1268. package/dist/commands/method.d.ts.map +0 -1
  1269. package/dist/commands/method.js +0 -784
  1270. package/dist/commands/method.js.map +0 -1
  1271. package/dist/commands/migrate-setup.d.ts +0 -18
  1272. package/dist/commands/migrate-setup.d.ts.map +0 -1
  1273. package/dist/commands/migrate-setup.js +0 -198
  1274. package/dist/commands/migrate-setup.js.map +0 -1
  1275. package/dist/commands/promote.d.ts +0 -12
  1276. package/dist/commands/promote.d.ts.map +0 -1
  1277. package/dist/commands/promote.js +0 -113
  1278. package/dist/commands/promote.js.map +0 -1
  1279. package/dist/commands/proposals.d.ts +0 -9
  1280. package/dist/commands/proposals.d.ts.map +0 -1
  1281. package/dist/commands/proposals.js +0 -24
  1282. package/dist/commands/proposals.js.map +0 -1
  1283. package/dist/commands/reject.d.ts +0 -14
  1284. package/dist/commands/reject.d.ts.map +0 -1
  1285. package/dist/commands/reject.js +0 -43
  1286. package/dist/commands/reject.js.map +0 -1
  1287. package/dist/commands/setup-audit.d.ts +0 -59
  1288. package/dist/commands/setup-audit.d.ts.map +0 -1
  1289. package/dist/commands/setup-audit.js +0 -250
  1290. package/dist/commands/setup-audit.js.map +0 -1
  1291. package/dist/commands/setup-detect-surfaces.d.ts +0 -38
  1292. package/dist/commands/setup-detect-surfaces.d.ts.map +0 -1
  1293. package/dist/commands/setup-detect-surfaces.js +0 -76
  1294. package/dist/commands/setup-detect-surfaces.js.map +0 -1
  1295. package/dist/commands/setup-ingest.d.ts +0 -17
  1296. package/dist/commands/setup-ingest.d.ts.map +0 -1
  1297. package/dist/commands/setup-ingest.js +0 -226
  1298. package/dist/commands/setup-ingest.js.map +0 -1
  1299. package/dist/commands/setup-resolver.d.ts +0 -58
  1300. package/dist/commands/setup-resolver.d.ts.map +0 -1
  1301. package/dist/commands/setup-resolver.js +0 -150
  1302. package/dist/commands/setup-resolver.js.map +0 -1
  1303. package/dist/commands/setup-state.d.ts +0 -42
  1304. package/dist/commands/setup-state.d.ts.map +0 -1
  1305. package/dist/commands/setup-state.js +0 -93
  1306. package/dist/commands/setup-state.js.map +0 -1
  1307. package/dist/commands/setup.d.ts +0 -23
  1308. package/dist/commands/setup.d.ts.map +0 -1
  1309. package/dist/commands/setup.js +0 -69
  1310. package/dist/commands/setup.js.map +0 -1
  1311. package/dist/formatters/audit.d.ts +0 -52
  1312. package/dist/formatters/audit.d.ts.map +0 -1
  1313. package/dist/formatters/audit.js +0 -81
  1314. package/dist/formatters/audit.js.map +0 -1
  1315. package/dist/formatters/promote.d.ts +0 -30
  1316. package/dist/formatters/promote.d.ts.map +0 -1
  1317. package/dist/formatters/promote.js +0 -39
  1318. package/dist/formatters/promote.js.map +0 -1
  1319. package/dist/formatters/proposals.d.ts +0 -45
  1320. package/dist/formatters/proposals.d.ts.map +0 -1
  1321. package/dist/formatters/proposals.js +0 -62
  1322. package/dist/formatters/proposals.js.map +0 -1
  1323. package/dist/generators/archetypes.d.ts +0 -52
  1324. package/dist/generators/archetypes.d.ts.map +0 -1
  1325. package/dist/generators/archetypes.js +0 -153
  1326. package/dist/generators/archetypes.js.map +0 -1
  1327. package/dist/generators/archetypes.test.d.ts +0 -2
  1328. package/dist/generators/archetypes.test.d.ts.map +0 -1
  1329. package/dist/generators/archetypes.test.js +0 -237
  1330. package/dist/generators/archetypes.test.js.map +0 -1
  1331. package/dist/generators/chain-classifier.d.ts +0 -49
  1332. package/dist/generators/chain-classifier.d.ts.map +0 -1
  1333. package/dist/generators/chain-classifier.js +0 -180
  1334. package/dist/generators/chain-classifier.js.map +0 -1
  1335. package/dist/generators/chain-classifier.test.d.ts +0 -2
  1336. package/dist/generators/chain-classifier.test.d.ts.map +0 -1
  1337. package/dist/generators/chain-classifier.test.js +0 -257
  1338. package/dist/generators/chain-classifier.test.js.map +0 -1
  1339. package/dist/generators/chain-rules.d.ts +0 -42
  1340. package/dist/generators/chain-rules.d.ts.map +0 -1
  1341. package/dist/generators/chain-rules.js +0 -144
  1342. package/dist/generators/chain-rules.js.map +0 -1
  1343. package/dist/generators/chain-rules.test.d.ts +0 -2
  1344. package/dist/generators/chain-rules.test.d.ts.map +0 -1
  1345. package/dist/generators/chain-rules.test.js +0 -179
  1346. package/dist/generators/chain-rules.test.js.map +0 -1
  1347. package/dist/generators/handshake-diff.d.ts +0 -67
  1348. package/dist/generators/handshake-diff.d.ts.map +0 -1
  1349. package/dist/generators/handshake-diff.js +0 -183
  1350. package/dist/generators/handshake-diff.js.map +0 -1
  1351. package/dist/generators/handshake-diff.test.d.ts +0 -2
  1352. package/dist/generators/handshake-diff.test.d.ts.map +0 -1
  1353. package/dist/generators/handshake-diff.test.js +0 -264
  1354. package/dist/generators/handshake-diff.test.js.map +0 -1
  1355. package/dist/lib/activation.d.ts +0 -28
  1356. package/dist/lib/activation.d.ts.map +0 -1
  1357. package/dist/lib/activation.js +0 -57
  1358. package/dist/lib/activation.js.map +0 -1
  1359. package/dist/lib/activation.test.d.ts +0 -6
  1360. package/dist/lib/activation.test.d.ts.map +0 -1
  1361. package/dist/lib/activation.test.js +0 -121
  1362. package/dist/lib/activation.test.js.map +0 -1
  1363. package/dist/lib/inferSourceDate.d.ts +0 -12
  1364. package/dist/lib/inferSourceDate.d.ts.map +0 -1
  1365. package/dist/lib/inferSourceDate.js +0 -44
  1366. package/dist/lib/inferSourceDate.js.map +0 -1
  1367. package/dist/setup/__tests__/coach-traces.test.d.ts +0 -2
  1368. package/dist/setup/__tests__/coach-traces.test.d.ts.map +0 -1
  1369. package/dist/setup/__tests__/coach-traces.test.js +0 -189
  1370. package/dist/setup/__tests__/coach-traces.test.js.map +0 -1
  1371. package/dist/setup/__tests__/setup-commands.test.d.ts +0 -2
  1372. package/dist/setup/__tests__/setup-commands.test.d.ts.map +0 -1
  1373. package/dist/setup/__tests__/setup-commands.test.js +0 -177
  1374. package/dist/setup/__tests__/setup-commands.test.js.map +0 -1
  1375. package/dist/setup/__tests__/state-machine.test.d.ts +0 -2
  1376. package/dist/setup/__tests__/state-machine.test.d.ts.map +0 -1
  1377. package/dist/setup/__tests__/state-machine.test.js +0 -341
  1378. package/dist/setup/__tests__/state-machine.test.js.map +0 -1
  1379. package/dist/setup/detect-surfaces.d.ts +0 -21
  1380. package/dist/setup/detect-surfaces.d.ts.map +0 -1
  1381. package/dist/setup/detect-surfaces.js +0 -39
  1382. package/dist/setup/detect-surfaces.js.map +0 -1
  1383. package/dist/setup/manifest-writer.d.ts +0 -17
  1384. package/dist/setup/manifest-writer.d.ts.map +0 -1
  1385. package/dist/setup/manifest-writer.js +0 -153
  1386. package/dist/setup/manifest-writer.js.map +0 -1
  1387. package/dist/setup/perimeter.d.ts.map +0 -1
  1388. package/dist/setup/perimeter.js.map +0 -1
  1389. package/dist/setup/state-machine.d.ts +0 -67
  1390. package/dist/setup/state-machine.d.ts.map +0 -1
  1391. package/dist/setup/state-machine.js +0 -124
  1392. package/dist/setup/state-machine.js.map +0 -1
  1393. package/dist/surfaces/__tests__/pb-setup-passthrough.test.d.ts +0 -2
  1394. package/dist/surfaces/__tests__/pb-setup-passthrough.test.d.ts.map +0 -1
  1395. package/dist/surfaces/__tests__/pb-setup-passthrough.test.js +0 -132
  1396. package/dist/surfaces/__tests__/pb-setup-passthrough.test.js.map +0 -1
  1397. package/templates/archetypes/boundary.md +0 -23
  1398. package/templates/archetypes/constraint.md +0 -23
  1399. package/templates/archetypes/convention.md +0 -23
  1400. package/templates/archetypes/policy.md +0 -23
  1401. package/templates/archetypes/quality-gate.md +0 -23
  1402. package/templates/archetypes/workflow.md +0 -23
@@ -10,6 +10,7 @@ import { readSession } from '../lib/session.js';
10
10
  import { runCliCommand } from '../lib/runner.js';
11
11
  import { formatRelateReceipt, formatUnrelateReceipt } from '../formatters/relate.js';
12
12
  import { CLIError, ErrorCode } from '../lib/errors.js';
13
+ import { emitEffectiveTenantNotice } from '../lib/workspaceNotice.js';
13
14
  export async function runRelate(options) {
14
15
  const config = await getConfigOrGuide(() => runRelate(options));
15
16
  if (!config)
@@ -20,7 +21,8 @@ export async function runRelate(options) {
20
21
  throw new CLIError('No active session.', {
21
22
  code: ErrorCode.SESSION_REQUIRED,
22
23
  category: 'session',
23
- guidance: 'Run `pb session start` first. Write access requires a tracked session (DEC-9).',
24
+ // DEC-9
25
+ guidance: 'Run `pb session start` first. Write access requires a tracked session.',
24
26
  });
25
27
  }
26
28
  const fromId = options.fromId.trim();
@@ -33,6 +35,8 @@ export async function runRelate(options) {
33
35
  guidance: 'Usage: pb relate <from-id> <type> <to-id>',
34
36
  });
35
37
  }
38
+ // WP-1: name the target workspace before the write (stderr, every output mode — WP-721).
39
+ await emitEffectiveTenantNotice();
36
40
  await runCliCommand({
37
41
  fn: async () => {
38
42
  const mcpArgs = {
@@ -43,31 +47,98 @@ export async function runRelate(options) {
43
47
  if (options.ifMissing) {
44
48
  mcpArgs.ifMissing = true;
45
49
  }
46
- const result = await kernelCallWithSession('chain.createEntryRelation', mcpArgs);
47
- // WP-363 S5: Chain debt prevented — misuse pattern intercepted, print coaching message.
48
- if (result?.chainDebtPrevented) {
50
+ if (options.dryRun) {
51
+ mcpArgs.preview = true;
52
+ }
53
+ // WP-688 S2a review fix (thread bb1oj): a genuinely separate call arity for dry-run — a
54
+ // real write ALWAYS passes exactly 2 args (unchanged from before this fix), never a 3rd
55
+ // `undefined` options arg, so this is a true opt-IN to skipSessionTouch, not a silent
56
+ // no-op default threaded through every call.
57
+ let result;
58
+ try {
59
+ result = options.dryRun
60
+ ? await kernelCallWithSession('chain.createEntryRelation', mcpArgs, { skipSessionTouch: true })
61
+ : await kernelCallWithSession('chain.createEntryRelation', mcpArgs);
62
+ }
63
+ catch (err) {
64
+ // WP-745 (DEC-1681, round 4 M2 + PR #896 review): do NOT copy update.ts:213-227's
65
+ // invalid_option branch verbatim — it pre-empts mcpErr.message and would drop the
66
+ // task-naming instruction. Render the server's message FIRST (it already names task +
67
+ // the 12 verbs), then also surface the structured validOptions line so an agent parsing
68
+ // stderr sees it twice. Gated on validOptions actually being present (the REL-LEGAL-2
69
+ // refusal shape) — any OTHER McpError (auth denial, rate limit, a different validation
70
+ // failure) rethrows unchanged so its own code/category/guidance survive (review finding:
71
+ // the prior unconditional `err.name === 'McpError'` match reclassified every gateway
72
+ // failure as VALIDATION_FAILED).
73
+ if (err instanceof Error && err.name === 'McpError') {
74
+ const mcpErr = err;
75
+ const validOptions = mcpErr.details?.find((d) => d.errorType === 'invalid_option' && d.validOptions)?.validOptions;
76
+ if (validOptions && validOptions.length > 0) {
77
+ const lines = [mcpErr.message, `Legal relation types toward this work package: ${validOptions.join(', ')}`];
78
+ throw new CLIError(lines.join('\n'), { code: ErrorCode.VALIDATION_FAILED, category: 'validation' });
79
+ }
80
+ }
81
+ throw err;
82
+ }
83
+ // WP-753 O4 (TEN-3651): chain.createEntryRelation now judges organisational authority
84
+ // and RETURNS `{outcome:'refused', refusal}` on refusal (never throws) — the exact shape
85
+ // update.ts's runUpdate already guards against with the same "a refusal must never read
86
+ // as success" comment. Without this check, the code below reads a refused write as a
87
+ // plain successful `action: 'related'` receipt.
88
+ const maybeRefused = result;
89
+ if (maybeRefused.outcome === 'refused' && maybeRefused.refusal) {
90
+ const refusal = maybeRefused.refusal;
91
+ const authorityRefusal = refusal.category === 'auth';
92
+ throw new CLIError(refusal.reason ?? `Relating ${fromId} to ${toId} was refused.`, {
93
+ code: authorityRefusal ? ErrorCode.AUTH_DENIED : ErrorCode.VALIDATION_FAILED,
94
+ category: authorityRefusal ? 'auth' : 'validation',
95
+ guidance: refusal.requiredAction ?? 'Route this change to the accountable role or Team Lead.',
96
+ });
97
+ }
98
+ // WP-363 S5: Chain debt prevented — misuse pattern intercepted. Checked BEFORE the
99
+ // dry-run branch (WP-688 S2a review fix, thread bbzfq): the server now evaluates this
100
+ // gate regardless of preview, so a dry-run must reflect the SAME predicted diversion a
101
+ // real call would take, never a plain clean "would write" result.
102
+ // WP-776 S2a (DEC-1771): a real (non-dry-run) misuse hit now THROWS from the server
103
+ // (relations.ts refuses outright, fail-closed — no more agent sign-off proposal
104
+ // diversion), caught and rethrown unchanged by the catch block above, so only the
105
+ // dry-run/preview branch below is still reachable — a preview call never throws.
106
+ if (result?.chainDebtPrevented && options.dryRun) {
49
107
  const alts = result.suggestedAlternatives ?? [];
50
- console.warn(`\n⚠ Chain debt prevented`);
108
+ console.warn(`\n⚠ [dry-run] Chain debt would be prevented`);
51
109
  console.warn(` "${result.originalType ?? type}" is a common misuse for this entry pair.`);
52
- console.warn(` Created agent sign-off proposal: ${result.proposalId}`);
110
+ console.warn(` A real (non-dry-run) call would refuse this relation outright.`);
53
111
  console.warn(`\nSuggested alternatives:`);
54
- for (const alt of alts) {
112
+ for (const alt of alts)
55
113
  console.warn(` • ${alt.type}: ${alt.reason}`);
56
- }
57
- console.warn(`\nReview at /review in Cortex UI or use \`pb proposals\` to manage.`);
58
- return { fromId, type, toId, action: 'proposal_created', proposalId: result.proposalId };
114
+ return { fromId, type, toId, action: 'dry_run', chainDebtPrevented: true };
115
+ }
116
+ // WP-688 S2a: preview mode returns a DIFFERENT shape than a real write — never asserted
117
+ // as 'related'. `alreadyExists` (thread bb38B) survives into the dry-run receipt: the
118
+ // ifMissing early-return in relations.ts is itself non-mutating regardless of `preview`,
119
+ // so it is safe and necessary to preserve — dropping it hid whether a real
120
+ // `--if-missing --dry-run` call would be a no-op.
121
+ if (options.dryRun) {
122
+ return {
123
+ fromId, type, toId, action: 'dry_run',
124
+ advisories: result?.advisories && result.advisories.length > 0 ? result.advisories : undefined,
125
+ wouldBlock: result?.wouldBlock, blockingReason: result?.blockingReason,
126
+ alreadyExists: options.ifMissing ? result?.alreadyExists === true : undefined,
127
+ };
59
128
  }
60
- const isProposal = result?.status === 'proposal_created';
129
+ // WP-776 S2a (DEC-1771): a real write is always 'related' now — the relation-consent
130
+ // proposal system that used to divert some governs writes into 'proposal_created' is gone.
61
131
  const output = {
62
132
  fromId,
63
133
  type,
64
134
  toId,
65
- action: isProposal ? 'proposal_created' : 'related',
135
+ action: 'related',
66
136
  };
67
- if (isProposal && result?.proposalId)
68
- output.proposalId = result.proposalId;
69
137
  if (options.ifMissing)
70
138
  output.alreadyExists = result?.alreadyExists === true;
139
+ // WP-625 (S3 of WP-618, DEC-1546, TEN-3037): surface the relate door's advisories in the CLI.
140
+ if (result?.advisories && result.advisories.length > 0)
141
+ output.advisories = result.advisories;
71
142
  return output;
72
143
  },
73
144
  formatPretty: (result) => formatRelateReceipt(result),
@@ -83,7 +154,8 @@ export async function runUnrelate(options) {
83
154
  throw new CLIError('No active session.', {
84
155
  code: ErrorCode.SESSION_REQUIRED,
85
156
  category: 'session',
86
- guidance: 'Run `pb session start` first. Write access requires a tracked session (DEC-9).',
157
+ // DEC-9
158
+ guidance: 'Run `pb session start` first. Write access requires a tracked session.',
87
159
  });
88
160
  }
89
161
  const fromId = options.fromId.trim();
@@ -96,6 +168,8 @@ export async function runUnrelate(options) {
96
168
  guidance: 'Usage: pb unrelate <from-id> <type> <to-id>',
97
169
  });
98
170
  }
171
+ // WP-1: name the target workspace before the write (stderr, every output mode — WP-721).
172
+ await emitEffectiveTenantNotice();
99
173
  await runCliCommand({
100
174
  fn: async () => {
101
175
  await kernelCallWithSession('chain.removeEntryRelation', {
@@ -1 +1 @@
1
- {"version":3,"file":"relate.js","sourceRoot":"","sources":["../../src/commands/relate.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"relate.js","sourceRoot":"","sources":["../../src/commands/relate.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export declare function runRestore(entryIdArg: string): Promise<void>;
2
+ //# sourceMappingURL=restore.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"restore.d.ts","sourceRoot":"","sources":["../../src/commands/restore.ts"],"names":[],"mappings":"AAoBA,wBAAsB,UAAU,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAsElE"}
@@ -0,0 +1,83 @@
1
+ /**
2
+ * pb restore <entry-id> — restore an archived Chain entry to draft.
3
+ *
4
+ * WP-514 review round 2 (P1): the ONLY production path to restoreArchivedEntry — a brand-new,
5
+ * always-authority-gated capability (VALID_ENTRY_STATUS_TRANSITIONS stays closed for archived,
6
+ * lib/guards.ts:146; there is no legacy fallback). Thin client mirroring `pb update`'s
7
+ * session/refusal handling — the server owns validation (BR-104).
8
+ */
9
+ import { getConfigOrGuide } from '../lib/config.js';
10
+ import { kernelCallWithSession } from '../lib/client.js';
11
+ import { readSession } from '../lib/session.js';
12
+ import { isJsonMode } from '../lib/runner.js';
13
+ import { CLIError, ErrorCode } from '../lib/errors.js';
14
+ import { emitEffectiveTenantNotice } from '../lib/workspaceNotice.js';
15
+ export async function runRestore(entryIdArg) {
16
+ const config = await getConfigOrGuide(() => runRestore(entryIdArg));
17
+ if (!config)
18
+ return;
19
+ const json = isJsonMode();
20
+ const session = readSession();
21
+ if (!session) {
22
+ throw new CLIError('No active session.', {
23
+ code: ErrorCode.SESSION_REQUIRED,
24
+ category: 'session',
25
+ guidance: 'Run `pb session start` first. Write access requires a tracked session.',
26
+ });
27
+ }
28
+ const entryId = entryIdArg.trim();
29
+ if (!entryId) {
30
+ throw new CLIError('Entry ID is required.', {
31
+ code: ErrorCode.VALIDATION_FAILED,
32
+ category: 'validation',
33
+ guidance: 'Usage: pb restore <entry-id>',
34
+ });
35
+ }
36
+ await emitEffectiveTenantNotice();
37
+ if (!json)
38
+ process.stdout.write(`Restoring ${entryId} to draft...\n`);
39
+ let result;
40
+ try {
41
+ result = await kernelCallWithSession('chain.restoreArchivedEntry', {
42
+ entryId, changedBy: `agent:${session.sessionId}`,
43
+ });
44
+ }
45
+ catch (err) {
46
+ const mcpErr = err;
47
+ if (err instanceof Error && err.name === 'McpError') {
48
+ // Sweep finding #5: preserve an authority refusal as an authority refusal — mirrors
49
+ // runUpdate (update.ts). Flattening every gateway error to VALIDATION_FAILED told a
50
+ // machine caller to "fix input" even for a deny-by-default AUTH_DENIED (e.g. a
51
+ // delegated credential), instead of routing the work to an authorized principal.
52
+ const serverCode = String(mcpErr.code);
53
+ if (serverCode === 'AUTHZ_PERMISSION_DENIED' || serverCode === ErrorCode.AUTH_DENIED) {
54
+ throw new CLIError(mcpErr.message, {
55
+ code: ErrorCode.AUTH_DENIED,
56
+ category: 'auth',
57
+ guidance: mcpErr.guidance,
58
+ });
59
+ }
60
+ throw new CLIError(mcpErr.message, { code: ErrorCode.VALIDATION_FAILED, category: 'validation' });
61
+ }
62
+ throw err;
63
+ }
64
+ if (result.outcome === 'refused') {
65
+ const { refusal } = result;
66
+ if (json) {
67
+ process.stdout.write(JSON.stringify({ outcome: 'refused', refusal }) + '\n');
68
+ }
69
+ const authorityRefusal = refusal.code !== 'not_archived' && refusal.code !== 'still_superseded';
70
+ throw new CLIError(refusal.reason ?? `Restoring ${entryId} was refused.`, {
71
+ code: authorityRefusal ? ErrorCode.AUTH_DENIED : ErrorCode.VALIDATION_FAILED,
72
+ category: authorityRefusal ? 'auth' : 'validation',
73
+ guidance: refusal.requiredAction ?? 'Route this change to the accountable role or Team Lead.',
74
+ });
75
+ }
76
+ if (json) {
77
+ process.stdout.write(JSON.stringify({ outcome: 'restored', entryId }) + '\n');
78
+ }
79
+ else {
80
+ process.stdout.write(`${entryId} restored to draft.\n`);
81
+ }
82
+ }
83
+ //# sourceMappingURL=restore.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"restore.js","sourceRoot":"","sources":["../../src/commands/restore.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,24 @@
1
+ /**
2
+ * pb rework report — report an observed rework signal (WP-487 Slice 1 / FEAT-1373).
3
+ *
4
+ * Fills the M4 rework-meter slot reserved by `convex/scoreboard/aggregates.ts:1-15,597`. This is
5
+ * the SOLE ingestion path this quarter (founder-decided, WP-C spec §3/§4 Slice 1 Pass-2 review) —
6
+ * an agent-native checkpoint the CLI reports explicitly, not a CI/git-webhook adapter (excluded,
7
+ * spec §6). Requires an active session (mirrors `pb capture`, DEC-9/BR-8): the M4 join key needs
8
+ * a stable `conversationId`, which only resolves inside a tracked session.
9
+ */
10
+ export interface ReworkReportOptions {
11
+ entryId: string;
12
+ classification: string;
13
+ reportedVia?: string;
14
+ attributable?: boolean;
15
+ task?: string;
16
+ /** Codex P2 fix (round 2, post-merge review): explicit conversation override, mirroring
17
+ * `pb session start --conversation <id>`. Without this, `pb rework report` has no way to
18
+ * find a session started with `--conversation <id>` when the shell never also set
19
+ * PB_CONVERSATION_ID — readSession() with no override falls back to the legacy marker path,
20
+ * not the conversation-scoped one `session start --conversation` wrote to. */
21
+ conversation?: string;
22
+ }
23
+ export declare function runReworkReport(options: ReworkReportOptions): Promise<void>;
24
+ //# sourceMappingURL=rework.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"rework.d.ts","sourceRoot":"","sources":["../../src/commands/rework.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAeH,MAAM,WAAW,mBAAmB;IAClC,OAAO,EAAE,MAAM,CAAC;IAChB,cAAc,EAAE,MAAM,CAAC;IACvB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd;;;;mFAI+E;IAC/E,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AASD,wBAAsB,eAAe,CAAC,OAAO,EAAE,mBAAmB,GAAG,OAAO,CAAC,IAAI,CAAC,CAsFjF"}
@@ -0,0 +1,97 @@
1
+ /**
2
+ * pb rework report — report an observed rework signal (WP-487 Slice 1 / FEAT-1373).
3
+ *
4
+ * Fills the M4 rework-meter slot reserved by `convex/scoreboard/aggregates.ts:1-15,597`. This is
5
+ * the SOLE ingestion path this quarter (founder-decided, WP-C spec §3/§4 Slice 1 Pass-2 review) —
6
+ * an agent-native checkpoint the CLI reports explicitly, not a CI/git-webhook adapter (excluded,
7
+ * spec §6). Requires an active session (mirrors `pb capture`, DEC-9/BR-8): the M4 join key needs
8
+ * a stable `conversationId`, which only resolves inside a tracked session.
9
+ */
10
+ import { getConfigOrGuide } from '../lib/config.js';
11
+ import { kernelCallWithSession } from '../lib/client.js';
12
+ import { runCliCommand } from '../lib/runner.js';
13
+ import { readSession } from '../lib/session.js';
14
+ import { CLIError, ErrorCode } from '../lib/errors.js';
15
+ const CLASSIFICATIONS = ['revision', 'ci_review_correction', 'user_override'];
16
+ const REPORTED_VIA = ['followup_commit', 'ci_rerun', 'manual'];
17
+ export async function runReworkReport(options) {
18
+ const config = await getConfigOrGuide(() => runReworkReport(options));
19
+ if (!config)
20
+ return;
21
+ const entryId = options.entryId?.trim();
22
+ if (!entryId) {
23
+ throw new CLIError('An entry ID is required.', {
24
+ code: ErrorCode.VALIDATION_FAILED,
25
+ category: 'validation',
26
+ });
27
+ }
28
+ if (!CLASSIFICATIONS.includes(options.classification)) {
29
+ throw new CLIError(`--classification must be one of: ${CLASSIFICATIONS.join(', ')}`, {
30
+ code: ErrorCode.VALIDATION_FAILED,
31
+ category: 'validation',
32
+ });
33
+ }
34
+ const classification = options.classification;
35
+ const reportedVia = (options.reportedVia ?? 'manual');
36
+ if (!REPORTED_VIA.includes(reportedVia)) {
37
+ throw new CLIError(`--via must be one of: ${REPORTED_VIA.join(', ')}`, {
38
+ code: ErrorCode.VALIDATION_FAILED,
39
+ category: 'validation',
40
+ });
41
+ }
42
+ // Require active session (DEC-9, BR-8, mirrors pb capture) — write access needs a tracked
43
+ // session, and the M4 join key needs the session's resolved conversationId.
44
+ //
45
+ // Codex P2 fix (round 2, post-merge review): pass `options.conversation` through to
46
+ // readSession() so a caller who started the session with `pb session start --conversation <id>`
47
+ // (writing the marker to .productbrain/sessions/<id>.json) can find it here even when the shell
48
+ // never ALSO exported PB_CONVERSATION_ID — a bare readSession() falls back to the legacy marker
49
+ // path and misses it. Without this override, an agent following `pb session start`'s own
50
+ // recovery guidance would still hit "No active session" on the very next command.
51
+ const session = readSession(options.conversation);
52
+ if (!session) {
53
+ throw new CLIError('No active session.', {
54
+ code: ErrorCode.SESSION_REQUIRED,
55
+ category: 'session',
56
+ guidance: 'Run `pb session start` first. Write access requires a tracked session. If you started a ' +
57
+ 'session with `pb session start --conversation <id>`, re-run this command with ' +
58
+ '`--conversation <id>` (or export PB_CONVERSATION_ID=<id> in this shell) so it resolves the ' +
59
+ 'same conversation-scoped marker.',
60
+ });
61
+ }
62
+ if (!session.conversationId) {
63
+ // Fail closed client-side too (TEN-2728): a rework signal with no conversationId cannot
64
+ // anchor the M4 join, and the server refuses it anyway — surface the real cause here rather
65
+ // than a generic server validation error.
66
+ throw new CLIError('No conversation identity resolved for this session.', {
67
+ code: ErrorCode.VALIDATION_FAILED,
68
+ category: 'validation',
69
+ guidance: 'A rework signal needs a stable conversationId to join against the governance-served log (M4). ' +
70
+ 'Run this from a harness that sets PB_CONVERSATION_ID / CLAUDE_CODE_SESSION_ID / CURSOR_CONVERSATION_ID, ' +
71
+ 'or start a fresh session with `pb session start --conversation <id>` and re-run this command ' +
72
+ 'with the SAME `--conversation <id>` (the flag is only read by `session start` otherwise).',
73
+ });
74
+ }
75
+ await runCliCommand({
76
+ fn: async () => {
77
+ return await kernelCallWithSession('rework.report', {
78
+ // Codex P1 fix (post-merge review): sessionId lets the server resolve conversationId
79
+ // AUTHORITATIVELY from the caller's own agentSessions row (mirrors served.ts's
80
+ // recordGovernanceServed stamping) rather than trusting the client-supplied string alone.
81
+ // conversationId still travels as a fallback for the server's bare-conversationId lookup
82
+ // path — both are verified server-side against the gateway-injected caller identity.
83
+ sessionId: session.sessionId,
84
+ conversationId: session.conversationId,
85
+ entryId,
86
+ classification,
87
+ reportedVia,
88
+ ...(options.attributable ? { attributableToGovernanceMiss: true } : {}),
89
+ ...(options.task ? { task: options.task } : {}),
90
+ });
91
+ },
92
+ formatPretty: (result) => result.deduped
93
+ ? `Rework signal already recorded (${classification}, via ${reportedVia}) — reused the existing row from a moment ago.`
94
+ : `Rework signal recorded (${classification}, via ${reportedVia}).`,
95
+ });
96
+ }
97
+ //# sourceMappingURL=rework.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"rework.js","sourceRoot":"","sources":["../../src/commands/rework.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,57 @@
1
+ export interface RoleAccountableOptions {
2
+ canonicalKey?: string;
3
+ limit?: string;
4
+ cursor?: string;
5
+ json?: boolean;
6
+ }
7
+ /** Mirrors `chain.listByRole`'s row shape (convex/agentKnowledge/entriesByRole.ts's
8
+ * `RoleEntrySummary`) with a PLAIN `id: string` — the door returns a Convex document id over
9
+ * the wire as a bare string, and this interface (not the raw gateway type's branded
10
+ * `Id<'entries'>`) is what argv-facing code and its own tests actually handle, same pattern
11
+ * `outcome.ts`'s own `ReadingRow`/`ListReadingsResult` use. The call site below still derives
12
+ * from `GatewayRouteReturnByName<'chain.listByRole'>` (review PRRT_kwDORS4ils6gQAqu) so a
13
+ * route-shape drift fails the `as` cast at compile time — the branded id only blocks the
14
+ * OPPOSITE direction (a plain-string test fixture claiming to BE the branded type), which never
15
+ * happens here: the widening cast below (branded -> plain) is always legal. */
16
+ export interface RoleEntryRow {
17
+ id: string;
18
+ entryId?: string;
19
+ name: string;
20
+ canonicalKey?: string;
21
+ collectionSlug?: string;
22
+ status: string;
23
+ workflowStatus?: string;
24
+ }
25
+ export interface ListByRoleResult {
26
+ role: {
27
+ id: string;
28
+ entryId?: string;
29
+ name: string;
30
+ };
31
+ explicit: RoleEntryRow[];
32
+ explicitTruncated: boolean;
33
+ nextCursor: number | null;
34
+ reporting: RoleEntryRow[];
35
+ reportingTruncated: boolean;
36
+ inherited: RoleEntryRow[];
37
+ inheritedResolution: 'not-computed';
38
+ inheritedNotComputedReason: string;
39
+ truncated: boolean;
40
+ /** TASK-636 (DEC-1810): who holds the role; status is active, invited or placeholder. */
41
+ holders: {
42
+ personId: string;
43
+ displayName: string;
44
+ status: string;
45
+ teamName: string | null;
46
+ }[];
47
+ holdersTruncated: boolean;
48
+ }
49
+ /**
50
+ * Pretty rendering for `pb role accountable`. Exported so door-parity content-equality against
51
+ * the MCP tool's own rendering (`packages/mcp-server/src/tools/role.ts`) is assertable directly,
52
+ * not only through a live walk — both read the SAME `chain.listByRole` JSON shape and both print
53
+ * the SAME three sections in the SAME order.
54
+ */
55
+ export declare function formatRoleAccountable(result: ListByRoleResult | null): string;
56
+ export declare function runRoleAccountable(roleId: string, options: RoleAccountableOptions): Promise<void>;
57
+ //# sourceMappingURL=role.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"role.d.ts","sourceRoot":"","sources":["../../src/commands/role.ts"],"names":[],"mappings":"AAyBA,MAAM,WAAW,sBAAsB;IACtC,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,OAAO,CAAC;CACf;AAED;;;;;;;;gFAQgF;AAChF,MAAM,WAAW,YAAY;IAC5B,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,YAAY,CAAC,EAAE,MAAM,CAAC;IAItB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,MAAM,EAAE,MAAM,CAAC;IACf,cAAc,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,MAAM,WAAW,gBAAgB;IAChC,IAAI,EAAE;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC;IACrD,QAAQ,EAAE,YAAY,EAAE,CAAC;IACzB,iBAAiB,EAAE,OAAO,CAAC;IAC3B,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,SAAS,EAAE,YAAY,EAAE,CAAC;IAC1B,kBAAkB,EAAE,OAAO,CAAC;IAC5B,SAAS,EAAE,YAAY,EAAE,CAAC;IAC1B,mBAAmB,EAAE,cAAc,CAAC;IACpC,0BAA0B,EAAE,MAAM,CAAC;IACnC,SAAS,EAAE,OAAO,CAAC;IACnB,yFAAyF;IACzF,OAAO,EAAE;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAA;KAAE,EAAE,CAAC;IAC9F,gBAAgB,EAAE,OAAO,CAAC;CAC1B;AAsGD;;;;;GAKG;AACH,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,gBAAgB,GAAG,IAAI,GAAG,MAAM,CAkB7E;AAED,wBAAsB,kBAAkB,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,sBAAsB,GAAG,OAAO,CAAC,IAAI,CAAC,CAsBvG"}
@@ -0,0 +1,141 @@
1
+ import { getConfigOrGuide } from '../lib/config.js';
2
+ import { kernelCall } from '../lib/client.js';
3
+ import { CLIError, ErrorCode } from '../lib/errors.js';
4
+ import { runCliCommand } from '../lib/runner.js';
5
+ import { sanitizeSingleLineField } from '../lib/strip.js';
6
+ /** Holders first: who answers for the role, a non-active holder tagged with their status. */
7
+ function formatHolders(result) {
8
+ if (result.holders.length === 0)
9
+ return [` holders: none${result.holdersTruncated ? ' found, but the membership scan is incomplete' : ''}`];
10
+ return [
11
+ ' holders:',
12
+ ...result.holders.map((h) => {
13
+ const tag = h.status === 'active' ? '' : ` (${sanitizeSingleLineField(h.status)})`;
14
+ const team = h.teamName ? ` in ${sanitizeSingleLineField(h.teamName)}` : '';
15
+ return ` ${sanitizeSingleLineField(h.displayName)}${tag}${team}`;
16
+ }),
17
+ ...(result.holdersTruncated ? [' (membership scan cut at 500 rows, more holders may exist)'] : []),
18
+ ];
19
+ }
20
+ const validation = (message, guidance) => new CLIError(message, { code: ErrorCode.VALIDATION_FAILED, category: 'validation', guidance });
21
+ /** argv is a string; `--limit`/`--cursor` want whole numbers. Refused HERE, before any network
22
+ * call, naming the flag — same shape `outcome.ts`'s own `requireNumber` and `shape.ts`'s enum
23
+ * checks use (CLIError + code: VALIDATION_FAILED + category: 'validation'), so an invalid flag
24
+ * reports category=validation in JSON mode rather than falling through to `runCliCommand`'s
25
+ * generic unknown-error wrap (code: INTERNAL). Un-refused, `Number('abc')` is NaN, which
26
+ * `JSON.stringify` silently turns into `null` on the wire — a validation bug disguised as a
27
+ * present-but-empty value, not caught until the gateway's own (differently-worded) refusal.
28
+ */
29
+ function requireInteger(raw, flag, range) {
30
+ const trimmed = raw.trim();
31
+ const parsed = Number(trimmed);
32
+ if (trimmed === '' || !Number.isInteger(parsed)) {
33
+ throw validation(`${flag} must be a whole number (got "${raw}").`, 'Usage: pb role accountable <role-id> [--limit <n>] [--cursor <n>]');
34
+ }
35
+ // PR #856 review round 3 (Codex P2, PRRT_kwDORS4ils6gQrZI): `requireInteger` checked only
36
+ // integrality, so `--limit 0`, a negative value, or anything above 200 reached the network
37
+ // call and was silently clamped server-side (convex/agentKnowledge/entriesByRole.ts:1-200
38
+ // range) to a page size the caller never asked for. Reject the advertised 1-200 range here,
39
+ // matching the MCP tool's own schema (packages/mcp-server/src/tools/role.ts), before the call.
40
+ if (range && (parsed < range.min || parsed > range.max)) {
41
+ throw validation(`${flag} must be between ${range.min} and ${range.max} (got ${parsed}).`, 'Usage: pb role accountable <role-id> [--limit <n>] [--cursor <n>]');
42
+ }
43
+ return parsed;
44
+ }
45
+ /** One row, terminal-safe. `name` is stored content any connector with write access can set —
46
+ * sanitized for the same reason `outcome.ts`'s `formatReadingsList` sanitizes `note`/`valueText`:
47
+ * this rendering is a plain-text sink, and an embedded newline would forge an extra row. */
48
+ function formatRow(row) {
49
+ const id = row.entryId ?? row.id;
50
+ // PR #856 review round 3 (Codex P2, PRRT_kwDORS4ils6gQrZW): `chain.listByRole` deliberately
51
+ // includes each row's domain `workflowStatus` (convex/agentKnowledge/entriesByRole.ts:73-90)
52
+ // separately from `status` (the TRUST status, e.g. 'accepted') — a tension's `open` vs
53
+ // `closed` is exactly the distinction between a current obligation and a completed one.
54
+ // Dropping it here made both render identically as `[tension/accepted]`; render it, mirroring
55
+ // `packages/mcp-server/src/tools/entries.ts:697-700`'s existing formatter.
56
+ // PR #872 review round 3 (Codex P2): workflowStatus is stored content read from a workspace
57
+ // collection's `validWorkflowStatuses` declaration — vocabulary-checked by guardWorkflowStatus,
58
+ // never terminal-safety-checked, so a value containing a newline/control sequence could still
59
+ // forge an extra row. Sanitized the same way `row.name` already is.
60
+ const statusDisplay = row.workflowStatus ? `${row.status} / ${sanitizeSingleLineField(row.workflowStatus)}` : row.status;
61
+ // WP-771 S1b round 2 (Codex P2, PRRT_kwDORS4ils6lGWJ0): render the real collection slug,
62
+ // matching the MCP `role` tool's formatRow fixed this round — same sanitization, same '?'
63
+ // fallback for a row whose collection couldn't be resolved.
64
+ const collectionSlug = row.collectionSlug ? sanitizeSingleLineField(row.collectionSlug) : '?';
65
+ return ` ${id} ${sanitizeSingleLineField(row.name)} [${collectionSlug}/${statusDisplay}]`;
66
+ }
67
+ /** One labelled section — `explicit` or `reporting`. Empty prints the shared empty-state text
68
+ * rather than an ambiguous blank, and a truncated page says so with an ACTIONABLE hint rather
69
+ * than a vague "more exist" (review PRRT_kwDORS4ils6gQAqo, §13: cap every read AND surface
70
+ * truncation to the caller — a claim of "continue with the printed cursor" that never printed
71
+ * one is the failure this fixes). `cursorHint` is `undefined` for a section the gateway cannot
72
+ * page (`reporting` — PR-1's own design: only `explicit` accepts a cursor) — that section
73
+ * states the cap plainly instead of pointing at a flag that would silently be ignored. */
74
+ function formatSection(label, rows, truncated, cursorHint) {
75
+ // PR #856 review round 3 (Codex P2, PRRT_kwDORS4ils6gQrY9): `canonicalKey` filtering can
76
+ // legitimately return `rows: []` with `truncated: true` and a usable cursor — the backend's
77
+ // raw scan window was exhausted without confirming no more matches exist beyond it
78
+ // (convex/agentKnowledge/entriesByRole.ts). Printing "not recorded yet" for that response
79
+ // falsely presents the role as having no matching entries at all and swallows the cursor that
80
+ // would let the caller keep looking. Check truncation BEFORE the empty-state early return.
81
+ if (rows.length === 0 && !truncated)
82
+ return [` ${label}: not recorded yet`];
83
+ const lines = rows.length === 0 ? [` ${label}: not recorded yet, but the scan is incomplete`] : [` ${label}:`, ...rows.map(formatRow)];
84
+ // PR #872 review round 3 (Codex P2): `truncated` can be true purely because the raw scan
85
+ // budget (MAX_SCAN_BATCHES batches, entriesByRole.ts) was exhausted without confirming the
86
+ // true end of the index range — NOT because a filtered match beyond this page was actually
87
+ // found. "more exist" overclaimed a fact the backend never established; "scan incomplete"
88
+ // states only what is actually known (keep paging to find out), never asserts a match exists.
89
+ if (truncated)
90
+ lines.push(` (scan incomplete, more may exist — ${cursorHint ?? 'raise --limit (capped at 200, no cursor for this list)'})`);
91
+ return lines;
92
+ }
93
+ /**
94
+ * Pretty rendering for `pb role accountable`. Exported so door-parity content-equality against
95
+ * the MCP tool's own rendering (`packages/mcp-server/src/tools/role.ts`) is assertable directly,
96
+ * not only through a live walk — both read the SAME `chain.listByRole` JSON shape and both print
97
+ * the SAME three sections in the SAME order.
98
+ */
99
+ export function formatRoleAccountable(result) {
100
+ if (!result)
101
+ return 'Role not found.';
102
+ const roleLabel = `${sanitizeSingleLineField(result.role.name)} (${result.role.entryId ?? result.role.id})`;
103
+ // `explicit` is the only cursor-able list (PR-1's design) — print the REAL next cursor when
104
+ // truncated, never a bare claim that one exists.
105
+ const explicitCursorHint = result.nextCursor !== null
106
+ ? `raise --limit or continue with --cursor ${result.nextCursor}`
107
+ : 'raise --limit';
108
+ return [
109
+ `${roleLabel} — accountability:`,
110
+ ...formatHolders(result),
111
+ ...formatSection('explicit (owns)', result.explicit, result.explicitTruncated, explicitCursorHint),
112
+ ...formatSection('reporting (reports on)', result.reporting, result.reportingTruncated),
113
+ // DEC-1587 Team-Lead vacancy coverage — always not-computed today (see
114
+ // convex/agentKnowledge/entriesByRole.ts's own header for why); named, never faked as an
115
+ // empty computed list.
116
+ ` inherited: not-computed — ${result.inheritedNotComputedReason}`,
117
+ ].join('\n');
118
+ }
119
+ export async function runRoleAccountable(roleId, options) {
120
+ // Refuse everything refusable BEFORE the network call — same discipline outcome.ts's
121
+ // requireNumber and shape.ts's enum checks use.
122
+ const limit = options.limit !== undefined ? requireInteger(options.limit, '--limit', { min: 1, max: 200 }) : undefined;
123
+ const cursor = options.cursor !== undefined ? requireInteger(options.cursor, '--cursor') : undefined;
124
+ const config = await getConfigOrGuide(() => runRoleAccountable(roleId, options));
125
+ if (!config)
126
+ return;
127
+ await runCliCommand({
128
+ // A read: no session required, same posture as `pb outcome list`.
129
+ fn: async () => {
130
+ const raw = await kernelCall('chain.listByRole', {
131
+ roleId,
132
+ ...(options.canonicalKey ? { canonicalKey: options.canonicalKey } : {}),
133
+ ...(limit !== undefined ? { limit } : {}),
134
+ ...(cursor !== undefined ? { cursor } : {}),
135
+ });
136
+ return raw;
137
+ },
138
+ formatPretty: (value_) => formatRoleAccountable(value_),
139
+ });
140
+ }
141
+ //# sourceMappingURL=role.js.map