Skip to content

[Mastra ME05] 危险操作与用户问答可持久挂起并准确恢复 #477

Closed

Description

@1123786563

Parent

Spec: #472 — 内置 Agent 执行迁移 Mastra。本 Issue 是其正式子 Issue。

What to build

用户看到工具动作和参数,批准、拒绝或补充回答;刷新或服务重启后仍能继续准确的待办,不重复执行外部动作。

Acceptance criteria

  • 审批/问答挂起前保存 continuation 与受保护 snapshot 引用,关联当前 scope、Bot、Run/Attempt/generation、稳定 operationId、参数摘要和引擎版本。
  • 用户看到的动作/参数与实际执行完全一致;篡改参数、他人批准、来源撤权或旧 generation 的恢复被拒绝。
  • 审批等待和问答等待分别展示 waiting_approval/suspended;只有正式结果持久化及费用确认后才允许 succeeded。
  • 两个并发恢复者只有一个能获得 CAS claim;重复点击、重复 webhook、刷新和重启不导致已确认外部操作重做。
  • 合法恢复跨 Attempt 保留 operationId;已完成 receipt 复用,外部可能已生效但结果未知时显示待处置,不自动重放。
  • 独立进程/实例从持久存储恢复,过期 claim 按 receipt 证据处理;版本不兼容/缺快照明确隔离,不反序列化执行猜测载荷。
  • 拒绝、过期、停止及存储失败遵守原行为,不能先发布可恢复状态再发现缺恢复数据;日志/快照不泄露模型秘密。

Blocked by

Scope boundary

通用审批与问答恢复,包含必要 UI;不做任意模型 token 的断点续算,不声称外部系统 exactly-once。

Interfaces

  • Consumes:前置票经审查的实际交付合同,以及父 Spec 的身份、预算、消息与恢复约束。
  • Produces:versioned continuation、恢复 claim/receipt/未知结果合同,客户端等待与恢复事件。
  • Responsibility:backend_implementer / frontend_implementer;相应只读验证者 + 独立 Spec/质量 reviewer。

Verification

现有审批 UI 的批准/拒绝/问答/刷新流程,另测两个实例抢恢复、落盘间故障、退出重启、撤权及未知副作用。

Failure handling

无法证明外部效果时待人工或供应商证据核对;不靠新 attempt 自动重复。

Acceptance mapping

父 Spec:A06, A18, A19。既有实施计划关联:T6, T8, T12。Issue 是完整业务切片,计划 Task 是票内或前置工程步骤,两者不一一等同。

Handoff notes

  • 方案、测试 seam 与拆票已由用户于 2026-10-19 确认,按该范围登记 Issue。ready-for-agent 只表示规格可接手,不表示依赖已完成、已实现或已获上线授权。
  • 使用根 CONTEXT 的术语,遵守公司/团队/本人/逻辑 Bot、计费准入、个人记忆和测试运行器 ADR;不得因框架替换重定权威。
  • 每票保留独立可演示的行为;跨端时先固定事件/状态接口,再按专业角色安排票内实现 Task,不把业务票另拆成数据库/后端/前端水平交付。
  • 领取前核验前置代码及其同哈希验证/Review 已集成;关闭状态不是实现证据,外部引用不是自动扩大的实施范围。
  • 按仓库 writing-plans/SDD/独立 Review/OCR 流程实施;无提交授权用完整未提交增量检查点。该流程在真正实施时适用,本 Issue 登记不启动实现。
  • 验证由 e2e 统一调度,native/driven 清单与实际用例数对账,数据库仅用明确的一次性受限角色 fixture;skip/缺环境/零用例不算通过。
  • 结束或中断记录 HEAD、范围、完整 patch/新增文件及哈希、实际命令与结果、Review 和限制,方便新 Agent 恢复;不擅自提交、推送、合并、生产导入、部署或关闭其他 Issue。

Activity

  1. 1123786563 commented on Oct 23, 2026

    @1123786563
    OwnerAuthor

    完成关闭(用户 2026-10-23 授权)。

    • 实现:已全部并入本地 main(迁移 mastra 波终验 402 pass / 0 fail、34 文件;迁移范围 typecheck 0 错)。
    • 验收:本票经独立只读评审闭环;2026-10-23 完成度独立审计判定「ME05 完成」,0 条 AC 证据被证伪。
    • 证据:docs/plans/2026-10-19-mastra-execution-run/me477*/report.md 与 ledger.md、completion-audit.md(main 仓库内)。
    • 披露的遗留(不阻塞票面验收)见 completion-audit.md 缺口清单(真浏览器整链、生产切换窗口、R1 tenancy 决策等)。

    🤖 Generated with Claude Code

  2. 1123786563 commented on Oct 23, 2026

    @1123786563
    OwnerAuthor

    更正上一条评论中的证据路径笔误:应为 docs/plans/2026-10-19-mastra-execution-run/me05/report.md(me05 对应本票)。

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or requestready-for-agentSpecified and ready for agent implementation

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions