neon 8.13.1 → 8.14.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 (361) hide show
  1. package/README.md +2 -0
  2. package/dist/_chunks/{api-GbEaBZJ5.js → api-1MKsfpY3.js} +2 -3
  3. package/dist/_chunks/{api_keys-CNnnugbQ.js → api_keys-6Xnxl7a8.js} +2 -3
  4. package/dist/_chunks/{ask-DVwy0eUL.js → ask-Xlek1Pxh.js} +2 -3
  5. package/dist/_chunks/{auth-CIUtXByB.js → auth-DPSDYYtG.js} +6 -7
  6. package/dist/_chunks/{auth_selection-YX5_KZgD.js → auth_selection-CwGLN9Qz.js} +2 -3
  7. package/dist/_chunks/{bootstrap-wPZWa1sT.js → bootstrap-BDkvsAVJ.js} +2 -3
  8. package/dist/_chunks/{branches-BNa1xX1L.js → branches-Bp-5z1lM.js} +2 -3
  9. package/dist/_chunks/{bucket-BCdryTkD.js → bucket-D06bvDSa.js} +2 -3
  10. package/dist/_chunks/{checkout-CXIOydqZ.js → checkout-C6VMMgY6.js} +5 -6
  11. package/dist/_chunks/{claim-DqAvAvDm.js → claim-DlLZmcq0.js} +4 -5
  12. package/dist/_chunks/{cmd_pipeline-CEk93dGN.js → cmd_pipeline-BDE-TGto.js} +3 -6
  13. package/dist/_chunks/{config-BH_qRHiG.js → config-7SIE_C5O.js} +3 -4
  14. package/dist/_chunks/{connection_string-DB4awPzZ.js → connection_string-C9e7N4xk.js} +3 -4
  15. package/dist/_chunks/{credential_io-BS-0Pmwc.js → credential_io-DbeSh3Pl.js} +6 -9
  16. package/dist/_chunks/{credentials-BSjE9fRR.js → credentials-BMBNmW0t.js} +2 -3
  17. package/dist/_chunks/{data_api-Djxj5ZQD.js → data_api-CHDwvMTG.js} +2 -3
  18. package/dist/_chunks/{databases-Dok4wru7.js → databases-DC2h6IW2.js} +2 -3
  19. package/dist/_chunks/{deploy-D7B0Xfjg.js → deploy-DmKZcAnR.js} +3 -4
  20. package/dist/_chunks/{dev-CSvxAecE.js → dev-Dv0HKcFF.js} +7 -8
  21. package/dist/_chunks/{diff-DhxxbdQE.js → diff-dnxneH0u.js} +2 -3
  22. package/dist/_chunks/{docs-CrVybkTP.js → docs-CClmgj_Z.js} +2 -3
  23. package/dist/_chunks/{env-5HS5qQGd.js → env-BOt9AZ1j.js} +4 -5
  24. package/dist/_chunks/{env-BNm69Qh8.js → env-CIFMBEon.js} +3 -5
  25. package/dist/_chunks/{env-BpP3Dqpe.js → env-JgoSsmyt.js} +2 -3
  26. package/dist/_chunks/{feedback-CMayyTa8.js → feedback-mQmdTRFn.js} +2 -3
  27. package/dist/_chunks/{functions-Q0zuvtnk.js → functions-3ypiRwZK.js} +2 -3
  28. package/dist/_chunks/{git-H32TNt6M.js → git-Dxw9w9dK.js} +4 -5
  29. package/dist/_chunks/{init-BkA6RilG.js → init-BOOGv-mD.js} +2 -3
  30. package/dist/_chunks/{inspect-g0wekylj.js → inspect-yFAb61qo.js} +2 -3
  31. package/dist/_chunks/{ip_allow-5lLFvIuE.js → ip_allow-DBdxNEUa.js} +2 -3
  32. package/dist/_chunks/{link-BgtkOBws.js → link-CcwTXRny.js} +6 -7
  33. package/dist/_chunks/{logs-DWkpjzIH.js → logs-BB4uvblR.js} +2 -3
  34. package/dist/_chunks/{mcp-Bo-7TKc7.js → mcp-BznTRK3w.js} +2 -3
  35. package/dist/_chunks/{neon_auth-DpF83S24.js → neon_auth-Dw-ucM5Y.js} +102 -28
  36. package/dist/_chunks/{open-CX3BT3Tp.js → open-T2nI89Oh.js} +2 -3
  37. package/dist/_chunks/{operations-D4I-AxVs.js → operations-CzaR_uqx.js} +2 -3
  38. package/dist/_chunks/{orgs-xGfANwHQ.js → orgs-Dpbr-K0A.js} +2 -3
  39. package/dist/_chunks/{paths-DMq0Lt7a.js → paths-B55ZfOg1.js} +1 -2
  40. package/dist/_chunks/{plugins-DqD7BDO1.js → plugins-CKOcBuuP.js} +3 -4
  41. package/dist/_chunks/{profile-yXOiKk9R.js → profile-H0d7gFrX.js} +9 -10
  42. package/dist/_chunks/{profiles-DIB1av2Q.js → profiles-DTazQtjK.js} +4 -6
  43. package/dist/_chunks/{projects-BwI2Uo0z.js → projects-a3X4OFEJ.js} +2 -3
  44. package/dist/_chunks/{psql-BM-doe8e.js → psql-Bce4X0NG.js} +3 -4
  45. package/dist/_chunks/{psql-BNljLda2.js → psql-DwGeP0IV.js} +2 -4
  46. package/dist/_chunks/{realtime-BRqIyGR-.js → realtime-BwtzYf5a.js} +2 -3
  47. package/dist/_chunks/{roles-C3M4q9DS.js → roles-Bd9r8_pX.js} +1 -2
  48. package/dist/_chunks/{roles-B4w3YT_7.js → roles-xRuu0462.js} +2 -3
  49. package/dist/_chunks/{rolldown-runtime-8H4AJuhK.js → rolldown-runtime-BJohB4LM.js} +1 -2
  50. package/dist/_chunks/{secure_file-BucZj4yQ.js → secure_file-Caskdohg.js} +1 -2
  51. package/dist/_chunks/{set_context-DbrwoImy.js → set_context-ompB6d2D.js} +2 -3
  52. package/dist/_chunks/{skills-BP6pIm7O.js → skills-DKgafm65.js} +2 -3
  53. package/dist/_chunks/{snapshots-RJBzW8GM.js → snapshots-DxNhjcco.js} +3 -4
  54. package/dist/_chunks/{status-DV8Z2kw3.js → status-DS_yUXFo.js} +3 -4
  55. package/dist/_chunks/{triggers-BrRo1z4b.js → triggers-BfvyeJUC.js} +2 -3
  56. package/dist/_chunks/{user-dlOGXbX9.js → user-D9mC430O.js} +2 -3
  57. package/dist/_chunks/{vpc_endpoints-CNb0YfMo.js → vpc_endpoints-C-Y4WK2M.js} +3 -4
  58. package/dist/_shared/auth_selection.js +1 -2
  59. package/dist/_shared/credentials.js +1 -2
  60. package/dist/_shared/paths.js +1 -2
  61. package/dist/_shared/profiles.js +1 -2
  62. package/dist/_shared/secure_file.js +1 -2
  63. package/dist/analytics.js +4 -5
  64. package/dist/anonymous_id.js +2 -3
  65. package/dist/api.js +1 -2
  66. package/dist/auth.js +1 -2
  67. package/dist/auth_context.js +1 -2
  68. package/dist/auth_recovery.js +3 -4
  69. package/dist/claimable/api.js +1 -2
  70. package/dist/claimable/state.js +2 -3
  71. package/dist/cli.js +1 -2
  72. package/dist/commands/api.js +1 -1
  73. package/dist/commands/api_keys.js +1 -1
  74. package/dist/commands/ask.js +1 -1
  75. package/dist/commands/ask_sse.js +1 -2
  76. package/dist/commands/auth.js +1 -1
  77. package/dist/commands/bootstrap.js +1 -1
  78. package/dist/commands/branches.js +1 -1
  79. package/dist/commands/bucket.js +1 -1
  80. package/dist/commands/checkout.js +1 -1
  81. package/dist/commands/claim.js +1 -1
  82. package/dist/commands/config.js +1 -1
  83. package/dist/commands/connection_string.js +1 -1
  84. package/dist/commands/credentials.js +1 -1
  85. package/dist/commands/data_api.js +1 -1
  86. package/dist/commands/databases.js +1 -1
  87. package/dist/commands/deploy.js +1 -1
  88. package/dist/commands/deploy_help.js +1 -2
  89. package/dist/commands/dev.js +1 -1
  90. package/dist/commands/diff.js +1 -1
  91. package/dist/commands/docs.js +1 -1
  92. package/dist/commands/env.js +1 -1
  93. package/dist/commands/env_output.js +2 -3
  94. package/dist/commands/feedback.js +1 -1
  95. package/dist/commands/functions.js +1 -1
  96. package/dist/commands/functions_new.js +2 -3
  97. package/dist/commands/git.js +1 -1
  98. package/dist/commands/index.js +46 -47
  99. package/dist/commands/init.js +1 -1
  100. package/dist/commands/inspect.js +1 -1
  101. package/dist/commands/ip_allow.js +1 -1
  102. package/dist/commands/link.js +1 -1
  103. package/dist/commands/link_output.js +1 -2
  104. package/dist/commands/logs.js +1 -1
  105. package/dist/commands/manifest.js +1 -2
  106. package/dist/commands/mcp.js +1 -1
  107. package/dist/commands/neon_auth.js +1 -1
  108. package/dist/commands/open.js +1 -1
  109. package/dist/commands/operations.js +1 -1
  110. package/dist/commands/orgs.js +1 -1
  111. package/dist/commands/plugins.js +1 -1
  112. package/dist/commands/profile.js +1 -1
  113. package/dist/commands/projects.js +1 -1
  114. package/dist/commands/psql.js +1 -1
  115. package/dist/commands/realtime.js +1 -1
  116. package/dist/commands/roles.js +1 -1
  117. package/dist/commands/schema_diff.js +1 -2
  118. package/dist/commands/set_context.js +1 -1
  119. package/dist/commands/skills.js +1 -1
  120. package/dist/commands/snapshots.js +1 -1
  121. package/dist/commands/status.js +1 -1
  122. package/dist/commands/subscribe.js +2 -3
  123. package/dist/commands/thinking_spinner.js +1 -2
  124. package/dist/commands/triggers.js +1 -1
  125. package/dist/commands/user.js +1 -1
  126. package/dist/commands/vpc_endpoints.js +1 -1
  127. package/dist/config.js +2 -3
  128. package/dist/config_edit.js +1 -2
  129. package/dist/config_format.js +1 -2
  130. package/dist/config_services.js +1 -2
  131. package/dist/config_source.js +1 -2
  132. package/dist/config_template.js +1 -2
  133. package/dist/context.js +1 -2
  134. package/dist/credential_io.js +1 -1
  135. package/dist/current_branch_fast_path.js +1 -2
  136. package/dist/custom_domains_api.js +1 -2
  137. package/dist/dev/env.js +1 -1
  138. package/dist/dev/functions.js +1 -2
  139. package/dist/dev/inputs.js +1 -2
  140. package/dist/dev/runtime.js +1 -2
  141. package/dist/dev/websocket.js +1 -2
  142. package/dist/env.js +1 -2
  143. package/dist/env_file.js +1 -2
  144. package/dist/env_services.js +2 -3
  145. package/dist/error_reporting.js +80 -160
  146. package/dist/errors.js +1 -2
  147. package/dist/functions/registry.js +1 -2
  148. package/dist/functions/scaffold.js +1 -2
  149. package/dist/functions/source.js +1 -2
  150. package/dist/functions_api.js +1 -2
  151. package/dist/help.js +1 -2
  152. package/dist/human_table.js +1 -2
  153. package/dist/index.js +3 -4
  154. package/dist/init/agents.js +1 -2
  155. package/dist/init/auth.js +5 -6
  156. package/dist/init/bootstrap.js +1 -2
  157. package/dist/init/build_config.js +1 -2
  158. package/dist/init/cancelled.js +1 -2
  159. package/dist/init/choices.js +2 -3
  160. package/dist/init/chrome.js +1 -2
  161. package/dist/init/copy.js +13 -3
  162. package/dist/init/detect.js +4 -5
  163. package/dist/init/detect_host.js +1 -2
  164. package/dist/init/funnel.js +63 -16
  165. package/dist/init/link.js +4 -5
  166. package/dist/init/mode.js +1 -2
  167. package/dist/init/plan.js +1 -2
  168. package/dist/init/run.js +152 -98
  169. package/dist/init/template_title.js +1 -2
  170. package/dist/init/tooling.js +6 -7
  171. package/dist/init/wizard.js +1 -2
  172. package/dist/keyring.js +1 -2
  173. package/dist/log.js +1 -2
  174. package/dist/mcp/agents.js +1 -2
  175. package/dist/mcp/install.js +1 -2
  176. package/dist/mcp/mint.js +2 -3
  177. package/dist/mcp/plan.js +1 -2
  178. package/dist/mcp/targets.js +1 -2
  179. package/dist/mcp/wizard.js +1 -2
  180. package/dist/neon_services.js +1 -2
  181. package/dist/node_version.js +1 -2
  182. package/dist/notices.js +1 -2
  183. package/dist/parameters.gen.js +1 -2
  184. package/dist/pkg.js +1 -2
  185. package/dist/plugins/plan.js +1 -2
  186. package/dist/plugins/run.js +1 -2
  187. package/dist/plugins/targets.js +1 -2
  188. package/dist/profile_keys.js +1 -2
  189. package/dist/project.js +1 -2
  190. package/dist/psql/cli.js +2 -3
  191. package/dist/psql/command/cmd_cond.js +1 -2
  192. package/dist/psql/command/cmd_connect.js +1 -2
  193. package/dist/psql/command/cmd_copy.js +2 -3
  194. package/dist/psql/command/cmd_describe.js +1 -2
  195. package/dist/psql/command/cmd_format.js +1 -2
  196. package/dist/psql/command/cmd_io.js +1 -1
  197. package/dist/psql/command/cmd_lo.js +1 -2
  198. package/dist/psql/command/cmd_meta.js +1 -2
  199. package/dist/psql/command/cmd_misc.js +1 -2
  200. package/dist/psql/command/cmd_pipeline.js +1 -1
  201. package/dist/psql/command/cmd_restrict.js +1 -2
  202. package/dist/psql/command/cmd_show.js +1 -2
  203. package/dist/psql/command/dispatch.js +2 -3
  204. package/dist/psql/command/inputQueue.js +1 -2
  205. package/dist/psql/command/shared.js +1 -2
  206. package/dist/psql/complete/filenames.js +1 -2
  207. package/dist/psql/complete/index.js +1 -2
  208. package/dist/psql/complete/matcher.js +1 -2
  209. package/dist/psql/complete/psqlVars.js +1 -2
  210. package/dist/psql/complete/queries.js +1 -2
  211. package/dist/psql/complete/rules.js +1 -2
  212. package/dist/psql/core/common.js +1 -1
  213. package/dist/psql/core/help.js +1 -2
  214. package/dist/psql/core/mainloop.js +2 -3
  215. package/dist/psql/core/prompt.js +1 -2
  216. package/dist/psql/core/settings.js +1 -2
  217. package/dist/psql/core/sqlHelp.js +1 -2
  218. package/dist/psql/core/startup.js +1 -1
  219. package/dist/psql/core/syncVars.js +1 -2
  220. package/dist/psql/core/variables.js +1 -2
  221. package/dist/psql/describe/formatters.js +1 -2
  222. package/dist/psql/describe/processNamePattern.js +1 -2
  223. package/dist/psql/describe/queries.js +1 -2
  224. package/dist/psql/describe/versionGate.js +1 -2
  225. package/dist/psql/index.js +1 -1
  226. package/dist/psql/io/history.js +1 -2
  227. package/dist/psql/io/input.js +1 -2
  228. package/dist/psql/io/lineEditor/buffer.js +1 -2
  229. package/dist/psql/io/lineEditor/complete.js +1 -2
  230. package/dist/psql/io/lineEditor/filename.js +1 -2
  231. package/dist/psql/io/lineEditor/index.js +1 -2
  232. package/dist/psql/io/lineEditor/keymap.js +1 -2
  233. package/dist/psql/io/lineEditor/vt100.js +1 -2
  234. package/dist/psql/io/pgpass.js +1 -2
  235. package/dist/psql/io/pgservice.js +1 -2
  236. package/dist/psql/io/psqlrc.js +2 -3
  237. package/dist/psql/print/aligned.js +1 -2
  238. package/dist/psql/print/asciidoc.js +1 -2
  239. package/dist/psql/print/crosstab.js +1 -2
  240. package/dist/psql/print/csv.js +1 -2
  241. package/dist/psql/print/html.js +1 -2
  242. package/dist/psql/print/json.js +1 -2
  243. package/dist/psql/print/latex.js +1 -2
  244. package/dist/psql/print/pager.js +1 -2
  245. package/dist/psql/print/troff.js +1 -2
  246. package/dist/psql/print/unaligned.js +1 -2
  247. package/dist/psql/print/units.js +1 -2
  248. package/dist/psql/scanner/slash.js +1 -2
  249. package/dist/psql/scanner/sql.js +1 -2
  250. package/dist/psql/scanner/stringutils.js +1 -2
  251. package/dist/psql/types/scanner.js +1 -2
  252. package/dist/psql/wire/connection.js +1 -2
  253. package/dist/psql/wire/copy.js +1 -2
  254. package/dist/psql/wire/notify.js +1 -2
  255. package/dist/psql/wire/pipeline.js +1 -2
  256. package/dist/psql/wire/protocol.js +1 -2
  257. package/dist/psql/wire/sasl.js +1 -2
  258. package/dist/psql/wire/tls.js +1 -2
  259. package/dist/refresh_lock.js +1 -2
  260. package/dist/retire_credential.js +2 -3
  261. package/dist/skills/catalog.js +1 -2
  262. package/dist/skills/check_worker.js +1 -2
  263. package/dist/skills/freshness.js +1 -2
  264. package/dist/skills/plan.js +1 -2
  265. package/dist/skills/run.js +1 -2
  266. package/dist/skills/targets.js +1 -2
  267. package/dist/skills/wizard.js +1 -2
  268. package/dist/sso_recovery.js +1 -2
  269. package/dist/storage_api.js +1 -2
  270. package/dist/test_utils/fixtures.js +1 -2
  271. package/dist/test_utils/neon_api_server.js +1 -2
  272. package/dist/test_utils/npm_env.js +1 -2
  273. package/dist/test_utils/oauth_server.js +1 -2
  274. package/dist/test_utils/project_dir.js +1 -2
  275. package/dist/test_utils/registry.js +1 -2
  276. package/dist/test_utils/rotating_oauth_server.js +1 -2
  277. package/dist/update_check_worker.js +1 -2
  278. package/dist/update_notifier.js +1 -2
  279. package/dist/utils/agent_flag.js +1 -2
  280. package/dist/utils/agent_picker.js +1 -2
  281. package/dist/utils/ai_gateway_notice.js +1 -2
  282. package/dist/utils/api_enums.js +3 -3
  283. package/dist/utils/auth.js +1 -2
  284. package/dist/utils/branch_name.js +1 -2
  285. package/dist/utils/branch_notice.js +1 -2
  286. package/dist/utils/branch_picker.js +1 -2
  287. package/dist/utils/cli_name.js +1 -2
  288. package/dist/utils/compute_units.js +1 -2
  289. package/dist/utils/config_diff.js +1 -2
  290. package/dist/utils/enrichers.js +1 -2
  291. package/dist/utils/esbuild.js +1 -2
  292. package/dist/utils/flags.js +1 -2
  293. package/dist/utils/formats.js +1 -2
  294. package/dist/utils/function_slug.js +1 -2
  295. package/dist/utils/git.js +1 -2
  296. package/dist/utils/git_diff.js +1 -2
  297. package/dist/utils/help_text.js +1 -2
  298. package/dist/utils/hooks.js +2 -3
  299. package/dist/utils/inspect_db.js +3 -4
  300. package/dist/utils/inspect_queries.js +1 -2
  301. package/dist/utils/json_file.js +1 -2
  302. package/dist/utils/middlewares.js +2 -3
  303. package/dist/utils/openapi.js +1 -2
  304. package/dist/utils/package_manager.js +1 -2
  305. package/dist/utils/point_in_time.js +1 -2
  306. package/dist/utils/psql.js +1 -2
  307. package/dist/utils/repeated_flags.js +1 -2
  308. package/dist/utils/service_picker.js +1 -2
  309. package/dist/utils/staging.js +1 -2
  310. package/dist/utils/string.js +1 -2
  311. package/dist/utils/ui.js +1 -2
  312. package/dist/utils/write_sync.js +1 -2
  313. package/dist/utils/zip.js +1 -2
  314. package/dist/vendor/postgres-meta/constants.js +1 -2
  315. package/dist/vendor/postgres-meta/lib/PostgresMeta.js +1 -2
  316. package/dist/vendor/postgres-meta/lib/PostgresMetaColumnPrivileges.js +1 -2
  317. package/dist/vendor/postgres-meta/lib/PostgresMetaColumns.js +1 -2
  318. package/dist/vendor/postgres-meta/lib/PostgresMetaConfig.js +1 -2
  319. package/dist/vendor/postgres-meta/lib/PostgresMetaExtensions.js +1 -2
  320. package/dist/vendor/postgres-meta/lib/PostgresMetaForeignTables.js +1 -2
  321. package/dist/vendor/postgres-meta/lib/PostgresMetaFunctions.js +1 -2
  322. package/dist/vendor/postgres-meta/lib/PostgresMetaIndexes.js +1 -2
  323. package/dist/vendor/postgres-meta/lib/PostgresMetaMaterializedViews.js +1 -2
  324. package/dist/vendor/postgres-meta/lib/PostgresMetaPolicies.js +1 -2
  325. package/dist/vendor/postgres-meta/lib/PostgresMetaPublications.js +1 -2
  326. package/dist/vendor/postgres-meta/lib/PostgresMetaRelationships.js +1 -2
  327. package/dist/vendor/postgres-meta/lib/PostgresMetaRoles.js +1 -2
  328. package/dist/vendor/postgres-meta/lib/PostgresMetaSchemas.js +1 -2
  329. package/dist/vendor/postgres-meta/lib/PostgresMetaTablePrivileges.js +1 -2
  330. package/dist/vendor/postgres-meta/lib/PostgresMetaTables.js +1 -2
  331. package/dist/vendor/postgres-meta/lib/PostgresMetaTriggers.js +1 -2
  332. package/dist/vendor/postgres-meta/lib/PostgresMetaTypes.js +1 -2
  333. package/dist/vendor/postgres-meta/lib/PostgresMetaVersion.js +1 -2
  334. package/dist/vendor/postgres-meta/lib/PostgresMetaViews.js +1 -2
  335. package/dist/vendor/postgres-meta/lib/constants.js +1 -2
  336. package/dist/vendor/postgres-meta/lib/db.js +1 -2
  337. package/dist/vendor/postgres-meta/lib/generators.js +1 -2
  338. package/dist/vendor/postgres-meta/lib/helpers.js +1 -2
  339. package/dist/vendor/postgres-meta/lib/sql/column_privileges.sql.js +1 -2
  340. package/dist/vendor/postgres-meta/lib/sql/columns.sql.js +1 -2
  341. package/dist/vendor/postgres-meta/lib/sql/config.sql.js +1 -2
  342. package/dist/vendor/postgres-meta/lib/sql/extensions.sql.js +1 -2
  343. package/dist/vendor/postgres-meta/lib/sql/foreign_tables.sql.js +1 -2
  344. package/dist/vendor/postgres-meta/lib/sql/functions.sql.js +1 -2
  345. package/dist/vendor/postgres-meta/lib/sql/indexes.sql.js +1 -2
  346. package/dist/vendor/postgres-meta/lib/sql/materialized_views.sql.js +1 -2
  347. package/dist/vendor/postgres-meta/lib/sql/policies.sql.js +1 -2
  348. package/dist/vendor/postgres-meta/lib/sql/publications.sql.js +1 -2
  349. package/dist/vendor/postgres-meta/lib/sql/roles.sql.js +1 -2
  350. package/dist/vendor/postgres-meta/lib/sql/schemas.sql.js +1 -2
  351. package/dist/vendor/postgres-meta/lib/sql/table.sql.js +1 -2
  352. package/dist/vendor/postgres-meta/lib/sql/table_privileges.sql.js +1 -2
  353. package/dist/vendor/postgres-meta/lib/sql/table_relationships.sql.js +1 -2
  354. package/dist/vendor/postgres-meta/lib/sql/triggers.sql.js +1 -2
  355. package/dist/vendor/postgres-meta/lib/sql/types.sql.js +1 -2
  356. package/dist/vendor/postgres-meta/lib/sql/version.sql.js +1 -2
  357. package/dist/vendor/postgres-meta/lib/sql/views.sql.js +1 -2
  358. package/dist/vendor/postgres-meta/lib/sql/views_key_dependencies.sql.js +1 -2
  359. package/dist/vendor/postgres-meta/templates/typescript.js +1 -2
  360. package/dist/writer.js +1 -2
  361. package/package.json +6 -6
package/dist/init/run.js CHANGED
@@ -1,5 +1,5 @@
1
1
  import { log } from "../log.js";
2
- import { r as defaultDir } from "../_chunks/paths-DMq0Lt7a.js";
2
+ import { r as defaultDir } from "../_chunks/paths-B55ZfOg1.js";
3
3
  import "../config.js";
4
4
  import { contextBranch, readContextFile } from "../context.js";
5
5
  import { recordCommandSuccessExtras, takeCommandSuccessExtras } from "../analytics.js";
@@ -15,23 +15,23 @@ import { missingPluginsCommands, pluginsInstallableAgents } from "../plugins/tar
15
15
  import { skillsInstallableAgents } from "../skills/targets.js";
16
16
  import { FALLBACK_SKILLS_AGENTS, assertNamedAgentTooling, funnelAgentSetup, planInitToolingSteps, recommendedTooling, resolveNamedAgents, splitInitTooling } from "./plan.js";
17
17
  import { inferPackageManager, resolvePackageManager } from "../utils/package_manager.js";
18
- import { CANCELLED_BODY, CLAIMABLE_ACCOUNT_FLAGS, CLAIMABLE_ALREADY_LINKED, CLAIMABLE_MCP_API_KEY, CLAIMABLE_NO_LINK, MCP_API_KEY_NEEDS_AUTH, MCP_SCOPED_NEEDS_PROJECT, NON_TTY_LINK_NEEDS_AUTH, NO_AGENTS_FALLBACK_STATUS, PROGRESS, PROJECT_PINNED_OFFLINE, claimableNext, claimableThenServicesNext, configInitNext, envPullFailedNext, existingConfigNext, installFailedNext, mcpAfterLinkNext, mcpConfigLocationSkipped, mcpConfigLocationUnavailable, mcpKeyFailedNext, namedAgentsUnavailable, newConfigNext, offlinePinNext, skippedLinkNext, unattendedUnauthedNext } from "./copy.js";
18
+ import { AGENTS_NOT_INSTALLED, CANCELLED_BODY, CLAIMABLE_ACCOUNT_FLAGS, CLAIMABLE_ALREADY_LINKED, CLAIMABLE_MCP_API_KEY, CLAIMABLE_NO_LINK, MCP_API_KEY_NEEDS_AUTH, MCP_SCOPED_NEEDS_PROJECT, NON_TTY_LINK_NEEDS_AUTH, NO_AGENTS_FALLBACK_STATUS, PROGRESS, PROJECT_PINNED_OFFLINE, claimableNext, claimableThenServicesNext, configInitNext, envPullFailedNext, existingConfigNext, installFailedNext, mcpAfterLinkNext, mcpConfigLocationSkipped, mcpConfigLocationUnavailable, mcpKeyFailedNext, namedAgentsUnavailable, newConfigNext, offlinePinNext, skippedLinkNext, toolingFailedNext, unattendedUnauthedNext } from "./copy.js";
19
19
  import { agentsRowValue, configRowValue, formatInitDone, headingForKind, printInitBanner, printInitDone, printInitProgress, projectRowValue, shouldPrintInitBanner } from "./chrome.js";
20
- import { h as initCmd, t as ConfigInstallFailed } from "../_chunks/config-BH_qRHiG.js";
21
- import { o as quoteFlagValue, s as runLink } from "../_chunks/link-BgtkOBws.js";
20
+ import { h as initCmd, t as ConfigInstallFailed } from "../_chunks/config-7SIE_C5O.js";
21
+ import { o as quoteFlagValue, s as runLink } from "../_chunks/link-CcwTXRny.js";
22
22
  import { runAuthenticatedLink } from "./link.js";
23
23
  import { CannotMintApiKeyError } from "../mcp/mint.js";
24
24
  import { pullInitEnv } from "./auth.js";
25
25
  import { InitCancelled, raceSigint, restoreCursor } from "./cancelled.js";
26
26
  import { pickAgentSetupInteractively, pickInitAgentsInteractively, pickInitConfigInteractively, pickInitMcpAuthInteractively, pickInitMcpConfigLocationInteractively, pickInitModeInteractively, pickInitPackageManagerInteractively, pickInitProjectSetupInteractively, pickInitServicesInteractively, pickInitSkillsInteractively } from "./wizard.js";
27
- import { runToolingSteps } from "./tooling.js";
28
- import { l as create } from "../_chunks/claim-DqAvAvDm.js";
27
+ import { runToolingSteps, toolingStepCommandText } from "./tooling.js";
28
+ import { l as create } from "../_chunks/claim-DlLZmcq0.js";
29
29
  import { INIT_CONFIG_SERVICES_CONFLICT, configPlanFromResolution, initEnvPullAfterConfig, resolveInitConfigChoice } from "./choices.js";
30
30
  import { detectInitEnvironment } from "./detect.js";
31
- import { createInitFunnel, emitInitStart, finishInitFunnel, initStartProperties } from "./funnel.js";
31
+ import { createInitFunnel, emitInitStart, finishInitFunnel, initStartProperties, recordInitError, recordInitExit } from "./funnel.js";
32
32
  import { assertAgentSetupFlags, hasInitMcpFlags, inferInitAgentSetup, resolveInitMode } from "./mode.js";
33
33
  import { resolve } from "node:path";
34
- //#region src/init/run.ts
34
+ // src/init/run.ts
35
35
  const isLinked = (contextFile) => {
36
36
  const projectId = readContextFile(contextFile).projectId;
37
37
  return typeof projectId === "string" && projectId.length > 0;
@@ -197,6 +197,8 @@ const runInit = async (props) => {
197
197
  const funnel = createInitFunnel();
198
198
  let outcome = "error";
199
199
  let printed = false;
200
+ let step = "setup";
201
+ let deferredFailureNext = () => [];
200
202
  try {
201
203
  const detectOpts = {
202
204
  cwd,
@@ -332,7 +334,23 @@ const runInit = async (props) => {
332
334
  const mcpOauth = mcpAuth === "oauth";
333
335
  const earlyTooling = delayMcp ? withoutMcp(tooling) : tooling;
334
336
  const mcpState = {};
335
- const reportedTooling = () => mcpState.error === void 0 && mcpState.deferredPin === void 0 ? tooling : withoutMcp(tooling);
337
+ const toolingFailures = [];
338
+ const reportedTooling = () => {
339
+ const dropped = new Set(toolingFailures.map((failure) => failure.kind));
340
+ if (mcpState.error !== void 0 || mcpState.deferredPin !== void 0) dropped.add("mcp");
341
+ return withoutKinds(tooling, dropped);
342
+ };
343
+ const agentsRow = () => {
344
+ const reported = reportedTooling();
345
+ return toolingFailures.length > 0 && reported.setup === "skip" ? AGENTS_NOT_INSTALLED : agentsRowValue({
346
+ tooling: reported,
347
+ installed: funnel.agentsInstalled
348
+ });
349
+ };
350
+ const toolingFailedNextLines = () => toolingFailedNext(toolingFailures.map((failure) => ({
351
+ kind: failure.kind,
352
+ command: failure.command
353
+ })));
336
354
  const mcpCommand = (projectIdArg) => [
337
355
  `${getCliName()} mcp -y`,
338
356
  ...mcpConfigLocation === "project" ? ["--project"] : [],
@@ -340,25 +358,35 @@ const runInit = async (props) => {
340
358
  ...("mcpAgents" in tooling ? tooling.mcpAgents : []).map((agent) => `--agent ${agent}`)
341
359
  ].join(" ");
342
360
  const mcpFailedNext = () => mcpState.error === void 0 ? [] : mcpKeyFailedNext(mcpState.reason ?? "cannot-mint", mcpCommand(mcpState.pinId !== void 0 ? quoteFlagValue(mcpState.pinId) : void 0));
361
+ deferredFailureNext = () => joinNext(toolingFailedNextLines(), mcpFailedNext());
343
362
  const mcpDeferredNext = () => mcpState.deferredPin === void 0 ? [] : mcpAfterLinkNext(`${mcpCommand(mcpState.deferredPin)}${mcpOauth ? " --oauth" : ""}`);
344
363
  const runTooling = async (steps, plan) => {
345
- let ran = plan;
346
- try {
347
- await runToolingSteps(steps, {
348
- cwd,
349
- output: props.output,
350
- auth,
351
- operations: props.operations,
352
- narrate: "human",
353
- mcpOauthFallback: !mcpAuthChosen
354
- });
355
- } catch (error) {
356
- if (!(error instanceof CannotMintApiKeyError)) throw error;
357
- mcpState.error = error;
358
- mcpState.reason = "cannot-mint";
359
- ran = withoutMcp(plan);
364
+ for (const toolingStep of steps) {
365
+ let completed;
366
+ try {
367
+ completed = await runToolingSteps([toolingStep], {
368
+ cwd,
369
+ output: props.output,
370
+ auth,
371
+ operations: props.operations,
372
+ narrate: "human",
373
+ mcpOauthFallback: !mcpAuthChosen
374
+ });
375
+ } catch (error) {
376
+ if (error instanceof InitCancelled) throw error;
377
+ if (error instanceof CannotMintApiKeyError) {
378
+ mcpState.error = error;
379
+ mcpState.reason = "cannot-mint";
380
+ } else toolingFailures.push({
381
+ kind: toolingStep.kind,
382
+ command: `${getCliName()} ${toolingStepCommandText(toolingStep)}`,
383
+ error
384
+ });
385
+ recordInitError(funnel, toolingStep.kind, error);
386
+ continue;
387
+ }
388
+ if (completed.includes(toolingStep.kind)) funnel.agentsInstalled = uniqueAgents([...funnel.agentsInstalled, ...agentsForStep(plan, toolingStep.kind)]);
360
389
  }
361
- funnel.agentsInstalled = uniqueAgents([...funnel.agentsInstalled, ...agentsFromTooling(ran)]);
362
390
  };
363
391
  const toolingSteps = planInitToolingSteps({
364
392
  tooling: earlyTooling,
@@ -370,6 +398,7 @@ const runInit = async (props) => {
370
398
  ...selectedSkills !== void 0 ? { skills: selectedSkills } : {}
371
399
  });
372
400
  if (toolingSteps.length > 0) await runTooling(toolingSteps, earlyTooling);
401
+ step = "link";
373
402
  let projectSetup = "skip";
374
403
  let claimExpiresAt;
375
404
  const noLink = props.link === false;
@@ -419,6 +448,7 @@ const runInit = async (props) => {
419
448
  };
420
449
  if (usesMcp && mcpAuth === "api-key" && (projectSetup === "claimable" || props.claimable === true)) throw new Error(CLAIMABLE_MCP_API_KEY);
421
450
  if (projectSetup === "claimable") {
451
+ step = "claimable";
422
452
  printInitProgress(PROGRESS.claim);
423
453
  await (props.createClaimable ?? defaultCreateClaimable)({
424
454
  cwd,
@@ -432,12 +462,14 @@ const runInit = async (props) => {
432
462
  funnel.link = "claimable";
433
463
  claimExpiresAt = readLinkedClaimableCredentials(configDir, readContextFile(contextFile))?.expiresAt;
434
464
  } else if (projectSetup === "link") {
465
+ step = "link";
435
466
  printInitProgress(detection.authenticated ? PROGRESS.link : PROGRESS.auth);
436
467
  await (props.linkProject ?? runAuthenticatedLink)(linkProps);
437
468
  funnel.link = "linked";
438
469
  }
439
470
  const pinnedOffline = funnel.link === "skipped" && !noLink && linkInputs.orgId !== void 0 && linkInputs.projectId !== void 0 && linkInputs.branch !== void 0 && linkInputs.projectName === void 0 && linkInputs.regionId === void 0;
440
471
  if (pinnedOffline) {
472
+ step = "link";
441
473
  await runLink({
442
474
  ...linkProps,
443
475
  checks: false,
@@ -449,9 +481,11 @@ const runInit = async (props) => {
449
481
  else if (delayMcp && tooling.setup !== "skip" && mcpAuth === "api-key" && yes && !detection.authenticated) {
450
482
  mcpState.error = new Error(MCP_API_KEY_NEEDS_AUTH);
451
483
  mcpState.reason = "signed-out";
484
+ recordInitError(funnel, "mcp", mcpState.error);
452
485
  const linkedId = readContextFile(contextFile).projectId;
453
486
  if (props.mcpProjectScoped === true && typeof linkedId === "string") mcpState.pinId = linkedId;
454
487
  } else if (delayMcp && tooling.setup !== "skip") {
488
+ step = "mcp";
455
489
  const linkedId = readContextFile(contextFile).projectId;
456
490
  let pinId;
457
491
  if (props.mcpProjectScoped === true) {
@@ -479,6 +513,7 @@ const runInit = async (props) => {
479
513
  mcpState.pinId = pinId;
480
514
  if (mcpSteps.length > 0) await runTooling(mcpSteps, mcpOnly);
481
515
  }
516
+ step = "config";
482
517
  const canAskConfig = props.pickConfig !== void 0 || detection.interactive;
483
518
  const configResolution = resolveInitConfigChoice({
484
519
  flag: recommended ? props.config ?? true : props.config,
@@ -536,7 +571,7 @@ const runInit = async (props) => {
536
571
  heading: failed.heading,
537
572
  body: failed.body,
538
573
  rows: [],
539
- next: joinNext(failed.next, mcpFailedNext())
574
+ next: joinNext(failed.next, joinNext(toolingFailedNextLines(), mcpFailedNext()))
540
575
  }));
541
576
  printed = true;
542
577
  outcome = "error";
@@ -557,48 +592,48 @@ const runInit = async (props) => {
557
592
  ...typeof context.projectId === "string" ? { projectId: context.projectId } : {},
558
593
  ...branch !== void 0 ? { branch } : {}
559
594
  });
560
- if (envPullPlan.kind !== "skip") try {
561
- if (typeof context.projectId !== "string" || typeof branch !== "string") throw new Error("Env pull requires a linked project and branch.");
562
- printInitProgress(PROGRESS.env);
563
- await raceSigint((props.envPull ?? pullInitEnv)({
564
- ...auth,
565
- output: props.output,
566
- cwd,
567
- projectId: context.projectId,
568
- branch,
569
- ...envPullPlan.kind === "services" ? {
570
- services: envPullPlan.services,
571
- envKeys: envPullPlan.envKeys
572
- } : {}
573
- }));
574
- } catch (error) {
575
- if (error instanceof InitCancelled) throw error;
576
- const failed = envPullFailedNext();
577
- printInitDone(formatInitDone({
578
- heading: failed.heading,
579
- body: failed.body,
580
- rows: [
581
- {
582
- label: "Agents",
583
- value: agentsRowValue({
584
- tooling: reportedTooling(),
585
- installed: funnel.agentsInstalled
586
- })
587
- },
588
- {
589
- label: "Project",
590
- value: projectRowValue(funnel.link)
591
- },
592
- {
593
- label: "Config",
594
- value: configRowValue(funnel.config, existingFilename)
595
- }
596
- ],
597
- next: joinNext(failed.next, mcpFailedNext())
598
- }));
599
- printed = true;
600
- outcome = "error";
601
- throw error;
595
+ if (envPullPlan.kind !== "skip") {
596
+ step = "env_pull";
597
+ try {
598
+ if (typeof context.projectId !== "string" || typeof branch !== "string") throw new Error("Env pull requires a linked project and branch.");
599
+ printInitProgress(PROGRESS.env);
600
+ await raceSigint((props.envPull ?? pullInitEnv)({
601
+ ...auth,
602
+ output: props.output,
603
+ cwd,
604
+ projectId: context.projectId,
605
+ branch,
606
+ ...envPullPlan.kind === "services" ? {
607
+ services: envPullPlan.services,
608
+ envKeys: envPullPlan.envKeys
609
+ } : {}
610
+ }));
611
+ } catch (error) {
612
+ if (error instanceof InitCancelled) throw error;
613
+ const failed = envPullFailedNext();
614
+ printInitDone(formatInitDone({
615
+ heading: failed.heading,
616
+ body: failed.body,
617
+ rows: [
618
+ {
619
+ label: "Agents",
620
+ value: agentsRow()
621
+ },
622
+ {
623
+ label: "Project",
624
+ value: projectRowValue(funnel.link)
625
+ },
626
+ {
627
+ label: "Config",
628
+ value: configRowValue(funnel.config, existingFilename)
629
+ }
630
+ ],
631
+ next: joinNext(failed.next, joinNext(toolingFailedNextLines(), mcpFailedNext()))
632
+ }));
633
+ printed = true;
634
+ outcome = "error";
635
+ throw error;
636
+ }
602
637
  }
603
638
  const pendingUnauthed = funnel.link === "skipped" && !noLink;
604
639
  const pendingServices = extraServices && linked;
@@ -640,16 +675,14 @@ const runInit = async (props) => {
640
675
  outcome = pending && !pendingUnauthed && noLink ? "success" : pending ? "pending" : "success";
641
676
  if (pendingUnauthed) outcome = "pending";
642
677
  if (noLink && !pendingUnauthed && !pendingServices && !pendingExisting) outcome = "success";
643
- if (mcpState.error !== void 0) outcome = "error";
678
+ const deferredError = toolingFailures[0]?.error ?? mcpState.error;
679
+ if (deferredError !== void 0) outcome = "error";
644
680
  printInitDone(formatInitDone({
645
681
  heading: headingForKind(outcome),
646
682
  rows: [
647
683
  {
648
684
  label: "Agents",
649
- value: agentsRowValue({
650
- tooling: reportedTooling(),
651
- installed: funnel.agentsInstalled
652
- })
685
+ value: agentsRow()
653
686
  },
654
687
  {
655
688
  label: "Project",
@@ -660,10 +693,10 @@ const runInit = async (props) => {
660
693
  value: configRowValue(funnel.config, existingFilename)
661
694
  }
662
695
  ],
663
- next: joinNext(mcpFailedNext(), next)
696
+ next: joinNext(joinNext(toolingFailedNextLines(), mcpFailedNext()), next)
664
697
  }));
665
698
  printed = true;
666
- if (mcpState.error !== void 0) throw mcpState.error;
699
+ if (deferredError !== void 0) throw deferredError;
667
700
  takeCommandSuccessExtras();
668
701
  recordCommandSuccessExtras({
669
702
  init_kind: detection.emptyDirectory ? "empty-skip" : "existing",
@@ -682,6 +715,13 @@ const runInit = async (props) => {
682
715
  throw error;
683
716
  }
684
717
  outcome = "error";
718
+ recordInitExit(funnel, step, error);
719
+ const deferred = deferredFailureNext();
720
+ if (!printed && deferred.length > 0) printInitDone(formatInitDone({
721
+ heading: headingForKind("error"),
722
+ rows: [],
723
+ next: deferred
724
+ }));
685
725
  throw error;
686
726
  } finally {
687
727
  finishInitFunnel(funnel, outcome, analytics);
@@ -702,32 +742,46 @@ const joinNext = (first, second) => first.length === 0 || second.length === 0 ?
702
742
  "",
703
743
  ...second
704
744
  ];
705
- const withoutMcp = (tooling) => {
706
- if (tooling.setup === "mixed") return {
707
- ...tooling,
708
- mcpAgents: []
709
- };
710
- if (tooling.setup === "skills-mcp") return tooling.skillsAgents.length === 0 ? { setup: "skip" } : {
711
- ...tooling,
712
- mcpAgents: []
713
- };
714
- return tooling;
745
+ const withoutKinds = (tooling, kinds) => {
746
+ switch (tooling.setup) {
747
+ case "skip": return tooling;
748
+ case "plugin": return kinds.has("plugins") ? { setup: "skip" } : tooling;
749
+ case "skills": return kinds.has("skills") ? { setup: "skip" } : tooling;
750
+ case "skills-mcp": {
751
+ const skillsAgents = kinds.has("skills") ? [] : tooling.skillsAgents;
752
+ const mcpAgents = kinds.has("mcp") ? [] : tooling.mcpAgents;
753
+ return skillsAgents.length === 0 && mcpAgents.length === 0 ? { setup: "skip" } : {
754
+ ...tooling,
755
+ skillsAgents,
756
+ mcpAgents
757
+ };
758
+ }
759
+ case "mixed": {
760
+ const skillsAgents = kinds.has("skills") ? [] : tooling.skillsAgents;
761
+ const mcpAgents = kinds.has("mcp") ? [] : tooling.mcpAgents;
762
+ if (!kinds.has("plugins")) return {
763
+ ...tooling,
764
+ skillsAgents,
765
+ mcpAgents
766
+ };
767
+ return skillsAgents.length === 0 && mcpAgents.length === 0 ? { setup: "skip" } : {
768
+ setup: "skills-mcp",
769
+ skillsAgents,
770
+ mcpAgents
771
+ };
772
+ }
773
+ default: return tooling;
774
+ }
715
775
  };
776
+ const withoutMcp = (tooling) => withoutKinds(tooling, /* @__PURE__ */ new Set(["mcp"]));
716
777
  /** The Neon plugin bundles the skills. */
717
778
  const installsSkills = (tooling) => tooling.setup === "skills-mcp" ? tooling.skillsAgents.length > 0 : tooling.setup !== "skip";
718
- const agentsFromTooling = (tooling) => {
719
- switch (tooling.setup) {
720
- case "skip": return [];
721
- case "plugin": return [...tooling.agents];
722
- case "skills": return [...tooling.agents];
723
- case "skills-mcp": return uniqueAgents([...tooling.skillsAgents, ...tooling.mcpAgents]);
724
- case "mixed": return uniqueAgents([
725
- ...tooling.pluginAgents,
726
- ...tooling.skillsAgents,
727
- ...tooling.mcpAgents
728
- ]);
729
- default: return tooling;
779
+ const agentsForStep = (tooling, kind) => {
780
+ switch (kind) {
781
+ case "plugins": return tooling.setup === "plugin" ? [...tooling.agents] : tooling.setup === "mixed" ? [...tooling.pluginAgents] : [];
782
+ case "skills": return tooling.setup === "skills" ? [...tooling.agents] : tooling.setup === "skills-mcp" || tooling.setup === "mixed" ? [...tooling.skillsAgents] : [];
783
+ case "mcp": return tooling.setup === "skills-mcp" || tooling.setup === "mixed" ? [...tooling.mcpAgents] : [];
784
+ default: return kind;
730
785
  }
731
786
  };
732
- //#endregion
733
787
  export { runInit };
@@ -1,5 +1,5 @@
1
1
  import chalk from "chalk";
2
- //#region src/init/template_title.ts
2
+ // src/init/template_title.ts
3
3
  const SKIP_TEMPLATE_VALUE = "skip";
4
4
  /**
5
5
  * The picker label for a template: the title first, then the Neon services it
@@ -11,5 +11,4 @@ const formatTemplateTitle = (template) => {
11
11
  if (!template.services || template.services.length === 0) return template.title;
12
12
  return `${template.title} ${chalk.dim.italic(template.services.join(" · "))}`;
13
13
  };
14
- //#endregion
15
14
  export { SKIP_TEMPLATE_VALUE, formatTemplateTitle };
@@ -5,21 +5,21 @@ import { MCP_OAUTH_FALLBACK, PROGRESS } from "./copy.js";
5
5
  import { CannotMintApiKeyError } from "../mcp/mint.js";
6
6
  import { detectAgent } from "./detect_host.js";
7
7
  import { AgentSelectionSkipped, canPickAgentsInteractively } from "../utils/agent_picker.js";
8
- import { a as mcpInstallError, s as reportMcpInstall } from "../_chunks/mcp-Bo-7TKc7.js";
9
- import { l as reportPluginsInstall, o as installPlugins, s as pluginsInstallError } from "../_chunks/plugins-DqD7BDO1.js";
10
- import { c as skillsInstallError, o as installSkills, s as reportSkillsInstall } from "../_chunks/skills-BP6pIm7O.js";
8
+ import { a as mcpInstallError, s as reportMcpInstall } from "../_chunks/mcp-BznTRK3w.js";
9
+ import { l as reportPluginsInstall, o as installPlugins, s as pluginsInstallError } from "../_chunks/plugins-CKOcBuuP.js";
10
+ import { c as skillsInstallError, o as installSkills, s as reportSkillsInstall } from "../_chunks/skills-DKgafm65.js";
11
11
  import { runAuthenticatedMcp } from "./auth.js";
12
12
  import { raceSigint } from "./cancelled.js";
13
13
  import { pickAgentSetupInteractively } from "./wizard.js";
14
14
  import { detectProjectAgents } from "add-mcp";
15
- //#region src/init/tooling.ts
15
+ // src/init/tooling.ts
16
16
  const defaultProjectAgents = (cwd) => detectProjectAgents(cwd);
17
17
  const TOOLING_STEP_LABELS = {
18
18
  plugins: PROGRESS.plugins,
19
19
  skills: PROGRESS.skills,
20
20
  mcp: PROGRESS.mcp
21
21
  };
22
- /** Reconstructs a display-only, `neon <command> <flags>` style string for a step. Never executed — only ever logged. */
22
+ /** The `<command> <flags>` a user can run to repeat this step on its own. Never executed here. */
23
23
  const toolingStepCommandText = (step) => {
24
24
  const flags = [];
25
25
  switch (step.kind) {
@@ -184,5 +184,4 @@ const runAgentTooling = async (options) => {
184
184
  agentSetup
185
185
  }));
186
186
  };
187
- //#endregion
188
- export { runAgentTooling, runToolingSteps };
187
+ export { runAgentTooling, runToolingSteps, toolingStepCommandText };
@@ -9,7 +9,7 @@ import { NEON_SKILL_CATALOG, listSkillIds } from "../skills/catalog.js";
9
9
  import { InitCancelled, restoreCursorVisibilityOnAbort } from "./cancelled.js";
10
10
  import chalk from "chalk";
11
11
  import prompts from "prompts";
12
- //#region src/init/wizard.ts
12
+ // src/init/wizard.ts
13
13
  const restoreCursorOnAbort = (state) => {
14
14
  restoreCursorVisibilityOnAbort(state);
15
15
  };
@@ -261,5 +261,4 @@ const pickInitLinkInteractively = async () => {
261
261
  return value === true;
262
262
  };
263
263
  const initAgentIds = () => listMcpAgentIds();
264
- //#endregion
265
264
  export { initAgentIds, pickAgentSetupInteractively, pickInitAgentsInteractively, pickInitConfigInteractively, pickInitLinkInteractively, pickInitMcpAuthInteractively, pickInitMcpConfigLocationInteractively, pickInitModeInteractively, pickInitPackageManagerInteractively, pickInitProjectSetupInteractively, pickInitServicesInteractively, pickInitSkillsInteractively };
package/dist/keyring.js CHANGED
@@ -1,5 +1,5 @@
1
1
  import { createRequire } from "node:module";
2
- //#region src/keyring.ts
2
+ // src/keyring.ts
3
3
  /** Windows Credential Manager stores at most 2560 bytes per item: 1280 UTF-16 code units. */
4
4
  const keyringPasswordLimit = (platform) => platform === "win32" ? 1280 : void 0;
5
5
  const isPackaged = () => process.pkg !== void 0;
@@ -42,5 +42,4 @@ const tryLoadKeyring = () => {
42
42
  return null;
43
43
  }
44
44
  };
45
- //#endregion
46
45
  export { keyringPasswordLimit, tryLoadKeyring };
package/dist/log.js CHANGED
@@ -1,6 +1,6 @@
1
1
  import { isDebug } from "./env.js";
2
2
  import { format } from "node:util";
3
- //#region src/log.ts
3
+ // src/log.ts
4
4
  const log = {
5
5
  debug: (...args) => {
6
6
  if (isDebug()) process.stderr.write(`DEBUG: ${format(...args)}\n`);
@@ -15,5 +15,4 @@ const log = {
15
15
  process.stderr.write(`ERROR: ${format(...args)}\n`);
16
16
  }
17
17
  };
18
- //#endregion
19
18
  export { log };
@@ -1,5 +1,5 @@
1
1
  import { agents, detectGlobalAgents, getAgentTypes } from "add-mcp";
2
- //#region src/mcp/agents.ts
2
+ // src/mcp/agents.ts
3
3
  const AGENT_ALIASES = {
4
4
  cursor: "cursor",
5
5
  copilot: "vscode",
@@ -60,5 +60,4 @@ function uniqueAgentIds(ids) {
60
60
  }
61
61
  return out;
62
62
  }
63
- //#endregion
64
63
  export { agentSupportsHttpMcp, agentSupportsProjectMcp, detectInstalledAgents, getAgentDisplayName, listMcpAgentIds, resolveAddMcpAgentId, tryResolveAddMcpAgentId, uniqueAgentIds };
@@ -2,7 +2,7 @@ import { chmodSync, existsSync, readFileSync, writeFileSync } from "node:fs";
2
2
  import { basename, dirname, join } from "node:path";
3
3
  import { agents, upsertServer } from "add-mcp";
4
4
  import { execFileSync } from "node:child_process";
5
- //#region src/mcp/install.ts
5
+ // src/mcp/install.ts
6
6
  const NEON_MCP_URL = "https://mcp.neon.tech/mcp";
7
7
  const NEON_MCP_NAME = "Neon";
8
8
  const NEON_MCP_CATEGORIES = [
@@ -212,5 +212,4 @@ function installNeonMcpServer(options) {
212
212
  error: redactSecrets(result.error ?? "Failed to write Neon MCP server config")
213
213
  };
214
214
  }
215
- //#endregion
216
215
  export { NEON_MCP_CATEGORIES, NEON_MCP_NAME, NEON_MCP_URL, existingNeonApiKey, installNeonMcpServer, isMcpCategory, isNeonMcpUrl, mcpUnsupportedReason, neonMcpUrl, parseMcpCategories, trackedProjectMcpConfig };
package/dist/mcp/mint.js CHANGED
@@ -2,8 +2,8 @@ import { log } from "../log.js";
2
2
  import { isNeonApiError } from "../api.js";
3
3
  import { getCliName } from "../utils/cli_name.js";
4
4
  import { mintedKeyName } from "../profile_keys.js";
5
- import { s as orgIdForProject } from "../_chunks/api_keys-CNnnugbQ.js";
6
- //#region src/mcp/mint.ts
5
+ import { s as orgIdForProject } from "../_chunks/api_keys-6Xnxl7a8.js";
6
+ // src/mcp/mint.ts
7
7
  var CannotMintApiKeyError = class extends Error {
8
8
  constructor() {
9
9
  super("This CLI credential cannot mint API keys. Organization and project-scoped keys cannot create other keys. Sign in with `neon login` or pass a personal API key.");
@@ -71,5 +71,4 @@ async function mintMcpApiKey(options) {
71
71
  async function withdrawMintedKey(apiClient, key) {
72
72
  return withdraw(apiClient, key.id, key.orgId);
73
73
  }
74
- //#endregion
75
74
  export { CannotMintApiKeyError, mintMcpApiKey, mintedKeyRevokeCommand, withdrawMintedKey };
package/dist/mcp/plan.js CHANGED
@@ -4,7 +4,7 @@ import { collectYesAgents, noDetectedAgentsMessage } from "../init/plan.js";
4
4
  import { detectAgent } from "../init/detect_host.js";
5
5
  import { agentChoicesFrom, pickAgentsInteractively, resolveAgentSelection } from "../utils/agent_picker.js";
6
6
  import { pickMcpAuth, pickMcpProjectPin, pickMcpScope } from "./wizard.js";
7
- //#region src/mcp/plan.ts
7
+ // src/mcp/plan.ts
8
8
  async function resolveMcpPlan(options) {
9
9
  const prompt = options.interactive && !options.yes;
10
10
  const scope = options.project ? "project" : prompt ? await (options.pickScope ?? pickMcpScope)() : "global";
@@ -52,5 +52,4 @@ async function resolveMcpPlan(options) {
52
52
  categories: options.categories
53
53
  };
54
54
  }
55
- //#endregion
56
55
  export { resolveMcpPlan };
@@ -1,7 +1,7 @@
1
1
  import { detectInstalledAgents, listMcpAgentIds, resolveAddMcpAgentId, uniqueAgentIds } from "./agents.js";
2
2
  import { mcpUnsupportedReason } from "./install.js";
3
3
  import { detectProjectAgents } from "add-mcp";
4
- //#region src/mcp/targets.ts
4
+ // src/mcp/targets.ts
5
5
  function mcpInstallableAgents(scope) {
6
6
  return listMcpAgentIds().filter((id) => mcpUnsupportedReason(id, scope) === void 0);
7
7
  }
@@ -30,5 +30,4 @@ function resolveInstallTargets(options) {
30
30
  skipped
31
31
  };
32
32
  }
33
- //#endregion
34
33
  export { detectMcpAgents, mcpInstallableAgents, resolveInstallTargets };
@@ -1,6 +1,6 @@
1
1
  import { canPickAgentsInteractively } from "../utils/agent_picker.js";
2
2
  import prompts from "prompts";
3
- //#region src/mcp/wizard.ts
3
+ // src/mcp/wizard.ts
4
4
  const restoreCursorOnAbort = (state) => {
5
5
  if (state.aborted) {
6
6
  process.stdout.write("\x1B[?25h");
@@ -61,5 +61,4 @@ const pickMcpProjectPin = async (linkedProjectId, willMintKey = false) => {
61
61
  });
62
62
  return pin === true;
63
63
  };
64
- //#endregion
65
64
  export { pickMcpAuth, pickMcpProjectPin, pickMcpScope };
@@ -1,4 +1,4 @@
1
- //#region src/neon_services.ts
1
+ // src/neon_services.ts
2
2
  /**
3
3
  * Every Neon service a `--service` flag can name, spelled the way a user types it — one
4
4
  * vocabulary for the whole CLI.
@@ -114,5 +114,4 @@ const servicesOption = (params) => ({
114
114
  * element type when the flag was actually parsed as an array.
115
115
  */
116
116
  const servicesFlagValue = (value) => Array.isArray(value) ? value.map(String) : void 0;
117
- //#endregion
118
117
  export { NEON_SERVICES, NEON_SERVICE_LABELS, deprecatedServiceMessage, parseServices, servicesFlagValue, servicesOption };
@@ -1,5 +1,5 @@
1
1
  import { getCliName } from "./utils/cli_name.js";
2
- //#region src/node_version.ts
2
+ // src/node_version.ts
3
3
  /** Matches `engines.node` in package.json; npm only warns when it isn't met. */
4
4
  const MIN_NODE_VERSION = [
5
5
  20,
@@ -21,5 +21,4 @@ if (message) {
21
21
  process.stderr.write(`${message}\n`);
22
22
  process.exit(1);
23
23
  }
24
- //#endregion
25
24
  export { MIN_NODE_VERSION, unsupportedNodeMessage };
package/dist/notices.js CHANGED
@@ -2,7 +2,7 @@ import { log } from "./log.js";
2
2
  import { writeJsonFile } from "./utils/json_file.js";
3
3
  import { readFileSync } from "node:fs";
4
4
  import { join } from "node:path";
5
- //#region src/notices.ts
5
+ // src/notices.ts
6
6
  /**
7
7
  * When each terminal notice was last shown, so a notice repeats on its own interval rather
8
8
  * than on every command. Kept apart from the update cache: that cache is tied to one install
@@ -43,5 +43,4 @@ const showNotice = ({ configDir, id, intervalMs, message, now = Date.now() }) =>
43
43
  [id]: now
44
44
  }, "CLI notice log");
45
45
  };
46
- //#endregion
47
46
  export { isNoticeDue, parseNoticeLog, showNotice };
@@ -1,4 +1,4 @@
1
- //#region src/parameters.gen.ts
1
+ // src/parameters.gen.ts
2
2
  const projectCreateRequest = {
3
3
  "project.settings.quota.active_time_seconds": {
4
4
  type: "number",
@@ -496,5 +496,4 @@ const roleCreateRequest = {
496
496
  demandOption: false
497
497
  }
498
498
  };
499
- //#endregion
500
499
  export { branchCreateRequest, branchCreateRequestEndpointOptions, branchUpdateRequest, databaseCreateRequest, endpointCreateRequest, endpointUpdateRequest, projectCreateRequest, projectUpdateRequest, roleCreateRequest };
package/dist/pkg.js CHANGED
@@ -1,7 +1,7 @@
1
1
  import { readFileSync } from "node:fs";
2
2
  import { dirname, join } from "node:path";
3
3
  import { fileURLToPath } from "node:url";
4
- //#region src/pkg.ts
4
+ // src/pkg.ts
5
5
  /**
6
6
  * Load the CLI's package.json for version metadata. In the built CLI it sits right next to
7
7
  * this module (the build copies it into `dist`); when running from source (tests, `tsx`) it
@@ -19,5 +19,4 @@ const loadPkg = () => {
19
19
  }
20
20
  };
21
21
  var pkg_default = loadPkg();
22
- //#endregion
23
22
  export { pkg_default as default };