putitoutthere 0.3.26 → 0.3.28

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 (402) hide show
  1. package/dist/action.d.ts +2 -6
  2. package/dist/action.d.ts.map +1 -1
  3. package/dist/action.js +17 -23
  4. package/dist/action.js.map +1 -1
  5. package/dist/advance-floating-major.d.ts +3 -15
  6. package/dist/advance-floating-major.d.ts.map +1 -1
  7. package/dist/advance-floating-major.js +3 -15
  8. package/dist/advance-floating-major.js.map +1 -1
  9. package/dist/advance-v0.d.ts +3 -11
  10. package/dist/advance-v0.d.ts.map +1 -1
  11. package/dist/advance-v0.js +3 -11
  12. package/dist/advance-v0.js.map +1 -1
  13. package/dist/build-requires-declares.d.ts.map +1 -1
  14. package/dist/build-requires-declares.js +3 -16
  15. package/dist/build-requires-declares.js.map +1 -1
  16. package/dist/cargo-dep-entries.d.ts +4 -12
  17. package/dist/cargo-dep-entries.d.ts.map +1 -1
  18. package/dist/cargo-dep-entries.js +4 -12
  19. package/dist/cargo-dep-entries.js.map +1 -1
  20. package/dist/cascade.d.ts +4 -22
  21. package/dist/cascade.d.ts.map +1 -1
  22. package/dist/cascade.js +4 -22
  23. package/dist/cascade.js.map +1 -1
  24. package/dist/check-crate-size.d.ts +4 -14
  25. package/dist/check-crate-size.d.ts.map +1 -1
  26. package/dist/check-crate-size.js +4 -14
  27. package/dist/check-crate-size.js.map +1 -1
  28. package/dist/check.d.ts +4 -23
  29. package/dist/check.d.ts.map +1 -1
  30. package/dist/check.js +4 -23
  31. package/dist/check.js.map +1 -1
  32. package/dist/cli.d.ts +3 -41
  33. package/dist/cli.d.ts.map +1 -1
  34. package/dist/cli.js +14 -41
  35. package/dist/cli.js.map +1 -1
  36. package/dist/completeness.d.ts +4 -13
  37. package/dist/completeness.d.ts.map +1 -1
  38. package/dist/completeness.js +4 -13
  39. package/dist/completeness.js.map +1 -1
  40. package/dist/config.d.ts +4 -12
  41. package/dist/config.d.ts.map +1 -1
  42. package/dist/config.js +4 -12
  43. package/dist/config.js.map +1 -1
  44. package/dist/emit-plan-outputs.d.ts +4 -18
  45. package/dist/emit-plan-outputs.d.ts.map +1 -1
  46. package/dist/emit-plan-outputs.js +4 -18
  47. package/dist/emit-plan-outputs.js.map +1 -1
  48. package/dist/emit-release-outputs.d.ts +4 -17
  49. package/dist/emit-release-outputs.d.ts.map +1 -1
  50. package/dist/emit-release-outputs.js +4 -17
  51. package/dist/emit-release-outputs.js.map +1 -1
  52. package/dist/ensure-tag.d.ts +13 -9
  53. package/dist/ensure-tag.d.ts.map +1 -1
  54. package/dist/ensure-tag.js +25 -13
  55. package/dist/ensure-tag.js.map +1 -1
  56. package/dist/env.d.ts +8 -23
  57. package/dist/env.d.ts.map +1 -1
  58. package/dist/env.js +11 -40
  59. package/dist/env.js.map +1 -1
  60. package/dist/error-codes.d.ts +14 -27
  61. package/dist/error-codes.d.ts.map +1 -1
  62. package/dist/error-codes.js +15 -27
  63. package/dist/error-codes.js.map +1 -1
  64. package/dist/fold-action-bundle.d.ts +4 -20
  65. package/dist/fold-action-bundle.d.ts.map +1 -1
  66. package/dist/fold-action-bundle.js +4 -20
  67. package/dist/fold-action-bundle.js.map +1 -1
  68. package/dist/force-move-tag.d.ts +4 -13
  69. package/dist/force-move-tag.d.ts.map +1 -1
  70. package/dist/force-move-tag.js +4 -13
  71. package/dist/force-move-tag.js.map +1 -1
  72. package/dist/git.d.ts +15 -16
  73. package/dist/git.d.ts.map +1 -1
  74. package/dist/git.js +19 -16
  75. package/dist/git.js.map +1 -1
  76. package/dist/glob.d.ts +3 -10
  77. package/dist/glob.d.ts.map +1 -1
  78. package/dist/glob.js +3 -10
  79. package/dist/glob.js.map +1 -1
  80. package/dist/handlers/classify-npm-view-failure.d.ts +4 -30
  81. package/dist/handlers/classify-npm-view-failure.d.ts.map +1 -1
  82. package/dist/handlers/classify-npm-view-failure.js +7 -38
  83. package/dist/handlers/classify-npm-view-failure.js.map +1 -1
  84. package/dist/handlers/crates.d.ts +4 -35
  85. package/dist/handlers/crates.d.ts.map +1 -1
  86. package/dist/handlers/crates.js +8 -47
  87. package/dist/handlers/crates.js.map +1 -1
  88. package/dist/handlers/first-file-under.d.ts +3 -11
  89. package/dist/handlers/first-file-under.d.ts.map +1 -1
  90. package/dist/handlers/first-file-under.js +3 -11
  91. package/dist/handlers/first-file-under.js.map +1 -1
  92. package/dist/handlers/match-first-publish-tp-rejection.d.ts +4 -16
  93. package/dist/handlers/match-first-publish-tp-rejection.d.ts.map +1 -1
  94. package/dist/handlers/match-first-publish-tp-rejection.js +4 -16
  95. package/dist/handlers/match-first-publish-tp-rejection.js.map +1 -1
  96. package/dist/handlers/match-npm-name-too-similar.d.ts +4 -25
  97. package/dist/handlers/match-npm-name-too-similar.d.ts.map +1 -1
  98. package/dist/handlers/match-npm-name-too-similar.js +4 -25
  99. package/dist/handlers/match-npm-name-too-similar.js.map +1 -1
  100. package/dist/handlers/match-tlog-duplicate.d.ts +4 -13
  101. package/dist/handlers/match-tlog-duplicate.d.ts.map +1 -1
  102. package/dist/handlers/match-tlog-duplicate.js +4 -13
  103. package/dist/handlers/match-tlog-duplicate.js.map +1 -1
  104. package/dist/handlers/npm-platform.d.ts +11 -46
  105. package/dist/handlers/npm-platform.d.ts.map +1 -1
  106. package/dist/handlers/npm-platform.js +11 -46
  107. package/dist/handlers/npm-platform.js.map +1 -1
  108. package/dist/handlers/npm.d.ts +3 -7
  109. package/dist/handlers/npm.d.ts.map +1 -1
  110. package/dist/handlers/npm.js +11 -45
  111. package/dist/handlers/npm.js.map +1 -1
  112. package/dist/handlers/pypi.d.ts +5 -37
  113. package/dist/handlers/pypi.d.ts.map +1 -1
  114. package/dist/handlers/pypi.js +5 -37
  115. package/dist/handlers/pypi.js.map +1 -1
  116. package/dist/handlers/scan-dirty-outside-manifest.d.ts +4 -11
  117. package/dist/handlers/scan-dirty-outside-manifest.d.ts.map +1 -1
  118. package/dist/handlers/scan-dirty-outside-manifest.js +4 -11
  119. package/dist/handlers/scan-dirty-outside-manifest.js.map +1 -1
  120. package/dist/is-within-dir.d.ts +3 -5
  121. package/dist/is-within-dir.d.ts.map +1 -1
  122. package/dist/is-within-dir.js +3 -5
  123. package/dist/is-within-dir.js.map +1 -1
  124. package/dist/log.d.ts +6 -33
  125. package/dist/log.d.ts.map +1 -1
  126. package/dist/log.js +10 -57
  127. package/dist/log.js.map +1 -1
  128. package/dist/manylinux-for-triple.d.ts +4 -6
  129. package/dist/manylinux-for-triple.d.ts.map +1 -1
  130. package/dist/manylinux-for-triple.js +4 -6
  131. package/dist/manylinux-for-triple.js.map +1 -1
  132. package/dist/must-get.d.ts +3 -14
  133. package/dist/must-get.d.ts.map +1 -1
  134. package/dist/must-get.js +3 -14
  135. package/dist/must-get.js.map +1 -1
  136. package/dist/normalize-artifacts.d.ts +4 -19
  137. package/dist/normalize-artifacts.d.ts.map +1 -1
  138. package/dist/normalize-artifacts.js +4 -19
  139. package/dist/normalize-artifacts.js.map +1 -1
  140. package/dist/normalize-dist-name.d.ts +4 -13
  141. package/dist/normalize-dist-name.d.ts.map +1 -1
  142. package/dist/normalize-dist-name.js +4 -13
  143. package/dist/normalize-dist-name.js.map +1 -1
  144. package/dist/packages-by-name.d.ts +4 -12
  145. package/dist/packages-by-name.d.ts.map +1 -1
  146. package/dist/packages-by-name.js +4 -12
  147. package/dist/packages-by-name.js.map +1 -1
  148. package/dist/parse-reconcile-expect.d.ts +2 -5
  149. package/dist/parse-reconcile-expect.d.ts.map +1 -1
  150. package/dist/parse-reconcile-expect.js +2 -5
  151. package/dist/parse-reconcile-expect.js.map +1 -1
  152. package/dist/plan-skew.d.ts +4 -8
  153. package/dist/plan-skew.d.ts.map +1 -1
  154. package/dist/plan-skew.js +4 -8
  155. package/dist/plan-skew.js.map +1 -1
  156. package/dist/plan-status-types.d.ts +3 -6
  157. package/dist/plan-status-types.d.ts.map +1 -1
  158. package/dist/plan-status-types.js +3 -6
  159. package/dist/plan-status-types.js.map +1 -1
  160. package/dist/plan-status.d.ts +5 -18
  161. package/dist/plan-status.d.ts.map +1 -1
  162. package/dist/plan-status.js +5 -18
  163. package/dist/plan-status.js.map +1 -1
  164. package/dist/plan.d.ts +4 -8
  165. package/dist/plan.d.ts.map +1 -1
  166. package/dist/plan.js +8 -22
  167. package/dist/plan.js.map +1 -1
  168. package/dist/preflight.d.ts +16 -62
  169. package/dist/preflight.d.ts.map +1 -1
  170. package/dist/preflight.js +16 -62
  171. package/dist/preflight.js.map +1 -1
  172. package/dist/publish-progress.d.ts +4 -17
  173. package/dist/publish-progress.d.ts.map +1 -1
  174. package/dist/publish-progress.js +4 -17
  175. package/dist/publish-progress.js.map +1 -1
  176. package/dist/publish.d.ts +4 -18
  177. package/dist/publish.d.ts.map +1 -1
  178. package/dist/publish.js +4 -18
  179. package/dist/publish.js.map +1 -1
  180. package/dist/pypi-version-source.d.ts +3 -31
  181. package/dist/pypi-version-source.d.ts.map +1 -1
  182. package/dist/pypi-version-source.js +3 -31
  183. package/dist/pypi-version-source.js.map +1 -1
  184. package/dist/python-versions.d.ts +4 -13
  185. package/dist/python-versions.d.ts.map +1 -1
  186. package/dist/python-versions.js +4 -13
  187. package/dist/python-versions.js.map +1 -1
  188. package/dist/reconcile-expect.d.ts +4 -20
  189. package/dist/reconcile-expect.d.ts.map +1 -1
  190. package/dist/reconcile-expect.js +4 -20
  191. package/dist/reconcile-expect.js.map +1 -1
  192. package/dist/reconcile-skip-warnings.d.ts +21 -0
  193. package/dist/reconcile-skip-warnings.d.ts.map +1 -0
  194. package/dist/reconcile-skip-warnings.js +24 -0
  195. package/dist/reconcile-skip-warnings.js.map +1 -0
  196. package/dist/reconcile-types.d.ts +30 -3
  197. package/dist/reconcile-types.d.ts.map +1 -1
  198. package/dist/reconcile-types.js +3 -3
  199. package/dist/reconcile.d.ts +11 -2
  200. package/dist/reconcile.d.ts.map +1 -1
  201. package/dist/reconcile.js +31 -8
  202. package/dist/reconcile.js.map +1 -1
  203. package/dist/release-github/gh-release-create.d.ts +4 -7
  204. package/dist/release-github/gh-release-create.d.ts.map +1 -1
  205. package/dist/release-github/gh-release-create.js +4 -7
  206. package/dist/release-github/gh-release-create.js.map +1 -1
  207. package/dist/release-github/gh-release-exists.d.ts +4 -8
  208. package/dist/release-github/gh-release-exists.d.ts.map +1 -1
  209. package/dist/release-github/gh-release-exists.js +4 -8
  210. package/dist/release-github/gh-release-exists.js.map +1 -1
  211. package/dist/release-github/index.d.ts +4 -29
  212. package/dist/release-github/index.d.ts.map +1 -1
  213. package/dist/release-github/index.js +4 -29
  214. package/dist/release-github/index.js.map +1 -1
  215. package/dist/release-packages.d.ts +4 -16
  216. package/dist/release-packages.d.ts.map +1 -1
  217. package/dist/release-packages.js +4 -16
  218. package/dist/release-packages.js.map +1 -1
  219. package/dist/replace-cargo-version.d.ts +3 -30
  220. package/dist/replace-cargo-version.d.ts.map +1 -1
  221. package/dist/replace-cargo-version.js +3 -30
  222. package/dist/replace-cargo-version.js.map +1 -1
  223. package/dist/replace-dep-version-req.d.ts +8 -32
  224. package/dist/replace-dep-version-req.d.ts.map +1 -1
  225. package/dist/replace-dep-version-req.js +8 -32
  226. package/dist/replace-dep-version-req.js.map +1 -1
  227. package/dist/repo-relative-paths.d.ts +3 -14
  228. package/dist/repo-relative-paths.d.ts.map +1 -1
  229. package/dist/repo-relative-paths.js +3 -14
  230. package/dist/repo-relative-paths.js.map +1 -1
  231. package/dist/resolve/run-resolve.d.ts +4 -9
  232. package/dist/resolve/run-resolve.d.ts.map +1 -1
  233. package/dist/resolve/run-resolve.js +4 -9
  234. package/dist/resolve/run-resolve.js.map +1 -1
  235. package/dist/resolve-dep-dirs.d.ts +4 -14
  236. package/dist/resolve-dep-dirs.d.ts.map +1 -1
  237. package/dist/resolve-dep-dirs.js +4 -14
  238. package/dist/resolve-dep-dirs.js.map +1 -1
  239. package/dist/resolve-tag-commit.d.ts +4 -12
  240. package/dist/resolve-tag-commit.d.ts.map +1 -1
  241. package/dist/resolve-tag-commit.js +4 -12
  242. package/dist/resolve-tag-commit.js.map +1 -1
  243. package/dist/retry.d.ts +4 -16
  244. package/dist/retry.d.ts.map +1 -1
  245. package/dist/retry.js +4 -16
  246. package/dist/retry.js.map +1 -1
  247. package/dist/status-classify.d.ts +3 -6
  248. package/dist/status-classify.d.ts.map +1 -1
  249. package/dist/status-classify.js +3 -6
  250. package/dist/status-classify.js.map +1 -1
  251. package/dist/status.d.ts +4 -18
  252. package/dist/status.d.ts.map +1 -1
  253. package/dist/status.js +4 -18
  254. package/dist/status.js.map +1 -1
  255. package/dist/tag-template.d.ts +4 -14
  256. package/dist/tag-template.d.ts.map +1 -1
  257. package/dist/tag-template.js +4 -14
  258. package/dist/tag-template.js.map +1 -1
  259. package/dist/to-error.d.ts +4 -13
  260. package/dist/to-error.d.ts.map +1 -1
  261. package/dist/to-error.js +4 -13
  262. package/dist/to-error.js.map +1 -1
  263. package/dist/trailer.d.ts +4 -17
  264. package/dist/trailer.d.ts.map +1 -1
  265. package/dist/trailer.js +4 -17
  266. package/dist/trailer.js.map +1 -1
  267. package/dist/types.d.ts +11 -32
  268. package/dist/types.d.ts.map +1 -1
  269. package/dist/types.js +3 -6
  270. package/dist/types.js.map +1 -1
  271. package/dist/unpublished-kinds.d.ts +4 -15
  272. package/dist/unpublished-kinds.d.ts.map +1 -1
  273. package/dist/unpublished-kinds.js +4 -15
  274. package/dist/unpublished-kinds.js.map +1 -1
  275. package/dist/utils/bound-capture.d.ts +4 -8
  276. package/dist/utils/bound-capture.d.ts.map +1 -1
  277. package/dist/utils/bound-capture.js +4 -8
  278. package/dist/utils/bound-capture.js.map +1 -1
  279. package/dist/utils/elide-middle.d.ts +4 -19
  280. package/dist/utils/elide-middle.d.ts.map +1 -1
  281. package/dist/utils/elide-middle.js +4 -19
  282. package/dist/utils/elide-middle.js.map +1 -1
  283. package/dist/utils/find-exec-error.d.ts.map +1 -1
  284. package/dist/utils/find-exec-error.js +4 -12
  285. package/dist/utils/find-exec-error.js.map +1 -1
  286. package/dist/utils/flush-stdio.d.ts +4 -11
  287. package/dist/utils/flush-stdio.d.ts.map +1 -1
  288. package/dist/utils/flush-stdio.js +4 -11
  289. package/dist/utils/flush-stdio.js.map +1 -1
  290. package/dist/utils/list-files-recursive.d.ts +3 -7
  291. package/dist/utils/list-files-recursive.d.ts.map +1 -1
  292. package/dist/utils/list-files-recursive.js +3 -7
  293. package/dist/utils/list-files-recursive.js.map +1 -1
  294. package/dist/utils/to-posix-path.d.ts +4 -7
  295. package/dist/utils/to-posix-path.d.ts.map +1 -1
  296. package/dist/utils/to-posix-path.js +4 -7
  297. package/dist/utils/to-posix-path.js.map +1 -1
  298. package/dist/verbose.d.ts +4 -10
  299. package/dist/verbose.d.ts.map +1 -1
  300. package/dist/verbose.js +4 -10
  301. package/dist/verbose.js.map +1 -1
  302. package/dist/verify/bundle-cli/compute-stage-suffix.d.ts +4 -11
  303. package/dist/verify/bundle-cli/compute-stage-suffix.d.ts.map +1 -1
  304. package/dist/verify/bundle-cli/compute-stage-suffix.js +4 -11
  305. package/dist/verify/bundle-cli/compute-stage-suffix.js.map +1 -1
  306. package/dist/verify/bundle-cli/index.d.ts +4 -20
  307. package/dist/verify/bundle-cli/index.d.ts.map +1 -1
  308. package/dist/verify/bundle-cli/index.js +4 -20
  309. package/dist/verify/bundle-cli/index.js.map +1 -1
  310. package/dist/verify/bundle-cli/read-python-source.d.ts +4 -12
  311. package/dist/verify/bundle-cli/read-python-source.d.ts.map +1 -1
  312. package/dist/verify/bundle-cli/read-python-source.js +4 -12
  313. package/dist/verify/bundle-cli/read-python-source.js.map +1 -1
  314. package/dist/verify/crate/find-crate-file.d.ts +2 -6
  315. package/dist/verify/crate/find-crate-file.d.ts.map +1 -1
  316. package/dist/verify/crate/find-crate-file.js +2 -6
  317. package/dist/verify/crate/find-crate-file.js.map +1 -1
  318. package/dist/verify/crate/has-crate-source.d.ts +3 -5
  319. package/dist/verify/crate/has-crate-source.d.ts.map +1 -1
  320. package/dist/verify/crate/has-crate-source.js +3 -5
  321. package/dist/verify/crate/has-crate-source.js.map +1 -1
  322. package/dist/verify/crate/index.d.ts +4 -16
  323. package/dist/verify/crate/index.d.ts.map +1 -1
  324. package/dist/verify/crate/index.js +4 -16
  325. package/dist/verify/crate/index.js.map +1 -1
  326. package/dist/verify/npm-tarball/download.d.ts +3 -9
  327. package/dist/verify/npm-tarball/download.d.ts.map +1 -1
  328. package/dist/verify/npm-tarball/download.js +3 -9
  329. package/dist/verify/npm-tarball/download.js.map +1 -1
  330. package/dist/verify/npm-tarball/index.d.ts +4 -13
  331. package/dist/verify/npm-tarball/index.d.ts.map +1 -1
  332. package/dist/verify/npm-tarball/index.js +4 -13
  333. package/dist/verify/npm-tarball/index.js.map +1 -1
  334. package/dist/verify/npm-tarball/local-dir-state.d.ts +4 -8
  335. package/dist/verify/npm-tarball/local-dir-state.d.ts.map +1 -1
  336. package/dist/verify/npm-tarball/local-dir-state.js +4 -8
  337. package/dist/verify/npm-tarball/local-dir-state.js.map +1 -1
  338. package/dist/verify/npm-tarball/main.d.ts +4 -14
  339. package/dist/verify/npm-tarball/main.d.ts.map +1 -1
  340. package/dist/verify/npm-tarball/main.js +4 -14
  341. package/dist/verify/npm-tarball/main.js.map +1 -1
  342. package/dist/verify/npm-tarball/resolve-url.d.ts +4 -11
  343. package/dist/verify/npm-tarball/resolve-url.d.ts.map +1 -1
  344. package/dist/verify/npm-tarball/resolve-url.js +4 -11
  345. package/dist/verify/npm-tarball/resolve-url.js.map +1 -1
  346. package/dist/verify/npm-tarball/triple.d.ts +4 -26
  347. package/dist/verify/npm-tarball/triple.d.ts.map +1 -1
  348. package/dist/verify/npm-tarball/triple.js +4 -26
  349. package/dist/verify/npm-tarball/triple.js.map +1 -1
  350. package/dist/verify/posture.d.ts +4 -13
  351. package/dist/verify/posture.d.ts.map +1 -1
  352. package/dist/verify/posture.js +4 -13
  353. package/dist/verify/posture.js.map +1 -1
  354. package/dist/verify/wheel/index.d.ts +4 -17
  355. package/dist/verify/wheel/index.d.ts.map +1 -1
  356. package/dist/verify/wheel/index.js +4 -17
  357. package/dist/verify/wheel/index.js.map +1 -1
  358. package/dist/verify/wheel/manylinux-tag-patterns.d.ts +4 -6
  359. package/dist/verify/wheel/manylinux-tag-patterns.d.ts.map +1 -1
  360. package/dist/verify/wheel/manylinux-tag-patterns.js +4 -6
  361. package/dist/verify/wheel/manylinux-tag-patterns.js.map +1 -1
  362. package/dist/verify/wheel/read-wheel-version.d.ts +4 -8
  363. package/dist/verify/wheel/read-wheel-version.d.ts.map +1 -1
  364. package/dist/verify/wheel/read-wheel-version.js +4 -8
  365. package/dist/verify/wheel/read-wheel-version.js.map +1 -1
  366. package/dist/verify/wheel/read-zip-entry.d.ts +3 -8
  367. package/dist/verify/wheel/read-zip-entry.d.ts.map +1 -1
  368. package/dist/verify/wheel/read-zip-entry.js +3 -8
  369. package/dist/verify/wheel/read-zip-entry.js.map +1 -1
  370. package/dist/version.d.ts +4 -12
  371. package/dist/version.d.ts.map +1 -1
  372. package/dist/version.js +4 -12
  373. package/dist/version.js.map +1 -1
  374. package/dist/wheel-abi.d.ts +5 -28
  375. package/dist/wheel-abi.d.ts.map +1 -1
  376. package/dist/wheel-abi.js +5 -28
  377. package/dist/wheel-abi.js.map +1 -1
  378. package/dist/write-crate-version.d.ts +4 -17
  379. package/dist/write-crate-version.d.ts.map +1 -1
  380. package/dist/write-crate-version.js +4 -17
  381. package/dist/write-crate-version.js.map +1 -1
  382. package/dist/write-dependent-version-reqs.d.ts +8 -43
  383. package/dist/write-dependent-version-reqs.d.ts.map +1 -1
  384. package/dist/write-dependent-version-reqs.js +8 -43
  385. package/dist/write-dependent-version-reqs.js.map +1 -1
  386. package/dist/write-embedded-crate-versions.d.ts +9 -40
  387. package/dist/write-embedded-crate-versions.d.ts.map +1 -1
  388. package/dist/write-embedded-crate-versions.js +9 -40
  389. package/dist/write-embedded-crate-versions.js.map +1 -1
  390. package/dist/write-launcher.d.ts +7 -23
  391. package/dist/write-launcher.d.ts.map +1 -1
  392. package/dist/write-launcher.js +11 -37
  393. package/dist/write-launcher.js.map +1 -1
  394. package/dist/write-resolved-cargo-version.d.ts +4 -12
  395. package/dist/write-resolved-cargo-version.d.ts.map +1 -1
  396. package/dist/write-resolved-cargo-version.js +4 -12
  397. package/dist/write-resolved-cargo-version.js.map +1 -1
  398. package/dist/write-version.d.ts +8 -29
  399. package/dist/write-version.d.ts.map +1 -1
  400. package/dist/write-version.js +8 -29
  401. package/dist/write-version.js.map +1 -1
  402. package/package.json +3 -3
@@ -1,28 +1,40 @@
1
1
  /**
2
- * Auto-heal a missing release tag (#407). When a version is confirmed
3
- * live on the registry, its git tag must exist — a half-failed earlier
4
- * run can leave a version published but untagged, which strands the
5
- * package (piot derives "last released" from tags). This writes the tag
6
- * if it's missing, at `commit`. Idempotent: a no-op when the tag is
7
- * already there.
2
+ * Auto-heal a missing release tag (#407). A half-failed earlier run can leave
3
+ * a version published but untagged, which strands the package — piot derives
4
+ * "last released" from tags. Writes and pushes the tag at `commit` when
5
+ * `origin` does not have it yet. Runs on both the fresh-publish and
6
+ * already-published branches.
8
7
  *
9
- * Used on both publish paths — right after a fresh publish, and on the
10
- * already-published skip branch (the heal). `reconcile` (#403) will reuse
11
- * it to backfill already-stuck packages.
8
+ * Idempotency is checked against the remote, not local tags (#717): a run
9
+ * that created the tag locally and then failed to push it leaves a local
10
+ * tag with nothing on `origin`. Checking `tagList` (local-only) would read
11
+ * that as "already done" and never retry the push — "tried and failed"
12
+ * would be indistinguishable from "succeeded" for the rest of that working
13
+ * tree's life. A push failure now propagates instead of being downgraded to
14
+ * a warning, for the same reason: `publish` and `reconcile` must not report
15
+ * success for a version the remote has no tag for.
12
16
  */
13
- import { createTag, pushTag, tagList } from './git.js';
17
+ import { ErrorCodes } from './error-codes.js';
18
+ import { createTag, pushTag, remoteTagExists, tagList } from './git.js';
14
19
  import { formatTag } from './tag-template.js';
15
20
  export async function ensureTag(tagFormat, name, version, commit, opts, log) {
16
21
  const tagName = formatTag(tagFormat, { name, version });
17
- if ((await tagList(tagName, opts)).length > 0) {
22
+ if (await remoteTagExists(tagName, opts)) {
18
23
  return;
19
24
  }
20
- await createTag(tagName, commit, { cwd: opts.cwd, message: `Release ${tagName}` });
25
+ if ((await tagList(tagName, opts)).length === 0) {
26
+ await createTag(tagName, commit, { cwd: opts.cwd, message: `Release ${tagName}` });
27
+ }
28
+ log.info(`publish: pushing tag ${tagName}`);
21
29
  try {
22
30
  await pushTag(tagName, opts);
23
31
  }
24
32
  catch (err) {
25
- log.warn(`publish: failed to push tag ${tagName}: ${err instanceof Error ? err.message : String(err)}`);
33
+ throw new Error(`[${ErrorCodes.TAG_PUSH_FAILED}] ${name}@${version} is on the registry, but pushing tag ` +
34
+ `${tagName} failed: ${err instanceof Error ? err.message : String(err)}. The registry ` +
35
+ `write already happened — do not re-run publish for this version. Fix the push problem ` +
36
+ `(origin, auth, a diverged remote tag) and rerun \`putitoutthere reconcile\`, which ` +
37
+ `backfills the tag without re-publishing.`, { cause: err });
26
38
  }
27
39
  }
28
40
  //# sourceMappingURL=ensure-tag.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ensure-tag.js","sourceRoot":"","sources":["../src/ensure-tag.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,UAAU,CAAC;AACvD,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAG9C,MAAM,CAAC,KAAK,UAAU,SAAS,CAC7B,SAAiB,EACjB,IAAY,EACZ,OAAe,EACf,MAAc,EACd,IAAqB,EACrB,GAAW;IAEX,MAAM,OAAO,GAAG,SAAS,CAAC,SAAS,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC;IACxD,IAAI,CAAC,MAAM,OAAO,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAAA,OAAO;IAAA,CAAC;IACxD,MAAM,SAAS,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE,OAAO,EAAE,WAAW,OAAO,EAAE,EAAE,CAAC,CAAC;IACnF,IAAI,CAAC;QACH,MAAM,OAAO,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;IAC/B,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,GAAG,CAAC,IAAI,CACN,+BAA+B,OAAO,KAAK,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAC9F,CAAC;IACJ,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"ensure-tag.js","sourceRoot":"","sources":["../src/ensure-tag.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,eAAe,EAAE,OAAO,EAAE,MAAM,UAAU,CAAC;AACxE,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAG9C,MAAM,CAAC,KAAK,UAAU,SAAS,CAC7B,SAAiB,EACjB,IAAY,EACZ,OAAe,EACf,MAAc,EACd,IAAqB,EACrB,GAAW;IAEX,MAAM,OAAO,GAAG,SAAS,CAAC,SAAS,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC;IACxD,IAAI,MAAM,eAAe,CAAC,OAAO,EAAE,IAAI,CAAC,EAAE,CAAC;QAAA,OAAO;IAAA,CAAC;IACnD,IAAI,CAAC,MAAM,OAAO,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAChD,MAAM,SAAS,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE,OAAO,EAAE,WAAW,OAAO,EAAE,EAAE,CAAC,CAAC;IACrF,CAAC;IACD,GAAG,CAAC,IAAI,CAAC,wBAAwB,OAAO,EAAE,CAAC,CAAC;IAC5C,IAAI,CAAC;QACH,MAAM,OAAO,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;IAC/B,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,IAAI,KAAK,CACb,IAAI,UAAU,CAAC,eAAe,KAAK,IAAI,IAAI,OAAO,uCAAuC;YACvF,GAAG,OAAO,YAAY,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,iBAAiB;YACvF,wFAAwF;YACxF,qFAAqF;YACrF,0CAA0C,EAC5C,EAAE,KAAK,EAAE,GAAG,EAAE,CACf,CAAC;IACJ,CAAC;AACH,CAAC"}
package/dist/env.d.ts CHANGED
@@ -1,30 +1,15 @@
1
1
  /**
2
- * Shared env-var helpers.
3
- *
4
- * Handlers read auth/OIDC env vars out of both `ctx.env` (workflow-set)
5
- * and `process.env` (runner-set). The natural `a ?? b` pattern breaks
6
- * when `a === ''`: nullish coalescing only falls through on
7
- * null/undefined, so `Boolean('' ?? 'real-token')` is `false`. CI
8
- * harnesses often set `FOO: process.env.FOO ?? ''` to forward optional
9
- * env, which makes empty strings a common runtime reality.
10
- *
11
- * `nonEmpty()` normalizes that by treating empty strings as unset, so
12
- * the coalesce falls through correctly.
2
+ * Shared env-var helpers. Handlers read auth/OIDC vars out of both `ctx.env`
3
+ * and `process.env`, where `a ?? b` breaks on `a === ''` — nullish coalescing
4
+ * only falls through on null/undefined, and CI harnesses commonly forward
5
+ * optional env as `FOO: process.env.FOO ?? ''`. `nonEmpty()` normalizes that.
13
6
  */
14
7
  export declare function nonEmpty(v: string | undefined): string | undefined;
15
8
  /**
16
- * Build a minimal env for a subprocess spawn.
17
- *
18
- * Combines:
19
- * 1. The `DEFAULT_ENV_PASSTHROUGH` subset of the parent `process.env`.
20
- * 2. Everything in `ctxEnv` (workflow-declared passthroughs — this is
21
- * where tokens and OIDC vars live).
22
- * 3. Any `extras` the handler needs to set (e.g. `TWINE_PASSWORD`).
23
- *
24
- * `ctxEnv` and `extras` override the baseline. Undefined values in
25
- * either are dropped so a handler can explicitly omit a var.
26
- *
27
- * #138.
9
+ * Build a minimal env for a subprocess spawn: the `DEFAULT_ENV_PASSTHROUGH`
10
+ * subset of `process.env`, then `ctxEnv` (workflow-declared passthroughs,
11
+ * where tokens and OIDC vars live), then handler `extras`. Later layers win;
12
+ * undefined values are dropped so a handler can explicitly omit a var. #138.
28
13
  */
29
14
  export declare function buildSubprocessEnv(ctxEnv?: Record<string, string | undefined>, extras?: Record<string, string | undefined>): Record<string, string>;
30
15
  //# sourceMappingURL=env.d.ts.map
package/dist/env.d.ts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"env.d.ts","sourceRoot":"","sources":["../src/env.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,wBAAgB,QAAQ,CAAC,CAAC,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,GAAG,SAAS,CAElE;AAqDD;;;;;;;;;;;;;GAaG;AACH,wBAAgB,kBAAkB,CAChC,MAAM,GAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAM,EAC/C,MAAM,GAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAM,GAC9C,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAaxB"}
1
+ {"version":3,"file":"env.d.ts","sourceRoot":"","sources":["../src/env.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,wBAAgB,QAAQ,CAAC,CAAC,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,GAAG,SAAS,CAElE;AAuCD;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAChC,MAAM,GAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAM,EAC/C,MAAM,GAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAM,GAC9C,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAaxB"}
package/dist/env.js CHANGED
@@ -1,38 +1,17 @@
1
1
  /**
2
- * Shared env-var helpers.
3
- *
4
- * Handlers read auth/OIDC env vars out of both `ctx.env` (workflow-set)
5
- * and `process.env` (runner-set). The natural `a ?? b` pattern breaks
6
- * when `a === ''`: nullish coalescing only falls through on
7
- * null/undefined, so `Boolean('' ?? 'real-token')` is `false`. CI
8
- * harnesses often set `FOO: process.env.FOO ?? ''` to forward optional
9
- * env, which makes empty strings a common runtime reality.
10
- *
11
- * `nonEmpty()` normalizes that by treating empty strings as unset, so
12
- * the coalesce falls through correctly.
2
+ * Shared env-var helpers. Handlers read auth/OIDC vars out of both `ctx.env`
3
+ * and `process.env`, where `a ?? b` breaks on `a === ''` — nullish coalescing
4
+ * only falls through on null/undefined, and CI harnesses commonly forward
5
+ * optional env as `FOO: process.env.FOO ?? ''`. `nonEmpty()` normalizes that.
13
6
  */
14
7
  export function nonEmpty(v) {
15
8
  return v && v.length > 0 ? v : undefined;
16
9
  }
17
10
  /**
18
11
  * Env-var names passed through from the parent `process.env` to every
19
- * subprocess (cargo / twine / npm / git). Kept deliberately minimal
20
- * (#138): the default `{ ...process.env, ...ctx.env }` pattern leaks
21
- * every unrelated secret on the runner — GH_TOKEN from a previous
22
- * step, a user's local AWS_* creds, the whole lot — into publish
23
- * tooling that has no business seeing them.
24
- *
25
- * Entries here are the ones those tools actually need to function:
26
- * - `PATH` executable resolution on every platform
27
- * - `HOME`/`USERPROFILE` cargo/npm/pip config discovery
28
- * - `TMPDIR`/`TEMP`/`TMP` scratch-space selection
29
- * - `LANG`/`LC_*` locale for tools that format output
30
- * - `SystemRoot`/`windir`/`ComSpec` Windows basics
31
- * - `CARGO_HOME`/`RUSTUP_HOME` cargo/rustup data dirs
32
- * - `npm_config_userconfig`/`NPM_CONFIG_USERCONFIG` npm config path
33
- *
34
- * Secrets are NOT forwarded via this allowlist; they come in through
35
- * `ctx.env` explicit-passthrough (which the publish caller controls).
12
+ * subprocess (cargo / twine / npm / git). Deliberately minimal (#138): the
13
+ * default `{ ...process.env, ...ctx.env }` pattern leaks every unrelated
14
+ * secret on the runner. Secrets arrive only via `ctx.env` passthrough.
36
15
  */
37
16
  const DEFAULT_ENV_PASSTHROUGH = [
38
17
  'PATH',
@@ -65,18 +44,10 @@ const DEFAULT_ENV_PASSTHROUGH = [
65
44
  'NPM_CONFIG_USERCONFIG',
66
45
  ];
67
46
  /**
68
- * Build a minimal env for a subprocess spawn.
69
- *
70
- * Combines:
71
- * 1. The `DEFAULT_ENV_PASSTHROUGH` subset of the parent `process.env`.
72
- * 2. Everything in `ctxEnv` (workflow-declared passthroughs — this is
73
- * where tokens and OIDC vars live).
74
- * 3. Any `extras` the handler needs to set (e.g. `TWINE_PASSWORD`).
75
- *
76
- * `ctxEnv` and `extras` override the baseline. Undefined values in
77
- * either are dropped so a handler can explicitly omit a var.
78
- *
79
- * #138.
47
+ * Build a minimal env for a subprocess spawn: the `DEFAULT_ENV_PASSTHROUGH`
48
+ * subset of `process.env`, then `ctxEnv` (workflow-declared passthroughs,
49
+ * where tokens and OIDC vars live), then handler `extras`. Later layers win;
50
+ * undefined values are dropped so a handler can explicitly omit a var. #138.
80
51
  */
81
52
  export function buildSubprocessEnv(ctxEnv = {}, extras = {}) {
82
53
  const out = {};
package/dist/env.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"env.js","sourceRoot":"","sources":["../src/env.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,MAAM,UAAU,QAAQ,CAAC,CAAqB;IAC5C,OAAO,CAAC,IAAI,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;AAC3C,CAAC;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,MAAM,uBAAuB,GAAsB;IACjD,MAAM;IACN,MAAM;IACN,MAAM;IACN,SAAS;IACT,OAAO;IACP,MAAM;IACN,QAAQ;IACR,UAAU;IACV,QAAQ;IACR,MAAM;IACN,KAAK;IACL,iBAAiB;IACjB,aAAa;IACb,YAAY;IACZ,YAAY;IACZ,QAAQ;IACR,QAAQ;IACR,SAAS;IACT,SAAS;IACT,SAAS;IACT,cAAc;IACd,SAAS;IACT,iEAAiE;IACjE,4BAA4B;IAC5B,YAAY;IACZ,aAAa;IACb,uBAAuB;IACvB,uBAAuB;CACxB,CAAC;AAEF;;;;;;;;;;;;;GAaG;AACH,MAAM,UAAU,kBAAkB,CAChC,SAA6C,EAAE,EAC/C,SAA6C,EAAE;IAE/C,MAAM,GAAG,GAA2B,EAAE,CAAC;IACvC,KAAK,MAAM,IAAI,IAAI,uBAAuB,EAAE,CAAC;QAC3C,MAAM,CAAC,GAAG,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QAC5B,IAAI,OAAO,CAAC,KAAK,QAAQ,EAAE,CAAC;YAAA,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAAA,CAAC;IAC7C,CAAC;IACD,KAAK,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;QAC5C,IAAI,OAAO,CAAC,KAAK,QAAQ,EAAE,CAAC;YAAA,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;QAAA,CAAC;IAC1C,CAAC;IACD,KAAK,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;QAC5C,IAAI,OAAO,CAAC,KAAK,QAAQ,EAAE,CAAC;YAAA,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;QAAA,CAAC;IAC1C,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC"}
1
+ {"version":3,"file":"env.js","sourceRoot":"","sources":["../src/env.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,MAAM,UAAU,QAAQ,CAAC,CAAqB;IAC5C,OAAO,CAAC,IAAI,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;AAC3C,CAAC;AAED;;;;;GAKG;AACH,MAAM,uBAAuB,GAAsB;IACjD,MAAM;IACN,MAAM;IACN,MAAM;IACN,SAAS;IACT,OAAO;IACP,MAAM;IACN,QAAQ;IACR,UAAU;IACV,QAAQ;IACR,MAAM;IACN,KAAK;IACL,iBAAiB;IACjB,aAAa;IACb,YAAY;IACZ,YAAY;IACZ,QAAQ;IACR,QAAQ;IACR,SAAS;IACT,SAAS;IACT,SAAS;IACT,cAAc;IACd,SAAS;IACT,iEAAiE;IACjE,4BAA4B;IAC5B,YAAY;IACZ,aAAa;IACb,uBAAuB;IACvB,uBAAuB;CACxB,CAAC;AAEF;;;;;GAKG;AACH,MAAM,UAAU,kBAAkB,CAChC,SAA6C,EAAE,EAC/C,SAA6C,EAAE;IAE/C,MAAM,GAAG,GAA2B,EAAE,CAAC;IACvC,KAAK,MAAM,IAAI,IAAI,uBAAuB,EAAE,CAAC;QAC3C,MAAM,CAAC,GAAG,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QAC5B,IAAI,OAAO,CAAC,KAAK,QAAQ,EAAE,CAAC;YAAA,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAAA,CAAC;IAC7C,CAAC;IACD,KAAK,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;QAC5C,IAAI,OAAO,CAAC,KAAK,QAAQ,EAAE,CAAC;YAAA,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;QAAA,CAAC;IAC1C,CAAC;IACD,KAAK,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;QAC5C,IAAI,OAAO,CAAC,KAAK,QAAQ,EAAE,CAAC;YAAA,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;QAAA,CAAC;IAC1C,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC"}
@@ -1,19 +1,8 @@
1
1
  /**
2
- * Stable error-code vocabulary.
3
- *
4
- * User-facing errors and GitHub Actions `::error::` annotations carry
5
- * one of these codes so external observers — humans grepping the run
6
- * log, foreign LLM agents debugging a failed publish, the docs site
7
- * deep-linking from a code to a recipe — can fingerprint the failure
8
- * mode without parsing free-form prose.
9
- *
10
- * Codes are deliberately verbose. The string is the diagnostic; brevity
11
- * here just creates ambiguity at a distance.
12
- *
13
- * Adding a new code: add it to BOTH `ErrorCodes` and `ALL_ERROR_CODES`;
14
- * the test in `error-codes.test.ts` enforces parity. Once a code ships
15
- * in a public-surfaced error message it becomes a stable identifier —
16
- * rename only with a migration entry.
2
+ * Stable error-code vocabulary. User-facing errors and `::error::`
3
+ * annotations carry a code so observers can fingerprint a failure mode
4
+ * without parsing free-form prose. Add new codes to BOTH `ErrorCodes` and
5
+ * `ALL_ERROR_CODES` (parity is tested); a shipped code is a stable id.
17
6
  */
18
7
  export declare const ErrorCodes: {
19
8
  /** Generic auth failure when no registry token resolved. Used by
@@ -95,18 +84,10 @@ export declare const ErrorCodes: {
95
84
  * vcs`. Either way the build backend has no way to compute a version
96
85
  * at pack time. The fix is to wire up the plugin. #301, #696. */
97
86
  readonly PYPI_DYNAMIC_VERSION_NO_BACKEND: "PIOT_PYPI_DYNAMIC_VERSION_NO_BACKEND";
98
- /** A pypi package declares `dynamic = ["version"]` and backs it with a
99
- * `[tool.hatch.version]` block whose source is a **file in the tree**
100
- * — a bare `path` (hatchling's default `regex` source) or
101
- * `source = "code"`. Both read the version off disk without
102
- * consulting `SETUPTOOLS_SCM_PRETEND_VERSION`, and no release step
103
- * rewrites the file (`write-version` is maturin-only), so the wheel
104
- * ships the committed literal rather than the planned version — and
105
- * nothing fails. `agent-transcript-viewer` published `0.0.0` to PyPI
106
- * this way while the plan said `0.1.0`. The fix is to switch the
107
- * source to `"vcs"` (with `hatch-vcs` in `[build-system].requires`),
108
- * which is why this is a separate code from
109
- * `PYPI_DYNAMIC_VERSION_NO_BACKEND`. #696. */
87
+ /** A pypi package backs `dynamic = ["version"]` with a
88
+ * `[tool.hatch.version]` source reading a file in the tree (bare `path`
89
+ * or `source = "code"`): it ignores `SETUPTOOLS_SCM_PRETEND_VERSION`, so
90
+ * the wheel ships the committed literal. Fix: `source = "vcs"`. #696. */
110
91
  readonly PYPI_HATCH_VERSION_PATH: "PIOT_PYPI_HATCH_VERSION_PATH";
111
92
  /** A maturin pypi package declares `[package.bundle_cli]` but
112
93
  * `[tool.maturin].include` does not cover the configured
@@ -170,6 +151,12 @@ export declare const ErrorCodes: {
170
151
  * same source-visibility expectation underpins the trusted-publisher
171
152
  * story on the other registries. */
172
153
  readonly REPO_PRIVATE: "PIOT_REPO_PRIVATE";
154
+ /** `ensureTag` (#407) found a package live on the registry with no
155
+ * matching tag on `origin`, tried to write and push one, and the push
156
+ * failed. Thrown rather than downgraded to a warning (#717): a release
157
+ * is not done until its tag is visible on the remote, so `publish` and
158
+ * `reconcile` must not exit 0 having silently left one unpushed. */
159
+ readonly TAG_PUSH_FAILED: "PIOT_TAG_PUSH_FAILED";
173
160
  };
174
161
  export type ErrorCode = (typeof ErrorCodes)[keyof typeof ErrorCodes];
175
162
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"error-codes.d.ts","sourceRoot":"","sources":["../src/error-codes.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,eAAO,MAAM,UAAU;IACrB;;;8CAG0C;;IAE1C;;;;;;kDAM8C;;IAE9C;;;;;0DAKsD;;IAEtD;;;;;;;2CAOuC;;IAEvC;;;;;;;;0EAQsE;;IAEtE;;;;;;iCAM6B;;IAE7B;;;;;;;;qDAQiD;;IAEjD;;;;;yBAKqB;;IAErB;;;;gBAIY;;IAEZ;;;;;;;sEAOkE;;IAElE;;;;;;;;;;;mDAW+C;;IAE/C;;;;kEAI8D;;IAE9D;;;;uEAImE;;IAEnE;;;;uBAImB;;IAEnB;;;;2BAIuB;;IAEvB;;;qEAGiE;;IAEjE;;;;;;kEAM8D;;IAE9D;;;;;;;8BAO0B;;IAE1B;;;;;;;gDAO4C;;IAE5C;;;;;yCAKqC;;CAE7B,CAAC;AAEX,MAAM,MAAM,SAAS,GAAG,CAAC,OAAO,UAAU,CAAC,CAAC,MAAM,OAAO,UAAU,CAAC,CAAC;AAErE;;;GAGG;AACH,eAAO,MAAM,eAAe,EAAE,SAAS,SAAS,EAqB/C,CAAC"}
1
+ {"version":3,"file":"error-codes.d.ts","sourceRoot":"","sources":["../src/error-codes.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,eAAO,MAAM,UAAU;IACrB;;;8CAG0C;;IAE1C;;;;;;kDAM8C;;IAE9C;;;;;0DAKsD;;IAEtD;;;;;;;2CAOuC;;IAEvC;;;;;;;;0EAQsE;;IAEtE;;;;;;iCAM6B;;IAE7B;;;;;;;;qDAQiD;;IAEjD;;;;;yBAKqB;;IAErB;;;;gBAIY;;IAEZ;;;;;;;sEAOkE;;IAElE;;;8EAG0E;;IAE1E;;;;kEAI8D;;IAE9D;;;;uEAImE;;IAEnE;;;;uBAImB;;IAEnB;;;;2BAIuB;;IAEvB;;;qEAGiE;;IAEjE;;;;;;kEAM8D;;IAE9D;;;;;;;8BAO0B;;IAE1B;;;;;;;gDAO4C;;IAE5C;;;;;yCAKqC;;IAErC;;;;yEAIqE;;CAE7D,CAAC;AAEX,MAAM,MAAM,SAAS,GAAG,CAAC,OAAO,UAAU,CAAC,CAAC,MAAM,OAAO,UAAU,CAAC,CAAC;AAErE;;;GAGG;AACH,eAAO,MAAM,eAAe,EAAE,SAAS,SAAS,EAsB/C,CAAC"}
@@ -1,19 +1,8 @@
1
1
  /**
2
- * Stable error-code vocabulary.
3
- *
4
- * User-facing errors and GitHub Actions `::error::` annotations carry
5
- * one of these codes so external observers — humans grepping the run
6
- * log, foreign LLM agents debugging a failed publish, the docs site
7
- * deep-linking from a code to a recipe — can fingerprint the failure
8
- * mode without parsing free-form prose.
9
- *
10
- * Codes are deliberately verbose. The string is the diagnostic; brevity
11
- * here just creates ambiguity at a distance.
12
- *
13
- * Adding a new code: add it to BOTH `ErrorCodes` and `ALL_ERROR_CODES`;
14
- * the test in `error-codes.test.ts` enforces parity. Once a code ships
15
- * in a public-surfaced error message it becomes a stable identifier —
16
- * rename only with a migration entry.
2
+ * Stable error-code vocabulary. User-facing errors and `::error::`
3
+ * annotations carry a code so observers can fingerprint a failure mode
4
+ * without parsing free-form prose. Add new codes to BOTH `ErrorCodes` and
5
+ * `ALL_ERROR_CODES` (parity is tested); a shipped code is a stable id.
17
6
  */
18
7
  export const ErrorCodes = {
19
8
  /** Generic auth failure when no registry token resolved. Used by
@@ -95,18 +84,10 @@ export const ErrorCodes = {
95
84
  * vcs`. Either way the build backend has no way to compute a version
96
85
  * at pack time. The fix is to wire up the plugin. #301, #696. */
97
86
  PYPI_DYNAMIC_VERSION_NO_BACKEND: 'PIOT_PYPI_DYNAMIC_VERSION_NO_BACKEND',
98
- /** A pypi package declares `dynamic = ["version"]` and backs it with a
99
- * `[tool.hatch.version]` block whose source is a **file in the tree**
100
- * — a bare `path` (hatchling's default `regex` source) or
101
- * `source = "code"`. Both read the version off disk without
102
- * consulting `SETUPTOOLS_SCM_PRETEND_VERSION`, and no release step
103
- * rewrites the file (`write-version` is maturin-only), so the wheel
104
- * ships the committed literal rather than the planned version — and
105
- * nothing fails. `agent-transcript-viewer` published `0.0.0` to PyPI
106
- * this way while the plan said `0.1.0`. The fix is to switch the
107
- * source to `"vcs"` (with `hatch-vcs` in `[build-system].requires`),
108
- * which is why this is a separate code from
109
- * `PYPI_DYNAMIC_VERSION_NO_BACKEND`. #696. */
87
+ /** A pypi package backs `dynamic = ["version"]` with a
88
+ * `[tool.hatch.version]` source reading a file in the tree (bare `path`
89
+ * or `source = "code"`): it ignores `SETUPTOOLS_SCM_PRETEND_VERSION`, so
90
+ * the wheel ships the committed literal. Fix: `source = "vcs"`. #696. */
110
91
  PYPI_HATCH_VERSION_PATH: 'PIOT_PYPI_HATCH_VERSION_PATH',
111
92
  /** A maturin pypi package declares `[package.bundle_cli]` but
112
93
  * `[tool.maturin].include` does not cover the configured
@@ -170,6 +151,12 @@ export const ErrorCodes = {
170
151
  * same source-visibility expectation underpins the trusted-publisher
171
152
  * story on the other registries. */
172
153
  REPO_PRIVATE: 'PIOT_REPO_PRIVATE',
154
+ /** `ensureTag` (#407) found a package live on the registry with no
155
+ * matching tag on `origin`, tried to write and push one, and the push
156
+ * failed. Thrown rather than downgraded to a warning (#717): a release
157
+ * is not done until its tag is visible on the remote, so `publish` and
158
+ * `reconcile` must not exit 0 having silently left one unpushed. */
159
+ TAG_PUSH_FAILED: 'PIOT_TAG_PUSH_FAILED',
173
160
  };
174
161
  /**
175
162
  * Iterable form of the codes. Walked by tests for uniqueness/format
@@ -196,5 +183,6 @@ export const ALL_ERROR_CODES = [
196
183
  ErrorCodes.CRATES_PACKAGE_TOO_LARGE,
197
184
  ErrorCodes.REPO_URL_MISMATCH,
198
185
  ErrorCodes.REPO_PRIVATE,
186
+ ErrorCodes.TAG_PUSH_FAILED,
199
187
  ];
200
188
  //# sourceMappingURL=error-codes.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"error-codes.js","sourceRoot":"","sources":["../src/error-codes.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,MAAM,CAAC,MAAM,UAAU,GAAG;IACxB;;;8CAG0C;IAC1C,aAAa,EAAE,oBAAoB;IACnC;;;;;;kDAM8C;IAC9C,kBAAkB,EAAE,yBAAyB;IAC7C;;;;;0DAKsD;IACtD,sBAAsB,EAAE,6BAA6B;IACrD;;;;;;;2CAOuC;IACvC,iBAAiB,EAAE,wBAAwB;IAC3C;;;;;;;;0EAQsE;IACtE,oBAAoB,EAAE,2BAA2B;IACjD;;;;;;iCAM6B;IAC7B,uBAAuB,EAAE,8BAA8B;IACvD;;;;;;;;qDAQiD;IACjD,mBAAmB,EAAE,0BAA0B;IAC/C;;;;;yBAKqB;IACrB,kBAAkB,EAAE,yBAAyB;IAC7C;;;;gBAIY;IACZ,2BAA2B,EAAE,kCAAkC;IAC/D;;;;;;;sEAOkE;IAClE,+BAA+B,EAAE,sCAAsC;IACvE;;;;;;;;;;;mDAW+C;IAC/C,uBAAuB,EAAE,8BAA8B;IACvD;;;;kEAI8D;IAC9D,4BAA4B,EAAE,mCAAmC;IACjE;;;;uEAImE;IACnE,oBAAoB,EAAE,2BAA2B;IACjD;;;;uBAImB;IACnB,kBAAkB,EAAE,yBAAyB;IAC7C;;;;2BAIuB;IACvB,2BAA2B,EAAE,kCAAkC;IAC/D;;;qEAGiE;IACjE,iCAAiC,EAAE,wCAAwC;IAC3E;;;;;;kEAM8D;IAC9D,gCAAgC,EAAE,uCAAuC;IACzE;;;;;;;8BAO0B;IAC1B,wBAAwB,EAAE,+BAA+B;IACzD;;;;;;;gDAO4C;IAC5C,iBAAiB,EAAE,wBAAwB;IAC3C;;;;;yCAKqC;IACrC,YAAY,EAAE,mBAAmB;CACzB,CAAC;AAIX;;;GAGG;AACH,MAAM,CAAC,MAAM,eAAe,GAAyB;IACnD,UAAU,CAAC,aAAa;IACxB,UAAU,CAAC,kBAAkB;IAC7B,UAAU,CAAC,sBAAsB;IACjC,UAAU,CAAC,iBAAiB;IAC5B,UAAU,CAAC,oBAAoB;IAC/B,UAAU,CAAC,uBAAuB;IAClC,UAAU,CAAC,mBAAmB;IAC9B,UAAU,CAAC,kBAAkB;IAC7B,UAAU,CAAC,2BAA2B;IACtC,UAAU,CAAC,+BAA+B;IAC1C,UAAU,CAAC,uBAAuB;IAClC,UAAU,CAAC,4BAA4B;IACvC,UAAU,CAAC,oBAAoB;IAC/B,UAAU,CAAC,kBAAkB;IAC7B,UAAU,CAAC,2BAA2B;IACtC,UAAU,CAAC,iCAAiC;IAC5C,UAAU,CAAC,gCAAgC;IAC3C,UAAU,CAAC,wBAAwB;IACnC,UAAU,CAAC,iBAAiB;IAC5B,UAAU,CAAC,YAAY;CACxB,CAAC"}
1
+ {"version":3,"file":"error-codes.js","sourceRoot":"","sources":["../src/error-codes.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,MAAM,CAAC,MAAM,UAAU,GAAG;IACxB;;;8CAG0C;IAC1C,aAAa,EAAE,oBAAoB;IACnC;;;;;;kDAM8C;IAC9C,kBAAkB,EAAE,yBAAyB;IAC7C;;;;;0DAKsD;IACtD,sBAAsB,EAAE,6BAA6B;IACrD;;;;;;;2CAOuC;IACvC,iBAAiB,EAAE,wBAAwB;IAC3C;;;;;;;;0EAQsE;IACtE,oBAAoB,EAAE,2BAA2B;IACjD;;;;;;iCAM6B;IAC7B,uBAAuB,EAAE,8BAA8B;IACvD;;;;;;;;qDAQiD;IACjD,mBAAmB,EAAE,0BAA0B;IAC/C;;;;;yBAKqB;IACrB,kBAAkB,EAAE,yBAAyB;IAC7C;;;;gBAIY;IACZ,2BAA2B,EAAE,kCAAkC;IAC/D;;;;;;;sEAOkE;IAClE,+BAA+B,EAAE,sCAAsC;IACvE;;;8EAG0E;IAC1E,uBAAuB,EAAE,8BAA8B;IACvD;;;;kEAI8D;IAC9D,4BAA4B,EAAE,mCAAmC;IACjE;;;;uEAImE;IACnE,oBAAoB,EAAE,2BAA2B;IACjD;;;;uBAImB;IACnB,kBAAkB,EAAE,yBAAyB;IAC7C;;;;2BAIuB;IACvB,2BAA2B,EAAE,kCAAkC;IAC/D;;;qEAGiE;IACjE,iCAAiC,EAAE,wCAAwC;IAC3E;;;;;;kEAM8D;IAC9D,gCAAgC,EAAE,uCAAuC;IACzE;;;;;;;8BAO0B;IAC1B,wBAAwB,EAAE,+BAA+B;IACzD;;;;;;;gDAO4C;IAC5C,iBAAiB,EAAE,wBAAwB;IAC3C;;;;;yCAKqC;IACrC,YAAY,EAAE,mBAAmB;IACjC;;;;yEAIqE;IACrE,eAAe,EAAE,sBAAsB;CAC/B,CAAC;AAIX;;;GAGG;AACH,MAAM,CAAC,MAAM,eAAe,GAAyB;IACnD,UAAU,CAAC,aAAa;IACxB,UAAU,CAAC,kBAAkB;IAC7B,UAAU,CAAC,sBAAsB;IACjC,UAAU,CAAC,iBAAiB;IAC5B,UAAU,CAAC,oBAAoB;IAC/B,UAAU,CAAC,uBAAuB;IAClC,UAAU,CAAC,mBAAmB;IAC9B,UAAU,CAAC,kBAAkB;IAC7B,UAAU,CAAC,2BAA2B;IACtC,UAAU,CAAC,+BAA+B;IAC1C,UAAU,CAAC,uBAAuB;IAClC,UAAU,CAAC,4BAA4B;IACvC,UAAU,CAAC,oBAAoB;IAC/B,UAAU,CAAC,kBAAkB;IAC7B,UAAU,CAAC,2BAA2B;IACtC,UAAU,CAAC,iCAAiC;IAC5C,UAAU,CAAC,gCAAgC;IAC3C,UAAU,CAAC,wBAAwB;IACnC,UAAU,CAAC,iBAAiB;IAC5B,UAAU,CAAC,YAAY;IACvB,UAAU,CAAC,eAAe;CAC3B,CAAC"}
@@ -1,24 +1,8 @@
1
1
  /**
2
- * `putitoutthere fold-bundle` — synthesize the action-bundle commit
3
- * (#446, epic #442).
4
- *
5
- * Extraction of the identical Fold step both `release-npm.yml` and
6
- * `advance-v0.yml` carried inline (they differed only in the commit
7
- * subject). `dist-action/` is gitignored on main and exists only on tag
8
- * commits, so before a tag can point at a commit that has
9
- * `dist-action/index.js`, the freshly-built bundle is staged and committed
10
- * on top of HEAD.
11
- *
12
- * The new commit forwards the parent's full body under `subject` so any
13
- * `release:` trailer the operator wrote survives into HEAD — otherwise the
14
- * publish-time plan re-derivation reads a trailer-less bundle commit,
15
- * defaults the bump to `patch`, and silently downgrades the release (the
16
- * 0.2.0-landed-as-0.1.52 incident; notes/handoff/2026-04-24-dist-action.md).
17
- *
18
- * Throws when nothing is staged — `build:action` should always have
19
- * produced output, so an empty index is an unexpected state the release
20
- * must abort on rather than commit nothing (matches the bash
21
- * `git diff --cached --quiet` guard).
2
+ * `putitoutthere fold-bundle` — synthesize the action-bundle commit (#446).
3
+ * `dist-action/` is gitignored on main, so the built bundle is staged and
4
+ * committed onto HEAD, forwarding the parent's body so a `release:` trailer
5
+ * survives — otherwise plan re-derivation silently downgrades to `patch`.
22
6
  */
23
7
  export declare function foldActionBundle(opts: {
24
8
  cwd: string;
@@ -1 +1 @@
1
- {"version":3,"file":"fold-action-bundle.d.ts","sourceRoot":"","sources":["../src/fold-action-bundle.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAIH,wBAAsB,gBAAgB,CAAC,IAAI,EAAE;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,GAAG,OAAO,CAAC,MAAM,CAAC,CAW9F"}
1
+ {"version":3,"file":"fold-action-bundle.d.ts","sourceRoot":"","sources":["../src/fold-action-bundle.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH,wBAAsB,gBAAgB,CAAC,IAAI,EAAE;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,GAAG,OAAO,CAAC,MAAM,CAAC,CAW9F"}
@@ -1,24 +1,8 @@
1
1
  /**
2
- * `putitoutthere fold-bundle` — synthesize the action-bundle commit
3
- * (#446, epic #442).
4
- *
5
- * Extraction of the identical Fold step both `release-npm.yml` and
6
- * `advance-v0.yml` carried inline (they differed only in the commit
7
- * subject). `dist-action/` is gitignored on main and exists only on tag
8
- * commits, so before a tag can point at a commit that has
9
- * `dist-action/index.js`, the freshly-built bundle is staged and committed
10
- * on top of HEAD.
11
- *
12
- * The new commit forwards the parent's full body under `subject` so any
13
- * `release:` trailer the operator wrote survives into HEAD — otherwise the
14
- * publish-time plan re-derivation reads a trailer-less bundle commit,
15
- * defaults the bump to `patch`, and silently downgrades the release (the
16
- * 0.2.0-landed-as-0.1.52 incident; notes/handoff/2026-04-24-dist-action.md).
17
- *
18
- * Throws when nothing is staged — `build:action` should always have
19
- * produced output, so an empty index is an unexpected state the release
20
- * must abort on rather than commit nothing (matches the bash
21
- * `git diff --cached --quiet` guard).
2
+ * `putitoutthere fold-bundle` — synthesize the action-bundle commit (#446).
3
+ * `dist-action/` is gitignored on main, so the built bundle is staged and
4
+ * committed onto HEAD, forwarding the parent's body so a `release:` trailer
5
+ * survives — otherwise plan re-derivation silently downgrades to `patch`.
22
6
  */
23
7
  import { addForce, commitBody, commitWithBody, hasStagedChanges } from './git.js';
24
8
  export async function foldActionBundle(opts) {
@@ -1 +1 @@
1
- {"version":3,"file":"fold-action-bundle.js","sourceRoot":"","sources":["../src/fold-action-bundle.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAEH,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,cAAc,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AAElF,MAAM,CAAC,KAAK,UAAU,gBAAgB,CAAC,IAAsC;IAC3E,MAAM,OAAO,GAAG,EAAE,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC;IAClC,MAAM,QAAQ,CAAC,cAAc,EAAE,OAAO,CAAC,CAAC;IACxC,IAAI,CAAC,CAAC,MAAM,gBAAgB,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC;QACvC,MAAM,IAAI,KAAK,CACb,sFAAsF,CACvF,CAAC;IACJ,CAAC;IACD,MAAM,UAAU,GAAG,MAAM,UAAU,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACrD,MAAM,cAAc,CAAC,IAAI,CAAC,OAAO,EAAE,UAAU,EAAE,OAAO,CAAC,CAAC;IACxD,OAAO,CAAC,CAAC;AACX,CAAC"}
1
+ {"version":3,"file":"fold-action-bundle.js","sourceRoot":"","sources":["../src/fold-action-bundle.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,cAAc,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AAElF,MAAM,CAAC,KAAK,UAAU,gBAAgB,CAAC,IAAsC;IAC3E,MAAM,OAAO,GAAG,EAAE,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC;IAClC,MAAM,QAAQ,CAAC,cAAc,EAAE,OAAO,CAAC,CAAC;IACxC,IAAI,CAAC,CAAC,MAAM,gBAAgB,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC;QACvC,MAAM,IAAI,KAAK,CACb,sFAAsF,CACvF,CAAC;IACJ,CAAC;IACD,MAAM,UAAU,GAAG,MAAM,UAAU,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACrD,MAAM,cAAc,CAAC,IAAI,CAAC,OAAO,EAAE,UAAU,EAAE,OAAO,CAAC,CAAC;IACxD,OAAO,CAAC,CAAC;AACX,CAAC"}
@@ -1,17 +1,8 @@
1
1
  /**
2
- * Force-move a tag to a commit, on the local repo and the remote — the one
3
- * shared tag-move both floating-tag advancers use (#446, epic #442).
4
- *
5
- * The repo previously carried this two-line sequence twice in inline bash:
6
- * `release-npm.yml`'s "Move floating major tag" (advancing `v<major>` to
7
- * the latest release) and `advance-v0.yml`'s "Force-move v0" (advancing
8
- * `v0` to HEAD). Consolidating them here means the local-tag write and the
9
- * ref-scoped force-push can never disagree between the two sites.
10
- *
11
- * `git tag -f` overwrites the local tag; `git push --force origin
12
- * refs/tags/<name>` publishes that move, ref-scoped so it touches no other
13
- * tag. Force is intrinsic — a floating tag by definition moves, so the
14
- * remote update is a non-fast-forward the push must be allowed to make.
2
+ * Force-move a tag to a commit, locally and on the remote — the shared
3
+ * tag-move both floating-tag advancers use (#446, epic #442). The push is
4
+ * ref-scoped (`refs/tags/<name>`) so it touches no other tag; force is
5
+ * intrinsic, since a floating tag's remote update is a non-fast-forward.
15
6
  */
16
7
  import { type GitOptions } from './git.js';
17
8
  export declare function forceMoveTag(name: string, target: string, opts?: GitOptions): Promise<void>;
@@ -1 +1 @@
1
- {"version":3,"file":"force-move-tag.d.ts","sourceRoot":"","sources":["../src/force-move-tag.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAAY,KAAK,UAAU,EAAmB,MAAM,UAAU,CAAC;AAEtE,wBAAsB,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,GAAE,UAAe,GAAG,OAAO,CAAC,IAAI,CAAC,CAGrG"}
1
+ {"version":3,"file":"force-move-tag.d.ts","sourceRoot":"","sources":["../src/force-move-tag.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAY,KAAK,UAAU,EAAmB,MAAM,UAAU,CAAC;AAEtE,wBAAsB,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,GAAE,UAAe,GAAG,OAAO,CAAC,IAAI,CAAC,CAGrG"}
@@ -1,17 +1,8 @@
1
1
  /**
2
- * Force-move a tag to a commit, on the local repo and the remote — the one
3
- * shared tag-move both floating-tag advancers use (#446, epic #442).
4
- *
5
- * The repo previously carried this two-line sequence twice in inline bash:
6
- * `release-npm.yml`'s "Move floating major tag" (advancing `v<major>` to
7
- * the latest release) and `advance-v0.yml`'s "Force-move v0" (advancing
8
- * `v0` to HEAD). Consolidating them here means the local-tag write and the
9
- * ref-scoped force-push can never disagree between the two sites.
10
- *
11
- * `git tag -f` overwrites the local tag; `git push --force origin
12
- * refs/tags/<name>` publishes that move, ref-scoped so it touches no other
13
- * tag. Force is intrinsic — a floating tag by definition moves, so the
14
- * remote update is a non-fast-forward the push must be allowed to make.
2
+ * Force-move a tag to a commit, locally and on the remote — the shared
3
+ * tag-move both floating-tag advancers use (#446, epic #442). The push is
4
+ * ref-scoped (`refs/tags/<name>`) so it touches no other tag; force is
5
+ * intrinsic, since a floating tag's remote update is a non-fast-forward.
15
6
  */
16
7
  import { forceTag, pushTagRefForce } from './git.js';
17
8
  export async function forceMoveTag(name, target, opts = {}) {
@@ -1 +1 @@
1
- {"version":3,"file":"force-move-tag.js","sourceRoot":"","sources":["../src/force-move-tag.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAAE,QAAQ,EAAmB,eAAe,EAAE,MAAM,UAAU,CAAC;AAEtE,MAAM,CAAC,KAAK,UAAU,YAAY,CAAC,IAAY,EAAE,MAAc,EAAE,OAAmB,EAAE;IACpF,MAAM,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC;IACnC,MAAM,eAAe,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;AACpC,CAAC"}
1
+ {"version":3,"file":"force-move-tag.js","sourceRoot":"","sources":["../src/force-move-tag.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,QAAQ,EAAmB,eAAe,EAAE,MAAM,UAAU,CAAC;AAEtE,MAAM,CAAC,KAAK,UAAU,YAAY,CAAC,IAAY,EAAE,MAAc,EAAE,OAAmB,EAAE;IACpF,MAAM,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC;IACnC,MAAM,eAAe,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;AACpC,CAAC"}
package/dist/git.d.ts CHANGED
@@ -1,10 +1,7 @@
1
1
  /**
2
- * Thin wrapper around the `git` CLI for the ops putitoutthere needs.
3
- *
4
- * Stderr is captured and surfaced in thrown errors so failures are
5
- * diagnosable without re-running with --verbose.
6
- *
7
- * Issue #9. Plan: §13.6 (no-push tag model), §14.2 (last-tag resolver).
2
+ * Thin wrapper around the `git` CLI for the ops putitoutthere needs. Stderr is
3
+ * captured and surfaced in thrown errors so failures are diagnosable without a
4
+ * --verbose re-run. Issue #9. Plan: §13.6 (no-push tag model), §14.2.
8
5
  */
9
6
  import { type Semver } from './version.js';
10
7
  export interface GitOptions {
@@ -20,6 +17,14 @@ export declare function diffNames(from: string, to: string, opts?: GitOptions):
20
17
  export declare function tagList(glob: string, opts?: GitOptions): Promise<string[]>;
21
18
  export declare function createTag(name: string, sha: string, opts?: TagOptions): Promise<void>;
22
19
  export declare function pushTag(name: string, opts?: GitOptions): Promise<void>;
20
+ /**
21
+ * Whether `origin` already carries this tag — `git ls-remote --tags origin
22
+ * refs/tags/<name>`. The only source of truth `ensureTag` (#407) can use for
23
+ * "already done": `tagList` is local-only, so a tag created but never
24
+ * successfully pushed reads as present there even though `origin` has
25
+ * nothing, which is exactly the state a failed push leaves behind (#717).
26
+ */
27
+ export declare function remoteTagExists(name: string, opts?: GitOptions): Promise<boolean>;
23
28
  /**
24
29
  * `git fetch --tags --force origin` — refresh every remote tag, forcing
25
30
  * updates for tags that moved on the remote. The `--force` is load-bearing
@@ -85,16 +90,10 @@ export declare function commitWithBody(subject: string, body: string, opts?: Git
85
90
  */
86
91
  export declare function tagCommit(name: string, opts?: GitOptions): Promise<string>;
87
92
  /**
88
- * Find the highest-semver tag for a given package.
89
- *
90
- * Tag shape comes from the package's `tag_format` template (default
91
- * `{name}-v{version}`). We glob-filter, parse each candidate against
92
- * the template, and return the highest. Malformed candidates that
93
- * match the glob but not strict semver are skipped silently — they're
94
- * operator noise, not tool output.
95
- *
96
- * Returns the winning tag paired with its already-parsed `version` (so
97
- * callers never re-parse), or null when no tag for this package exists.
93
+ * Find the highest-semver tag for a given package, matching its `tag_format`
94
+ * template (default `{name}-v{version}`). Candidates that match the glob but
95
+ * not strict semver are skipped silently — operator noise, not tool output.
96
+ * Returns the winning tag with its already-parsed `version`, or null.
98
97
  */
99
98
  export declare function lastTag(packageName: string, tagFormat: string, opts?: GitOptions): Promise<{
100
99
  tag: string;
package/dist/git.d.ts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"git.d.ts","sourceRoot":"","sources":["../src/git.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAKH,OAAO,EAAe,KAAK,MAAM,EAAE,MAAM,cAAc,CAAC;AAExD,MAAM,WAAW,UAAU;IACzB,GAAG,CAAC,EAAE,MAAM,CAAC;CACd;AAED,UAAU,UAAW,SAAQ,UAAU;IACrC,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AA4CD,wBAAsB,UAAU,CAAC,IAAI,GAAE,UAAe,GAAG,OAAO,CAAC,MAAM,CAAC,CAEvE;AAED,wBAAsB,UAAU,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,GAAE,UAAe,GAAG,OAAO,CAAC,MAAM,CAAC,CAGpF;AAED,wBAAsB,aAAa,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,GAAE,UAAe,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CAMzF;AAED,wBAAsB,SAAS,CAC7B,IAAI,EAAE,MAAM,EACZ,EAAE,EAAE,MAAM,EACV,IAAI,GAAE,UAAe,GACpB,OAAO,CAAC,MAAM,EAAE,CAAC,CAInB;AAID,wBAAsB,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,GAAE,UAAe,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CAIpF;AAED,wBAAsB,SAAS,CAC7B,IAAI,EAAE,MAAM,EACZ,GAAG,EAAE,MAAM,EACX,IAAI,GAAE,UAAe,GACpB,OAAO,CAAC,IAAI,CAAC,CAGf;AAED,wBAAsB,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,GAAE,UAAe,GAAG,OAAO,CAAC,IAAI,CAAC,CAEhF;AAED;;;;;;GAMG;AACH,wBAAsB,cAAc,CAAC,IAAI,GAAE,UAAe,GAAG,OAAO,CAAC,IAAI,CAAC,CAEzE;AAED;;;;GAIG;AACH,wBAAsB,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,GAAE,UAAe,GAAG,OAAO,CAAC,IAAI,CAAC,CAEjG;AAED;;;;;GAKG;AACH,wBAAsB,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,GAAE,UAAe,GAAG,OAAO,CAAC,IAAI,CAAC,CAExF;AAED;;;;GAIG;AACH,wBAAsB,kBAAkB,CAAC,IAAI,GAAE,UAAe,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,CAIjF;AAED;;;;;;;;GAQG;AACH,wBAAsB,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,GAAE,UAAe,GAAG,OAAO,CAAC,IAAI,CAAC,CAEnF;AAID;;;;GAIG;AACH,wBAAsB,QAAQ,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,GAAE,UAAe,GAAG,OAAO,CAAC,IAAI,CAAC,CAErF;AAED;;;;;GAKG;AACH,wBAAsB,gBAAgB,CAAC,IAAI,GAAE,UAAe,GAAG,OAAO,CAAC,OAAO,CAAC,CAO9E;AAED;;;;;;;GAOG;AACH,wBAAsB,cAAc,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,GAAE,UAAe,GAAG,OAAO,CAAC,IAAI,CAAC,CAExG;AAID;;;GAGG;AACH,wBAAsB,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,GAAE,UAAe,GAAG,OAAO,CAAC,MAAM,CAAC,CAEpF;AAID;;;;;;;;;;;GAWG;AACH,wBAAsB,OAAO,CAC3B,WAAW,EAAE,MAAM,EACnB,SAAS,EAAE,MAAM,EACjB,IAAI,GAAE,UAAe,GACpB,OAAO,CAAC;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,GAAG,IAAI,CAAC,CAelD"}
1
+ {"version":3,"file":"git.d.ts","sourceRoot":"","sources":["../src/git.ts"],"names":[],"mappings":"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"}
package/dist/git.js CHANGED
@@ -1,10 +1,7 @@
1
1
  /**
2
- * Thin wrapper around the `git` CLI for the ops putitoutthere needs.
3
- *
4
- * Stderr is captured and surfaced in thrown errors so failures are
5
- * diagnosable without re-running with --verbose.
6
- *
7
- * Issue #9. Plan: §13.6 (no-push tag model), §14.2 (last-tag resolver).
2
+ * Thin wrapper around the `git` CLI for the ops putitoutthere needs. Stderr is
3
+ * captured and surfaced in thrown errors so failures are diagnosable without a
4
+ * --verbose re-run. Issue #9. Plan: §13.6 (no-push tag model), §14.2.
8
5
  */
9
6
  import { execCapture } from './utils/exec-capture.js';
10
7
  import { ExecError } from './utils/exec-error.js';
@@ -84,6 +81,18 @@ export async function createTag(name, sha, opts = {}) {
84
81
  export async function pushTag(name, opts = {}) {
85
82
  await run(['push', 'origin', name], opts);
86
83
  }
84
+ /**
85
+ * Whether `origin` already carries this tag — `git ls-remote --tags origin
86
+ * refs/tags/<name>`. The only source of truth `ensureTag` (#407) can use for
87
+ * "already done": `tagList` is local-only, so a tag created but never
88
+ * successfully pushed reads as present there even though `origin` has
89
+ * nothing, which is exactly the state a failed push leaves behind (#717).
90
+ */
91
+ export async function remoteTagExists(name, opts = {}) {
92
+ // `run` already trimEnds; no further trimming needed to tell empty from non-empty.
93
+ const out = await run(['ls-remote', '--tags', 'origin', `refs/tags/${name}`], opts);
94
+ return out.length > 0;
95
+ }
87
96
  /**
88
97
  * `git fetch --tags --force origin` — refresh every remote tag, forcing
89
98
  * updates for tags that moved on the remote. The `--force` is load-bearing
@@ -180,16 +189,10 @@ export async function tagCommit(name, opts = {}) {
180
189
  }
181
190
  /* -------------------------- last-tag resolver -------------------------- */
182
191
  /**
183
- * Find the highest-semver tag for a given package.
184
- *
185
- * Tag shape comes from the package's `tag_format` template (default
186
- * `{name}-v{version}`). We glob-filter, parse each candidate against
187
- * the template, and return the highest. Malformed candidates that
188
- * match the glob but not strict semver are skipped silently — they're
189
- * operator noise, not tool output.
190
- *
191
- * Returns the winning tag paired with its already-parsed `version` (so
192
- * callers never re-parse), or null when no tag for this package exists.
192
+ * Find the highest-semver tag for a given package, matching its `tag_format`
193
+ * template (default `{name}-v{version}`). Candidates that match the glob but
194
+ * not strict semver are skipped silently — operator noise, not tool output.
195
+ * Returns the winning tag with its already-parsed `version`, or null.
193
196
  */
194
197
  export async function lastTag(packageName, tagFormat, opts = {}) {
195
198
  const candidates = await tagList(tagGlob(tagFormat, packageName), opts);
package/dist/git.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"git.js","sourceRoot":"","sources":["../src/git.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"git.js","sourceRoot":"","sources":["../src/git.ts"],"names":[],"mappings":"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"}