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

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 (247) hide show
  1. package/dist/__tests__/canonicalRefs.vocab.test.d.ts +2 -0
  2. package/dist/__tests__/canonicalRefs.vocab.test.d.ts.map +1 -0
  3. package/dist/__tests__/canonicalRefs.vocab.test.js +251 -0
  4. package/dist/__tests__/canonicalRefs.vocab.test.js.map +1 -0
  5. package/dist/__tests__/constants.test.js +6 -1
  6. package/dist/__tests__/constants.test.js.map +1 -1
  7. package/dist/__tests__/envelope-contract.test.js +29 -3
  8. package/dist/__tests__/envelope-contract.test.js.map +1 -1
  9. package/dist/__tests__/errors.test.js +1 -0
  10. package/dist/__tests__/errors.test.js.map +1 -1
  11. package/dist/__tests__/handshake-preview.test.js +501 -1
  12. package/dist/__tests__/handshake-preview.test.js.map +1 -1
  13. package/dist/__tests__/handshake.e2e.test.d.ts +2 -0
  14. package/dist/__tests__/handshake.e2e.test.d.ts.map +1 -0
  15. package/dist/__tests__/handshake.e2e.test.js +257 -0
  16. package/dist/__tests__/handshake.e2e.test.js.map +1 -0
  17. package/dist/__tests__/handshake.test.js +251 -1
  18. package/dist/__tests__/handshake.test.js.map +1 -1
  19. package/dist/__tests__/manifest.test.js +118 -1
  20. package/dist/__tests__/manifest.test.js.map +1 -1
  21. package/dist/__tests__/orient.test.js +65 -24
  22. package/dist/__tests__/orient.test.js.map +1 -1
  23. package/dist/__tests__/perimeter.test.d.ts +2 -0
  24. package/dist/__tests__/perimeter.test.d.ts.map +1 -0
  25. package/dist/__tests__/perimeter.test.js +143 -0
  26. package/dist/__tests__/perimeter.test.js.map +1 -0
  27. package/dist/__tests__/promote.test.js +2 -2
  28. package/dist/__tests__/promote.test.js.map +1 -1
  29. package/dist/__tests__/setup-ingest.test.js +16 -0
  30. package/dist/__tests__/setup-ingest.test.js.map +1 -1
  31. package/dist/__tests__/skill-vocabulary.test.d.ts +21 -0
  32. package/dist/__tests__/skill-vocabulary.test.d.ts.map +1 -0
  33. package/dist/__tests__/skill-vocabulary.test.js +187 -0
  34. package/dist/__tests__/skill-vocabulary.test.js.map +1 -0
  35. package/dist/__tests__/update-check.test.d.ts +2 -0
  36. package/dist/__tests__/update-check.test.d.ts.map +1 -0
  37. package/dist/__tests__/update-check.test.js +56 -0
  38. package/dist/__tests__/update-check.test.js.map +1 -0
  39. package/dist/__tests__/upgrade-runner.test.d.ts +2 -0
  40. package/dist/__tests__/upgrade-runner.test.d.ts.map +1 -0
  41. package/dist/__tests__/upgrade-runner.test.js +42 -0
  42. package/dist/__tests__/upgrade-runner.test.js.map +1 -0
  43. package/dist/__tests__/vocabulary-leak.test.d.ts +25 -0
  44. package/dist/__tests__/vocabulary-leak.test.d.ts.map +1 -0
  45. package/dist/__tests__/vocabulary-leak.test.js +379 -0
  46. package/dist/__tests__/vocabulary-leak.test.js.map +1 -0
  47. package/dist/commands/__tests__/connect-handoff.test.d.ts +11 -0
  48. package/dist/commands/__tests__/connect-handoff.test.d.ts.map +1 -0
  49. package/dist/commands/__tests__/connect-handoff.test.js +111 -0
  50. package/dist/commands/__tests__/connect-handoff.test.js.map +1 -0
  51. package/dist/commands/__tests__/setup-state.test.d.ts +2 -0
  52. package/dist/commands/__tests__/setup-state.test.d.ts.map +1 -0
  53. package/dist/commands/__tests__/setup-state.test.js +194 -0
  54. package/dist/commands/__tests__/setup-state.test.js.map +1 -0
  55. package/dist/commands/admin/seed.d.ts +32 -2
  56. package/dist/commands/admin/seed.d.ts.map +1 -1
  57. package/dist/commands/admin/seed.js +279 -33
  58. package/dist/commands/admin/seed.js.map +1 -1
  59. package/dist/commands/admin/seed.test.js +7 -0
  60. package/dist/commands/admin/seed.test.js.map +1 -1
  61. package/dist/commands/admin/seedRegistryEntries.generated.d.ts +14 -0
  62. package/dist/commands/admin/seedRegistryEntries.generated.d.ts.map +1 -0
  63. package/dist/commands/admin/seedRegistryEntries.generated.js +117 -0
  64. package/dist/commands/admin/seedRegistryEntries.generated.js.map +1 -0
  65. package/dist/commands/admin/seedRegistryEntries.test.d.ts +11 -0
  66. package/dist/commands/admin/seedRegistryEntries.test.d.ts.map +1 -0
  67. package/dist/commands/admin/seedRegistryEntries.test.js +67 -0
  68. package/dist/commands/admin/seedRegistryEntries.test.js.map +1 -0
  69. package/dist/commands/authority-domains.d.ts +7 -1
  70. package/dist/commands/authority-domains.d.ts.map +1 -1
  71. package/dist/commands/authority-domains.js +17 -3
  72. package/dist/commands/authority-domains.js.map +1 -1
  73. package/dist/commands/capture.d.ts.map +1 -1
  74. package/dist/commands/capture.js +3 -2
  75. package/dist/commands/capture.js.map +1 -1
  76. package/dist/commands/codex-prep.js +6 -6
  77. package/dist/commands/codex-prep.js.map +1 -1
  78. package/dist/commands/connect-handoff.d.ts +51 -0
  79. package/dist/commands/connect-handoff.d.ts.map +1 -0
  80. package/dist/commands/connect-handoff.js +70 -0
  81. package/dist/commands/connect-handoff.js.map +1 -0
  82. package/dist/commands/connect-integration.test.js +13 -12
  83. package/dist/commands/connect-integration.test.js.map +1 -1
  84. package/dist/commands/connect-screens.d.ts +2 -2
  85. package/dist/commands/connect-screens.js +2 -2
  86. package/dist/commands/connect.d.ts +3 -6
  87. package/dist/commands/connect.d.ts.map +1 -1
  88. package/dist/commands/connect.js +10 -36
  89. package/dist/commands/connect.js.map +1 -1
  90. package/dist/commands/doctor.d.ts.map +1 -1
  91. package/dist/commands/doctor.js +67 -2
  92. package/dist/commands/doctor.js.map +1 -1
  93. package/dist/commands/doctor.test.js +131 -0
  94. package/dist/commands/doctor.test.js.map +1 -1
  95. package/dist/commands/handshake.d.ts +25 -0
  96. package/dist/commands/handshake.d.ts.map +1 -1
  97. package/dist/commands/handshake.js +795 -18
  98. package/dist/commands/handshake.js.map +1 -1
  99. package/dist/commands/method.d.ts.map +1 -1
  100. package/dist/commands/method.js +3 -0
  101. package/dist/commands/method.js.map +1 -1
  102. package/dist/commands/orient.d.ts +4 -2
  103. package/dist/commands/orient.d.ts.map +1 -1
  104. package/dist/commands/orient.js +16 -2
  105. package/dist/commands/orient.js.map +1 -1
  106. package/dist/commands/setup-detect-surfaces.d.ts +38 -0
  107. package/dist/commands/setup-detect-surfaces.d.ts.map +1 -0
  108. package/dist/commands/setup-detect-surfaces.js +67 -0
  109. package/dist/commands/setup-detect-surfaces.js.map +1 -0
  110. package/dist/commands/setup-ingest.d.ts.map +1 -1
  111. package/dist/commands/setup-ingest.js +4 -2
  112. package/dist/commands/setup-ingest.js.map +1 -1
  113. package/dist/commands/setup-state.d.ts +42 -0
  114. package/dist/commands/setup-state.d.ts.map +1 -0
  115. package/dist/commands/setup-state.js +93 -0
  116. package/dist/commands/setup-state.js.map +1 -0
  117. package/dist/commands/setup.d.ts +17 -9
  118. package/dist/commands/setup.d.ts.map +1 -1
  119. package/dist/commands/setup.js +52 -131
  120. package/dist/commands/setup.js.map +1 -1
  121. package/dist/commands/upgrade.d.ts +5 -0
  122. package/dist/commands/upgrade.d.ts.map +1 -0
  123. package/dist/commands/upgrade.js +89 -0
  124. package/dist/commands/upgrade.js.map +1 -0
  125. package/dist/formatters/handshake.d.ts +12 -0
  126. package/dist/formatters/handshake.d.ts.map +1 -1
  127. package/dist/formatters/handshake.js +32 -0
  128. package/dist/formatters/handshake.js.map +1 -1
  129. package/dist/formatters/orient.d.ts +10 -4
  130. package/dist/formatters/orient.d.ts.map +1 -1
  131. package/dist/formatters/orient.js +32 -16
  132. package/dist/formatters/orient.js.map +1 -1
  133. package/dist/generators/context-md.js +6 -6
  134. package/dist/generators/context-md.js.map +1 -1
  135. package/dist/generators/manifest.d.ts +76 -0
  136. package/dist/generators/manifest.d.ts.map +1 -1
  137. package/dist/generators/manifest.js +125 -14
  138. package/dist/generators/manifest.js.map +1 -1
  139. package/dist/generators/portable-knowledge.d.ts +2 -2
  140. package/dist/generators/portable-knowledge.d.ts.map +1 -1
  141. package/dist/generators/surface-profiles.d.ts +1 -2
  142. package/dist/generators/surface-profiles.d.ts.map +1 -1
  143. package/dist/generators/surface-profiles.js.map +1 -1
  144. package/dist/index.js +43 -18
  145. package/dist/index.js.map +1 -1
  146. package/dist/lib/activation.js +2 -2
  147. package/dist/lib/activation.js.map +1 -1
  148. package/dist/lib/activation.test.js +3 -3
  149. package/dist/lib/activation.test.js.map +1 -1
  150. package/dist/lib/canonicalRefs.d.ts +72 -0
  151. package/dist/lib/canonicalRefs.d.ts.map +1 -1
  152. package/dist/lib/canonicalRefs.js +67 -0
  153. package/dist/lib/canonicalRefs.js.map +1 -1
  154. package/dist/lib/client.d.ts.map +1 -1
  155. package/dist/lib/client.js +13 -3
  156. package/dist/lib/client.js.map +1 -1
  157. package/dist/lib/constants.d.ts +2 -0
  158. package/dist/lib/constants.d.ts.map +1 -1
  159. package/dist/lib/constants.js +2 -0
  160. package/dist/lib/constants.js.map +1 -1
  161. package/dist/lib/errors.d.ts +1 -0
  162. package/dist/lib/errors.d.ts.map +1 -1
  163. package/dist/lib/errors.js +1 -0
  164. package/dist/lib/errors.js.map +1 -1
  165. package/dist/lib/onboarding-shared.js +1 -1
  166. package/dist/lib/onboarding-shared.js.map +1 -1
  167. package/dist/lib/update-check.d.ts +20 -0
  168. package/dist/lib/update-check.d.ts.map +1 -1
  169. package/dist/lib/update-check.js +122 -21
  170. package/dist/lib/update-check.js.map +1 -1
  171. package/dist/lib/upgrade-runner.d.ts +21 -0
  172. package/dist/lib/upgrade-runner.d.ts.map +1 -0
  173. package/dist/lib/upgrade-runner.js +109 -0
  174. package/dist/lib/upgrade-runner.js.map +1 -0
  175. package/dist/lib/workspaceVocabCache.d.ts +60 -0
  176. package/dist/lib/workspaceVocabCache.d.ts.map +1 -0
  177. package/dist/lib/workspaceVocabCache.js +98 -0
  178. package/dist/lib/workspaceVocabCache.js.map +1 -0
  179. package/dist/setup/__tests__/coach-traces.test.d.ts +2 -0
  180. package/dist/setup/__tests__/coach-traces.test.d.ts.map +1 -0
  181. package/dist/setup/__tests__/coach-traces.test.js +189 -0
  182. package/dist/setup/__tests__/coach-traces.test.js.map +1 -0
  183. package/dist/setup/__tests__/setup-commands.test.d.ts +2 -0
  184. package/dist/setup/__tests__/setup-commands.test.d.ts.map +1 -0
  185. package/dist/setup/__tests__/setup-commands.test.js +177 -0
  186. package/dist/setup/__tests__/setup-commands.test.js.map +1 -0
  187. package/dist/setup/__tests__/state-machine.test.d.ts +2 -0
  188. package/dist/setup/__tests__/state-machine.test.d.ts.map +1 -0
  189. package/dist/setup/__tests__/state-machine.test.js +341 -0
  190. package/dist/setup/__tests__/state-machine.test.js.map +1 -0
  191. package/dist/setup/detect-surfaces.d.ts +21 -0
  192. package/dist/setup/detect-surfaces.d.ts.map +1 -0
  193. package/dist/setup/detect-surfaces.js +39 -0
  194. package/dist/setup/detect-surfaces.js.map +1 -0
  195. package/dist/setup/manifest-writer.d.ts +17 -0
  196. package/dist/setup/manifest-writer.d.ts.map +1 -0
  197. package/dist/setup/manifest-writer.js +153 -0
  198. package/dist/setup/manifest-writer.js.map +1 -0
  199. package/dist/setup/perimeter.d.ts +62 -0
  200. package/dist/setup/perimeter.d.ts.map +1 -0
  201. package/dist/setup/perimeter.js +113 -0
  202. package/dist/setup/perimeter.js.map +1 -0
  203. package/dist/setup/state-machine.d.ts +67 -0
  204. package/dist/setup/state-machine.d.ts.map +1 -0
  205. package/dist/setup/state-machine.js +124 -0
  206. package/dist/setup/state-machine.js.map +1 -0
  207. package/dist/surfaces/__tests__/adapter.test.d.ts +2 -0
  208. package/dist/surfaces/__tests__/adapter.test.d.ts.map +1 -0
  209. package/dist/surfaces/__tests__/adapter.test.js +90 -0
  210. package/dist/surfaces/__tests__/adapter.test.js.map +1 -0
  211. package/dist/surfaces/__tests__/pb-setup-passthrough.test.d.ts +2 -0
  212. package/dist/surfaces/__tests__/pb-setup-passthrough.test.d.ts.map +1 -0
  213. package/dist/surfaces/__tests__/pb-setup-passthrough.test.js +132 -0
  214. package/dist/surfaces/__tests__/pb-setup-passthrough.test.js.map +1 -0
  215. package/dist/surfaces/__tests__/telemetry.test.d.ts +2 -0
  216. package/dist/surfaces/__tests__/telemetry.test.d.ts.map +1 -0
  217. package/dist/surfaces/__tests__/telemetry.test.js +55 -0
  218. package/dist/surfaces/__tests__/telemetry.test.js.map +1 -0
  219. package/dist/surfaces/adapter.d.ts +70 -0
  220. package/dist/surfaces/adapter.d.ts.map +1 -0
  221. package/dist/surfaces/adapter.js +2 -0
  222. package/dist/surfaces/adapter.js.map +1 -0
  223. package/dist/surfaces/adapters/claude.d.ts +3 -0
  224. package/dist/surfaces/adapters/claude.d.ts.map +1 -0
  225. package/dist/surfaces/adapters/claude.js +67 -0
  226. package/dist/surfaces/adapters/claude.js.map +1 -0
  227. package/dist/surfaces/adapters/codex.d.ts +3 -0
  228. package/dist/surfaces/adapters/codex.d.ts.map +1 -0
  229. package/dist/surfaces/adapters/codex.js +61 -0
  230. package/dist/surfaces/adapters/codex.js.map +1 -0
  231. package/dist/surfaces/adapters/copilot.d.ts +3 -0
  232. package/dist/surfaces/adapters/copilot.d.ts.map +1 -0
  233. package/dist/surfaces/adapters/copilot.js +59 -0
  234. package/dist/surfaces/adapters/copilot.js.map +1 -0
  235. package/dist/surfaces/adapters/cursor.d.ts +3 -0
  236. package/dist/surfaces/adapters/cursor.d.ts.map +1 -0
  237. package/dist/surfaces/adapters/cursor.js +78 -0
  238. package/dist/surfaces/adapters/cursor.js.map +1 -0
  239. package/dist/surfaces/registry.d.ts +58 -2
  240. package/dist/surfaces/registry.d.ts.map +1 -1
  241. package/dist/surfaces/registry.js +82 -7
  242. package/dist/surfaces/registry.js.map +1 -1
  243. package/dist/surfaces/telemetry.d.ts +17 -0
  244. package/dist/surfaces/telemetry.d.ts.map +1 -0
  245. package/dist/surfaces/telemetry.js +31 -0
  246. package/dist/surfaces/telemetry.js.map +1 -0
  247. package/package.json +2 -1
@@ -0,0 +1,38 @@
1
+ /**
2
+ * `pb setup-detect-surfaces` — WP-431 S3.
3
+ *
4
+ * Walks the repo for known surface markers (delegated to SURFACE_ADAPTERS) and
5
+ * union-merges the result with whatever `manifest.surfaces` already declares.
6
+ * STD-235 forward-only: detection NEVER removes a surface; only adds. Manifest
7
+ * write goes through `writeManifestSurfaces` which calls `assertSetupWritePath`
8
+ * (STD-234 perimeter).
9
+ *
10
+ * WP-433 S2: After the local manifest write, stamps the detected surfaces onto
11
+ * the server via `setup.stampDetectedSurfaces` so Phase 1 → Phase 2 advances in
12
+ * one server call (TEN-1990 / IMP-10). If the server call fails, the error is
13
+ * logged and surfaced to the caller but the local manifest is NOT rolled back
14
+ * (it is already on disk; the next run will retry the server stamp).
15
+ */
16
+ export interface RunSetupDetectSurfacesOptions {
17
+ cwd?: string;
18
+ /** Skip the server stamp call (used in tests / offline mode). */
19
+ skipServerStamp?: boolean;
20
+ }
21
+ export interface SetupDetectSurfacesResult {
22
+ detected: string[];
23
+ existing: string[];
24
+ newlyAdded: string[];
25
+ union: string[];
26
+ manifestUpdated: boolean;
27
+ manifestPath: string;
28
+ /** WP-433 S2: result of the server stamp call, or null if skipped / not needed. */
29
+ serverStamp: {
30
+ stamped: boolean;
31
+ surfaces: string[];
32
+ } | null;
33
+ /** WP-433 S2: error from the server stamp call, if any. Does NOT abort the local write. */
34
+ serverStampError: string | null;
35
+ }
36
+ export declare function runSetupDetectSurfaces(opts?: RunSetupDetectSurfacesOptions): Promise<SetupDetectSurfacesResult>;
37
+ export declare function formatDetectSurfacesSummary(result: SetupDetectSurfacesResult): string;
38
+ //# sourceMappingURL=setup-detect-surfaces.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"setup-detect-surfaces.d.ts","sourceRoot":"","sources":["../../src/commands/setup-detect-surfaces.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAMH,MAAM,WAAW,6BAA6B;IAC5C,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,iEAAiE;IACjE,eAAe,CAAC,EAAE,OAAO,CAAC;CAC3B;AAED,MAAM,WAAW,yBAAyB;IACxC,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,UAAU,EAAE,MAAM,EAAE,CAAC;IACrB,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,eAAe,EAAE,OAAO,CAAC;IACzB,YAAY,EAAE,MAAM,CAAC;IACrB,mFAAmF;IACnF,WAAW,EAAE;QAAE,OAAO,EAAE,OAAO,CAAC;QAAC,QAAQ,EAAE,MAAM,EAAE,CAAA;KAAE,GAAG,IAAI,CAAC;IAC7D,2FAA2F;IAC3F,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAAC;CACjC;AAED,wBAAsB,sBAAsB,CAC1C,IAAI,GAAE,6BAAkC,GACvC,OAAO,CAAC,yBAAyB,CAAC,CAsCpC;AAED,wBAAgB,2BAA2B,CAAC,MAAM,EAAE,yBAAyB,GAAG,MAAM,CAYrF"}
@@ -0,0 +1,67 @@
1
+ /**
2
+ * `pb setup-detect-surfaces` — WP-431 S3.
3
+ *
4
+ * Walks the repo for known surface markers (delegated to SURFACE_ADAPTERS) and
5
+ * union-merges the result with whatever `manifest.surfaces` already declares.
6
+ * STD-235 forward-only: detection NEVER removes a surface; only adds. Manifest
7
+ * write goes through `writeManifestSurfaces` which calls `assertSetupWritePath`
8
+ * (STD-234 perimeter).
9
+ *
10
+ * WP-433 S2: After the local manifest write, stamps the detected surfaces onto
11
+ * the server via `setup.stampDetectedSurfaces` so Phase 1 → Phase 2 advances in
12
+ * one server call (TEN-1990 / IMP-10). If the server call fails, the error is
13
+ * logged and surfaced to the caller but the local manifest is NOT rolled back
14
+ * (it is already on disk; the next run will retry the server stamp).
15
+ */
16
+ import { detectSurfaces, unionSurfaces } from '../setup/detect-surfaces.js';
17
+ import { readManifestSurfaces, writeManifestSurfaces } from '../setup/manifest-writer.js';
18
+ import { kernelCall } from '../lib/client.js';
19
+ export async function runSetupDetectSurfaces(opts = {}) {
20
+ const cwd = opts.cwd ?? process.cwd();
21
+ const detected = await detectSurfaces(cwd);
22
+ const existing = readManifestSurfaces(cwd);
23
+ const union = unionSurfaces(existing, detected);
24
+ const existingSet = new Set(existing);
25
+ const newlyAdded = detected.filter((s) => !existingSet.has(s));
26
+ // Local manifest write (always runs first — server stamp is best-effort).
27
+ const writeResult = await writeManifestSurfaces(cwd, union);
28
+ // WP-433 S2: Stamp surfaces to server so state machine can advance Phase 1 → Phase 2.
29
+ // Only stamp if there are surfaces to declare (no-op on empty union).
30
+ // Error handling: log + surface to caller but do NOT roll back the local write.
31
+ // No config pre-check — kernelCall handles missing config; errors are caught below.
32
+ let serverStamp = null;
33
+ let serverStampError = null;
34
+ if (!opts.skipServerStamp && union.length > 0) {
35
+ try {
36
+ serverStamp = await kernelCall('setup.stampDetectedSurfaces', { surfaces: union });
37
+ }
38
+ catch (err) {
39
+ serverStampError = err instanceof Error ? err.message : String(err);
40
+ }
41
+ }
42
+ return {
43
+ detected: [...detected].sort(),
44
+ existing: [...existing].sort(),
45
+ newlyAdded: [...newlyAdded].sort(),
46
+ union,
47
+ manifestUpdated: writeResult.written,
48
+ manifestPath: writeResult.path,
49
+ serverStamp,
50
+ serverStampError,
51
+ };
52
+ }
53
+ export function formatDetectSurfacesSummary(result) {
54
+ const detected = result.detected.length === 0 ? 'none' : result.detected.join(', ');
55
+ const newOnes = result.newlyAdded.length === 0 ? 'none' : result.newlyAdded.join(', ');
56
+ const existing = result.existing.length === 0 ? 'none' : result.existing.join(', ');
57
+ const status = result.manifestUpdated ? 'Manifest updated.' : 'Manifest unchanged.';
58
+ let serverStatus = '';
59
+ if (result.serverStampError) {
60
+ serverStatus = ` Server stamp failed: ${result.serverStampError}`;
61
+ }
62
+ else if (result.serverStamp !== null) {
63
+ serverStatus = result.serverStamp.stamped ? ' Server stamped.' : ' Server: surfaces already current.';
64
+ }
65
+ return `Detected: ${detected} (new: ${newOnes}). Existing: ${existing}. ${status}${serverStatus}`;
66
+ }
67
+ //# sourceMappingURL=setup-detect-surfaces.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"setup-detect-surfaces.js","sourceRoot":"","sources":["../../src/commands/setup-detect-surfaces.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"setup-ingest.d.ts","sourceRoot":"","sources":["../../src/commands/setup-ingest.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAUH,MAAM,WAAW,kBAAkB;IACjC,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AA8GD,wBAAsB,cAAc,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,GAAE,kBAAuB,GAAG,OAAO,CAAC,IAAI,CAAC,CAoInG"}
1
+ {"version":3,"file":"setup-ingest.d.ts","sourceRoot":"","sources":["../../src/commands/setup-ingest.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAUH,MAAM,WAAW,kBAAkB;IACjC,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAgHD,wBAAsB,cAAc,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,GAAE,kBAAuB,GAAG,OAAO,CAAC,IAAI,CAAC,CAqInG"}
@@ -62,12 +62,13 @@ function parseFrontmatter(raw) {
62
62
  if (currentArrayKey) {
63
63
  arrayFields.set(currentArrayKey, currentArrayValues);
64
64
  }
65
+ const id = fields.get('id');
65
66
  const name = fields.get('name') ?? body.match(/^# (.+)$/m)?.[1] ?? '';
66
67
  const description = fields.get('description') ?? '';
67
68
  const triggers = arrayFields.get('triggers') ?? [];
68
69
  const semanticRefs = arrayFields.get('semanticRefs') ?? [];
69
70
  const assetKind = fields.get('assetKind');
70
- return { name, description, triggers, semanticRefs, assetKind, body };
71
+ return { id, name, description, triggers, semanticRefs, assetKind, body };
71
72
  }
72
73
  /**
73
74
  * Infer AssetKind from the file's directory path.
@@ -132,7 +133,7 @@ export async function runSetupIngest(filePath, opts = {}) {
132
133
  }
133
134
  // Parse frontmatter
134
135
  const raw = readFileSync(absPath, 'utf-8');
135
- const { name, description, body, triggers, semanticRefs, assetKind: fmKind } = parseFrontmatter(raw);
136
+ const { id, name, description, body, triggers, semanticRefs, assetKind: fmKind } = parseFrontmatter(raw);
136
137
  // Determine assetKind — explicit bundle frontmatter always rejects this generic path.
137
138
  // For skill/rule/hook, directory still wins and frontmatter is fallback.
138
139
  const frontmatterKind = fmKind ? normalizeFrontmatterKind(fmKind) : null;
@@ -192,6 +193,7 @@ export async function runSetupIngest(filePath, opts = {}) {
192
193
  result = await kernelCall('setup.ingestSetupAsset', {
193
194
  workspaceId,
194
195
  entryId,
196
+ frontmatterId: id,
195
197
  name: resolvedName,
196
198
  description,
197
199
  body,
@@ -1 +1 @@
1
- {"version":3,"file":"setup-ingest.js","sourceRoot":"","sources":["../../src/commands/setup-ingest.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"setup-ingest.js","sourceRoot":"","sources":["../../src/commands/setup-ingest.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,42 @@
1
+ /**
2
+ * `pb setup-state` — WP-431 S3.
3
+ *
4
+ * Calls the Convex `getPbSetupState` query and emits the result as compact JSON
5
+ * on stdout. Machine-readable always — the skill body parses this.
6
+ *
7
+ * Auth & userId injection (STD-234 perimeter):
8
+ * The HTTP gateway derives `workspaceId` and `userId` from the API key and
9
+ * passes them server-side; the CLI does not need to know the user's id.
10
+ * Defense-in-depth equality check happens inside the query handler.
11
+ *
12
+ * Exit codes (CLI convention):
13
+ * 0 success — JSON written to stdout
14
+ * 2 auth/permission — AUTH_* / AUTHZ_* error class
15
+ * 3 network — host unreachable / fetch failed
16
+ * 1 other (validation / internal)
17
+ */
18
+ export interface RunSetupStateOptions {
19
+ /** Pre-fetched state — used by `pb setup` to avoid a duplicate gateway round-trip. */
20
+ preloaded?: SetupStateResult;
21
+ }
22
+ export interface SetupStateResult {
23
+ phase: number | 'settings';
24
+ role: 'creator' | 'joiner';
25
+ expectedAction: string;
26
+ reasonForPhase: string;
27
+ isComplete: boolean;
28
+ /**
29
+ * WP-431 S3 review fix #1: structural surfaceCapability passthrough.
30
+ * Mirrors the resolver output (PbSetupStateOutput.surfaceCapability).
31
+ */
32
+ surfaceCapability: 'cli' | 'chat-only';
33
+ }
34
+ export declare function fetchSetupState(): Promise<SetupStateResult>;
35
+ export declare function runSetupState(opts?: RunSetupStateOptions): Promise<void>;
36
+ /**
37
+ * Map a setup-state failure to the documented exit-code contract.
38
+ * Always re-throws (typed `never`) so the global handler in index.ts can format
39
+ * the message; we route through CLIError so JSON mode reports `code` cleanly.
40
+ */
41
+ export declare function handleSetupError(err: unknown): never;
42
+ //# sourceMappingURL=setup-state.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"setup-state.d.ts","sourceRoot":"","sources":["../../src/commands/setup-state.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAKH,MAAM,WAAW,oBAAoB;IACnC,sFAAsF;IACtF,SAAS,CAAC,EAAE,gBAAgB,CAAC;CAC9B;AAED,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,MAAM,GAAG,UAAU,CAAC;IAC3B,IAAI,EAAE,SAAS,GAAG,QAAQ,CAAC;IAC3B,cAAc,EAAE,MAAM,CAAC;IACvB,cAAc,EAAE,MAAM,CAAC;IACvB,UAAU,EAAE,OAAO,CAAC;IACpB;;;OAGG;IACH,iBAAiB,EAAE,KAAK,GAAG,WAAW,CAAC;CACxC;AAED,wBAAsB,eAAe,IAAI,OAAO,CAAC,gBAAgB,CAAC,CAEjE;AAED,wBAAsB,aAAa,CAAC,IAAI,GAAE,oBAAyB,GAAG,OAAO,CAAC,IAAI,CAAC,CAQlF;AAED;;;;GAIG;AACH,wBAAgB,gBAAgB,CAAC,GAAG,EAAE,OAAO,GAAG,KAAK,CAiCpD"}
@@ -0,0 +1,93 @@
1
+ /**
2
+ * `pb setup-state` — WP-431 S3.
3
+ *
4
+ * Calls the Convex `getPbSetupState` query and emits the result as compact JSON
5
+ * on stdout. Machine-readable always — the skill body parses this.
6
+ *
7
+ * Auth & userId injection (STD-234 perimeter):
8
+ * The HTTP gateway derives `workspaceId` and `userId` from the API key and
9
+ * passes them server-side; the CLI does not need to know the user's id.
10
+ * Defense-in-depth equality check happens inside the query handler.
11
+ *
12
+ * Exit codes (CLI convention):
13
+ * 0 success — JSON written to stdout
14
+ * 2 auth/permission — AUTH_* / AUTHZ_* error class
15
+ * 3 network — host unreachable / fetch failed
16
+ * 1 other (validation / internal)
17
+ */
18
+ import { kernelCall, McpError } from '../lib/client.js';
19
+ import { CLIError, ErrorCode } from '../lib/errors.js';
20
+ export async function fetchSetupState() {
21
+ return await kernelCall('setup.getPbSetupState', {});
22
+ }
23
+ export async function runSetupState(opts = {}) {
24
+ let result;
25
+ try {
26
+ result = opts.preloaded ?? (await fetchSetupState());
27
+ }
28
+ catch (err) {
29
+ handleSetupError(err);
30
+ }
31
+ process.stdout.write(JSON.stringify(result) + '\n');
32
+ }
33
+ /**
34
+ * Map a setup-state failure to the documented exit-code contract.
35
+ * Always re-throws (typed `never`) so the global handler in index.ts can format
36
+ * the message; we route through CLIError so JSON mode reports `code` cleanly.
37
+ */
38
+ export function handleSetupError(err) {
39
+ if (err instanceof McpError) {
40
+ const code = err.code;
41
+ if (code && (code.startsWith('AUTH') || code.startsWith('AUTHZ'))) {
42
+ const wrapped = new CLIError(err.message, {
43
+ code: ErrorCode.AUTH_DENIED,
44
+ category: 'auth',
45
+ guidance: 'Run `pb login` to refresh your API key, or check workspace membership.',
46
+ });
47
+ writeJsonError(wrapped);
48
+ process.exit(2);
49
+ }
50
+ writeJsonError(err);
51
+ process.exit(1);
52
+ }
53
+ if (err instanceof CLIError && err.category === 'network') {
54
+ writeJsonError(err);
55
+ process.exit(3);
56
+ }
57
+ if (err instanceof CLIError && err.category === 'auth') {
58
+ writeJsonError(err);
59
+ process.exit(2);
60
+ }
61
+ if (err instanceof CLIError) {
62
+ writeJsonError(err);
63
+ process.exit(1);
64
+ }
65
+ const wrapped = new CLIError(err instanceof Error ? err.message : String(err), {
66
+ code: ErrorCode.INTERNAL,
67
+ category: 'internal',
68
+ });
69
+ writeJsonError(wrapped);
70
+ process.exit(1);
71
+ }
72
+ /**
73
+ * Write a structured JSON error to stderr. WP-431 S3 review (Boy Scout #2):
74
+ * route every shape through CLIError.toJSON() so the stderr envelope is
75
+ * identical to every other CLI command (no per-call ad-hoc shapes).
76
+ */
77
+ function writeJsonError(err) {
78
+ const cliErr = toCLIError(err);
79
+ process.stderr.write(JSON.stringify(cliErr.toJSON()) + '\n');
80
+ }
81
+ function toCLIError(err) {
82
+ if (err instanceof CLIError)
83
+ return err;
84
+ if (err instanceof Error) {
85
+ const code = err.code;
86
+ const errorCode = code && Object.values(ErrorCode).includes(code)
87
+ ? code
88
+ : ErrorCode.INTERNAL;
89
+ return new CLIError(err.message, { code: errorCode, category: 'internal' });
90
+ }
91
+ return new CLIError(String(err), { code: ErrorCode.INTERNAL, category: 'internal' });
92
+ }
93
+ //# sourceMappingURL=setup-state.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"setup-state.js","sourceRoot":"","sources":["../../src/commands/setup-state.ts"],"names":[],"mappings":"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"}
@@ -1,15 +1,23 @@
1
1
  /**
2
- * pb setup — guided first-time onboarding: npm install first capture.
3
- * WP-301 Slice 3. Each step emits telemetry (STD-155 event names).
2
+ * `pb setup`WP-431 S3 canonical entry point (DEC-995).
4
3
  *
5
4
  * Flow:
6
- * 0. Check existing config offer health check or continue to login
7
- * 1. Account check signup URL or login inline
8
- * 2. Workspace binding confirmation
9
- * 3. Guided first capture (starts a session, captures via MCP)
10
- * 4. Summary with next-step hint
5
+ * 1. Auto-detect surface markers and union-merge into `manifest.surfaces` (S3 #1).
6
+ * Phase-1 users land here with empty surfaces; this single auto-detect lifts
7
+ * them to Phase 2 without requiring a separate `pb setup-detect-surfaces` run.
8
+ * 2. Read pb-setup state via the Convex query (`setup.getPbSetupState`).
9
+ * 3. Record invocation receipt — first-write-wins per DEC-996, idempotent.
10
+ * 4. Emit the resolved state JSON on stdout for the skill body to consume.
11
11
  *
12
- * WP-303 Slice 1: migrated from readline to @clack/prompts via lib/prompts.ts.
12
+ * `pb start` (session-start alias) is unchanged and keeps the same call path it
13
+ * had before this slice.
14
+ *
15
+ * Legacy `pb setup` (WP-301) — guided onboarding via @clack/prompts — is removed
16
+ * from the canonical entry per DEC-995. The login flow remains reachable via
17
+ * `pb login`.
13
18
  */
14
- export declare function runSetup(): Promise<void>;
19
+ export interface RunSetupOptions {
20
+ cwd?: string;
21
+ }
22
+ export declare function runSetup(opts?: RunSetupOptions): Promise<void>;
15
23
  //# sourceMappingURL=setup.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"setup.d.ts","sourceRoot":"","sources":["../../src/commands/setup.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AA+BH,wBAAsB,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC,CAE9C"}
1
+ {"version":3,"file":"setup.d.ts","sourceRoot":"","sources":["../../src/commands/setup.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAMH,MAAM,WAAW,eAAe;IAC9B,GAAG,CAAC,EAAE,MAAM,CAAC;CACd;AAED,wBAAsB,QAAQ,CAAC,IAAI,GAAE,eAAoB,GAAG,OAAO,CAAC,IAAI,CAAC,CA8BxE"}
@@ -1,148 +1,69 @@
1
1
  /**
2
- * pb setup — guided first-time onboarding: npm install first capture.
3
- * WP-301 Slice 3. Each step emits telemetry (STD-155 event names).
2
+ * `pb setup`WP-431 S3 canonical entry point (DEC-995).
4
3
  *
5
4
  * Flow:
6
- * 0. Check existing config offer health check or continue to login
7
- * 1. Account check signup URL or login inline
8
- * 2. Workspace binding confirmation
9
- * 3. Guided first capture (starts a session, captures via MCP)
10
- * 4. Summary with next-step hint
5
+ * 1. Auto-detect surface markers and union-merge into `manifest.surfaces` (S3 #1).
6
+ * Phase-1 users land here with empty surfaces; this single auto-detect lifts
7
+ * them to Phase 2 without requiring a separate `pb setup-detect-surfaces` run.
8
+ * 2. Read pb-setup state via the Convex query (`setup.getPbSetupState`).
9
+ * 3. Record invocation receipt — first-write-wins per DEC-996, idempotent.
10
+ * 4. Emit the resolved state JSON on stdout for the skill body to consume.
11
11
  *
12
- * WP-303 Slice 1: migrated from readline to @clack/prompts via lib/prompts.ts.
12
+ * `pb start` (session-start alias) is unchanged and keeps the same call path it
13
+ * had before this slice.
14
+ *
15
+ * Legacy `pb setup` (WP-301) — guided onboarding via @clack/prompts — is removed
16
+ * from the canonical entry per DEC-995. The login flow remains reachable via
17
+ * `pb login`.
13
18
  */
14
- import { getConfig } from '../lib/config.js';
19
+ import { runSetupDetectSurfaces, formatDetectSurfacesSummary } from './setup-detect-surfaces.js';
20
+ import { fetchSetupState, handleSetupError } from './setup-state.js';
15
21
  import { kernelCall } from '../lib/client.js';
16
- import { readSession, writeSession } from '../lib/session.js';
17
- import { trackEvent } from '../lib/telemetry.js';
18
- import { runLogin } from './login.js';
19
- import { initTelemetry } from '../lib/telemetry.js';
20
- import { confirm as promptConfirm } from '../lib/prompts.js';
21
- import { bold } from '../lib/style.js';
22
- /** Mask an API key for display: show prefix + last 4 chars. */
23
- function maskKey(key) {
24
- if (key.length <= 10)
25
- return key.slice(0, 6) + '****';
26
- return key.slice(0, 6) + '...' + key.slice(-4);
27
- }
28
- export async function runSetup() {
29
- await runSetupFlow();
30
- }
31
- async function runSetupFlow() {
32
- console.log('');
33
- console.log('Product Brain — Setup');
34
- console.log('=====================');
35
- console.log('');
36
- // Step 1: Check existing config
37
- let hasValidConfig = false;
22
+ export async function runSetup(opts = {}) {
23
+ const cwd = opts.cwd ?? process.cwd();
24
+ const isTty = Boolean(process.stdout.isTTY);
25
+ let initialState;
38
26
  try {
39
- const config = getConfig();
40
- hasValidConfig = true;
41
- console.log(`Already configured: ${maskKey(config.apiKey)}`);
42
- console.log(`API endpoint: ${config.siteUrl}`);
43
- console.log('');
44
- // Verify workspace connectivity
45
- let wsName = 'your workspace';
46
- let wsId;
47
- try {
48
- const workspace = await kernelCall('resolveWorkspace', {});
49
- if (workspace?.name) {
50
- console.log(`Connected to workspace: ${workspace.name}`);
51
- wsName = workspace.name;
52
- wsId = workspace._id;
53
- }
54
- else {
55
- console.log('Workspace connection verified.');
56
- }
57
- trackEvent('workspace_bound');
58
- }
59
- catch {
60
- console.log('Warning: Could not verify workspace connection. Your key may be invalid.');
61
- console.log('Run `pb login` to re-enter your API key.');
62
- return;
63
- }
64
- console.log('');
65
- // Already configured — go straight to onboarding conversation (WP-304)
66
- await ensureSessionAndOnboard(wsName, wsId);
67
- return;
27
+ initialState = await fetchSetupState();
68
28
  }
69
- catch {
70
- // No valid config — continue to login
29
+ catch (err) {
30
+ handleSetupError(err);
71
31
  }
72
- // Step 2: Account check + login (only if no valid config)
73
- if (!hasValidConfig) {
74
- console.log('To get started, you need a Product Brain account and API key.');
75
- console.log('');
76
- const hasAccount = await promptConfirm({ message: 'Do you have a Product Brain account?', initialValue: false });
77
- if (!hasAccount) {
78
- console.log('');
79
- console.log('Create an account at: https://productbrain.io');
80
- console.log('Then come back and run: pb setup');
81
- console.log('');
82
- return;
32
+ // Always record invocation first-write-wins per DEC-996.
33
+ await recordInvocationBestEffort(initialState);
34
+ let finalState = initialState;
35
+ if (initialState.phase === 1) {
36
+ const detect = await runSetupDetectSurfaces({ cwd });
37
+ if (isTty) {
38
+ process.stderr.write(formatDetectSurfacesSummary(detect) + '\n');
83
39
  }
84
- // Run login flow — handles key prompt, validation, and saving
85
- console.log('');
86
- await runLogin();
87
- trackEvent('key_validated');
88
- await runSetupPostLogin();
89
- return;
90
- }
91
- }
92
- async function runSetupPostLogin() {
93
- console.log('');
94
- let wsName = 'your workspace';
95
- let wsId;
96
- try {
97
- const workspace = await kernelCall('resolveWorkspace', {});
98
- if (workspace?.name) {
99
- console.log(`Connected to workspace: ${workspace.name}`);
100
- wsName = workspace.name;
101
- wsId = workspace._id;
40
+ if (detect.manifestUpdated) {
41
+ try {
42
+ finalState = await fetchSetupState();
43
+ }
44
+ catch (err) {
45
+ handleSetupError(err);
46
+ }
102
47
  }
103
- trackEvent('workspace_bound');
104
- }
105
- catch {
106
- console.log('Could not reach workspace. Try: pb orient -b');
107
- return;
108
48
  }
109
- await ensureSessionAndOnboard(wsName, wsId);
49
+ process.stdout.write(JSON.stringify(finalState) + '\n');
110
50
  }
111
- /** Ensure a session exists, then run the onboarding conversation. */
112
- async function ensureSessionAndOnboard(workspaceName, workspaceId) {
113
- let session = readSession();
114
- if (!session) {
115
- try {
116
- const resolvedWs = workspaceId
117
- ? { _id: workspaceId, keyId: null }
118
- : await kernelCall('resolveWorkspace', {});
119
- if (!resolvedWs)
120
- return;
121
- const result = await kernelCall('agent.startSession', {
122
- workspaceId: resolvedWs._id,
123
- apiKeyId: resolvedWs.keyId,
124
- clientKind: 'cli',
125
- });
126
- session = {
127
- sessionId: result.sessionId,
128
- workspaceId: resolvedWs._id,
129
- workspaceName: workspaceName,
130
- startedAt: new Date().toISOString(),
131
- entriesCaptured: [],
132
- };
133
- writeSession(session);
134
- }
135
- catch {
136
- // Session start failed — onboarding can still work for reads
137
- }
138
- }
139
- // Initialize telemetry with workspace context
140
- if (session?.workspaceId) {
141
- initTelemetry(session.workspaceId);
51
+ async function recordInvocationBestEffort(state) {
52
+ // WP-431 S3 review fix #1: surfaceCapability is now a structural field on the
53
+ // resolver output (PbSetupStateOutput.surfaceCapability) — read it directly
54
+ // rather than string-grepping reasonForPhase strings the producer never
55
+ // emits. The pre-fix `inferSurfaceCapability` always returned 'cli' for
56
+ // chat-only users, silently breaking KEY-32 dual-threshold telemetry.
57
+ const surfaceCapability = state.surfaceCapability;
58
+ try {
59
+ await kernelCall('setup.recordSetupInvocation', { surfaceCapability });
142
60
  }
143
- else if (workspaceId) {
144
- initTelemetry(workspaceId);
61
+ catch (err) {
62
+ // Best-effort — invocation receipt is telemetry, never block the state
63
+ // read. WP-431 S3 review (Boy Scout #1): log to stderr so a silent failure
64
+ // doesn't strand KEY-32 dual-threshold attribution.
65
+ const message = err instanceof Error ? err.message : String(err);
66
+ process.stderr.write(`[pb setup] invocation attribution failed: ${message}\n`);
145
67
  }
146
- process.stdout.write(`\n Setup complete. Run ${bold('pb session start')} to begin a session.\n\n`);
147
68
  }
148
69
  //# sourceMappingURL=setup.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"setup.js","sourceRoot":"","sources":["../../src/commands/setup.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAC7C,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EAAE,WAAW,EAAE,YAAY,EAAqB,MAAM,mBAAmB,CAAC;AACjF,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AACjD,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,EAAE,OAAO,IAAI,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAC7D,OAAO,EAAE,IAAI,EAAE,MAAM,iBAAiB,CAAC;AAEvC,+DAA+D;AAC/D,SAAS,OAAO,CAAC,GAAW;IAC1B,IAAI,GAAG,CAAC,MAAM,IAAI,EAAE;QAAE,OAAO,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,MAAM,CAAC;IACtD,OAAO,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;AACjD,CAAC;AAgBD,MAAM,CAAC,KAAK,UAAU,QAAQ;IAC5B,MAAM,YAAY,EAAE,CAAC;AACvB,CAAC;AAED,KAAK,UAAU,YAAY;IACzB,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAChB,OAAO,CAAC,GAAG,CAAC,uBAAuB,CAAC,CAAC;IACrC,OAAO,CAAC,GAAG,CAAC,uBAAuB,CAAC,CAAC;IACrC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAEhB,gCAAgC;IAChC,IAAI,cAAc,GAAG,KAAK,CAAC;IAC3B,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,SAAS,EAAE,CAAC;QAC3B,cAAc,GAAG,IAAI,CAAC;QACtB,OAAO,CAAC,GAAG,CAAC,uBAAuB,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QAC7D,OAAO,CAAC,GAAG,CAAC,iBAAiB,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC;QAC/C,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAEhB,gCAAgC;QAChC,IAAI,MAAM,GAAG,gBAAgB,CAAC;QAC9B,IAAI,IAAwB,CAAC;QAC7B,IAAI,CAAC;YACH,MAAM,SAAS,GAAG,MAAM,UAAU,CAAyB,kBAAkB,EAAE,EAAE,CAAC,CAAC;YACnF,IAAI,SAAS,EAAE,IAAI,EAAE,CAAC;gBACpB,OAAO,CAAC,GAAG,CAAC,2BAA2B,SAAS,CAAC,IAAI,EAAE,CAAC,CAAC;gBACzD,MAAM,GAAG,SAAS,CAAC,IAAI,CAAC;gBACxB,IAAI,GAAG,SAAS,CAAC,GAAG,CAAC;YACvB,CAAC;iBAAM,CAAC;gBACN,OAAO,CAAC,GAAG,CAAC,gCAAgC,CAAC,CAAC;YAChD,CAAC;YACD,UAAU,CAAC,iBAAiB,CAAC,CAAC;QAChC,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,CAAC,GAAG,CAAC,0EAA0E,CAAC,CAAC;YACxF,OAAO,CAAC,GAAG,CAAC,0CAA0C,CAAC,CAAC;YACxD,OAAO;QACT,CAAC;QACD,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAEhB,uEAAuE;QACvE,MAAM,uBAAuB,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;QAC5C,OAAO;IACT,CAAC;IAAC,MAAM,CAAC;QACP,sCAAsC;IACxC,CAAC;IAED,0DAA0D;IAC1D,IAAI,CAAC,cAAc,EAAE,CAAC;QACpB,OAAO,CAAC,GAAG,CAAC,+DAA+D,CAAC,CAAC;QAC7E,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAEhB,MAAM,UAAU,GAAG,MAAM,aAAa,CAAC,EAAE,OAAO,EAAE,sCAAsC,EAAE,YAAY,EAAE,KAAK,EAAE,CAAC,CAAC;QAEjH,IAAI,CAAC,UAAU,EAAE,CAAC;YAChB,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YAChB,OAAO,CAAC,GAAG,CAAC,+CAA+C,CAAC,CAAC;YAC7D,OAAO,CAAC,GAAG,CAAC,kCAAkC,CAAC,CAAC;YAChD,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YAChB,OAAO;QACT,CAAC;QAED,8DAA8D;QAC9D,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAChB,MAAM,QAAQ,EAAE,CAAC;QACjB,UAAU,CAAC,eAAe,CAAC,CAAC;QAE5B,MAAM,iBAAiB,EAAE,CAAC;QAC1B,OAAO;IACT,CAAC;AAEH,CAAC;AAED,KAAK,UAAU,iBAAiB;IAC9B,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAChB,IAAI,MAAM,GAAG,gBAAgB,CAAC;IAC9B,IAAI,IAAwB,CAAC;IAC7B,IAAI,CAAC;QACH,MAAM,SAAS,GAAG,MAAM,UAAU,CAAyB,kBAAkB,EAAE,EAAE,CAAC,CAAC;QACnF,IAAI,SAAS,EAAE,IAAI,EAAE,CAAC;YACpB,OAAO,CAAC,GAAG,CAAC,2BAA2B,SAAS,CAAC,IAAI,EAAE,CAAC,CAAC;YACzD,MAAM,GAAG,SAAS,CAAC,IAAI,CAAC;YACxB,IAAI,GAAG,SAAS,CAAC,GAAG,CAAC;QACvB,CAAC;QACD,UAAU,CAAC,iBAAiB,CAAC,CAAC;IAChC,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,CAAC,GAAG,CAAC,8CAA8C,CAAC,CAAC;QAC5D,OAAO;IACT,CAAC;IAED,MAAM,uBAAuB,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;AAC9C,CAAC;AAED,qEAAqE;AACrE,KAAK,UAAU,uBAAuB,CAAC,aAAqB,EAAE,WAAoB;IAChF,IAAI,OAAO,GAAG,WAAW,EAAE,CAAC;IAC5B,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,IAAI,CAAC;YACH,MAAM,UAAU,GAAG,WAAW;gBAC5B,CAAC,CAAC,EAAE,GAAG,EAAE,WAAW,EAAE,KAAK,EAAE,IAAqB,EAAE;gBACpD,CAAC,CAAC,MAAM,UAAU,CAAyB,kBAAkB,EAAE,EAAE,CAAC,CAAC;YAErE,IAAI,CAAC,UAAU;gBAAE,OAAO;YAExB,MAAM,MAAM,GAAG,MAAM,UAAU,CAAqB,oBAAoB,EAAE;gBACxE,WAAW,EAAE,UAAU,CAAC,GAAG;gBAC3B,QAAQ,EAAE,UAAU,CAAC,KAAK;gBAC1B,UAAU,EAAE,KAAK;aAClB,CAAC,CAAC;YAEH,OAAO,GAAG;gBACR,SAAS,EAAE,MAAM,CAAC,SAAS;gBAC3B,WAAW,EAAE,UAAU,CAAC,GAAG;gBAC3B,aAAa,EAAE,aAAa;gBAC5B,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;gBACnC,eAAe,EAAE,EAAE;aACpB,CAAC;YACF,YAAY,CAAC,OAAO,CAAC,CAAC;QACxB,CAAC;QAAC,MAAM,CAAC;YACP,6DAA6D;QAC/D,CAAC;IACH,CAAC;IAED,8CAA8C;IAC9C,IAAI,OAAO,EAAE,WAAW,EAAE,CAAC;QACzB,aAAa,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;IACrC,CAAC;SAAM,IAAI,WAAW,EAAE,CAAC;QACvB,aAAa,CAAC,WAAW,CAAC,CAAC;IAC7B,CAAC;IAED,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,2BAA2B,IAAI,CAAC,kBAAkB,CAAC,0BAA0B,CAAC,CAAC;AACtG,CAAC"}
1
+ {"version":3,"file":"setup.js","sourceRoot":"","sources":["../../src/commands/setup.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAEH,OAAO,EAAE,sBAAsB,EAAE,2BAA2B,EAAE,MAAM,4BAA4B,CAAC;AACjG,OAAO,EAAE,eAAe,EAAE,gBAAgB,EAAyB,MAAM,kBAAkB,CAAC;AAC5F,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAM9C,MAAM,CAAC,KAAK,UAAU,QAAQ,CAAC,OAAwB,EAAE;IACvD,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC;IACtC,MAAM,KAAK,GAAG,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IAE5C,IAAI,YAA8B,CAAC;IACnC,IAAI,CAAC;QACH,YAAY,GAAG,MAAM,eAAe,EAAE,CAAC;IACzC,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,gBAAgB,CAAC,GAAG,CAAC,CAAC;IACxB,CAAC;IAED,2DAA2D;IAC3D,MAAM,0BAA0B,CAAC,YAAY,CAAC,CAAC;IAE/C,IAAI,UAAU,GAAG,YAAY,CAAC;IAC9B,IAAI,YAAY,CAAC,KAAK,KAAK,CAAC,EAAE,CAAC;QAC7B,MAAM,MAAM,GAAG,MAAM,sBAAsB,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC;QACrD,IAAI,KAAK,EAAE,CAAC;YACV,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,2BAA2B,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC,CAAC;QACnE,CAAC;QACD,IAAI,MAAM,CAAC,eAAe,EAAE,CAAC;YAC3B,IAAI,CAAC;gBACH,UAAU,GAAG,MAAM,eAAe,EAAE,CAAC;YACvC,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,gBAAgB,CAAC,GAAG,CAAC,CAAC;YACxB,CAAC;QACH,CAAC;IACH,CAAC;IAED,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,GAAG,IAAI,CAAC,CAAC;AAC1D,CAAC;AAED,KAAK,UAAU,0BAA0B,CAAC,KAAuB;IAC/D,8EAA8E;IAC9E,4EAA4E;IAC5E,wEAAwE;IACxE,wEAAwE;IACxE,sEAAsE;IACtE,MAAM,iBAAiB,GAAG,KAAK,CAAC,iBAAiB,CAAC;IAClD,IAAI,CAAC;QACH,MAAM,UAAU,CAAC,6BAA6B,EAAE,EAAE,iBAAiB,EAAE,CAAC,CAAC;IACzE,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,uEAAuE;QACvE,2EAA2E;QAC3E,oDAAoD;QACpD,MAAM,OAAO,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QACjE,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,6CAA6C,OAAO,IAAI,CAAC,CAAC;IACjF,CAAC;AACH,CAAC"}
@@ -0,0 +1,5 @@
1
+ export type RunUpgradeOptions = {
2
+ currentVersion: string;
3
+ };
4
+ export declare function runUpgrade({ currentVersion }: RunUpgradeOptions): Promise<void>;
5
+ //# sourceMappingURL=upgrade.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"upgrade.d.ts","sourceRoot":"","sources":["../../src/commands/upgrade.tsx"],"names":[],"mappings":"AAQA,MAAM,MAAM,iBAAiB,GAAG;IAC9B,cAAc,EAAE,MAAM,CAAC;CACxB,CAAC;AA8FF,wBAAsB,UAAU,CAAC,EAAE,cAAc,EAAE,EAAE,iBAAiB,GAAG,OAAO,CAAC,IAAI,CAAC,CAgCrF"}