A staged release reads as live while a newer 5.4 rolling deploy is already live on its node
维护者通常 2 天内回复
还没有人认领这个 Issue。
评估
- 难度
- 2/5
- 预计耗时
- 1-3 小时
- 新手友好度
- 78/100
- Issue 类型
- 缺陷
- 描述清晰度
- 描述清楚
- 活跃度
- 活跃
- 技术栈
- typescript
调研方向
从 src/features/instance/config/deployments/functions/stagedRelease.ts 和 StagedReleaseDetail 组件开始;追踪后续的 rolling_out 部署如何影响已暂存 release 的状态和 Activate 控件。然后阅读 src/integrations/api/instance/deployments/types.ts 中关于 rolling_out 的文档,并扩展 stagedRelease.test.ts,覆盖另一个 release 后续进行 rolling deploy 的情况。完成标准是:当 B 已在接收它的节点上 live 时,面板不再称 A 为 live,并且现有的激活行为也得到覆盖。
由索引模型根据 Issue 内容生成。
描述
Problem
On Harper 5.4, a staged release reads as live while a newer rolling deploy of the same component is already running on the node that received it.
stagedReleaseState (src/features/instance/config/deployments/functions/stagedRelease.ts:45-74) counts a deploy still in progress as changing nothing ("A deploy still running does not count"). Only a success later deploy makes the staged release replaced, and only failed or partial makes it uncertain. Before 5.4 that held, because a running deploy hadn't swapped yet. A 5.4 rolling deploy is different: it reads rolling_out while it is already live on the receiving node and its activation job takes it to the other nodes one at a time (src/features/instance/applications/DESIGN.md, and the rolling_out doc in src/integrations/api/instance/deployments/types.ts).
Steps
- Activate staged release A of a component. It ends
success. - Start a certified rolling deploy B of the same component, which isn't an activation of A (no
activated_from). While it readsrolling_out, open A in Config → Deployments.
Expected: the panel says another deploy is taking over, live on the node that received it.
Actual: StagedReleaseDetail (components/StagedReleaseDetail.tsx:57-61) says A is live. It also hides Activate (:80) until B ends success or partial.
Hiding Activate during a rolling deploy is arguably right, since a second activation would start another rolling restart. The wrong part is the "live" claim. stagedRelease.test.ts covers a rolling_out activation of the staged release itself, and a later partial, but not a later rolling_out deploy of something else.
Context
Found by a cross-model review of HarperFast/studio#2031. It reached that branch through its merge of stage, which brought in #2060 (5.4 rolling statuses), so it isn't that PR's change.
Review-Deferral: 1442a057ba5e7606 severity=minor category=correctness
🤖 Generated by Claude Code (Claude Opus 5.5); posted via @dawsontoth.
- 主要语言
- TypeScript
- 星标
- 5
- 派生
- 4
- 平均合并
- 1 天 20 小时
- 30 天内合并 PR
- 140
环境准备
- 没有 Dockerfile 或 Docker Compose 文件
- 没有 Pull Request 模板
- 阅读贡献指南
从这里开始
- 先读完整个 Issue,再读项目的贡献指南。
- 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
- Fork 仓库,在一个分支上完成修改。
- 提交 Pull Request,并在描述里引用这个 Issue 编号。
HarperFast/studio 的其他 Issue
-
难度 2/5 1-3 小时 新手友好度 74/100
HarperFast/studio#2067 ·
维护者通常 2 天内回复
-
难度 2/5 1-3 小时 新手友好度 82/100
HarperFast/studio#2053 ·
维护者通常 2 天内回复
-
难度 2/5 1-3 小时 新手友好度 65/100
HarperFast/studio#2026 ·
维护者通常 2 天内回复
-
难度 2/5 1-3 小时 新手友好度 77/100
HarperFast/studio#2021 ·
维护者通常 2 天内回复
-
难度 2/5 1-3 小时 新手友好度 77/100
HarperFast/studio#1993 ·
维护者通常 2 天内回复
查看 HarperFast/studio 的全部 Issue
相似的 Issue
-
难度 2/5 1-3 小时 新手友好度 91/100
marimo-team/marimo#11768 ·
维护者通常 1 天内回复
-
enhancement good first issue priority: high size: XS
难度 2/5 1-3 小时 新手友好度 85/100
维护者通常 1 天内回复
-
clawsweeper:needs-maintainer-review clawsweeper:needs-product-decision clawsweeper:no-new-fix-pr clawsweeper:source-repro impact:ux-friction issue-rating: 🦞 diamond lobster P2
难度 2/5 1-3 小时 新手友好度 68/100
openclaw/openclaw#195577 · 1 条评论 · 1 个 reaction ·
维护者通常 1 天内回复
-
[Studio feedback] 对话内容向下滚动时执行过程吸顶时,由于背景色是透明的,导致执行过程标题与下面的具体执行内容重叠,导致了两行信息重叠显示;建议执行过程的背景色设置为会话界面的背景未关闭bug from-studio
难度 2/5 1-3 小时 新手友好度 66/100
esengine/DeepSeek-Reasonix#15044 ·
维护者通常 1 天内回复
-
Web wizard: "Launch without Sandbox" can switch a Structured create to Terminal in the same click未关闭area:web bug needs-triage P3
难度 2/5 1-3 小时 新手友好度 78/100
agent-of-empires/agent-of-empires#5489 · 1 条评论 · 1 个 reaction ·
维护者通常 1 天内回复