feat: sync latest ARR implementation

This commit is contained in:
Wyndham ARR
2026-07-31 15:11:42 +08:00
parent d6f8a747fa
commit bf7939dd1a
185 changed files with 17527 additions and 2260 deletions

View File

@@ -1,4 +1,6 @@
# Super Agent 结果回写与业务落库合同
# ARR1 历史文档 — Super Agent 结果回写与业务落库合同
> 仅作兼容与迁移审计。ARR2.0 没有 Agent 回调路由,本地工件直接进入通用 `DeliveryEnvelope` 验证边界。
更新时间2026-07-28
@@ -28,7 +30,7 @@ Content-Type: application/json
-> 最后切换 current_daily_versions
```
输入方向是 ARR 代码直接上传 XML 到私有 OSS,然后在 Agent message 中传入一个 `oss_attachments` 描述对象。对象含 bucket、endpoint、object key、哈希、字节数与任务 IDOSS AccessKey 只存在 ARR 进程与 `fetch_oss_file` 的 credential provider 中。
输入方向是 ARR 代码直接上传 XML,把 committed 源对象设为 `public-read`,然后在 Agent message 中传入一个 `oss_attachments` 描述对象。对象含 bucket、public endpoint、object key、ARR 生成的无签名 HTTPS URL、哈希、字节数与任务 ID`fetch_oss_file` 原样读取该公网 URL不使用 OSS Provider。ARR 的写入 AccessKey 只存在 ARR 进程中。
结果方向采用 runtime 主动回调,不依赖 Open API 的 `final_content`。后者在真实服务上可能为 `null`,也无法让 ARR 读取 Agent 沙箱的本地文件。
@@ -65,7 +67,7 @@ Agent 的业务失败也可以回写,但只记录失败 delivery、工件和
- `ARR_OBJECT_PREFIX``ARR_AGENT_OUTPUT_PREFIX`
- OSS SDK 的 RAM/STS 凭据环境变量。
HMAC 密钥不能复用 `DEERFLOW_OPEN_API_KEY`。OSS bucket 必须配置服务端加密并保持 versioning Off允许部署方明确选择 `public-read` bucket,但永远拒绝 `public-read-write`。每个 ARR 新对象都会显式设置 private ACL,因此不会继承 bucket 的公开读取权限
HMAC 密钥不能复用 `DEERFLOW_OPEN_API_KEY`本集成要求 OSS bucket 为用户确认的 `public-read`配置服务端加密并保持 versioning Off`private` `public-read-write` bucket 都会被 readiness 拒绝。只有 committed 源 XML 显式设置 `public-read` ACL暂存对象和处理输出显式设置 `private` ACL。
本机部署把 OSS AccessKey、Agent Open API key 和回调 HMAC 保存到 macOS 登录钥匙串,`agent-writeback.env` 只保存非敏感路由。LaunchAgent 固定使用 Keychain account `arr-web`,读取的 service 分别为 `com.chillishark.arr.oss-access-key-id``com.chillishark.arr.oss-access-key-secret``com.chillishark.arr.deerflow-open-api-key``com.chillishark.arr.agent-result-hmac`;任何交接文档、日志和项目文件都不得写出实际值。