@productbrain/cli 0.1.0-beta.1125 → 0.1.0-beta.11265

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 (1439) hide show
  1. package/README.md +11 -2
  2. package/dist/__tests__/adapters.test.js +79 -53
  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 +108 -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 +64 -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 +437 -231
  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 +50 -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 +84 -0
  35. package/dist/__tests__/codex-prep-parity.test.js.map +1 -0
  36. package/dist/__tests__/config-prod-fallthrough.test.d.ts +2 -0
  37. package/dist/__tests__/config-prod-fallthrough.test.d.ts.map +1 -0
  38. package/dist/__tests__/config-prod-fallthrough.test.js +93 -0
  39. package/dist/__tests__/config-prod-fallthrough.test.js.map +1 -0
  40. package/dist/__tests__/config.test.js +559 -40
  41. package/dist/__tests__/config.test.js.map +1 -1
  42. package/dist/__tests__/constellation.test.js +26 -14
  43. package/dist/__tests__/constellation.test.js.map +1 -1
  44. package/dist/__tests__/conversation.test.d.ts +2 -0
  45. package/dist/__tests__/conversation.test.d.ts.map +1 -0
  46. package/dist/__tests__/conversation.test.js +113 -0
  47. package/dist/__tests__/conversation.test.js.map +1 -0
  48. package/dist/__tests__/entry-formatter.test.d.ts +2 -0
  49. package/dist/__tests__/entry-formatter.test.d.ts.map +1 -0
  50. package/dist/__tests__/entry-formatter.test.js +228 -0
  51. package/dist/__tests__/entry-formatter.test.js.map +1 -0
  52. package/dist/__tests__/entry-preflight.test.d.ts +2 -0
  53. package/dist/__tests__/entry-preflight.test.d.ts.map +1 -0
  54. package/dist/__tests__/entry-preflight.test.js +58 -0
  55. package/dist/__tests__/entry-preflight.test.js.map +1 -0
  56. package/dist/__tests__/entryAccept-batch.test.d.ts +2 -0
  57. package/dist/__tests__/entryAccept-batch.test.d.ts.map +1 -0
  58. package/dist/__tests__/entryAccept-batch.test.js +305 -0
  59. package/dist/__tests__/entryAccept-batch.test.js.map +1 -0
  60. package/dist/__tests__/entryAccept.test.d.ts +2 -0
  61. package/dist/__tests__/entryAccept.test.d.ts.map +1 -0
  62. package/dist/__tests__/entryAccept.test.js +582 -0
  63. package/dist/__tests__/entryAccept.test.js.map +1 -0
  64. package/dist/__tests__/entryDiscardResolve.test.d.ts +2 -0
  65. package/dist/__tests__/entryDiscardResolve.test.d.ts.map +1 -0
  66. package/dist/__tests__/entryDiscardResolve.test.js +28 -0
  67. package/dist/__tests__/entryDiscardResolve.test.js.map +1 -0
  68. package/dist/__tests__/entryOwn.test.d.ts +2 -0
  69. package/dist/__tests__/entryOwn.test.d.ts.map +1 -0
  70. package/dist/__tests__/entryOwn.test.js +50 -0
  71. package/dist/__tests__/entryOwn.test.js.map +1 -0
  72. package/dist/__tests__/entryTick.test.d.ts +2 -0
  73. package/dist/__tests__/entryTick.test.d.ts.map +1 -0
  74. package/dist/__tests__/entryTick.test.js +40 -0
  75. package/dist/__tests__/entryTick.test.js.map +1 -0
  76. package/dist/__tests__/envelope-contract.test.js +2 -0
  77. package/dist/__tests__/envelope-contract.test.js.map +1 -1
  78. package/dist/__tests__/errors.test.js +41 -0
  79. package/dist/__tests__/errors.test.js.map +1 -1
  80. package/dist/__tests__/fields.test.js +14 -3
  81. package/dist/__tests__/fields.test.js.map +1 -1
  82. package/dist/__tests__/gateway-dry-run-timeout.test.d.ts +2 -0
  83. package/dist/__tests__/gateway-dry-run-timeout.test.d.ts.map +1 -0
  84. package/dist/__tests__/gateway-dry-run-timeout.test.js +70 -0
  85. package/dist/__tests__/gateway-dry-run-timeout.test.js.map +1 -0
  86. package/dist/__tests__/gateway-timeout-body-phase.test.d.ts +2 -0
  87. package/dist/__tests__/gateway-timeout-body-phase.test.d.ts.map +1 -0
  88. package/dist/__tests__/gateway-timeout-body-phase.test.js +116 -0
  89. package/dist/__tests__/gateway-timeout-body-phase.test.js.map +1 -0
  90. package/dist/__tests__/glossary.test.js +10 -27
  91. package/dist/__tests__/glossary.test.js.map +1 -1
  92. package/dist/__tests__/handshake-augment.test.js +4 -20
  93. package/dist/__tests__/handshake-augment.test.js.map +1 -1
  94. package/dist/__tests__/handshake-dormancy.test.js +10 -193
  95. package/dist/__tests__/handshake-dormancy.test.js.map +1 -1
  96. package/dist/__tests__/handshake-formatter.test.js +44 -0
  97. package/dist/__tests__/handshake-formatter.test.js.map +1 -1
  98. package/dist/__tests__/handshake-preview.test.js +271 -612
  99. package/dist/__tests__/handshake-preview.test.js.map +1 -1
  100. package/dist/__tests__/handshake-session-threading.test.d.ts +2 -0
  101. package/dist/__tests__/handshake-session-threading.test.d.ts.map +1 -0
  102. package/dist/__tests__/handshake-session-threading.test.js +185 -0
  103. package/dist/__tests__/handshake-session-threading.test.js.map +1 -0
  104. package/dist/__tests__/handshake.e2e.test.js +7 -1033
  105. package/dist/__tests__/handshake.e2e.test.js.map +1 -1
  106. package/dist/__tests__/handshake.test.js +552 -317
  107. package/dist/__tests__/handshake.test.js.map +1 -1
  108. package/dist/__tests__/health-gap-kinds-drift.test.d.ts +2 -0
  109. package/dist/__tests__/health-gap-kinds-drift.test.d.ts.map +1 -0
  110. package/dist/__tests__/health-gap-kinds-drift.test.js +43 -0
  111. package/dist/__tests__/health-gap-kinds-drift.test.js.map +1 -0
  112. package/dist/__tests__/hook-intents.test.js +31 -43
  113. package/dist/__tests__/hook-intents.test.js.map +1 -1
  114. package/dist/__tests__/init.test.js +51 -14
  115. package/dist/__tests__/init.test.js.map +1 -1
  116. package/dist/__tests__/kernel-value-sets-drift.test.d.ts +2 -0
  117. package/dist/__tests__/kernel-value-sets-drift.test.d.ts.map +1 -0
  118. package/dist/__tests__/kernel-value-sets-drift.test.js +46 -0
  119. package/dist/__tests__/kernel-value-sets-drift.test.js.map +1 -0
  120. package/dist/__tests__/kernel-value-sets-generator.test.d.ts +2 -0
  121. package/dist/__tests__/kernel-value-sets-generator.test.d.ts.map +1 -0
  122. package/dist/__tests__/kernel-value-sets-generator.test.js +108 -0
  123. package/dist/__tests__/kernel-value-sets-generator.test.js.map +1 -0
  124. package/dist/__tests__/login.test.js +18 -1
  125. package/dist/__tests__/login.test.js.map +1 -1
  126. package/dist/__tests__/method-registry.integration.test.js +2 -3
  127. package/dist/__tests__/method-registry.integration.test.js.map +1 -1
  128. package/dist/__tests__/method-registry.test.d.ts +6 -8
  129. package/dist/__tests__/method-registry.test.d.ts.map +1 -1
  130. package/dist/__tests__/method-registry.test.js +22 -70
  131. package/dist/__tests__/method-registry.test.js.map +1 -1
  132. package/dist/__tests__/missingPin.test.d.ts +11 -0
  133. package/dist/__tests__/missingPin.test.d.ts.map +1 -0
  134. package/dist/__tests__/missingPin.test.js +232 -0
  135. package/dist/__tests__/missingPin.test.js.map +1 -0
  136. package/dist/__tests__/notice-marker.test.js +146 -11
  137. package/dist/__tests__/notice-marker.test.js.map +1 -1
  138. package/dist/__tests__/orient.test.js +368 -38
  139. package/dist/__tests__/orient.test.js.map +1 -1
  140. package/dist/__tests__/perimeter.test.js +1 -1
  141. package/dist/__tests__/perimeter.test.js.map +1 -1
  142. package/dist/__tests__/preview-key-refresh.test.js +73 -13
  143. package/dist/__tests__/preview-key-refresh.test.js.map +1 -1
  144. package/dist/__tests__/profiles.test.js +498 -8
  145. package/dist/__tests__/profiles.test.js.map +1 -1
  146. package/dist/__tests__/prompts.test.js +18 -1
  147. package/dist/__tests__/prompts.test.js.map +1 -1
  148. package/dist/__tests__/rate-limit-resilience.test.d.ts +8 -0
  149. package/dist/__tests__/rate-limit-resilience.test.d.ts.map +1 -0
  150. package/dist/__tests__/rate-limit-resilience.test.js +191 -0
  151. package/dist/__tests__/rate-limit-resilience.test.js.map +1 -0
  152. package/dist/__tests__/read-target-notice.test.d.ts +2 -0
  153. package/dist/__tests__/read-target-notice.test.d.ts.map +1 -0
  154. package/dist/__tests__/read-target-notice.test.js +125 -0
  155. package/dist/__tests__/read-target-notice.test.js.map +1 -0
  156. package/dist/__tests__/relate.test.js +246 -14
  157. package/dist/__tests__/relate.test.js.map +1 -1
  158. package/dist/__tests__/removed-commands.test.d.ts +2 -0
  159. package/dist/__tests__/removed-commands.test.d.ts.map +1 -0
  160. package/dist/__tests__/removed-commands.test.js +70 -0
  161. package/dist/__tests__/removed-commands.test.js.map +1 -0
  162. package/dist/__tests__/reply-commands-registered.test.d.ts +2 -0
  163. package/dist/__tests__/reply-commands-registered.test.d.ts.map +1 -0
  164. package/dist/__tests__/reply-commands-registered.test.js +81 -0
  165. package/dist/__tests__/reply-commands-registered.test.js.map +1 -0
  166. package/dist/__tests__/repo-detect.test.js +18 -38
  167. package/dist/__tests__/repo-detect.test.js.map +1 -1
  168. package/dist/__tests__/reportedProfile.test.d.ts +2 -0
  169. package/dist/__tests__/reportedProfile.test.d.ts.map +1 -0
  170. package/dist/__tests__/reportedProfile.test.js +328 -0
  171. package/dist/__tests__/reportedProfile.test.js.map +1 -0
  172. package/dist/__tests__/restore.test.d.ts +2 -0
  173. package/dist/__tests__/restore.test.d.ts.map +1 -0
  174. package/dist/__tests__/restore.test.js +85 -0
  175. package/dist/__tests__/restore.test.js.map +1 -0
  176. package/dist/__tests__/route-latency-budget.test.d.ts +2 -0
  177. package/dist/__tests__/route-latency-budget.test.d.ts.map +1 -0
  178. package/dist/__tests__/route-latency-budget.test.js +107 -0
  179. package/dist/__tests__/route-latency-budget.test.js.map +1 -0
  180. package/dist/__tests__/runner.test.js +59 -44
  181. package/dist/__tests__/runner.test.js.map +1 -1
  182. package/dist/__tests__/session-binding-refusal-tenant.test.d.ts +2 -0
  183. package/dist/__tests__/session-binding-refusal-tenant.test.d.ts.map +1 -0
  184. package/dist/__tests__/session-binding-refusal-tenant.test.js +112 -0
  185. package/dist/__tests__/session-binding-refusal-tenant.test.js.map +1 -0
  186. package/dist/__tests__/session-close-conversation.test.d.ts +2 -0
  187. package/dist/__tests__/session-close-conversation.test.d.ts.map +1 -0
  188. package/dist/__tests__/session-close-conversation.test.js +75 -0
  189. package/dist/__tests__/session-close-conversation.test.js.map +1 -0
  190. package/dist/__tests__/session-close-loop.test.d.ts +2 -0
  191. package/dist/__tests__/session-close-loop.test.d.ts.map +1 -0
  192. package/dist/__tests__/session-close-loop.test.js +259 -0
  193. package/dist/__tests__/session-close-loop.test.js.map +1 -0
  194. package/dist/__tests__/session-label.test.d.ts +2 -0
  195. package/dist/__tests__/session-label.test.d.ts.map +1 -0
  196. package/dist/__tests__/session-label.test.js +46 -0
  197. package/dist/__tests__/session-label.test.js.map +1 -0
  198. package/dist/__tests__/session-list-show.test.d.ts +2 -0
  199. package/dist/__tests__/session-list-show.test.d.ts.map +1 -0
  200. package/dist/__tests__/session-list-show.test.js +173 -0
  201. package/dist/__tests__/session-list-show.test.js.map +1 -0
  202. package/dist/__tests__/session-pinned-role.test.d.ts +2 -0
  203. package/dist/__tests__/session-pinned-role.test.d.ts.map +1 -0
  204. package/dist/__tests__/session-pinned-role.test.js +305 -0
  205. package/dist/__tests__/session-pinned-role.test.js.map +1 -0
  206. package/dist/__tests__/session-reset.test.js +23 -7
  207. package/dist/__tests__/session-reset.test.js.map +1 -1
  208. package/dist/__tests__/session-resume-backstop.test.js +42 -0
  209. package/dist/__tests__/session-resume-backstop.test.js.map +1 -1
  210. package/dist/__tests__/session-role-name-sanitize.test.d.ts +2 -0
  211. package/dist/__tests__/session-role-name-sanitize.test.d.ts.map +1 -0
  212. package/dist/__tests__/session-role-name-sanitize.test.js +122 -0
  213. package/dist/__tests__/session-role-name-sanitize.test.js.map +1 -0
  214. package/dist/__tests__/session-start-key-refresh.test.js +47 -28
  215. package/dist/__tests__/session-start-key-refresh.test.js.map +1 -1
  216. package/dist/__tests__/session-state-machine.test.js +190 -9
  217. package/dist/__tests__/session-state-machine.test.js.map +1 -1
  218. package/dist/__tests__/session-switch.test.js +217 -4
  219. package/dist/__tests__/session-switch.test.js.map +1 -1
  220. package/dist/__tests__/session-touch.test.js +48 -107
  221. package/dist/__tests__/session-touch.test.js.map +1 -1
  222. package/dist/__tests__/sessionBinding.test.d.ts +2 -0
  223. package/dist/__tests__/sessionBinding.test.d.ts.map +1 -0
  224. package/dist/__tests__/sessionBinding.test.js +118 -0
  225. package/dist/__tests__/sessionBinding.test.js.map +1 -0
  226. package/dist/__tests__/sessionByIdLookup.test.d.ts +2 -0
  227. package/dist/__tests__/sessionByIdLookup.test.d.ts.map +1 -0
  228. package/dist/__tests__/sessionByIdLookup.test.js +63 -0
  229. package/dist/__tests__/sessionByIdLookup.test.js.map +1 -0
  230. package/dist/__tests__/skill-vocabulary.test.d.ts +1 -1
  231. package/dist/__tests__/skill-vocabulary.test.js +7 -2
  232. package/dist/__tests__/skill-vocabulary.test.js.map +1 -1
  233. package/dist/__tests__/state.test.js +21 -1
  234. package/dist/__tests__/state.test.js.map +1 -1
  235. package/dist/__tests__/stillTrue.test.d.ts +2 -0
  236. package/dist/__tests__/stillTrue.test.d.ts.map +1 -0
  237. package/dist/__tests__/stillTrue.test.js +52 -0
  238. package/dist/__tests__/stillTrue.test.js.map +1 -0
  239. package/dist/__tests__/strip.test.js +57 -3
  240. package/dist/__tests__/strip.test.js.map +1 -1
  241. package/dist/__tests__/surfaces.test.js +3 -4
  242. package/dist/__tests__/surfaces.test.js.map +1 -1
  243. package/dist/__tests__/tenant-notice-write-path.test.d.ts +2 -0
  244. package/dist/__tests__/tenant-notice-write-path.test.d.ts.map +1 -0
  245. package/dist/__tests__/tenant-notice-write-path.test.js +183 -0
  246. package/dist/__tests__/tenant-notice-write-path.test.js.map +1 -0
  247. package/dist/__tests__/update-check.test.js +21 -1
  248. package/dist/__tests__/update-check.test.js.map +1 -1
  249. package/dist/__tests__/update.test.js +470 -8
  250. package/dist/__tests__/update.test.js.map +1 -1
  251. package/dist/__tests__/verify-formatter.test.d.ts +2 -0
  252. package/dist/__tests__/verify-formatter.test.d.ts.map +1 -0
  253. package/dist/__tests__/verify-formatter.test.js +85 -0
  254. package/dist/__tests__/verify-formatter.test.js.map +1 -0
  255. package/dist/__tests__/vocabulary-leak.test.d.ts +1 -7
  256. package/dist/__tests__/vocabulary-leak.test.d.ts.map +1 -1
  257. package/dist/__tests__/vocabulary-leak.test.js +8 -115
  258. package/dist/__tests__/vocabulary-leak.test.js.map +1 -1
  259. package/dist/__tests__/workspace.test.js +11 -72
  260. package/dist/__tests__/workspace.test.js.map +1 -1
  261. package/dist/__tests__/workspaceNotice.test.d.ts +2 -0
  262. package/dist/__tests__/workspaceNotice.test.d.ts.map +1 -0
  263. package/dist/__tests__/workspaceNotice.test.js +559 -0
  264. package/dist/__tests__/workspaceNotice.test.js.map +1 -0
  265. package/dist/commands/__tests__/quality.test.d.ts +2 -0
  266. package/dist/commands/__tests__/quality.test.d.ts.map +1 -0
  267. package/dist/commands/__tests__/quality.test.js +250 -0
  268. package/dist/commands/__tests__/quality.test.js.map +1 -0
  269. package/dist/commands/__tests__/rework.test.d.ts +2 -0
  270. package/dist/commands/__tests__/rework.test.d.ts.map +1 -0
  271. package/dist/commands/__tests__/rework.test.js +149 -0
  272. package/dist/commands/__tests__/rework.test.js.map +1 -0
  273. package/dist/commands/__tests__/tensionsList.test.d.ts +2 -0
  274. package/dist/commands/__tests__/tensionsList.test.d.ts.map +1 -0
  275. package/dist/commands/__tests__/tensionsList.test.js +63 -0
  276. package/dist/commands/__tests__/tensionsList.test.js.map +1 -0
  277. package/dist/commands/accept-policy.d.ts +10 -0
  278. package/dist/commands/accept-policy.d.ts.map +1 -0
  279. package/dist/commands/accept-policy.js +107 -0
  280. package/dist/commands/accept-policy.js.map +1 -0
  281. package/dist/commands/admin/cockpit.d.ts +2 -13
  282. package/dist/commands/admin/cockpit.d.ts.map +1 -1
  283. package/dist/commands/admin/cockpit.js +5 -5
  284. package/dist/commands/admin/cockpit.js.map +1 -1
  285. package/dist/commands/admin/index.d.ts +49 -0
  286. package/dist/commands/admin/index.d.ts.map +1 -1
  287. package/dist/commands/admin/index.js +148 -29
  288. package/dist/commands/admin/index.js.map +1 -1
  289. package/dist/commands/admin/index.test.d.ts +2 -0
  290. package/dist/commands/admin/index.test.d.ts.map +1 -0
  291. package/dist/commands/admin/index.test.js +94 -0
  292. package/dist/commands/admin/index.test.js.map +1 -0
  293. package/dist/commands/admin/inspect.d.ts.map +1 -1
  294. package/dist/commands/admin/inspect.js +2 -7
  295. package/dist/commands/admin/inspect.js.map +1 -1
  296. package/dist/commands/admin/probe.d.ts +75 -0
  297. package/dist/commands/admin/probe.d.ts.map +1 -0
  298. package/dist/commands/admin/probe.js +224 -0
  299. package/dist/commands/admin/probe.js.map +1 -0
  300. package/dist/commands/admin/probe.test.d.ts +2 -0
  301. package/dist/commands/admin/probe.test.d.ts.map +1 -0
  302. package/dist/commands/admin/probe.test.js +193 -0
  303. package/dist/commands/admin/probe.test.js.map +1 -0
  304. package/dist/commands/admin/run.d.ts +43 -0
  305. package/dist/commands/admin/run.d.ts.map +1 -0
  306. package/dist/commands/admin/run.js +78 -0
  307. package/dist/commands/admin/run.js.map +1 -0
  308. package/dist/commands/admin/run.test.d.ts +18 -0
  309. package/dist/commands/admin/run.test.d.ts.map +1 -0
  310. package/dist/commands/admin/run.test.js +168 -0
  311. package/dist/commands/admin/run.test.js.map +1 -0
  312. package/dist/commands/admin/seed.d.ts +6 -21
  313. package/dist/commands/admin/seed.d.ts.map +1 -1
  314. package/dist/commands/admin/seed.js +41 -310
  315. package/dist/commands/admin/seed.js.map +1 -1
  316. package/dist/commands/admin/seed.test.d.ts +3 -4
  317. package/dist/commands/admin/seed.test.d.ts.map +1 -1
  318. package/dist/commands/admin/seed.test.js +26 -76
  319. package/dist/commands/admin/seed.test.js.map +1 -1
  320. package/dist/commands/admin/seedRegistryEntries.generated.d.ts.map +1 -1
  321. package/dist/commands/admin/seedRegistryEntries.generated.js +3 -84
  322. package/dist/commands/admin/seedRegistryEntries.generated.js.map +1 -1
  323. package/dist/commands/admin/seedRegistryEntries.test.d.ts +5 -3
  324. package/dist/commands/admin/seedRegistryEntries.test.d.ts.map +1 -1
  325. package/dist/commands/admin/seedRegistryEntries.test.js +60 -26
  326. package/dist/commands/admin/seedRegistryEntries.test.js.map +1 -1
  327. package/dist/commands/admin/seedRowType.d.ts +22 -0
  328. package/dist/commands/admin/seedRowType.d.ts.map +1 -0
  329. package/dist/commands/admin/seedRowType.js +2 -0
  330. package/dist/commands/admin/seedRowType.js.map +1 -0
  331. package/dist/commands/admin/seedStatusColor.d.ts +9 -0
  332. package/dist/commands/admin/seedStatusColor.d.ts.map +1 -0
  333. package/dist/commands/admin/seedStatusColor.js +19 -0
  334. package/dist/commands/admin/seedStatusColor.js.map +1 -0
  335. package/dist/commands/admin/seedStatusColor.test.d.ts +2 -0
  336. package/dist/commands/admin/seedStatusColor.test.d.ts.map +1 -0
  337. package/dist/commands/admin/seedStatusColor.test.js +31 -0
  338. package/dist/commands/admin/seedStatusColor.test.js.map +1 -0
  339. package/dist/commands/brief.d.ts.map +1 -1
  340. package/dist/commands/brief.js +24 -2
  341. package/dist/commands/brief.js.map +1 -1
  342. package/dist/commands/capture.d.ts +17 -16
  343. package/dist/commands/capture.d.ts.map +1 -1
  344. package/dist/commands/capture.js +105 -288
  345. package/dist/commands/capture.js.map +1 -1
  346. package/dist/commands/chain-walk.d.ts.map +1 -1
  347. package/dist/commands/chain-walk.js.map +1 -1
  348. package/dist/commands/changes.d.ts.map +1 -1
  349. package/dist/commands/changes.js.map +1 -1
  350. package/dist/commands/codex-prep.d.ts +11 -1
  351. package/dist/commands/codex-prep.d.ts.map +1 -1
  352. package/dist/commands/codex-prep.js +14 -83
  353. package/dist/commands/codex-prep.js.map +1 -1
  354. package/dist/commands/collections.d.ts +1 -1
  355. package/dist/commands/collections.d.ts.map +1 -1
  356. package/dist/commands/collections.js +1 -1
  357. package/dist/commands/collections.js.map +1 -1
  358. package/dist/commands/conflicts.d.ts +35 -0
  359. package/dist/commands/conflicts.d.ts.map +1 -0
  360. package/dist/commands/conflicts.js +194 -0
  361. package/dist/commands/conflicts.js.map +1 -0
  362. package/dist/commands/conflicts.test.d.ts +2 -0
  363. package/dist/commands/conflicts.test.d.ts.map +1 -0
  364. package/dist/commands/conflicts.test.js +179 -0
  365. package/dist/commands/conflicts.test.js.map +1 -0
  366. package/dist/commands/connect-config.test.js +11 -3
  367. package/dist/commands/connect-config.test.js.map +1 -1
  368. package/dist/commands/connect-context.d.ts +27 -17
  369. package/dist/commands/connect-context.d.ts.map +1 -1
  370. package/dist/commands/connect-context.js +45 -31
  371. package/dist/commands/connect-context.js.map +1 -1
  372. package/dist/commands/connect-context.test.js +91 -53
  373. package/dist/commands/connect-context.test.js.map +1 -1
  374. package/dist/commands/connect-decline.test.d.ts +2 -0
  375. package/dist/commands/connect-decline.test.d.ts.map +1 -0
  376. package/dist/commands/connect-decline.test.js +70 -0
  377. package/dist/commands/connect-decline.test.js.map +1 -0
  378. package/dist/commands/connect-integration.test.js +24 -7
  379. package/dist/commands/connect-integration.test.js.map +1 -1
  380. package/dist/commands/connect-legacy-migration.test.d.ts +2 -0
  381. package/dist/commands/connect-legacy-migration.test.d.ts.map +1 -0
  382. package/dist/commands/connect-legacy-migration.test.js +109 -0
  383. package/dist/commands/connect-legacy-migration.test.js.map +1 -0
  384. package/dist/commands/connect-redeem-failure.test.d.ts +2 -0
  385. package/dist/commands/connect-redeem-failure.test.d.ts.map +1 -0
  386. package/dist/commands/connect-redeem-failure.test.js +134 -0
  387. package/dist/commands/connect-redeem-failure.test.js.map +1 -0
  388. package/dist/commands/connect-screens.d.ts +14 -3
  389. package/dist/commands/connect-screens.d.ts.map +1 -1
  390. package/dist/commands/connect-screens.js +62 -9
  391. package/dist/commands/connect-screens.js.map +1 -1
  392. package/dist/commands/connect-seal.test.d.ts +2 -0
  393. package/dist/commands/connect-seal.test.d.ts.map +1 -0
  394. package/dist/commands/connect-seal.test.js +55 -0
  395. package/dist/commands/connect-seal.test.js.map +1 -0
  396. package/dist/commands/connect.d.ts +14 -11
  397. package/dist/commands/connect.d.ts.map +1 -1
  398. package/dist/commands/connect.js +236 -69
  399. package/dist/commands/connect.js.map +1 -1
  400. package/dist/commands/connect.test.js +226 -23
  401. package/dist/commands/connect.test.js.map +1 -1
  402. package/dist/commands/constellation.d.ts.map +1 -1
  403. package/dist/commands/constellation.js.map +1 -1
  404. package/dist/commands/context.d.ts.map +1 -1
  405. package/dist/commands/context.js.map +1 -1
  406. package/dist/commands/cross-cut.d.ts.map +1 -1
  407. package/dist/commands/cross-cut.js.map +1 -1
  408. package/dist/commands/digest.d.ts +17 -0
  409. package/dist/commands/digest.d.ts.map +1 -0
  410. package/dist/commands/digest.js +58 -0
  411. package/dist/commands/digest.js.map +1 -0
  412. package/dist/commands/digest.test.d.ts +2 -0
  413. package/dist/commands/digest.test.d.ts.map +1 -0
  414. package/dist/commands/digest.test.js +36 -0
  415. package/dist/commands/digest.test.js.map +1 -0
  416. package/dist/commands/direction.d.ts +10 -0
  417. package/dist/commands/direction.d.ts.map +1 -0
  418. package/dist/commands/direction.js +79 -0
  419. package/dist/commands/direction.js.map +1 -0
  420. package/dist/commands/doctor.d.ts.map +1 -1
  421. package/dist/commands/doctor.js +105 -35
  422. package/dist/commands/doctor.js.map +1 -1
  423. package/dist/commands/doctor.test.js +202 -6
  424. package/dist/commands/doctor.test.js.map +1 -1
  425. package/dist/commands/entryAccept.d.ts +26 -0
  426. package/dist/commands/entryAccept.d.ts.map +1 -0
  427. package/dist/commands/entryAccept.js +309 -0
  428. package/dist/commands/entryAccept.js.map +1 -0
  429. package/dist/commands/entryDiscardResolve.d.ts +9 -0
  430. package/dist/commands/entryDiscardResolve.d.ts.map +1 -0
  431. package/dist/commands/entryDiscardResolve.js +27 -0
  432. package/dist/commands/entryDiscardResolve.js.map +1 -0
  433. package/dist/commands/entryOwn.d.ts +5 -0
  434. package/dist/commands/entryOwn.d.ts.map +1 -0
  435. package/dist/commands/entryOwn.js +17 -0
  436. package/dist/commands/entryOwn.js.map +1 -0
  437. package/dist/commands/entryPreflight.d.ts +8 -0
  438. package/dist/commands/entryPreflight.d.ts.map +1 -0
  439. package/dist/commands/entryPreflight.js +48 -0
  440. package/dist/commands/entryPreflight.js.map +1 -0
  441. package/dist/commands/entryTick.d.ts +8 -0
  442. package/dist/commands/entryTick.d.ts.map +1 -0
  443. package/dist/commands/entryTick.js +43 -0
  444. package/dist/commands/entryTick.js.map +1 -0
  445. package/dist/commands/feedback.d.ts +39 -0
  446. package/dist/commands/feedback.d.ts.map +1 -0
  447. package/dist/commands/feedback.js +176 -0
  448. package/dist/commands/feedback.js.map +1 -0
  449. package/dist/commands/feedback.test.d.ts +2 -0
  450. package/dist/commands/feedback.test.d.ts.map +1 -0
  451. package/dist/commands/feedback.test.js +117 -0
  452. package/dist/commands/feedback.test.js.map +1 -0
  453. package/dist/commands/fields.d.ts.map +1 -1
  454. package/dist/commands/fields.js +1 -1
  455. package/dist/commands/fields.js.map +1 -1
  456. package/dist/commands/files.d.ts +26 -0
  457. package/dist/commands/files.d.ts.map +1 -0
  458. package/dist/commands/files.js +160 -0
  459. package/dist/commands/files.js.map +1 -0
  460. package/dist/commands/files.test.d.ts +2 -0
  461. package/dist/commands/files.test.d.ts.map +1 -0
  462. package/dist/commands/files.test.js +278 -0
  463. package/dist/commands/files.test.js.map +1 -0
  464. package/dist/commands/handshake.d.ts +42 -186
  465. package/dist/commands/handshake.d.ts.map +1 -1
  466. package/dist/commands/handshake.js +480 -1542
  467. package/dist/commands/handshake.js.map +1 -1
  468. package/dist/commands/handshakeCursorSkillCleanup.d.ts +36 -0
  469. package/dist/commands/handshakeCursorSkillCleanup.d.ts.map +1 -0
  470. package/dist/commands/handshakeCursorSkillCleanup.js +110 -0
  471. package/dist/commands/handshakeCursorSkillCleanup.js.map +1 -0
  472. package/dist/commands/handshakeDriftClassification.d.ts +33 -0
  473. package/dist/commands/handshakeDriftClassification.d.ts.map +1 -0
  474. package/dist/commands/handshakeDriftClassification.js +62 -0
  475. package/dist/commands/handshakeDriftClassification.js.map +1 -0
  476. package/dist/commands/history.d.ts +32 -0
  477. package/dist/commands/history.d.ts.map +1 -0
  478. package/dist/commands/history.js +55 -0
  479. package/dist/commands/history.js.map +1 -0
  480. package/dist/commands/history.test.d.ts +2 -0
  481. package/dist/commands/history.test.d.ts.map +1 -0
  482. package/dist/commands/history.test.js +121 -0
  483. package/dist/commands/history.test.js.map +1 -0
  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/login.d.ts.map +1 -1
  489. package/dist/commands/login.js +15 -11
  490. package/dist/commands/login.js.map +1 -1
  491. package/dist/commands/organisation.d.ts +12 -0
  492. package/dist/commands/organisation.d.ts.map +1 -0
  493. package/dist/commands/organisation.js +146 -0
  494. package/dist/commands/organisation.js.map +1 -0
  495. package/dist/commands/organisation.test.d.ts +2 -0
  496. package/dist/commands/organisation.test.d.ts.map +1 -0
  497. package/dist/commands/organisation.test.js +116 -0
  498. package/dist/commands/organisation.test.js.map +1 -0
  499. package/dist/commands/organisationHierarchy.d.ts +15 -0
  500. package/dist/commands/organisationHierarchy.d.ts.map +1 -0
  501. package/dist/commands/organisationHierarchy.js +114 -0
  502. package/dist/commands/organisationHierarchy.js.map +1 -0
  503. package/dist/commands/organisationHierarchy.test.d.ts +2 -0
  504. package/dist/commands/organisationHierarchy.test.d.ts.map +1 -0
  505. package/dist/commands/organisationHierarchy.test.js +144 -0
  506. package/dist/commands/organisationHierarchy.test.js.map +1 -0
  507. package/dist/commands/organisationWrite.d.ts +20 -0
  508. package/dist/commands/organisationWrite.d.ts.map +1 -0
  509. package/dist/commands/organisationWrite.js +41 -0
  510. package/dist/commands/organisationWrite.js.map +1 -0
  511. package/dist/commands/orient.d.ts +45 -96
  512. package/dist/commands/orient.d.ts.map +1 -1
  513. package/dist/commands/orient.js +139 -36
  514. package/dist/commands/orient.js.map +1 -1
  515. package/dist/commands/outcome.d.ts +90 -0
  516. package/dist/commands/outcome.d.ts.map +1 -0
  517. package/dist/commands/outcome.js +201 -0
  518. package/dist/commands/outcome.js.map +1 -0
  519. package/dist/commands/outcome.test.d.ts +2 -0
  520. package/dist/commands/outcome.test.d.ts.map +1 -0
  521. package/dist/commands/outcome.test.js +320 -0
  522. package/dist/commands/outcome.test.js.map +1 -0
  523. package/dist/commands/people.d.ts +6 -0
  524. package/dist/commands/people.d.ts.map +1 -0
  525. package/dist/commands/people.js +23 -0
  526. package/dist/commands/people.js.map +1 -0
  527. package/dist/commands/people.test.d.ts +2 -0
  528. package/dist/commands/people.test.d.ts.map +1 -0
  529. package/dist/commands/people.test.js +61 -0
  530. package/dist/commands/people.test.js.map +1 -0
  531. package/dist/commands/profile.d.ts +23 -2
  532. package/dist/commands/profile.d.ts.map +1 -1
  533. package/dist/commands/profile.js +192 -35
  534. package/dist/commands/profile.js.map +1 -1
  535. package/dist/commands/quality.d.ts +28 -0
  536. package/dist/commands/quality.d.ts.map +1 -0
  537. package/dist/commands/quality.js +74 -0
  538. package/dist/commands/quality.js.map +1 -0
  539. package/dist/commands/questions.d.ts +23 -0
  540. package/dist/commands/questions.d.ts.map +1 -0
  541. package/dist/commands/questions.js +238 -0
  542. package/dist/commands/questions.js.map +1 -0
  543. package/dist/commands/questions.test.d.ts +2 -0
  544. package/dist/commands/questions.test.d.ts.map +1 -0
  545. package/dist/commands/questions.test.js +159 -0
  546. package/dist/commands/questions.test.js.map +1 -0
  547. package/dist/commands/relate.d.ts +1 -0
  548. package/dist/commands/relate.d.ts.map +1 -1
  549. package/dist/commands/relate.js +85 -13
  550. package/dist/commands/relate.js.map +1 -1
  551. package/dist/commands/restore.d.ts +2 -0
  552. package/dist/commands/restore.d.ts.map +1 -0
  553. package/dist/commands/restore.js +83 -0
  554. package/dist/commands/restore.js.map +1 -0
  555. package/dist/commands/rework.d.ts +24 -0
  556. package/dist/commands/rework.d.ts.map +1 -0
  557. package/dist/commands/rework.js +97 -0
  558. package/dist/commands/rework.js.map +1 -0
  559. package/dist/commands/role.d.ts +88 -0
  560. package/dist/commands/role.d.ts.map +1 -0
  561. package/dist/commands/role.js +235 -0
  562. package/dist/commands/role.js.map +1 -0
  563. package/dist/commands/role.test.d.ts +2 -0
  564. package/dist/commands/role.test.d.ts.map +1 -0
  565. package/dist/commands/role.test.js +348 -0
  566. package/dist/commands/role.test.js.map +1 -0
  567. package/dist/commands/scoreboard.d.ts +26 -0
  568. package/dist/commands/scoreboard.d.ts.map +1 -0
  569. package/dist/commands/scoreboard.js +40 -0
  570. package/dist/commands/scoreboard.js.map +1 -0
  571. package/dist/commands/search.d.ts +2 -1
  572. package/dist/commands/search.d.ts.map +1 -1
  573. package/dist/commands/search.js +5 -4
  574. package/dist/commands/search.js.map +1 -1
  575. package/dist/commands/session.d.ts +36 -5
  576. package/dist/commands/session.d.ts.map +1 -1
  577. package/dist/commands/session.js +301 -155
  578. package/dist/commands/session.js.map +1 -1
  579. package/dist/commands/status.d.ts +7 -0
  580. package/dist/commands/status.d.ts.map +1 -0
  581. package/dist/commands/status.js +101 -0
  582. package/dist/commands/status.js.map +1 -0
  583. package/dist/commands/status.test.d.ts +2 -0
  584. package/dist/commands/status.test.d.ts.map +1 -0
  585. package/dist/commands/status.test.js +75 -0
  586. package/dist/commands/status.test.js.map +1 -0
  587. package/dist/commands/stillTrue.d.ts +14 -0
  588. package/dist/commands/stillTrue.d.ts.map +1 -0
  589. package/dist/commands/stillTrue.js +48 -0
  590. package/dist/commands/stillTrue.js.map +1 -0
  591. package/dist/commands/tensionsList.d.ts +5 -0
  592. package/dist/commands/tensionsList.d.ts.map +1 -0
  593. package/dist/commands/tensionsList.js +27 -0
  594. package/dist/commands/tensionsList.js.map +1 -0
  595. package/dist/commands/update.d.ts +21 -0
  596. package/dist/commands/update.d.ts.map +1 -1
  597. package/dist/commands/update.js +175 -42
  598. package/dist/commands/update.js.map +1 -1
  599. package/dist/commands/usage.d.ts.map +1 -1
  600. package/dist/commands/usage.js +0 -18
  601. package/dist/commands/usage.js.map +1 -1
  602. package/dist/commands/verify.d.ts.map +1 -1
  603. package/dist/commands/verify.js +5 -0
  604. package/dist/commands/verify.js.map +1 -1
  605. package/dist/commands/welcome.d.ts.map +1 -1
  606. package/dist/commands/welcome.js +5 -2
  607. package/dist/commands/welcome.js.map +1 -1
  608. package/dist/commands/whoami.d.ts +10 -2
  609. package/dist/commands/whoami.d.ts.map +1 -1
  610. package/dist/commands/whoami.js +76 -20
  611. package/dist/commands/whoami.js.map +1 -1
  612. package/dist/commands/whoami.test.js +86 -6
  613. package/dist/commands/whoami.test.js.map +1 -1
  614. package/dist/commands/workspace.d.ts +7 -74
  615. package/dist/commands/workspace.d.ts.map +1 -1
  616. package/dist/commands/workspace.js +9 -70
  617. package/dist/commands/workspace.js.map +1 -1
  618. package/dist/formatters/__tests__/orient-plannedWorkCut.test.d.ts +2 -0
  619. package/dist/formatters/__tests__/orient-plannedWorkCut.test.d.ts.map +1 -0
  620. package/dist/formatters/__tests__/orient-plannedWorkCut.test.js +49 -0
  621. package/dist/formatters/__tests__/orient-plannedWorkCut.test.js.map +1 -0
  622. package/dist/formatters/__tests__/orient-provenance.test.d.ts +2 -3
  623. package/dist/formatters/__tests__/orient-provenance.test.d.ts.map +1 -1
  624. package/dist/formatters/__tests__/orient-provenance.test.js +41 -176
  625. package/dist/formatters/__tests__/orient-provenance.test.js.map +1 -1
  626. package/dist/formatters/__tests__/orient-ruleLists.test.d.ts +2 -0
  627. package/dist/formatters/__tests__/orient-ruleLists.test.d.ts.map +1 -0
  628. package/dist/formatters/__tests__/orient-ruleLists.test.js +93 -0
  629. package/dist/formatters/__tests__/orient-ruleLists.test.js.map +1 -0
  630. package/dist/formatters/__tests__/session-list-show.test.d.ts +2 -0
  631. package/dist/formatters/__tests__/session-list-show.test.d.ts.map +1 -0
  632. package/dist/formatters/__tests__/session-list-show.test.js +195 -0
  633. package/dist/formatters/__tests__/session-list-show.test.js.map +1 -0
  634. package/dist/formatters/__tests__/session.test.js +172 -8
  635. package/dist/formatters/__tests__/session.test.js.map +1 -1
  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 +24 -13
  649. package/dist/formatters/capture.d.ts.map +1 -1
  650. package/dist/formatters/capture.js +36 -14
  651. package/dist/formatters/capture.js.map +1 -1
  652. package/dist/formatters/coaching.d.ts +59 -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 +71 -0
  661. package/dist/formatters/conflicts.d.ts.map +1 -0
  662. package/dist/formatters/conflicts.js +105 -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 +166 -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 +56 -3
  688. package/dist/formatters/entry.d.ts.map +1 -1
  689. package/dist/formatters/entry.js +69 -8
  690. package/dist/formatters/entry.js.map +1 -1
  691. package/dist/formatters/entryAccept.d.ts +83 -0
  692. package/dist/formatters/entryAccept.d.ts.map +1 -0
  693. package/dist/formatters/entryAccept.js +79 -0
  694. package/dist/formatters/entryAccept.js.map +1 -0
  695. package/dist/formatters/feedback.d.ts +61 -0
  696. package/dist/formatters/feedback.d.ts.map +1 -0
  697. package/dist/formatters/feedback.js +95 -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 +142 -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 +92 -145
  720. package/dist/formatters/orient.d.ts.map +1 -1
  721. package/dist/formatters/orient.js +143 -183
  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 +77 -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 +72 -0
  730. package/dist/formatters/orient.rituals.test.js.map +1 -0
  731. package/dist/formatters/orientDegradation.d.ts +38 -0
  732. package/dist/formatters/orientDegradation.d.ts.map +1 -0
  733. package/dist/formatters/orientDegradation.js +50 -0
  734. package/dist/formatters/orientDegradation.js.map +1 -0
  735. package/dist/formatters/orientDegradation.test.d.ts +2 -0
  736. package/dist/formatters/orientDegradation.test.d.ts.map +1 -0
  737. package/dist/formatters/orientDegradation.test.js +28 -0
  738. package/dist/formatters/orientDegradation.test.js.map +1 -0
  739. package/dist/formatters/orientDirection.d.ts +25 -0
  740. package/dist/formatters/orientDirection.d.ts.map +1 -0
  741. package/dist/formatters/orientDirection.js +7 -0
  742. package/dist/formatters/orientDirection.js.map +1 -0
  743. package/dist/formatters/orientDirection.test.d.ts +2 -0
  744. package/dist/formatters/orientDirection.test.d.ts.map +1 -0
  745. package/dist/formatters/orientDirection.test.js +48 -0
  746. package/dist/formatters/orientDirection.test.js.map +1 -0
  747. package/dist/formatters/orientRetrievalMiss.d.ts +22 -0
  748. package/dist/formatters/orientRetrievalMiss.d.ts.map +1 -0
  749. package/dist/formatters/orientRetrievalMiss.js +17 -0
  750. package/dist/formatters/orientRetrievalMiss.js.map +1 -0
  751. package/dist/formatters/plannedWorkCounts.d.ts +19 -0
  752. package/dist/formatters/plannedWorkCounts.d.ts.map +1 -0
  753. package/dist/formatters/plannedWorkCounts.js +17 -0
  754. package/dist/formatters/plannedWorkCounts.js.map +1 -0
  755. package/dist/formatters/qualityChecks.d.ts +14 -0
  756. package/dist/formatters/qualityChecks.d.ts.map +1 -0
  757. package/dist/formatters/qualityChecks.js +97 -0
  758. package/dist/formatters/qualityChecks.js.map +1 -0
  759. package/dist/formatters/questions.d.ts +74 -0
  760. package/dist/formatters/questions.d.ts.map +1 -0
  761. package/dist/formatters/questions.js +118 -0
  762. package/dist/formatters/questions.js.map +1 -0
  763. package/dist/formatters/questions.test.d.ts +2 -0
  764. package/dist/formatters/questions.test.d.ts.map +1 -0
  765. package/dist/formatters/questions.test.js +151 -0
  766. package/dist/formatters/questions.test.js.map +1 -0
  767. package/dist/formatters/relate.d.ts +13 -2
  768. package/dist/formatters/relate.d.ts.map +1 -1
  769. package/dist/formatters/relate.js +15 -5
  770. package/dist/formatters/relate.js.map +1 -1
  771. package/dist/formatters/relate.test.d.ts +2 -0
  772. package/dist/formatters/relate.test.d.ts.map +1 -0
  773. package/dist/formatters/relate.test.js +91 -0
  774. package/dist/formatters/relate.test.js.map +1 -0
  775. package/dist/formatters/scoreboard.d.ts +11 -0
  776. package/dist/formatters/scoreboard.d.ts.map +1 -0
  777. package/dist/formatters/scoreboard.js +156 -0
  778. package/dist/formatters/scoreboard.js.map +1 -0
  779. package/dist/formatters/scoreboard.test.d.ts +2 -0
  780. package/dist/formatters/scoreboard.test.d.ts.map +1 -0
  781. package/dist/formatters/scoreboard.test.js +284 -0
  782. package/dist/formatters/scoreboard.test.js.map +1 -0
  783. package/dist/formatters/search.d.ts +24 -0
  784. package/dist/formatters/search.d.ts.map +1 -1
  785. package/dist/formatters/search.js +26 -11
  786. package/dist/formatters/search.js.map +1 -1
  787. package/dist/formatters/search.test.d.ts +2 -0
  788. package/dist/formatters/search.test.d.ts.map +1 -0
  789. package/dist/formatters/search.test.js +86 -0
  790. package/dist/formatters/search.test.js.map +1 -0
  791. package/dist/formatters/session-feedback.test.d.ts +2 -0
  792. package/dist/formatters/session-feedback.test.d.ts.map +1 -0
  793. package/dist/formatters/session-feedback.test.js +124 -0
  794. package/dist/formatters/session-feedback.test.js.map +1 -0
  795. package/dist/formatters/session.d.ts +121 -5
  796. package/dist/formatters/session.d.ts.map +1 -1
  797. package/dist/formatters/session.js +316 -31
  798. package/dist/formatters/session.js.map +1 -1
  799. package/dist/formatters/spineCheck.d.ts +14 -0
  800. package/dist/formatters/spineCheck.d.ts.map +1 -0
  801. package/dist/formatters/spineCheck.js +113 -0
  802. package/dist/formatters/spineCheck.js.map +1 -0
  803. package/dist/formatters/spineCheck.test.d.ts +2 -0
  804. package/dist/formatters/spineCheck.test.d.ts.map +1 -0
  805. package/dist/formatters/spineCheck.test.js +76 -0
  806. package/dist/formatters/spineCheck.test.js.map +1 -0
  807. package/dist/formatters/tensionsList.d.ts +17 -0
  808. package/dist/formatters/tensionsList.d.ts.map +1 -0
  809. package/dist/formatters/tensionsList.js +33 -0
  810. package/dist/formatters/tensionsList.js.map +1 -0
  811. package/dist/formatters/update.d.ts +26 -0
  812. package/dist/formatters/update.d.ts.map +1 -1
  813. package/dist/formatters/update.js +39 -7
  814. package/dist/formatters/update.js.map +1 -1
  815. package/dist/formatters/update.test.d.ts +2 -0
  816. package/dist/formatters/update.test.d.ts.map +1 -0
  817. package/dist/formatters/update.test.js +71 -0
  818. package/dist/formatters/update.test.js.map +1 -0
  819. package/dist/formatters/verify.d.ts +12 -4
  820. package/dist/formatters/verify.d.ts.map +1 -1
  821. package/dist/formatters/verify.js +20 -2
  822. package/dist/formatters/verify.js.map +1 -1
  823. package/dist/generated/healthGapKinds.generated.d.ts +12 -0
  824. package/dist/generated/healthGapKinds.generated.d.ts.map +1 -0
  825. package/dist/generated/healthGapKinds.generated.js +16 -0
  826. package/dist/generated/healthGapKinds.generated.js.map +1 -0
  827. package/dist/generated/organisationalAuthorityRefusalCodes.generated.d.ts +12 -0
  828. package/dist/generated/organisationalAuthorityRefusalCodes.generated.d.ts.map +1 -0
  829. package/dist/generated/organisationalAuthorityRefusalCodes.generated.js +11 -0
  830. package/dist/generated/organisationalAuthorityRefusalCodes.generated.js.map +1 -0
  831. package/dist/generated/routeLatencyBudget.generated.d.ts +55 -0
  832. package/dist/generated/routeLatencyBudget.generated.d.ts.map +1 -0
  833. package/dist/generated/routeLatencyBudget.generated.js +274 -0
  834. package/dist/generated/routeLatencyBudget.generated.js.map +1 -0
  835. package/dist/generated/sourceSurfaces.generated.d.ts +12 -0
  836. package/dist/generated/sourceSurfaces.generated.d.ts.map +1 -0
  837. package/dist/generated/sourceSurfaces.generated.js +11 -0
  838. package/dist/generated/sourceSurfaces.generated.js.map +1 -0
  839. package/dist/generators/adapters.d.ts +39 -6
  840. package/dist/generators/adapters.d.ts.map +1 -1
  841. package/dist/generators/adapters.js +88 -89
  842. package/dist/generators/adapters.js.map +1 -1
  843. package/dist/generators/adapters.test.js +14 -6
  844. package/dist/generators/adapters.test.js.map +1 -1
  845. package/dist/generators/briefing-projections.test.d.ts +2 -0
  846. package/dist/generators/briefing-projections.test.d.ts.map +1 -0
  847. package/dist/generators/briefing-projections.test.js +98 -0
  848. package/dist/generators/briefing-projections.test.js.map +1 -0
  849. package/dist/generators/context-md.d.ts +7 -2
  850. package/dist/generators/context-md.d.ts.map +1 -1
  851. package/dist/generators/context-md.js +14 -53
  852. package/dist/generators/context-md.js.map +1 -1
  853. package/dist/generators/everyone-rules-md.d.ts +9 -0
  854. package/dist/generators/everyone-rules-md.d.ts.map +1 -0
  855. package/dist/generators/everyone-rules-md.js +21 -0
  856. package/dist/generators/everyone-rules-md.js.map +1 -0
  857. package/dist/generators/noProjectionAssets.d.ts +15 -0
  858. package/dist/generators/noProjectionAssets.d.ts.map +1 -0
  859. package/dist/generators/noProjectionAssets.js +6 -0
  860. package/dist/generators/noProjectionAssets.js.map +1 -0
  861. package/dist/generators/portable-knowledge.d.ts +9 -26
  862. package/dist/generators/portable-knowledge.d.ts.map +1 -1
  863. package/dist/generators/portable-knowledge.js +11 -125
  864. package/dist/generators/portable-knowledge.js.map +1 -1
  865. package/dist/generators/portable-knowledge.test.js +82 -267
  866. package/dist/generators/portable-knowledge.test.js.map +1 -1
  867. package/dist/generators/region-projections.d.ts +0 -1
  868. package/dist/generators/region-projections.d.ts.map +1 -1
  869. package/dist/generators/region-projections.js +7 -5
  870. package/dist/generators/region-projections.js.map +1 -1
  871. package/dist/generators/region-projections.test.js +10 -15
  872. package/dist/generators/region-projections.test.js.map +1 -1
  873. package/dist/generators/region.test.js +9 -10
  874. package/dist/generators/region.test.js.map +1 -1
  875. package/dist/generators/retired-projections.d.ts +12 -0
  876. package/dist/generators/retired-projections.d.ts.map +1 -0
  877. package/dist/generators/retired-projections.js +75 -0
  878. package/dist/generators/retired-projections.js.map +1 -0
  879. package/dist/generators/retired-projections.test.d.ts +2 -0
  880. package/dist/generators/retired-projections.test.d.ts.map +1 -0
  881. package/dist/generators/retired-projections.test.js +64 -0
  882. package/dist/generators/retired-projections.test.js.map +1 -0
  883. package/dist/handleCliError.d.ts +13 -0
  884. package/dist/handleCliError.d.ts.map +1 -0
  885. package/dist/handleCliError.js +80 -0
  886. package/dist/handleCliError.js.map +1 -0
  887. package/dist/index.d.ts +0 -5
  888. package/dist/index.d.ts.map +1 -1
  889. package/dist/index.js +169 -585
  890. package/dist/index.js.map +1 -1
  891. package/dist/lib/__tests__/parseFields.test.d.ts +2 -0
  892. package/dist/lib/__tests__/parseFields.test.d.ts.map +1 -0
  893. package/dist/lib/__tests__/parseFields.test.js +40 -0
  894. package/dist/lib/__tests__/parseFields.test.js.map +1 -0
  895. package/dist/lib/adminConfig.d.ts +48 -0
  896. package/dist/lib/adminConfig.d.ts.map +1 -0
  897. package/dist/lib/adminConfig.js +130 -0
  898. package/dist/lib/adminConfig.js.map +1 -0
  899. package/dist/lib/canonicalRefs.d.ts +27 -8
  900. package/dist/lib/canonicalRefs.d.ts.map +1 -1
  901. package/dist/lib/canonicalRefs.js +25 -6
  902. package/dist/lib/canonicalRefs.js.map +1 -1
  903. package/dist/lib/captureLink.d.ts +7 -0
  904. package/dist/lib/captureLink.d.ts.map +1 -0
  905. package/dist/lib/captureLink.js +29 -0
  906. package/dist/lib/captureLink.js.map +1 -0
  907. package/dist/lib/checklist.d.ts +32 -0
  908. package/dist/lib/checklist.d.ts.map +1 -0
  909. package/dist/lib/checklist.js +79 -0
  910. package/dist/lib/checklist.js.map +1 -0
  911. package/dist/lib/client.d.ts +38 -24
  912. package/dist/lib/client.d.ts.map +1 -1
  913. package/dist/lib/client.js +208 -100
  914. package/dist/lib/client.js.map +1 -1
  915. package/dist/lib/commanderOptions.d.ts +8 -0
  916. package/dist/lib/commanderOptions.d.ts.map +1 -0
  917. package/dist/lib/commanderOptions.js +10 -0
  918. package/dist/lib/commanderOptions.js.map +1 -0
  919. package/dist/lib/compose-wrapup-view.d.ts +68 -0
  920. package/dist/lib/compose-wrapup-view.d.ts.map +1 -0
  921. package/dist/lib/compose-wrapup-view.js +40 -0
  922. package/dist/lib/compose-wrapup-view.js.map +1 -0
  923. package/dist/lib/config.d.ts +43 -111
  924. package/dist/lib/config.d.ts.map +1 -1
  925. package/dist/lib/config.js +103 -309
  926. package/dist/lib/config.js.map +1 -1
  927. package/dist/lib/configResult.d.ts +102 -0
  928. package/dist/lib/configResult.d.ts.map +1 -0
  929. package/dist/lib/configResult.js +179 -0
  930. package/dist/lib/configResult.js.map +1 -0
  931. package/dist/lib/connectProfileName.d.ts +36 -0
  932. package/dist/lib/connectProfileName.d.ts.map +1 -0
  933. package/dist/lib/connectProfileName.js +72 -0
  934. package/dist/lib/connectProfileName.js.map +1 -0
  935. package/dist/lib/connectProfileName.test.d.ts +2 -0
  936. package/dist/lib/connectProfileName.test.d.ts.map +1 -0
  937. package/dist/lib/connectProfileName.test.js +100 -0
  938. package/dist/lib/connectProfileName.test.js.map +1 -0
  939. package/dist/lib/constants.d.ts +3 -0
  940. package/dist/lib/constants.d.ts.map +1 -1
  941. package/dist/lib/constants.js +3 -0
  942. package/dist/lib/constants.js.map +1 -1
  943. package/dist/lib/conversation.d.ts +36 -0
  944. package/dist/lib/conversation.d.ts.map +1 -0
  945. package/dist/lib/conversation.js +66 -0
  946. package/dist/lib/conversation.js.map +1 -0
  947. package/dist/lib/createEntryResult.d.ts +34 -0
  948. package/dist/lib/createEntryResult.d.ts.map +1 -0
  949. package/dist/lib/createEntryResult.js +12 -0
  950. package/dist/lib/createEntryResult.js.map +1 -0
  951. package/dist/lib/deployment.js +2 -2
  952. package/dist/lib/deployment.js.map +1 -1
  953. package/dist/lib/deployment.test.js +20 -1
  954. package/dist/lib/deployment.test.js.map +1 -1
  955. package/dist/lib/envKeySnapshot.d.ts +10 -0
  956. package/dist/lib/envKeySnapshot.d.ts.map +1 -0
  957. package/dist/lib/envKeySnapshot.js +30 -0
  958. package/dist/lib/envKeySnapshot.js.map +1 -0
  959. package/dist/lib/errors.d.ts +90 -0
  960. package/dist/lib/errors.d.ts.map +1 -1
  961. package/dist/lib/errors.js +83 -0
  962. package/dist/lib/errors.js.map +1 -1
  963. package/dist/lib/frontmatter.d.ts +55 -0
  964. package/dist/lib/frontmatter.d.ts.map +1 -0
  965. package/dist/lib/frontmatter.js +92 -0
  966. package/dist/lib/frontmatter.js.map +1 -0
  967. package/dist/lib/frontmatter.test.d.ts +15 -0
  968. package/dist/lib/frontmatter.test.d.ts.map +1 -0
  969. package/dist/lib/frontmatter.test.js +98 -0
  970. package/dist/lib/frontmatter.test.js.map +1 -0
  971. package/dist/lib/gatewayTimeout.d.ts +88 -0
  972. package/dist/lib/gatewayTimeout.d.ts.map +1 -0
  973. package/dist/lib/gatewayTimeout.js +118 -0
  974. package/dist/lib/gatewayTimeout.js.map +1 -0
  975. package/dist/lib/gitEnvLeakKeysParity.test.d.ts +2 -0
  976. package/dist/lib/gitEnvLeakKeysParity.test.d.ts.map +1 -0
  977. package/dist/lib/gitEnvLeakKeysParity.test.js +73 -0
  978. package/dist/lib/gitEnvLeakKeysParity.test.js.map +1 -0
  979. package/dist/lib/glossary.d.ts +3 -15
  980. package/dist/lib/glossary.d.ts.map +1 -1
  981. package/dist/lib/glossary.js +6 -47
  982. package/dist/lib/glossary.js.map +1 -1
  983. package/dist/lib/hook-intents.d.ts +9 -4
  984. package/dist/lib/hook-intents.d.ts.map +1 -1
  985. package/dist/lib/hook-intents.js +10 -11
  986. package/dist/lib/hook-intents.js.map +1 -1
  987. package/dist/lib/judgeWait.d.ts +50 -0
  988. package/dist/lib/judgeWait.d.ts.map +1 -0
  989. package/dist/lib/judgeWait.js +64 -0
  990. package/dist/lib/judgeWait.js.map +1 -0
  991. package/dist/lib/kernelEnvelope.d.ts +42 -0
  992. package/dist/lib/kernelEnvelope.d.ts.map +1 -0
  993. package/dist/lib/kernelEnvelope.js +67 -0
  994. package/dist/lib/kernelEnvelope.js.map +1 -0
  995. package/dist/lib/localBinding.d.ts +86 -0
  996. package/dist/lib/localBinding.d.ts.map +1 -0
  997. package/dist/lib/localBinding.js +173 -0
  998. package/dist/lib/localBinding.js.map +1 -0
  999. package/dist/lib/method-registry.d.ts +16 -11
  1000. package/dist/lib/method-registry.d.ts.map +1 -1
  1001. package/dist/lib/method-registry.js +13 -25
  1002. package/dist/lib/method-registry.js.map +1 -1
  1003. package/dist/lib/normalizeMaterializedFilename.d.ts +3 -3
  1004. package/dist/lib/normalizeMaterializedFilename.js +3 -3
  1005. package/dist/lib/notice-marker.d.ts.map +1 -1
  1006. package/dist/lib/notice-marker.js +186 -16
  1007. package/dist/lib/notice-marker.js.map +1 -1
  1008. package/dist/lib/outcomeObjectiveLines.d.ts +30 -0
  1009. package/dist/lib/outcomeObjectiveLines.d.ts.map +1 -0
  1010. package/dist/lib/outcomeObjectiveLines.js +29 -0
  1011. package/dist/lib/outcomeObjectiveLines.js.map +1 -0
  1012. package/dist/lib/ownerLine.d.ts +90 -0
  1013. package/dist/lib/ownerLine.d.ts.map +1 -0
  1014. package/dist/lib/ownerLine.js +77 -0
  1015. package/dist/lib/ownerLine.js.map +1 -0
  1016. package/dist/lib/parseFields.d.ts +19 -0
  1017. package/dist/lib/parseFields.d.ts.map +1 -0
  1018. package/dist/lib/parseFields.js +49 -0
  1019. package/dist/lib/parseFields.js.map +1 -0
  1020. package/dist/lib/pinnedRole.d.ts +28 -0
  1021. package/dist/lib/pinnedRole.d.ts.map +1 -0
  1022. package/dist/lib/pinnedRole.js +106 -0
  1023. package/dist/lib/pinnedRole.js.map +1 -0
  1024. package/dist/lib/platformGlossary.d.ts +22 -0
  1025. package/dist/lib/platformGlossary.d.ts.map +1 -0
  1026. package/dist/lib/platformGlossary.js +26 -0
  1027. package/dist/lib/platformGlossary.js.map +1 -0
  1028. package/dist/lib/previewBanner.d.ts +9 -0
  1029. package/dist/lib/previewBanner.d.ts.map +1 -0
  1030. package/dist/lib/previewBanner.js +36 -0
  1031. package/dist/lib/previewBanner.js.map +1 -0
  1032. package/dist/lib/productbrain-files.d.ts +108 -0
  1033. package/dist/lib/productbrain-files.d.ts.map +1 -0
  1034. package/dist/lib/productbrain-files.js +240 -0
  1035. package/dist/lib/productbrain-files.js.map +1 -0
  1036. package/dist/lib/productbrain-files.test.d.ts +2 -0
  1037. package/dist/lib/productbrain-files.test.d.ts.map +1 -0
  1038. package/dist/lib/productbrain-files.test.js +518 -0
  1039. package/dist/lib/productbrain-files.test.js.map +1 -0
  1040. package/dist/lib/profiles.d.ts +52 -4
  1041. package/dist/lib/profiles.d.ts.map +1 -1
  1042. package/dist/lib/profiles.js +72 -21
  1043. package/dist/lib/profiles.js.map +1 -1
  1044. package/dist/lib/projectConfig.d.ts +121 -0
  1045. package/dist/lib/projectConfig.d.ts.map +1 -0
  1046. package/dist/lib/projectConfig.js +226 -0
  1047. package/dist/lib/projectConfig.js.map +1 -0
  1048. package/dist/lib/prompts.d.ts +2 -0
  1049. package/dist/lib/prompts.d.ts.map +1 -1
  1050. package/dist/lib/prompts.js +2 -0
  1051. package/dist/lib/prompts.js.map +1 -1
  1052. package/dist/lib/proseBody.d.ts +14 -0
  1053. package/dist/lib/proseBody.d.ts.map +1 -0
  1054. package/dist/lib/proseBody.js +25 -0
  1055. package/dist/lib/proseBody.js.map +1 -0
  1056. package/dist/lib/rate-limit.d.ts +34 -0
  1057. package/dist/lib/rate-limit.d.ts.map +1 -0
  1058. package/dist/lib/rate-limit.js +89 -0
  1059. package/dist/lib/rate-limit.js.map +1 -0
  1060. package/dist/lib/readinessNotices.d.ts +12 -0
  1061. package/dist/lib/readinessNotices.d.ts.map +1 -0
  1062. package/dist/lib/readinessNotices.js +15 -0
  1063. package/dist/lib/readinessNotices.js.map +1 -0
  1064. package/dist/lib/repo-detect.d.ts +8 -2
  1065. package/dist/lib/repo-detect.d.ts.map +1 -1
  1066. package/dist/lib/repo-detect.js +11 -6
  1067. package/dist/lib/repo-detect.js.map +1 -1
  1068. package/dist/lib/reportedProfile.d.ts +18 -0
  1069. package/dist/lib/reportedProfile.d.ts.map +1 -0
  1070. package/dist/lib/reportedProfile.js +144 -0
  1071. package/dist/lib/reportedProfile.js.map +1 -0
  1072. package/dist/lib/restsOn.d.ts +33 -0
  1073. package/dist/lib/restsOn.d.ts.map +1 -0
  1074. package/dist/lib/restsOn.js +34 -0
  1075. package/dist/lib/restsOn.js.map +1 -0
  1076. package/dist/lib/ruleListRender.d.ts +268 -0
  1077. package/dist/lib/ruleListRender.d.ts.map +1 -0
  1078. package/dist/lib/ruleListRender.js +350 -0
  1079. package/dist/lib/ruleListRender.js.map +1 -0
  1080. package/dist/lib/runner.d.ts +9 -1
  1081. package/dist/lib/runner.d.ts.map +1 -1
  1082. package/dist/lib/runner.js +30 -4
  1083. package/dist/lib/runner.js.map +1 -1
  1084. package/dist/lib/seatSentence.d.ts +62 -0
  1085. package/dist/lib/seatSentence.d.ts.map +1 -0
  1086. package/dist/lib/seatSentence.js +82 -0
  1087. package/dist/lib/seatSentence.js.map +1 -0
  1088. package/dist/lib/session.d.ts +86 -12
  1089. package/dist/lib/session.d.ts.map +1 -1
  1090. package/dist/lib/session.js +243 -24
  1091. package/dist/lib/session.js.map +1 -1
  1092. package/dist/lib/sessionBinding.d.ts +61 -0
  1093. package/dist/lib/sessionBinding.d.ts.map +1 -0
  1094. package/dist/lib/sessionBinding.js +125 -0
  1095. package/dist/lib/sessionBinding.js.map +1 -0
  1096. package/dist/lib/sessionNotices.d.ts +54 -0
  1097. package/dist/lib/sessionNotices.d.ts.map +1 -0
  1098. package/dist/lib/sessionNotices.js +132 -0
  1099. package/dist/lib/sessionNotices.js.map +1 -0
  1100. package/dist/lib/sessionNotices.test.d.ts +2 -0
  1101. package/dist/lib/sessionNotices.test.d.ts.map +1 -0
  1102. package/dist/lib/sessionNotices.test.js +53 -0
  1103. package/dist/lib/sessionNotices.test.js.map +1 -0
  1104. package/dist/lib/spineVerdictRead.d.ts +70 -0
  1105. package/dist/lib/spineVerdictRead.d.ts.map +1 -0
  1106. package/dist/lib/spineVerdictRead.js +73 -0
  1107. package/dist/lib/spineVerdictRead.js.map +1 -0
  1108. package/dist/lib/spinner.js +2 -2
  1109. package/dist/lib/spinner.js.map +1 -1
  1110. package/dist/lib/startup-resolution-signals.d.ts +34 -0
  1111. package/dist/lib/startup-resolution-signals.d.ts.map +1 -0
  1112. package/dist/lib/startup-resolution-signals.js +116 -0
  1113. package/dist/lib/startup-resolution-signals.js.map +1 -0
  1114. package/dist/lib/startup-resolution-signals.test.d.ts +2 -0
  1115. package/dist/lib/startup-resolution-signals.test.d.ts.map +1 -0
  1116. package/dist/lib/startup-resolution-signals.test.js +113 -0
  1117. package/dist/lib/startup-resolution-signals.test.js.map +1 -0
  1118. package/dist/lib/startup-signals.d.ts +12 -0
  1119. package/dist/lib/startup-signals.d.ts.map +1 -0
  1120. package/dist/lib/startup-signals.js +179 -0
  1121. package/dist/lib/startup-signals.js.map +1 -0
  1122. package/dist/lib/startup-signals.test.d.ts +2 -0
  1123. package/dist/lib/startup-signals.test.d.ts.map +1 -0
  1124. package/dist/lib/startup-signals.test.js +165 -0
  1125. package/dist/lib/startup-signals.test.js.map +1 -0
  1126. package/dist/lib/state.d.ts +11 -2
  1127. package/dist/lib/state.d.ts.map +1 -1
  1128. package/dist/lib/state.js +11 -4
  1129. package/dist/lib/state.js.map +1 -1
  1130. package/dist/lib/statusCategories.d.ts +162 -0
  1131. package/dist/lib/statusCategories.d.ts.map +1 -0
  1132. package/dist/lib/statusCategories.js +286 -0
  1133. package/dist/lib/statusCategories.js.map +1 -0
  1134. package/dist/lib/strip.d.ts +17 -0
  1135. package/dist/lib/strip.d.ts.map +1 -1
  1136. package/dist/lib/strip.js +48 -1
  1137. package/dist/lib/strip.js.map +1 -1
  1138. package/dist/lib/style.d.ts +8 -2
  1139. package/dist/lib/style.d.ts.map +1 -1
  1140. package/dist/lib/style.js +24 -17
  1141. package/dist/lib/style.js.map +1 -1
  1142. package/dist/lib/update-check.d.ts +3 -2
  1143. package/dist/lib/update-check.d.ts.map +1 -1
  1144. package/dist/lib/update-check.js +10 -4
  1145. package/dist/lib/update-check.js.map +1 -1
  1146. package/dist/lib/workspaceNotice.d.ts +202 -0
  1147. package/dist/lib/workspaceNotice.d.ts.map +1 -0
  1148. package/dist/lib/workspaceNotice.js +345 -0
  1149. package/dist/lib/workspaceNotice.js.map +1 -0
  1150. package/dist/lib/writePerimeter.d.ts +72 -0
  1151. package/dist/lib/writePerimeter.d.ts.map +1 -0
  1152. package/dist/lib/writePerimeter.js +128 -0
  1153. package/dist/lib/writePerimeter.js.map +1 -0
  1154. package/dist/registerEntryCommands.d.ts +18 -0
  1155. package/dist/registerEntryCommands.d.ts.map +1 -0
  1156. package/dist/registerEntryCommands.js +122 -0
  1157. package/dist/registerEntryCommands.js.map +1 -0
  1158. package/dist/registerHistoryCommand.d.ts +8 -0
  1159. package/dist/registerHistoryCommand.d.ts.map +1 -0
  1160. package/dist/registerHistoryCommand.js +14 -0
  1161. package/dist/registerHistoryCommand.js.map +1 -0
  1162. package/dist/registerOutcomeCommands.d.ts +27 -0
  1163. package/dist/registerOutcomeCommands.d.ts.map +1 -0
  1164. package/dist/registerOutcomeCommands.js +27 -0
  1165. package/dist/registerOutcomeCommands.js.map +1 -0
  1166. package/dist/registerRoleCommands.d.ts +11 -0
  1167. package/dist/registerRoleCommands.d.ts.map +1 -0
  1168. package/dist/registerRoleCommands.js +42 -0
  1169. package/dist/registerRoleCommands.js.map +1 -0
  1170. package/dist/registerTensionsCommands.d.ts +10 -0
  1171. package/dist/registerTensionsCommands.d.ts.map +1 -0
  1172. package/dist/registerTensionsCommands.js +15 -0
  1173. package/dist/registerTensionsCommands.js.map +1 -0
  1174. package/dist/scoreboard/diagnose.d.ts +185 -0
  1175. package/dist/scoreboard/diagnose.d.ts.map +1 -0
  1176. package/dist/scoreboard/diagnose.js +282 -0
  1177. package/dist/scoreboard/diagnose.js.map +1 -0
  1178. package/dist/scoreboard/diagnose.test.d.ts +15 -0
  1179. package/dist/scoreboard/diagnose.test.d.ts.map +1 -0
  1180. package/dist/scoreboard/diagnose.test.js +288 -0
  1181. package/dist/scoreboard/diagnose.test.js.map +1 -0
  1182. package/dist/scoreboard/floors.d.ts +47 -0
  1183. package/dist/scoreboard/floors.d.ts.map +1 -0
  1184. package/dist/scoreboard/floors.js +33 -0
  1185. package/dist/scoreboard/floors.js.map +1 -0
  1186. package/dist/scoreboard/localDrift.d.ts +23 -0
  1187. package/dist/scoreboard/localDrift.d.ts.map +1 -0
  1188. package/dist/scoreboard/localDrift.js +111 -0
  1189. package/dist/scoreboard/localDrift.js.map +1 -0
  1190. package/dist/scoreboard/localDrift.test.d.ts +9 -0
  1191. package/dist/scoreboard/localDrift.test.d.ts.map +1 -0
  1192. package/dist/scoreboard/localDrift.test.js +82 -0
  1193. package/dist/scoreboard/localDrift.test.js.map +1 -0
  1194. package/dist/surfaces/__tests__/adapter.test.js +2 -6
  1195. package/dist/surfaces/__tests__/adapter.test.js.map +1 -1
  1196. package/dist/surfaces/__tests__/claude-skill-pointer-drift.test.d.ts +2 -0
  1197. package/dist/surfaces/__tests__/claude-skill-pointer-drift.test.d.ts.map +1 -0
  1198. package/dist/surfaces/__tests__/claude-skill-pointer-drift.test.js +179 -0
  1199. package/dist/surfaces/__tests__/claude-skill-pointer-drift.test.js.map +1 -0
  1200. package/dist/surfaces/adapters/claude.d.ts.map +1 -1
  1201. package/dist/surfaces/adapters/claude.js +30 -25
  1202. package/dist/surfaces/adapters/claude.js.map +1 -1
  1203. package/dist/surfaces/registry.js +1 -1
  1204. package/dist/surfaces/registry.js.map +1 -1
  1205. package/package.json +9 -8
  1206. package/dist/__tests__/audit.test.d.ts +0 -2
  1207. package/dist/__tests__/audit.test.d.ts.map +0 -1
  1208. package/dist/__tests__/audit.test.js +0 -399
  1209. package/dist/__tests__/audit.test.js.map +0 -1
  1210. package/dist/__tests__/authority-domains.test.d.ts +0 -2
  1211. package/dist/__tests__/authority-domains.test.d.ts.map +0 -1
  1212. package/dist/__tests__/authority-domains.test.js +0 -48
  1213. package/dist/__tests__/authority-domains.test.js.map +0 -1
  1214. package/dist/__tests__/ingest.test.d.ts +0 -2
  1215. package/dist/__tests__/ingest.test.d.ts.map +0 -1
  1216. package/dist/__tests__/ingest.test.js +0 -185
  1217. package/dist/__tests__/ingest.test.js.map +0 -1
  1218. package/dist/__tests__/onboarding-path-b.test.d.ts +0 -2
  1219. package/dist/__tests__/onboarding-path-b.test.d.ts.map +0 -1
  1220. package/dist/__tests__/onboarding-path-b.test.js +0 -46
  1221. package/dist/__tests__/onboarding-path-b.test.js.map +0 -1
  1222. package/dist/__tests__/onboarding.test.d.ts +0 -6
  1223. package/dist/__tests__/onboarding.test.d.ts.map +0 -1
  1224. package/dist/__tests__/onboarding.test.js +0 -347
  1225. package/dist/__tests__/onboarding.test.js.map +0 -1
  1226. package/dist/__tests__/promote.test.d.ts +0 -2
  1227. package/dist/__tests__/promote.test.d.ts.map +0 -1
  1228. package/dist/__tests__/promote.test.js +0 -230
  1229. package/dist/__tests__/promote.test.js.map +0 -1
  1230. package/dist/__tests__/proposals.test.d.ts +0 -2
  1231. package/dist/__tests__/proposals.test.d.ts.map +0 -1
  1232. package/dist/__tests__/proposals.test.js +0 -167
  1233. package/dist/__tests__/proposals.test.js.map +0 -1
  1234. package/dist/__tests__/setup-ingest.test.d.ts +0 -2
  1235. package/dist/__tests__/setup-ingest.test.d.ts.map +0 -1
  1236. package/dist/__tests__/setup-ingest.test.js +0 -71
  1237. package/dist/__tests__/setup-ingest.test.js.map +0 -1
  1238. package/dist/__tests__/setup-resolver.test.d.ts +0 -14
  1239. package/dist/__tests__/setup-resolver.test.d.ts.map +0 -1
  1240. package/dist/__tests__/setup-resolver.test.js +0 -228
  1241. package/dist/__tests__/setup-resolver.test.js.map +0 -1
  1242. package/dist/commands/__tests__/setup-detect-surfaces.test.d.ts +0 -15
  1243. package/dist/commands/__tests__/setup-detect-surfaces.test.d.ts.map +0 -1
  1244. package/dist/commands/__tests__/setup-detect-surfaces.test.js +0 -149
  1245. package/dist/commands/__tests__/setup-detect-surfaces.test.js.map +0 -1
  1246. package/dist/commands/__tests__/setup-state.test.d.ts +0 -2
  1247. package/dist/commands/__tests__/setup-state.test.d.ts.map +0 -1
  1248. package/dist/commands/__tests__/setup-state.test.js +0 -194
  1249. package/dist/commands/__tests__/setup-state.test.js.map +0 -1
  1250. package/dist/commands/accept.d.ts +0 -18
  1251. package/dist/commands/accept.d.ts.map +0 -1
  1252. package/dist/commands/accept.js +0 -76
  1253. package/dist/commands/accept.js.map +0 -1
  1254. package/dist/commands/audit.d.ts +0 -25
  1255. package/dist/commands/audit.d.ts.map +0 -1
  1256. package/dist/commands/audit.js +0 -215
  1257. package/dist/commands/audit.js.map +0 -1
  1258. package/dist/commands/authority-domains.d.ts +0 -146
  1259. package/dist/commands/authority-domains.d.ts.map +0 -1
  1260. package/dist/commands/authority-domains.js +0 -283
  1261. package/dist/commands/authority-domains.js.map +0 -1
  1262. package/dist/commands/brand-pack.d.ts +0 -2
  1263. package/dist/commands/brand-pack.d.ts.map +0 -1
  1264. package/dist/commands/brand-pack.js +0 -25
  1265. package/dist/commands/brand-pack.js.map +0 -1
  1266. package/dist/commands/ingest.d.ts +0 -14
  1267. package/dist/commands/ingest.d.ts.map +0 -1
  1268. package/dist/commands/ingest.js +0 -189
  1269. package/dist/commands/ingest.js.map +0 -1
  1270. package/dist/commands/method.d.ts +0 -99
  1271. package/dist/commands/method.d.ts.map +0 -1
  1272. package/dist/commands/method.js +0 -785
  1273. package/dist/commands/method.js.map +0 -1
  1274. package/dist/commands/migrate-setup.d.ts +0 -18
  1275. package/dist/commands/migrate-setup.d.ts.map +0 -1
  1276. package/dist/commands/migrate-setup.js +0 -198
  1277. package/dist/commands/migrate-setup.js.map +0 -1
  1278. package/dist/commands/promote.d.ts +0 -12
  1279. package/dist/commands/promote.d.ts.map +0 -1
  1280. package/dist/commands/promote.js +0 -113
  1281. package/dist/commands/promote.js.map +0 -1
  1282. package/dist/commands/proposals.d.ts +0 -9
  1283. package/dist/commands/proposals.d.ts.map +0 -1
  1284. package/dist/commands/proposals.js +0 -24
  1285. package/dist/commands/proposals.js.map +0 -1
  1286. package/dist/commands/reject.d.ts +0 -14
  1287. package/dist/commands/reject.d.ts.map +0 -1
  1288. package/dist/commands/reject.js +0 -44
  1289. package/dist/commands/reject.js.map +0 -1
  1290. package/dist/commands/setup-audit.d.ts +0 -59
  1291. package/dist/commands/setup-audit.d.ts.map +0 -1
  1292. package/dist/commands/setup-audit.js +0 -250
  1293. package/dist/commands/setup-audit.js.map +0 -1
  1294. package/dist/commands/setup-detect-surfaces.d.ts +0 -38
  1295. package/dist/commands/setup-detect-surfaces.d.ts.map +0 -1
  1296. package/dist/commands/setup-detect-surfaces.js +0 -76
  1297. package/dist/commands/setup-detect-surfaces.js.map +0 -1
  1298. package/dist/commands/setup-ingest.d.ts +0 -17
  1299. package/dist/commands/setup-ingest.d.ts.map +0 -1
  1300. package/dist/commands/setup-ingest.js +0 -226
  1301. package/dist/commands/setup-ingest.js.map +0 -1
  1302. package/dist/commands/setup-resolver.d.ts +0 -58
  1303. package/dist/commands/setup-resolver.d.ts.map +0 -1
  1304. package/dist/commands/setup-resolver.js +0 -150
  1305. package/dist/commands/setup-resolver.js.map +0 -1
  1306. package/dist/commands/setup-state.d.ts +0 -42
  1307. package/dist/commands/setup-state.d.ts.map +0 -1
  1308. package/dist/commands/setup-state.js +0 -93
  1309. package/dist/commands/setup-state.js.map +0 -1
  1310. package/dist/commands/setup.d.ts +0 -23
  1311. package/dist/commands/setup.d.ts.map +0 -1
  1312. package/dist/commands/setup.js +0 -69
  1313. package/dist/commands/setup.js.map +0 -1
  1314. package/dist/formatters/audit.d.ts +0 -52
  1315. package/dist/formatters/audit.d.ts.map +0 -1
  1316. package/dist/formatters/audit.js +0 -81
  1317. package/dist/formatters/audit.js.map +0 -1
  1318. package/dist/formatters/promote.d.ts +0 -30
  1319. package/dist/formatters/promote.d.ts.map +0 -1
  1320. package/dist/formatters/promote.js +0 -39
  1321. package/dist/formatters/promote.js.map +0 -1
  1322. package/dist/formatters/proposals.d.ts +0 -45
  1323. package/dist/formatters/proposals.d.ts.map +0 -1
  1324. package/dist/formatters/proposals.js +0 -62
  1325. package/dist/formatters/proposals.js.map +0 -1
  1326. package/dist/generators/archetypes.d.ts +0 -52
  1327. package/dist/generators/archetypes.d.ts.map +0 -1
  1328. package/dist/generators/archetypes.js +0 -153
  1329. package/dist/generators/archetypes.js.map +0 -1
  1330. package/dist/generators/archetypes.test.d.ts +0 -2
  1331. package/dist/generators/archetypes.test.d.ts.map +0 -1
  1332. package/dist/generators/archetypes.test.js +0 -237
  1333. package/dist/generators/archetypes.test.js.map +0 -1
  1334. package/dist/generators/chain-classifier.d.ts +0 -49
  1335. package/dist/generators/chain-classifier.d.ts.map +0 -1
  1336. package/dist/generators/chain-classifier.js +0 -180
  1337. package/dist/generators/chain-classifier.js.map +0 -1
  1338. package/dist/generators/chain-classifier.test.d.ts +0 -2
  1339. package/dist/generators/chain-classifier.test.d.ts.map +0 -1
  1340. package/dist/generators/chain-classifier.test.js +0 -257
  1341. package/dist/generators/chain-classifier.test.js.map +0 -1
  1342. package/dist/generators/chain-rules.d.ts +0 -42
  1343. package/dist/generators/chain-rules.d.ts.map +0 -1
  1344. package/dist/generators/chain-rules.js +0 -144
  1345. package/dist/generators/chain-rules.js.map +0 -1
  1346. package/dist/generators/chain-rules.test.d.ts +0 -2
  1347. package/dist/generators/chain-rules.test.d.ts.map +0 -1
  1348. package/dist/generators/chain-rules.test.js +0 -179
  1349. package/dist/generators/chain-rules.test.js.map +0 -1
  1350. package/dist/generators/handshake-diff.d.ts +0 -67
  1351. package/dist/generators/handshake-diff.d.ts.map +0 -1
  1352. package/dist/generators/handshake-diff.js +0 -183
  1353. package/dist/generators/handshake-diff.js.map +0 -1
  1354. package/dist/generators/handshake-diff.test.d.ts +0 -2
  1355. package/dist/generators/handshake-diff.test.d.ts.map +0 -1
  1356. package/dist/generators/handshake-diff.test.js +0 -264
  1357. package/dist/generators/handshake-diff.test.js.map +0 -1
  1358. package/dist/lib/activation.d.ts +0 -28
  1359. package/dist/lib/activation.d.ts.map +0 -1
  1360. package/dist/lib/activation.js +0 -57
  1361. package/dist/lib/activation.js.map +0 -1
  1362. package/dist/lib/activation.test.d.ts +0 -6
  1363. package/dist/lib/activation.test.d.ts.map +0 -1
  1364. package/dist/lib/activation.test.js +0 -121
  1365. package/dist/lib/activation.test.js.map +0 -1
  1366. package/dist/lib/collectionRegistry.d.ts +0 -38
  1367. package/dist/lib/collectionRegistry.d.ts.map +0 -1
  1368. package/dist/lib/collectionRegistry.js +0 -112
  1369. package/dist/lib/collectionRegistry.js.map +0 -1
  1370. package/dist/lib/conversation-engine.d.ts +0 -45
  1371. package/dist/lib/conversation-engine.d.ts.map +0 -1
  1372. package/dist/lib/conversation-engine.js +0 -112
  1373. package/dist/lib/conversation-engine.js.map +0 -1
  1374. package/dist/lib/conversation-phases.d.ts +0 -59
  1375. package/dist/lib/conversation-phases.d.ts.map +0 -1
  1376. package/dist/lib/conversation-phases.js +0 -11
  1377. package/dist/lib/conversation-phases.js.map +0 -1
  1378. package/dist/lib/conversation-signals.d.ts +0 -30
  1379. package/dist/lib/conversation-signals.d.ts.map +0 -1
  1380. package/dist/lib/conversation-signals.js +0 -64
  1381. package/dist/lib/conversation-signals.js.map +0 -1
  1382. package/dist/lib/inferSourceDate.d.ts +0 -12
  1383. package/dist/lib/inferSourceDate.d.ts.map +0 -1
  1384. package/dist/lib/inferSourceDate.js +0 -44
  1385. package/dist/lib/inferSourceDate.js.map +0 -1
  1386. package/dist/lib/onboarding-path-b.d.ts +0 -10
  1387. package/dist/lib/onboarding-path-b.d.ts.map +0 -1
  1388. package/dist/lib/onboarding-path-b.js +0 -213
  1389. package/dist/lib/onboarding-path-b.js.map +0 -1
  1390. package/dist/lib/onboarding-shared.d.ts +0 -80
  1391. package/dist/lib/onboarding-shared.d.ts.map +0 -1
  1392. package/dist/lib/onboarding-shared.js +0 -174
  1393. package/dist/lib/onboarding-shared.js.map +0 -1
  1394. package/dist/lib/onboarding-topics.d.ts +0 -27
  1395. package/dist/lib/onboarding-topics.d.ts.map +0 -1
  1396. package/dist/lib/onboarding-topics.js +0 -57
  1397. package/dist/lib/onboarding-topics.js.map +0 -1
  1398. package/dist/lib/onboarding.d.ts +0 -17
  1399. package/dist/lib/onboarding.d.ts.map +0 -1
  1400. package/dist/lib/onboarding.js +0 -350
  1401. package/dist/lib/onboarding.js.map +0 -1
  1402. package/dist/setup/__tests__/coach-traces.test.d.ts +0 -2
  1403. package/dist/setup/__tests__/coach-traces.test.d.ts.map +0 -1
  1404. package/dist/setup/__tests__/coach-traces.test.js +0 -189
  1405. package/dist/setup/__tests__/coach-traces.test.js.map +0 -1
  1406. package/dist/setup/__tests__/setup-commands.test.d.ts +0 -2
  1407. package/dist/setup/__tests__/setup-commands.test.d.ts.map +0 -1
  1408. package/dist/setup/__tests__/setup-commands.test.js +0 -177
  1409. package/dist/setup/__tests__/setup-commands.test.js.map +0 -1
  1410. package/dist/setup/__tests__/state-machine.test.d.ts +0 -2
  1411. package/dist/setup/__tests__/state-machine.test.d.ts.map +0 -1
  1412. package/dist/setup/__tests__/state-machine.test.js +0 -341
  1413. package/dist/setup/__tests__/state-machine.test.js.map +0 -1
  1414. package/dist/setup/detect-surfaces.d.ts +0 -21
  1415. package/dist/setup/detect-surfaces.d.ts.map +0 -1
  1416. package/dist/setup/detect-surfaces.js +0 -39
  1417. package/dist/setup/detect-surfaces.js.map +0 -1
  1418. package/dist/setup/manifest-writer.d.ts +0 -17
  1419. package/dist/setup/manifest-writer.d.ts.map +0 -1
  1420. package/dist/setup/manifest-writer.js +0 -153
  1421. package/dist/setup/manifest-writer.js.map +0 -1
  1422. package/dist/setup/perimeter.d.ts +0 -72
  1423. package/dist/setup/perimeter.d.ts.map +0 -1
  1424. package/dist/setup/perimeter.js +0 -128
  1425. package/dist/setup/perimeter.js.map +0 -1
  1426. package/dist/setup/state-machine.d.ts +0 -67
  1427. package/dist/setup/state-machine.d.ts.map +0 -1
  1428. package/dist/setup/state-machine.js +0 -124
  1429. package/dist/setup/state-machine.js.map +0 -1
  1430. package/dist/surfaces/__tests__/pb-setup-passthrough.test.d.ts +0 -2
  1431. package/dist/surfaces/__tests__/pb-setup-passthrough.test.d.ts.map +0 -1
  1432. package/dist/surfaces/__tests__/pb-setup-passthrough.test.js +0 -132
  1433. package/dist/surfaces/__tests__/pb-setup-passthrough.test.js.map +0 -1
  1434. package/templates/archetypes/boundary.md +0 -23
  1435. package/templates/archetypes/constraint.md +0 -23
  1436. package/templates/archetypes/convention.md +0 -23
  1437. package/templates/archetypes/policy.md +0 -23
  1438. package/templates/archetypes/quality-gate.md +0 -23
  1439. package/templates/archetypes/workflow.md +0 -23
@@ -0,0 +1,173 @@
1
+ /**
2
+ * Repo-local binding resolution — turns what `.productbrain/config.local.json` declares into a
3
+ * credential, or refuses outright.
4
+ *
5
+ * Ordinary commands (`resolveConfig()` / `loadEnv()`) and `resolveAdminConfig()` share
6
+ * `resolvePinnedProfile()` so the pin validity bar cannot drift (STA-3 / TEN-3239). Admin still
7
+ * owns its own cascade around that helper: it never reads config.json siteUrl, CWD .env files, or
8
+ * preview / local-binding keys. Fail loud, fail closed, fail fast (RULE-268); default closed,
9
+ * explicitly opened (PRI-22).
10
+ */
11
+ import { ConfigResolutionError } from './configResult.js';
12
+ import { ErrorCode } from './errors.js';
13
+ import { resolveNamedProfileConfig } from './profiles.js';
14
+ import { readLocalProjectConfig, projectConfigExists } from './projectConfig.js';
15
+ import { API_KEY_PREFIX } from './tokenConstants.js';
16
+ /**
17
+ * Resolve the repo-local profile pin to a credential, or refuse outright.
18
+ *
19
+ * FAILS CLOSED on a DANGLING pin: a pin naming a profile that has since been deleted, or whose
20
+ * file carries no key, must NEVER fall through to the global active profile. The repo has
21
+ * explicitly declared its tenant; substituting a different one silently retargets every read AND
22
+ * write at a foreign workspace, and the gateway derives the workspace from the credential (BR-18)
23
+ * — so nothing downstream catches it.
24
+ *
25
+ * INS-2455 is the admin-path instance of exactly this fall-through. Admin now calls this helper
26
+ * too; a present-but-malformed key is a broken pin, not a credential.
27
+ */
28
+ export function resolvePinnedProfile(profileName) {
29
+ const namedConfig = resolveNamedProfileConfig(profileName);
30
+ // A present-but-malformed key is a broken pin, not a credential. Accepting it here would
31
+ // surface as a generic "no API key, run pb login" far downstream, pointing the operator
32
+ // away from the pin that actually broke.
33
+ if (!namedConfig?.apiKey?.startsWith(API_KEY_PREFIX)) {
34
+ throw new ConfigResolutionError(`This repo is pinned to profile "${profileName}" (.productbrain/config.local.json), ` +
35
+ `but that profile has no valid API key — it may have been deleted or never fully set up. ` +
36
+ `Refusing to silently fall back to a different workspace. ` +
37
+ `Run \`pb profile use --local <profile>\` to fix the pin, or \`pb profile create ${profileName}\` to restore it.`, {
38
+ code: ErrorCode.AUTH_MISSING,
39
+ category: 'auth',
40
+ kind: 'profile-pin',
41
+ nextCommand: 'pb profile use --local <profile>',
42
+ guidance: 'Run `pb profile use --local <profile>` to fix the repo pin.',
43
+ });
44
+ }
45
+ return { apiKey: namedConfig.apiKey, siteUrl: namedConfig.siteUrl };
46
+ }
47
+ /**
48
+ * Does `config.local.json` CLAIM a direct credential binding of its own?
49
+ *
50
+ * The claim is the `preview` marker OR a credential — see `resolveLocalBinding()` below for why
51
+ * the marker alone is not the test. A claim is only a question, never an answer: it says the file
52
+ * MEANT to bind, not that it can. Use `bindsCompletely()` to decide whether a tenant is actually
53
+ * named.
54
+ */
55
+ export function declaresLocalBinding(localConfig) {
56
+ if (!localConfig)
57
+ return false;
58
+ return (localConfig.preview === true || Boolean(localConfig.apiKey) || localConfig.apiKeyMalformed === true);
59
+ }
60
+ /**
61
+ * Does `config.local.json` carry a COMPLETE binding — the atomic apiKey+siteUrl pair (SF-3)?
62
+ *
63
+ * This, not the claim above, is what "the repo names a tenant" means. `resolveLocalBinding()`
64
+ * rejects a claimed-but-incomplete binding, but `resolveAdminConfig()` has no binding step to do
65
+ * that rejecting — so if `refuseWhenProjectHasNoTenant()` accepted a mere claim, a broken binding
66
+ * (`{ preview: true }` alone, a key with no siteUrl, a malformed key) would wave admin straight
67
+ * past the refusal into the global profile, which defaults to production (WP-681/INS-2455 is that
68
+ * exact incident). Shared by both so the bar cannot drift (STA-3), and it is the spec's own word:
69
+ * a *complete* preview binding is what stays unchanged.
70
+ */
71
+ function bindsCompletely(localConfig) {
72
+ return Boolean(localConfig?.apiKey && localConfig.siteUrl);
73
+ }
74
+ /**
75
+ * Does `config.local.json` declare a COMPLETE PREVIEW binding — independent of the environment?
76
+ *
77
+ * The env-independence is the whole point (Codex P2 r4). `config.ts`'s `getPreviewBinding()` asks
78
+ * a different question — "is a preview binding what pb is EFFECTIVELY using right now" — so it
79
+ * bails whenever `PRODUCTBRAIN_API_KEY` is set. But `loadEnv()` COPIES the preview key into that
80
+ * very variable, so after any command has resolved config, that question answers "no" on a
81
+ * genuinely preview-bound worktree. Reporting surfaces need the file's own declaration, and
82
+ * handle the env-override case separately and earlier (reportedProfile.ts's startup snapshot).
83
+ *
84
+ * Shared rather than copied so the completeness bar cannot drift (STA-3) — it is the same
85
+ * `bindsCompletely` (SF-3 atomic apiKey+siteUrl) both callers already depend on.
86
+ */
87
+ export function declaresCompletePreviewBinding(localConfig) {
88
+ if (localConfig?.preview !== true || !bindsCompletely(localConfig))
89
+ return null;
90
+ return { workspaceName: localConfig.workspaceName ?? null };
91
+ }
92
+ /**
93
+ * Refuse when a project has declared itself (committed config.json) but named no tenant.
94
+ *
95
+ * A dangling pin is a different refusal (`resolvePinnedProfile`). This is the no-tenant case:
96
+ * config.json says "I am a Product Brain project" and nothing in config.local.json — neither a
97
+ * pin nor a direct/preview binding — says which workspace. Falling through to the global profile
98
+ * is the incident. A directory with no config.json is not a project — personal capture and
99
+ * `pb login` stay open.
100
+ *
101
+ * Call after the pin / preview-binding steps, before any global fallback. Those earlier steps
102
+ * already returned or threw when a tenant was claimed; this still re-checks the binding claim
103
+ * because `resolveAdminConfig()` has no binding step of its own and must not mistake a
104
+ * preview-bound worktree for an unpinned one.
105
+ */
106
+ export function refuseWhenProjectHasNoTenant() {
107
+ // The declaration is the FILE, not its contents — a corrupt config.json must not read as
108
+ // "not a project" and reopen the fall-through exactly when the committed file is damaged.
109
+ if (!projectConfigExists())
110
+ return;
111
+ const localConfig = readLocalProjectConfig();
112
+ if (localConfig?.profile)
113
+ return;
114
+ // A COMPLETE direct/preview binding names a tenant too: `npm run pb:preview` writes apiKey +
115
+ // siteUrl and no `profile` field. resolveConfig()/loadEnv() already returned at their own
116
+ // binding step, so this only reaches the admin cascade — which by design does not consume
117
+ // preview keys, and without this would call a legitimately preview-bound worktree untenanted.
118
+ // COMPLETE, not merely claimed: an incomplete binding names nothing usable, and admin has no
119
+ // binding step to reject it, so accepting a claim here would route admin to the global profile
120
+ // (Codex review round 2 — a regression this line introduced and this word closes).
121
+ if (bindsCompletely(localConfig))
122
+ return;
123
+ // Deliberately NOT excepted: `PB_PROFILE`. It looks like an explicit tenant, but exported from
124
+ // a shell rc it is exactly as ambient as the global active profile whose silent substitution is
125
+ // the incident — so WP-694 names only an exported PRODUCTBRAIN_API_KEY as the escape hatch, and
126
+ // this refusal outranks the profile system that reads PB_PROFILE (Codex review, declined).
127
+ throw new ConfigResolutionError(`This repo is a Product Brain project (.productbrain/config.json) but has no tenant pin ` +
128
+ `in .productbrain/config.local.json. Refusing to silently use a different workspace. ` +
129
+ `Run \`pb profile use --local <profile>\` to pin this repo, or \`pb profile list\` to see your profiles.`, {
130
+ code: ErrorCode.AUTH_MISSING,
131
+ category: 'auth',
132
+ kind: 'missing-pin',
133
+ nextCommand: 'pb profile use --local <profile>',
134
+ guidance: 'Run `pb profile use --local <profile>` to pin this repo to a workspace.',
135
+ });
136
+ }
137
+ /**
138
+ * Resolve the direct credential binding in config.local.json, or null when the file does not
139
+ * claim one (the profile pin then owns resolution).
140
+ *
141
+ * The claim is the `preview` marker OR a credential of its own — deliberately NOT the marker
142
+ * alone. A file carrying an apiKey is asserting which workspace this repo talks to whether or not
143
+ * `pb:preview` stamped the marker, so gating on the marker would let a hand-written or
144
+ * partially-scrubbed binding be skipped and a sibling profile pin silently supply a different
145
+ * tenant's credential instead (the failure class TEN-3237/TEN-3238 closed for the pin path).
146
+ *
147
+ * Once claimed, only the atomic apiKey+siteUrl pair (SF-3) may bind — never a preview key paired
148
+ * with config.json's real-dev gateway (STD-261). Anything else refuses here, ahead of the pin, so
149
+ * a broken binding is named rather than routed around.
150
+ */
151
+ export function resolveLocalBinding(localConfig) {
152
+ if (!declaresLocalBinding(localConfig))
153
+ return null;
154
+ if (bindsCompletely(localConfig)) {
155
+ return { apiKey: localConfig.apiKey, siteUrl: localConfig.siteUrl.replace(/\/$/, '') };
156
+ }
157
+ // A malformed key is present-but-unusable, not absent — readLocalProjectConfig() withholds it
158
+ // from `apiKey` so it can never bind, and flags it so this refusal can name the real fault.
159
+ const fault = localConfig.apiKeyMalformed
160
+ ? `its API key is not a valid ${API_KEY_PREFIX} key`
161
+ : !localConfig.apiKey
162
+ ? 'missing API key'
163
+ : 'missing deployment URL';
164
+ throw new ConfigResolutionError(`This repo has an incomplete preview binding (.productbrain/config.local.json): ` +
165
+ `${fault}. Refusing to use its profile pin or another workspace instead.`, {
166
+ code: ErrorCode.CONFIG_INVALID,
167
+ category: 'config',
168
+ kind: 'preview-binding',
169
+ nextCommand: 'npm run pb:preview',
170
+ guidance: 'Run `npm run pb:preview` to repair the preview binding, or `npm run pb:real` to return to the repo pin.',
171
+ });
172
+ }
173
+ //# sourceMappingURL=localBinding.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"localBinding.js","sourceRoot":"","sources":["../../src/lib/localBinding.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,15 @@
1
1
  /**
2
2
  * method-registry.ts — load pb method registry (WP-310 E4).
3
- * Chain-first with bundled fallback. Used during handshake when manifest is present.
3
+ *
4
+ * Loads the BUNDLED registry JSON. Used during handshake when a manifest is present.
5
+ *
6
+ * History (TEN-2783): this used to be "Chain-first with bundled fallback", attempting a
7
+ * `chain.getMethodRegistry` gateway call before falling back. That route was never registered in
8
+ * the gateway (absent from `packages/kernel-client/src/generated/routes.generated.ts`), so the
9
+ * call threw on every handshake since introduction and the bundled path was ALWAYS the real one.
10
+ * The dead attempt was removed so the bundled registry is the honest, single primary — no
11
+ * misleading `source: 'chain'` that could never occur, no orphan `chain.getMethodRegistry` call
12
+ * for the called-route gate to carve out.
4
13
  */
5
14
  export interface RegistryMethod {
6
15
  name: string;
@@ -14,19 +23,15 @@ export interface MethodRegistry {
14
23
  }
15
24
  export interface RegistryLoadResult {
16
25
  registry: MethodRegistry;
17
- source: 'chain' | 'bundled';
18
- /** true when source is 'bundled' and generatedAt is older than FRESHNESS_DAYS */
26
+ /** Always 'bundled' — the Chain path (TEN-2783) was removed; kept as a field for report output. */
27
+ source: 'bundled';
28
+ /** true when the bundled registry's generatedAt is older than FRESHNESS_DAYS */
19
29
  stale: boolean;
20
30
  }
21
31
  /**
22
- * Load the pb method registry.
23
- *
24
- * @param methodSource - from manifest.method_source: 'chain' | 'bundled' | undefined
25
- * @param chainFetch - function that calls a Chain API endpoint (kernelCall signature)
32
+ * Load the pb method registry from the bundled JSON.
26
33
  *
27
- * Resolution order:
28
- * - 'bundled' → skip Chain, load bundled JSON
29
- * - 'chain' or undefined → try Chain first; on error fall through to bundled
34
+ * Async to preserve the caller's `.catch(() => null)` on a read failure (missing/corrupt bundle).
30
35
  */
31
- export declare function loadMethodRegistry(methodSource: 'chain' | 'bundled' | undefined, chainFetch: (fn: string, args: Record<string, unknown>) => Promise<unknown>): Promise<RegistryLoadResult>;
36
+ export declare function loadMethodRegistry(): Promise<RegistryLoadResult>;
32
37
  //# sourceMappingURL=method-registry.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"method-registry.d.ts","sourceRoot":"","sources":["../../src/lib/method-registry.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAMH,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,cAAc;IAC7B,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,cAAc,EAAE,CAAC;CAC3B;AAED,MAAM,WAAW,kBAAkB;IACjC,QAAQ,EAAE,cAAc,CAAC;IACzB,MAAM,EAAE,OAAO,GAAG,SAAS,CAAC;IAC5B,iFAAiF;IACjF,KAAK,EAAE,OAAO,CAAC;CAChB;AAoBD;;;;;;;;;GASG;AACH,wBAAsB,kBAAkB,CACtC,YAAY,EAAE,OAAO,GAAG,SAAS,GAAG,SAAS,EAC7C,UAAU,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,OAAO,CAAC,OAAO,CAAC,GAC1E,OAAO,CAAC,kBAAkB,CAAC,CAoB7B"}
1
+ {"version":3,"file":"method-registry.d.ts","sourceRoot":"","sources":["../../src/lib/method-registry.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAMH,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,cAAc;IAC7B,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,cAAc,EAAE,CAAC;CAC3B;AAED,MAAM,WAAW,kBAAkB;IACjC,QAAQ,EAAE,cAAc,CAAC;IACzB,mGAAmG;IACnG,MAAM,EAAE,SAAS,CAAC;IAClB,gFAAgF;IAChF,KAAK,EAAE,OAAO,CAAC;CAChB;AAoBD;;;;GAIG;AACH,wBAAsB,kBAAkB,IAAI,OAAO,CAAC,kBAAkB,CAAC,CAGtE"}
@@ -1,6 +1,15 @@
1
1
  /**
2
2
  * method-registry.ts — load pb method registry (WP-310 E4).
3
- * Chain-first with bundled fallback. Used during handshake when manifest is present.
3
+ *
4
+ * Loads the BUNDLED registry JSON. Used during handshake when a manifest is present.
5
+ *
6
+ * History (TEN-2783): this used to be "Chain-first with bundled fallback", attempting a
7
+ * `chain.getMethodRegistry` gateway call before falling back. That route was never registered in
8
+ * the gateway (absent from `packages/kernel-client/src/generated/routes.generated.ts`), so the
9
+ * call threw on every handshake since introduction and the bundled path was ALWAYS the real one.
10
+ * The dead attempt was removed so the bundled registry is the honest, single primary — no
11
+ * misleading `source: 'chain'` that could never occur, no orphan `chain.getMethodRegistry` call
12
+ * for the called-route gate to carve out.
4
13
  */
5
14
  import { readFileSync } from 'fs';
6
15
  import { join } from 'path';
@@ -21,32 +30,11 @@ function isStaleFn(generatedAt) {
21
30
  return now - generated > FRESHNESS_DAYS * 24 * 60 * 60 * 1000;
22
31
  }
23
32
  /**
24
- * Load the pb method registry.
25
- *
26
- * @param methodSource - from manifest.method_source: 'chain' | 'bundled' | undefined
27
- * @param chainFetch - function that calls a Chain API endpoint (kernelCall signature)
33
+ * Load the pb method registry from the bundled JSON.
28
34
  *
29
- * Resolution order:
30
- * - 'bundled' → skip Chain, load bundled JSON
31
- * - 'chain' or undefined → try Chain first; on error fall through to bundled
35
+ * Async to preserve the caller's `.catch(() => null)` on a read failure (missing/corrupt bundle).
32
36
  */
33
- export async function loadMethodRegistry(methodSource, chainFetch) {
34
- // Explicitly bundled — skip Chain attempt
35
- if (methodSource === 'bundled') {
36
- const registry = loadBundled();
37
- return { registry, source: 'bundled', stale: isStaleFn(registry.generatedAt) };
38
- }
39
- // method_source: 'chain' or undefined — try Chain first
40
- try {
41
- const data = await chainFetch('chain.getMethodRegistry', {});
42
- if (data && typeof data === 'object' && 'methods' in data) {
43
- return { registry: data, source: 'chain', stale: false };
44
- }
45
- }
46
- catch {
47
- // Chain unreachable or returned unexpected shape — fall through to bundled
48
- }
49
- // Bundled fallback
37
+ export async function loadMethodRegistry() {
50
38
  const registry = loadBundled();
51
39
  return { registry, source: 'bundled', stale: isStaleFn(registry.generatedAt) };
52
40
  }
@@ -1 +1 @@
1
- {"version":3,"file":"method-registry.js","sourceRoot":"","sources":["../../src/lib/method-registry.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,IAAI,CAAC;AAClC,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAC5B,OAAO,EAAE,aAAa,EAAE,MAAM,KAAK,CAAC;AAqBpC,iGAAiG;AACjG,wFAAwF;AACxF,wGAAwG;AACxG,MAAM,SAAS,GAAG,aAAa,CAAC,IAAI,GAAG,CAAC,GAAG,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;AAC/D,MAAM,qBAAqB,GAAG,IAAI,CAAC,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,WAAW,EAAE,sBAAsB,CAAC,CAAC;AAC/F,MAAM,cAAc,GAAG,CAAC,CAAC;AAEzB,SAAS,WAAW;IAClB,MAAM,GAAG,GAAG,YAAY,CAAC,qBAAqB,EAAE,MAAM,CAAC,CAAC;IACxD,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAmB,CAAC;AAC3C,CAAC;AAED,SAAS,SAAS,CAAC,WAAmB;IACpC,MAAM,SAAS,GAAG,IAAI,IAAI,CAAC,WAAW,CAAC,CAAC,OAAO,EAAE,CAAC;IAClD,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACvB,OAAO,GAAG,GAAG,SAAS,GAAG,cAAc,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;AAChE,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,CAAC,KAAK,UAAU,kBAAkB,CACtC,YAA6C,EAC7C,UAA2E;IAE3E,0CAA0C;IAC1C,IAAI,YAAY,KAAK,SAAS,EAAE,CAAC;QAC/B,MAAM,QAAQ,GAAG,WAAW,EAAE,CAAC;QAC/B,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,KAAK,EAAE,SAAS,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE,CAAC;IACjF,CAAC;IAED,wDAAwD;IACxD,IAAI,CAAC;QACH,MAAM,IAAI,GAAG,MAAM,UAAU,CAAC,yBAAyB,EAAE,EAAE,CAAC,CAAC;QAC7D,IAAI,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,SAAS,IAAI,IAAI,EAAE,CAAC;YAC1D,OAAO,EAAE,QAAQ,EAAE,IAAsB,EAAE,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC;QAC7E,CAAC;IACH,CAAC;IAAC,MAAM,CAAC;QACP,2EAA2E;IAC7E,CAAC;IAED,mBAAmB;IACnB,MAAM,QAAQ,GAAG,WAAW,EAAE,CAAC;IAC/B,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,KAAK,EAAE,SAAS,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE,CAAC;AACjF,CAAC"}
1
+ {"version":3,"file":"method-registry.js","sourceRoot":"","sources":["../../src/lib/method-registry.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,EAAE,YAAY,EAAE,MAAM,IAAI,CAAC;AAClC,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAC5B,OAAO,EAAE,aAAa,EAAE,MAAM,KAAK,CAAC;AAsBpC,iGAAiG;AACjG,wFAAwF;AACxF,wGAAwG;AACxG,MAAM,SAAS,GAAG,aAAa,CAAC,IAAI,GAAG,CAAC,GAAG,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;AAC/D,MAAM,qBAAqB,GAAG,IAAI,CAAC,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE,WAAW,EAAE,sBAAsB,CAAC,CAAC;AAC/F,MAAM,cAAc,GAAG,CAAC,CAAC;AAEzB,SAAS,WAAW;IAClB,MAAM,GAAG,GAAG,YAAY,CAAC,qBAAqB,EAAE,MAAM,CAAC,CAAC;IACxD,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAmB,CAAC;AAC3C,CAAC;AAED,SAAS,SAAS,CAAC,WAAmB;IACpC,MAAM,SAAS,GAAG,IAAI,IAAI,CAAC,WAAW,CAAC,CAAC,OAAO,EAAE,CAAC;IAClD,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACvB,OAAO,GAAG,GAAG,SAAS,GAAG,cAAc,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;AAChE,CAAC;AAED;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,kBAAkB;IACtC,MAAM,QAAQ,GAAG,WAAW,EAAE,CAAC;IAC/B,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,KAAK,EAAE,SAAS,CAAC,QAAQ,CAAC,WAAW,CAAC,EAAE,CAAC;AACjF,CAAC"}
@@ -2,9 +2,9 @@
2
2
  * normalizeMaterializedFilename — WP-379 S5b
3
3
  *
4
4
  * Produces a lowercase, slug-friendly filename from an asset name.
5
- * Used by resolveProjectionCollision to compare on-disk filenames (which may
6
- * have been projected with a non-normalized case) against the canonical
7
- * lowercase form that handshake now writes.
5
+ * Used by findLeftoverProjections/findLeftoverCursorSkills to compare on-disk filenames (which
6
+ * may have been projected with a non-normalized case) against the canonical lowercase form
7
+ * that handshake now writes.
8
8
  *
9
9
  * Contract:
10
10
  * - Output is lowercase.
@@ -2,9 +2,9 @@
2
2
  * normalizeMaterializedFilename — WP-379 S5b
3
3
  *
4
4
  * Produces a lowercase, slug-friendly filename from an asset name.
5
- * Used by resolveProjectionCollision to compare on-disk filenames (which may
6
- * have been projected with a non-normalized case) against the canonical
7
- * lowercase form that handshake now writes.
5
+ * Used by findLeftoverProjections/findLeftoverCursorSkills to compare on-disk filenames (which
6
+ * may have been projected with a non-normalized case) against the canonical lowercase form
7
+ * that handshake now writes.
8
8
  *
9
9
  * Contract:
10
10
  * - Output is lowercase.
@@ -1 +1 @@
1
- {"version":3,"file":"notice-marker.d.ts","sourceRoot":"","sources":["../../src/lib/notice-marker.ts"],"names":[],"mappings":"AAwCA,0EAA0E;AAC1E,wBAAgB,WAAW,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,GAAG,OAAO,CAU/D"}
1
+ {"version":3,"file":"notice-marker.d.ts","sourceRoot":"","sources":["../../src/lib/notice-marker.ts"],"names":[],"mappings":"AA+KA,0EAA0E;AAC1E,wBAAgB,WAAW,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,GAAG,OAAO,CAsB/D"}
@@ -1,15 +1,28 @@
1
1
  /**
2
2
  * Once-per-session (agent) / once-per-day (human) notice claim via O_EXCL.
3
3
  * First process to create the marker wins (returns true => may print). All others,
4
- * and any error, fail OPEN to no-print (return false). Markers self-expire by key
5
- * (session id rotates per session; daily key rolls per UTC day). DEC-2.
4
+ * and any error, fail OPEN to no-print (return false). A per-marker O_EXCL lock
5
+ * serializes stale-marker eviction against that claim. Markers expire by key
6
+ * (session id rotates per session; daily key rolls per UTC day) and by age, except
7
+ * that a losing claim heartbeats the current marker so a renewed session survives
8
+ * the sweep. DEC-2.
6
9
  */
7
- import { openSync, closeSync, mkdirSync, statSync, readdirSync, unlinkSync } from 'node:fs';
10
+ import { openSync, closeSync, existsSync, linkSync, mkdirSync, statSync, readdirSync, unlinkSync, utimesSync } from 'node:fs';
8
11
  import { homedir } from 'node:os';
9
12
  import { join } from 'node:path';
10
13
  import { readSession } from './session.js';
11
14
  const CONFIG_DIR = join(homedir(), '.config', 'productbrain');
15
+ // Non-current session residue becomes stale after one server expiry lease. The
16
+ // same ID can be renewed, so claimNotice heartbeats the locked current marker.
17
+ // Lease source: convex/intelligence/agentSessions.ts MAX_SESSION_DURATION_MS.
18
+ const SESSION_STALE_MS = 8 * 60 * 60 * 1000;
12
19
  const DAILY_STALE_MS = 7 * 24 * 60 * 60 * 1000;
20
+ // Lock actions contain only synchronous local filesystem calls. A one-minute
21
+ // lease bounds crash residue while leaving ample headroom for a live holder.
22
+ const LOCK_STALE_MS = 60 * 1000;
23
+ const LOCK_PREFIX = '.notice-marker-lock-';
24
+ const LOCK_RECLAIM_SUFFIX = '.reclaim';
25
+ const LOCK_PIN_SUFFIX = '.target';
13
26
  function utcDateStamp() {
14
27
  const d = new Date();
15
28
  const p = (n) => String(n).padStart(2, '0');
@@ -23,28 +36,185 @@ function markerKey(channel) {
23
36
  // If no active session, fall back to a daily key so the per-day throttle still holds.
24
37
  return session?.sessionId ? `notice-session-${session.sessionId}` : `notice-agent-daily-${utcDateStamp()}`;
25
38
  }
26
- function cleanupOldNoticeMarkers() {
39
+ function markerRetentionMs(name) {
40
+ if (name.startsWith('notice-session-'))
41
+ return SESSION_STALE_MS;
42
+ if (name.startsWith('notice-human-') || name.startsWith('notice-agent-daily-')) {
43
+ return DAILY_STALE_MS;
44
+ }
45
+ return null;
46
+ }
47
+ function markerLockPath(name) {
48
+ return join(CONFIG_DIR, `${LOCK_PREFIX}${name}`);
49
+ }
50
+ function cleanupStaleRecovery(lockPath, now) {
51
+ const reclaimPath = `${lockPath}${LOCK_RECLAIM_SUFFIX}`;
52
+ const pinPath = `${reclaimPath}${LOCK_PIN_SUFFIX}`;
53
+ try {
54
+ if (now - statSync(reclaimPath).mtimeMs <= LOCK_STALE_MS)
55
+ return;
56
+ try {
57
+ unlinkSync(pinPath);
58
+ }
59
+ catch { /* absent or unavailable identity pin */ }
60
+ unlinkSync(reclaimPath);
61
+ return;
62
+ }
63
+ catch { /* absent, fresh, or unavailable recovery election */ }
64
+ try {
65
+ if (now - statSync(pinPath).mtimeMs > LOCK_STALE_MS)
66
+ unlinkSync(pinPath);
67
+ }
68
+ catch { /* absent or unavailable orphan identity pin */ }
69
+ }
70
+ /**
71
+ * Reclaim one expired lock without a pathname-only unlink race. O_EXCL elects
72
+ * one reclaimer; its hard link pins the exact stale file instance to remove.
73
+ */
74
+ function reclaimStaleLock(lockPath, now) {
75
+ const reclaimPath = `${lockPath}${LOCK_RECLAIM_SUFFIX}`;
76
+ const pinPath = `${reclaimPath}${LOCK_PIN_SUFFIX}`;
77
+ let reclaimFd;
78
+ let observed;
79
+ try {
80
+ observed = statSync(lockPath);
81
+ if (now - observed.mtimeMs <= LOCK_STALE_MS)
82
+ return false;
83
+ cleanupStaleRecovery(lockPath, now);
84
+ reclaimFd = openSync(reclaimPath, 'wx');
85
+ closeSync(reclaimFd);
86
+ }
87
+ catch {
88
+ return false;
89
+ }
90
+ try {
91
+ linkSync(lockPath, pinPath);
92
+ const pinned = statSync(pinPath);
93
+ if (observed.dev !== pinned.dev || observed.ino !== pinned.ino)
94
+ return false;
95
+ const current = statSync(lockPath);
96
+ if (current.dev !== pinned.dev || current.ino !== pinned.ino)
97
+ return false;
98
+ unlinkSync(lockPath);
99
+ return true;
100
+ }
101
+ catch {
102
+ return false;
103
+ }
104
+ finally {
105
+ try {
106
+ unlinkSync(pinPath);
107
+ }
108
+ catch { /* bounded by the next stale sweep */ }
109
+ try {
110
+ unlinkSync(reclaimPath);
111
+ }
112
+ catch { /* bounded by the next stale sweep */ }
113
+ }
114
+ }
115
+ function acquireMarkerLock(name) {
116
+ const lockPath = markerLockPath(name);
27
117
  try {
28
- for (const name of readdirSync(CONFIG_DIR)) {
29
- if (!name.startsWith('notice-human-') &&
30
- !name.startsWith('notice-agent-daily-') &&
31
- !name.startsWith('notice-session-'))
118
+ return openSync(lockPath, 'wx');
119
+ }
120
+ catch {
121
+ if (!reclaimStaleLock(lockPath, Date.now()))
122
+ return null;
123
+ try {
124
+ return openSync(lockPath, 'wx');
125
+ }
126
+ catch {
127
+ return null;
128
+ }
129
+ }
130
+ }
131
+ function withMarkerLock(name, action) {
132
+ const lockPath = markerLockPath(name);
133
+ const lockFd = acquireMarkerLock(name);
134
+ if (lockFd === null)
135
+ return null;
136
+ try {
137
+ closeSync(lockFd);
138
+ return action();
139
+ }
140
+ finally {
141
+ try {
142
+ unlinkSync(lockPath);
143
+ }
144
+ catch { /* best-effort lock release */ }
145
+ }
146
+ }
147
+ function cleanupAbandonedMarkerLocks(names, now) {
148
+ for (const name of names) {
149
+ if (!name.startsWith(LOCK_PREFIX))
150
+ continue;
151
+ if (name.endsWith(LOCK_RECLAIM_SUFFIX)) {
152
+ cleanupStaleRecovery(join(CONFIG_DIR, name.slice(0, -LOCK_RECLAIM_SUFFIX.length)), now);
153
+ continue;
154
+ }
155
+ if (name.endsWith(`${LOCK_RECLAIM_SUFFIX}${LOCK_PIN_SUFFIX}`))
156
+ continue;
157
+ const path = join(CONFIG_DIR, name);
158
+ try {
159
+ if (now - statSync(path).mtimeMs <= LOCK_STALE_MS)
32
160
  continue;
33
- const p = join(CONFIG_DIR, name);
34
- if (Date.now() - statSync(p).mtimeMs > DAILY_STALE_MS)
35
- unlinkSync(p);
161
+ reclaimStaleLock(path, now);
162
+ }
163
+ catch {
164
+ // Lock recovery is best-effort and isolated per file, like marker GC.
36
165
  }
37
166
  }
38
- catch { /* best-effort */ }
167
+ }
168
+ function cleanupOldNoticeMarkers(currentName) {
169
+ let names;
170
+ try {
171
+ names = readdirSync(CONFIG_DIR);
172
+ }
173
+ catch {
174
+ return;
175
+ }
176
+ const now = Date.now();
177
+ cleanupAbandonedMarkerLocks(names, now);
178
+ for (const name of names) {
179
+ if (name === currentName)
180
+ continue;
181
+ const staleAfterMs = markerRetentionMs(name);
182
+ if (staleAfterMs === null)
183
+ continue;
184
+ withMarkerLock(name, () => {
185
+ try {
186
+ const p = join(CONFIG_DIR, name);
187
+ if (now - statSync(p).mtimeMs > staleAfterMs)
188
+ unlinkSync(p);
189
+ }
190
+ catch {
191
+ // A marker can disappear or become unavailable while the sweep runs.
192
+ // Keep cleanup best-effort without skipping the remaining files.
193
+ }
194
+ });
195
+ }
39
196
  }
40
197
  /** Returns true exactly once per (channel, session/day). Never throws. */
41
198
  export function claimNotice(channel) {
42
- const path = join(CONFIG_DIR, markerKey(channel));
199
+ const name = markerKey(channel);
200
+ const path = join(CONFIG_DIR, name);
43
201
  try {
44
202
  mkdirSync(CONFIG_DIR, { recursive: true });
45
- closeSync(openSync(path, 'wx')); // 'wx' = O_EXCL: throws EEXIST if present
46
- cleanupOldNoticeMarkers();
47
- return true;
203
+ return withMarkerLock(name, () => {
204
+ cleanupOldNoticeMarkers(name);
205
+ if (existsSync(path)) {
206
+ // A live server session can be renewed under the same ID. Refreshing the
207
+ // marker on each suppressed notice keeps that active session out of GC.
208
+ try {
209
+ const now = new Date();
210
+ utimesSync(path, now, now);
211
+ }
212
+ catch { /* the existing claim still wins */ }
213
+ return false;
214
+ }
215
+ closeSync(openSync(path, 'wx')); // 'wx' = O_EXCL: throws EEXIST if present
216
+ return true;
217
+ }) ?? false;
48
218
  }
49
219
  catch {
50
220
  return false; // already claimed, or fs error => fail open to no-print
@@ -1 +1 @@
1
- {"version":3,"file":"notice-marker.js","sourceRoot":"","sources":["../../src/lib/notice-marker.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,SAAS,EAAE,QAAQ,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAC5F,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAClC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAE3C,MAAM,UAAU,GAAG,IAAI,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,cAAc,CAAC,CAAC;AAC9D,MAAM,cAAc,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;AAE/C,SAAS,YAAY;IACnB,MAAM,CAAC,GAAG,IAAI,IAAI,EAAE,CAAC;IACrB,MAAM,CAAC,GAAG,CAAC,CAAS,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;IACpD,OAAO,GAAG,CAAC,CAAC,cAAc,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,UAAU,EAAE,CAAC,EAAE,CAAC;AAC9E,CAAC;AAED,qFAAqF;AACrF,SAAS,SAAS,CAAC,OAA0B;IAC3C,IAAI,OAAO,KAAK,OAAO;QAAE,OAAO,gBAAgB,YAAY,EAAE,EAAE,CAAC;IACjE,MAAM,OAAO,GAAG,WAAW,EAAE,CAAC;IAC9B,sFAAsF;IACtF,OAAO,OAAO,EAAE,SAAS,CAAC,CAAC,CAAC,kBAAkB,OAAO,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,sBAAsB,YAAY,EAAE,EAAE,CAAC;AAC7G,CAAC;AAED,SAAS,uBAAuB;IAC9B,IAAI,CAAC;QACH,KAAK,MAAM,IAAI,IAAI,WAAW,CAAC,UAAU,CAAC,EAAE,CAAC;YAC3C,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,eAAe,CAAC;gBACjC,CAAC,IAAI,CAAC,UAAU,CAAC,qBAAqB,CAAC;gBACvC,CAAC,IAAI,CAAC,UAAU,CAAC,iBAAiB,CAAC;gBAAE,SAAS;YAClD,MAAM,CAAC,GAAG,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,CAAC;YACjC,IAAI,IAAI,CAAC,GAAG,EAAE,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC,OAAO,GAAG,cAAc;gBAAE,UAAU,CAAC,CAAC,CAAC,CAAC;QACvE,CAAC;IACH,CAAC;IAAC,MAAM,CAAC,CAAC,iBAAiB,CAAC,CAAC;AAC/B,CAAC;AAED,0EAA0E;AAC1E,MAAM,UAAU,WAAW,CAAC,OAA0B;IACpD,MAAM,IAAI,GAAG,IAAI,CAAC,UAAU,EAAE,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC;IAClD,IAAI,CAAC;QACH,SAAS,CAAC,UAAU,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QAC3C,SAAS,CAAC,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,0CAA0C;QAC3E,uBAAuB,EAAE,CAAC;QAC1B,OAAO,IAAI,CAAC;IACd,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC,CAAC,wDAAwD;IACxE,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"notice-marker.js","sourceRoot":"","sources":["../../src/lib/notice-marker.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,30 @@
1
+ /**
2
+ * TASK-817 (WP-818, TEN-4575): the lines `pb outcome show` and the MCP `context action=outcome` print
3
+ * for a key result's own objective and its sibling key results. The kernel read
4
+ * (convex/outcomes/readings.ts `showOutcome`) decides the objective and the siblings; this file
5
+ * only words them, once, for both surfaces (RULE-128, RULE-664).
6
+ *
7
+ * Pure, no I/O, zero imports: copied into each connector by scripts/generate-mcp-embedded-copies.mjs.
8
+ * Field sanitization is the caller's (each connector's own `sanitizeSingleLineField`), passed in
9
+ * as `clean`, the same split seatSentence.ts uses.
10
+ */
11
+ export interface OutcomeObjectiveSibling {
12
+ entryId: string;
13
+ name: string;
14
+ currentValue: number | null;
15
+ targetValue: number | null;
16
+ /** Every loaded reading is superseded and more remain: not "never read" (the spine's own flag). */
17
+ readingUnresolved: boolean;
18
+ }
19
+ export interface OutcomeObjectiveView {
20
+ objective: {
21
+ entryId: string;
22
+ name: string;
23
+ siblings: OutcomeObjectiveSibling[];
24
+ hiddenSiblings: number;
25
+ truncated: boolean;
26
+ } | null;
27
+ objectiveLookup: 'found' | 'none' | 'capped' | 'unavailable';
28
+ }
29
+ export declare function formatOutcomeObjectiveLines(view: OutcomeObjectiveView, clean: (value: string) => string): string[];
30
+ //# sourceMappingURL=outcomeObjectiveLines.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"outcomeObjectiveLines.d.ts","sourceRoot":"","sources":["../../src/lib/outcomeObjectiveLines.ts"],"names":[],"mappings":"AAIA;;;;;;;;;GASG;AACH,MAAM,WAAW,uBAAuB;IACvC,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,CAAC;IACb,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,mGAAmG;IACnG,iBAAiB,EAAE,OAAO,CAAC;CAC3B;AAED,MAAM,WAAW,oBAAoB;IACpC,SAAS,EAAE;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,uBAAuB,EAAE,CAAC;QAAC,cAAc,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,OAAO,CAAA;KAAE,GAAG,IAAI,CAAC;IACrI,eAAe,EAAE,OAAO,GAAG,MAAM,GAAG,QAAQ,GAAG,aAAa,CAAC;CAC7D;AAgBD,wBAAgB,2BAA2B,CAAC,IAAI,EAAE,oBAAoB,EAAE,KAAK,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,MAAM,GAAG,MAAM,EAAE,CAUlH"}
@@ -0,0 +1,29 @@
1
+ // GENERATED by scripts/generate-mcp-embedded-copies.mjs from kernel/outcomes/objectiveLines.ts.
2
+ // DO NOT EDIT. Run `npm run mcp:embedded-copies` to regenerate.
3
+ // Local runtime copy for the isolated connector build.
4
+ const LOOKUP_LINE = {
5
+ none: 'none: no accepted objective holds this entry',
6
+ capped: 'not found: the objectives or key results read were capped before reaching this one',
7
+ unavailable: 'could not be read just now; run show again',
8
+ };
9
+ const INDENT = ' ';
10
+ function siblingLine(kr, clean) {
11
+ const current = kr.readingUnresolved ? 'current unresolved, not "never read"' : kr.currentValue === null ? 'no reading yet' : `current ${kr.currentValue}`;
12
+ const target = kr.targetValue === null ? '' : `, target ${kr.targetValue}`;
13
+ return `${clean(kr.entryId)} — ${clean(kr.name)} (${current}${target})`;
14
+ }
15
+ export function formatOutcomeObjectiveLines(view, clean) {
16
+ const o = view.objective;
17
+ if (view.objectiveLookup !== 'found' || !o)
18
+ return [` objective ${LOOKUP_LINE[view.objectiveLookup === 'found' ? 'none' : view.objectiveLookup]}`];
19
+ const lines = [` objective ${clean(o.entryId)} — ${clean(o.name)}`];
20
+ if (o.siblings.length === 0 && !o.truncated)
21
+ return [...lines, ' siblings none: the only key result under this objective'];
22
+ o.siblings.forEach((kr, i) => lines.push(`${i === 0 ? ' siblings ' : INDENT}${siblingLine(kr, clean)}`));
23
+ // truncated with no counted sibling hidden: the read was capped workspace-wide, so more may exist.
24
+ const more = o.hiddenSiblings > 0 ? `and at least ${o.hiddenSiblings} more not shown` : 'more may exist: the key results read were capped';
25
+ if (o.truncated)
26
+ lines.push(`${o.siblings.length === 0 ? ' siblings ' : INDENT}${more}`);
27
+ return lines;
28
+ }
29
+ //# sourceMappingURL=outcomeObjectiveLines.js.map