@productbrain/cli 0.1.0-beta.109 → 0.1.0-beta.1093

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 (257) hide show
  1. package/dist/__tests__/audit.test.js +5 -0
  2. package/dist/__tests__/audit.test.js.map +1 -1
  3. package/dist/__tests__/config.test.js +272 -2
  4. package/dist/__tests__/config.test.js.map +1 -1
  5. package/dist/__tests__/handshake-augment.test.d.ts +2 -0
  6. package/dist/__tests__/handshake-augment.test.d.ts.map +1 -0
  7. package/dist/__tests__/handshake-augment.test.js +423 -0
  8. package/dist/__tests__/handshake-augment.test.js.map +1 -0
  9. package/dist/__tests__/handshake-dormancy.test.d.ts +2 -0
  10. package/dist/__tests__/handshake-dormancy.test.d.ts.map +1 -0
  11. package/dist/__tests__/handshake-dormancy.test.js +207 -0
  12. package/dist/__tests__/handshake-dormancy.test.js.map +1 -0
  13. package/dist/__tests__/handshake-formatter.test.d.ts +2 -0
  14. package/dist/__tests__/handshake-formatter.test.d.ts.map +1 -0
  15. package/dist/__tests__/handshake-formatter.test.js +67 -0
  16. package/dist/__tests__/handshake-formatter.test.js.map +1 -0
  17. package/dist/__tests__/handshake-preview.test.js +65 -3
  18. package/dist/__tests__/handshake-preview.test.js.map +1 -1
  19. package/dist/__tests__/handshake.e2e.test.js +998 -3
  20. package/dist/__tests__/handshake.e2e.test.js.map +1 -1
  21. package/dist/__tests__/handshake.test.js +4 -4
  22. package/dist/__tests__/handshake.test.js.map +1 -1
  23. package/dist/__tests__/notice-marker.test.d.ts +2 -0
  24. package/dist/__tests__/notice-marker.test.d.ts.map +1 -0
  25. package/dist/__tests__/notice-marker.test.js +41 -0
  26. package/dist/__tests__/notice-marker.test.js.map +1 -0
  27. package/dist/__tests__/onboarding-path-b.test.js +4 -4
  28. package/dist/__tests__/onboarding-path-b.test.js.map +1 -1
  29. package/dist/__tests__/orient.test.js +52 -2
  30. package/dist/__tests__/orient.test.js.map +1 -1
  31. package/dist/__tests__/perimeter.test.js +23 -1
  32. package/dist/__tests__/perimeter.test.js.map +1 -1
  33. package/dist/__tests__/preview-key-refresh.test.d.ts +2 -0
  34. package/dist/__tests__/preview-key-refresh.test.d.ts.map +1 -0
  35. package/dist/__tests__/preview-key-refresh.test.js +126 -0
  36. package/dist/__tests__/preview-key-refresh.test.js.map +1 -0
  37. package/dist/__tests__/profiles.test.js +106 -2
  38. package/dist/__tests__/profiles.test.js.map +1 -1
  39. package/dist/__tests__/proof-run.test.d.ts +2 -0
  40. package/dist/__tests__/proof-run.test.d.ts.map +1 -0
  41. package/dist/__tests__/proof-run.test.js +255 -0
  42. package/dist/__tests__/proof-run.test.js.map +1 -0
  43. package/dist/__tests__/session-reset.test.d.ts +2 -0
  44. package/dist/__tests__/session-reset.test.d.ts.map +1 -0
  45. package/dist/__tests__/session-reset.test.js +122 -0
  46. package/dist/__tests__/session-reset.test.js.map +1 -0
  47. package/dist/__tests__/session-resume-backstop.test.d.ts +2 -0
  48. package/dist/__tests__/session-resume-backstop.test.d.ts.map +1 -0
  49. package/dist/__tests__/session-resume-backstop.test.js +97 -0
  50. package/dist/__tests__/session-resume-backstop.test.js.map +1 -0
  51. package/dist/__tests__/session-start-key-refresh.test.d.ts +2 -0
  52. package/dist/__tests__/session-start-key-refresh.test.d.ts.map +1 -0
  53. package/dist/__tests__/session-start-key-refresh.test.js +178 -0
  54. package/dist/__tests__/session-start-key-refresh.test.js.map +1 -0
  55. package/dist/__tests__/session-state-machine.test.js +45 -1
  56. package/dist/__tests__/session-state-machine.test.js.map +1 -1
  57. package/dist/__tests__/session-switch.test.d.ts +2 -0
  58. package/dist/__tests__/session-switch.test.d.ts.map +1 -0
  59. package/dist/__tests__/session-switch.test.js +130 -0
  60. package/dist/__tests__/session-switch.test.js.map +1 -0
  61. package/dist/__tests__/update-check.test.js +160 -1
  62. package/dist/__tests__/update-check.test.js.map +1 -1
  63. package/dist/__tests__/upgrade-runner.test.js +12 -0
  64. package/dist/__tests__/upgrade-runner.test.js.map +1 -1
  65. package/dist/__tests__/upgrade.test.d.ts +2 -0
  66. package/dist/__tests__/upgrade.test.d.ts.map +1 -0
  67. package/dist/__tests__/upgrade.test.js +56 -0
  68. package/dist/__tests__/upgrade.test.js.map +1 -0
  69. package/dist/__tests__/vocabulary-leak.test.d.ts +27 -13
  70. package/dist/__tests__/vocabulary-leak.test.d.ts.map +1 -1
  71. package/dist/__tests__/vocabulary-leak.test.js +169 -14
  72. package/dist/__tests__/vocabulary-leak.test.js.map +1 -1
  73. package/dist/commands/__tests__/setup-detect-surfaces.test.d.ts +15 -0
  74. package/dist/commands/__tests__/setup-detect-surfaces.test.d.ts.map +1 -0
  75. package/dist/commands/__tests__/setup-detect-surfaces.test.js +149 -0
  76. package/dist/commands/__tests__/setup-detect-surfaces.test.js.map +1 -0
  77. package/dist/commands/admin/seedRegistryEntries.generated.js +2 -2
  78. package/dist/commands/admin/seedRegistryEntries.generated.js.map +1 -1
  79. package/dist/commands/admin/seedRegistryEntries.test.js +1 -1
  80. package/dist/commands/admin/seedRegistryEntries.test.js.map +1 -1
  81. package/dist/commands/audit.d.ts.map +1 -1
  82. package/dist/commands/audit.js +30 -3
  83. package/dist/commands/audit.js.map +1 -1
  84. package/dist/commands/authority-domains.d.ts.map +1 -1
  85. package/dist/commands/authority-domains.js +2 -1
  86. package/dist/commands/authority-domains.js.map +1 -1
  87. package/dist/commands/capture.d.ts +2 -0
  88. package/dist/commands/capture.d.ts.map +1 -1
  89. package/dist/commands/capture.js +5 -1
  90. package/dist/commands/capture.js.map +1 -1
  91. package/dist/commands/connect-config.test.d.ts +2 -0
  92. package/dist/commands/connect-config.test.d.ts.map +1 -0
  93. package/dist/commands/connect-config.test.js +44 -0
  94. package/dist/commands/connect-config.test.js.map +1 -0
  95. package/dist/commands/connect-context.d.ts +45 -0
  96. package/dist/commands/connect-context.d.ts.map +1 -0
  97. package/dist/commands/connect-context.js +64 -0
  98. package/dist/commands/connect-context.js.map +1 -0
  99. package/dist/commands/connect-context.test.d.ts +2 -0
  100. package/dist/commands/connect-context.test.d.ts.map +1 -0
  101. package/dist/commands/connect-context.test.js +110 -0
  102. package/dist/commands/connect-context.test.js.map +1 -0
  103. package/dist/commands/connect-screens.d.ts +5 -6
  104. package/dist/commands/connect-screens.d.ts.map +1 -1
  105. package/dist/commands/connect-screens.js +28 -35
  106. package/dist/commands/connect-screens.js.map +1 -1
  107. package/dist/commands/connect.d.ts +16 -0
  108. package/dist/commands/connect.d.ts.map +1 -1
  109. package/dist/commands/connect.js +21 -20
  110. package/dist/commands/connect.js.map +1 -1
  111. package/dist/commands/doctor.js +2 -2
  112. package/dist/commands/doctor.js.map +1 -1
  113. package/dist/commands/doctor.test.js +19 -0
  114. package/dist/commands/doctor.test.js.map +1 -1
  115. package/dist/commands/handshake.d.ts +59 -4
  116. package/dist/commands/handshake.d.ts.map +1 -1
  117. package/dist/commands/handshake.js +392 -97
  118. package/dist/commands/handshake.js.map +1 -1
  119. package/dist/commands/method.d.ts.map +1 -1
  120. package/dist/commands/method.js +2 -1
  121. package/dist/commands/method.js.map +1 -1
  122. package/dist/commands/orient.d.ts +48 -0
  123. package/dist/commands/orient.d.ts.map +1 -1
  124. package/dist/commands/orient.js +25 -5
  125. package/dist/commands/orient.js.map +1 -1
  126. package/dist/commands/profile.d.ts +1 -14
  127. package/dist/commands/profile.d.ts.map +1 -1
  128. package/dist/commands/profile.js +89 -72
  129. package/dist/commands/profile.js.map +1 -1
  130. package/dist/commands/proof-run.d.ts +51 -0
  131. package/dist/commands/proof-run.d.ts.map +1 -0
  132. package/dist/commands/proof-run.js +209 -0
  133. package/dist/commands/proof-run.js.map +1 -0
  134. package/dist/commands/reject.d.ts.map +1 -1
  135. package/dist/commands/reject.js +2 -1
  136. package/dist/commands/reject.js.map +1 -1
  137. package/dist/commands/relate.d.ts.map +1 -1
  138. package/dist/commands/relate.js +4 -2
  139. package/dist/commands/relate.js.map +1 -1
  140. package/dist/commands/session.d.ts +26 -2
  141. package/dist/commands/session.d.ts.map +1 -1
  142. package/dist/commands/session.js +216 -31
  143. package/dist/commands/session.js.map +1 -1
  144. package/dist/commands/setup-audit.d.ts +59 -0
  145. package/dist/commands/setup-audit.d.ts.map +1 -0
  146. package/dist/commands/setup-audit.js +250 -0
  147. package/dist/commands/setup-audit.js.map +1 -0
  148. package/dist/commands/setup-detect-surfaces.d.ts.map +1 -1
  149. package/dist/commands/setup-detect-surfaces.js +10 -1
  150. package/dist/commands/setup-detect-surfaces.js.map +1 -1
  151. package/dist/commands/update.d.ts.map +1 -1
  152. package/dist/commands/update.js +2 -1
  153. package/dist/commands/update.js.map +1 -1
  154. package/dist/commands/upgrade.d.ts.map +1 -1
  155. package/dist/commands/upgrade.js +31 -10
  156. package/dist/commands/upgrade.js.map +1 -1
  157. package/dist/commands/verify.d.ts.map +1 -1
  158. package/dist/commands/verify.js +2 -1
  159. package/dist/commands/verify.js.map +1 -1
  160. package/dist/commands/whoami.d.ts +12 -0
  161. package/dist/commands/whoami.d.ts.map +1 -0
  162. package/dist/commands/whoami.js +70 -0
  163. package/dist/commands/whoami.js.map +1 -0
  164. package/dist/commands/whoami.test.d.ts +2 -0
  165. package/dist/commands/whoami.test.d.ts.map +1 -0
  166. package/dist/commands/whoami.test.js +50 -0
  167. package/dist/commands/whoami.test.js.map +1 -0
  168. package/dist/formatters/__tests__/orient-provenance.test.d.ts +7 -0
  169. package/dist/formatters/__tests__/orient-provenance.test.d.ts.map +1 -0
  170. package/dist/formatters/__tests__/orient-provenance.test.js +454 -0
  171. package/dist/formatters/__tests__/orient-provenance.test.js.map +1 -0
  172. package/dist/formatters/audit.d.ts +6 -0
  173. package/dist/formatters/audit.d.ts.map +1 -1
  174. package/dist/formatters/audit.js.map +1 -1
  175. package/dist/formatters/entry.d.ts +21 -0
  176. package/dist/formatters/entry.d.ts.map +1 -1
  177. package/dist/formatters/entry.js +46 -5
  178. package/dist/formatters/entry.js.map +1 -1
  179. package/dist/formatters/handshake.d.ts +7 -3
  180. package/dist/formatters/handshake.d.ts.map +1 -1
  181. package/dist/formatters/handshake.js +26 -23
  182. package/dist/formatters/handshake.js.map +1 -1
  183. package/dist/formatters/orient.d.ts +54 -0
  184. package/dist/formatters/orient.d.ts.map +1 -1
  185. package/dist/formatters/orient.js +71 -2
  186. package/dist/formatters/orient.js.map +1 -1
  187. package/dist/generators/adapters.js +4 -4
  188. package/dist/generators/region-projections.d.ts +18 -0
  189. package/dist/generators/region-projections.d.ts.map +1 -0
  190. package/dist/generators/region-projections.js +49 -0
  191. package/dist/generators/region-projections.js.map +1 -0
  192. package/dist/generators/region-projections.test.d.ts +2 -0
  193. package/dist/generators/region-projections.test.d.ts.map +1 -0
  194. package/dist/generators/region-projections.test.js +63 -0
  195. package/dist/generators/region-projections.test.js.map +1 -0
  196. package/dist/generators/region.d.ts +24 -0
  197. package/dist/generators/region.d.ts.map +1 -0
  198. package/dist/generators/region.js +87 -0
  199. package/dist/generators/region.js.map +1 -0
  200. package/dist/generators/region.test.d.ts +2 -0
  201. package/dist/generators/region.test.d.ts.map +1 -0
  202. package/dist/generators/region.test.js +126 -0
  203. package/dist/generators/region.test.js.map +1 -0
  204. package/dist/index.js +111 -9
  205. package/dist/index.js.map +1 -1
  206. package/dist/lib/config.d.ts +101 -4
  207. package/dist/lib/config.d.ts.map +1 -1
  208. package/dist/lib/config.js +225 -11
  209. package/dist/lib/config.js.map +1 -1
  210. package/dist/lib/notice-marker.d.ts +3 -0
  211. package/dist/lib/notice-marker.d.ts.map +1 -0
  212. package/dist/lib/notice-marker.js +53 -0
  213. package/dist/lib/notice-marker.js.map +1 -0
  214. package/dist/lib/onboarding-path-b.d.ts.map +1 -1
  215. package/dist/lib/onboarding-path-b.js +0 -1
  216. package/dist/lib/onboarding-path-b.js.map +1 -1
  217. package/dist/lib/onboarding-shared.d.ts +0 -1
  218. package/dist/lib/onboarding-shared.d.ts.map +1 -1
  219. package/dist/lib/onboarding-shared.js +0 -16
  220. package/dist/lib/onboarding-shared.js.map +1 -1
  221. package/dist/lib/profiles.d.ts +3 -1
  222. package/dist/lib/profiles.d.ts.map +1 -1
  223. package/dist/lib/profiles.js +9 -6
  224. package/dist/lib/profiles.js.map +1 -1
  225. package/dist/lib/session.d.ts +10 -0
  226. package/dist/lib/session.d.ts.map +1 -1
  227. package/dist/lib/session.js +26 -1
  228. package/dist/lib/session.js.map +1 -1
  229. package/dist/lib/tokenConstants.d.ts +2 -0
  230. package/dist/lib/tokenConstants.d.ts.map +1 -1
  231. package/dist/lib/tokenConstants.js +2 -0
  232. package/dist/lib/tokenConstants.js.map +1 -1
  233. package/dist/lib/update-check.d.ts +26 -11
  234. package/dist/lib/update-check.d.ts.map +1 -1
  235. package/dist/lib/update-check.js +123 -73
  236. package/dist/lib/update-check.js.map +1 -1
  237. package/dist/lib/upgrade-runner.d.ts +2 -1
  238. package/dist/lib/upgrade-runner.d.ts.map +1 -1
  239. package/dist/lib/upgrade-runner.js +8 -7
  240. package/dist/lib/upgrade-runner.js.map +1 -1
  241. package/dist/setup/perimeter.d.ts +10 -0
  242. package/dist/setup/perimeter.d.ts.map +1 -1
  243. package/dist/setup/perimeter.js +21 -6
  244. package/dist/setup/perimeter.js.map +1 -1
  245. package/package.json +2 -1
  246. package/dist/__tests__/setup.test.d.ts +0 -2
  247. package/dist/__tests__/setup.test.d.ts.map +0 -1
  248. package/dist/__tests__/setup.test.js +0 -141
  249. package/dist/__tests__/setup.test.js.map +0 -1
  250. package/dist/generators/__tests__/surface-profiles.test.d.ts +0 -2
  251. package/dist/generators/__tests__/surface-profiles.test.d.ts.map +0 -1
  252. package/dist/generators/__tests__/surface-profiles.test.js +0 -89
  253. package/dist/generators/__tests__/surface-profiles.test.js.map +0 -1
  254. package/dist/lib/onboarding-phases.d.ts +0 -9
  255. package/dist/lib/onboarding-phases.d.ts.map +0 -1
  256. package/dist/lib/onboarding-phases.js +0 -120
  257. package/dist/lib/onboarding-phases.js.map +0 -1
@@ -36,6 +36,10 @@ export interface OrientViewFromApi {
36
36
  preview?: string;
37
37
  scoreFlags?: string[];
38
38
  origin?: 'human' | 'agent' | 'external';
39
+ provenance?: 'authoritative' | 'provisional' | 'floor';
40
+ anchoredBy?: string;
41
+ why?: string;
42
+ whyQuality?: 'rationale' | 'missing' | 'restated';
39
43
  }>;
40
44
  standards: Array<{
41
45
  entryId: string | null;
@@ -45,6 +49,10 @@ export interface OrientViewFromApi {
45
49
  preview?: string;
46
50
  scoreFlags?: string[];
47
51
  origin?: 'human' | 'agent' | 'external';
52
+ provenance?: 'authoritative' | 'provisional' | 'floor';
53
+ anchoredBy?: string;
54
+ why?: string;
55
+ whyQuality?: 'rationale' | 'missing' | 'restated';
48
56
  }>;
49
57
  businessRules: Array<{
50
58
  entryId: string | null;
@@ -54,6 +62,10 @@ export interface OrientViewFromApi {
54
62
  preview?: string;
55
63
  scoreFlags?: string[];
56
64
  origin?: 'human' | 'agent' | 'external';
65
+ provenance?: 'authoritative' | 'provisional' | 'floor';
66
+ anchoredBy?: string;
67
+ why?: string;
68
+ whyQuality?: 'rationale' | 'missing' | 'restated';
57
69
  }>;
58
70
  };
59
71
  tensions?: Array<{
@@ -64,6 +76,10 @@ export interface OrientViewFromApi {
64
76
  entryId: string | null;
65
77
  name: string;
66
78
  preview?: string;
79
+ provenance?: 'authoritative' | 'provisional' | 'floor';
80
+ anchoredBy?: string;
81
+ why?: string;
82
+ whyQuality?: 'rationale' | 'missing' | 'restated';
67
83
  }>;
68
84
  proposals?: Array<{
69
85
  targetEntryName: string;
@@ -84,6 +100,10 @@ export interface OrientViewFromApi {
84
100
  entryId: string | null;
85
101
  name: string;
86
102
  collectionSlug: string | null;
103
+ provenance?: 'authoritative' | 'provisional' | 'floor';
104
+ anchoredBy?: string;
105
+ why?: string;
106
+ whyQuality?: 'rationale' | 'missing' | 'restated';
87
107
  }>;
88
108
  bindingGovernance: {
89
109
  principles: Array<{
@@ -91,18 +111,30 @@ export interface OrientViewFromApi {
91
111
  name: string;
92
112
  collectionSlug: string | null;
93
113
  preview?: string;
114
+ provenance?: 'authoritative' | 'provisional' | 'floor';
115
+ anchoredBy?: string;
116
+ why?: string;
117
+ whyQuality?: 'rationale' | 'missing' | 'restated';
94
118
  }>;
95
119
  standards: Array<{
96
120
  entryId: string | null;
97
121
  name: string;
98
122
  collectionSlug: string | null;
99
123
  preview?: string;
124
+ provenance?: 'authoritative' | 'provisional' | 'floor';
125
+ anchoredBy?: string;
126
+ why?: string;
127
+ whyQuality?: 'rationale' | 'missing' | 'restated';
100
128
  }>;
101
129
  businessRules: Array<{
102
130
  entryId: string | null;
103
131
  name: string;
104
132
  collectionSlug: string | null;
105
133
  preview?: string;
134
+ provenance?: 'authoritative' | 'provisional' | 'floor';
135
+ anchoredBy?: string;
136
+ why?: string;
137
+ whyQuality?: 'rationale' | 'missing' | 'restated';
106
138
  }>;
107
139
  };
108
140
  steeringContext: Array<{
@@ -134,6 +166,10 @@ export interface OrientViewFromApi {
134
166
  entryId: string | null;
135
167
  name: string;
136
168
  collectionSlug: string | null;
169
+ provenance?: 'authoritative' | 'provisional' | 'floor';
170
+ anchoredBy?: string;
171
+ why?: string;
172
+ whyQuality?: 'rationale' | 'missing' | 'restated';
137
173
  }>;
138
174
  context: Array<{
139
175
  entryId: string | null;
@@ -142,14 +178,26 @@ export interface OrientViewFromApi {
142
178
  score: number;
143
179
  hop: number;
144
180
  origin?: 'human' | 'agent' | 'external';
181
+ provenance?: 'authoritative' | 'provisional' | 'floor';
182
+ anchoredBy?: string;
183
+ why?: string;
184
+ whyQuality?: 'rationale' | 'missing' | 'restated';
145
185
  }>;
146
186
  totalFound: number;
147
187
  confidence: string;
188
+ /** STD-219 §4 (DEC-1147): set when taskContext is a truncation stub, not full grounding. */
189
+ isGroundingStub?: true;
190
+ groundingNote?: string;
148
191
  };
149
192
  plannedWork?: {
150
193
  uncommittedDrafts: Array<{
151
194
  name: string;
152
195
  collection: string;
196
+ why?: string;
197
+ whyQuality?: 'rationale' | 'missing' | 'restated';
198
+ visibility?: string;
199
+ provenance?: 'authoritative' | 'provisional' | 'floor';
200
+ anchoredBy?: string;
153
201
  }>;
154
202
  inProgressEntries: Array<{
155
203
  name: string;
@@ -1 +1 @@
1
- {"version":3,"file":"orient.d.ts","sourceRoot":"","sources":["../../src/commands/orient.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"orient.d.ts","sourceRoot":"","sources":["../../src/commands/orient.ts"],"names":[],"mappings":"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"}
@@ -25,7 +25,17 @@ import { getOrFetchVocabCtx } from '../lib/workspaceVocabCache.js';
25
25
  * clerkUserId from the bearer token, so the surface only sends payload bytes
26
26
  * + truncation flag. Auth and identity stay server-side.
27
27
  */
28
- function reportOrientCliBytes(bytes, truncated) {
28
+ // PREDICATE-MIRROR: convex/agentKnowledge/orientBudget.ts → NON_MEANINGFUL_TASK_RE +
29
+ // taskIsMeaningful. Mirrored here because packages/* has no documented import path
30
+ // into convex/. Keep in sync; drift risk captured as a residual TEN (DEC-NEW).
31
+ const NON_MEANINGFUL_TASK_RE = /^[\s​‌‍⁠]*$/u;
32
+ function taskIsMeaningful(task) {
33
+ if (typeof task !== 'string')
34
+ return false;
35
+ return !NON_MEANINGFUL_TASK_RE.test(task);
36
+ }
37
+ // DEC-NEW: reports the resolved tier + task-presence alongside bytes + truncated.
38
+ function reportOrientCliBytes(bytes, truncated, tier, taskProvided) {
29
39
  let apiKey;
30
40
  let siteUrl;
31
41
  try {
@@ -43,7 +53,7 @@ function reportOrientCliBytes(bytes, truncated) {
43
53
  },
44
54
  body: JSON.stringify({
45
55
  fn: 'agent.reportOrientMetric',
46
- args: { bytes, truncated },
56
+ args: { bytes, truncated, tier, taskProvided },
47
57
  }),
48
58
  }).catch(() => {
49
59
  // Best-effort — silently swallow.
@@ -104,13 +114,20 @@ export async function runOrient(options = {}) {
104
114
  callArgs.task = options.task;
105
115
  if (options.scope)
106
116
  callArgs.scope = options.scope;
107
- callArgs.tier = options.full ? 'full' : 'standard';
117
+ // STD-219 §5 chain-versioned by DEC-NEW: surface forwards tier by key omission;
118
+ // kernel applies the task-conditional default via resolveEffectiveTier when tier unset.
119
+ if (options.full)
120
+ callArgs.tier = 'full';
108
121
  const raw = await kernelCall('chain.getOrientView', Object.keys(callArgs).length > 0 ? callArgs : {});
109
122
  // Normalize before output in any mode — ensures JSON keys are stable
110
123
  // for agent consumers (optional sections become empty arrays, not absent).
111
124
  const view = normalizeView(raw);
112
125
  capturedView = view;
113
- capturedTruncated = raw._truncated === true;
126
+ // BET-β S3b parity with MCP: prefer the tier-budget signal (_budget.truncated),
127
+ // fall back to the legacy input-scan flag (_truncated). Summary-tier section
128
+ // dropping is reported via _budget.truncated only, so reading _truncated alone
129
+ // recorded lastOrientTruncated:false on the main path this change introduces.
130
+ capturedTruncated = raw._budget?.truncated ?? raw._truncated === true;
114
131
  return view;
115
132
  },
116
133
  formatPretty: (view) => {
@@ -129,7 +146,10 @@ export async function runOrient(options = {}) {
129
146
  rendered = options.brief ? formatOrientBrief(capturedView, vocabCtx) : formatOrient(capturedView, vocabCtx);
130
147
  }
131
148
  const bytes = Buffer.byteLength(rendered, 'utf8');
132
- reportOrientCliBytes(bytes, capturedTruncated);
149
+ // DEC-NEW: resolved tier mirrors the kernel rule (the response carries no
150
+ // tier field) — explicit --full, else task-conditional default.
151
+ const resolvedTier = options.full ? 'full' : taskIsMeaningful(options.task) ? 'summary' : 'standard';
152
+ reportOrientCliBytes(bytes, capturedTruncated, resolvedTier, taskIsMeaningful(options.task));
133
153
  }
134
154
  catch {
135
155
  // Best-effort observability — never fail the command on measurement.
@@ -1 +1 @@
1
- {"version":3,"file":"orient.js","sourceRoot":"","sources":["../../src/commands/orient.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"orient.js","sourceRoot":"","sources":["../../src/commands/orient.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,SAAS,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AAC/D,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC7D,OAAO,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAC;AACvD,OAAO,EAAE,YAAY,EAAE,iBAAiB,EAAqC,MAAM,yBAAyB,CAAC;AAC7G,OAAO,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AAoInE;;;;;;;;;;;;;;;;GAgBG;AACH,qFAAqF;AACrF,mFAAmF;AACnF,+EAA+E;AAC/E,MAAM,sBAAsB,GAAG,eAAe,CAAC;AAC/C,SAAS,gBAAgB,CAAC,IAAa;IACrC,IAAI,OAAO,IAAI,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAC;IAC3C,OAAO,CAAC,sBAAsB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC5C,CAAC;AAED,kFAAkF;AAClF,SAAS,oBAAoB,CAC3B,KAAa,EACb,SAAkB,EAClB,IAAqC,EACrC,YAAqB;IAErB,IAAI,MAAc,CAAC;IACnB,IAAI,OAAe,CAAC;IACpB,IAAI,CAAC;QACH,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,SAAS,EAAE,CAAC,CAAC;IACtC,CAAC;IAAC,MAAM,CAAC;QACP,iEAAiE;QACjE,OAAO;IACT,CAAC;IACD,KAAK,KAAK,CAAC,GAAG,OAAO,UAAU,EAAE;QAC/B,MAAM,EAAE,MAAM;QACd,OAAO,EAAE;YACP,cAAc,EAAE,kBAAkB;YAClC,aAAa,EAAE,UAAU,MAAM,EAAE;SAClC;QACD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;YACnB,EAAE,EAAE,0BAA0B;YAC9B,IAAI,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,IAAI,EAAE,YAAY,EAAE;SAC/C,CAAC;KACH,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE;QACZ,kCAAkC;IACpC,CAAC,CAAC,CAAC;AACL,CAAC;AAED,SAAS,aAAa,CAAC,GAAsB;IAC3C,OAAO;QACL,GAAG,GAAG;QACN,UAAU,EAAE,GAAG,CAAC,UAAU,IAAI;YAC5B,UAAU,EAAE,EAAE;YACd,SAAS,EAAE,EAAE;YACb,aAAa,EAAE,EAAE;SAClB;QACD,QAAQ,EAAE,GAAG,CAAC,QAAQ,IAAI,EAAE;QAC5B,iBAAiB,EAAE,GAAG,CAAC,iBAAiB,IAAI,EAAE;QAC9C,SAAS,EAAE,GAAG,CAAC,SAAS,IAAI,EAAE;QAC9B,cAAc,EAAE,GAAG,CAAC,cAAc,IAAI,EAAE;QACxC,OAAO,EAAE,GAAG,CAAC,OAAO;QACpB,WAAW,EAAE,GAAG,CAAC,WAAW;QAC5B,WAAW,EAAE,GAAG,CAAC,WAAW,IAAI;YAC9B,iBAAiB,EAAE,EAAE;YACrB,iBAAiB,EAAE,EAAE;YACrB,YAAY,EAAE,EAAE;SACjB;QACD,aAAa,EAAE,GAAG,CAAC,aAAa,IAAI,EAAE;QACtC,aAAa,EAAE,GAAG,CAAC,aAAa,IAAI,IAAI;KACzC,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,SAAS,CAAC,UAA8E,EAAE;IAC9G,uEAAuE;IACvE,IAAI,OAAO,CAAC,KAAK,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;QACnC,OAAO,CAAC,IAAI,CAAC,2EAA2E,CAAC,CAAC;IAC5F,CAAC;IACD,MAAM,MAAM,GAAG,MAAM,gBAAgB,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC;IAChE,IAAI,CAAC,MAAM;QAAE,OAAO;IAEpB,+EAA+E;IAC/E,uEAAuE;IACvE,iGAAiG;IACjG,MAAM,QAAQ,GAAG,MAAM,kBAAkB,CAAC,MAAM,CAAC,MAAM,EAAE,KAAK,IAAI,EAAE;QAElE,MAAM,KAAK,GAAG,MAAM,UAAU,CAAc,qBAAqB,EAAE,EAAE,CAAC,CAAC;QACvE,IAAI,KAAK,EAAE,gBAAgB,IAAI,KAAK,EAAE,kBAAkB,EAAE,CAAC;YACzD,OAAO;gBACL,GAAG,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC,CAAC,EAAE,gBAAgB,EAAE,KAAK,CAAC,gBAAyD,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBACxH,GAAG,CAAC,KAAK,CAAC,kBAAkB,CAAC,CAAC,CAAC,EAAE,kBAAkB,EAAE,KAAK,CAAC,kBAA6D,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aACjI,CAAC;QACJ,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC,CAAC,CAAC;IAEH,qEAAqE;IACrE,mEAAmE;IACnE,IAAI,YAAY,GAAsB,IAAI,CAAC;IAC3C,IAAI,iBAAiB,GAAG,KAAK,CAAC;IAE9B,MAAM,aAAa,CAAa;QAC9B,EAAE,EAAE,KAAK,IAAI,EAAE;YACb,MAAM,QAAQ,GAA2B,EAAE,CAAC;YAC5C,IAAI,OAAO,CAAC,IAAI;gBAAE,QAAQ,CAAC,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;YAC/C,IAAI,OAAO,CAAC,KAAK;gBAAE,QAAQ,CAAC,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC;YAClD,gFAAgF;YAChF,wFAAwF;YACxF,IAAI,OAAO,CAAC,IAAI;gBAAE,QAAQ,CAAC,IAAI,GAAG,MAAM,CAAC;YACzC,MAAM,GAAG,GAAG,MAAM,UAAU,CAC1B,qBAAqB,EACrB,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CACjD,CAAC;YACF,qEAAqE;YACrE,2EAA2E;YAC3E,MAAM,IAAI,GAAG,aAAa,CAAC,GAAG,CAAC,CAAC;YAChC,YAAY,GAAG,IAAI,CAAC;YACpB,gFAAgF;YAChF,6EAA6E;YAC7E,+EAA+E;YAC/E,8EAA8E;YAC9E,iBAAiB,GAAG,GAAG,CAAC,OAAO,EAAE,SAAS,IAAI,GAAG,CAAC,UAAU,KAAK,IAAI,CAAC;YACtE,OAAO,IAAI,CAAC;QACd,CAAC;QACD,YAAY,EAAE,CAAC,IAAI,EAAE,EAAE;YACrB,OAAO,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,iBAAiB,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;QAC1F,CAAC;KACF,CAAC,CAAC;IAEH,8EAA8E;IAC9E,qEAAqE;IACrE,IAAI,YAAY,IAAI,IAAI,EAAE,CAAC;QACzB,IAAI,CAAC;YACH,IAAI,QAAgB,CAAC;YACrB,IAAI,UAAU,EAAE,EAAE,CAAC;gBACjB,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC,oBAAoB,CAAC,YAAY,CAAC,CAAC,CAAC;YAChE,CAAC;iBAAM,CAAC;gBACN,QAAQ,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,iBAAiB,CAAC,YAAY,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,YAAY,EAAE,QAAQ,CAAC,CAAC;YAC9G,CAAC;YACD,MAAM,KAAK,GAAG,MAAM,CAAC,UAAU,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;YAClD,0EAA0E;YAC1E,gEAAgE;YAChE,MAAM,YAAY,GAChB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,gBAAgB,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,UAAU,CAAC;YAClF,oBAAoB,CAAC,KAAK,EAAE,iBAAiB,EAAE,YAAY,EAAE,gBAAgB,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC;QAC/F,CAAC;QAAC,MAAM,CAAC;YACP,qEAAqE;QACvE,CAAC;IACH,CAAC;AACH,CAAC"}
@@ -21,23 +21,10 @@ export declare function runProfileCreate(opts: {
21
21
  apiKey: string;
22
22
  url?: string;
23
23
  }): Promise<void>;
24
- /**
25
- * pb profile use <name> [--local]
26
- *
27
- * Without --local (default): switch global active profile.
28
- * - Closes any active session (TEN-1277: session orphaning)
29
- * - Resets config cache so next getConfig() reads the new profile
30
- * - Clears env vars so they get re-read from the new profile
31
- *
32
- * With --local: write profile pin to .productbrain/config.local.json
33
- * in the walked-up project root.
34
- * - Does NOT update global active-profile
35
- * - Does NOT close session (local switch doesn't orphan server session)
36
- * - Throws CLIError if no project root found
37
- */
38
24
  export declare function runProfileUse(opts: {
39
25
  name: string;
40
26
  local?: boolean;
27
+ global?: boolean;
41
28
  }): Promise<void>;
42
29
  /** pb profile delete <name> */
43
30
  export declare function runProfileDelete(opts: {
@@ -1 +1 @@
1
- {"version":3,"file":"profile.d.ts","sourceRoot":"","sources":["../../src/commands/profile.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAgBH,KAAK,iBAAiB,GAAG;IACvB,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,YAAY,EAAE,OAAO,GAAG,QAAQ,GAAG,MAAM,CAAC;CAC3C,CAAC;AAEF,wBAAgB,uBAAuB,IAAI,iBAAiB,CAQ3D;AAED,4DAA4D;AAC5D,wBAAsB,cAAc,IAAI,OAAO,CAAC,IAAI,CAAC,CAuBpD;AAED,6DAA6D;AAC7D,wBAAsB,gBAAgB,CAAC,IAAI,EAAE;IAC3C,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,GAAG,CAAC,EAAE,MAAM,CAAC;CACd,GAAG,OAAO,CAAC,IAAI,CAAC,CAQhB;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAsB,aAAa,CAAC,IAAI,EAAE;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,OAAO,CAAA;CAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CA2E1F;AAED,+BAA+B;AAC/B,wBAAsB,gBAAgB,CAAC,IAAI,EAAE;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAQ5E"}
1
+ {"version":3,"file":"profile.d.ts","sourceRoot":"","sources":["../../src/commands/profile.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAeH,KAAK,iBAAiB,GAAG;IACvB,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,YAAY,EAAE,OAAO,GAAG,QAAQ,GAAG,MAAM,CAAC;CAC3C,CAAC;AAEF,wBAAgB,uBAAuB,IAAI,iBAAiB,CAQ3D;AAED,4DAA4D;AAC5D,wBAAsB,cAAc,IAAI,OAAO,CAAC,IAAI,CAAC,CAuBpD;AAED,6DAA6D;AAC7D,wBAAsB,gBAAgB,CAAC,IAAI,EAAE;IAC3C,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,GAAG,CAAC,EAAE,MAAM,CAAC;CACd,GAAG,OAAO,CAAC,IAAI,CAAC,CAQhB;AAaD,wBAAsB,aAAa,CAAC,IAAI,EAAE;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,OAAO,CAAC;IAAC,MAAM,CAAC,EAAE,OAAO,CAAA;CAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CA8F5G;AAUD,+BAA+B;AAC/B,wBAAsB,gBAAgB,CAAC,IAAI,EAAE;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAQ5E"}
@@ -5,12 +5,11 @@
5
5
  * Uses runCliCommand pattern from runner.ts for JSON/pretty output.
6
6
  * Uses CLIError from errors.ts for structured error reporting.
7
7
  */
8
- import { existsSync, mkdirSync, readFileSync, writeFileSync } from 'fs';
9
- import { resolve } from 'path';
10
8
  import { runCliCommand } from '../lib/runner.js';
11
9
  import { listProfiles, getActiveProfile, createProfile, useProfile, deleteProfile, } from '../lib/profiles.js';
12
- import { readSession, clearSession } from '../lib/session.js';
13
- import { resetConfigCache, findProjectRoot, readLocalProjectConfig } from '../lib/config.js';
10
+ import { readSession, discardSession, sessionFileExists } from '../lib/session.js';
11
+ import { resetConfigCache, findProjectRoot, readLocalProjectConfig, setLocalProfilePin } from '../lib/config.js';
12
+ import { probeWorkspace } from '../lib/workspace-probe.js';
14
13
  import { CLIError, ErrorCode } from '../lib/errors.js';
15
14
  export function resolveProfileListState() {
16
15
  const profiles = listProfiles();
@@ -55,86 +54,104 @@ export async function runProfileCreate(opts) {
55
54
  formatPretty: (data) => `Profile "${data.name}" created.`,
56
55
  });
57
56
  }
58
- /**
59
- * pb profile use <name> [--local]
60
- *
61
- * Without --local (default): switch global active profile.
62
- * - Closes any active session (TEN-1277: session orphaning)
63
- * - Resets config cache so next getConfig() reads the new profile
64
- * - Clears env vars so they get re-read from the new profile
65
- *
66
- * With --local: write profile pin to .productbrain/config.local.json
67
- * in the walked-up project root.
68
- * - Does NOT update global active-profile
69
- * - Does NOT close session (local switch doesn't orphan server session)
70
- * - Throws CLIError if no project root found
71
- */
72
57
  export async function runProfileUse(opts) {
73
- if (opts.local) {
74
- await runCliCommand({
75
- fn: async () => {
76
- const projectRoot = findProjectRoot(process.cwd());
77
- if (!projectRoot) {
78
- throw new CLIError('No .productbrain/ directory found in this directory tree. Run `pb connect` first or use `pb profile use <name>` (without --local) to switch globally.', {
79
- code: ErrorCode.CONFIG_INVALID,
80
- category: 'config',
81
- guidance: 'Run `pb connect <token>` to set up a project workspace, or omit --local to switch globally.',
82
- });
83
- }
84
- const configDir = resolve(projectRoot, '.productbrain');
85
- const localConfigPath = resolve(configDir, 'config.local.json');
86
- // Read existing local config to preserve other fields
87
- let existingLocal = {};
88
- if (existsSync(localConfigPath)) {
89
- try {
90
- existingLocal = JSON.parse(readFileSync(localConfigPath, 'utf8'));
91
- }
92
- catch { /* ignore parse errors */ }
93
- }
94
- const localConfig = { ...existingLocal, profile: opts.name };
95
- mkdirSync(configDir, { recursive: true });
96
- writeFileSync(localConfigPath, JSON.stringify(localConfig, null, 2) + '\n');
97
- return {
98
- name: opts.name,
99
- local: true,
100
- projectRoot,
101
- };
102
- },
103
- formatPretty: (data) => {
104
- return `Local profile set to "${data.name}" in ${data.projectRoot}/.productbrain/config.local.json`;
105
- },
58
+ if (opts.local && opts.global) {
59
+ throw new CLIError('Cannot use both --local and --global.', {
60
+ code: ErrorCode.VALIDATION_FAILED,
61
+ category: 'validation',
62
+ guidance: 'Pick one: --local (repo pin only), --global (global only), or neither (reconcile both).',
106
63
  });
107
- return;
108
64
  }
109
- // Default: global profile switch
110
65
  await runCliCommand({
111
66
  fn: async () => {
112
- // Close active session before switching (TEN-1277: session orphaning)
113
- const session = readSession();
114
- if (session) {
115
- clearSession();
67
+ const projectRoot = findProjectRoot(process.cwd());
68
+ const localPin = readLocalProjectConfig()?.profile ?? null;
69
+ // PB_PROFILE always wins resolution (by design). If it's set, ANY profile write
70
+ // here is shadowed — surface that instead of failing silently (the TEN-2163 trap).
71
+ const PB_PROFILE = process.env.PB_PROFILE?.trim() || null;
72
+ const resetEnv = () => {
73
+ resetConfigCache();
74
+ delete process.env.PRODUCTBRAIN_API_KEY;
75
+ delete process.env.CONVEX_SITE_URL;
76
+ };
77
+ // Discard ANY session file (active OR stale closed marker) — a closed marker would
78
+ // let the 2h auto-resume re-pin the old workspace. Report only an ACTIVE session
79
+ // in the print line.
80
+ const discardSessionState = () => {
81
+ const hadActive = readSession() !== null;
82
+ if (sessionFileExists())
83
+ discardSession();
84
+ return hadActive;
85
+ };
86
+ // --- --local: repo pin only ---
87
+ if (opts.local) {
88
+ if (!projectRoot) {
89
+ throw new CLIError('No .productbrain/ directory found in this directory tree. Run `pb connect` first or use `pb use <name> --global` to switch globally.', { code: ErrorCode.CONFIG_INVALID, category: 'config',
90
+ guidance: 'Run `pb connect <token>` to set up a project workspace, or use --global.' });
91
+ }
92
+ setLocalProfilePin(projectRoot, opts.name);
93
+ const sessionCleared = discardSessionState();
94
+ resetEnv();
95
+ return { name: opts.name, scope: 'local', reconciledLocalPin: false,
96
+ sessionCleared, workspace: await safeProbe(), pinnedElsewhere: null, 'PB_PROFILE': PB_PROFILE };
116
97
  }
98
+ // --- --global: global only (does not change a locally-pinned repo) ---
99
+ if (opts.global) {
100
+ useProfile(opts.name);
101
+ const pinnedElsewhere = localPin && localPin !== opts.name ? localPin : null;
102
+ // The repo's effective workspace only changes when it is NOT pinned elsewhere.
103
+ const sessionCleared = pinnedElsewhere ? false : discardSessionState();
104
+ resetEnv();
105
+ const workspace = pinnedElsewhere ? null : await safeProbe();
106
+ return { name: opts.name, scope: 'global', reconciledLocalPin: false,
107
+ sessionCleared, workspace, pinnedElsewhere, 'PB_PROFILE': PB_PROFILE };
108
+ }
109
+ // --- default: flip global AND reconcile the repo pin if one exists ---
117
110
  useProfile(opts.name);
118
- // Reset config cache so next getConfig() reads the new profile
119
- resetConfigCache();
120
- // Clear env vars so they get re-read from the new profile
121
- delete process.env.PRODUCTBRAIN_API_KEY;
122
- delete process.env.CONVEX_SITE_URL;
123
- return {
124
- name: opts.name,
125
- active: true,
126
- sessionClosed: session !== null,
127
- };
111
+ let reconciledLocalPin = false;
112
+ if (projectRoot && localPin) {
113
+ setLocalProfilePin(projectRoot, opts.name);
114
+ reconciledLocalPin = true;
115
+ }
116
+ const sessionCleared = discardSessionState();
117
+ resetEnv();
118
+ return { name: opts.name, scope: 'reconcile', reconciledLocalPin,
119
+ sessionCleared, workspace: await safeProbe(), pinnedElsewhere: null, 'PB_PROFILE': PB_PROFILE };
128
120
  },
129
- formatPretty: (data) => {
130
- let msg = `Switched to profile "${data.name}".`;
131
- if (data.sessionClosed) {
132
- msg += ' (previous session closed)';
121
+ formatPretty: (d) => {
122
+ const lines = [];
123
+ if (d.scope === 'global') {
124
+ const arrow = d.workspace ? ` → ${d.workspace}` : '';
125
+ lines.push(`Switched global profile to "${d.name}"${arrow}.`);
126
+ if (d.pinnedElsewhere) {
127
+ lines.push(`Note: this repo is pinned to "${d.pinnedElsewhere}" via config.local.json — the global switch won't change it here.`);
128
+ lines.push(`Run \`pb use ${d.name}\` (no flag) to switch this repo too.`);
129
+ }
133
130
  }
134
- return msg;
131
+ else {
132
+ const arrow = d.workspace ? ` → ${d.workspace}` : '';
133
+ const where = d.scope === 'local' ? ' (repo-local)' : '';
134
+ lines.push(`Now using "${d.name}"${where}${arrow}`);
135
+ if (d.reconciledLocalPin)
136
+ lines.push('(updated repo-local pin in .productbrain/config.local.json)');
137
+ }
138
+ if (d.sessionCleared)
139
+ lines.push('(previous session closed)');
140
+ if (d['PB_PROFILE']) {
141
+ lines.push(`⚠ PB_PROFILE is set to "${d['PB_PROFILE']}" in your environment and overrides profile resolution.`);
142
+ lines.push(` This switch won't take effect until you unset it: \`unset PB_PROFILE\`.`);
143
+ }
144
+ return lines.join('\n');
135
145
  },
136
146
  });
137
147
  }
148
+ /**
149
+ * Best-effort workspace name after a profile switch; null on any failure.
150
+ * probeWorkspace() already swallows network/auth errors and returns null, so this is offline-safe.
151
+ */
152
+ async function safeProbe() {
153
+ return (await probeWorkspace())?.name ?? null;
154
+ }
138
155
  /** pb profile delete <name> */
139
156
  export async function runProfileDelete(opts) {
140
157
  await runCliCommand({
@@ -1 +1 @@
1
- {"version":3,"file":"profile.js","sourceRoot":"","sources":["../../src/commands/profile.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"profile.js","sourceRoot":"","sources":["../../src/commands/profile.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,51 @@
1
+ /**
2
+ * pb proof-run <proof-name> — run an admin-only proof against the seeded preview
3
+ * via the WP-459 proof bridge.
4
+ *
5
+ * NOT a kernel/MCP call: the bridge is a token-gated httpAction with a SIMPLER
6
+ * envelope than /api/aki. It authenticates with the short-lived preview admin
7
+ * token (pb_pat_…) minted into .productbrain/preview-admin.json by the seed
8
+ * (scripts/seed-preview.mjs step 7) — NOT the pb API key. So this command does
9
+ * not call getConfig()/kernelCall(); it reads the throwaway token from disk and
10
+ * POSTs directly to {siteUrl}/api/admin/proof-run.
11
+ *
12
+ * Success → HTTP 200 { data: <verdict> } (verdict may carry zeroHandAuthoringProven)
13
+ * Failure → non-200 { error, code }
14
+ *
15
+ * Chain: WP-459 (Admin-proof bridge).
16
+ */
17
+ /** Resolved inputs for a proof-bridge call. */
18
+ export interface ProofBridgeInputs {
19
+ siteUrl: string;
20
+ rawToken: string;
21
+ workspaceId: string;
22
+ /** Server-enforced expiry (ms epoch), if the token record carried one. */
23
+ expiresAt?: number;
24
+ }
25
+ /**
26
+ * Resolve the proof-bridge inputs (siteUrl, rawToken, workspaceId) from the
27
+ * worktree's seed sidecars. Pure + testable: takes the project root explicitly,
28
+ * throws CLIError with actionable guidance on any missing/invalid file.
29
+ */
30
+ export declare function resolveProofBridgeInputs(projectRoot: string): ProofBridgeInputs;
31
+ /** Parsed bridge response — discriminated on `ok`. */
32
+ type BridgeResult = {
33
+ ok: true;
34
+ data: unknown;
35
+ } | {
36
+ ok: false;
37
+ error: string;
38
+ code: string;
39
+ };
40
+ /**
41
+ * POST to the proof bridge and parse its simple envelope ({ data } / { error, code }).
42
+ * Uses an AbortController timeout (mirrors lib/client.js). Network / non-JSON
43
+ * failures surface as a structured { ok: false } so the caller can exit non-zero.
44
+ */
45
+ export declare function callProofBridge(inputs: ProofBridgeInputs, proofName: string, timeoutMs?: number): Promise<BridgeResult>;
46
+ interface ProofRunOptions {
47
+ proofName: string;
48
+ }
49
+ export declare function runProofRun(options: ProofRunOptions): Promise<void>;
50
+ export {};
51
+ //# sourceMappingURL=proof-run.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"proof-run.d.ts","sourceRoot":"","sources":["../../src/commands/proof-run.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAuBH,+CAA+C;AAC/C,MAAM,WAAW,iBAAiB;IAChC,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;IACpB,0EAA0E;IAC1E,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAeD;;;;GAIG;AACH,wBAAgB,wBAAwB,CAAC,WAAW,EAAE,MAAM,GAAG,iBAAiB,CA8E/E;AAED,sDAAsD;AACtD,KAAK,YAAY,GACb;IAAE,EAAE,EAAE,IAAI,CAAC;IAAC,IAAI,EAAE,OAAO,CAAA;CAAE,GAC3B;IAAE,EAAE,EAAE,KAAK,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAAC;AAE/C;;;;GAIG;AACH,wBAAsB,eAAe,CACnC,MAAM,EAAE,iBAAiB,EACzB,SAAS,EAAE,MAAM,EACjB,SAAS,SAAS,GACjB,OAAO,CAAC,YAAY,CAAC,CA8CvB;AAED,UAAU,eAAe;IACvB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,wBAAsB,WAAW,CAAC,OAAO,EAAE,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC,CAgEzE"}