修复失败刷新恢复与长会话恢复入口 - #92
Conversation
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: 97e849c117
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
| onAbandonInterrupted: () => Promise<void> | void; | ||
| }) { | ||
| if (streamRecovery) { | ||
| const hasPartialReply = hasPartialRecoveryReply(streamRecovery.reply); |
There was a problem hiding this comment.
Keep failed continuations retry-only
When continuing an interrupted turn fails before emitting another token, ChatService.fail_turn preserves the previous partial reply but records the turn as failed. After reload, this reply-only check consequently exposes “从断点继续”; however, ChatService._validate_turn_command rejects continuation targets whose status is not interrupted, so clicking it only produces an error. Carry the restored turn status into the recovery state and offer continuation only for interrupted turns, while leaving failed turns retry-only.
Useful? React with 👍 / 👎.
范围
仅修复 Study Agent 主学习工作台的恢复闭环。Closes #91。
修复
failed时,刷新后恢复为 retry-only 状态failed/interrupteddurable status回归
合并门禁
保持 Draft,等待完整 pytest、RAG K1、Ruff、detect-secrets、mypy、frontend、browser journeys 与 real-stack 全绿。