@productbrain/cli 0.1.0-beta.55 → 0.1.0-beta.5504

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 (1316) hide show
  1. package/README.md +3 -1
  2. package/dist/__tests__/adapters.test.js +54 -1
  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__/audit.test.js +65 -44
  9. package/dist/__tests__/audit.test.js.map +1 -1
  10. package/dist/__tests__/authority-domains-queue.test.d.ts +2 -0
  11. package/dist/__tests__/authority-domains-queue.test.d.ts.map +1 -0
  12. package/dist/__tests__/authority-domains-queue.test.js +169 -0
  13. package/dist/__tests__/authority-domains-queue.test.js.map +1 -0
  14. package/dist/__tests__/authority-domains.test.d.ts +2 -0
  15. package/dist/__tests__/authority-domains.test.d.ts.map +1 -0
  16. package/dist/__tests__/authority-domains.test.js +48 -0
  17. package/dist/__tests__/authority-domains.test.js.map +1 -0
  18. package/dist/__tests__/canonicalRefs.vocab.test.d.ts +2 -0
  19. package/dist/__tests__/canonicalRefs.vocab.test.d.ts.map +1 -0
  20. package/dist/__tests__/canonicalRefs.vocab.test.js +251 -0
  21. package/dist/__tests__/canonicalRefs.vocab.test.js.map +1 -0
  22. package/dist/__tests__/capture-receipt-coaching.test.d.ts +2 -0
  23. package/dist/__tests__/capture-receipt-coaching.test.d.ts.map +1 -0
  24. package/dist/__tests__/capture-receipt-coaching.test.js +89 -0
  25. package/dist/__tests__/capture-receipt-coaching.test.js.map +1 -0
  26. package/dist/__tests__/capture-receipt-domain.test.d.ts +2 -0
  27. package/dist/__tests__/capture-receipt-domain.test.d.ts.map +1 -0
  28. package/dist/__tests__/capture-receipt-domain.test.js +29 -0
  29. package/dist/__tests__/capture-receipt-domain.test.js.map +1 -0
  30. package/dist/__tests__/capture.test.js +1123 -54
  31. package/dist/__tests__/capture.test.js.map +1 -1
  32. package/dist/__tests__/client-binding-guard.test.d.ts +2 -0
  33. package/dist/__tests__/client-binding-guard.test.d.ts.map +1 -0
  34. package/dist/__tests__/client-binding-guard.test.js +84 -0
  35. package/dist/__tests__/client-binding-guard.test.js.map +1 -0
  36. package/dist/__tests__/coaching-mirror-drift.test.d.ts +2 -0
  37. package/dist/__tests__/coaching-mirror-drift.test.d.ts.map +1 -0
  38. package/dist/__tests__/coaching-mirror-drift.test.js +47 -0
  39. package/dist/__tests__/coaching-mirror-drift.test.js.map +1 -0
  40. package/dist/__tests__/codex-prep-parity.test.d.ts +2 -0
  41. package/dist/__tests__/codex-prep-parity.test.d.ts.map +1 -0
  42. package/dist/__tests__/codex-prep-parity.test.js +107 -0
  43. package/dist/__tests__/codex-prep-parity.test.js.map +1 -0
  44. package/dist/__tests__/collection-registry-seed-drift.test.d.ts +2 -0
  45. package/dist/__tests__/collection-registry-seed-drift.test.d.ts.map +1 -0
  46. package/dist/__tests__/collection-registry-seed-drift.test.js +81 -0
  47. package/dist/__tests__/collection-registry-seed-drift.test.js.map +1 -0
  48. package/dist/__tests__/config-prod-fallthrough.test.d.ts +2 -0
  49. package/dist/__tests__/config-prod-fallthrough.test.d.ts.map +1 -0
  50. package/dist/__tests__/config-prod-fallthrough.test.js +93 -0
  51. package/dist/__tests__/config-prod-fallthrough.test.js.map +1 -0
  52. package/dist/__tests__/config.test.d.ts +1 -1
  53. package/dist/__tests__/config.test.js +845 -18
  54. package/dist/__tests__/config.test.js.map +1 -1
  55. package/dist/__tests__/constants.test.js +6 -1
  56. package/dist/__tests__/constants.test.js.map +1 -1
  57. package/dist/__tests__/constellation.test.js +14 -14
  58. package/dist/__tests__/constellation.test.js.map +1 -1
  59. package/dist/__tests__/context-strategy.test.js +8 -8
  60. package/dist/__tests__/context-strategy.test.js.map +1 -1
  61. package/dist/__tests__/conversation.test.d.ts +2 -0
  62. package/dist/__tests__/conversation.test.d.ts.map +1 -0
  63. package/dist/__tests__/conversation.test.js +113 -0
  64. package/dist/__tests__/conversation.test.js.map +1 -0
  65. package/dist/__tests__/entry-formatter.test.d.ts +2 -0
  66. package/dist/__tests__/entry-formatter.test.d.ts.map +1 -0
  67. package/dist/__tests__/entry-formatter.test.js +82 -0
  68. package/dist/__tests__/entry-formatter.test.js.map +1 -0
  69. package/dist/__tests__/entryArchive.test.d.ts +2 -0
  70. package/dist/__tests__/entryArchive.test.d.ts.map +1 -0
  71. package/dist/__tests__/entryArchive.test.js +35 -0
  72. package/dist/__tests__/entryArchive.test.js.map +1 -0
  73. package/dist/__tests__/envelope-contract.test.d.ts +15 -0
  74. package/dist/__tests__/envelope-contract.test.d.ts.map +1 -0
  75. package/dist/__tests__/envelope-contract.test.js +154 -0
  76. package/dist/__tests__/envelope-contract.test.js.map +1 -0
  77. package/dist/__tests__/errors.test.js +26 -0
  78. package/dist/__tests__/errors.test.js.map +1 -1
  79. package/dist/__tests__/fields.test.js +20 -20
  80. package/dist/__tests__/fields.test.js.map +1 -1
  81. package/dist/__tests__/gateway-dry-run-timeout.test.d.ts +2 -0
  82. package/dist/__tests__/gateway-dry-run-timeout.test.d.ts.map +1 -0
  83. package/dist/__tests__/gateway-dry-run-timeout.test.js +70 -0
  84. package/dist/__tests__/gateway-dry-run-timeout.test.js.map +1 -0
  85. package/dist/__tests__/gateway-timeout-body-phase.test.d.ts +2 -0
  86. package/dist/__tests__/gateway-timeout-body-phase.test.d.ts.map +1 -0
  87. package/dist/__tests__/gateway-timeout-body-phase.test.js +121 -0
  88. package/dist/__tests__/gateway-timeout-body-phase.test.js.map +1 -0
  89. package/dist/__tests__/handshake-augment.test.d.ts +2 -0
  90. package/dist/__tests__/handshake-augment.test.d.ts.map +1 -0
  91. package/dist/__tests__/handshake-augment.test.js +424 -0
  92. package/dist/__tests__/handshake-augment.test.js.map +1 -0
  93. package/dist/__tests__/handshake-dormancy.test.d.ts +2 -0
  94. package/dist/__tests__/handshake-dormancy.test.d.ts.map +1 -0
  95. package/dist/__tests__/handshake-dormancy.test.js +207 -0
  96. package/dist/__tests__/handshake-dormancy.test.js.map +1 -0
  97. package/dist/__tests__/handshake-formatter.test.d.ts +2 -0
  98. package/dist/__tests__/handshake-formatter.test.d.ts.map +1 -0
  99. package/dist/__tests__/handshake-formatter.test.js +67 -0
  100. package/dist/__tests__/handshake-formatter.test.js.map +1 -0
  101. package/dist/__tests__/handshake-preview.test.d.ts +2 -0
  102. package/dist/__tests__/handshake-preview.test.d.ts.map +1 -0
  103. package/dist/__tests__/handshake-preview.test.js +950 -0
  104. package/dist/__tests__/handshake-preview.test.js.map +1 -0
  105. package/dist/__tests__/handshake.e2e.test.d.ts +2 -0
  106. package/dist/__tests__/handshake.e2e.test.d.ts.map +1 -0
  107. package/dist/__tests__/handshake.e2e.test.js +1255 -0
  108. package/dist/__tests__/handshake.e2e.test.js.map +1 -0
  109. package/dist/__tests__/handshake.test.js +787 -2
  110. package/dist/__tests__/handshake.test.js.map +1 -1
  111. package/dist/__tests__/health-gap-kinds-drift.test.d.ts +2 -0
  112. package/dist/__tests__/health-gap-kinds-drift.test.d.ts.map +1 -0
  113. package/dist/__tests__/health-gap-kinds-drift.test.js +41 -0
  114. package/dist/__tests__/health-gap-kinds-drift.test.js.map +1 -0
  115. package/dist/__tests__/hook-intents.test.d.ts +2 -0
  116. package/dist/__tests__/hook-intents.test.d.ts.map +1 -0
  117. package/dist/__tests__/hook-intents.test.js +184 -0
  118. package/dist/__tests__/hook-intents.test.js.map +1 -0
  119. package/dist/__tests__/ingest.test.js +37 -28
  120. package/dist/__tests__/ingest.test.js.map +1 -1
  121. package/dist/__tests__/init.test.js +51 -14
  122. package/dist/__tests__/init.test.js.map +1 -1
  123. package/dist/__tests__/kernel-value-sets-drift.test.d.ts +2 -0
  124. package/dist/__tests__/kernel-value-sets-drift.test.d.ts.map +1 -0
  125. package/dist/__tests__/kernel-value-sets-drift.test.js +46 -0
  126. package/dist/__tests__/kernel-value-sets-drift.test.js.map +1 -0
  127. package/dist/__tests__/kernel-value-sets-generator.test.d.ts +2 -0
  128. package/dist/__tests__/kernel-value-sets-generator.test.d.ts.map +1 -0
  129. package/dist/__tests__/kernel-value-sets-generator.test.js +108 -0
  130. package/dist/__tests__/kernel-value-sets-generator.test.js.map +1 -0
  131. package/dist/__tests__/manifest.test.d.ts +6 -0
  132. package/dist/__tests__/manifest.test.d.ts.map +1 -0
  133. package/dist/__tests__/manifest.test.js +255 -0
  134. package/dist/__tests__/manifest.test.js.map +1 -0
  135. package/dist/__tests__/method-publish-coherency.test.d.ts +9 -0
  136. package/dist/__tests__/method-publish-coherency.test.d.ts.map +1 -0
  137. package/dist/__tests__/method-publish-coherency.test.js +71 -0
  138. package/dist/__tests__/method-publish-coherency.test.js.map +1 -0
  139. package/dist/__tests__/method-registry.integration.test.d.ts +6 -0
  140. package/dist/__tests__/method-registry.integration.test.d.ts.map +1 -0
  141. package/dist/__tests__/method-registry.integration.test.js +17 -0
  142. package/dist/__tests__/method-registry.integration.test.js.map +1 -0
  143. package/dist/__tests__/method-registry.test.d.ts +12 -0
  144. package/dist/__tests__/method-registry.test.d.ts.map +1 -0
  145. package/dist/__tests__/method-registry.test.js +86 -0
  146. package/dist/__tests__/method-registry.test.js.map +1 -0
  147. package/dist/__tests__/migrate-setup-session-refusal.test.d.ts +2 -0
  148. package/dist/__tests__/migrate-setup-session-refusal.test.d.ts.map +1 -0
  149. package/dist/__tests__/migrate-setup-session-refusal.test.js +65 -0
  150. package/dist/__tests__/migrate-setup-session-refusal.test.js.map +1 -0
  151. package/dist/__tests__/missingPin.test.d.ts +11 -0
  152. package/dist/__tests__/missingPin.test.d.ts.map +1 -0
  153. package/dist/__tests__/missingPin.test.js +233 -0
  154. package/dist/__tests__/missingPin.test.js.map +1 -0
  155. package/dist/__tests__/notice-marker.test.d.ts +2 -0
  156. package/dist/__tests__/notice-marker.test.d.ts.map +1 -0
  157. package/dist/__tests__/notice-marker.test.js +176 -0
  158. package/dist/__tests__/notice-marker.test.js.map +1 -0
  159. package/dist/__tests__/onboarding-path-b.test.js +4 -4
  160. package/dist/__tests__/onboarding-path-b.test.js.map +1 -1
  161. package/dist/__tests__/orient.test.js +503 -13
  162. package/dist/__tests__/orient.test.js.map +1 -1
  163. package/dist/__tests__/perimeter.test.d.ts +2 -0
  164. package/dist/__tests__/perimeter.test.d.ts.map +1 -0
  165. package/dist/__tests__/perimeter.test.js +165 -0
  166. package/dist/__tests__/perimeter.test.js.map +1 -0
  167. package/dist/__tests__/personal-layer.test.d.ts +11 -0
  168. package/dist/__tests__/personal-layer.test.d.ts.map +1 -0
  169. package/dist/__tests__/personal-layer.test.js +268 -0
  170. package/dist/__tests__/personal-layer.test.js.map +1 -0
  171. package/dist/__tests__/preview-key-refresh.test.d.ts +2 -0
  172. package/dist/__tests__/preview-key-refresh.test.d.ts.map +1 -0
  173. package/dist/__tests__/preview-key-refresh.test.js +126 -0
  174. package/dist/__tests__/preview-key-refresh.test.js.map +1 -0
  175. package/dist/__tests__/profiles.test.js +380 -5
  176. package/dist/__tests__/profiles.test.js.map +1 -1
  177. package/dist/__tests__/promote-batch.test.d.ts +2 -0
  178. package/dist/__tests__/promote-batch.test.d.ts.map +1 -0
  179. package/dist/__tests__/promote-batch.test.js +185 -0
  180. package/dist/__tests__/promote-batch.test.js.map +1 -0
  181. package/dist/__tests__/promote.test.js +292 -23
  182. package/dist/__tests__/promote.test.js.map +1 -1
  183. package/dist/__tests__/proof-run.test.d.ts +2 -0
  184. package/dist/__tests__/proof-run.test.d.ts.map +1 -0
  185. package/dist/__tests__/proof-run.test.js +255 -0
  186. package/dist/__tests__/proof-run.test.js.map +1 -0
  187. package/dist/__tests__/proposals.test.js +19 -19
  188. package/dist/__tests__/proposals.test.js.map +1 -1
  189. package/dist/__tests__/rate-limit-resilience.test.d.ts +7 -0
  190. package/dist/__tests__/rate-limit-resilience.test.d.ts.map +1 -0
  191. package/dist/__tests__/rate-limit-resilience.test.js +209 -0
  192. package/dist/__tests__/rate-limit-resilience.test.js.map +1 -0
  193. package/dist/__tests__/read-target-notice.test.d.ts +2 -0
  194. package/dist/__tests__/read-target-notice.test.d.ts.map +1 -0
  195. package/dist/__tests__/read-target-notice.test.js +129 -0
  196. package/dist/__tests__/read-target-notice.test.js.map +1 -0
  197. package/dist/__tests__/relate.test.js +146 -14
  198. package/dist/__tests__/relate.test.js.map +1 -1
  199. package/dist/__tests__/reportedProfile.test.d.ts +2 -0
  200. package/dist/__tests__/reportedProfile.test.d.ts.map +1 -0
  201. package/dist/__tests__/reportedProfile.test.js +328 -0
  202. package/dist/__tests__/reportedProfile.test.js.map +1 -0
  203. package/dist/__tests__/restore.test.d.ts +2 -0
  204. package/dist/__tests__/restore.test.d.ts.map +1 -0
  205. package/dist/__tests__/restore.test.js +85 -0
  206. package/dist/__tests__/restore.test.js.map +1 -0
  207. package/dist/__tests__/route-latency-budget.test.d.ts +2 -0
  208. package/dist/__tests__/route-latency-budget.test.d.ts.map +1 -0
  209. package/dist/__tests__/route-latency-budget.test.js +103 -0
  210. package/dist/__tests__/route-latency-budget.test.js.map +1 -0
  211. package/dist/__tests__/session-binding-refusal-tenant.test.d.ts +2 -0
  212. package/dist/__tests__/session-binding-refusal-tenant.test.d.ts.map +1 -0
  213. package/dist/__tests__/session-binding-refusal-tenant.test.js +112 -0
  214. package/dist/__tests__/session-binding-refusal-tenant.test.js.map +1 -0
  215. package/dist/__tests__/session-close-loop.test.d.ts +2 -0
  216. package/dist/__tests__/session-close-loop.test.d.ts.map +1 -0
  217. package/dist/__tests__/session-close-loop.test.js +231 -0
  218. package/dist/__tests__/session-close-loop.test.js.map +1 -0
  219. package/dist/__tests__/session-label.test.d.ts +2 -0
  220. package/dist/__tests__/session-label.test.d.ts.map +1 -0
  221. package/dist/__tests__/session-label.test.js +46 -0
  222. package/dist/__tests__/session-label.test.js.map +1 -0
  223. package/dist/__tests__/session-list-show.test.d.ts +2 -0
  224. package/dist/__tests__/session-list-show.test.d.ts.map +1 -0
  225. package/dist/__tests__/session-list-show.test.js +174 -0
  226. package/dist/__tests__/session-list-show.test.js.map +1 -0
  227. package/dist/__tests__/session-reset.test.d.ts +2 -0
  228. package/dist/__tests__/session-reset.test.d.ts.map +1 -0
  229. package/dist/__tests__/session-reset.test.js +138 -0
  230. package/dist/__tests__/session-reset.test.js.map +1 -0
  231. package/dist/__tests__/session-resume-backstop.test.d.ts +2 -0
  232. package/dist/__tests__/session-resume-backstop.test.d.ts.map +1 -0
  233. package/dist/__tests__/session-resume-backstop.test.js +107 -0
  234. package/dist/__tests__/session-resume-backstop.test.js.map +1 -0
  235. package/dist/__tests__/session-start-key-refresh.test.d.ts +2 -0
  236. package/dist/__tests__/session-start-key-refresh.test.d.ts.map +1 -0
  237. package/dist/__tests__/session-start-key-refresh.test.js +212 -0
  238. package/dist/__tests__/session-start-key-refresh.test.js.map +1 -0
  239. package/dist/__tests__/session-state-machine.test.d.ts +2 -0
  240. package/dist/__tests__/session-state-machine.test.d.ts.map +1 -0
  241. package/dist/__tests__/session-state-machine.test.js +379 -0
  242. package/dist/__tests__/session-state-machine.test.js.map +1 -0
  243. package/dist/__tests__/session-switch.test.d.ts +2 -0
  244. package/dist/__tests__/session-switch.test.d.ts.map +1 -0
  245. package/dist/__tests__/session-switch.test.js +267 -0
  246. package/dist/__tests__/session-switch.test.js.map +1 -0
  247. package/dist/__tests__/session-touch.test.js +16 -11
  248. package/dist/__tests__/session-touch.test.js.map +1 -1
  249. package/dist/__tests__/session.test.js +2 -2
  250. package/dist/__tests__/session.test.js.map +1 -1
  251. package/dist/__tests__/sessionBinding.test.d.ts +2 -0
  252. package/dist/__tests__/sessionBinding.test.d.ts.map +1 -0
  253. package/dist/__tests__/sessionBinding.test.js +118 -0
  254. package/dist/__tests__/sessionBinding.test.js.map +1 -0
  255. package/dist/__tests__/sessionByIdLookup.test.d.ts +2 -0
  256. package/dist/__tests__/sessionByIdLookup.test.d.ts.map +1 -0
  257. package/dist/__tests__/sessionByIdLookup.test.js +63 -0
  258. package/dist/__tests__/sessionByIdLookup.test.js.map +1 -0
  259. package/dist/__tests__/setup-ingest.test.d.ts +2 -0
  260. package/dist/__tests__/setup-ingest.test.d.ts.map +1 -0
  261. package/dist/__tests__/setup-ingest.test.js +71 -0
  262. package/dist/__tests__/setup-ingest.test.js.map +1 -0
  263. package/dist/__tests__/setup-resolver.test.d.ts +14 -0
  264. package/dist/__tests__/setup-resolver.test.d.ts.map +1 -0
  265. package/dist/__tests__/setup-resolver.test.js +228 -0
  266. package/dist/__tests__/setup-resolver.test.js.map +1 -0
  267. package/dist/__tests__/setupShFallbackWarning.test.d.ts +2 -0
  268. package/dist/__tests__/setupShFallbackWarning.test.d.ts.map +1 -0
  269. package/dist/__tests__/setupShFallbackWarning.test.js +15 -0
  270. package/dist/__tests__/setupShFallbackWarning.test.js.map +1 -0
  271. package/dist/__tests__/skill-vocabulary.test.d.ts +21 -0
  272. package/dist/__tests__/skill-vocabulary.test.d.ts.map +1 -0
  273. package/dist/__tests__/skill-vocabulary.test.js +192 -0
  274. package/dist/__tests__/skill-vocabulary.test.js.map +1 -0
  275. package/dist/__tests__/state.test.d.ts +6 -0
  276. package/dist/__tests__/state.test.d.ts.map +1 -0
  277. package/dist/__tests__/state.test.js +117 -0
  278. package/dist/__tests__/state.test.js.map +1 -0
  279. package/dist/__tests__/strip.test.js +31 -3
  280. package/dist/__tests__/strip.test.js.map +1 -1
  281. package/dist/__tests__/surfaces.test.d.ts +2 -0
  282. package/dist/__tests__/surfaces.test.d.ts.map +1 -0
  283. package/dist/__tests__/surfaces.test.js +46 -0
  284. package/dist/__tests__/surfaces.test.js.map +1 -0
  285. package/dist/__tests__/tenant-notice-write-path.test.d.ts +2 -0
  286. package/dist/__tests__/tenant-notice-write-path.test.d.ts.map +1 -0
  287. package/dist/__tests__/tenant-notice-write-path.test.js +169 -0
  288. package/dist/__tests__/tenant-notice-write-path.test.js.map +1 -0
  289. package/dist/__tests__/update-check.test.d.ts +2 -0
  290. package/dist/__tests__/update-check.test.d.ts.map +1 -0
  291. package/dist/__tests__/update-check.test.js +215 -0
  292. package/dist/__tests__/update-check.test.js.map +1 -0
  293. package/dist/__tests__/update.test.js +263 -22
  294. package/dist/__tests__/update.test.js.map +1 -1
  295. package/dist/__tests__/upgrade-runner.test.d.ts +2 -0
  296. package/dist/__tests__/upgrade-runner.test.d.ts.map +1 -0
  297. package/dist/__tests__/upgrade-runner.test.js +54 -0
  298. package/dist/__tests__/upgrade-runner.test.js.map +1 -0
  299. package/dist/__tests__/upgrade.test.d.ts +2 -0
  300. package/dist/__tests__/upgrade.test.d.ts.map +1 -0
  301. package/dist/__tests__/upgrade.test.js +56 -0
  302. package/dist/__tests__/upgrade.test.js.map +1 -0
  303. package/dist/__tests__/verify-formatter.test.d.ts +2 -0
  304. package/dist/__tests__/verify-formatter.test.d.ts.map +1 -0
  305. package/dist/__tests__/verify-formatter.test.js +85 -0
  306. package/dist/__tests__/verify-formatter.test.js.map +1 -0
  307. package/dist/__tests__/vocabulary-leak.test.d.ts +39 -0
  308. package/dist/__tests__/vocabulary-leak.test.d.ts.map +1 -0
  309. package/dist/__tests__/vocabulary-leak.test.js +539 -0
  310. package/dist/__tests__/vocabulary-leak.test.js.map +1 -0
  311. package/dist/__tests__/workspace.test.js +52 -32
  312. package/dist/__tests__/workspace.test.js.map +1 -1
  313. package/dist/__tests__/workspaceNotice.test.d.ts +2 -0
  314. package/dist/__tests__/workspaceNotice.test.d.ts.map +1 -0
  315. package/dist/__tests__/workspaceNotice.test.js +567 -0
  316. package/dist/__tests__/workspaceNotice.test.js.map +1 -0
  317. package/dist/commands/__tests__/connect-handoff.test.d.ts +11 -0
  318. package/dist/commands/__tests__/connect-handoff.test.d.ts.map +1 -0
  319. package/dist/commands/__tests__/connect-handoff.test.js +111 -0
  320. package/dist/commands/__tests__/connect-handoff.test.js.map +1 -0
  321. package/dist/commands/__tests__/quality.test.d.ts +2 -0
  322. package/dist/commands/__tests__/quality.test.d.ts.map +1 -0
  323. package/dist/commands/__tests__/quality.test.js +156 -0
  324. package/dist/commands/__tests__/quality.test.js.map +1 -0
  325. package/dist/commands/__tests__/rework.test.d.ts +2 -0
  326. package/dist/commands/__tests__/rework.test.d.ts.map +1 -0
  327. package/dist/commands/__tests__/rework.test.js +149 -0
  328. package/dist/commands/__tests__/rework.test.js.map +1 -0
  329. package/dist/commands/__tests__/setup-detect-surfaces.test.d.ts +15 -0
  330. package/dist/commands/__tests__/setup-detect-surfaces.test.d.ts.map +1 -0
  331. package/dist/commands/__tests__/setup-detect-surfaces.test.js +149 -0
  332. package/dist/commands/__tests__/setup-detect-surfaces.test.js.map +1 -0
  333. package/dist/commands/__tests__/setup-state.test.d.ts +2 -0
  334. package/dist/commands/__tests__/setup-state.test.d.ts.map +1 -0
  335. package/dist/commands/__tests__/setup-state.test.js +194 -0
  336. package/dist/commands/__tests__/setup-state.test.js.map +1 -0
  337. package/dist/commands/accept-policy.d.ts +10 -0
  338. package/dist/commands/accept-policy.d.ts.map +1 -0
  339. package/dist/commands/accept-policy.js +107 -0
  340. package/dist/commands/accept-policy.js.map +1 -0
  341. package/dist/commands/accept.d.ts.map +1 -1
  342. package/dist/commands/accept.js +5 -5
  343. package/dist/commands/accept.js.map +1 -1
  344. package/dist/commands/admin/cockpit.d.ts +31 -10
  345. package/dist/commands/admin/cockpit.d.ts.map +1 -1
  346. package/dist/commands/admin/cockpit.js +415 -26
  347. package/dist/commands/admin/cockpit.js.map +1 -1
  348. package/dist/commands/admin/index.d.ts +49 -0
  349. package/dist/commands/admin/index.d.ts.map +1 -1
  350. package/dist/commands/admin/index.js +172 -1
  351. package/dist/commands/admin/index.js.map +1 -1
  352. package/dist/commands/admin/index.test.d.ts +2 -0
  353. package/dist/commands/admin/index.test.d.ts.map +1 -0
  354. package/dist/commands/admin/index.test.js +84 -0
  355. package/dist/commands/admin/index.test.js.map +1 -0
  356. package/dist/commands/admin/inspect.d.ts +9 -0
  357. package/dist/commands/admin/inspect.d.ts.map +1 -1
  358. package/dist/commands/admin/inspect.js +20 -1
  359. package/dist/commands/admin/inspect.js.map +1 -1
  360. package/dist/commands/admin/inspect.test.js +20 -1
  361. package/dist/commands/admin/inspect.test.js.map +1 -1
  362. package/dist/commands/admin/manage.d.ts +8 -0
  363. package/dist/commands/admin/manage.d.ts.map +1 -0
  364. package/dist/commands/admin/manage.js +260 -0
  365. package/dist/commands/admin/manage.js.map +1 -0
  366. package/dist/commands/admin/manage.test.d.ts +16 -0
  367. package/dist/commands/admin/manage.test.d.ts.map +1 -0
  368. package/dist/commands/admin/manage.test.js +159 -0
  369. package/dist/commands/admin/manage.test.js.map +1 -0
  370. package/dist/commands/admin/probe.d.ts +75 -0
  371. package/dist/commands/admin/probe.d.ts.map +1 -0
  372. package/dist/commands/admin/probe.js +224 -0
  373. package/dist/commands/admin/probe.js.map +1 -0
  374. package/dist/commands/admin/probe.test.d.ts +2 -0
  375. package/dist/commands/admin/probe.test.d.ts.map +1 -0
  376. package/dist/commands/admin/probe.test.js +193 -0
  377. package/dist/commands/admin/probe.test.js.map +1 -0
  378. package/dist/commands/admin/run.d.ts +43 -0
  379. package/dist/commands/admin/run.d.ts.map +1 -0
  380. package/dist/commands/admin/run.js +78 -0
  381. package/dist/commands/admin/run.js.map +1 -0
  382. package/dist/commands/admin/run.test.d.ts +18 -0
  383. package/dist/commands/admin/run.test.d.ts.map +1 -0
  384. package/dist/commands/admin/run.test.js +168 -0
  385. package/dist/commands/admin/run.test.js.map +1 -0
  386. package/dist/commands/admin/seed.d.ts +46 -3
  387. package/dist/commands/admin/seed.d.ts.map +1 -1
  388. package/dist/commands/admin/seed.js +497 -77
  389. package/dist/commands/admin/seed.js.map +1 -1
  390. package/dist/commands/admin/seed.test.d.ts +5 -0
  391. package/dist/commands/admin/seed.test.d.ts.map +1 -1
  392. package/dist/commands/admin/seed.test.js +90 -8
  393. package/dist/commands/admin/seed.test.js.map +1 -1
  394. package/dist/commands/admin/seedRegistryEntries.generated.d.ts +14 -0
  395. package/dist/commands/admin/seedRegistryEntries.generated.d.ts.map +1 -0
  396. package/dist/commands/admin/seedRegistryEntries.generated.js +153 -0
  397. package/dist/commands/admin/seedRegistryEntries.generated.js.map +1 -0
  398. package/dist/commands/admin/seedRegistryEntries.test.d.ts +13 -0
  399. package/dist/commands/admin/seedRegistryEntries.test.d.ts.map +1 -0
  400. package/dist/commands/admin/seedRegistryEntries.test.js +91 -0
  401. package/dist/commands/admin/seedRegistryEntries.test.js.map +1 -0
  402. package/dist/commands/admin/seedRowType.d.ts +22 -0
  403. package/dist/commands/admin/seedRowType.d.ts.map +1 -0
  404. package/dist/commands/admin/seedRowType.js +2 -0
  405. package/dist/commands/admin/seedRowType.js.map +1 -0
  406. package/dist/commands/admin/seedStatusColor.d.ts +9 -0
  407. package/dist/commands/admin/seedStatusColor.d.ts.map +1 -0
  408. package/dist/commands/admin/seedStatusColor.js +18 -0
  409. package/dist/commands/admin/seedStatusColor.js.map +1 -0
  410. package/dist/commands/admin/seedStatusColor.test.d.ts +2 -0
  411. package/dist/commands/admin/seedStatusColor.test.d.ts.map +1 -0
  412. package/dist/commands/admin/seedStatusColor.test.js +25 -0
  413. package/dist/commands/admin/seedStatusColor.test.js.map +1 -0
  414. package/dist/commands/audit.d.ts.map +1 -1
  415. package/dist/commands/audit.js +42 -7
  416. package/dist/commands/audit.js.map +1 -1
  417. package/dist/commands/authority-domains.d.ts +157 -0
  418. package/dist/commands/authority-domains.d.ts.map +1 -0
  419. package/dist/commands/authority-domains.js +387 -0
  420. package/dist/commands/authority-domains.js.map +1 -0
  421. package/dist/commands/brief.d.ts.map +1 -1
  422. package/dist/commands/brief.js +9 -5
  423. package/dist/commands/brief.js.map +1 -1
  424. package/dist/commands/capture.d.ts +16 -3
  425. package/dist/commands/capture.d.ts.map +1 -1
  426. package/dist/commands/capture.js +265 -98
  427. package/dist/commands/capture.js.map +1 -1
  428. package/dist/commands/chain-walk.d.ts.map +1 -1
  429. package/dist/commands/chain-walk.js +2 -2
  430. package/dist/commands/chain-walk.js.map +1 -1
  431. package/dist/commands/changes.d.ts.map +1 -1
  432. package/dist/commands/changes.js +2 -2
  433. package/dist/commands/changes.js.map +1 -1
  434. package/dist/commands/codex-prep.d.ts +12 -1
  435. package/dist/commands/codex-prep.d.ts.map +1 -1
  436. package/dist/commands/codex-prep.js +19 -85
  437. package/dist/commands/codex-prep.js.map +1 -1
  438. package/dist/commands/collections.d.ts.map +1 -1
  439. package/dist/commands/collections.js +5 -5
  440. package/dist/commands/collections.js.map +1 -1
  441. package/dist/commands/conflicts.d.ts +40 -0
  442. package/dist/commands/conflicts.d.ts.map +1 -0
  443. package/dist/commands/conflicts.js +267 -0
  444. package/dist/commands/conflicts.js.map +1 -0
  445. package/dist/commands/conflicts.test.d.ts +2 -0
  446. package/dist/commands/conflicts.test.d.ts.map +1 -0
  447. package/dist/commands/conflicts.test.js +219 -0
  448. package/dist/commands/conflicts.test.js.map +1 -0
  449. package/dist/commands/connect-config.test.d.ts +2 -0
  450. package/dist/commands/connect-config.test.d.ts.map +1 -0
  451. package/dist/commands/connect-config.test.js +44 -0
  452. package/dist/commands/connect-config.test.js.map +1 -0
  453. package/dist/commands/connect-context.d.ts +45 -0
  454. package/dist/commands/connect-context.d.ts.map +1 -0
  455. package/dist/commands/connect-context.js +83 -0
  456. package/dist/commands/connect-context.js.map +1 -0
  457. package/dist/commands/connect-context.test.d.ts +2 -0
  458. package/dist/commands/connect-context.test.d.ts.map +1 -0
  459. package/dist/commands/connect-context.test.js +158 -0
  460. package/dist/commands/connect-context.test.js.map +1 -0
  461. package/dist/commands/connect-handoff.d.ts +51 -0
  462. package/dist/commands/connect-handoff.d.ts.map +1 -0
  463. package/dist/commands/connect-handoff.js +70 -0
  464. package/dist/commands/connect-handoff.js.map +1 -0
  465. package/dist/commands/connect-integration.test.js +58 -35
  466. package/dist/commands/connect-integration.test.js.map +1 -1
  467. package/dist/commands/connect-legacy-migration.test.d.ts +2 -0
  468. package/dist/commands/connect-legacy-migration.test.d.ts.map +1 -0
  469. package/dist/commands/connect-legacy-migration.test.js +109 -0
  470. package/dist/commands/connect-legacy-migration.test.js.map +1 -0
  471. package/dist/commands/connect-screens.d.ts +33 -0
  472. package/dist/commands/connect-screens.d.ts.map +1 -0
  473. package/dist/commands/connect-screens.js +124 -0
  474. package/dist/commands/connect-screens.js.map +1 -0
  475. package/dist/commands/connect.d.ts +27 -6
  476. package/dist/commands/connect.d.ts.map +1 -1
  477. package/dist/commands/connect.js +256 -119
  478. package/dist/commands/connect.js.map +1 -1
  479. package/dist/commands/connect.test.js +348 -7
  480. package/dist/commands/connect.test.js.map +1 -1
  481. package/dist/commands/constellation.d.ts.map +1 -1
  482. package/dist/commands/constellation.js +2 -2
  483. package/dist/commands/constellation.js.map +1 -1
  484. package/dist/commands/context.d.ts.map +1 -1
  485. package/dist/commands/context.js +2 -2
  486. package/dist/commands/context.js.map +1 -1
  487. package/dist/commands/cross-cut.d.ts.map +1 -1
  488. package/dist/commands/cross-cut.js +2 -2
  489. package/dist/commands/cross-cut.js.map +1 -1
  490. package/dist/commands/direction.d.ts +10 -0
  491. package/dist/commands/direction.d.ts.map +1 -0
  492. package/dist/commands/direction.js +79 -0
  493. package/dist/commands/direction.js.map +1 -0
  494. package/dist/commands/doctor.d.ts.map +1 -1
  495. package/dist/commands/doctor.js +175 -39
  496. package/dist/commands/doctor.js.map +1 -1
  497. package/dist/commands/doctor.test.js +353 -7
  498. package/dist/commands/doctor.test.js.map +1 -1
  499. package/dist/commands/entryArchive.d.ts +8 -0
  500. package/dist/commands/entryArchive.d.ts.map +1 -0
  501. package/dist/commands/entryArchive.js +37 -0
  502. package/dist/commands/entryArchive.js.map +1 -0
  503. package/dist/commands/feedback.d.ts +36 -0
  504. package/dist/commands/feedback.d.ts.map +1 -0
  505. package/dist/commands/feedback.js +193 -0
  506. package/dist/commands/feedback.js.map +1 -0
  507. package/dist/commands/feedback.test.d.ts +2 -0
  508. package/dist/commands/feedback.test.d.ts.map +1 -0
  509. package/dist/commands/feedback.test.js +125 -0
  510. package/dist/commands/feedback.test.js.map +1 -0
  511. package/dist/commands/fields.d.ts.map +1 -1
  512. package/dist/commands/fields.js +3 -3
  513. package/dist/commands/fields.js.map +1 -1
  514. package/dist/commands/files.d.ts +26 -0
  515. package/dist/commands/files.d.ts.map +1 -0
  516. package/dist/commands/files.js +160 -0
  517. package/dist/commands/files.js.map +1 -0
  518. package/dist/commands/files.test.d.ts +2 -0
  519. package/dist/commands/files.test.d.ts.map +1 -0
  520. package/dist/commands/files.test.js +278 -0
  521. package/dist/commands/files.test.js.map +1 -0
  522. package/dist/commands/get.js +3 -3
  523. package/dist/commands/get.js.map +1 -1
  524. package/dist/commands/handshake.d.ts +223 -2
  525. package/dist/commands/handshake.d.ts.map +1 -1
  526. package/dist/commands/handshake.js +2106 -62
  527. package/dist/commands/handshake.js.map +1 -1
  528. package/dist/commands/ingest.d.ts.map +1 -1
  529. package/dist/commands/ingest.js +15 -6
  530. package/dist/commands/ingest.js.map +1 -1
  531. package/dist/commands/init.d.ts +1 -1
  532. package/dist/commands/init.d.ts.map +1 -1
  533. package/dist/commands/init.js +20 -17
  534. package/dist/commands/init.js.map +1 -1
  535. package/dist/commands/login.d.ts.map +1 -1
  536. package/dist/commands/login.js +6 -5
  537. package/dist/commands/login.js.map +1 -1
  538. package/dist/commands/method.d.ts +99 -0
  539. package/dist/commands/method.d.ts.map +1 -0
  540. package/dist/commands/method.js +804 -0
  541. package/dist/commands/method.js.map +1 -0
  542. package/dist/commands/migrate-setup.d.ts +18 -0
  543. package/dist/commands/migrate-setup.d.ts.map +1 -0
  544. package/dist/commands/migrate-setup.js +162 -0
  545. package/dist/commands/migrate-setup.js.map +1 -0
  546. package/dist/commands/organisation.d.ts +41 -0
  547. package/dist/commands/organisation.d.ts.map +1 -0
  548. package/dist/commands/organisation.js +353 -0
  549. package/dist/commands/organisation.js.map +1 -0
  550. package/dist/commands/organisation.test.d.ts +2 -0
  551. package/dist/commands/organisation.test.d.ts.map +1 -0
  552. package/dist/commands/organisation.test.js +233 -0
  553. package/dist/commands/organisation.test.js.map +1 -0
  554. package/dist/commands/organisationHierarchy.d.ts +8 -0
  555. package/dist/commands/organisationHierarchy.d.ts.map +1 -0
  556. package/dist/commands/organisationHierarchy.js +67 -0
  557. package/dist/commands/organisationHierarchy.js.map +1 -0
  558. package/dist/commands/organisationHierarchy.test.d.ts +2 -0
  559. package/dist/commands/organisationHierarchy.test.d.ts.map +1 -0
  560. package/dist/commands/organisationHierarchy.test.js +55 -0
  561. package/dist/commands/organisationHierarchy.test.js.map +1 -0
  562. package/dist/commands/organisationWrite.d.ts +18 -0
  563. package/dist/commands/organisationWrite.d.ts.map +1 -0
  564. package/dist/commands/organisationWrite.js +50 -0
  565. package/dist/commands/organisationWrite.js.map +1 -0
  566. package/dist/commands/orient.d.ts +128 -2
  567. package/dist/commands/orient.d.ts.map +1 -1
  568. package/dist/commands/orient.js +223 -7
  569. package/dist/commands/orient.js.map +1 -1
  570. package/dist/commands/outcome.d.ts +117 -0
  571. package/dist/commands/outcome.d.ts.map +1 -0
  572. package/dist/commands/outcome.js +192 -0
  573. package/dist/commands/outcome.js.map +1 -0
  574. package/dist/commands/outcome.test.d.ts +2 -0
  575. package/dist/commands/outcome.test.d.ts.map +1 -0
  576. package/dist/commands/outcome.test.js +294 -0
  577. package/dist/commands/outcome.test.js.map +1 -0
  578. package/dist/commands/profile.d.ts +16 -1
  579. package/dist/commands/profile.d.ts.map +1 -1
  580. package/dist/commands/profile.js +173 -37
  581. package/dist/commands/profile.js.map +1 -1
  582. package/dist/commands/promote.d.ts +12 -1
  583. package/dist/commands/promote.d.ts.map +1 -1
  584. package/dist/commands/promote.js +243 -57
  585. package/dist/commands/promote.js.map +1 -1
  586. package/dist/commands/proof-run.d.ts +51 -0
  587. package/dist/commands/proof-run.d.ts.map +1 -0
  588. package/dist/commands/proof-run.js +209 -0
  589. package/dist/commands/proof-run.js.map +1 -0
  590. package/dist/commands/proposals.d.ts.map +1 -1
  591. package/dist/commands/proposals.js +2 -2
  592. package/dist/commands/proposals.js.map +1 -1
  593. package/dist/commands/quality.d.ts +16 -0
  594. package/dist/commands/quality.d.ts.map +1 -0
  595. package/dist/commands/quality.js +29 -0
  596. package/dist/commands/quality.js.map +1 -0
  597. package/dist/commands/questions.d.ts +33 -0
  598. package/dist/commands/questions.d.ts.map +1 -0
  599. package/dist/commands/questions.js +300 -0
  600. package/dist/commands/questions.js.map +1 -0
  601. package/dist/commands/questions.test.d.ts +2 -0
  602. package/dist/commands/questions.test.d.ts.map +1 -0
  603. package/dist/commands/questions.test.js +175 -0
  604. package/dist/commands/questions.test.js.map +1 -0
  605. package/dist/commands/reject.d.ts.map +1 -1
  606. package/dist/commands/reject.js +5 -4
  607. package/dist/commands/reject.js.map +1 -1
  608. package/dist/commands/relate.d.ts +1 -0
  609. package/dist/commands/relate.d.ts.map +1 -1
  610. package/dist/commands/relate.js +66 -5
  611. package/dist/commands/relate.js.map +1 -1
  612. package/dist/commands/restore.d.ts +2 -0
  613. package/dist/commands/restore.d.ts.map +1 -0
  614. package/dist/commands/restore.js +83 -0
  615. package/dist/commands/restore.js.map +1 -0
  616. package/dist/commands/rework.d.ts +24 -0
  617. package/dist/commands/rework.d.ts.map +1 -0
  618. package/dist/commands/rework.js +97 -0
  619. package/dist/commands/rework.js.map +1 -0
  620. package/dist/commands/scoreboard.d.ts +28 -0
  621. package/dist/commands/scoreboard.d.ts.map +1 -0
  622. package/dist/commands/scoreboard.js +40 -0
  623. package/dist/commands/scoreboard.js.map +1 -0
  624. package/dist/commands/search.d.ts.map +1 -1
  625. package/dist/commands/search.js +2 -2
  626. package/dist/commands/search.js.map +1 -1
  627. package/dist/commands/session.d.ts +59 -7
  628. package/dist/commands/session.d.ts.map +1 -1
  629. package/dist/commands/session.js +495 -50
  630. package/dist/commands/session.js.map +1 -1
  631. package/dist/commands/setup-audit.d.ts +59 -0
  632. package/dist/commands/setup-audit.d.ts.map +1 -0
  633. package/dist/commands/setup-audit.js +250 -0
  634. package/dist/commands/setup-audit.js.map +1 -0
  635. package/dist/commands/setup-detect-surfaces.d.ts +38 -0
  636. package/dist/commands/setup-detect-surfaces.d.ts.map +1 -0
  637. package/dist/commands/setup-detect-surfaces.js +76 -0
  638. package/dist/commands/setup-detect-surfaces.js.map +1 -0
  639. package/dist/commands/setup-ingest.d.ts +17 -0
  640. package/dist/commands/setup-ingest.d.ts.map +1 -0
  641. package/dist/commands/setup-ingest.js +179 -0
  642. package/dist/commands/setup-ingest.js.map +1 -0
  643. package/dist/commands/setup-resolver.d.ts +58 -0
  644. package/dist/commands/setup-resolver.d.ts.map +1 -0
  645. package/dist/commands/setup-resolver.js +150 -0
  646. package/dist/commands/setup-resolver.js.map +1 -0
  647. package/dist/commands/setup-state.d.ts +42 -0
  648. package/dist/commands/setup-state.d.ts.map +1 -0
  649. package/dist/commands/setup-state.js +93 -0
  650. package/dist/commands/setup-state.js.map +1 -0
  651. package/dist/commands/setup.d.ts +17 -9
  652. package/dist/commands/setup.d.ts.map +1 -1
  653. package/dist/commands/setup.js +53 -152
  654. package/dist/commands/setup.js.map +1 -1
  655. package/dist/commands/shape.d.ts +16 -0
  656. package/dist/commands/shape.d.ts.map +1 -0
  657. package/dist/commands/shape.js +149 -0
  658. package/dist/commands/shape.js.map +1 -0
  659. package/dist/commands/shape.test.d.ts +2 -0
  660. package/dist/commands/shape.test.d.ts.map +1 -0
  661. package/dist/commands/shape.test.js +148 -0
  662. package/dist/commands/shape.test.js.map +1 -0
  663. package/dist/commands/status.d.ts +7 -0
  664. package/dist/commands/status.d.ts.map +1 -0
  665. package/dist/commands/status.js +102 -0
  666. package/dist/commands/status.js.map +1 -0
  667. package/dist/commands/status.test.d.ts +2 -0
  668. package/dist/commands/status.test.d.ts.map +1 -0
  669. package/dist/commands/status.test.js +75 -0
  670. package/dist/commands/status.test.js.map +1 -0
  671. package/dist/commands/update.d.ts +20 -0
  672. package/dist/commands/update.d.ts.map +1 -1
  673. package/dist/commands/update.js +92 -35
  674. package/dist/commands/update.js.map +1 -1
  675. package/dist/commands/upgrade.d.ts +5 -0
  676. package/dist/commands/upgrade.d.ts.map +1 -0
  677. package/dist/commands/upgrade.js +110 -0
  678. package/dist/commands/upgrade.js.map +1 -0
  679. package/dist/commands/usage.d.ts +40 -0
  680. package/dist/commands/usage.d.ts.map +1 -0
  681. package/dist/commands/usage.js +214 -0
  682. package/dist/commands/usage.js.map +1 -0
  683. package/dist/commands/verify.d.ts.map +1 -1
  684. package/dist/commands/verify.js +9 -3
  685. package/dist/commands/verify.js.map +1 -1
  686. package/dist/commands/welcome.d.ts +21 -0
  687. package/dist/commands/welcome.d.ts.map +1 -0
  688. package/dist/commands/welcome.js +53 -0
  689. package/dist/commands/welcome.js.map +1 -0
  690. package/dist/commands/whoami.d.ts +20 -0
  691. package/dist/commands/whoami.d.ts.map +1 -0
  692. package/dist/commands/whoami.js +126 -0
  693. package/dist/commands/whoami.js.map +1 -0
  694. package/dist/commands/whoami.test.d.ts +2 -0
  695. package/dist/commands/whoami.test.d.ts.map +1 -0
  696. package/dist/commands/whoami.test.js +130 -0
  697. package/dist/commands/whoami.test.js.map +1 -0
  698. package/dist/commands/workspace.d.ts +76 -2
  699. package/dist/commands/workspace.d.ts.map +1 -1
  700. package/dist/commands/workspace.js +30 -6
  701. package/dist/commands/workspace.js.map +1 -1
  702. package/dist/formatters/__tests__/orient-possibleConflict.test.d.ts +2 -0
  703. package/dist/formatters/__tests__/orient-possibleConflict.test.d.ts.map +1 -0
  704. package/dist/formatters/__tests__/orient-possibleConflict.test.js +68 -0
  705. package/dist/formatters/__tests__/orient-possibleConflict.test.js.map +1 -0
  706. package/dist/formatters/__tests__/orient-provenance.test.d.ts +7 -0
  707. package/dist/formatters/__tests__/orient-provenance.test.d.ts.map +1 -0
  708. package/dist/formatters/__tests__/orient-provenance.test.js +548 -0
  709. package/dist/formatters/__tests__/orient-provenance.test.js.map +1 -0
  710. package/dist/formatters/__tests__/session-list-show.test.d.ts +2 -0
  711. package/dist/formatters/__tests__/session-list-show.test.d.ts.map +1 -0
  712. package/dist/formatters/__tests__/session-list-show.test.js +159 -0
  713. package/dist/formatters/__tests__/session-list-show.test.js.map +1 -0
  714. package/dist/formatters/__tests__/session.test.d.ts +2 -0
  715. package/dist/formatters/__tests__/session.test.d.ts.map +1 -0
  716. package/dist/formatters/__tests__/session.test.js +206 -0
  717. package/dist/formatters/__tests__/session.test.js.map +1 -0
  718. package/dist/formatters/audit.d.ts +6 -0
  719. package/dist/formatters/audit.d.ts.map +1 -1
  720. package/dist/formatters/audit.js +1 -1
  721. package/dist/formatters/audit.js.map +1 -1
  722. package/dist/formatters/brief.d.ts +1 -0
  723. package/dist/formatters/brief.d.ts.map +1 -1
  724. package/dist/formatters/brief.js +1 -1
  725. package/dist/formatters/brief.js.map +1 -1
  726. package/dist/formatters/capture.d.ts +8 -0
  727. package/dist/formatters/capture.d.ts.map +1 -1
  728. package/dist/formatters/capture.js +12 -1
  729. package/dist/formatters/capture.js.map +1 -1
  730. package/dist/formatters/coaching.d.ts +55 -0
  731. package/dist/formatters/coaching.d.ts.map +1 -0
  732. package/dist/formatters/coaching.js +46 -0
  733. package/dist/formatters/coaching.js.map +1 -0
  734. package/dist/formatters/conflicts.d.ts +69 -0
  735. package/dist/formatters/conflicts.d.ts.map +1 -0
  736. package/dist/formatters/conflicts.js +87 -0
  737. package/dist/formatters/conflicts.js.map +1 -0
  738. package/dist/formatters/conflicts.test.d.ts +2 -0
  739. package/dist/formatters/conflicts.test.d.ts.map +1 -0
  740. package/dist/formatters/conflicts.test.js +136 -0
  741. package/dist/formatters/conflicts.test.js.map +1 -0
  742. package/dist/formatters/context.d.ts +1 -1
  743. package/dist/formatters/context.d.ts.map +1 -1
  744. package/dist/formatters/context.js.map +1 -1
  745. package/dist/formatters/direction.d.ts +48 -0
  746. package/dist/formatters/direction.d.ts.map +1 -0
  747. package/dist/formatters/direction.js +75 -0
  748. package/dist/formatters/direction.js.map +1 -0
  749. package/dist/formatters/direction.test.d.ts +2 -0
  750. package/dist/formatters/direction.test.d.ts.map +1 -0
  751. package/dist/formatters/direction.test.js +70 -0
  752. package/dist/formatters/direction.test.js.map +1 -0
  753. package/dist/formatters/entry.d.ts +44 -0
  754. package/dist/formatters/entry.d.ts.map +1 -1
  755. package/dist/formatters/entry.js +70 -7
  756. package/dist/formatters/entry.js.map +1 -1
  757. package/dist/formatters/feedback.d.ts +56 -0
  758. package/dist/formatters/feedback.d.ts.map +1 -0
  759. package/dist/formatters/feedback.js +89 -0
  760. package/dist/formatters/feedback.js.map +1 -0
  761. package/dist/formatters/feedback.test.d.ts +2 -0
  762. package/dist/formatters/feedback.test.d.ts.map +1 -0
  763. package/dist/formatters/feedback.test.js +112 -0
  764. package/dist/formatters/feedback.test.js.map +1 -0
  765. package/dist/formatters/handshake.d.ts +39 -0
  766. package/dist/formatters/handshake.d.ts.map +1 -1
  767. package/dist/formatters/handshake.js +133 -3
  768. package/dist/formatters/handshake.js.map +1 -1
  769. package/dist/formatters/orient.coherencyCheckTag.test.d.ts +2 -0
  770. package/dist/formatters/orient.coherencyCheckTag.test.d.ts.map +1 -0
  771. package/dist/formatters/orient.coherencyCheckTag.test.js +22 -0
  772. package/dist/formatters/orient.coherencyCheckTag.test.js.map +1 -0
  773. package/dist/formatters/orient.d.ts +245 -8
  774. package/dist/formatters/orient.d.ts.map +1 -1
  775. package/dist/formatters/orient.js +277 -42
  776. package/dist/formatters/orient.js.map +1 -1
  777. package/dist/formatters/orient.rcrtMiss.test.d.ts +2 -0
  778. package/dist/formatters/orient.rcrtMiss.test.d.ts.map +1 -0
  779. package/dist/formatters/orient.rcrtMiss.test.js +146 -0
  780. package/dist/formatters/orient.rcrtMiss.test.js.map +1 -0
  781. package/dist/formatters/orient.rituals.test.d.ts +2 -0
  782. package/dist/formatters/orient.rituals.test.d.ts.map +1 -0
  783. package/dist/formatters/orient.rituals.test.js +70 -0
  784. package/dist/formatters/orient.rituals.test.js.map +1 -0
  785. package/dist/formatters/orient.shapeAdvisorySummary.test.d.ts +2 -0
  786. package/dist/formatters/orient.shapeAdvisorySummary.test.d.ts.map +1 -0
  787. package/dist/formatters/orient.shapeAdvisorySummary.test.js +62 -0
  788. package/dist/formatters/orient.shapeAdvisorySummary.test.js.map +1 -0
  789. package/dist/formatters/orientDegradation.d.ts +21 -0
  790. package/dist/formatters/orientDegradation.d.ts.map +1 -0
  791. package/dist/formatters/orientDegradation.js +33 -0
  792. package/dist/formatters/orientDegradation.js.map +1 -0
  793. package/dist/formatters/orientDirection.d.ts +77 -0
  794. package/dist/formatters/orientDirection.d.ts.map +1 -0
  795. package/dist/formatters/orientDirection.js +94 -0
  796. package/dist/formatters/orientDirection.js.map +1 -0
  797. package/dist/formatters/orientDirection.test.d.ts +2 -0
  798. package/dist/formatters/orientDirection.test.d.ts.map +1 -0
  799. package/dist/formatters/orientDirection.test.js +193 -0
  800. package/dist/formatters/orientDirection.test.js.map +1 -0
  801. package/dist/formatters/orientRetrievalMiss.d.ts +30 -0
  802. package/dist/formatters/orientRetrievalMiss.d.ts.map +1 -0
  803. package/dist/formatters/orientRetrievalMiss.js +24 -0
  804. package/dist/formatters/orientRetrievalMiss.js.map +1 -0
  805. package/dist/formatters/promote.d.ts +49 -0
  806. package/dist/formatters/promote.d.ts.map +1 -1
  807. package/dist/formatters/promote.js +40 -0
  808. package/dist/formatters/promote.js.map +1 -1
  809. package/dist/formatters/proposals.js +2 -2
  810. package/dist/formatters/proposals.js.map +1 -1
  811. package/dist/formatters/questions.d.ts +100 -0
  812. package/dist/formatters/questions.d.ts.map +1 -0
  813. package/dist/formatters/questions.js +163 -0
  814. package/dist/formatters/questions.js.map +1 -0
  815. package/dist/formatters/questions.test.d.ts +2 -0
  816. package/dist/formatters/questions.test.d.ts.map +1 -0
  817. package/dist/formatters/questions.test.js +211 -0
  818. package/dist/formatters/questions.test.js.map +1 -0
  819. package/dist/formatters/relate.d.ts +14 -1
  820. package/dist/formatters/relate.d.ts.map +1 -1
  821. package/dist/formatters/relate.js +12 -3
  822. package/dist/formatters/relate.js.map +1 -1
  823. package/dist/formatters/relate.test.d.ts +2 -0
  824. package/dist/formatters/relate.test.d.ts.map +1 -0
  825. package/dist/formatters/relate.test.js +81 -0
  826. package/dist/formatters/relate.test.js.map +1 -0
  827. package/dist/formatters/scoreboard.d.ts +11 -0
  828. package/dist/formatters/scoreboard.d.ts.map +1 -0
  829. package/dist/formatters/scoreboard.js +164 -0
  830. package/dist/formatters/scoreboard.js.map +1 -0
  831. package/dist/formatters/scoreboard.test.d.ts +2 -0
  832. package/dist/formatters/scoreboard.test.d.ts.map +1 -0
  833. package/dist/formatters/scoreboard.test.js +303 -0
  834. package/dist/formatters/scoreboard.test.js.map +1 -0
  835. package/dist/formatters/search.d.ts.map +1 -1
  836. package/dist/formatters/search.js +17 -1
  837. package/dist/formatters/search.js.map +1 -1
  838. package/dist/formatters/search.test.d.ts +2 -0
  839. package/dist/formatters/search.test.d.ts.map +1 -0
  840. package/dist/formatters/search.test.js +46 -0
  841. package/dist/formatters/search.test.js.map +1 -0
  842. package/dist/formatters/session-feedback.test.d.ts +2 -0
  843. package/dist/formatters/session-feedback.test.d.ts.map +1 -0
  844. package/dist/formatters/session-feedback.test.js +61 -0
  845. package/dist/formatters/session-feedback.test.js.map +1 -0
  846. package/dist/formatters/session.d.ts +123 -5
  847. package/dist/formatters/session.d.ts.map +1 -1
  848. package/dist/formatters/session.js +317 -12
  849. package/dist/formatters/session.js.map +1 -1
  850. package/dist/formatters/shape.d.ts +54 -0
  851. package/dist/formatters/shape.d.ts.map +1 -0
  852. package/dist/formatters/shape.js +97 -0
  853. package/dist/formatters/shape.js.map +1 -0
  854. package/dist/formatters/shape.test.d.ts +2 -0
  855. package/dist/formatters/shape.test.d.ts.map +1 -0
  856. package/dist/formatters/shape.test.js +80 -0
  857. package/dist/formatters/shape.test.js.map +1 -0
  858. package/dist/formatters/spineCheck.d.ts +76 -0
  859. package/dist/formatters/spineCheck.d.ts.map +1 -0
  860. package/dist/formatters/spineCheck.js +111 -0
  861. package/dist/formatters/spineCheck.js.map +1 -0
  862. package/dist/formatters/update.d.ts +3 -0
  863. package/dist/formatters/update.d.ts.map +1 -1
  864. package/dist/formatters/update.js +4 -0
  865. package/dist/formatters/update.js.map +1 -1
  866. package/dist/formatters/verify.d.ts +12 -4
  867. package/dist/formatters/verify.d.ts.map +1 -1
  868. package/dist/formatters/verify.js +20 -2
  869. package/dist/formatters/verify.js.map +1 -1
  870. package/dist/generated/healthGapKinds.generated.d.ts +12 -0
  871. package/dist/generated/healthGapKinds.generated.d.ts.map +1 -0
  872. package/dist/generated/healthGapKinds.generated.js +24 -0
  873. package/dist/generated/healthGapKinds.generated.js.map +1 -0
  874. package/dist/generated/relationTypes.generated.d.ts +12 -0
  875. package/dist/generated/relationTypes.generated.d.ts.map +1 -0
  876. package/dist/generated/relationTypes.generated.js +11 -0
  877. package/dist/generated/relationTypes.generated.js.map +1 -0
  878. package/dist/generated/routeLatencyBudget.generated.d.ts +55 -0
  879. package/dist/generated/routeLatencyBudget.generated.d.ts.map +1 -0
  880. package/dist/generated/routeLatencyBudget.generated.js +351 -0
  881. package/dist/generated/routeLatencyBudget.generated.js.map +1 -0
  882. package/dist/generated/sourceSurfaces.generated.d.ts +12 -0
  883. package/dist/generated/sourceSurfaces.generated.d.ts.map +1 -0
  884. package/dist/generated/sourceSurfaces.generated.js +11 -0
  885. package/dist/generated/sourceSurfaces.generated.js.map +1 -0
  886. package/dist/generators/adapters.d.ts +33 -0
  887. package/dist/generators/adapters.d.ts.map +1 -1
  888. package/dist/generators/adapters.js +68 -8
  889. package/dist/generators/adapters.js.map +1 -1
  890. package/dist/generators/archetypes.d.ts.map +1 -1
  891. package/dist/generators/archetypes.js +46 -9
  892. package/dist/generators/archetypes.js.map +1 -1
  893. package/dist/generators/archetypes.test.js +35 -0
  894. package/dist/generators/archetypes.test.js.map +1 -1
  895. package/dist/generators/boundary-manifest.d.ts +29 -0
  896. package/dist/generators/boundary-manifest.d.ts.map +1 -0
  897. package/dist/generators/boundary-manifest.js +183 -0
  898. package/dist/generators/boundary-manifest.js.map +1 -0
  899. package/dist/generators/boundary-manifest.real-file.test.d.ts +2 -0
  900. package/dist/generators/boundary-manifest.real-file.test.d.ts.map +1 -0
  901. package/dist/generators/boundary-manifest.real-file.test.js +70 -0
  902. package/dist/generators/boundary-manifest.real-file.test.js.map +1 -0
  903. package/dist/generators/boundary-manifest.test.d.ts +2 -0
  904. package/dist/generators/boundary-manifest.test.d.ts.map +1 -0
  905. package/dist/generators/boundary-manifest.test.js +91 -0
  906. package/dist/generators/boundary-manifest.test.js.map +1 -0
  907. package/dist/generators/chain-classifier-kernel-client-drift.test.d.ts +2 -0
  908. package/dist/generators/chain-classifier-kernel-client-drift.test.d.ts.map +1 -0
  909. package/dist/generators/chain-classifier-kernel-client-drift.test.js +41 -0
  910. package/dist/generators/chain-classifier-kernel-client-drift.test.js.map +1 -0
  911. package/dist/generators/chain-classifier.d.ts +67 -14
  912. package/dist/generators/chain-classifier.d.ts.map +1 -1
  913. package/dist/generators/chain-classifier.js +46 -174
  914. package/dist/generators/chain-classifier.js.map +1 -1
  915. package/dist/generators/chain-rules.d.ts +3 -3
  916. package/dist/generators/chain-rules.d.ts.map +1 -1
  917. package/dist/generators/chain-rules.js +118 -6
  918. package/dist/generators/chain-rules.js.map +1 -1
  919. package/dist/generators/chain-rules.test.js +273 -4
  920. package/dist/generators/chain-rules.test.js.map +1 -1
  921. package/dist/generators/context-md.js +7 -7
  922. package/dist/generators/context-md.js.map +1 -1
  923. package/dist/generators/manifest.d.ts +115 -0
  924. package/dist/generators/manifest.d.ts.map +1 -0
  925. package/dist/generators/manifest.js +277 -0
  926. package/dist/generators/manifest.js.map +1 -0
  927. package/dist/generators/portable-knowledge.d.ts +24 -2
  928. package/dist/generators/portable-knowledge.d.ts.map +1 -1
  929. package/dist/generators/portable-knowledge.js +97 -2
  930. package/dist/generators/portable-knowledge.js.map +1 -1
  931. package/dist/generators/portable-knowledge.test.js +43 -0
  932. package/dist/generators/portable-knowledge.test.js.map +1 -1
  933. package/dist/generators/region-projections.d.ts +18 -0
  934. package/dist/generators/region-projections.d.ts.map +1 -0
  935. package/dist/generators/region-projections.js +49 -0
  936. package/dist/generators/region-projections.js.map +1 -0
  937. package/dist/generators/region-projections.test.d.ts +2 -0
  938. package/dist/generators/region-projections.test.d.ts.map +1 -0
  939. package/dist/generators/region-projections.test.js +63 -0
  940. package/dist/generators/region-projections.test.js.map +1 -0
  941. package/dist/generators/region.d.ts +24 -0
  942. package/dist/generators/region.d.ts.map +1 -0
  943. package/dist/generators/region.js +87 -0
  944. package/dist/generators/region.js.map +1 -0
  945. package/dist/generators/region.test.d.ts +2 -0
  946. package/dist/generators/region.test.d.ts.map +1 -0
  947. package/dist/generators/region.test.js +126 -0
  948. package/dist/generators/region.test.js.map +1 -0
  949. package/dist/generators/surface-profiles.d.ts +1 -2
  950. package/dist/generators/surface-profiles.d.ts.map +1 -1
  951. package/dist/generators/surface-profiles.js.map +1 -1
  952. package/dist/index.d.ts +0 -5
  953. package/dist/index.d.ts.map +1 -1
  954. package/dist/index.js +422 -186
  955. package/dist/index.js.map +1 -1
  956. package/dist/lib/__tests__/legalRelationTypes.test.d.ts +2 -0
  957. package/dist/lib/__tests__/legalRelationTypes.test.d.ts.map +1 -0
  958. package/dist/lib/__tests__/legalRelationTypes.test.js +98 -0
  959. package/dist/lib/__tests__/legalRelationTypes.test.js.map +1 -0
  960. package/dist/lib/__tests__/parseFields.test.d.ts +2 -0
  961. package/dist/lib/__tests__/parseFields.test.d.ts.map +1 -0
  962. package/dist/lib/__tests__/parseFields.test.js +40 -0
  963. package/dist/lib/__tests__/parseFields.test.js.map +1 -0
  964. package/dist/lib/activation.d.ts.map +1 -1
  965. package/dist/lib/activation.js +8 -4
  966. package/dist/lib/activation.js.map +1 -1
  967. package/dist/lib/activation.test.js +6 -6
  968. package/dist/lib/activation.test.js.map +1 -1
  969. package/dist/lib/adminConfig.d.ts +48 -0
  970. package/dist/lib/adminConfig.d.ts.map +1 -0
  971. package/dist/lib/adminConfig.js +130 -0
  972. package/dist/lib/adminConfig.js.map +1 -0
  973. package/dist/lib/canonicalRefs.d.ts +160 -0
  974. package/dist/lib/canonicalRefs.d.ts.map +1 -0
  975. package/dist/lib/canonicalRefs.js +169 -0
  976. package/dist/lib/canonicalRefs.js.map +1 -0
  977. package/dist/lib/captureGrounding.d.ts +53 -0
  978. package/dist/lib/captureGrounding.d.ts.map +1 -0
  979. package/dist/lib/captureGrounding.js +108 -0
  980. package/dist/lib/captureGrounding.js.map +1 -0
  981. package/dist/lib/client.d.ts +42 -15
  982. package/dist/lib/client.d.ts.map +1 -1
  983. package/dist/lib/client.js +224 -66
  984. package/dist/lib/client.js.map +1 -1
  985. package/dist/lib/collectionRegistry.d.ts +80 -0
  986. package/dist/lib/collectionRegistry.d.ts.map +1 -0
  987. package/dist/lib/collectionRegistry.js +170 -0
  988. package/dist/lib/collectionRegistry.js.map +1 -0
  989. package/dist/lib/commanderOptions.d.ts +8 -0
  990. package/dist/lib/commanderOptions.d.ts.map +1 -0
  991. package/dist/lib/commanderOptions.js +10 -0
  992. package/dist/lib/commanderOptions.js.map +1 -0
  993. package/dist/lib/compose-wrapup-view.d.ts +48 -0
  994. package/dist/lib/compose-wrapup-view.d.ts.map +1 -0
  995. package/dist/lib/compose-wrapup-view.js +37 -0
  996. package/dist/lib/compose-wrapup-view.js.map +1 -0
  997. package/dist/lib/config.d.ts +102 -54
  998. package/dist/lib/config.d.ts.map +1 -1
  999. package/dist/lib/config.js +260 -163
  1000. package/dist/lib/config.js.map +1 -1
  1001. package/dist/lib/configResult.d.ts +103 -0
  1002. package/dist/lib/configResult.d.ts.map +1 -0
  1003. package/dist/lib/configResult.js +180 -0
  1004. package/dist/lib/configResult.js.map +1 -0
  1005. package/dist/lib/connectKeyLabel.d.ts +9 -0
  1006. package/dist/lib/connectKeyLabel.d.ts.map +1 -0
  1007. package/dist/lib/connectKeyLabel.js +12 -0
  1008. package/dist/lib/connectKeyLabel.js.map +1 -0
  1009. package/dist/lib/constants.d.ts +5 -1
  1010. package/dist/lib/constants.d.ts.map +1 -1
  1011. package/dist/lib/constants.js +8 -1
  1012. package/dist/lib/constants.js.map +1 -1
  1013. package/dist/lib/conversation.d.ts +36 -0
  1014. package/dist/lib/conversation.d.ts.map +1 -0
  1015. package/dist/lib/conversation.js +66 -0
  1016. package/dist/lib/conversation.js.map +1 -0
  1017. package/dist/lib/createEntryResult.d.ts +34 -0
  1018. package/dist/lib/createEntryResult.d.ts.map +1 -0
  1019. package/dist/lib/createEntryResult.js +12 -0
  1020. package/dist/lib/createEntryResult.js.map +1 -0
  1021. package/dist/lib/envKeySnapshot.d.ts +10 -0
  1022. package/dist/lib/envKeySnapshot.d.ts.map +1 -0
  1023. package/dist/lib/envKeySnapshot.js +30 -0
  1024. package/dist/lib/envKeySnapshot.js.map +1 -0
  1025. package/dist/lib/errors.d.ts +67 -0
  1026. package/dist/lib/errors.d.ts.map +1 -1
  1027. package/dist/lib/errors.js +67 -0
  1028. package/dist/lib/errors.js.map +1 -1
  1029. package/dist/lib/frontmatter.d.ts +55 -0
  1030. package/dist/lib/frontmatter.d.ts.map +1 -0
  1031. package/dist/lib/frontmatter.js +92 -0
  1032. package/dist/lib/frontmatter.js.map +1 -0
  1033. package/dist/lib/frontmatter.test.d.ts +15 -0
  1034. package/dist/lib/frontmatter.test.d.ts.map +1 -0
  1035. package/dist/lib/frontmatter.test.js +98 -0
  1036. package/dist/lib/frontmatter.test.js.map +1 -0
  1037. package/dist/lib/gatewayTimeout.d.ts +88 -0
  1038. package/dist/lib/gatewayTimeout.d.ts.map +1 -0
  1039. package/dist/lib/gatewayTimeout.js +118 -0
  1040. package/dist/lib/gatewayTimeout.js.map +1 -0
  1041. package/dist/lib/gitEnvLeakKeysParity.test.d.ts +2 -0
  1042. package/dist/lib/gitEnvLeakKeysParity.test.d.ts.map +1 -0
  1043. package/dist/lib/gitEnvLeakKeysParity.test.js +73 -0
  1044. package/dist/lib/gitEnvLeakKeysParity.test.js.map +1 -0
  1045. package/dist/lib/glossary.js +1 -1
  1046. package/dist/lib/glossary.js.map +1 -1
  1047. package/dist/lib/hook-intents.d.ts +51 -0
  1048. package/dist/lib/hook-intents.d.ts.map +1 -0
  1049. package/dist/lib/hook-intents.js +85 -0
  1050. package/dist/lib/hook-intents.js.map +1 -0
  1051. package/dist/lib/inferSourceDate.d.ts +12 -0
  1052. package/dist/lib/inferSourceDate.d.ts.map +1 -0
  1053. package/dist/lib/inferSourceDate.js +44 -0
  1054. package/dist/lib/inferSourceDate.js.map +1 -0
  1055. package/dist/lib/kernelEnvelope.d.ts +31 -0
  1056. package/dist/lib/kernelEnvelope.d.ts.map +1 -0
  1057. package/dist/lib/kernelEnvelope.js +52 -0
  1058. package/dist/lib/kernelEnvelope.js.map +1 -0
  1059. package/dist/lib/legalRelationTypes.d.ts +25 -0
  1060. package/dist/lib/legalRelationTypes.d.ts.map +1 -0
  1061. package/dist/lib/legalRelationTypes.js +94 -0
  1062. package/dist/lib/legalRelationTypes.js.map +1 -0
  1063. package/dist/lib/localBinding.d.ts +86 -0
  1064. package/dist/lib/localBinding.d.ts.map +1 -0
  1065. package/dist/lib/localBinding.js +173 -0
  1066. package/dist/lib/localBinding.js.map +1 -0
  1067. package/dist/lib/method-registry.d.ts +37 -0
  1068. package/dist/lib/method-registry.d.ts.map +1 -0
  1069. package/dist/lib/method-registry.js +41 -0
  1070. package/dist/lib/method-registry.js.map +1 -0
  1071. package/dist/lib/normalizeMaterializedFilename.d.ts +28 -0
  1072. package/dist/lib/normalizeMaterializedFilename.d.ts.map +1 -0
  1073. package/dist/lib/normalizeMaterializedFilename.js +56 -0
  1074. package/dist/lib/normalizeMaterializedFilename.js.map +1 -0
  1075. package/dist/lib/normalizeMaterializedFilename.test.d.ts +16 -0
  1076. package/dist/lib/normalizeMaterializedFilename.test.d.ts.map +1 -0
  1077. package/dist/lib/normalizeMaterializedFilename.test.js +90 -0
  1078. package/dist/lib/normalizeMaterializedFilename.test.js.map +1 -0
  1079. package/dist/lib/notice-marker.d.ts +3 -0
  1080. package/dist/lib/notice-marker.d.ts.map +1 -0
  1081. package/dist/lib/notice-marker.js +223 -0
  1082. package/dist/lib/notice-marker.js.map +1 -0
  1083. package/dist/lib/onboarding-path-b.d.ts.map +1 -1
  1084. package/dist/lib/onboarding-path-b.js +42 -13
  1085. package/dist/lib/onboarding-path-b.js.map +1 -1
  1086. package/dist/lib/onboarding-shared.d.ts +4 -4
  1087. package/dist/lib/onboarding-shared.d.ts.map +1 -1
  1088. package/dist/lib/onboarding-shared.js +7 -22
  1089. package/dist/lib/onboarding-shared.js.map +1 -1
  1090. package/dist/lib/onboarding.d.ts.map +1 -1
  1091. package/dist/lib/onboarding.js +12 -4
  1092. package/dist/lib/onboarding.js.map +1 -1
  1093. package/dist/lib/parseFields.d.ts +19 -0
  1094. package/dist/lib/parseFields.d.ts.map +1 -0
  1095. package/dist/lib/parseFields.js +49 -0
  1096. package/dist/lib/parseFields.js.map +1 -0
  1097. package/dist/lib/previewBanner.d.ts +9 -0
  1098. package/dist/lib/previewBanner.d.ts.map +1 -0
  1099. package/dist/lib/previewBanner.js +37 -0
  1100. package/dist/lib/previewBanner.js.map +1 -0
  1101. package/dist/lib/productbrain-files.d.ts +94 -0
  1102. package/dist/lib/productbrain-files.d.ts.map +1 -0
  1103. package/dist/lib/productbrain-files.js +214 -0
  1104. package/dist/lib/productbrain-files.js.map +1 -0
  1105. package/dist/lib/productbrain-files.test.d.ts +2 -0
  1106. package/dist/lib/productbrain-files.test.d.ts.map +1 -0
  1107. package/dist/lib/productbrain-files.test.js +293 -0
  1108. package/dist/lib/productbrain-files.test.js.map +1 -0
  1109. package/dist/lib/profiles.d.ts +53 -5
  1110. package/dist/lib/profiles.d.ts.map +1 -1
  1111. package/dist/lib/profiles.js +77 -23
  1112. package/dist/lib/profiles.js.map +1 -1
  1113. package/dist/lib/projectConfig.d.ts +81 -0
  1114. package/dist/lib/projectConfig.d.ts.map +1 -0
  1115. package/dist/lib/projectConfig.js +157 -0
  1116. package/dist/lib/projectConfig.js.map +1 -0
  1117. package/dist/lib/rate-limit.d.ts +38 -0
  1118. package/dist/lib/rate-limit.d.ts.map +1 -0
  1119. package/dist/lib/rate-limit.js +83 -0
  1120. package/dist/lib/rate-limit.js.map +1 -0
  1121. package/dist/lib/reportedProfile.d.ts +18 -0
  1122. package/dist/lib/reportedProfile.d.ts.map +1 -0
  1123. package/dist/lib/reportedProfile.js +144 -0
  1124. package/dist/lib/reportedProfile.js.map +1 -0
  1125. package/dist/lib/runner.d.ts +8 -0
  1126. package/dist/lib/runner.d.ts.map +1 -1
  1127. package/dist/lib/runner.js +23 -0
  1128. package/dist/lib/runner.js.map +1 -1
  1129. package/dist/lib/session.d.ts +113 -4
  1130. package/dist/lib/session.d.ts.map +1 -1
  1131. package/dist/lib/session.js +323 -13
  1132. package/dist/lib/session.js.map +1 -1
  1133. package/dist/lib/sessionBinding.d.ts +61 -0
  1134. package/dist/lib/sessionBinding.d.ts.map +1 -0
  1135. package/dist/lib/sessionBinding.js +125 -0
  1136. package/dist/lib/sessionBinding.js.map +1 -0
  1137. package/dist/lib/sessionNotices.d.ts +57 -0
  1138. package/dist/lib/sessionNotices.d.ts.map +1 -0
  1139. package/dist/lib/sessionNotices.js +128 -0
  1140. package/dist/lib/sessionNotices.js.map +1 -0
  1141. package/dist/lib/sessionNotices.test.d.ts +2 -0
  1142. package/dist/lib/sessionNotices.test.d.ts.map +1 -0
  1143. package/dist/lib/sessionNotices.test.js +48 -0
  1144. package/dist/lib/sessionNotices.test.js.map +1 -0
  1145. package/dist/lib/spinner.js +2 -2
  1146. package/dist/lib/spinner.js.map +1 -1
  1147. package/dist/lib/startup-resolution-signals.d.ts +34 -0
  1148. package/dist/lib/startup-resolution-signals.d.ts.map +1 -0
  1149. package/dist/lib/startup-resolution-signals.js +116 -0
  1150. package/dist/lib/startup-resolution-signals.js.map +1 -0
  1151. package/dist/lib/startup-resolution-signals.test.d.ts +2 -0
  1152. package/dist/lib/startup-resolution-signals.test.d.ts.map +1 -0
  1153. package/dist/lib/startup-resolution-signals.test.js +113 -0
  1154. package/dist/lib/startup-resolution-signals.test.js.map +1 -0
  1155. package/dist/lib/startup-signals.d.ts +12 -0
  1156. package/dist/lib/startup-signals.d.ts.map +1 -0
  1157. package/dist/lib/startup-signals.js +172 -0
  1158. package/dist/lib/startup-signals.js.map +1 -0
  1159. package/dist/lib/startup-signals.test.d.ts +2 -0
  1160. package/dist/lib/startup-signals.test.d.ts.map +1 -0
  1161. package/dist/lib/startup-signals.test.js +165 -0
  1162. package/dist/lib/startup-signals.test.js.map +1 -0
  1163. package/dist/lib/state.d.ts +58 -0
  1164. package/dist/lib/state.d.ts.map +1 -0
  1165. package/dist/lib/state.js +95 -0
  1166. package/dist/lib/state.js.map +1 -0
  1167. package/dist/lib/strip.d.ts +8 -0
  1168. package/dist/lib/strip.d.ts.map +1 -1
  1169. package/dist/lib/strip.js +23 -1
  1170. package/dist/lib/strip.js.map +1 -1
  1171. package/dist/lib/style.d.ts +3 -1
  1172. package/dist/lib/style.d.ts.map +1 -1
  1173. package/dist/lib/style.js +9 -2
  1174. package/dist/lib/style.js.map +1 -1
  1175. package/dist/lib/tokenConstants.d.ts +19 -0
  1176. package/dist/lib/tokenConstants.d.ts.map +1 -0
  1177. package/dist/lib/tokenConstants.js +19 -0
  1178. package/dist/lib/tokenConstants.js.map +1 -0
  1179. package/dist/lib/update-check.d.ts +56 -0
  1180. package/dist/lib/update-check.d.ts.map +1 -0
  1181. package/dist/lib/update-check.js +296 -0
  1182. package/dist/lib/update-check.js.map +1 -0
  1183. package/dist/lib/upgrade-runner.d.ts +22 -0
  1184. package/dist/lib/upgrade-runner.d.ts.map +1 -0
  1185. package/dist/lib/upgrade-runner.js +110 -0
  1186. package/dist/lib/upgrade-runner.js.map +1 -0
  1187. package/dist/lib/workspace-probe.d.ts +3 -0
  1188. package/dist/lib/workspace-probe.d.ts.map +1 -1
  1189. package/dist/lib/workspace-probe.js +8 -14
  1190. package/dist/lib/workspace-probe.js.map +1 -1
  1191. package/dist/lib/workspaceNotice.d.ts +202 -0
  1192. package/dist/lib/workspaceNotice.d.ts.map +1 -0
  1193. package/dist/lib/workspaceNotice.js +345 -0
  1194. package/dist/lib/workspaceNotice.js.map +1 -0
  1195. package/dist/lib/workspaceVocabCache.d.ts +60 -0
  1196. package/dist/lib/workspaceVocabCache.d.ts.map +1 -0
  1197. package/dist/lib/workspaceVocabCache.js +98 -0
  1198. package/dist/lib/workspaceVocabCache.js.map +1 -0
  1199. package/dist/registerEntryCommands.d.ts +17 -0
  1200. package/dist/registerEntryCommands.d.ts.map +1 -0
  1201. package/dist/registerEntryCommands.js +83 -0
  1202. package/dist/registerEntryCommands.js.map +1 -0
  1203. package/dist/registerOutcomeCommands.d.ts +24 -0
  1204. package/dist/registerOutcomeCommands.d.ts.map +1 -0
  1205. package/dist/registerOutcomeCommands.js +27 -0
  1206. package/dist/registerOutcomeCommands.js.map +1 -0
  1207. package/dist/registerProposalCommands.d.ts +13 -0
  1208. package/dist/registerProposalCommands.d.ts.map +1 -0
  1209. package/dist/registerProposalCommands.js +76 -0
  1210. package/dist/registerProposalCommands.js.map +1 -0
  1211. package/dist/scoreboard/diagnose.d.ts +226 -0
  1212. package/dist/scoreboard/diagnose.d.ts.map +1 -0
  1213. package/dist/scoreboard/diagnose.js +344 -0
  1214. package/dist/scoreboard/diagnose.js.map +1 -0
  1215. package/dist/scoreboard/diagnose.test.d.ts +15 -0
  1216. package/dist/scoreboard/diagnose.test.d.ts.map +1 -0
  1217. package/dist/scoreboard/diagnose.test.js +355 -0
  1218. package/dist/scoreboard/diagnose.test.js.map +1 -0
  1219. package/dist/scoreboard/floors.d.ts +47 -0
  1220. package/dist/scoreboard/floors.d.ts.map +1 -0
  1221. package/dist/scoreboard/floors.js +33 -0
  1222. package/dist/scoreboard/floors.js.map +1 -0
  1223. package/dist/scoreboard/localDrift.d.ts +23 -0
  1224. package/dist/scoreboard/localDrift.d.ts.map +1 -0
  1225. package/dist/scoreboard/localDrift.js +111 -0
  1226. package/dist/scoreboard/localDrift.js.map +1 -0
  1227. package/dist/scoreboard/localDrift.test.d.ts +9 -0
  1228. package/dist/scoreboard/localDrift.test.d.ts.map +1 -0
  1229. package/dist/scoreboard/localDrift.test.js +82 -0
  1230. package/dist/scoreboard/localDrift.test.js.map +1 -0
  1231. package/dist/setup/__tests__/coach-traces.test.d.ts +2 -0
  1232. package/dist/setup/__tests__/coach-traces.test.d.ts.map +1 -0
  1233. package/dist/setup/__tests__/coach-traces.test.js +189 -0
  1234. package/dist/setup/__tests__/coach-traces.test.js.map +1 -0
  1235. package/dist/setup/__tests__/setup-commands.test.d.ts +2 -0
  1236. package/dist/setup/__tests__/setup-commands.test.d.ts.map +1 -0
  1237. package/dist/setup/__tests__/setup-commands.test.js +177 -0
  1238. package/dist/setup/__tests__/setup-commands.test.js.map +1 -0
  1239. package/dist/setup/__tests__/state-machine.test.d.ts +2 -0
  1240. package/dist/setup/__tests__/state-machine.test.d.ts.map +1 -0
  1241. package/dist/setup/__tests__/state-machine.test.js +341 -0
  1242. package/dist/setup/__tests__/state-machine.test.js.map +1 -0
  1243. package/dist/setup/detect-surfaces.d.ts +21 -0
  1244. package/dist/setup/detect-surfaces.d.ts.map +1 -0
  1245. package/dist/setup/detect-surfaces.js +39 -0
  1246. package/dist/setup/detect-surfaces.js.map +1 -0
  1247. package/dist/setup/manifest-writer.d.ts +17 -0
  1248. package/dist/setup/manifest-writer.d.ts.map +1 -0
  1249. package/dist/setup/manifest-writer.js +153 -0
  1250. package/dist/setup/manifest-writer.js.map +1 -0
  1251. package/dist/setup/perimeter.d.ts +72 -0
  1252. package/dist/setup/perimeter.d.ts.map +1 -0
  1253. package/dist/setup/perimeter.js +128 -0
  1254. package/dist/setup/perimeter.js.map +1 -0
  1255. package/dist/setup/state-machine.d.ts +67 -0
  1256. package/dist/setup/state-machine.d.ts.map +1 -0
  1257. package/dist/setup/state-machine.js +124 -0
  1258. package/dist/setup/state-machine.js.map +1 -0
  1259. package/dist/surfaces/__tests__/adapter.test.d.ts +2 -0
  1260. package/dist/surfaces/__tests__/adapter.test.d.ts.map +1 -0
  1261. package/dist/surfaces/__tests__/adapter.test.js +90 -0
  1262. package/dist/surfaces/__tests__/adapter.test.js.map +1 -0
  1263. package/dist/surfaces/__tests__/pb-setup-passthrough.test.d.ts +2 -0
  1264. package/dist/surfaces/__tests__/pb-setup-passthrough.test.d.ts.map +1 -0
  1265. package/dist/surfaces/__tests__/pb-setup-passthrough.test.js +132 -0
  1266. package/dist/surfaces/__tests__/pb-setup-passthrough.test.js.map +1 -0
  1267. package/dist/surfaces/__tests__/telemetry.test.d.ts +2 -0
  1268. package/dist/surfaces/__tests__/telemetry.test.d.ts.map +1 -0
  1269. package/dist/surfaces/__tests__/telemetry.test.js +55 -0
  1270. package/dist/surfaces/__tests__/telemetry.test.js.map +1 -0
  1271. package/dist/surfaces/adapter.d.ts +70 -0
  1272. package/dist/surfaces/adapter.d.ts.map +1 -0
  1273. package/dist/surfaces/adapter.js +2 -0
  1274. package/dist/surfaces/adapter.js.map +1 -0
  1275. package/dist/surfaces/adapters/claude.d.ts +3 -0
  1276. package/dist/surfaces/adapters/claude.d.ts.map +1 -0
  1277. package/dist/surfaces/adapters/claude.js +67 -0
  1278. package/dist/surfaces/adapters/claude.js.map +1 -0
  1279. package/dist/surfaces/adapters/codex.d.ts +3 -0
  1280. package/dist/surfaces/adapters/codex.d.ts.map +1 -0
  1281. package/dist/surfaces/adapters/codex.js +61 -0
  1282. package/dist/surfaces/adapters/codex.js.map +1 -0
  1283. package/dist/surfaces/adapters/copilot.d.ts +3 -0
  1284. package/dist/surfaces/adapters/copilot.d.ts.map +1 -0
  1285. package/dist/surfaces/adapters/copilot.js +59 -0
  1286. package/dist/surfaces/adapters/copilot.js.map +1 -0
  1287. package/dist/surfaces/adapters/cursor.d.ts +3 -0
  1288. package/dist/surfaces/adapters/cursor.d.ts.map +1 -0
  1289. package/dist/surfaces/adapters/cursor.js +78 -0
  1290. package/dist/surfaces/adapters/cursor.js.map +1 -0
  1291. package/dist/surfaces/registry.d.ts +76 -0
  1292. package/dist/surfaces/registry.d.ts.map +1 -0
  1293. package/dist/surfaces/registry.js +117 -0
  1294. package/dist/surfaces/registry.js.map +1 -0
  1295. package/dist/surfaces/telemetry.d.ts +17 -0
  1296. package/dist/surfaces/telemetry.d.ts.map +1 -0
  1297. package/dist/surfaces/telemetry.js +31 -0
  1298. package/dist/surfaces/telemetry.js.map +1 -0
  1299. package/package.json +7 -3
  1300. package/templates/method-registry.json +16 -0
  1301. package/dist/__tests__/setup.test.d.ts +0 -2
  1302. package/dist/__tests__/setup.test.d.ts.map +0 -1
  1303. package/dist/__tests__/setup.test.js +0 -141
  1304. package/dist/__tests__/setup.test.js.map +0 -1
  1305. package/dist/generators/__tests__/surface-profiles.test.d.ts +0 -2
  1306. package/dist/generators/__tests__/surface-profiles.test.d.ts.map +0 -1
  1307. package/dist/generators/__tests__/surface-profiles.test.js +0 -89
  1308. package/dist/generators/__tests__/surface-profiles.test.js.map +0 -1
  1309. package/dist/generators/chain-classifier.test.d.ts +0 -2
  1310. package/dist/generators/chain-classifier.test.d.ts.map +0 -1
  1311. package/dist/generators/chain-classifier.test.js +0 -257
  1312. package/dist/generators/chain-classifier.test.js.map +0 -1
  1313. package/dist/lib/onboarding-phases.d.ts +0 -9
  1314. package/dist/lib/onboarding-phases.d.ts.map +0 -1
  1315. package/dist/lib/onboarding-phases.js +0 -120
  1316. package/dist/lib/onboarding-phases.js.map +0 -1
@@ -0,0 +1,202 @@
1
+ /**
2
+ * WP-1 — Loud workspace identity on every Chain write. WP-714 S3 extended this to every
3
+ * Chain READ too (see `emitEffectiveTenantNotice`'s doc comment below for the read-path wiring).
4
+ *
5
+ * Running `pb` from a directory with no repo pin (e.g. `~/`) silently resolves the
6
+ * GLOBAL profile and writes to whichever Chain that points at — proven live: captures
7
+ * meant for one workspace landed on another. This module makes every Chain read or write
8
+ * NAME its target workspace on stderr, and qualifies the line LOUDLY when the binding is an
9
+ * unpinned fallback (`global`/`default` — no repo pin) so a wrong-Chain call is never
10
+ * silent. An explicit binding (`local`/`env`) gets a plain, non-alarming line.
11
+ *
12
+ * Label source — the PROFILE SLUG only, via `resolveReportedProfile()`: it returns
13
+ * `missing-pin` when the credential cascade has ALREADY refused (nothing to name — see the
14
+ * formatter below), and otherwise delegates to `resolveEffectiveProfile()`, whose contract
15
+ * the rest of this paragraph describes.
16
+ * Deliberately NOT a workspace-name probe: `resolveEffectiveProfile()` reports the
17
+ * *configured* pin even when it dangles (TEN-2163), while a probe resolves what
18
+ * `resolveConfig()` actually binds. On a dangling local pin the two DISAGREE — the
19
+ * profile says `source='local'` (a plain, reassuring line) while the probe returns the
20
+ * GLOBAL workspace the write really drifts to. That would print a non-alarming line over
21
+ * the exact silent-drift this notice exists to expose. One resolution path means the
22
+ * label and its qualifier can never contradict — and there is no per-write network
23
+ * round-trip in front of the write.
24
+ *
25
+ * Output contract — follows capture.ts's grounding banner (the JSON-safety pattern):
26
+ * - The notice is written to STDERR, never stdout, so strict-JSON stdout is byte-for-byte
27
+ * unchanged in every mode.
28
+ * - There is NO output-mode gate at all (WP-721). Every mode — `--json`, `--quiet`, plain TTY —
29
+ * gets the one-line-per-process identity notice. `--json` used to suppress the plain line for
30
+ * an explicit binding, which left an agent in a correctly pinned repo with a ZERO-BYTE stderr
31
+ * and no tenant signal whatsoever (see `emitEffectiveTenantNotice` below). TEN-3238 had
32
+ * already exempted the unpinned-fallback WARNING from that gate; WP-721 removed the gate.
33
+ *
34
+ * NOT compared here: the repo-local pin against the globally active `pb` profile (DEC-1632,
35
+ * TEN-3398/WP-720 — reversing part of WP-714 S3/PR #823). An earlier version of this module
36
+ * warned on that divergence on every read and write. But the pin exists precisely to OVERRIDE
37
+ * global, and `pb profile use` reconciles the two by default (`--local`/`--global` are the
38
+ * opt-in ways to diverge them) — so a divergence is only ever a deliberate act, never drift.
39
+ * Warning on it forever trained operators to ignore the warning: one global profile and ten
40
+ * pinned workspaces means nine permanent warnings on entirely correct setups. That comparison
41
+ * belongs at the POINT OF ACTION instead — `pb profile use --global <name>` says so once, right
42
+ * when an operator creates the divergence (see `commands/profile.ts`'s `pinnedElsewhere` note) —
43
+ * never ambiently on every read or write after the fact. The three comparisons that DO still
44
+ * belong here share one shape pin-vs-global didn't: *the effective tenant is not what your
45
+ * binding SAYS* — no explicit binding at all (the unpinned-fallback warning below), a credential
46
+ * silently overriding the binding (`env-key`/`local-key`/`cwd-key`, in the loud set below), or
47
+ * the binding moving mid-session (`sessionBinding.ts`'s refusal). Pin-vs-global was a different
48
+ * comparison that got mistaken for one of these.
49
+ *
50
+ * SSOT: one pure formatter + one thin emitter — called explicitly from the 7 write-command
51
+ * files (8 call sites) and once per process from the shared kernel wrapper (`client.ts`'s
52
+ * `kernelCall`/`kernelCallEnvelope`/`kernelCallWithSession` — TEN-3398/WP-711 follow-up wired
53
+ * the write path in too, see `emitEffectiveTenantNotice`'s doc comment below) — no per-command
54
+ * copy-paste.
55
+ *
56
+ * `pb admin` is a SEPARATE credential cascade (`adminConfig.ts`'s `resolveAdminConfig`) that
57
+ * deliberately excludes committed `config.json` siteUrl + CWD env files (TEN-1334) — it can
58
+ * resolve a different tenant than the cascade above, so it gets its own formatter-reusing
59
+ * emitter (`emitAdminTenantNotice`/`describeAdminTenantForRefusal` below) rather than sharing
60
+ * `emitEffectiveTenantNotice`'s guard or resolution path.
61
+ */
62
+ import { type ReportedProfileSource } from './reportedProfile.js';
63
+ import type { AdminConfigSource } from './adminConfig.js';
64
+ import { assertSessionStillBound } from './sessionBinding.js';
65
+ /** Inputs to the pure notice formatter. */
66
+ export interface EffectiveTenantNoticeInput {
67
+ /** Effective profile name (the configured pin / identity), or null when unconfigured. */
68
+ profile: string | null;
69
+ /** Where that profile came from — see resolveReportedProfile(). */
70
+ source: ReportedProfileSource;
71
+ }
72
+ /**
73
+ * Build the one-line target-workspace notice — or null when there is nothing to say.
74
+ *
75
+ * - `none` → null (not configured: nothing to name, stay silent).
76
+ * - `missing-pin` → null (declared project, no pin: the CLI REFUSES this write, so
77
+ * there is no target workspace to name — and never `→ unknown`).
78
+ * - `cwd-key` → LOUD, unnamed (a dotenv file here picked the Chain — same shape as
79
+ * `env-key`, different file).
80
+ * - `env-key` → LOUD, unnamed (an exported PRODUCTBRAIN_API_KEY picked the Chain;
81
+ * no profile describes it, so the write goes somewhere this process
82
+ * cannot name from config — TEN-3240).
83
+ * - `preview` → named + disposable (a deliberate `npm run pb:preview` binding; the
84
+ * PREVIEW banner already shouts, so this does not shout twice).
85
+ * - `global` / `default` → qualified + hint (no repo pin → an unpinned fallback binding).
86
+ * - `local` / `env` → plain (an explicit, intentional binding).
87
+ *
88
+ * Pure: no IO. The display label is the profile slug — a single resolution path, so the
89
+ * label and the qualifier can never contradict each other. DEC-1632/TEN-3398: no longer
90
+ * compares the pin against the globally active profile — see this module's header comment.
91
+ */
92
+ export declare function formatEffectiveTenantNotice({ profile, source }: EffectiveTenantNoticeInput): string | null;
93
+ /**
94
+ * The ONE place a `(profile, source)` pair maps to a human-readable label — no "→" prefix, so
95
+ * it can be embedded in prose (the tenant notice's base line, and WP-715's session-binding
96
+ * refusal message) rather than only ever printed as a standalone line. `formatEffectiveTenantNotice`
97
+ * above is the notice-line caller; `describeCurrentTenant` further down is the prose caller.
98
+ */
99
+ export declare function describeReportedTenant(profile: string | null, source: ReportedProfileSource): string | null;
100
+ /**
101
+ * Full prose description of the tenant CURRENTLY IN PLAY, for embedding in a message whose
102
+ * whole point is naming it — e.g. the session-binding refusal at `sessionBinding.ts` (WP-715).
103
+ * Unlike `formatEffectiveTenantNotice`, this never drops a shadowed repo pin: it states it explicitly, so
104
+ * a refusal reading "expected X, found Y" can never render the SAME tenant on both sides (the
105
+ * bug this closes — `resolveEffectiveProfile().profile` is blind to a credential override, so it
106
+ * always named the pin even while a foreign key was the one actually in play). Always returns a
107
+ * string — never null/undefined — so a caller building a "found ..." sentence never has to
108
+ * supply its own fallback.
109
+ *
110
+ * Deliberately UNQUOTED, including the shadowed pin: `sessionBinding.ts`'s
111
+ * `found "${found}"` template is the one place that wraps this whole value in quotes (the same
112
+ * template quotes `expected` too), so quoting the pin here as well double-quoted its closing
113
+ * mark (`...pin "product-brain""`) — cosmetic, but it reads like a typo in the exact message an
114
+ * agent surfaces to a human. This function owns zero quoting; the template owns all of it.
115
+ */
116
+ export declare function describeCurrentTenant(profile: string | null, source: ReportedProfileSource): string;
117
+ /**
118
+ * Live-resolving wrapper for `client.ts`'s `describeCurrent` thunk (WP-715): re-runs
119
+ * `resolveReportedProfile()` — never `resolveEffectiveProfile()`, which is blind to a
120
+ * credential override — so a session-binding refusal always names the tenant a call would
121
+ * actually land in. Kept here, not client.ts, so that call site stays a one-liner.
122
+ */
123
+ export declare function describeCurrentTenantForRefusal(): string;
124
+ /** Test-only: reset the once-per-process guard between cases (mirrors resetReportedProfileSnapshot). */
125
+ export declare function resetEffectiveTenantNoticeForTests(): void;
126
+ /**
127
+ * Resolve identity and write the target notice to STDERR — for every Chain read OR write, in
128
+ * EVERY output mode. WP-714 S3: originally called only from the 8 explicit write call sites;
129
+ * then ALSO called once per process from `client.ts`'s `kernelCall`/`kernelCallEnvelope` (the
130
+ * plain, non-session read path), so every read command that reaches the kernel announces too.
131
+ *
132
+ * ALSO wired into `kernelCallWithSession` (the write path) directly (TEN-3398 / WP-711
133
+ * follow-up). This comment used to claim that wiring was unnecessary because "every write
134
+ * command already calls this explicitly" — that premise was false: a census of every command
135
+ * module reaching `kernelCallWithSession` found 11 write commands (`accept-policy.ts`,
136
+ * `audit.ts`, `conflicts.ts`, `direction.ts`, `feedback.ts`, `handshake.ts`, `method.ts`,
137
+ * `questions.ts`, `rework.ts`, `shape.ts`, `verify.ts`) that never called this at all — a
138
+ * silent write with no target-workspace line, `chain.verifyEntry` and `rework.report` among
139
+ * them. A handful of write commands (`capture`/`promote`/`relate`/`restore`/`session`/
140
+ * `update`, plus the shared `organisationWrite.ts`/`runOrganisationWrite` helper used by
141
+ * `organisation.ts`/`organisationHierarchy.ts`) still call it explicitly, earlier in their own
142
+ * flow than any call `kernelCallWithSession` makes (e.g. `update`'s post-write
143
+ * `chain.getEntry` refresh) — the once-per-process guard makes `kernelCallWithSession`'s own
144
+ * call a no-op for those, so their output is unchanged bit-for-bit.
145
+ *
146
+ * Takes NO output-mode argument (WP-721). It used to take a `json` boolean that suppressed the
147
+ * plain line for an explicit binding; that parameter existed only to feed the gate, so it went
148
+ * with the gate rather than lingering as an ignored argument inviting the gate's return. The
149
+ * full reasoning is at the (now unconditional) emit inside the body — in short: `--json` is how
150
+ * agents invoke pb, agents are the bulk of both readers and writers, and a one-line-per-process
151
+ * stderr receipt naming the target Chain is the signal, not the noise. TEN-3238 had already made
152
+ * the unpinned-fallback WARNING survive `--json` for the same reason; WP-721 finished the job for
153
+ * the identity line itself. Safe in every mode because the notice goes to STDERR, so strict JSON
154
+ * on stdout stays byte-for-byte unchanged (and the CLI already writes unconditional stderr
155
+ * warnings elsewhere, e.g. the preview-scrub misroute in config.ts).
156
+ *
157
+ * DEC-1632/TEN-3398: does NOT compare the repo-local pin against the globally active profile —
158
+ * removed entirely (see this module's header comment). A prior version attached a "differs
159
+ * from the globally active Chain profile" line here that survived `--json` (WP-714 S3, PR
160
+ * #823); that line is gone, not just re-gated, because the pin existing to override global was
161
+ * never a warning-worthy condition in the first place.
162
+ *
163
+ * Never throws and does no network IO: a wrong/unreadable config degrades to silence, and
164
+ * the label comes from `resolveReportedProfile()` — only fast local config reads (no probe)
165
+ * in front of the call. It is safe to call immediately before any Chain read or write.
166
+ */
167
+ export declare function emitEffectiveTenantNotice(): Promise<void>;
168
+ /**
169
+ * `pb admin`'s own identity, as `resolveAdminConfig()` actually resolved it — for
170
+ * `emitAdminTenantNotice`/`describeAdminTenantForRefusal` below (TEN-3398 / WP-711 follow-up).
171
+ */
172
+ export interface AdminTenantIdentity {
173
+ profileName: string | null;
174
+ source: AdminConfigSource;
175
+ }
176
+ /** Test-only: reset admin's once-per-identity guard between cases. */
177
+ export declare function resetAdminTenantNoticeForTests(): void;
178
+ /**
179
+ * Resolve identity and write `pb admin`'s target notice to STDERR — once per DISTINCT identity
180
+ * per process (TEN-3398 / WP-711 follow-up: `adminCall` previously carried no notice at all,
181
+ * the one gap left after WP-712/WP-714 S3 covered every other kernel path).
182
+ *
183
+ * Unlike `emitEffectiveTenantNotice`, this NEVER suppresses under `--json` and has no
184
+ * "unpinned fallback" vs "explicit binding" distinction: every `pb admin` command can be a
185
+ * destructive bulk operation (`manage:delete-workspace`, `seed:backfill-starter`), so the
186
+ * identity line is never noise to cut, in any mode.
187
+ */
188
+ export declare function emitAdminTenantNotice(admin: AdminTenantIdentity): void;
189
+ /**
190
+ * Prose description of `pb admin`'s CURRENT tenant, for embedding in the
191
+ * `assertSessionStillBound` refusal message — mirrors `describeCurrentTenantForRefusal`'s role
192
+ * on the non-admin path, but resolved off `resolveAdminConfig()`'s own identity rather than
193
+ * `resolveReportedProfile()`, for the same reason `adminSourceToReportedSource` exists.
194
+ */
195
+ export declare function describeAdminTenantForRefusal(admin: AdminTenantIdentity): string;
196
+ /**
197
+ * Announce AND guard one `pb admin` call in a single call (TEN-3398 / WP-711 follow-up) — kept
198
+ * here, not `client.ts`'s `adminCall` (STD-2/DEC-1504 module-health budget), so `adminCall`
199
+ * stays a one-liner and this module owns the whole admin-identity story end to end.
200
+ */
201
+ export declare function guardAdminCall(admin: AdminTenantIdentity, session: Parameters<typeof assertSessionStillBound>[0], fingerprint: string): void;
202
+ //# sourceMappingURL=workspaceNotice.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"workspaceNotice.d.ts","sourceRoot":"","sources":["../../src/lib/workspaceNotice.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4DG;AAEH,OAAO,EAA0B,KAAK,qBAAqB,EAAE,MAAM,sBAAsB,CAAC;AAE1F,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAC1D,OAAO,EAAE,uBAAuB,EAAE,MAAM,qBAAqB,CAAC;AAE9D,2CAA2C;AAC3C,MAAM,WAAW,0BAA0B;IACzC,yFAAyF;IACzF,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,mEAAmE;IACnE,MAAM,EAAE,qBAAqB,CAAC;CAC/B;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAgB,2BAA2B,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,0BAA0B,GAAG,MAAM,GAAG,IAAI,CAG1G;AAED;;;;;GAKG;AACH,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,EAAE,MAAM,EAAE,qBAAqB,GAAG,MAAM,GAAG,IAAI,CAuB3G;AAmBD;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,EAAE,MAAM,EAAE,qBAAqB,GAAG,MAAM,CAInG;AAED;;;;;GAKG;AACH,wBAAgB,+BAA+B,IAAI,MAAM,CAGxD;AAYD,wGAAwG;AACxG,wBAAgB,kCAAkC,IAAI,IAAI,CAEzD;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAwCG;AACH,wBAAsB,yBAAyB,IAAI,OAAO,CAAC,IAAI,CAAC,CAuC/D;AAED;;;GAGG;AACH,MAAM,WAAW,mBAAmB;IAClC,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,MAAM,EAAE,iBAAiB,CAAC;CAC3B;AAwCD,sEAAsE;AACtE,wBAAgB,8BAA8B,IAAI,IAAI,CAErD;AAED;;;;;;;;;GASG;AACH,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,mBAAmB,GAAG,IAAI,CAStE;AAED;;;;;GAKG;AACH,wBAAgB,6BAA6B,CAAC,KAAK,EAAE,mBAAmB,GAAG,MAAM,CAEhF;AAED;;;;GAIG;AACH,wBAAgB,cAAc,CAC5B,KAAK,EAAE,mBAAmB,EAC1B,OAAO,EAAE,UAAU,CAAC,OAAO,uBAAuB,CAAC,CAAC,CAAC,CAAC,EACtD,WAAW,EAAE,MAAM,GAClB,IAAI,CAGN"}
@@ -0,0 +1,345 @@
1
+ /**
2
+ * WP-1 — Loud workspace identity on every Chain write. WP-714 S3 extended this to every
3
+ * Chain READ too (see `emitEffectiveTenantNotice`'s doc comment below for the read-path wiring).
4
+ *
5
+ * Running `pb` from a directory with no repo pin (e.g. `~/`) silently resolves the
6
+ * GLOBAL profile and writes to whichever Chain that points at — proven live: captures
7
+ * meant for one workspace landed on another. This module makes every Chain read or write
8
+ * NAME its target workspace on stderr, and qualifies the line LOUDLY when the binding is an
9
+ * unpinned fallback (`global`/`default` — no repo pin) so a wrong-Chain call is never
10
+ * silent. An explicit binding (`local`/`env`) gets a plain, non-alarming line.
11
+ *
12
+ * Label source — the PROFILE SLUG only, via `resolveReportedProfile()`: it returns
13
+ * `missing-pin` when the credential cascade has ALREADY refused (nothing to name — see the
14
+ * formatter below), and otherwise delegates to `resolveEffectiveProfile()`, whose contract
15
+ * the rest of this paragraph describes.
16
+ * Deliberately NOT a workspace-name probe: `resolveEffectiveProfile()` reports the
17
+ * *configured* pin even when it dangles (TEN-2163), while a probe resolves what
18
+ * `resolveConfig()` actually binds. On a dangling local pin the two DISAGREE — the
19
+ * profile says `source='local'` (a plain, reassuring line) while the probe returns the
20
+ * GLOBAL workspace the write really drifts to. That would print a non-alarming line over
21
+ * the exact silent-drift this notice exists to expose. One resolution path means the
22
+ * label and its qualifier can never contradict — and there is no per-write network
23
+ * round-trip in front of the write.
24
+ *
25
+ * Output contract — follows capture.ts's grounding banner (the JSON-safety pattern):
26
+ * - The notice is written to STDERR, never stdout, so strict-JSON stdout is byte-for-byte
27
+ * unchanged in every mode.
28
+ * - There is NO output-mode gate at all (WP-721). Every mode — `--json`, `--quiet`, plain TTY —
29
+ * gets the one-line-per-process identity notice. `--json` used to suppress the plain line for
30
+ * an explicit binding, which left an agent in a correctly pinned repo with a ZERO-BYTE stderr
31
+ * and no tenant signal whatsoever (see `emitEffectiveTenantNotice` below). TEN-3238 had
32
+ * already exempted the unpinned-fallback WARNING from that gate; WP-721 removed the gate.
33
+ *
34
+ * NOT compared here: the repo-local pin against the globally active `pb` profile (DEC-1632,
35
+ * TEN-3398/WP-720 — reversing part of WP-714 S3/PR #823). An earlier version of this module
36
+ * warned on that divergence on every read and write. But the pin exists precisely to OVERRIDE
37
+ * global, and `pb profile use` reconciles the two by default (`--local`/`--global` are the
38
+ * opt-in ways to diverge them) — so a divergence is only ever a deliberate act, never drift.
39
+ * Warning on it forever trained operators to ignore the warning: one global profile and ten
40
+ * pinned workspaces means nine permanent warnings on entirely correct setups. That comparison
41
+ * belongs at the POINT OF ACTION instead — `pb profile use --global <name>` says so once, right
42
+ * when an operator creates the divergence (see `commands/profile.ts`'s `pinnedElsewhere` note) —
43
+ * never ambiently on every read or write after the fact. The three comparisons that DO still
44
+ * belong here share one shape pin-vs-global didn't: *the effective tenant is not what your
45
+ * binding SAYS* — no explicit binding at all (the unpinned-fallback warning below), a credential
46
+ * silently overriding the binding (`env-key`/`local-key`/`cwd-key`, in the loud set below), or
47
+ * the binding moving mid-session (`sessionBinding.ts`'s refusal). Pin-vs-global was a different
48
+ * comparison that got mistaken for one of these.
49
+ *
50
+ * SSOT: one pure formatter + one thin emitter — called explicitly from the 7 write-command
51
+ * files (8 call sites) and once per process from the shared kernel wrapper (`client.ts`'s
52
+ * `kernelCall`/`kernelCallEnvelope`/`kernelCallWithSession` — TEN-3398/WP-711 follow-up wired
53
+ * the write path in too, see `emitEffectiveTenantNotice`'s doc comment below) — no per-command
54
+ * copy-paste.
55
+ *
56
+ * `pb admin` is a SEPARATE credential cascade (`adminConfig.ts`'s `resolveAdminConfig`) that
57
+ * deliberately excludes committed `config.json` siteUrl + CWD env files (TEN-1334) — it can
58
+ * resolve a different tenant than the cascade above, so it gets its own formatter-reusing
59
+ * emitter (`emitAdminTenantNotice`/`describeAdminTenantForRefusal` below) rather than sharing
60
+ * `emitEffectiveTenantNotice`'s guard or resolution path.
61
+ */
62
+ import { resolveReportedProfile } from './reportedProfile.js';
63
+ import { readLocalProjectConfig } from './projectConfig.js';
64
+ import { assertSessionStillBound } from './sessionBinding.js';
65
+ /**
66
+ * Build the one-line target-workspace notice — or null when there is nothing to say.
67
+ *
68
+ * - `none` → null (not configured: nothing to name, stay silent).
69
+ * - `missing-pin` → null (declared project, no pin: the CLI REFUSES this write, so
70
+ * there is no target workspace to name — and never `→ unknown`).
71
+ * - `cwd-key` → LOUD, unnamed (a dotenv file here picked the Chain — same shape as
72
+ * `env-key`, different file).
73
+ * - `env-key` → LOUD, unnamed (an exported PRODUCTBRAIN_API_KEY picked the Chain;
74
+ * no profile describes it, so the write goes somewhere this process
75
+ * cannot name from config — TEN-3240).
76
+ * - `preview` → named + disposable (a deliberate `npm run pb:preview` binding; the
77
+ * PREVIEW banner already shouts, so this does not shout twice).
78
+ * - `global` / `default` → qualified + hint (no repo pin → an unpinned fallback binding).
79
+ * - `local` / `env` → plain (an explicit, intentional binding).
80
+ *
81
+ * Pure: no IO. The display label is the profile slug — a single resolution path, so the
82
+ * label and the qualifier can never contradict each other. DEC-1632/TEN-3398: no longer
83
+ * compares the pin against the globally active profile — see this module's header comment.
84
+ */
85
+ export function formatEffectiveTenantNotice({ profile, source }) {
86
+ const label = describeReportedTenant(profile, source);
87
+ return label ? `→ ${label}` : null;
88
+ }
89
+ /**
90
+ * The ONE place a `(profile, source)` pair maps to a human-readable label — no "→" prefix, so
91
+ * it can be embedded in prose (the tenant notice's base line, and WP-715's session-binding
92
+ * refusal message) rather than only ever printed as a standalone line. `formatEffectiveTenantNotice`
93
+ * above is the notice-line caller; `describeCurrentTenant` further down is the prose caller.
94
+ */
95
+ export function describeReportedTenant(profile, source) {
96
+ if (source === 'none' || source === 'missing-pin')
97
+ return null;
98
+ // Deliberately NOT "unknown": that reads as "a workspace whose name we failed to look up".
99
+ // Here there is no name to look up — the credential itself chose the Chain, so the honest
100
+ // line names the credential and the repair (TEN-3240).
101
+ if (source === 'env-key') {
102
+ return 'unnamed workspace (PRODUCTBRAIN_API_KEY — the exported key picks the Chain, not a profile)';
103
+ }
104
+ if (source === 'cwd-key') {
105
+ return 'unnamed workspace (a dotenv file in this directory picks the Chain, not a profile)';
106
+ }
107
+ if (source === 'local-key') {
108
+ return 'unnamed workspace (config.local.json binds a credential directly, not a profile)';
109
+ }
110
+ const name = profile?.trim() || 'unknown';
111
+ // Deliberate and disposable: the operator ran `npm run pb:preview`, and index.ts already prints
112
+ // a loud PREVIEW banner on every command — so this names the workspace without a second alarm.
113
+ if (source === 'preview')
114
+ return `${name} (throwaway preview — \`npm run pb:real\` to go back)`;
115
+ if (source === 'global' || source === 'default') {
116
+ return `${name} (global default — run from your project dir to use its workspace)`;
117
+ }
118
+ // 'local' | 'env' — an explicit, intentional binding.
119
+ return name;
120
+ }
121
+ /**
122
+ * The repo-local PIN a direct-credential binding overrides, when the repo declares one (WP-715).
123
+ * Meaningful only for the three sources where a `config.local.json` `profile` field can still be
124
+ * PRESENT while this process does not actually use it — a direct apiKey/env/dotenv binding
125
+ * outranks it (DEC-1607). Mirrors `whoami.ts`'s `shadowedPin` (previously computed ad hoc,
126
+ * env-key only, in that one command); generalized here to the whole outranking family so any
127
+ * caller naming the current tenant can state a shadowed pin rather than silently drop it.
128
+ */
129
+ function resolveShadowedPin(source) {
130
+ if (source !== 'env-key' && source !== 'cwd-key' && source !== 'local-key')
131
+ return null;
132
+ try {
133
+ return readLocalProjectConfig()?.profile?.trim() || null;
134
+ }
135
+ catch {
136
+ return null;
137
+ }
138
+ }
139
+ /**
140
+ * Full prose description of the tenant CURRENTLY IN PLAY, for embedding in a message whose
141
+ * whole point is naming it — e.g. the session-binding refusal at `sessionBinding.ts` (WP-715).
142
+ * Unlike `formatEffectiveTenantNotice`, this never drops a shadowed repo pin: it states it explicitly, so
143
+ * a refusal reading "expected X, found Y" can never render the SAME tenant on both sides (the
144
+ * bug this closes — `resolveEffectiveProfile().profile` is blind to a credential override, so it
145
+ * always named the pin even while a foreign key was the one actually in play). Always returns a
146
+ * string — never null/undefined — so a caller building a "found ..." sentence never has to
147
+ * supply its own fallback.
148
+ *
149
+ * Deliberately UNQUOTED, including the shadowed pin: `sessionBinding.ts`'s
150
+ * `found "${found}"` template is the one place that wraps this whole value in quotes (the same
151
+ * template quotes `expected` too), so quoting the pin here as well double-quoted its closing
152
+ * mark (`...pin "product-brain""`) — cosmetic, but it reads like a typo in the exact message an
153
+ * agent surfaces to a human. This function owns zero quoting; the template owns all of it.
154
+ */
155
+ export function describeCurrentTenant(profile, source) {
156
+ const label = describeReportedTenant(profile, source) ?? 'a different, unrecorded workspace';
157
+ const shadowedPin = resolveShadowedPin(source);
158
+ return shadowedPin ? `${label}, shadowing pin ${shadowedPin}` : label;
159
+ }
160
+ /**
161
+ * Live-resolving wrapper for `client.ts`'s `describeCurrent` thunk (WP-715): re-runs
162
+ * `resolveReportedProfile()` — never `resolveEffectiveProfile()`, which is blind to a
163
+ * credential override — so a session-binding refusal always names the tenant a call would
164
+ * actually land in. Kept here, not client.ts, so that call site stays a one-liner.
165
+ */
166
+ export function describeCurrentTenantForRefusal() {
167
+ const { profile, source } = resolveReportedProfile();
168
+ return describeCurrentTenant(profile, source);
169
+ }
170
+ /**
171
+ * Once-per-PROCESS guard (WP-714 S3). A `pb` invocation is one process, so this is really
172
+ * "once per command" — but a single command can reach this function many times (`pb orient`
173
+ * alone makes three separate `kernelCall`s). Set on the FIRST call regardless of outcome
174
+ * (silent 'none'/'missing-pin', json-suppressed, or an actual print): the resolved identity
175
+ * cannot change mid-process, so re-attempting on later calls would only ever repeat the same
176
+ * verdict — or, for a printed notice, repeat the same line.
177
+ */
178
+ let hasAttemptedEffectiveTenantNotice = false;
179
+ /** Test-only: reset the once-per-process guard between cases (mirrors resetReportedProfileSnapshot). */
180
+ export function resetEffectiveTenantNoticeForTests() {
181
+ hasAttemptedEffectiveTenantNotice = false;
182
+ }
183
+ /**
184
+ * Resolve identity and write the target notice to STDERR — for every Chain read OR write, in
185
+ * EVERY output mode. WP-714 S3: originally called only from the 8 explicit write call sites;
186
+ * then ALSO called once per process from `client.ts`'s `kernelCall`/`kernelCallEnvelope` (the
187
+ * plain, non-session read path), so every read command that reaches the kernel announces too.
188
+ *
189
+ * ALSO wired into `kernelCallWithSession` (the write path) directly (TEN-3398 / WP-711
190
+ * follow-up). This comment used to claim that wiring was unnecessary because "every write
191
+ * command already calls this explicitly" — that premise was false: a census of every command
192
+ * module reaching `kernelCallWithSession` found 11 write commands (`accept-policy.ts`,
193
+ * `audit.ts`, `conflicts.ts`, `direction.ts`, `feedback.ts`, `handshake.ts`, `method.ts`,
194
+ * `questions.ts`, `rework.ts`, `shape.ts`, `verify.ts`) that never called this at all — a
195
+ * silent write with no target-workspace line, `chain.verifyEntry` and `rework.report` among
196
+ * them. A handful of write commands (`capture`/`promote`/`relate`/`restore`/`session`/
197
+ * `update`, plus the shared `organisationWrite.ts`/`runOrganisationWrite` helper used by
198
+ * `organisation.ts`/`organisationHierarchy.ts`) still call it explicitly, earlier in their own
199
+ * flow than any call `kernelCallWithSession` makes (e.g. `update`'s post-write
200
+ * `chain.getEntry` refresh) — the once-per-process guard makes `kernelCallWithSession`'s own
201
+ * call a no-op for those, so their output is unchanged bit-for-bit.
202
+ *
203
+ * Takes NO output-mode argument (WP-721). It used to take a `json` boolean that suppressed the
204
+ * plain line for an explicit binding; that parameter existed only to feed the gate, so it went
205
+ * with the gate rather than lingering as an ignored argument inviting the gate's return. The
206
+ * full reasoning is at the (now unconditional) emit inside the body — in short: `--json` is how
207
+ * agents invoke pb, agents are the bulk of both readers and writers, and a one-line-per-process
208
+ * stderr receipt naming the target Chain is the signal, not the noise. TEN-3238 had already made
209
+ * the unpinned-fallback WARNING survive `--json` for the same reason; WP-721 finished the job for
210
+ * the identity line itself. Safe in every mode because the notice goes to STDERR, so strict JSON
211
+ * on stdout stays byte-for-byte unchanged (and the CLI already writes unconditional stderr
212
+ * warnings elsewhere, e.g. the preview-scrub misroute in config.ts).
213
+ *
214
+ * DEC-1632/TEN-3398: does NOT compare the repo-local pin against the globally active profile —
215
+ * removed entirely (see this module's header comment). A prior version attached a "differs
216
+ * from the globally active Chain profile" line here that survived `--json` (WP-714 S3, PR
217
+ * #823); that line is gone, not just re-gated, because the pin existing to override global was
218
+ * never a warning-worthy condition in the first place.
219
+ *
220
+ * Never throws and does no network IO: a wrong/unreadable config degrades to silence, and
221
+ * the label comes from `resolveReportedProfile()` — only fast local config reads (no probe)
222
+ * in front of the call. It is safe to call immediately before any Chain read or write.
223
+ */
224
+ export async function emitEffectiveTenantNotice() {
225
+ if (hasAttemptedEffectiveTenantNotice)
226
+ return;
227
+ hasAttemptedEffectiveTenantNotice = true;
228
+ let profile = null;
229
+ let source = 'none';
230
+ try {
231
+ ({ profile, source } = resolveReportedProfile());
232
+ }
233
+ catch {
234
+ return; // unreadable/racing config — say nothing rather than crash a read or write.
235
+ }
236
+ if (source === 'none' || source === 'missing-pin')
237
+ return;
238
+ // WP-721: NO `json` gate. The identity line is emitted in every mode, for every source that
239
+ // has a tenant to name — an explicit `local`/`env` pin included. The loud QUALIFIER for the
240
+ // unpinned-fallback family still differs (`describeReportedTenant` owns it, unchanged); what
241
+ // no longer differs is whether an agent is told anything at all.
242
+ //
243
+ // The removed gate was justified as "the plain line carries no warning, so it is pure noise in
244
+ // agent logs". That reasoning does not survive the shape of the thing: this is ONE line per
245
+ // PROCESS (the `hasAttemptedEffectiveTenantNotice` guard above), on STDERR, naming the tenant a
246
+ // read or write is about to touch. For an agent that is not noise — it is the receipt for the
247
+ // exact safety property this module exists to provide, and WP-715 states the standard outright:
248
+ // "Agents are the primary consumers of the pb CLI and invoke it with --json. A guard that
249
+ // renders only in human TTY output is, for the bulk of real usage, not shipped."
250
+ //
251
+ // The gate went unnoticed because a SECOND line — the pin-vs-global disagreement NOTICE — used
252
+ // to survive `--json` and happened to carry the tenant name. DEC-1632 removed that comparison
253
+ // (correctly: a pin exists to override global, so a divergence is deliberate, and warning on it
254
+ // forever is fatigue), and with it the last thing an agent saw. Proven live on
255
+ // `@productbrain/cli@0.1.0-beta.5421`: `pb get WP-711 --json 2>err` left `err` at ZERO BYTES in
256
+ // a correctly pinned repo. DEC-1632's fatigue argument was about a WARNING that fires on
257
+ // correct setups, never about a single identity line — so restoring this line does NOT
258
+ // reintroduce that comparison, and must not: see this module's header comment.
259
+ //
260
+ // Safe in every mode for the same reason the unpinned-fallback warning already was (TEN-3238):
261
+ // it goes to STDERR, so strict JSON on stdout stays byte-for-byte unchanged.
262
+ const notice = formatEffectiveTenantNotice({ profile, source });
263
+ if (notice)
264
+ process.stderr.write(notice + '\n');
265
+ }
266
+ /**
267
+ * Map `resolveAdminConfig()`'s `AdminConfigSource` onto the read/write notice's
268
+ * `ReportedProfileSource` vocabulary, so `pb admin` reuses the SAME formatter and label rules
269
+ * (`formatEffectiveTenantNotice`/`describeReportedTenant`) instead of a parallel copy. This is
270
+ * deliberately NOT a call to `resolveReportedProfile()` — that walks a DIFFERENT cascade
271
+ * (`config.ts`'s `resolveConfig`, which DOES read committed `config.json` siteUrl + CWD env
272
+ * files) and can disagree with what `resolveAdminConfig()` actually resolved, which would name
273
+ * a tenant this admin call is not actually about to use. `'legacy'` (the nameless
274
+ * `~/.config/productbrain/.env` fallback) has no direct analog in `ReportedProfileSource` — it
275
+ * maps to `'default'`, the closest existing "implicit, no deliberate per-repo pin" qualifier.
276
+ */
277
+ function adminSourceToReportedSource(source) {
278
+ switch (source) {
279
+ case 'env': return 'env-key';
280
+ case 'local-profile': return 'local';
281
+ case 'global-profile': return 'global';
282
+ case 'legacy': return 'default';
283
+ }
284
+ }
285
+ /** Admin's own once-per-process guard — separate from `hasAttemptedEffectiveTenantNotice`
286
+ * above, because `resolveAdminConfig()`'s cascade is a different resolution than the one that
287
+ * guard's notice announces.
288
+ *
289
+ * Keyed by IDENTITY (`source:profileName`), not a single boolean (TEN-3398 follow-up,
290
+ * `admin/probe.ts`): `pb admin probe --env prod --env dev` resolves TWO genuinely different
291
+ * named-profile identities in one process, by design (the whole point is comparing them side
292
+ * by side) — a single shared flag would announce the first and silently swallow the second,
293
+ * hiding exactly which tenant the comparison's second half hit. A Set still gives every OTHER
294
+ * admin command (one identity resolved once via `resolveAdminConfig()`, called through
295
+ * `adminCall` any number of times) the same "announce once" behavior a boolean gave, since
296
+ * repeat calls carry the identical key. */
297
+ const announcedAdminTenantKeys = new Set();
298
+ function adminIdentityKey(admin) {
299
+ return `${admin.source}:${admin.profileName ?? ''}`;
300
+ }
301
+ /** Test-only: reset admin's once-per-identity guard between cases. */
302
+ export function resetAdminTenantNoticeForTests() {
303
+ announcedAdminTenantKeys.clear();
304
+ }
305
+ /**
306
+ * Resolve identity and write `pb admin`'s target notice to STDERR — once per DISTINCT identity
307
+ * per process (TEN-3398 / WP-711 follow-up: `adminCall` previously carried no notice at all,
308
+ * the one gap left after WP-712/WP-714 S3 covered every other kernel path).
309
+ *
310
+ * Unlike `emitEffectiveTenantNotice`, this NEVER suppresses under `--json` and has no
311
+ * "unpinned fallback" vs "explicit binding" distinction: every `pb admin` command can be a
312
+ * destructive bulk operation (`manage:delete-workspace`, `seed:backfill-starter`), so the
313
+ * identity line is never noise to cut, in any mode.
314
+ */
315
+ export function emitAdminTenantNotice(admin) {
316
+ const key = adminIdentityKey(admin);
317
+ if (announcedAdminTenantKeys.has(key))
318
+ return;
319
+ announcedAdminTenantKeys.add(key);
320
+ const notice = formatEffectiveTenantNotice({
321
+ profile: admin.profileName,
322
+ source: adminSourceToReportedSource(admin.source),
323
+ });
324
+ if (notice)
325
+ process.stderr.write(notice + '\n');
326
+ }
327
+ /**
328
+ * Prose description of `pb admin`'s CURRENT tenant, for embedding in the
329
+ * `assertSessionStillBound` refusal message — mirrors `describeCurrentTenantForRefusal`'s role
330
+ * on the non-admin path, but resolved off `resolveAdminConfig()`'s own identity rather than
331
+ * `resolveReportedProfile()`, for the same reason `adminSourceToReportedSource` exists.
332
+ */
333
+ export function describeAdminTenantForRefusal(admin) {
334
+ return describeCurrentTenant(admin.profileName, adminSourceToReportedSource(admin.source));
335
+ }
336
+ /**
337
+ * Announce AND guard one `pb admin` call in a single call (TEN-3398 / WP-711 follow-up) — kept
338
+ * here, not `client.ts`'s `adminCall` (STD-2/DEC-1504 module-health budget), so `adminCall`
339
+ * stays a one-liner and this module owns the whole admin-identity story end to end.
340
+ */
341
+ export function guardAdminCall(admin, session, fingerprint) {
342
+ emitAdminTenantNotice(admin);
343
+ assertSessionStillBound(session, fingerprint, () => describeAdminTenantForRefusal(admin));
344
+ }
345
+ //# sourceMappingURL=workspaceNotice.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"workspaceNotice.js","sourceRoot":"","sources":["../../src/lib/workspaceNotice.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4DG;AAEH,OAAO,EAAE,sBAAsB,EAA8B,MAAM,sBAAsB,CAAC;AAC1F,OAAO,EAAE,sBAAsB,EAAE,MAAM,oBAAoB,CAAC;AAE5D,OAAO,EAAE,uBAAuB,EAAE,MAAM,qBAAqB,CAAC;AAU9D;;;;;;;;;;;;;;;;;;;GAmBG;AACH,MAAM,UAAU,2BAA2B,CAAC,EAAE,OAAO,EAAE,MAAM,EAA8B;IACzF,MAAM,KAAK,GAAG,sBAAsB,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;IACtD,OAAO,KAAK,CAAC,CAAC,CAAC,KAAK,KAAK,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;AACrC,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,sBAAsB,CAAC,OAAsB,EAAE,MAA6B;IAC1F,IAAI,MAAM,KAAK,MAAM,IAAI,MAAM,KAAK,aAAa;QAAE,OAAO,IAAI,CAAC;IAC/D,2FAA2F;IAC3F,0FAA0F;IAC1F,uDAAuD;IACvD,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;QACzB,OAAO,4FAA4F,CAAC;IACtG,CAAC;IACD,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;QACzB,OAAO,oFAAoF,CAAC;IAC9F,CAAC;IACD,IAAI,MAAM,KAAK,WAAW,EAAE,CAAC;QAC3B,OAAO,kFAAkF,CAAC;IAC5F,CAAC;IACD,MAAM,IAAI,GAAG,OAAO,EAAE,IAAI,EAAE,IAAI,SAAS,CAAC;IAC1C,gGAAgG;IAChG,+FAA+F;IAC/F,IAAI,MAAM,KAAK,SAAS;QAAE,OAAO,GAAG,IAAI,uDAAuD,CAAC;IAChG,IAAI,MAAM,KAAK,QAAQ,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;QAChD,OAAO,GAAG,IAAI,oEAAoE,CAAC;IACrF,CAAC;IACD,sDAAsD;IACtD,OAAO,IAAI,CAAC;AACd,CAAC;AAED;;;;;;;GAOG;AACH,SAAS,kBAAkB,CAAC,MAA6B;IACvD,IAAI,MAAM,KAAK,SAAS,IAAI,MAAM,KAAK,SAAS,IAAI,MAAM,KAAK,WAAW;QAAE,OAAO,IAAI,CAAC;IACxF,IAAI,CAAC;QACH,OAAO,sBAAsB,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,IAAI,CAAC;IAC3D,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED;;;;;;;;;;;;;;;GAeG;AACH,MAAM,UAAU,qBAAqB,CAAC,OAAsB,EAAE,MAA6B;IACzF,MAAM,KAAK,GAAG,sBAAsB,CAAC,OAAO,EAAE,MAAM,CAAC,IAAI,mCAAmC,CAAC;IAC7F,MAAM,WAAW,GAAG,kBAAkB,CAAC,MAAM,CAAC,CAAC;IAC/C,OAAO,WAAW,CAAC,CAAC,CAAC,GAAG,KAAK,mBAAmB,WAAW,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC;AACxE,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,+BAA+B;IAC7C,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,sBAAsB,EAAE,CAAC;IACrD,OAAO,qBAAqB,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;AAChD,CAAC;AAED;;;;;;;GAOG;AACH,IAAI,iCAAiC,GAAG,KAAK,CAAC;AAE9C,wGAAwG;AACxG,MAAM,UAAU,kCAAkC;IAChD,iCAAiC,GAAG,KAAK,CAAC;AAC5C,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAwCG;AACH,MAAM,CAAC,KAAK,UAAU,yBAAyB;IAC7C,IAAI,iCAAiC;QAAE,OAAO;IAC9C,iCAAiC,GAAG,IAAI,CAAC;IAEzC,IAAI,OAAO,GAAkB,IAAI,CAAC;IAClC,IAAI,MAAM,GAA0B,MAAM,CAAC;IAC3C,IAAI,CAAC;QACH,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,sBAAsB,EAAE,CAAC,CAAC;IACnD,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,CAAC,4EAA4E;IACtF,CAAC;IACD,IAAI,MAAM,KAAK,MAAM,IAAI,MAAM,KAAK,aAAa;QAAE,OAAO;IAE1D,4FAA4F;IAC5F,4FAA4F;IAC5F,6FAA6F;IAC7F,iEAAiE;IACjE,EAAE;IACF,+FAA+F;IAC/F,4FAA4F;IAC5F,gGAAgG;IAChG,8FAA8F;IAC9F,gGAAgG;IAChG,0FAA0F;IAC1F,iFAAiF;IACjF,EAAE;IACF,+FAA+F;IAC/F,8FAA8F;IAC9F,gGAAgG;IAChG,+EAA+E;IAC/E,gGAAgG;IAChG,yFAAyF;IACzF,uFAAuF;IACvF,+EAA+E;IAC/E,EAAE;IACF,+FAA+F;IAC/F,6EAA6E;IAC7E,MAAM,MAAM,GAAG,2BAA2B,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC;IAChE,IAAI,MAAM;QAAE,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;AAClD,CAAC;AAWD;;;;;;;;;;GAUG;AACH,SAAS,2BAA2B,CAAC,MAAyB;IAC5D,QAAQ,MAAM,EAAE,CAAC;QACf,KAAK,KAAK,CAAC,CAAC,OAAO,SAAS,CAAC;QAC7B,KAAK,eAAe,CAAC,CAAC,OAAO,OAAO,CAAC;QACrC,KAAK,gBAAgB,CAAC,CAAC,OAAO,QAAQ,CAAC;QACvC,KAAK,QAAQ,CAAC,CAAC,OAAO,SAAS,CAAC;IAClC,CAAC;AACH,CAAC;AAED;;;;;;;;;;;2CAW2C;AAC3C,MAAM,wBAAwB,GAAG,IAAI,GAAG,EAAU,CAAC;AAEnD,SAAS,gBAAgB,CAAC,KAA0B;IAClD,OAAO,GAAG,KAAK,CAAC,MAAM,IAAI,KAAK,CAAC,WAAW,IAAI,EAAE,EAAE,CAAC;AACtD,CAAC;AAED,sEAAsE;AACtE,MAAM,UAAU,8BAA8B;IAC5C,wBAAwB,CAAC,KAAK,EAAE,CAAC;AACnC,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,qBAAqB,CAAC,KAA0B;IAC9D,MAAM,GAAG,GAAG,gBAAgB,CAAC,KAAK,CAAC,CAAC;IACpC,IAAI,wBAAwB,CAAC,GAAG,CAAC,GAAG,CAAC;QAAE,OAAO;IAC9C,wBAAwB,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IAClC,MAAM,MAAM,GAAG,2BAA2B,CAAC;QACzC,OAAO,EAAE,KAAK,CAAC,WAAW;QAC1B,MAAM,EAAE,2BAA2B,CAAC,KAAK,CAAC,MAAM,CAAC;KAClD,CAAC,CAAC;IACH,IAAI,MAAM;QAAE,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;AAClD,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,6BAA6B,CAAC,KAA0B;IACtE,OAAO,qBAAqB,CAAC,KAAK,CAAC,WAAW,EAAE,2BAA2B,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC;AAC7F,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,cAAc,CAC5B,KAA0B,EAC1B,OAAsD,EACtD,WAAmB;IAEnB,qBAAqB,CAAC,KAAK,CAAC,CAAC;IAC7B,uBAAuB,CAAC,OAAO,EAAE,WAAW,EAAE,GAAG,EAAE,CAAC,6BAA6B,CAAC,KAAK,CAAC,CAAC,CAAC;AAC5F,CAAC"}
@@ -0,0 +1,60 @@
1
+ /**
2
+ * 5-minute TTL cache for workspace vocabulary context (WP-436 S2).
3
+ *
4
+ * Purpose (R2 mitigation): the CLI resolves vocabulary labels on every invocation.
5
+ * Without a cache, each `pb orient` / `pb get` / `pb capture` would call
6
+ * `chain.getVocabulary` — adding a Convex round-trip overhead and risking
7
+ * handshake-time staleness. A 5-min TTL short-circuits repeat calls within
8
+ * a typical session while staying fresh enough that label changes land quickly.
9
+ *
10
+ * PAT-230: the cache holds WorkspaceVocabCtx (pure data, no Convex imports here).
11
+ * DEC-1021: only Axis 2 (collectionLabels) lives here; Axis 1 (displayNames) is untouched.
12
+ *
13
+ * S4 note: when Cortex UI builds its `vocabularyStore`, it should mirror this
14
+ * contract — a keyed map by workspaceId with an expiresAt field (Cortex has
15
+ * direct access to workspaceId; the CLI uses apiKey as a 1:1 surrogate, since
16
+ * the HTTP gateway server-side injects workspaceId from authResult per
17
+ * convex/http.ts:675).
18
+ */
19
+ import type { WorkspaceVocabCtx } from './canonicalRefs.js';
20
+ /**
21
+ * Get a cached WorkspaceVocabCtx by cacheKey, or null if expired/missing.
22
+ * Prints a staleness warning when the entry is older than STALE_WARN_MS.
23
+ */
24
+ export declare function getCachedVocabCtx(cacheKey: string): WorkspaceVocabCtx | null;
25
+ /**
26
+ * Store a WorkspaceVocabCtx under cacheKey with a 5-min TTL.
27
+ */
28
+ export declare function setCachedVocabCtx(cacheKey: string, ctx: WorkspaceVocabCtx): void;
29
+ /**
30
+ * Explicitly invalidate a cached vocab context by cacheKey.
31
+ * Call this when `updateCollectionLabels` mutation succeeds (e.g. after `pb handshake`).
32
+ */
33
+ export declare function invalidateVocabCtx(cacheKey: string): void;
34
+ /**
35
+ * Clear all cached entries (useful for testing or `pb handshake --refresh`).
36
+ */
37
+ export declare function clearVocabCache(): void;
38
+ /**
39
+ * Get the cached vocab context, or fetch it via the provided async fetcher on cache miss.
40
+ *
41
+ * Usage pattern at CLI command sites:
42
+ * ```ts
43
+ * const vocabCtx = await getOrFetchVocabCtx(config.apiKey, async () => {
44
+ * type VocabResult = { collectionLabels?: Record<string, unknown> };
45
+ * const vocab = await kernelCall<VocabResult>('chain.getVocabulary', {});
46
+ * return vocab?.collectionLabels
47
+ * ? { collectionLabels: vocab.collectionLabels as WorkspaceVocabCtx['collectionLabels'] }
48
+ * : null;
49
+ * });
50
+ * ```
51
+ *
52
+ * - `cacheKey`: use the API key as a surrogate for cacheKey (1:1 mapping at CLI layer).
53
+ * - `fetcher`: async function that resolves the vocab ctx; returns null on failure to signal
54
+ * "don't cache, fall back to resolver literal". Fetcher errors are swallowed — vocabulary
55
+ * labels are advisory (PAT-230 / fail-open principle).
56
+ *
57
+ * Returns WorkspaceVocabCtx on cache hit or successful fetch; undefined on error/null fetcher result.
58
+ */
59
+ export declare function getOrFetchVocabCtx(cacheKey: string, fetcher: () => Promise<WorkspaceVocabCtx | null>): Promise<WorkspaceVocabCtx | undefined>;
60
+ //# sourceMappingURL=workspaceVocabCache.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"workspaceVocabCache.d.ts","sourceRoot":"","sources":["../../src/lib/workspaceVocabCache.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAEH,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAc5D;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,MAAM,GAAG,iBAAiB,GAAG,IAAI,CAe5E;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,EAAE,iBAAiB,GAAG,IAAI,CAEhF;AAED;;;GAGG;AACH,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAEzD;AAED;;GAEG;AACH,wBAAgB,eAAe,IAAI,IAAI,CAEtC;AAED;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAsB,kBAAkB,CACtC,QAAQ,EAAE,MAAM,EAChB,OAAO,EAAE,MAAM,OAAO,CAAC,iBAAiB,GAAG,IAAI,CAAC,GAC/C,OAAO,CAAC,iBAAiB,GAAG,SAAS,CAAC,CAcxC"}