run402 4.95.0 → 4.97.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 (306) hide show
  1. package/README.md +5 -5
  2. package/cli.mjs +2 -28
  3. package/core-dist/keystore.js +1 -1
  4. package/git-remote-run402.mjs +6 -6
  5. package/lib/buzz.mjs +1 -1
  6. package/lib/cold-start.mjs +2 -2
  7. package/lib/command-manifest.mjs +6 -47
  8. package/lib/credentials.mjs +5 -5
  9. package/lib/daemon-path.mjs +3 -3
  10. package/lib/deploy-v2.mjs +44 -44
  11. package/lib/doctor.mjs +45 -54
  12. package/lib/errors.mjs +1 -1
  13. package/lib/events.mjs +1 -1
  14. package/lib/grants.mjs +148 -46
  15. package/lib/init.mjs +29 -29
  16. package/lib/logs.mjs +1 -1
  17. package/lib/next-actions.mjs +1 -1
  18. package/lib/org-context.mjs +9 -9
  19. package/lib/orgs.mjs +19 -19
  20. package/lib/path-lookup.mjs +7 -10
  21. package/lib/path-lookup.test.mjs +19 -21
  22. package/lib/projects.mjs +1 -1
  23. package/lib/remote-helper-session.mjs +93 -93
  24. package/lib/repos.mjs +174 -175
  25. package/lib/rooms-context.mjs +7 -7
  26. package/lib/sites.mjs +5 -5
  27. package/lib/up.mjs +14 -14
  28. package/lib/{gitvault-capabilities.mjs → vault-capabilities.mjs} +10 -14
  29. package/lib/{gitvault-daemon-run.mjs → vault-daemon-run.mjs} +2 -2
  30. package/lib/{gitvault-daemon.mjs → vault-daemon.mjs} +23 -23
  31. package/lib/{gitvault-scaffold.mjs → vault-scaffold.mjs} +12 -12
  32. package/lib/{gitvault-target.mjs → vault-target.mjs} +22 -17
  33. package/package.json +2 -2
  34. package/sdk/core-dist/keystore.js +1 -1
  35. package/sdk/dist/errors.d.ts +5 -5
  36. package/sdk/dist/errors.d.ts.map +1 -1
  37. package/sdk/dist/errors.js +2 -2
  38. package/sdk/dist/errors.js.map +1 -1
  39. package/sdk/dist/grant-key-credentials.d.ts +38 -0
  40. package/sdk/dist/grant-key-credentials.d.ts.map +1 -0
  41. package/sdk/dist/grant-key-credentials.js +42 -0
  42. package/sdk/dist/grant-key-credentials.js.map +1 -0
  43. package/sdk/dist/index.d.ts +16 -23
  44. package/sdk/dist/index.d.ts.map +1 -1
  45. package/sdk/dist/index.js +14 -21
  46. package/sdk/dist/index.js.map +1 -1
  47. package/sdk/dist/namespaces/billing.d.ts +1 -1
  48. package/sdk/dist/namespaces/billing.js +1 -1
  49. package/sdk/dist/namespaces/buzz.js +1 -1
  50. package/sdk/dist/namespaces/buzz.js.map +1 -1
  51. package/sdk/dist/namespaces/credentials.d.ts +4 -4
  52. package/sdk/dist/namespaces/credentials.js +4 -4
  53. package/sdk/dist/namespaces/deploy.d.ts +5 -5
  54. package/sdk/dist/namespaces/deploy.d.ts.map +1 -1
  55. package/sdk/dist/namespaces/deploy.js +25 -25
  56. package/sdk/dist/namespaces/deploy.js.map +1 -1
  57. package/sdk/dist/namespaces/deploy.types.d.ts +17 -17
  58. package/sdk/dist/namespaces/deploy.types.d.ts.map +1 -1
  59. package/sdk/dist/namespaces/domains.d.ts +1 -1
  60. package/sdk/dist/namespaces/domains.js +1 -1
  61. package/sdk/dist/namespaces/errors.d.ts +1 -1
  62. package/sdk/dist/namespaces/errors.js +2 -2
  63. package/sdk/dist/namespaces/escalations.d.ts +2 -2
  64. package/sdk/dist/namespaces/escalations.js +2 -2
  65. package/sdk/dist/namespaces/escalations.types.d.ts +3 -3
  66. package/sdk/dist/namespaces/escalations.types.d.ts.map +1 -1
  67. package/sdk/dist/namespaces/events.d.ts +1 -1
  68. package/sdk/dist/namespaces/events.js +1 -1
  69. package/sdk/dist/namespaces/functions.js +1 -1
  70. package/sdk/dist/namespaces/functions.js.map +1 -1
  71. package/sdk/dist/namespaces/grants.d.ts +43 -9
  72. package/sdk/dist/namespaces/grants.d.ts.map +1 -1
  73. package/sdk/dist/namespaces/grants.js +99 -10
  74. package/sdk/dist/namespaces/grants.js.map +1 -1
  75. package/sdk/dist/namespaces/grants.types.d.ts +120 -15
  76. package/sdk/dist/namespaces/grants.types.d.ts.map +1 -1
  77. package/sdk/dist/namespaces/grants.types.js +12 -3
  78. package/sdk/dist/namespaces/grants.types.js.map +1 -1
  79. package/sdk/dist/namespaces/identity-links.types.d.ts +2 -2
  80. package/sdk/dist/namespaces/identity-links.types.d.ts.map +1 -1
  81. package/sdk/dist/namespaces/org.d.ts +3 -3
  82. package/sdk/dist/namespaces/org.js +3 -3
  83. package/sdk/dist/namespaces/org.types.d.ts +3 -3
  84. package/sdk/dist/namespaces/pay.js +1 -1
  85. package/sdk/dist/namespaces/projects.d.ts +1 -1
  86. package/sdk/dist/namespaces/projects.js +1 -1
  87. package/sdk/dist/namespaces/{gitvault.d.ts → repos.d.ts} +436 -449
  88. package/sdk/dist/namespaces/repos.d.ts.map +1 -0
  89. package/sdk/dist/namespaces/{gitvault.js → repos.js} +452 -460
  90. package/sdk/dist/namespaces/repos.js.map +1 -0
  91. package/sdk/dist/namespaces/rooms.d.ts +3 -3
  92. package/sdk/dist/namespaces/rooms.js +5 -5
  93. package/sdk/dist/namespaces/rooms.js.map +1 -1
  94. package/sdk/dist/namespaces/session.d.ts +2 -2
  95. package/sdk/dist/namespaces/session.d.ts.map +1 -1
  96. package/sdk/dist/namespaces/session.js +2 -2
  97. package/sdk/dist/namespaces/session.js.map +1 -1
  98. package/sdk/dist/namespaces/tier.d.ts +3 -3
  99. package/sdk/dist/namespaces/tier.d.ts.map +1 -1
  100. package/sdk/dist/namespaces/{gitvault.crypto.d.ts → vault.crypto.d.ts} +141 -141
  101. package/sdk/dist/namespaces/vault.crypto.d.ts.map +1 -0
  102. package/sdk/dist/namespaces/{gitvault.crypto.js → vault.crypto.js} +173 -173
  103. package/sdk/dist/namespaces/vault.crypto.js.map +1 -0
  104. package/sdk/dist/namespaces/{gitvault.types.d.ts → vault.types.d.ts} +136 -136
  105. package/sdk/dist/namespaces/vault.types.d.ts.map +1 -0
  106. package/sdk/dist/namespaces/{gitvault.types.js → vault.types.js} +4 -4
  107. package/sdk/dist/namespaces/vault.types.js.map +1 -0
  108. package/sdk/dist/node/bearer-redeem-key.d.ts +1 -1
  109. package/sdk/dist/node/bearer-redeem-key.js +5 -5
  110. package/sdk/dist/node/bearer-redeem-key.js.map +1 -1
  111. package/sdk/dist/node/credentials.d.ts +9 -9
  112. package/sdk/dist/node/credentials.d.ts.map +1 -1
  113. package/sdk/dist/node/credentials.js +12 -12
  114. package/sdk/dist/node/credentials.js.map +1 -1
  115. package/sdk/dist/node/http-dispatcher.js +5 -5
  116. package/sdk/dist/node/http-dispatcher.js.map +1 -1
  117. package/sdk/dist/node/index.d.ts +34 -34
  118. package/sdk/dist/node/index.d.ts.map +1 -1
  119. package/sdk/dist/node/index.js +41 -41
  120. package/sdk/dist/node/index.js.map +1 -1
  121. package/sdk/dist/node/{gitvault-address.d.ts → vault-address.d.ts} +42 -42
  122. package/sdk/dist/node/vault-address.d.ts.map +1 -0
  123. package/sdk/dist/node/{gitvault-address.js → vault-address.js} +43 -43
  124. package/sdk/dist/node/vault-address.js.map +1 -0
  125. package/sdk/dist/node/{gitvault-apply.d.ts → vault-apply.d.ts} +27 -27
  126. package/sdk/dist/node/vault-apply.d.ts.map +1 -0
  127. package/sdk/dist/node/{gitvault-apply.js → vault-apply.js} +38 -38
  128. package/sdk/dist/node/vault-apply.js.map +1 -0
  129. package/sdk/dist/node/vault-byo-config.d.ts +29 -0
  130. package/sdk/dist/node/vault-byo-config.d.ts.map +1 -0
  131. package/sdk/dist/node/{gitvault-byo-config.js → vault-byo-config.js} +18 -18
  132. package/sdk/dist/node/vault-byo-config.js.map +1 -0
  133. package/sdk/dist/node/vault-byo-probe.d.ts +20 -0
  134. package/sdk/dist/node/vault-byo-probe.d.ts.map +1 -0
  135. package/sdk/dist/node/vault-byo-probe.js +57 -0
  136. package/sdk/dist/node/vault-byo-probe.js.map +1 -0
  137. package/sdk/dist/node/{gitvault-creation-journal.d.ts → vault-creation-journal.d.ts} +69 -69
  138. package/sdk/dist/node/vault-creation-journal.d.ts.map +1 -0
  139. package/sdk/dist/node/{gitvault-creation-journal.js → vault-creation-journal.js} +54 -54
  140. package/sdk/dist/node/vault-creation-journal.js.map +1 -0
  141. package/sdk/dist/node/{gitvault-degraded-read.d.ts → vault-degraded-read.d.ts} +34 -34
  142. package/sdk/dist/node/vault-degraded-read.d.ts.map +1 -0
  143. package/sdk/dist/node/{gitvault-degraded-read.js → vault-degraded-read.js} +24 -24
  144. package/sdk/dist/node/vault-degraded-read.js.map +1 -0
  145. package/sdk/dist/node/{gitvault-deploy.d.ts → vault-deploy.d.ts} +67 -67
  146. package/sdk/dist/node/vault-deploy.d.ts.map +1 -0
  147. package/sdk/dist/node/{gitvault-deploy.js → vault-deploy.js} +27 -27
  148. package/sdk/dist/node/vault-deploy.js.map +1 -0
  149. package/sdk/dist/node/{gitvault-edge-fetch.d.ts → vault-edge-fetch.d.ts} +9 -9
  150. package/sdk/dist/node/vault-edge-fetch.d.ts.map +1 -0
  151. package/sdk/dist/node/{gitvault-edge-fetch.js → vault-edge-fetch.js} +11 -11
  152. package/sdk/dist/node/vault-edge-fetch.js.map +1 -0
  153. package/sdk/dist/node/{gitvault-handoff.d.ts → vault-handoff.d.ts} +9 -9
  154. package/sdk/dist/node/vault-handoff.d.ts.map +1 -0
  155. package/sdk/dist/node/{gitvault-handoff.js → vault-handoff.js} +24 -24
  156. package/sdk/dist/node/vault-handoff.js.map +1 -0
  157. package/sdk/dist/node/{gitvault-keystore.d.ts → vault-keystore.d.ts} +87 -77
  158. package/sdk/dist/node/vault-keystore.d.ts.map +1 -0
  159. package/sdk/dist/node/{gitvault-keystore.js → vault-keystore.js} +105 -68
  160. package/sdk/dist/node/vault-keystore.js.map +1 -0
  161. package/sdk/dist/node/{gitvault-member-bundle.d.ts → vault-member-bundle.d.ts} +17 -17
  162. package/sdk/dist/node/vault-member-bundle.d.ts.map +1 -0
  163. package/sdk/dist/node/{gitvault-member-bundle.js → vault-member-bundle.js} +11 -11
  164. package/sdk/dist/node/vault-member-bundle.js.map +1 -0
  165. package/sdk/dist/node/{gitvault-mirror-backend.d.ts → vault-mirror-backend.d.ts} +26 -26
  166. package/sdk/dist/node/vault-mirror-backend.d.ts.map +1 -0
  167. package/sdk/dist/node/{gitvault-mirror-backend.js → vault-mirror-backend.js} +25 -25
  168. package/sdk/dist/node/vault-mirror-backend.js.map +1 -0
  169. package/sdk/dist/node/{gitvault-mirror-config.d.ts → vault-mirror-config.d.ts} +23 -23
  170. package/sdk/dist/node/vault-mirror-config.d.ts.map +1 -0
  171. package/sdk/dist/node/{gitvault-mirror-config.js → vault-mirror-config.js} +16 -16
  172. package/sdk/dist/node/vault-mirror-config.js.map +1 -0
  173. package/sdk/dist/node/{gitvault-mirror.d.ts → vault-mirror.d.ts} +36 -36
  174. package/sdk/dist/node/vault-mirror.d.ts.map +1 -0
  175. package/sdk/dist/node/{gitvault-mirror.js → vault-mirror.js} +75 -75
  176. package/sdk/dist/node/vault-mirror.js.map +1 -0
  177. package/sdk/dist/node/{gitvault-native-crypto.d.ts → vault-native-crypto.d.ts} +10 -10
  178. package/sdk/dist/node/vault-native-crypto.d.ts.map +1 -0
  179. package/sdk/dist/node/{gitvault-native-crypto.js → vault-native-crypto.js} +16 -16
  180. package/sdk/dist/node/vault-native-crypto.js.map +1 -0
  181. package/sdk/dist/node/{gitvault-open-or-create.d.ts → vault-open-or-create.d.ts} +16 -16
  182. package/sdk/dist/node/vault-open-or-create.d.ts.map +1 -0
  183. package/sdk/dist/node/{gitvault-open-or-create.js → vault-open-or-create.js} +10 -10
  184. package/sdk/dist/node/vault-open-or-create.js.map +1 -0
  185. package/sdk/dist/node/{gitvault-prewarm.d.ts → vault-prewarm.d.ts} +13 -13
  186. package/sdk/dist/node/vault-prewarm.d.ts.map +1 -0
  187. package/sdk/dist/node/{gitvault-prewarm.js → vault-prewarm.js} +25 -25
  188. package/sdk/dist/node/vault-prewarm.js.map +1 -0
  189. package/sdk/dist/node/{gitvault-profile-scan.d.ts → vault-profile-scan.d.ts} +3 -3
  190. package/sdk/dist/node/vault-profile-scan.d.ts.map +1 -0
  191. package/sdk/dist/node/{gitvault-profile-scan.js → vault-profile-scan.js} +12 -12
  192. package/sdk/dist/node/vault-profile-scan.js.map +1 -0
  193. package/sdk/dist/node/{gitvault-prune.d.ts → vault-prune.d.ts} +61 -61
  194. package/sdk/dist/node/vault-prune.d.ts.map +1 -0
  195. package/sdk/dist/node/{gitvault-prune.js → vault-prune.js} +34 -34
  196. package/sdk/dist/node/vault-prune.js.map +1 -0
  197. package/sdk/dist/node/{gitvault-publication.d.ts → vault-publication.d.ts} +399 -399
  198. package/sdk/dist/node/vault-publication.d.ts.map +1 -0
  199. package/sdk/dist/node/{gitvault-publication.js → vault-publication.js} +584 -584
  200. package/sdk/dist/node/vault-publication.js.map +1 -0
  201. package/sdk/dist/node/{gitvault-push-to-create.d.ts → vault-push-to-create.d.ts} +16 -16
  202. package/sdk/dist/node/vault-push-to-create.d.ts.map +1 -0
  203. package/sdk/dist/node/{gitvault-push-to-create.js → vault-push-to-create.js} +9 -9
  204. package/sdk/dist/node/vault-push-to-create.js.map +1 -0
  205. package/sdk/dist/node/{gitvault-recover.d.ts → vault-recover.d.ts} +50 -50
  206. package/sdk/dist/node/vault-recover.d.ts.map +1 -0
  207. package/sdk/dist/node/{gitvault-recover.js → vault-recover.js} +84 -84
  208. package/sdk/dist/node/vault-recover.js.map +1 -0
  209. package/sdk/dist/node/{gitvault-restore.d.ts → vault-restore.d.ts} +8 -8
  210. package/sdk/dist/node/vault-restore.d.ts.map +1 -0
  211. package/sdk/dist/node/{gitvault-restore.js → vault-restore.js} +11 -11
  212. package/sdk/dist/node/vault-restore.js.map +1 -0
  213. package/sdk/dist/node/{gitvault-snapshot.d.ts → vault-snapshot.d.ts} +48 -48
  214. package/sdk/dist/node/vault-snapshot.d.ts.map +1 -0
  215. package/sdk/dist/node/{gitvault-snapshot.js → vault-snapshot.js} +61 -61
  216. package/sdk/dist/node/vault-snapshot.js.map +1 -0
  217. package/sdk/dist/node/{gitvault-writer-state.d.ts → vault-writer-state.d.ts} +8 -8
  218. package/sdk/dist/node/vault-writer-state.d.ts.map +1 -0
  219. package/sdk/dist/node/{gitvault-writer-state.js → vault-writer-state.js} +15 -15
  220. package/sdk/dist/node/vault-writer-state.js.map +1 -0
  221. package/sdk/dist/node/workflow-output.js +4 -4
  222. package/sdk/dist/node/workflow-output.js.map +1 -1
  223. package/sdk/dist/project-auth-classification.d.ts +8 -8
  224. package/sdk/dist/project-auth-classification.d.ts.map +1 -1
  225. package/sdk/dist/project-auth-classification.js +7 -7
  226. package/sdk/dist/project-auth-classification.js.map +1 -1
  227. package/sdk/dist/scoped.d.ts +6 -14
  228. package/sdk/dist/scoped.d.ts.map +1 -1
  229. package/sdk/dist/scoped.js +10 -21
  230. package/sdk/dist/scoped.js.map +1 -1
  231. package/vault-surface.json +40 -0
  232. package/gitvault-surface.json +0 -89
  233. package/lib/delegates.mjs +0 -189
  234. package/lib/gitvault.mjs +0 -163
  235. package/lib/source-access.mjs +0 -70
  236. package/sdk/dist/delegate-credentials.d.ts +0 -37
  237. package/sdk/dist/delegate-credentials.d.ts.map +0 -1
  238. package/sdk/dist/delegate-credentials.js +0 -41
  239. package/sdk/dist/delegate-credentials.js.map +0 -1
  240. package/sdk/dist/namespaces/delegates.d.ts +0 -50
  241. package/sdk/dist/namespaces/delegates.d.ts.map +0 -1
  242. package/sdk/dist/namespaces/delegates.js +0 -99
  243. package/sdk/dist/namespaces/delegates.js.map +0 -1
  244. package/sdk/dist/namespaces/delegates.types.d.ts +0 -88
  245. package/sdk/dist/namespaces/delegates.types.d.ts.map +0 -1
  246. package/sdk/dist/namespaces/delegates.types.js +0 -10
  247. package/sdk/dist/namespaces/delegates.types.js.map +0 -1
  248. package/sdk/dist/namespaces/gitvault.crypto.d.ts.map +0 -1
  249. package/sdk/dist/namespaces/gitvault.crypto.js.map +0 -1
  250. package/sdk/dist/namespaces/gitvault.d.ts.map +0 -1
  251. package/sdk/dist/namespaces/gitvault.js.map +0 -1
  252. package/sdk/dist/namespaces/gitvault.types.d.ts.map +0 -1
  253. package/sdk/dist/namespaces/gitvault.types.js.map +0 -1
  254. package/sdk/dist/node/gitvault-address.d.ts.map +0 -1
  255. package/sdk/dist/node/gitvault-address.js.map +0 -1
  256. package/sdk/dist/node/gitvault-apply.d.ts.map +0 -1
  257. package/sdk/dist/node/gitvault-apply.js.map +0 -1
  258. package/sdk/dist/node/gitvault-byo-config.d.ts +0 -29
  259. package/sdk/dist/node/gitvault-byo-config.d.ts.map +0 -1
  260. package/sdk/dist/node/gitvault-byo-config.js.map +0 -1
  261. package/sdk/dist/node/gitvault-byo-probe.d.ts +0 -20
  262. package/sdk/dist/node/gitvault-byo-probe.d.ts.map +0 -1
  263. package/sdk/dist/node/gitvault-byo-probe.js +0 -57
  264. package/sdk/dist/node/gitvault-byo-probe.js.map +0 -1
  265. package/sdk/dist/node/gitvault-creation-journal.d.ts.map +0 -1
  266. package/sdk/dist/node/gitvault-creation-journal.js.map +0 -1
  267. package/sdk/dist/node/gitvault-degraded-read.d.ts.map +0 -1
  268. package/sdk/dist/node/gitvault-degraded-read.js.map +0 -1
  269. package/sdk/dist/node/gitvault-deploy.d.ts.map +0 -1
  270. package/sdk/dist/node/gitvault-deploy.js.map +0 -1
  271. package/sdk/dist/node/gitvault-edge-fetch.d.ts.map +0 -1
  272. package/sdk/dist/node/gitvault-edge-fetch.js.map +0 -1
  273. package/sdk/dist/node/gitvault-handoff.d.ts.map +0 -1
  274. package/sdk/dist/node/gitvault-handoff.js.map +0 -1
  275. package/sdk/dist/node/gitvault-keystore.d.ts.map +0 -1
  276. package/sdk/dist/node/gitvault-keystore.js.map +0 -1
  277. package/sdk/dist/node/gitvault-member-bundle.d.ts.map +0 -1
  278. package/sdk/dist/node/gitvault-member-bundle.js.map +0 -1
  279. package/sdk/dist/node/gitvault-mirror-backend.d.ts.map +0 -1
  280. package/sdk/dist/node/gitvault-mirror-backend.js.map +0 -1
  281. package/sdk/dist/node/gitvault-mirror-config.d.ts.map +0 -1
  282. package/sdk/dist/node/gitvault-mirror-config.js.map +0 -1
  283. package/sdk/dist/node/gitvault-mirror.d.ts.map +0 -1
  284. package/sdk/dist/node/gitvault-mirror.js.map +0 -1
  285. package/sdk/dist/node/gitvault-native-crypto.d.ts.map +0 -1
  286. package/sdk/dist/node/gitvault-native-crypto.js.map +0 -1
  287. package/sdk/dist/node/gitvault-open-or-create.d.ts.map +0 -1
  288. package/sdk/dist/node/gitvault-open-or-create.js.map +0 -1
  289. package/sdk/dist/node/gitvault-prewarm.d.ts.map +0 -1
  290. package/sdk/dist/node/gitvault-prewarm.js.map +0 -1
  291. package/sdk/dist/node/gitvault-profile-scan.d.ts.map +0 -1
  292. package/sdk/dist/node/gitvault-profile-scan.js.map +0 -1
  293. package/sdk/dist/node/gitvault-prune.d.ts.map +0 -1
  294. package/sdk/dist/node/gitvault-prune.js.map +0 -1
  295. package/sdk/dist/node/gitvault-publication.d.ts.map +0 -1
  296. package/sdk/dist/node/gitvault-publication.js.map +0 -1
  297. package/sdk/dist/node/gitvault-push-to-create.d.ts.map +0 -1
  298. package/sdk/dist/node/gitvault-push-to-create.js.map +0 -1
  299. package/sdk/dist/node/gitvault-recover.d.ts.map +0 -1
  300. package/sdk/dist/node/gitvault-recover.js.map +0 -1
  301. package/sdk/dist/node/gitvault-restore.d.ts.map +0 -1
  302. package/sdk/dist/node/gitvault-restore.js.map +0 -1
  303. package/sdk/dist/node/gitvault-snapshot.d.ts.map +0 -1
  304. package/sdk/dist/node/gitvault-snapshot.js.map +0 -1
  305. package/sdk/dist/node/gitvault-writer-state.d.ts.map +0 -1
  306. package/sdk/dist/node/gitvault-writer-state.js.map +0 -1
@@ -1,10 +1,8 @@
1
1
  /**
2
2
  * `path-lookup.mjs` — the tiny, dependency-free "is this executable on
3
- * PATH" check kygit-handoff design D8 needs twice (`run402 doctor` and
4
- * `repos view`, both naming `npm i -g @kychee/kygit` when a `kygit::`
5
- * remote has no `git-remote-kygit` helper installed). No shell, no `which`
6
- * subprocess — a plain directory scan mirrors what the OS loader itself
7
- * does to resolve an unqualified command name.
3
+ * PATH" check behind `repos resume` / `repos join`'s remote-helper next
4
+ * action. No shell, no `which` subprocess — a plain directory scan mirrors
5
+ * what the OS loader itself does to resolve an unqualified command name.
8
6
  */
9
7
  import {accessSync, constants, readFileSync } from "node:fs";
10
8
  import { delimiter, join } from "node:path";
@@ -26,8 +24,7 @@ export function isExecutableOnPath(name, env = process.env) {
26
24
  /**
27
25
  * After a restore into `dir`, the ONE thing that still stands between the
28
26
  * caller and its first `git push` is git finding the remote helper the
29
- * checkout's origin scheme names (`git-remote-kygit` for `kygit::`,
30
- * `git-remote-run402` for `run402::`). A resume or join run through
27
+ * checkout's `run402::` origin names (`git-remote-run402`). A resume or join run through
31
28
  * `npx` has the helper only inside the npx cache, so git cannot see it.
32
29
  * Returns a `next_actions` entry naming the fix, or null when the helper
33
30
  * is on PATH or the checkout's remote cannot be read (never throws).
@@ -42,11 +39,11 @@ export function remoteHelperNextAction(dir, env = process.env) {
42
39
  return null;
43
40
  }
44
41
  if (!url) return null;
45
- const helper = url.startsWith("kygit::") ? "git-remote-kygit" : url.startsWith("run402::") ? "git-remote-run402" : null;
42
+ const helper = url.startsWith("run402::") ? "git-remote-run402" : null;
46
43
  if (!helper || isExecutableOnPath(helper, env)) return null;
47
44
  return {
48
45
  type: "install_remote_helper",
49
- command: "npm i -g @kychee/kygit run402",
50
- why: `git push needs ${helper} on PATH and this session does not have it there (an npx run keeps it inside the npx cache); install both packages once and every git command in this checkout works`,
46
+ command: "npm i -g run402",
47
+ why: `git push needs ${helper} on PATH and this session does not have it there (an npx run keeps it inside the npx cache); install run402 once and every git command in this checkout works`,
51
48
  };
52
49
  }
@@ -1,8 +1,6 @@
1
1
  /**
2
- * `path-lookup.mjs` — the PATH-executable probe `doctor.mjs`/`repos.mjs`'s
3
- * `view()` both use to detect a `kygit::` remote with no `git-remote-kygit`
4
- * helper installed (kygit-handoff design D8, mirroring
5
- * `kygit/kygit.mjs`'s own `findRemoteHelper`).
2
+ * `path-lookup.mjs` — the PATH-executable probe behind `repos resume` /
3
+ * `repos join`'s remote-helper next action.
6
4
  */
7
5
  import { describe, it } from "node:test";
8
6
  import assert from "node:assert/strict";
@@ -15,10 +13,10 @@ describe("isExecutableOnPath", () => {
15
13
  it("finds an executable file on PATH", () => {
16
14
  const dir = mkdtempSync(join(tmpdir(), "path-lookup-"));
17
15
  try {
18
- const bin = join(dir, "git-remote-kygit");
16
+ const bin = join(dir, "git-remote-run402");
19
17
  writeFileSync(bin, "#!/bin/sh\n");
20
18
  chmodSync(bin, 0o755);
21
- assert.equal(isExecutableOnPath("git-remote-kygit", { PATH: dir }), true);
19
+ assert.equal(isExecutableOnPath("git-remote-run402", { PATH: dir }), true);
22
20
  } finally {
23
21
  rmSync(dir, { recursive: true, force: true });
24
22
  }
@@ -27,10 +25,10 @@ describe("isExecutableOnPath", () => {
27
25
  it("returns false when the name exists but is not executable", () => {
28
26
  const dir = mkdtempSync(join(tmpdir(), "path-lookup-"));
29
27
  try {
30
- const bin = join(dir, "git-remote-kygit");
28
+ const bin = join(dir, "git-remote-run402");
31
29
  writeFileSync(bin, "not executable");
32
30
  chmodSync(bin, 0o644);
33
- assert.equal(isExecutableOnPath("git-remote-kygit", { PATH: dir }), false);
31
+ assert.equal(isExecutableOnPath("git-remote-run402", { PATH: dir }), false);
34
32
  } finally {
35
33
  rmSync(dir, { recursive: true, force: true });
36
34
  }
@@ -39,7 +37,7 @@ describe("isExecutableOnPath", () => {
39
37
  it("returns false when the name is nowhere on PATH", () => {
40
38
  const dir = mkdtempSync(join(tmpdir(), "path-lookup-"));
41
39
  try {
42
- assert.equal(isExecutableOnPath("git-remote-kygit", { PATH: dir }), false);
40
+ assert.equal(isExecutableOnPath("git-remote-run402", { PATH: dir }), false);
43
41
  } finally {
44
42
  rmSync(dir, { recursive: true, force: true });
45
43
  }
@@ -49,10 +47,10 @@ describe("isExecutableOnPath", () => {
49
47
  const dirA = mkdtempSync(join(tmpdir(), "path-lookup-a-"));
50
48
  const dirB = mkdtempSync(join(tmpdir(), "path-lookup-b-"));
51
49
  try {
52
- const bin = join(dirB, "git-remote-kygit");
50
+ const bin = join(dirB, "git-remote-run402");
53
51
  writeFileSync(bin, "#!/bin/sh\n");
54
52
  chmodSync(bin, 0o755);
55
- assert.equal(isExecutableOnPath("git-remote-kygit", { PATH: `${dirA}:${dirB}` }), true);
53
+ assert.equal(isExecutableOnPath("git-remote-run402", { PATH: `${dirA}:${dirB}` }), true);
56
54
  } finally {
57
55
  rmSync(dirA, { recursive: true, force: true });
58
56
  rmSync(dirB, { recursive: true, force: true });
@@ -60,29 +58,29 @@ describe("isExecutableOnPath", () => {
60
58
  });
61
59
 
62
60
  it("returns false for an empty or missing PATH rather than throwing", () => {
63
- assert.equal(isExecutableOnPath("git-remote-kygit", {}), false);
64
- assert.equal(isExecutableOnPath("git-remote-kygit", { PATH: "" }), false);
61
+ assert.equal(isExecutableOnPath("git-remote-run402", {}), false);
62
+ assert.equal(isExecutableOnPath("git-remote-run402", { PATH: "" }), false);
65
63
  });
66
64
  });
67
65
 
68
66
  describe("remoteHelperNextAction", () => {
69
- it("names the missing helper for the checkout's remote scheme, and nothing when it is on PATH or the checkout is unreadable", () => {
67
+ it("names the missing helper for a run402:: checkout, and nothing when it is on PATH or the checkout is unreadable", () => {
70
68
  const dir = mkdtempSync(join(tmpdir(), "run402-remote-helper-"));
71
69
  try {
72
70
  mkdirSync(join(dir, ".git"));
73
- writeFileSync(join(dir, ".git", "config"), `[core]\n\trepositoryformatversion = 0\n[remote "origin"]\n\turl = kygit::org/name\n\tfetch = +refs/heads/*:refs/remotes/origin/*\n`);
71
+ writeFileSync(join(dir, ".git", "config"), `[core]\n\trepositoryformatversion = 0\n[remote "origin"]\n\turl = run402::org/name\n\tfetch = +refs/heads/*:refs/remotes/origin/*\n`);
74
72
  const emptyPath = { PATH: dir };
75
73
  const missing = remoteHelperNextAction(dir, emptyPath);
76
74
  assert.equal(missing?.type, "install_remote_helper");
77
- assert.match(missing.why, /git-remote-kygit/);
78
- assert.equal(missing.command, "npm i -g @kychee/kygit run402");
75
+ assert.match(missing.why, /git-remote-run402/);
76
+ assert.equal(missing.command, "npm i -g run402");
79
77
  // present on PATH → nothing to say
80
78
  const bin = join(dir, "bin"); mkdirSync(bin);
81
- writeFileSync(join(bin, "git-remote-kygit"), "#!/bin/sh\n"); chmodSync(join(bin, "git-remote-kygit"), 0o755);
79
+ writeFileSync(join(bin, "git-remote-run402"), "#!/bin/sh\n"); chmodSync(join(bin, "git-remote-run402"), 0o755);
82
80
  assert.equal(remoteHelperNextAction(dir, { PATH: bin }), null);
83
- // run402:: scheme names the other helper
84
- writeFileSync(join(dir, ".git", "config"), `[remote "origin"]\n\turl = run402::org/name\n`);
85
- assert.match(remoteHelperNextAction(dir, emptyPath).why, /git-remote-run402/);
81
+ // any other remote → nothing to say
82
+ writeFileSync(join(dir, ".git", "config"), `[remote "origin"]\n\turl = https://example.com/x.git\n`);
83
+ assert.equal(remoteHelperNextAction(dir, emptyPath), null);
86
84
  // no checkout → null, never a throw
87
85
  assert.equal(remoteHelperNextAction(join(dir, "nope"), emptyPath), null);
88
86
  } finally {
package/lib/projects.mjs CHANGED
@@ -164,7 +164,7 @@ Options:
164
164
 
165
165
  Notes:
166
166
  - Requires project.tenant_payments.read: org developer+ or a read-scoped
167
- project grant/delegate.
167
+ project grant or grant key.
168
168
  - Output is the gateway's redacted payment page. Raw X-PAYMENT headers,
169
169
  authorization hashes, and internal metadata are never returned.
170
170
  `,