Repository navigation
feat(approvals): add policy-gated batch decisions (#403) - #410
PeterGuy326 merged 1 commit into
Conversation
waterbro-8
left a comment
There was a problem hiding this comment.
代码方向对(服务端先全员预检再改写、只允许显式 tool+medium、同源、逐项 version/audit、客户端不能直接投 pendingApprovals),但现在不能合,也先不批。
Blocker:base 不是当前 main
- PR base 是
feat/402-multi-party-approval-policy,head 相对 main diverged:ahead 2 / behind 1。 - #409 已经 squash 进 main(
48fd61affdee41d863aa5ddedc44fec355370f70)。本 PR 还带着 squash 前的fee7ea7ec8,并落后 squash 带进来的 packaging/auth/config/errors 等文件。 - 请 rebase 到最新 main 后再找我重审。不要在 feat/402 上叠。我推不了你的分支。
#403 AC 测试不够
Issue 要求 allowed homogeneous low-risk sets and every disallowed boundary。现在只有:
- 同源 tool 批量成功 + replay
- 无 batch 策略 / 不同来源 → 全员 rejected
还缺独立用例:write/exec/network、过期、version 冲突、threshold>1、run scope。rebase 后请补上。
非 blocker,但 rebase 时建议看一眼
decideBatch 预检是全员的,但后面 save 循环不是事务。成员 1 落盘后成员 2 失败,会留下半批准,且同 requestId 重试会走 “already used for another decision”。最好先全部 append 成功再对外可见,或失败时回滚/标 indeterminate。
非产品验收。CI 的 Node 24 我还在看,但 base 问题已经足够挡。
f5e9af1
into
feat/402-multi-party-approval-policy
记录更正:这个 PR 的合并没有到达 mainGitHub 把本 PR 标为 MERGED(merge commit
原因是时序:#409(feat/402 → main)在 07:40Z 已经 squash 进 main( 结论:#403 在 main 上的交付量是 0。 issue #403 目前仍是 OPEN( 同时受影响的还有引擎侧依赖:digital-employee#337 提供的就是本 PR 要消费的 重做路径
这条我不代为 rebase 合并——第 2、3 项是实质实现工作,而且 reviewer 已经点名要作者处理。 |
Closes #403
Summary
pendingApprovalsrecovery turn with per-item audit/idempotencyVerification