Skip to content

[P2] Event/通知/Webhook 与 Agent 协作原语补齐 #81

Description

@LIghtJUNction

2026-09-28 完成度复核:部分完成,重新打开

本 issue 先前被标为 completed,但正文及最后两条进度评论均明确说明完整验收未完成。本轮按实际范围恢复 open,不撤销已完成切片。

核验基线:main 13c562ea05d273e618b1ea06b9e452da79d4439f;完整 CI 36384948145 success。本轮下载并核验四份产物 SHA-256、分片 manifest 与逐项 JUnit node ID:1,244 core + 8 conformance,零失败/错误/跳过、无遗漏/重复;这是该源码树的回归证据,不是生产投递验收。

已完成,后续必须保留

剩余验收(不删减原范围)

  • 通知偏好、多来源去重、撤权后逐字段裁剪、未配置零外发;真实 SMTP/Webhook 接收端的成功/失败/不确定/重试/恢复矩阵。
  • Domain Event 独立 capability、owner/证书逐次重验;正式事件覆盖与公网 SSRF/DNS/逐跳重定向/私网拒绝、secret 零泄露。
  • request/offer/proposal/receipt/工作 checkpoint/watch 的状态、独立 Revision/Relation/Event、通知及恢复契约;proposal accept 重验当前权限和 revision。
  • handoff/lease 等已归档条款持续回归;协作 lease 不是 worker 租约或排他写锁,不授权限;Sync checkpoint 不冒充工作 checkpoint。
  • 主体路径、CLI、默认、doctor/selftest、PostgreSQL 恢复和完整 CI 对齐。仅用隔离 SMTP sink/受控测试接收端,不隐式启用生产外发。

并行归属与边界

任务 B(市场、存储、通知与协作)主责;任务 C 只负责公共 CLI/Registry 接线与最终串行合并。workers/effects.py、workers/leases.py 的业务改动由 B 维护;任务 A 的恢复隔离接线须交叉审查,不允许覆盖现有租约栅栏。

原设计疑问仍需形成契约:哪些事件可订阅,敏感变化发最小引用还是静默;不同 lease 信任层必须分离。只修切片使用 Refs,不因绿色 CI 自动关闭本总体验收 issue。无生产部署或真实外部通知。

依据:权威设计第 12、15 章 https://docs.google.com/document/d/1EM5Qr5qdg6tAFi2wvY0EBm6zxMj6DTBMc_dybU5qkz0/edit 。

Activity

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

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions