@posthog/wizard 2.79.1 → 2.80.0

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 (192) hide show
  1. package/dist/{PickerMenu-dG5DQCZA.js → PickerMenu-m4CCPX4f.js} +10 -10
  2. package/dist/PickerMenu-m4CCPX4f.js.map +1 -0
  3. package/dist/{agent-BWFhuLgo.js → agent-BkBbVuNq.js} +48 -37
  4. package/dist/agent-BkBbVuNq.js.map +1 -0
  5. package/dist/agent-QGK2YzlX.js +6 -0
  6. package/dist/{agent-interface-FkbaBJwz.js → agent-interface-CzyCmp7q.js} +68 -31
  7. package/dist/agent-interface-CzyCmp7q.js.map +1 -0
  8. package/dist/{agent-prompt-loader-D0weQ-7k.js → agent-prompt-loader-4wMxlYSX.js} +5 -5
  9. package/dist/{agent-prompt-loader-D0weQ-7k.js.map → agent-prompt-loader-4wMxlYSX.js.map} +1 -1
  10. package/dist/{analytics-DXK1gc12.js → analytics-B6q5PN7a.js} +5 -5
  11. package/dist/analytics-B6q5PN7a.js.map +1 -0
  12. package/dist/analytics-BXtfK9o7.js +2 -0
  13. package/dist/{api-CrbCIQOz.js → api-C3Dc4LFl.js} +3 -3
  14. package/dist/{api-CrbCIQOz.js.map → api-C3Dc4LFl.js.map} +1 -1
  15. package/dist/api-yNjrfZs2.js +2 -0
  16. package/dist/bin.js +1 -1
  17. package/dist/{bounded-fs-vAq-T-K7.js → bounded-fs-CC_NDtoP.js} +3 -3
  18. package/dist/{bounded-fs-vAq-T-K7.js.map → bounded-fs-CC_NDtoP.js.map} +1 -1
  19. package/dist/check-screens.tsx +5 -5
  20. package/dist/{ci-install-COcV8SY2.js → ci-install-DfcAMhlu.js} +7 -7
  21. package/dist/ci-install-DfcAMhlu.js.map +1 -0
  22. package/dist/{constants-DHCBSfnx.js → constants-DO4X70po.js} +3 -3
  23. package/dist/{constants-DHCBSfnx.js.map → constants-DO4X70po.js.map} +1 -1
  24. package/dist/{debug-BuYHGr6_.js → debug-BueK5mRR.js} +1 -1
  25. package/dist/{debug-kAHwWGg7.js → debug-DyARf5TF.js} +3 -3
  26. package/dist/debug-DyARf5TF.js.map +1 -0
  27. package/dist/{defaults-a9TelDhJ.js → defaults-DpfMnH2q.js} +2 -2
  28. package/dist/defaults-DpfMnH2q.js.map +1 -0
  29. package/dist/{endpoints-BVMYm9F4.js → endpoints-D-4KxZiB.js} +3 -3
  30. package/dist/{endpoints-BVMYm9F4.js.map → endpoints-D-4KxZiB.js.map} +1 -1
  31. package/dist/env-api-key-CHGLe0iz.js +2 -0
  32. package/dist/{env-api-key-BP-NFFXt.js → env-api-key-COf0U-Au.js} +2 -2
  33. package/dist/{env-api-key-BP-NFFXt.js.map → env-api-key-COf0U-Au.js.map} +1 -1
  34. package/dist/{environment-BATlQxcQ.js → environment-DrLaSsA8.js} +4 -4
  35. package/dist/{environment-BATlQxcQ.js.map → environment-DrLaSsA8.js.map} +1 -1
  36. package/dist/environment-hBj7ngmO.js +2 -0
  37. package/dist/{file-DcRKycV8.js → file-CVA9ocIC.js} +3 -3
  38. package/dist/file-CVA9ocIC.js.map +1 -0
  39. package/dist/file-CmoKK_Pp.js +2 -0
  40. package/dist/{file-watcher-Brq2nnHV.js → file-watcher-C3Su8vXm.js} +3 -3
  41. package/dist/file-watcher-C3Su8vXm.js.map +1 -0
  42. package/dist/{gateway-C9-GlLO9.js → gateway-BmjYUSua.js} +6 -6
  43. package/dist/{gateway-C9-GlLO9.js.map → gateway-BmjYUSua.js.map} +1 -1
  44. package/dist/{headless-ui-CqI2gXlD.js → headless-ui-CUbv12Yx.js} +3 -3
  45. package/dist/headless-ui-CUbv12Yx.js.map +1 -0
  46. package/dist/host-resolution-DVSb7kXb.js +114 -0
  47. package/dist/host-resolution-DVSb7kXb.js.map +1 -0
  48. package/dist/{add-mcp-server-to-clients-DIaTRWMY.js → install-Bk5TNk27.js} +15 -14
  49. package/dist/install-Bk5TNk27.js.map +1 -0
  50. package/dist/{add-mcp-server-to-clients-artmN7mz.js → install-F4wm3RSl.js} +1 -1
  51. package/dist/interactive-C5LNvDj6.js +11 -0
  52. package/dist/interactive-C5LNvDj6.js.map +1 -0
  53. package/dist/{telemetry-B7zJdRmA.js → links-9LWZPSCq.js} +4 -13
  54. package/dist/links-9LWZPSCq.js.map +1 -0
  55. package/dist/{logging-ui-Dza4D0MK.js → logging-ui-p6XKVmTx.js} +6 -6
  56. package/dist/logging-ui-p6XKVmTx.js.map +1 -0
  57. package/dist/{main-CgKxbwMP.js → main-DKPjFHEV.js} +149 -141
  58. package/dist/main-DKPjFHEV.js.map +1 -0
  59. package/dist/{mcp-DnAyW0-w.js → mcp-Co8VRF62.js} +4 -4
  60. package/dist/{mcp-DnAyW0-w.js.map → mcp-Co8VRF62.js.map} +1 -1
  61. package/dist/mcp-install-smoke-test.ts +1 -1
  62. package/dist/{mcp-prompt-streaming-DDWQ-FCA.js → mcp-prompt-streaming-ljCVoQ9I.js} +6 -6
  63. package/dist/{mcp-prompt-streaming-DDWQ-FCA.js.map → mcp-prompt-streaming-ljCVoQ9I.js.map} +1 -1
  64. package/dist/{mint-failure-u8xQKNOn.js → mint-failure-C0HyvEwO.js} +103 -92
  65. package/dist/mint-failure-C0HyvEwO.js.map +1 -0
  66. package/dist/{models-WcwUnSKb.js → models-Dba8ITeo.js} +2 -2
  67. package/dist/{models-WcwUnSKb.js.map → models-Dba8ITeo.js.map} +1 -1
  68. package/dist/{non-interactive-DyVC1AGc.js → non-interactive-CLMJrj_7.js} +3 -3
  69. package/dist/non-interactive-CLMJrj_7.js.map +1 -0
  70. package/dist/{oauth-session-DYM2Hrl2.js → oauth-session-D-RfcVmr.js} +2 -2
  71. package/dist/{oauth-session-DYM2Hrl2.js.map → oauth-session-D-RfcVmr.js.map} +1 -1
  72. package/dist/{orchestrator-tools-DbgNBFGA.js → orchestrator-tools-CVJ1F9Ub.js} +3 -3
  73. package/dist/{orchestrator-tools-DbgNBFGA.js.map → orchestrator-tools-CVJ1F9Ub.js.map} +1 -1
  74. package/dist/package-json--ppioh2F.js +2 -0
  75. package/dist/{package-json-Atg34fa4.js → package-json-Cowya9-3.js} +1 -1
  76. package/dist/{package-json-Atg34fa4.js.map → package-json-Cowya9-3.js.map} +1 -1
  77. package/dist/{pi-8KsYsPmM.js → pi-B5YTBRDv.js} +18 -17
  78. package/dist/pi-B5YTBRDv.js.map +1 -0
  79. package/dist/{playground-BlYRBMj7.js → playground-BLsCfHmQ.js} +33 -33
  80. package/dist/playground-BLsCfHmQ.js.map +1 -0
  81. package/dist/posthog-B2E0hpZt.js +2 -0
  82. package/dist/{posthog-Bt0Aplb8.js → posthog-B42rt_1S.js} +3 -3
  83. package/dist/posthog-B42rt_1S.js.map +1 -0
  84. package/dist/project-data--L-WZyvj.js +2 -0
  85. package/dist/{setup-utils-B26Lf2yF.js → project-data-BO9IXn9y.js} +566 -947
  86. package/dist/project-data-BO9IXn9y.js.map +1 -0
  87. package/dist/provisioning-C01REIU2.js +2 -0
  88. package/dist/{provisioning-Bo2NRxFz.js → provisioning-CLhuKqXH.js} +6 -67
  89. package/dist/provisioning-CLhuKqXH.js.map +1 -0
  90. package/dist/{queue-tools-C8mXOh7e.js → queue-tools-knnPQP0e.js} +4 -4
  91. package/dist/{queue-tools-C8mXOh7e.js.map → queue-tools-knnPQP0e.js.map} +1 -1
  92. package/dist/{registry-CD5RQt38.js → registry-B3rC5U4b.js} +6 -6
  93. package/dist/{registry-CD5RQt38.js.map → registry-B3rC5U4b.js.map} +1 -1
  94. package/dist/registry-BamsM7J9.js +2 -0
  95. package/dist/run-agent-legacy-CwUmPfQF.js +2 -0
  96. package/dist/{run-agent-legacy-DOlM6DQu.js → run-agent-legacy-DWBajsMh.js} +38 -111
  97. package/dist/run-agent-legacy-DWBajsMh.js.map +1 -0
  98. package/dist/{runners-ov3EXF1n.js → runners-D1PqqpjA.js} +38 -38
  99. package/dist/runners-D1PqqpjA.js.map +1 -0
  100. package/dist/{security-C71pkwqH.js → security-BvdSFDuM.js} +5 -5
  101. package/dist/{security-C71pkwqH.js.map → security-BvdSFDuM.js.map} +1 -1
  102. package/dist/setup-utils-ChXXTi1m.js +301 -0
  103. package/dist/setup-utils-ChXXTi1m.js.map +1 -0
  104. package/dist/{start-tui-Bo2L0bar.js → start-tui-DicLfgsj.js} +92 -90
  105. package/dist/start-tui-DicLfgsj.js.map +1 -0
  106. package/dist/{steps-BPcg3_3Q.js → steps-Hc28zVc_.js} +10 -10
  107. package/dist/steps-Hc28zVc_.js.map +1 -0
  108. package/dist/store-COCO6U0P.js +5 -0
  109. package/dist/{store-BTzcvRGT.js → store-D3509G87.js} +66 -28
  110. package/dist/store-D3509G87.js.map +1 -0
  111. package/dist/{subagent-D1TrTchE.js → subagent-D_Sqak94.js} +3 -3
  112. package/dist/{subagent-D1TrTchE.js.map → subagent-D_Sqak94.js.map} +1 -1
  113. package/dist/{task-DqRlQBfs.js → task-DiTI6Sak.js} +16 -16
  114. package/dist/task-DiTI6Sak.js.map +1 -0
  115. package/dist/{wizard-ui-DVqrYaOM.js → task-status-CmrrR7zo.js} +2 -2
  116. package/dist/task-status-CmrrR7zo.js.map +1 -0
  117. package/dist/{task-stream-Bw6JaLCX.js → task-stream-BckhG_cB.js} +10 -10
  118. package/dist/task-stream-BckhG_cB.js.map +1 -0
  119. package/dist/{tasks-ChWufsdO.js → tasks-ChZ_F1YP.js} +1 -1
  120. package/dist/{tasks-ChWufsdO.js.map → tasks-ChZ_F1YP.js.map} +1 -1
  121. package/dist/telemetry-BNKsDxNS.js +13 -0
  122. package/dist/telemetry-BNKsDxNS.js.map +1 -0
  123. package/dist/{terminal-zgkEfoCL.js → terminal-PK9bCLRi.js} +123 -97
  124. package/dist/terminal-PK9bCLRi.js.map +1 -0
  125. package/dist/{tools-CkJ2y9Wt.js → tools-C8LQ8QFz.js} +8 -8
  126. package/dist/{tools-CkJ2y9Wt.js.map → tools-C8LQ8QFz.js.map} +1 -1
  127. package/dist/{ui-Q6-RvERF.js → ui-tPNpM6vj.js} +3 -3
  128. package/dist/ui-tPNpM6vj.js.map +1 -0
  129. package/dist/urls-BI4kJ4qQ.js +67 -0
  130. package/dist/urls-BI4kJ4qQ.js.map +1 -0
  131. package/dist/{version-CHhJjz_H.js → version-5_ydHkM6.js} +2 -2
  132. package/dist/{version-CHhJjz_H.js.map → version-5_ydHkM6.js.map} +1 -1
  133. package/dist/{wizard-abort-Br1qMDNa.js → wizard-abort-BVjqLyeA.js} +1 -1
  134. package/dist/{wizard-abort-BPdv07np.js → wizard-abort-DBKtfnBR.js} +18 -16
  135. package/dist/wizard-abort-DBKtfnBR.js.map +1 -0
  136. package/dist/wizard-session-B7BHnay0.js +2 -0
  137. package/dist/{wizard-session-2w4Ru-Wz.js → wizard-session-BYw6LzpS.js} +30 -28
  138. package/dist/wizard-session-BYw6LzpS.js.map +1 -0
  139. package/dist/{yara-hooks-BnxejtXK.js → yara-hooks-C3L6lBij.js} +5 -5
  140. package/dist/{yara-hooks-BnxejtXK.js.map → yara-hooks-C3L6lBij.js.map} +1 -1
  141. package/dist/yara-hooks-CF_IsoaA.js +2 -0
  142. package/package.json +2 -3
  143. package/dist/PickerMenu-dG5DQCZA.js.map +0 -1
  144. package/dist/add-mcp-server-to-clients-DIaTRWMY.js.map +0 -1
  145. package/dist/agent-BEjARD2a.js +0 -6
  146. package/dist/agent-BWFhuLgo.js.map +0 -1
  147. package/dist/agent-interface-FkbaBJwz.js.map +0 -1
  148. package/dist/analytics-DFtbRjYh.js +0 -2
  149. package/dist/analytics-DXK1gc12.js.map +0 -1
  150. package/dist/api-Cm9UtKZh.js +0 -2
  151. package/dist/ci-install-COcV8SY2.js.map +0 -1
  152. package/dist/debug-kAHwWGg7.js.map +0 -1
  153. package/dist/defaults-a9TelDhJ.js.map +0 -1
  154. package/dist/env-api-key-CaWEDj_9.js +0 -2
  155. package/dist/environment-CwD8OPYj.js +0 -2
  156. package/dist/file-C5JMsyR1.js +0 -2
  157. package/dist/file-DcRKycV8.js.map +0 -1
  158. package/dist/file-watcher-Brq2nnHV.js.map +0 -1
  159. package/dist/headless-ui-CqI2gXlD.js.map +0 -1
  160. package/dist/interactive-B_Ti_CsS.js +0 -11
  161. package/dist/interactive-B_Ti_CsS.js.map +0 -1
  162. package/dist/logging-ui-Dza4D0MK.js.map +0 -1
  163. package/dist/main-CgKxbwMP.js.map +0 -1
  164. package/dist/mint-failure-u8xQKNOn.js.map +0 -1
  165. package/dist/non-interactive-DyVC1AGc.js.map +0 -1
  166. package/dist/package-json-D8Ga03tK.js +0 -2
  167. package/dist/pi-8KsYsPmM.js.map +0 -1
  168. package/dist/playground-BlYRBMj7.js.map +0 -1
  169. package/dist/posthog-Bt0Aplb8.js.map +0 -1
  170. package/dist/posthog-CUgCEhH0.js +0 -2
  171. package/dist/provisioning-Bo2NRxFz.js.map +0 -1
  172. package/dist/provisioning-OGFGlzf7.js +0 -2
  173. package/dist/registry-C06e_x-p.js +0 -2
  174. package/dist/run-agent-legacy-ChacZImU.js +0 -2
  175. package/dist/run-agent-legacy-DOlM6DQu.js.map +0 -1
  176. package/dist/runners-ov3EXF1n.js.map +0 -1
  177. package/dist/setup-utils-B26Lf2yF.js.map +0 -1
  178. package/dist/setup-utils-CVS86NYR.js +0 -2
  179. package/dist/start-tui-Bo2L0bar.js.map +0 -1
  180. package/dist/steps-BPcg3_3Q.js.map +0 -1
  181. package/dist/store-BTzcvRGT.js.map +0 -1
  182. package/dist/store-BpqySPXm.js +0 -5
  183. package/dist/task-DqRlQBfs.js.map +0 -1
  184. package/dist/task-stream-Bw6JaLCX.js.map +0 -1
  185. package/dist/telemetry-B7zJdRmA.js.map +0 -1
  186. package/dist/terminal-zgkEfoCL.js.map +0 -1
  187. package/dist/ui-Q6-RvERF.js.map +0 -1
  188. package/dist/wizard-abort-BPdv07np.js.map +0 -1
  189. package/dist/wizard-session-2w4Ru-Wz.js.map +0 -1
  190. package/dist/wizard-session-DGaUHOF3.js +0 -2
  191. package/dist/wizard-ui-DVqrYaOM.js.map +0 -1
  192. package/dist/yara-hooks-DSuExwb4.js +0 -2
@@ -1,24 +1,24 @@
1
- import { I as WIZARD_TOOL_NAMES, n as buildRunTags, nt as LONGER_ASK_TIMEOUT_MS } from "./agent-interface-FkbaBJwz.js";
1
+ import { I as WIZARD_TOOL_NAMES, ct as LONGER_ASK_TIMEOUT_MS, lt as shouldDisableAsk, n as buildRunTags } from "./agent-interface-CzyCmp7q.js";
2
2
  import { n as ErrorCodes } from "./emit-BSetXzDV.js";
3
- import { r as debug, s as logToFile, x as regionOption, y as headlessOption } from "./debug-kAHwWGg7.js";
4
- import { $ as getSkillsBaseUrl, Q as WIZARD_USER_AGENT, U as WIZARD_INTERACTION_EVENT_NAME, f as EVENTS_AUDIT_REPORT_FILE, h as EVENT_PLAN_FILE, k as POSTHOG_DOCS_URL, n as AGENTIC_DETECTION_RETRY_TIMEOUT_MS, t as AGENTIC_DETECTION_FIRST_ATTEMPT_TIMEOUT_MS, u as DETECTION_TIMEOUT_MS, w as Integration } from "./constants-DHCBSfnx.js";
5
- import { r as mayReportScanResults } from "./wizard-session-2w4Ru-Wz.js";
6
- import { n as analytics } from "./analytics-DXK1gc12.js";
7
- import { i as withUtm, n as openTrackedLink } from "./telemetry-B7zJdRmA.js";
3
+ import { r as debug, s as logToFile, x as regionOption, y as headlessOption } from "./debug-DyARf5TF.js";
4
+ import { $ as getSkillsBaseUrl, Q as WIZARD_USER_AGENT, U as WIZARD_INTERACTION_EVENT_NAME, f as EVENTS_AUDIT_REPORT_FILE, h as EVENT_PLAN_FILE, k as POSTHOG_DOCS_URL, n as AGENTIC_DETECTION_RETRY_TIMEOUT_MS, t as AGENTIC_DETECTION_FIRST_ATTEMPT_TIMEOUT_MS, u as DETECTION_TIMEOUT_MS, w as Integration } from "./constants-DO4X70po.js";
5
+ import { r as mayReportScanResults } from "./wizard-session-BYw6LzpS.js";
6
+ import { n as analytics } from "./analytics-B6q5PN7a.js";
7
+ import { r as withUtm, t as openTrackedLink } from "./links-9LWZPSCq.js";
8
8
  import "./errors-C2domSkK.js";
9
- import { a as safeReadFile, o as walkProjectFiles } from "./bounded-fs-vAq-T-K7.js";
10
- import { a as isUsingTypeScript, g as detectNodePackageManagers, o as tryGetPackageJson } from "./setup-utils-B26Lf2yF.js";
11
- import { a as getBlockingServiceKeys, i as evaluateWizardReadiness, r as SIGNUP_WIZARD_READINESS_CONFIG } from "./logging-ui-Dza4D0MK.js";
12
- import { t as getUI } from "./ui-Q6-RvERF.js";
13
- import { r as requestDeepLink } from "./provisioning-Bo2NRxFz.js";
14
- import { l as handleApiError } from "./api-CrbCIQOz.js";
15
- import { i as wizardAbort } from "./wizard-abort-BPdv07np.js";
16
- import { s as AgentSignals } from "./gateway-C9-GlLO9.js";
17
- import { c as shouldDisableAsk, i as resolveScanBindings, n as runAgent } from "./agent-BWFhuLgo.js";
18
- import { g as AUDIT_REPORT_FILE, h as AUDIT_CHECKS_FILE } from "./yara-hooks-BnxejtXK.js";
19
- import { y as writeJsonAtomic } from "./queue-tools-C8mXOh7e.js";
20
- import { a as getDetectedWarehouseSources, c as AUDIT_CHECKS_KEY, d as authenticate, i as detectWarehousePrerequisites, m as stampAiSdkDetected, n as DETECTED_WAREHOUSE_SOURCES_KEY, o as detectWarehouseSources, p as createUiReducer, r as WAREHOUSE_ABORT_CASES, s as discoverFeatures, t as runProgramAgent } from "./run-agent-legacy-DOlM6DQu.js";
21
- import { r as SPINNER_MESSAGE, t as FRAMEWORK_REGISTRY } from "./registry-CD5RQt38.js";
9
+ import { a as safeReadFile, o as walkProjectFiles } from "./bounded-fs-CC_NDtoP.js";
10
+ import { i as tryGetPackageJson, r as isUsingTypeScript, s as detectNodePackageManagers } from "./setup-utils-ChXXTi1m.js";
11
+ import { a as getBlockingServiceKeys, i as evaluateWizardReadiness, r as SIGNUP_WIZARD_READINESS_CONFIG } from "./logging-ui-p6XKVmTx.js";
12
+ import { t as getUI } from "./ui-tPNpM6vj.js";
13
+ import { r as wizardAbort } from "./wizard-abort-DBKtfnBR.js";
14
+ import { s as AgentSignals } from "./gateway-BmjYUSua.js";
15
+ import { a as resolveScanBindings, r as runAgent } from "./agent-BkBbVuNq.js";
16
+ import { g as AUDIT_REPORT_FILE, h as AUDIT_CHECKS_FILE } from "./yara-hooks-C3L6lBij.js";
17
+ import { y as writeJsonAtomic } from "./queue-tools-knnPQP0e.js";
18
+ import { a as getDetectedWarehouseSources, c as AUDIT_CHECKS_KEY, d as createUiReducer, f as stampAiSdkDetected, i as detectWarehousePrerequisites, n as DETECTED_WAREHOUSE_SOURCES_KEY, o as detectWarehouseSources, r as WAREHOUSE_ABORT_CASES, s as discoverFeatures, t as runProgramAgent, u as authenticate } from "./run-agent-legacy-DWBajsMh.js";
19
+ import { r as SPINNER_MESSAGE, t as FRAMEWORK_REGISTRY } from "./registry-B3rC5U4b.js";
20
+ import { r as requestDeepLink } from "./provisioning-CLhuKqXH.js";
21
+ import { l as handleApiError } from "./api-C3Dc4LFl.js";
22
22
  import * as semver from "semver";
23
23
  import { existsSync, readFileSync, readdirSync, statSync } from "fs";
24
24
  import path, { isAbsolute, join, relative, resolve, sep } from "path";
@@ -521,7 +521,7 @@ async function scopeInstallDirToProject(session, runner) {
521
521
  runner.log.info(`Continuing with ${project.path} (${project.framework}).`);
522
522
  }
523
523
  //#endregion
524
- //#region src/programs/shared/health-check-step.ts
524
+ //#region src/tui/programs/shared/health-check-step.ts
525
525
  function healthCheckReady(session) {
526
526
  if (!session.readinessResult) return false;
527
527
  if (session.signup) {
@@ -593,7 +593,7 @@ function findPackageJsons(installDir, maxDepth = 3) {
593
593
  return matches;
594
594
  }
595
595
  //#endregion
596
- //#region src/programs/posthog-integration/detect.ts
596
+ //#region src/programs/detection/integration.ts
597
597
  async function detectPostHogIntegration(ctx) {
598
598
  const session = ctx.session;
599
599
  const installDir = session.installDir;
@@ -726,7 +726,7 @@ function detectExistingPostHog(ctx, installDir) {
726
726
  }
727
727
  }
728
728
  //#endregion
729
- //#region src/programs/posthog-integration/steps.ts
729
+ //#region src/tui/programs/posthog-integration/flow.ts
730
730
  function needsSetup$1(session) {
731
731
  const config = session.frameworkConfig;
732
732
  if (!config?.metadata.setup?.questions) return false;
@@ -789,7 +789,7 @@ const POSTHOG_INTEGRATION_PROGRAM = [
789
789
  }
790
790
  ];
791
791
  //#endregion
792
- //#region src/ui/tui/styles.ts
792
+ //#region src/tui/styles.ts
793
793
  const Colors = {
794
794
  primary: "cyan",
795
795
  accent: "#DC9300",
@@ -810,7 +810,7 @@ const Icons = {
810
810
  bullet: "•"
811
811
  };
812
812
  //#endregion
813
- //#region src/ui/tui/primitives/text-helpers.ts
813
+ //#region src/tui/primitives/text-helpers.ts
814
814
  /**
815
815
  * Text-splitting helpers for sentence boundary detection.
816
816
  * Used by TextBlock for animation pauses at punctuation.
@@ -852,7 +852,7 @@ function sentenceEndWords(text) {
852
852
  return ends;
853
853
  }
854
854
  //#endregion
855
- //#region src/ui/tui/primitives/content-types.ts
855
+ //#region src/tui/primitives/content-types.ts
856
856
  /** Type guard for lines blocks. */
857
857
  function isLinesBlock(block) {
858
858
  return typeof block !== "string" && "type" in block && block.type === "lines";
@@ -866,7 +866,7 @@ function isObjectBlock(block) {
866
866
  return typeof block !== "string" && !("type" in block);
867
867
  }
868
868
  //#endregion
869
- //#region src/ui/tui/primitives/layout-helpers.ts
869
+ //#region src/tui/primitives/layout-helpers.ts
870
870
  /**
871
871
  * Estimate the number of terminal rows a content block will occupy,
872
872
  * including 1 row of marginBottom.
@@ -932,7 +932,7 @@ function wrapAndTruncate(text, availableWidth, maxRows) {
932
932
  return lines.slice(-maxRows).join("\n");
933
933
  }
934
934
  //#endregion
935
- //#region src/ui/tui/primitives/TextBlock.tsx
935
+ //#region src/tui/primitives/TextBlock.tsx
936
936
  /**
937
937
  * TextBlock — Animates a single string paragraph.
938
938
  *
@@ -1027,7 +1027,7 @@ const TextBlock = ({ text, active, completed, onComplete, mode, bullet, animatio
1027
1027
  }, si))] });
1028
1028
  };
1029
1029
  //#endregion
1030
- //#region src/ui/tui/components/StatusPeekTrigger.tsx
1030
+ //#region src/tui/components/StatusPeekTrigger.tsx
1031
1031
  /**
1032
1032
  * StatusPeekTrigger — Fires the status-bar expansion once, renders a hint.
1033
1033
  *
@@ -1047,7 +1047,7 @@ const StatusPeekTrigger = ({ store, duration = 1e4 }) => {
1047
1047
  return /* @__PURE__ */ jsx(Text, { children: "You can view the Wizard's status below." });
1048
1048
  };
1049
1049
  //#endregion
1050
- //#region src/ui/tui/decks/posthog-integration/data-flow.tsx
1050
+ //#region src/tui/programs/posthog-integration/deck/data-flow.tsx
1051
1051
  /**
1052
1052
  * POSTHOG_DATA_FLOW — ASCII diagram of the PostHog event ingestion flow.
1053
1053
  */
@@ -1216,7 +1216,7 @@ const POSTHOG_DATA_FLOW = {
1216
1216
  ]
1217
1217
  };
1218
1218
  //#endregion
1219
- //#region src/ui/tui/decks/posthog-integration/product-suite.tsx
1219
+ //#region src/tui/programs/shared/deck/product-suite.tsx
1220
1220
  /**
1221
1221
  * PRODUCT_SUITE_BLOCK — Two-column listing of PostHog products.
1222
1222
  */
@@ -1336,7 +1336,7 @@ const PRODUCT_SUITE_BLOCK = {
1336
1336
  ]
1337
1337
  };
1338
1338
  //#endregion
1339
- //#region src/ui/tui/decks/posthog-integration/line-chart.tsx
1339
+ //#region src/tui/programs/shared/deck/line-chart.tsx
1340
1340
  /**
1341
1341
  * LINE_CHART_BLOCK — ASCII trends chart illustrating an insight.
1342
1342
  */
@@ -1460,7 +1460,7 @@ const LINE_CHART_BLOCK = {
1460
1460
  ]
1461
1461
  };
1462
1462
  //#endregion
1463
- //#region src/ui/tui/decks/posthog-integration/funnel.tsx
1463
+ //#region src/tui/programs/shared/deck/funnel.tsx
1464
1464
  /**
1465
1465
  * FUNNEL_BLOCK — ASCII funnel illustrating step conversion.
1466
1466
  */
@@ -1640,7 +1640,7 @@ const FUNNEL_BLOCK = {
1640
1640
  ]
1641
1641
  };
1642
1642
  //#endregion
1643
- //#region src/ui/tui/decks/posthog-integration/index.tsx
1643
+ //#region src/tui/programs/posthog-integration/deck/index.tsx
1644
1644
  /**
1645
1645
  * Integration learn-deck — the narrative script played while the agent
1646
1646
  * runs the PostHog integration flow. Weaves typewriter lines, pauses,
@@ -2034,7 +2034,7 @@ const posthogIntegrationConfig = {
2034
2034
  if (usesPackageJson) {
2035
2035
  const packageJson = await tryGetPackageJson({ installDir: session.installDir });
2036
2036
  if (packageJson) {
2037
- const { hasDeclaredDependency } = await import("./package-json-D8Ga03tK.js");
2037
+ const { hasDeclaredDependency } = await import("./package-json--ppioh2F.js");
2038
2038
  if (!hasDeclaredDependency(config.detection.packageName, packageJson)) runner.log.warn(`${config.detection.packageDisplayName} does not seem to be installed. Continuing anyway — the agent will handle it.`);
2039
2039
  frameworkVersion = config.detection.getVersion(packageJson);
2040
2040
  } else runner.log.warn("Could not find package.json. Continuing anyway — the agent will handle it.");
@@ -2103,7 +2103,7 @@ ${warehouseReportInstruction(session)}
2103
2103
  postRun: async (sess, credentials) => {
2104
2104
  const envVars = config.environment.getEnvVars(credentials.projectApiKey, credentials.host.apiHost);
2105
2105
  if (config.environment.uploadToHosting) {
2106
- const { uploadEnvironmentVariablesStep } = await import("./steps-BPcg3_3Q.js");
2106
+ const { uploadEnvironmentVariablesStep } = await import("./steps-Hc28zVc_.js");
2107
2107
  const uploadedEnvVars = await uploadEnvironmentVariablesStep(envVars, {
2108
2108
  integration: config.metadata.integration,
2109
2109
  session: sess
@@ -2251,7 +2251,7 @@ function detectRevenuePrerequisites(session, setFrameworkContext) {
2251
2251
  setFrameworkContext("detectedPackagePaths", matches.filter((m) => m.posthogSdks.length > 0 || m.stripeSdks.length > 0).map((m) => m.path));
2252
2252
  }
2253
2253
  //#endregion
2254
- //#region src/programs/revenue-analytics/steps.ts
2254
+ //#region src/tui/programs/revenue-analytics/flow.ts
2255
2255
  const REVENUE_ANALYTICS_PROGRAM = [
2256
2256
  {
2257
2257
  id: "detect",
@@ -2290,7 +2290,7 @@ const REVENUE_ANALYTICS_PROGRAM = [
2290
2290
  }
2291
2291
  ];
2292
2292
  //#endregion
2293
- //#region src/ui/tui/decks/agent-skill/index.tsx
2293
+ //#region src/tui/programs/shared/skill-deck.tsx
2294
2294
  /**
2295
2295
  * Agent-skill learn-deck — the short three-line sequence shown while a
2296
2296
  * skill-based program (audit, revenue-analytics, agent-skill, etc.)
@@ -2346,7 +2346,7 @@ const revenueAnalyticsConfig = {
2346
2346
  requires: ["posthog-integration"]
2347
2347
  };
2348
2348
  //#endregion
2349
- //#region src/programs/warehouse-source/steps.ts
2349
+ //#region src/tui/programs/warehouse-source/flow.ts
2350
2350
  const WAREHOUSE_SOURCE_PROGRAM = [
2351
2351
  {
2352
2352
  id: "detect",
@@ -2427,7 +2427,7 @@ const warehouseSourceConfig = {
2427
2427
  requires: ["posthog-integration"]
2428
2428
  };
2429
2429
  //#endregion
2430
- //#region src/programs/agent-skill/steps.ts
2430
+ //#region src/tui/programs/shared/skill-flow.ts
2431
2431
  const AGENT_SKILL_STEPS = [
2432
2432
  {
2433
2433
  id: "intro",
@@ -2461,7 +2461,7 @@ const AGENT_SKILL_STEPS = [
2461
2461
  }
2462
2462
  ];
2463
2463
  //#endregion
2464
- //#region src/programs/agent-skill/index.ts
2464
+ //#region src/programs/shared/skill-program.ts
2465
2465
  function createSkillProgram(opts) {
2466
2466
  return {
2467
2467
  command: opts.command,
@@ -2487,6 +2487,21 @@ function createSkillProgram(opts) {
2487
2487
  };
2488
2488
  }
2489
2489
  //#endregion
2490
+ //#region src/tui/programs/audit/flow.ts
2491
+ /** Audit-specific screens for the shared agent-skill pipeline. */
2492
+ const AUDIT_SCREEN_BY_STEP = {
2493
+ intro: "audit-intro",
2494
+ run: "audit-run",
2495
+ outro: "audit-outro"
2496
+ };
2497
+ const withAuditScreens = (steps) => steps.map((step) => {
2498
+ const override = AUDIT_SCREEN_BY_STEP[step.id];
2499
+ return override ? {
2500
+ ...step,
2501
+ screenId: override
2502
+ } : step;
2503
+ });
2504
+ //#endregion
2490
2505
  //#region src/programs/audit/detect.ts
2491
2506
  /** `[ABORT] <reason>` cases the audit skill can emit. Reason strings are
2492
2507
  * defined in the skill's `Abort statuses` section. */
@@ -2615,23 +2630,10 @@ function seedAuditLedger(installDir, checks = AUDIT_SEED_CHECKS) {
2615
2630
  }
2616
2631
  //#endregion
2617
2632
  //#region src/programs/audit/index.ts
2618
- /** Audit-specific screens for the shared agent-skill pipeline. */
2619
- const AUDIT_SCREEN_BY_STEP = {
2620
- intro: "audit-intro",
2621
- run: "audit-run",
2622
- outro: "audit-outro"
2623
- };
2624
2633
  const seedBeforeAuditRun = (session) => {
2625
2634
  seedAuditLedger(session.installDir);
2626
2635
  session.frameworkContext[AUDIT_CHECKS_KEY] = AUDIT_SEED_CHECKS;
2627
2636
  };
2628
- const withAuditScreens = (steps) => steps.map((step) => {
2629
- const override = AUDIT_SCREEN_BY_STEP[step.id];
2630
- return override ? {
2631
- ...step,
2632
- screenId: override
2633
- } : step;
2634
- });
2635
2637
  const auditSteps = withAuditScreens(AGENT_SKILL_STEPS);
2636
2638
  const baseConfig = createSkillProgram({
2637
2639
  skillId: "audit",
@@ -2687,7 +2689,7 @@ const auditConfig = {
2687
2689
  }
2688
2690
  };
2689
2691
  //#endregion
2690
- //#region src/programs/events-audit/steps.ts
2692
+ //#region src/tui/programs/audit/events-flow.ts
2691
2693
  function needsSetup(session) {
2692
2694
  const config = session.frameworkConfig;
2693
2695
  if (!config?.metadata.setup?.questions) return false;
@@ -2739,7 +2741,7 @@ const EVENTS_AUDIT_PROGRAM = [
2739
2741
  }
2740
2742
  ];
2741
2743
  //#endregion
2742
- //#region src/programs/events-audit/seed.ts
2744
+ //#region src/programs/audit/events/seed.ts
2743
2745
  /**
2744
2746
  * The 7 phases the events-audit skill marches through. One check per area
2745
2747
  * so PendingChecksList renders a clean linear pipeline (area = bold header,
@@ -2795,7 +2797,7 @@ const EVENTS_AUDIT_SEED_CHECKS = [
2795
2797
  }
2796
2798
  ];
2797
2799
  //#endregion
2798
- //#region src/programs/events-audit/index.ts
2800
+ //#region src/programs/audit/events/config.ts
2799
2801
  const DOCS_URL$3 = "https://posthog.com/docs/product-analytics/best-practices";
2800
2802
  /**
2801
2803
  * No CLI word of its own since the audit family took over: `wizard audit
@@ -2856,7 +2858,7 @@ Project context:
2856
2858
  }
2857
2859
  };
2858
2860
  //#endregion
2859
- //#region src/programs/posthog-doctor/steps.ts
2861
+ //#region src/tui/tools/doctor/flow.ts
2860
2862
  const POSTHOG_DOCTOR_PROGRAM = [
2861
2863
  {
2862
2864
  id: "intro",
@@ -2885,7 +2887,7 @@ const POSTHOG_DOCTOR_PROGRAM = [
2885
2887
  }
2886
2888
  ];
2887
2889
  //#endregion
2888
- //#region src/programs/posthog-doctor/types.ts
2890
+ //#region src/tools/doctor/types.ts
2889
2891
  const HealthIssueSeveritySchema = z.enum([
2890
2892
  "critical",
2891
2893
  "warning",
@@ -2909,7 +2911,7 @@ const HealthIssueListResponseSchema = z.object({
2909
2911
  previous: z.string().nullable().optional()
2910
2912
  });
2911
2913
  //#endregion
2912
- //#region src/programs/posthog-doctor/fetch.ts
2914
+ //#region src/tools/doctor/fetch.ts
2913
2915
  async function fetchHealthIssues(accessToken, baseUrl, projectId) {
2914
2916
  const endpoint = `/api/environments/${projectId}/health_issues/`;
2915
2917
  const url = `${baseUrl}${endpoint}?status=active&dismissed=false&limit=250`;
@@ -2930,7 +2932,7 @@ async function fetchHealthIssues(accessToken, baseUrl, projectId) {
2930
2932
  }
2931
2933
  }
2932
2934
  //#endregion
2933
- //#region src/programs/posthog-doctor/kind-metadata.ts
2935
+ //#region src/tools/doctor/kind-metadata.ts
2934
2936
  const KIND_METADATA = {
2935
2937
  ingestion_lag: {
2936
2938
  title: "Ingestion is delayed",
@@ -3104,7 +3106,7 @@ const webAnalyticsDoctorConfig = {
3104
3106
  parentCommand: "audit"
3105
3107
  };
3106
3108
  //#endregion
3107
- //#region src/programs/migration/steps.ts
3109
+ //#region src/tui/programs/migration/flow.ts
3108
3110
  const MIGRATION_PROGRAM = [
3109
3111
  {
3110
3112
  id: "intro",
@@ -3138,7 +3140,7 @@ const MIGRATION_PROGRAM = [
3138
3140
  }
3139
3141
  ];
3140
3142
  //#endregion
3141
- //#region src/ui/tui/decks/migration/vendor-stack.tsx
3143
+ //#region src/tui/programs/migration/deck/vendor-stack.tsx
3142
3144
  /**
3143
3145
  * Vendor cost stack — the multi-tool baseline a typical migration target has
3144
3146
  * before consolidating onto PostHog. Numbers from each vendor's published
@@ -3218,7 +3220,7 @@ const VENDOR_STACK_BLOCK = {
3218
3220
  ]
3219
3221
  };
3220
3222
  //#endregion
3221
- //#region src/ui/tui/decks/migration/free-tier.tsx
3223
+ //#region src/tui/programs/migration/deck/free-tier.tsx
3222
3224
  /**
3223
3225
  * PostHog free-tier highlights — the numbers a migrating team gets back when
3224
3226
  * they consolidate. Sourced from posthog.com/pricing.md.
@@ -3324,7 +3326,7 @@ const FREE_TIER_BLOCK = {
3324
3326
  ]
3325
3327
  };
3326
3328
  //#endregion
3327
- //#region src/ui/tui/decks/migration/pricing-structure.tsx
3329
+ //#region src/tui/programs/migration/deck/pricing-structure.tsx
3328
3330
  /**
3329
3331
  * Pricing structure block — what happens after the free tier.
3330
3332
  */
@@ -3365,7 +3367,7 @@ const PRICING_STRUCTURE_BLOCK = {
3365
3367
  ]
3366
3368
  };
3367
3369
  //#endregion
3368
- //#region src/ui/tui/decks/migration/index.tsx
3370
+ //#region src/tui/programs/migration/deck/index.tsx
3369
3371
  /**
3370
3372
  * Migration learn deck (statsig variant). Statsig is the only `migrate`
3371
3373
  * variant today, so this deck plays as-is when the wizard runs
@@ -3754,7 +3756,7 @@ const SOURCE_MAPS_CONTEXT_KEYS = {
3754
3756
  selectedPath: "sourceMapsSelectedPath"
3755
3757
  };
3756
3758
  //#endregion
3757
- //#region src/programs/error-tracking-upload-source-maps/steps.ts
3759
+ //#region src/tui/programs/error-tracking-upload-source-maps/flow.ts
3758
3760
  function projectSelected(session) {
3759
3761
  return session.frameworkContext[SOURCE_MAPS_CONTEXT_KEYS.selectedVariant] != null;
3760
3762
  }
@@ -3995,7 +3997,7 @@ STEP 9 — Summarise and hand off. (skill: "Verify and hand off")
3995
3997
  `;
3996
3998
  }
3997
3999
  //#endregion
3998
- //#region src/ui/tui/decks/error-tracking-upload-source-maps/index.tsx
4000
+ //#region src/tui/programs/shared/deck/source-maps.tsx
3999
4001
  /**
4000
4002
  * Source-maps learn-deck — the narrative played in the run screen's left
4001
4003
  * pane (LearnCard) while the agent wires source-map upload into the build.
@@ -4328,7 +4330,7 @@ const getContentBlocks$2 = (store) => buildSourceMapsDeck(store, {
4328
4330
  wiring: "Right now I'm hooking source-map generation and upload into your build, tied to each release you ship."
4329
4331
  });
4330
4332
  //#endregion
4331
- //#region src/steps/install-cli-steering/index.ts
4333
+ //#region src/shared/install-cli-steering/index.ts
4332
4334
  const dirExists = (...segments) => {
4333
4335
  try {
4334
4336
  return fs$1.existsSync(path$2.join(os.homedir(), ...segments));
@@ -4519,10 +4521,23 @@ const errorTrackingUploadSourceMapsConfig = {
4519
4521
  }
4520
4522
  };
4521
4523
  //#endregion
4522
- //#region src/ui/tui/decks/error-tracking/index.tsx
4524
+ //#region src/tui/programs/error-tracking/flow.ts
4525
+ /**
4526
+ * After login, the scan lists the repo's projects and the user picks one, as in
4527
+ * the legacy upload-source-maps program. The pick sets the framework preflight
4528
+ * resolves task skills against, and the project path the run is scoped to.
4529
+ */
4530
+ const PICK_PROJECT_STEP = {
4531
+ id: "detect",
4532
+ label: "Detecting projects",
4533
+ screenId: "error-tracking-detect",
4534
+ isComplete: (session) => session.integration != null
4535
+ };
4536
+ //#endregion
4537
+ //#region src/tui/programs/error-tracking/deck/index.tsx
4523
4538
  const getContentBlocks$1 = (store) => buildSourceMapsDeck(store, {
4524
4539
  intro: "I'm wiring PostHog Error Tracking into your project.",
4525
- wiring: "If your platform ships minified code or stripped binaries, I also hook source-map or debug-symbol upload into your build, tied to each release you ship."
4540
+ wiring: "If your platform ships minified code or stripped binaries, I also hook source-map or debug-symbol upload into your build, tied to each release you ship. On Python, Ruby and PHP, I link each production deploy to its release instead."
4526
4541
  });
4527
4542
  //#endregion
4528
4543
  //#region src/programs/replay-vision/index.ts
@@ -4669,7 +4684,7 @@ const replayVisionConfig = {
4669
4684
  }
4670
4685
  };
4671
4686
  //#endregion
4672
- //#region src/ui/tui/decks/error-tracking/tips.ts
4687
+ //#region src/tui/programs/error-tracking/deck/tips.ts
4673
4688
  const ERROR_TRACKING_TIPS = [
4674
4689
  {
4675
4690
  id: "session-replay",
@@ -4774,17 +4789,6 @@ function maybePreinstallPostHogCli(integration, log) {
4774
4789
  if (!integration || !SYMBOL_UPLOAD_CLI_FRAMEWORKS.has(integration)) return;
4775
4790
  preinstallPostHogCliOnce("error tracking posthog-cli preinstall failed", { integration }, log);
4776
4791
  }
4777
- /**
4778
- * After login, the scan lists the repo's projects and the user picks one, as in
4779
- * the legacy upload-source-maps program. The pick sets the framework preflight
4780
- * resolves task skills against, and the project path the run is scoped to.
4781
- */
4782
- const PICK_PROJECT_STEP = {
4783
- id: "detect",
4784
- label: "Detecting projects",
4785
- screenId: "error-tracking-detect",
4786
- isComplete: (session) => session.integration != null
4787
- };
4788
4792
  const ERROR_TRACKING_STEPS = AGENT_SKILL_STEPS.flatMap((step) => {
4789
4793
  if (step.id === "intro") return [{
4790
4794
  ...step,
@@ -4821,6 +4825,12 @@ const ERROR_TRACKING_PROMPT = `Set up PostHog error tracking end-to-end:
4821
4825
  credentials and CI. Skip this step on platforms with readable stack traces
4822
4826
  (plain Python, Ruby, PHP, Elixir, JVM servers).
4823
4827
 
4828
+ 4. On Python, Ruby, and PHP, link each production deploy to its release:
4829
+ install the matching "error-tracking-link-releases" skill variant
4830
+ (\`python\`, \`ruby\`, or \`php\`) and follow it. Change only the
4831
+ production deploy path; local runs, tests, and pull-request builds stay
4832
+ as they are.
4833
+
4824
4834
  The final report is written to ./${ERROR_TRACKING_REPORT_FILE}.`;
4825
4835
  const ERROR_TRACKING_RUN = {
4826
4836
  integrationLabel: "error-tracking",
@@ -4841,7 +4851,8 @@ const ERROR_TRACKING_RUN = {
4841
4851
  * (sharing integration-v2's step-skills, like replay-vision) when the project
4842
4852
  * has no PostHog yet, then exception capture, then — when the platform needs
4843
4853
  * it — the source-map subgraph adapted from the standalone
4844
- * `upload-source-maps` flow.
4854
+ * `upload-source-maps` flow, or, on Python, Ruby and PHP, the `link-releases`
4855
+ * task that resolves a release in the production deploy.
4845
4856
  *
4846
4857
  * Departures from a plain `createSkillProgram`:
4847
4858
  * - No `run.skillId`: the flow's tasks resolve per-framework mini-skills
@@ -4860,7 +4871,7 @@ const ERROR_TRACKING_RUN = {
4860
4871
  */
4861
4872
  const errorTrackingConfig = {
4862
4873
  command: "error-tracking",
4863
- description: "Set up PostHog error tracking, source-map upload included",
4874
+ description: "Set up PostHog error tracking, source-map upload and release linking included",
4864
4875
  id: "error-tracking",
4865
4876
  agentFlow: "error-tracking",
4866
4877
  steps: ERROR_TRACKING_STEPS,
@@ -5214,7 +5225,7 @@ async function prepSelfDrivingIntegration(session) {
5214
5225
  for (const [key, value] of Object.entries(context)) if (!(key in session.frameworkContext)) session.frameworkContext[key] = value;
5215
5226
  }
5216
5227
  //#endregion
5217
- //#region src/programs/self-driving/steps.ts
5228
+ //#region src/tui/programs/self-driving/flow.ts
5218
5229
  /** True once detection found PostHog already present in the project. */
5219
5230
  const postHogPresent = (session) => session.frameworkContext[POSTHOG_PRESENT_KEY] === true;
5220
5231
  /** Absolute dir to integrate into: the picked sub-app (LLM output — the shared resolver clamps escapes), else the repo root. */
@@ -5562,7 +5573,7 @@ const PRICING_LONG = `A report that ships a pull request costs a flat $15. Every
5562
5573
  */
5563
5574
  const NO_DEFAULT_LIMIT = "A paid plan has no monthly cap until you set one. Add a PR limit in your inbox sidebar, and agents pause when they hit it.";
5564
5575
  //#endregion
5565
- //#region src/ui/tui/decks/self-driving/tips.ts
5576
+ //#region src/tui/programs/self-driving/deck/tips.ts
5566
5577
  const SELF_DRIVING_TIPS = [
5567
5578
  {
5568
5579
  id: "signal-source",
@@ -5602,7 +5613,7 @@ const SELF_DRIVING_TIPS = [
5602
5613
  ];
5603
5614
  const getTips = () => SELF_DRIVING_TIPS;
5604
5615
  //#endregion
5605
- //#region src/ui/tui/decks/self-driving/pipeline-diagram.tsx
5616
+ //#region src/tui/programs/self-driving/deck/pipeline-diagram.tsx
5606
5617
  /**
5607
5618
  * PIPELINE_BLOCK — ASCII diagram of the Self-driving loop: sources feed
5608
5619
  * scouts, scouts raise signals, signals group into reports, reports land
@@ -5690,7 +5701,7 @@ const PIPELINE_BLOCK = {
5690
5701
  ]
5691
5702
  };
5692
5703
  //#endregion
5693
- //#region src/ui/tui/decks/self-driving/index.tsx
5704
+ //#region src/tui/programs/self-driving/deck/index.tsx
5694
5705
  /**
5695
5706
  * Self-driving learn-deck — the narrative script played while the agent
5696
5707
  * sets up Self-driving. Teaches the vocabulary ladder (signal source →
@@ -6003,7 +6014,7 @@ const selfDrivingConfig = {
6003
6014
  getContentBlocks
6004
6015
  };
6005
6016
  //#endregion
6006
- //#region src/programs/mcp/index.ts
6017
+ //#region src/tui/tools/mcp/flow.ts
6007
6018
  const mcpAddConfig = {
6008
6019
  id: "mcp-add",
6009
6020
  requiresAi: false,
@@ -6261,7 +6272,7 @@ is written to ./${METRICS_REPORT_FILE}.`,
6261
6272
  }
6262
6273
  };
6263
6274
  //#endregion
6264
- //#region src/programs/slack/index.ts
6275
+ //#region src/tools/slack/index.ts
6265
6276
  const slackConnectConfig = {
6266
6277
  id: "slack",
6267
6278
  description: "Connect PostHog to your Slack",
@@ -6377,7 +6388,7 @@ function getLaunchablePrograms() {
6377
6388
  return INTRO_PROGRAMS.map((id) => byId.get(id)).filter((config) => config != null);
6378
6389
  }
6379
6390
  //#endregion
6380
- //#region src/ui/mint-failure.ts
6391
+ //#region src/tui/mint-failure.ts
6381
6392
  const MINT_FAILURE_MESSAGE = "The Wizard's a little busy";
6382
6393
  const MINT_FAILURE_BODY = "The wizard can still share spells. Grab a skill and let your agent take over.";
6383
6394
  const MINT_FAILURE_CONTACT = "Email wizard@posthog.com and tell us what happened. Please attach this log:";
@@ -6389,4 +6400,4 @@ function isRunFailure(session) {
6389
6400
  //#endregion
6390
6401
  export { wordWrap as $, installOrUpdatePostHogCli as A, webAnalyticsDoctorConfig as B, ERROR_TRACKING_PROJECT_PATH_KEY as C, CLI_STEERING_TARGETS as D, errorTrackingUploadSourceMapsConfig as E, MANUAL_SDK_INSTALL as F, createSkillProgram as G, getKindMeta as H, MANUAL_SDK_VARIANTS as I, getContentBlocks$4 as J, warehouseSourceConfig as K, RUST_SDK_CRATE as L, AUTOMATABLE_VARIANTS as M, DISPLAY_NAME as N, detectTargets as O, GO_SDK_MODULE as P, computeVisibleRange as Q, SOURCE_MAPS_CONTEXT_KEYS as R, errorTrackingConfig as S, replayVisionConfig as T, fetchHealthIssues as U, posthogDoctorConfig as V, auditConfig as W, posthogIntegrationConfig as X, SETUP_REPORT_FILE as Y, TextBlock as Z, PRICING_SHORT as _, PROGRAM_REGISTRY as a, maybeStampAiSdkDetected as at, GITHUB_REQUIRED_MESSAGE as b, getCommandPath as c, STRIPE_SDKS as ct, metricsConfig as d, isClearBlock as et, aiObservabilityConfig as f, PRICING_LONG as g, NO_DEFAULT_LIMIT as h, isRunFailure as i, Icons as it, installSteeringSnippet as j, findTarget as k, getLaunchablePrograms as l, detectProjectsWithAgent as lt, selfDrivingConfig as m, MINT_FAILURE_CONTACT as n, isObjectBlock as nt, Program as o, reportWarehouseSourcesDetected as ot, mcpAnalyticsConfig as p, revenueAnalyticsConfig as q, MINT_FAILURE_MESSAGE as r, Colors as rt, agentSkillConfig as s, POSTHOG_SDKS as st, MINT_FAILURE_BODY as t, isLinesBlock as tt, getProgramConfig as u, detectSelfDrivingIntegrationProjects as v, detectErrorTrackingProjects as w, SELF_DRIVING_INTEGRATE_PATH_KEY as x, GITHUB_REQUIRED_BODY as y, migrationConfig as z };
6391
6402
 
6392
- //# sourceMappingURL=mint-failure-u8xQKNOn.js.map
6403
+ //# sourceMappingURL=mint-failure-C0HyvEwO.js.map