npm 发布与 tag 推送已成功,但 GitHub 创建 Release 返回 502,导致整个发布任务失败。实际调用实现位于 @icebreakers/monorepo@5.5.0。
失败现场:https://github.com/sonofmagic/weapp-tailwindcss/actions/runs/34748944107
相关任务:https://github.com/sonofmagic/weapp-tailwindcss/actions/runs/34748944100
Related to #848;本 Issue 仅讨论 GitHub Release 请求恢复,不重复提交 provenance/OIDC 问题。
复现
- 对已完成 npm 发布和 tag 推送的流程,在 GitHub Release POST 请求注入 502 或网络断开。
- 分别模拟服务端未创建,以及已创建但响应丢失。
- 当前请求直接失败,重跑整个 npm 发布流程不能保证安全恢复。
建议与验收
- Release GET/POST/PATCH 对网络错误、429、5xx 最多尝试四次,指数退避,遵守 Retry-After(秒/HTTP 日期)和限流 reset 提示;等待前不发恢复查询。
- POST 响应不确定时,先按 tag 查询;已创建则返回已有 Release,不再次 POST。
- 保留 422 并发重复创建后的查询恢复;普通权限或校验错误不进行创建重试。
- 覆盖 502 后成功、响应正文中断、无效响应、限流、重试耗尽、永久错误以及已有 Release PATCH 重试。
- 重试范围仅限 GitHub API,禁止重试整个 npm publish 流程。
消费方可复现 pnpm 补丁与回归:sonofmagic/weapp-tailwindcss#1197 。
npm 发布与 tag 推送已成功,但 GitHub 创建 Release 返回 502,导致整个发布任务失败。实际调用实现位于
@icebreakers/monorepo@5.5.0。失败现场:https://github.com/sonofmagic/weapp-tailwindcss/actions/runs/34748944107
相关任务:https://github.com/sonofmagic/weapp-tailwindcss/actions/runs/34748944100
Related to #848;本 Issue 仅讨论 GitHub Release 请求恢复,不重复提交 provenance/OIDC 问题。
复现
建议与验收
消费方可复现 pnpm 补丁与回归:sonofmagic/weapp-tailwindcss#1197 。