Skip to content

fix(desktop): approval timeout/stale-click close events (#4250) - #4264

Merged
topcheer merged 1 commit into
mainfrom
fix/issue-4250
Oct 16, 2026
Merged

topcheer merged 1 commit into
mainfrom
fix/issue-4250

Conversation

@topcheer

Copy link
Copy Markdown
Owner

根因

审批 15 分钟超时只在 agent 侧收场(Deny+continue):broker 无 onCancel 钩子、finishRun 只推全局 StatusIdle——桌面模态框(全屏遮罩)与移动审批卡(键控同 ID result)永久悬挂;迟到点击 ResolveApproval ok=false 早退,决策静默丢弃且移动端连 PushTunnelApprovalResult 都不执行。

修(issue 方向三落点)

  1. RequestApproval 超时返回后(approvalCtx.Err()!=nil):补发 approval:cancel(reason=timeout)+ PushTunnelApprovalResult(id,"timeout")——双端同步收场
  2. RespondApproval ok=false(桌面迟到点击):同款 cancel(reason=stale)+tunnel 镜像
  3. HandleMobileApprovalResponse ok=false(移动迟到点击):补 PushTunnelApprovalResult(id,"stale")——唯一能清移动卡片的路径不再被早退跳过

前端消费面零改动(Layout.tsx 既有 approval:cancel 监听;移动端同 ID result 即清卡)。ask_user 同形面 issue 未报,PR 注明留谱系。

验证

伴测(stale 双端通知直证)+wailskit 全包 11.6s ok+build 绿。

Closes #4250

…UI ends (#4250)

Co-Authored-By: ggcode <noreply@ggcode.dev>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[business-logic] 审批 15 分钟超时后双端 UI 悬挂且迟到决策被静默丢弃(无关闭事件)

1 participant