@posthog/wizard 2.79.0 → 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 (186) hide show
  1. package/dist/PickerMenu-m4CCPX4f.js +758 -0
  2. package/dist/PickerMenu-m4CCPX4f.js.map +1 -0
  3. package/dist/{agent-CNrEC-9v.js → agent-BkBbVuNq.js} +50 -45
  4. package/dist/agent-BkBbVuNq.js.map +1 -0
  5. package/dist/agent-QGK2YzlX.js +6 -0
  6. package/dist/{agent-interface-BXvmAm4c.js → agent-interface-CzyCmp7q.js} +87 -38
  7. package/dist/agent-interface-CzyCmp7q.js.map +1 -0
  8. package/dist/{agent-prompt-loader-DiKUbhi_.js → agent-prompt-loader-4wMxlYSX.js} +5 -5
  9. package/dist/{agent-prompt-loader-DiKUbhi_.js.map → agent-prompt-loader-4wMxlYSX.js.map} +1 -1
  10. package/dist/{analytics-VRYdebXW.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-DGuJTzjr.js → api-C3Dc4LFl.js} +4 -16
  14. package/dist/{api-DGuJTzjr.js.map → api-C3Dc4LFl.js.map} +1 -1
  15. package/dist/api-yNjrfZs2.js +2 -0
  16. package/dist/bin.js +5 -2960
  17. package/dist/bin.js.map +1 -1
  18. package/dist/{bounded-fs-Cpn129A4.js → bounded-fs-CC_NDtoP.js} +3 -3
  19. package/dist/{bounded-fs-Cpn129A4.js.map → bounded-fs-CC_NDtoP.js.map} +1 -1
  20. package/dist/check-screens.tsx +5 -5
  21. package/dist/{ci-install-BPA6gzEq.js → ci-install-DfcAMhlu.js} +9 -8
  22. package/dist/ci-install-DfcAMhlu.js.map +1 -0
  23. package/dist/{constants-CuJfQEcC.js → constants-DO4X70po.js} +3 -3
  24. package/dist/{constants-CuJfQEcC.js.map → constants-DO4X70po.js.map} +1 -1
  25. package/dist/{debug-B9k4ideV.js → debug-BueK5mRR.js} +1 -1
  26. package/dist/{debug-Cj-8vfXY.js → debug-DyARf5TF.js} +3 -3
  27. package/dist/debug-DyARf5TF.js.map +1 -0
  28. package/dist/{defaults-C6J7yL4O.js → defaults-DpfMnH2q.js} +2 -2
  29. package/dist/defaults-DpfMnH2q.js.map +1 -0
  30. package/dist/emit-BSetXzDV.js +69 -0
  31. package/dist/emit-BSetXzDV.js.map +1 -0
  32. package/dist/{endpoints-DnIX0pZH.js → endpoints-D-4KxZiB.js} +3 -3
  33. package/dist/{endpoints-DnIX0pZH.js.map → endpoints-D-4KxZiB.js.map} +1 -1
  34. package/dist/env-api-key-CHGLe0iz.js +2 -0
  35. package/dist/{env-api-key-BWdKpGEr.js → env-api-key-COf0U-Au.js} +3 -5
  36. package/dist/{env-api-key-BWdKpGEr.js.map → env-api-key-COf0U-Au.js.map} +1 -1
  37. package/dist/{environment-DZYUSCpV.js → environment-DrLaSsA8.js} +5 -10
  38. package/dist/{environment-DZYUSCpV.js.map → environment-DrLaSsA8.js.map} +1 -1
  39. package/dist/environment-hBj7ngmO.js +2 -0
  40. package/dist/{errors-ddDE6MbA.js → errors-C2domSkK.js} +3 -67
  41. package/dist/errors-C2domSkK.js.map +1 -0
  42. package/dist/{file-dEhr-l3n.js → file-CVA9ocIC.js} +4 -4
  43. package/dist/file-CVA9ocIC.js.map +1 -0
  44. package/dist/file-CmoKK_Pp.js +2 -0
  45. package/dist/{file-watcher-CPM-Nn9L.js → file-watcher-C3Su8vXm.js} +3 -3
  46. package/dist/file-watcher-C3Su8vXm.js.map +1 -0
  47. package/dist/{gateway-CVU1G0H3.js → gateway-BmjYUSua.js} +8 -7
  48. package/dist/{gateway-CVU1G0H3.js.map → gateway-BmjYUSua.js.map} +1 -1
  49. package/dist/{headless-ui-pY2xB5ug.js → headless-ui-CUbv12Yx.js} +3 -3
  50. package/dist/headless-ui-CUbv12Yx.js.map +1 -0
  51. package/dist/host-resolution-DVSb7kXb.js +114 -0
  52. package/dist/host-resolution-DVSb7kXb.js.map +1 -0
  53. package/dist/{add-mcp-server-to-clients-amlJWW7W.js → install-Bk5TNk27.js} +16 -26
  54. package/dist/install-Bk5TNk27.js.map +1 -0
  55. package/dist/install-F4wm3RSl.js +2 -0
  56. package/dist/interactive-C5LNvDj6.js +11 -0
  57. package/dist/interactive-C5LNvDj6.js.map +1 -0
  58. package/dist/{telemetry-Bpv-Mh5B.js → links-9LWZPSCq.js} +4 -13
  59. package/dist/links-9LWZPSCq.js.map +1 -0
  60. package/dist/{logging-ui-CUxNYF2t.js → logging-ui-p6XKVmTx.js} +6 -6
  61. package/dist/logging-ui-p6XKVmTx.js.map +1 -0
  62. package/dist/main-DKPjFHEV.js +1404 -0
  63. package/dist/main-DKPjFHEV.js.map +1 -0
  64. package/dist/{mcp-JcsBBnWv.js → mcp-Co8VRF62.js} +4 -4
  65. package/dist/{mcp-JcsBBnWv.js.map → mcp-Co8VRF62.js.map} +1 -1
  66. package/dist/mcp-install-smoke-test.ts +1 -1
  67. package/dist/{mcp-prompt-streaming-B-p_Pvb2.js → mcp-prompt-streaming-ljCVoQ9I.js} +6 -6
  68. package/dist/{mcp-prompt-streaming-B-p_Pvb2.js.map → mcp-prompt-streaming-ljCVoQ9I.js.map} +1 -1
  69. package/dist/{mint-failure-CZFZpHpW.js → mint-failure-C0HyvEwO.js} +105 -93
  70. package/dist/mint-failure-C0HyvEwO.js.map +1 -0
  71. package/dist/{models-DnAY67Lg.js → models-Dba8ITeo.js} +2 -2
  72. package/dist/{models-DnAY67Lg.js.map → models-Dba8ITeo.js.map} +1 -1
  73. package/dist/{non-interactive-DR1CWXY1.js → non-interactive-CLMJrj_7.js} +5 -4
  74. package/dist/non-interactive-CLMJrj_7.js.map +1 -0
  75. package/dist/{oauth-session-CQTFOk-I.js → oauth-session-D-RfcVmr.js} +2 -2
  76. package/dist/{oauth-session-CQTFOk-I.js.map → oauth-session-D-RfcVmr.js.map} +1 -1
  77. package/dist/{orchestrator-tools-CBdt-SXO.js → orchestrator-tools-CVJ1F9Ub.js} +3 -3
  78. package/dist/{orchestrator-tools-CBdt-SXO.js.map → orchestrator-tools-CVJ1F9Ub.js.map} +1 -1
  79. package/dist/package-json--ppioh2F.js +2 -0
  80. package/dist/{package-json-DY70kkNp.js → package-json-Cowya9-3.js} +2 -8
  81. package/dist/{package-json-DY70kkNp.js.map → package-json-Cowya9-3.js.map} +1 -1
  82. package/dist/{pi-BtqcLX3y.js → pi-B5YTBRDv.js} +20 -18
  83. package/dist/pi-B5YTBRDv.js.map +1 -0
  84. package/dist/{playground-Dz-ZVjBk.js → playground-BLsCfHmQ.js} +33 -33
  85. package/dist/playground-BLsCfHmQ.js.map +1 -0
  86. package/dist/posthog-B2E0hpZt.js +2 -0
  87. package/dist/{posthog-6Uqw_Eux.js → posthog-B42rt_1S.js} +4 -9
  88. package/dist/posthog-B42rt_1S.js.map +1 -0
  89. package/dist/project-data--L-WZyvj.js +2 -0
  90. package/dist/{setup-utils-dCViCC6s.js → project-data-BO9IXn9y.js} +566 -957
  91. package/dist/project-data-BO9IXn9y.js.map +1 -0
  92. package/dist/provisioning-C01REIU2.js +2 -0
  93. package/dist/{provisioning-Zf7yPcEs.js → provisioning-CLhuKqXH.js} +6 -73
  94. package/dist/provisioning-CLhuKqXH.js.map +1 -0
  95. package/dist/{queue-tools-B7_aCyd-.js → queue-tools-knnPQP0e.js} +4 -4
  96. package/dist/{queue-tools-B7_aCyd-.js.map → queue-tools-knnPQP0e.js.map} +1 -1
  97. package/dist/{registry-B6iLGorH.js → registry-B3rC5U4b.js} +7 -9
  98. package/dist/{registry-B6iLGorH.js.map → registry-B3rC5U4b.js.map} +1 -1
  99. package/dist/registry-BamsM7J9.js +2 -0
  100. package/dist/run-agent-legacy-CwUmPfQF.js +2 -0
  101. package/dist/{run-agent-legacy-6WcYMaR9.js → run-agent-legacy-DWBajsMh.js} +40 -114
  102. package/dist/run-agent-legacy-DWBajsMh.js.map +1 -0
  103. package/dist/runners-D1PqqpjA.js +834 -0
  104. package/dist/runners-D1PqqpjA.js.map +1 -0
  105. package/dist/{security-lkBwWbrK.js → security-BvdSFDuM.js} +5 -5
  106. package/dist/{security-lkBwWbrK.js.map → security-BvdSFDuM.js.map} +1 -1
  107. package/dist/setup-utils-ChXXTi1m.js +301 -0
  108. package/dist/setup-utils-ChXXTi1m.js.map +1 -0
  109. package/dist/{start-tui-oCWMgsDP.js → start-tui-DicLfgsj.js} +95 -91
  110. package/dist/start-tui-DicLfgsj.js.map +1 -0
  111. package/dist/{steps-gx0Pq4I4.js → steps-Hc28zVc_.js} +10 -10
  112. package/dist/steps-Hc28zVc_.js.map +1 -0
  113. package/dist/store-COCO6U0P.js +5 -0
  114. package/dist/{store-xYy_6Ruv.js → store-D3509G87.js} +67 -35
  115. package/dist/store-D3509G87.js.map +1 -0
  116. package/dist/{subagent-Bfy0sfhU.js → subagent-D_Sqak94.js} +3 -3
  117. package/dist/{subagent-Bfy0sfhU.js.map → subagent-D_Sqak94.js.map} +1 -1
  118. package/dist/{task-BOfw7GPc.js → task-DiTI6Sak.js} +19 -17
  119. package/dist/task-DiTI6Sak.js.map +1 -0
  120. package/dist/{wizard-ui-DoyOZxK8.js → task-status-CmrrR7zo.js} +2 -2
  121. package/dist/task-status-CmrrR7zo.js.map +1 -0
  122. package/dist/{task-stream-kYlm9qd0.js → task-stream-BckhG_cB.js} +11 -11
  123. package/dist/task-stream-BckhG_cB.js.map +1 -0
  124. package/dist/{tasks-Bbv_lOBG.js → tasks-ChZ_F1YP.js} +1 -1
  125. package/dist/{tasks-Bbv_lOBG.js.map → tasks-ChZ_F1YP.js.map} +1 -1
  126. package/dist/telemetry-BNKsDxNS.js +13 -0
  127. package/dist/telemetry-BNKsDxNS.js.map +1 -0
  128. package/dist/{terminal-D07EQ2y0.js → terminal-PK9bCLRi.js} +123 -97
  129. package/dist/terminal-PK9bCLRi.js.map +1 -0
  130. package/dist/{tools-Cc41af5W.js → tools-C8LQ8QFz.js} +9 -9
  131. package/dist/tools-C8LQ8QFz.js.map +1 -0
  132. package/dist/{ui-CGXtC7Vn.js → ui-tPNpM6vj.js} +3 -3
  133. package/dist/ui-tPNpM6vj.js.map +1 -0
  134. package/dist/urls-BI4kJ4qQ.js +67 -0
  135. package/dist/urls-BI4kJ4qQ.js.map +1 -0
  136. package/dist/{version-Cadof0Z_.js → version-5_ydHkM6.js} +2 -2
  137. package/dist/{version-Cadof0Z_.js.map → version-5_ydHkM6.js.map} +1 -1
  138. package/dist/wizard-abort-BVjqLyeA.js +3 -0
  139. package/dist/{wizard-abort-HDbP3YcS.js → wizard-abort-DBKtfnBR.js} +20 -17
  140. package/dist/wizard-abort-DBKtfnBR.js.map +1 -0
  141. package/dist/wizard-session-B7BHnay0.js +2 -0
  142. package/dist/{wizard-session-2w4Ru-Wz.js → wizard-session-BYw6LzpS.js} +30 -28
  143. package/dist/wizard-session-BYw6LzpS.js.map +1 -0
  144. package/dist/{yara-hooks-DCfROpZt.js → yara-hooks-C3L6lBij.js} +5 -5
  145. package/dist/{yara-hooks-DCfROpZt.js.map → yara-hooks-C3L6lBij.js.map} +1 -1
  146. package/dist/yara-hooks-CF_IsoaA.js +2 -0
  147. package/package.json +2 -3
  148. package/dist/add-mcp-server-to-clients-amlJWW7W.js.map +0 -1
  149. package/dist/agent-CNrEC-9v.js.map +0 -1
  150. package/dist/agent-interface-BXvmAm4c.js.map +0 -1
  151. package/dist/analytics-DxwRi2Hf.js +0 -2
  152. package/dist/analytics-VRYdebXW.js.map +0 -1
  153. package/dist/ci-install-BPA6gzEq.js.map +0 -1
  154. package/dist/debug-Cj-8vfXY.js.map +0 -1
  155. package/dist/defaults-C6J7yL4O.js.map +0 -1
  156. package/dist/errors-ddDE6MbA.js.map +0 -1
  157. package/dist/file-dEhr-l3n.js.map +0 -1
  158. package/dist/file-watcher-CPM-Nn9L.js.map +0 -1
  159. package/dist/headless-ui-pY2xB5ug.js.map +0 -1
  160. package/dist/interactive-BOGlinZe.js +0 -11
  161. package/dist/interactive-BOGlinZe.js.map +0 -1
  162. package/dist/logging-ui-CUxNYF2t.js.map +0 -1
  163. package/dist/mint-failure-CZFZpHpW.js.map +0 -1
  164. package/dist/non-interactive-DR1CWXY1.js.map +0 -1
  165. package/dist/pi-BtqcLX3y.js.map +0 -1
  166. package/dist/playground-Dz-ZVjBk.js.map +0 -1
  167. package/dist/posthog-6Uqw_Eux.js.map +0 -1
  168. package/dist/provisioning-Zf7yPcEs.js.map +0 -1
  169. package/dist/rolldown-runtime-B_-DWIq7.js +0 -15
  170. package/dist/run-agent-legacy-6WcYMaR9.js.map +0 -1
  171. package/dist/setup-utils-dCViCC6s.js.map +0 -1
  172. package/dist/start-tui-oCWMgsDP.js.map +0 -1
  173. package/dist/steps-gx0Pq4I4.js.map +0 -1
  174. package/dist/store-xYy_6Ruv.js.map +0 -1
  175. package/dist/task-BOfw7GPc.js.map +0 -1
  176. package/dist/task-stream-kYlm9qd0.js.map +0 -1
  177. package/dist/telemetry-Bpv-Mh5B.js.map +0 -1
  178. package/dist/terminal-D07EQ2y0.js.map +0 -1
  179. package/dist/tools-Cc41af5W.js.map +0 -1
  180. package/dist/ui-CGXtC7Vn.js.map +0 -1
  181. package/dist/wizard-abort-HDbP3YcS.js.map +0 -1
  182. package/dist/wizard-abort-Y-Ip2K4z.js +0 -3
  183. package/dist/wizard-session-2w4Ru-Wz.js.map +0 -1
  184. package/dist/wizard-session-DGaUHOF3.js +0 -2
  185. package/dist/wizard-ui-DoyOZxK8.js.map +0 -1
  186. package/dist/yara-hooks-B49RIk5d.js +0 -2
@@ -1,23 +1,24 @@
1
- import { s as ErrorCodes } from "./errors-ddDE6MbA.js";
2
- import { r as debug, s as logToFile, x as regionOption, y as headlessOption } from "./debug-Cj-8vfXY.js";
3
- 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-CuJfQEcC.js";
4
- import { r as mayReportScanResults } from "./wizard-session-2w4Ru-Wz.js";
5
- import { n as analytics } from "./analytics-VRYdebXW.js";
6
- import { i as withUtm, n as openTrackedLink } from "./telemetry-Bpv-Mh5B.js";
7
- import { a as safeReadFile, o as walkProjectFiles } from "./bounded-fs-Cpn129A4.js";
8
- import { i as tryGetPackageJson, n as isUsingTypeScript, p as detectNodePackageManagers } from "./setup-utils-dCViCC6s.js";
9
- import { a as getBlockingServiceKeys, i as evaluateWizardReadiness, r as SIGNUP_WIZARD_READINESS_CONFIG } from "./logging-ui-CUxNYF2t.js";
10
- import { t as getUI } from "./ui-CGXtC7Vn.js";
11
- import { i as requestDeepLink } from "./provisioning-Zf7yPcEs.js";
12
- import { s as handleApiError } from "./api-DGuJTzjr.js";
13
- import { i as wizardAbort } from "./wizard-abort-HDbP3YcS.js";
14
- import { s as AgentSignals } from "./gateway-CVU1G0H3.js";
15
- import { I as WIZARD_TOOL_NAMES, n as buildRunTags, nt as LONGER_ASK_TIMEOUT_MS } from "./agent-interface-BXvmAm4c.js";
16
- import { c as shouldDisableAsk, i as resolveScanBindings, n as runAgent } from "./agent-CNrEC-9v.js";
17
- import { g as AUDIT_REPORT_FILE, h as AUDIT_CHECKS_FILE } from "./yara-hooks-DCfROpZt.js";
18
- import { y as writeJsonAtomic } from "./queue-tools-B7_aCyd-.js";
19
- import { a as detectWarehousePrerequisites, c as discoverFeatures, f as authenticate, h as stampAiSdkDetected, i as WAREHOUSE_ABORT_CASES, l as AUDIT_CHECKS_KEY, m as createUiReducer, o as getDetectedWarehouseSources, r as DETECTED_WAREHOUSE_SOURCES_KEY, s as detectWarehouseSources, t as runProgramAgent } from "./run-agent-legacy-6WcYMaR9.js";
20
- import { i as SPINNER_MESSAGE, t as FRAMEWORK_REGISTRY } from "./registry-B6iLGorH.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
+ import { n as ErrorCodes } from "./emit-BSetXzDV.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
+ import "./errors-C2domSkK.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";
21
22
  import * as semver from "semver";
22
23
  import { existsSync, readFileSync, readdirSync, statSync } from "fs";
23
24
  import path, { isAbsolute, join, relative, resolve, sep } from "path";
@@ -520,7 +521,7 @@ async function scopeInstallDirToProject(session, runner) {
520
521
  runner.log.info(`Continuing with ${project.path} (${project.framework}).`);
521
522
  }
522
523
  //#endregion
523
- //#region src/programs/shared/health-check-step.ts
524
+ //#region src/tui/programs/shared/health-check-step.ts
524
525
  function healthCheckReady(session) {
525
526
  if (!session.readinessResult) return false;
526
527
  if (session.signup) {
@@ -592,7 +593,7 @@ function findPackageJsons(installDir, maxDepth = 3) {
592
593
  return matches;
593
594
  }
594
595
  //#endregion
595
- //#region src/programs/posthog-integration/detect.ts
596
+ //#region src/programs/detection/integration.ts
596
597
  async function detectPostHogIntegration(ctx) {
597
598
  const session = ctx.session;
598
599
  const installDir = session.installDir;
@@ -725,7 +726,7 @@ function detectExistingPostHog(ctx, installDir) {
725
726
  }
726
727
  }
727
728
  //#endregion
728
- //#region src/programs/posthog-integration/steps.ts
729
+ //#region src/tui/programs/posthog-integration/flow.ts
729
730
  function needsSetup$1(session) {
730
731
  const config = session.frameworkConfig;
731
732
  if (!config?.metadata.setup?.questions) return false;
@@ -788,7 +789,7 @@ const POSTHOG_INTEGRATION_PROGRAM = [
788
789
  }
789
790
  ];
790
791
  //#endregion
791
- //#region src/ui/tui/styles.ts
792
+ //#region src/tui/styles.ts
792
793
  const Colors = {
793
794
  primary: "cyan",
794
795
  accent: "#DC9300",
@@ -809,7 +810,7 @@ const Icons = {
809
810
  bullet: "•"
810
811
  };
811
812
  //#endregion
812
- //#region src/ui/tui/primitives/text-helpers.ts
813
+ //#region src/tui/primitives/text-helpers.ts
813
814
  /**
814
815
  * Text-splitting helpers for sentence boundary detection.
815
816
  * Used by TextBlock for animation pauses at punctuation.
@@ -851,7 +852,7 @@ function sentenceEndWords(text) {
851
852
  return ends;
852
853
  }
853
854
  //#endregion
854
- //#region src/ui/tui/primitives/content-types.ts
855
+ //#region src/tui/primitives/content-types.ts
855
856
  /** Type guard for lines blocks. */
856
857
  function isLinesBlock(block) {
857
858
  return typeof block !== "string" && "type" in block && block.type === "lines";
@@ -865,7 +866,7 @@ function isObjectBlock(block) {
865
866
  return typeof block !== "string" && !("type" in block);
866
867
  }
867
868
  //#endregion
868
- //#region src/ui/tui/primitives/layout-helpers.ts
869
+ //#region src/tui/primitives/layout-helpers.ts
869
870
  /**
870
871
  * Estimate the number of terminal rows a content block will occupy,
871
872
  * including 1 row of marginBottom.
@@ -931,7 +932,7 @@ function wrapAndTruncate(text, availableWidth, maxRows) {
931
932
  return lines.slice(-maxRows).join("\n");
932
933
  }
933
934
  //#endregion
934
- //#region src/ui/tui/primitives/TextBlock.tsx
935
+ //#region src/tui/primitives/TextBlock.tsx
935
936
  /**
936
937
  * TextBlock — Animates a single string paragraph.
937
938
  *
@@ -1026,7 +1027,7 @@ const TextBlock = ({ text, active, completed, onComplete, mode, bullet, animatio
1026
1027
  }, si))] });
1027
1028
  };
1028
1029
  //#endregion
1029
- //#region src/ui/tui/components/StatusPeekTrigger.tsx
1030
+ //#region src/tui/components/StatusPeekTrigger.tsx
1030
1031
  /**
1031
1032
  * StatusPeekTrigger — Fires the status-bar expansion once, renders a hint.
1032
1033
  *
@@ -1046,7 +1047,7 @@ const StatusPeekTrigger = ({ store, duration = 1e4 }) => {
1046
1047
  return /* @__PURE__ */ jsx(Text, { children: "You can view the Wizard's status below." });
1047
1048
  };
1048
1049
  //#endregion
1049
- //#region src/ui/tui/decks/posthog-integration/data-flow.tsx
1050
+ //#region src/tui/programs/posthog-integration/deck/data-flow.tsx
1050
1051
  /**
1051
1052
  * POSTHOG_DATA_FLOW — ASCII diagram of the PostHog event ingestion flow.
1052
1053
  */
@@ -1215,7 +1216,7 @@ const POSTHOG_DATA_FLOW = {
1215
1216
  ]
1216
1217
  };
1217
1218
  //#endregion
1218
- //#region src/ui/tui/decks/posthog-integration/product-suite.tsx
1219
+ //#region src/tui/programs/shared/deck/product-suite.tsx
1219
1220
  /**
1220
1221
  * PRODUCT_SUITE_BLOCK — Two-column listing of PostHog products.
1221
1222
  */
@@ -1335,7 +1336,7 @@ const PRODUCT_SUITE_BLOCK = {
1335
1336
  ]
1336
1337
  };
1337
1338
  //#endregion
1338
- //#region src/ui/tui/decks/posthog-integration/line-chart.tsx
1339
+ //#region src/tui/programs/shared/deck/line-chart.tsx
1339
1340
  /**
1340
1341
  * LINE_CHART_BLOCK — ASCII trends chart illustrating an insight.
1341
1342
  */
@@ -1459,7 +1460,7 @@ const LINE_CHART_BLOCK = {
1459
1460
  ]
1460
1461
  };
1461
1462
  //#endregion
1462
- //#region src/ui/tui/decks/posthog-integration/funnel.tsx
1463
+ //#region src/tui/programs/shared/deck/funnel.tsx
1463
1464
  /**
1464
1465
  * FUNNEL_BLOCK — ASCII funnel illustrating step conversion.
1465
1466
  */
@@ -1639,7 +1640,7 @@ const FUNNEL_BLOCK = {
1639
1640
  ]
1640
1641
  };
1641
1642
  //#endregion
1642
- //#region src/ui/tui/decks/posthog-integration/index.tsx
1643
+ //#region src/tui/programs/posthog-integration/deck/index.tsx
1643
1644
  /**
1644
1645
  * Integration learn-deck — the narrative script played while the agent
1645
1646
  * runs the PostHog integration flow. Weaves typewriter lines, pauses,
@@ -2033,7 +2034,7 @@ const posthogIntegrationConfig = {
2033
2034
  if (usesPackageJson) {
2034
2035
  const packageJson = await tryGetPackageJson({ installDir: session.installDir });
2035
2036
  if (packageJson) {
2036
- const { hasDeclaredDependency } = await import("./package-json-DY70kkNp.js").then((n) => n.i);
2037
+ const { hasDeclaredDependency } = await import("./package-json--ppioh2F.js");
2037
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.`);
2038
2039
  frameworkVersion = config.detection.getVersion(packageJson);
2039
2040
  } else runner.log.warn("Could not find package.json. Continuing anyway — the agent will handle it.");
@@ -2102,7 +2103,7 @@ ${warehouseReportInstruction(session)}
2102
2103
  postRun: async (sess, credentials) => {
2103
2104
  const envVars = config.environment.getEnvVars(credentials.projectApiKey, credentials.host.apiHost);
2104
2105
  if (config.environment.uploadToHosting) {
2105
- const { uploadEnvironmentVariablesStep } = await import("./steps-gx0Pq4I4.js");
2106
+ const { uploadEnvironmentVariablesStep } = await import("./steps-Hc28zVc_.js");
2106
2107
  const uploadedEnvVars = await uploadEnvironmentVariablesStep(envVars, {
2107
2108
  integration: config.metadata.integration,
2108
2109
  session: sess
@@ -2250,7 +2251,7 @@ function detectRevenuePrerequisites(session, setFrameworkContext) {
2250
2251
  setFrameworkContext("detectedPackagePaths", matches.filter((m) => m.posthogSdks.length > 0 || m.stripeSdks.length > 0).map((m) => m.path));
2251
2252
  }
2252
2253
  //#endregion
2253
- //#region src/programs/revenue-analytics/steps.ts
2254
+ //#region src/tui/programs/revenue-analytics/flow.ts
2254
2255
  const REVENUE_ANALYTICS_PROGRAM = [
2255
2256
  {
2256
2257
  id: "detect",
@@ -2289,7 +2290,7 @@ const REVENUE_ANALYTICS_PROGRAM = [
2289
2290
  }
2290
2291
  ];
2291
2292
  //#endregion
2292
- //#region src/ui/tui/decks/agent-skill/index.tsx
2293
+ //#region src/tui/programs/shared/skill-deck.tsx
2293
2294
  /**
2294
2295
  * Agent-skill learn-deck — the short three-line sequence shown while a
2295
2296
  * skill-based program (audit, revenue-analytics, agent-skill, etc.)
@@ -2345,7 +2346,7 @@ const revenueAnalyticsConfig = {
2345
2346
  requires: ["posthog-integration"]
2346
2347
  };
2347
2348
  //#endregion
2348
- //#region src/programs/warehouse-source/steps.ts
2349
+ //#region src/tui/programs/warehouse-source/flow.ts
2349
2350
  const WAREHOUSE_SOURCE_PROGRAM = [
2350
2351
  {
2351
2352
  id: "detect",
@@ -2426,7 +2427,7 @@ const warehouseSourceConfig = {
2426
2427
  requires: ["posthog-integration"]
2427
2428
  };
2428
2429
  //#endregion
2429
- //#region src/programs/agent-skill/steps.ts
2430
+ //#region src/tui/programs/shared/skill-flow.ts
2430
2431
  const AGENT_SKILL_STEPS = [
2431
2432
  {
2432
2433
  id: "intro",
@@ -2460,7 +2461,7 @@ const AGENT_SKILL_STEPS = [
2460
2461
  }
2461
2462
  ];
2462
2463
  //#endregion
2463
- //#region src/programs/agent-skill/index.ts
2464
+ //#region src/programs/shared/skill-program.ts
2464
2465
  function createSkillProgram(opts) {
2465
2466
  return {
2466
2467
  command: opts.command,
@@ -2486,6 +2487,21 @@ function createSkillProgram(opts) {
2486
2487
  };
2487
2488
  }
2488
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
2489
2505
  //#region src/programs/audit/detect.ts
2490
2506
  /** `[ABORT] <reason>` cases the audit skill can emit. Reason strings are
2491
2507
  * defined in the skill's `Abort statuses` section. */
@@ -2614,23 +2630,10 @@ function seedAuditLedger(installDir, checks = AUDIT_SEED_CHECKS) {
2614
2630
  }
2615
2631
  //#endregion
2616
2632
  //#region src/programs/audit/index.ts
2617
- /** Audit-specific screens for the shared agent-skill pipeline. */
2618
- const AUDIT_SCREEN_BY_STEP = {
2619
- intro: "audit-intro",
2620
- run: "audit-run",
2621
- outro: "audit-outro"
2622
- };
2623
2633
  const seedBeforeAuditRun = (session) => {
2624
2634
  seedAuditLedger(session.installDir);
2625
2635
  session.frameworkContext[AUDIT_CHECKS_KEY] = AUDIT_SEED_CHECKS;
2626
2636
  };
2627
- const withAuditScreens = (steps) => steps.map((step) => {
2628
- const override = AUDIT_SCREEN_BY_STEP[step.id];
2629
- return override ? {
2630
- ...step,
2631
- screenId: override
2632
- } : step;
2633
- });
2634
2637
  const auditSteps = withAuditScreens(AGENT_SKILL_STEPS);
2635
2638
  const baseConfig = createSkillProgram({
2636
2639
  skillId: "audit",
@@ -2686,7 +2689,7 @@ const auditConfig = {
2686
2689
  }
2687
2690
  };
2688
2691
  //#endregion
2689
- //#region src/programs/events-audit/steps.ts
2692
+ //#region src/tui/programs/audit/events-flow.ts
2690
2693
  function needsSetup(session) {
2691
2694
  const config = session.frameworkConfig;
2692
2695
  if (!config?.metadata.setup?.questions) return false;
@@ -2738,7 +2741,7 @@ const EVENTS_AUDIT_PROGRAM = [
2738
2741
  }
2739
2742
  ];
2740
2743
  //#endregion
2741
- //#region src/programs/events-audit/seed.ts
2744
+ //#region src/programs/audit/events/seed.ts
2742
2745
  /**
2743
2746
  * The 7 phases the events-audit skill marches through. One check per area
2744
2747
  * so PendingChecksList renders a clean linear pipeline (area = bold header,
@@ -2794,7 +2797,7 @@ const EVENTS_AUDIT_SEED_CHECKS = [
2794
2797
  }
2795
2798
  ];
2796
2799
  //#endregion
2797
- //#region src/programs/events-audit/index.ts
2800
+ //#region src/programs/audit/events/config.ts
2798
2801
  const DOCS_URL$3 = "https://posthog.com/docs/product-analytics/best-practices";
2799
2802
  /**
2800
2803
  * No CLI word of its own since the audit family took over: `wizard audit
@@ -2855,7 +2858,7 @@ Project context:
2855
2858
  }
2856
2859
  };
2857
2860
  //#endregion
2858
- //#region src/programs/posthog-doctor/steps.ts
2861
+ //#region src/tui/tools/doctor/flow.ts
2859
2862
  const POSTHOG_DOCTOR_PROGRAM = [
2860
2863
  {
2861
2864
  id: "intro",
@@ -2884,7 +2887,7 @@ const POSTHOG_DOCTOR_PROGRAM = [
2884
2887
  }
2885
2888
  ];
2886
2889
  //#endregion
2887
- //#region src/programs/posthog-doctor/types.ts
2890
+ //#region src/tools/doctor/types.ts
2888
2891
  const HealthIssueSeveritySchema = z.enum([
2889
2892
  "critical",
2890
2893
  "warning",
@@ -2908,7 +2911,7 @@ const HealthIssueListResponseSchema = z.object({
2908
2911
  previous: z.string().nullable().optional()
2909
2912
  });
2910
2913
  //#endregion
2911
- //#region src/programs/posthog-doctor/fetch.ts
2914
+ //#region src/tools/doctor/fetch.ts
2912
2915
  async function fetchHealthIssues(accessToken, baseUrl, projectId) {
2913
2916
  const endpoint = `/api/environments/${projectId}/health_issues/`;
2914
2917
  const url = `${baseUrl}${endpoint}?status=active&dismissed=false&limit=250`;
@@ -2929,7 +2932,7 @@ async function fetchHealthIssues(accessToken, baseUrl, projectId) {
2929
2932
  }
2930
2933
  }
2931
2934
  //#endregion
2932
- //#region src/programs/posthog-doctor/kind-metadata.ts
2935
+ //#region src/tools/doctor/kind-metadata.ts
2933
2936
  const KIND_METADATA = {
2934
2937
  ingestion_lag: {
2935
2938
  title: "Ingestion is delayed",
@@ -3103,7 +3106,7 @@ const webAnalyticsDoctorConfig = {
3103
3106
  parentCommand: "audit"
3104
3107
  };
3105
3108
  //#endregion
3106
- //#region src/programs/migration/steps.ts
3109
+ //#region src/tui/programs/migration/flow.ts
3107
3110
  const MIGRATION_PROGRAM = [
3108
3111
  {
3109
3112
  id: "intro",
@@ -3137,7 +3140,7 @@ const MIGRATION_PROGRAM = [
3137
3140
  }
3138
3141
  ];
3139
3142
  //#endregion
3140
- //#region src/ui/tui/decks/migration/vendor-stack.tsx
3143
+ //#region src/tui/programs/migration/deck/vendor-stack.tsx
3141
3144
  /**
3142
3145
  * Vendor cost stack — the multi-tool baseline a typical migration target has
3143
3146
  * before consolidating onto PostHog. Numbers from each vendor's published
@@ -3217,7 +3220,7 @@ const VENDOR_STACK_BLOCK = {
3217
3220
  ]
3218
3221
  };
3219
3222
  //#endregion
3220
- //#region src/ui/tui/decks/migration/free-tier.tsx
3223
+ //#region src/tui/programs/migration/deck/free-tier.tsx
3221
3224
  /**
3222
3225
  * PostHog free-tier highlights — the numbers a migrating team gets back when
3223
3226
  * they consolidate. Sourced from posthog.com/pricing.md.
@@ -3323,7 +3326,7 @@ const FREE_TIER_BLOCK = {
3323
3326
  ]
3324
3327
  };
3325
3328
  //#endregion
3326
- //#region src/ui/tui/decks/migration/pricing-structure.tsx
3329
+ //#region src/tui/programs/migration/deck/pricing-structure.tsx
3327
3330
  /**
3328
3331
  * Pricing structure block — what happens after the free tier.
3329
3332
  */
@@ -3364,7 +3367,7 @@ const PRICING_STRUCTURE_BLOCK = {
3364
3367
  ]
3365
3368
  };
3366
3369
  //#endregion
3367
- //#region src/ui/tui/decks/migration/index.tsx
3370
+ //#region src/tui/programs/migration/deck/index.tsx
3368
3371
  /**
3369
3372
  * Migration learn deck (statsig variant). Statsig is the only `migrate`
3370
3373
  * variant today, so this deck plays as-is when the wizard runs
@@ -3753,7 +3756,7 @@ const SOURCE_MAPS_CONTEXT_KEYS = {
3753
3756
  selectedPath: "sourceMapsSelectedPath"
3754
3757
  };
3755
3758
  //#endregion
3756
- //#region src/programs/error-tracking-upload-source-maps/steps.ts
3759
+ //#region src/tui/programs/error-tracking-upload-source-maps/flow.ts
3757
3760
  function projectSelected(session) {
3758
3761
  return session.frameworkContext[SOURCE_MAPS_CONTEXT_KEYS.selectedVariant] != null;
3759
3762
  }
@@ -3994,7 +3997,7 @@ STEP 9 — Summarise and hand off. (skill: "Verify and hand off")
3994
3997
  `;
3995
3998
  }
3996
3999
  //#endregion
3997
- //#region src/ui/tui/decks/error-tracking-upload-source-maps/index.tsx
4000
+ //#region src/tui/programs/shared/deck/source-maps.tsx
3998
4001
  /**
3999
4002
  * Source-maps learn-deck — the narrative played in the run screen's left
4000
4003
  * pane (LearnCard) while the agent wires source-map upload into the build.
@@ -4327,7 +4330,7 @@ const getContentBlocks$2 = (store) => buildSourceMapsDeck(store, {
4327
4330
  wiring: "Right now I'm hooking source-map generation and upload into your build, tied to each release you ship."
4328
4331
  });
4329
4332
  //#endregion
4330
- //#region src/steps/install-cli-steering/index.ts
4333
+ //#region src/shared/install-cli-steering/index.ts
4331
4334
  const dirExists = (...segments) => {
4332
4335
  try {
4333
4336
  return fs$1.existsSync(path$2.join(os.homedir(), ...segments));
@@ -4518,10 +4521,23 @@ const errorTrackingUploadSourceMapsConfig = {
4518
4521
  }
4519
4522
  };
4520
4523
  //#endregion
4521
- //#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
4522
4538
  const getContentBlocks$1 = (store) => buildSourceMapsDeck(store, {
4523
4539
  intro: "I'm wiring PostHog Error Tracking into your project.",
4524
- 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."
4525
4541
  });
4526
4542
  //#endregion
4527
4543
  //#region src/programs/replay-vision/index.ts
@@ -4668,7 +4684,7 @@ const replayVisionConfig = {
4668
4684
  }
4669
4685
  };
4670
4686
  //#endregion
4671
- //#region src/ui/tui/decks/error-tracking/tips.ts
4687
+ //#region src/tui/programs/error-tracking/deck/tips.ts
4672
4688
  const ERROR_TRACKING_TIPS = [
4673
4689
  {
4674
4690
  id: "session-replay",
@@ -4773,17 +4789,6 @@ function maybePreinstallPostHogCli(integration, log) {
4773
4789
  if (!integration || !SYMBOL_UPLOAD_CLI_FRAMEWORKS.has(integration)) return;
4774
4790
  preinstallPostHogCliOnce("error tracking posthog-cli preinstall failed", { integration }, log);
4775
4791
  }
4776
- /**
4777
- * After login, the scan lists the repo's projects and the user picks one, as in
4778
- * the legacy upload-source-maps program. The pick sets the framework preflight
4779
- * resolves task skills against, and the project path the run is scoped to.
4780
- */
4781
- const PICK_PROJECT_STEP = {
4782
- id: "detect",
4783
- label: "Detecting projects",
4784
- screenId: "error-tracking-detect",
4785
- isComplete: (session) => session.integration != null
4786
- };
4787
4792
  const ERROR_TRACKING_STEPS = AGENT_SKILL_STEPS.flatMap((step) => {
4788
4793
  if (step.id === "intro") return [{
4789
4794
  ...step,
@@ -4820,6 +4825,12 @@ const ERROR_TRACKING_PROMPT = `Set up PostHog error tracking end-to-end:
4820
4825
  credentials and CI. Skip this step on platforms with readable stack traces
4821
4826
  (plain Python, Ruby, PHP, Elixir, JVM servers).
4822
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
+
4823
4834
  The final report is written to ./${ERROR_TRACKING_REPORT_FILE}.`;
4824
4835
  const ERROR_TRACKING_RUN = {
4825
4836
  integrationLabel: "error-tracking",
@@ -4840,7 +4851,8 @@ const ERROR_TRACKING_RUN = {
4840
4851
  * (sharing integration-v2's step-skills, like replay-vision) when the project
4841
4852
  * has no PostHog yet, then exception capture, then — when the platform needs
4842
4853
  * it — the source-map subgraph adapted from the standalone
4843
- * `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.
4844
4856
  *
4845
4857
  * Departures from a plain `createSkillProgram`:
4846
4858
  * - No `run.skillId`: the flow's tasks resolve per-framework mini-skills
@@ -4859,7 +4871,7 @@ const ERROR_TRACKING_RUN = {
4859
4871
  */
4860
4872
  const errorTrackingConfig = {
4861
4873
  command: "error-tracking",
4862
- description: "Set up PostHog error tracking, source-map upload included",
4874
+ description: "Set up PostHog error tracking, source-map upload and release linking included",
4863
4875
  id: "error-tracking",
4864
4876
  agentFlow: "error-tracking",
4865
4877
  steps: ERROR_TRACKING_STEPS,
@@ -5213,7 +5225,7 @@ async function prepSelfDrivingIntegration(session) {
5213
5225
  for (const [key, value] of Object.entries(context)) if (!(key in session.frameworkContext)) session.frameworkContext[key] = value;
5214
5226
  }
5215
5227
  //#endregion
5216
- //#region src/programs/self-driving/steps.ts
5228
+ //#region src/tui/programs/self-driving/flow.ts
5217
5229
  /** True once detection found PostHog already present in the project. */
5218
5230
  const postHogPresent = (session) => session.frameworkContext[POSTHOG_PRESENT_KEY] === true;
5219
5231
  /** Absolute dir to integrate into: the picked sub-app (LLM output — the shared resolver clamps escapes), else the repo root. */
@@ -5561,7 +5573,7 @@ const PRICING_LONG = `A report that ships a pull request costs a flat $15. Every
5561
5573
  */
5562
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.";
5563
5575
  //#endregion
5564
- //#region src/ui/tui/decks/self-driving/tips.ts
5576
+ //#region src/tui/programs/self-driving/deck/tips.ts
5565
5577
  const SELF_DRIVING_TIPS = [
5566
5578
  {
5567
5579
  id: "signal-source",
@@ -5601,7 +5613,7 @@ const SELF_DRIVING_TIPS = [
5601
5613
  ];
5602
5614
  const getTips = () => SELF_DRIVING_TIPS;
5603
5615
  //#endregion
5604
- //#region src/ui/tui/decks/self-driving/pipeline-diagram.tsx
5616
+ //#region src/tui/programs/self-driving/deck/pipeline-diagram.tsx
5605
5617
  /**
5606
5618
  * PIPELINE_BLOCK — ASCII diagram of the Self-driving loop: sources feed
5607
5619
  * scouts, scouts raise signals, signals group into reports, reports land
@@ -5689,7 +5701,7 @@ const PIPELINE_BLOCK = {
5689
5701
  ]
5690
5702
  };
5691
5703
  //#endregion
5692
- //#region src/ui/tui/decks/self-driving/index.tsx
5704
+ //#region src/tui/programs/self-driving/deck/index.tsx
5693
5705
  /**
5694
5706
  * Self-driving learn-deck — the narrative script played while the agent
5695
5707
  * sets up Self-driving. Teaches the vocabulary ladder (signal source →
@@ -6002,7 +6014,7 @@ const selfDrivingConfig = {
6002
6014
  getContentBlocks
6003
6015
  };
6004
6016
  //#endregion
6005
- //#region src/programs/mcp/index.ts
6017
+ //#region src/tui/tools/mcp/flow.ts
6006
6018
  const mcpAddConfig = {
6007
6019
  id: "mcp-add",
6008
6020
  requiresAi: false,
@@ -6260,7 +6272,7 @@ is written to ./${METRICS_REPORT_FILE}.`,
6260
6272
  }
6261
6273
  };
6262
6274
  //#endregion
6263
- //#region src/programs/slack/index.ts
6275
+ //#region src/tools/slack/index.ts
6264
6276
  const slackConnectConfig = {
6265
6277
  id: "slack",
6266
6278
  description: "Connect PostHog to your Slack",
@@ -6376,7 +6388,7 @@ function getLaunchablePrograms() {
6376
6388
  return INTRO_PROGRAMS.map((id) => byId.get(id)).filter((config) => config != null);
6377
6389
  }
6378
6390
  //#endregion
6379
- //#region src/ui/mint-failure.ts
6391
+ //#region src/tui/mint-failure.ts
6380
6392
  const MINT_FAILURE_MESSAGE = "The Wizard's a little busy";
6381
6393
  const MINT_FAILURE_BODY = "The wizard can still share spells. Grab a skill and let your agent take over.";
6382
6394
  const MINT_FAILURE_CONTACT = "Email wizard@posthog.com and tell us what happened. Please attach this log:";
@@ -6388,4 +6400,4 @@ function isRunFailure(session) {
6388
6400
  //#endregion
6389
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 };
6390
6402
 
6391
- //# sourceMappingURL=mint-failure-CZFZpHpW.js.map
6403
+ //# sourceMappingURL=mint-failure-C0HyvEwO.js.map