148 lines
7.2 KiB
Plaintext
148 lines
7.2 KiB
Plaintext
Heicode 今日工作总结与后续计划
|
||
日期:2026-05-02
|
||
工作区:/Volumes/macOS/GO/heicode
|
||
分支策略:未新建分支,所有工作均在当前 main 上完成
|
||
|
||
一、今日完成简介
|
||
|
||
1. 项目主线梳理
|
||
- 已确认 docs/heicode.md 与 docs/plan.md 是当前实施主线。
|
||
- 已明确旧 Agnet API 草案、旧 M1-M5 计划、旧架构说明不作为当前实施依据。
|
||
- 已恢复 docs/README.md 为主线文档入口,并加入 Agnet 平台请求契约文档入口。
|
||
|
||
2. P0 文档边界收敛
|
||
- 已完成 P0:文档入口与实施依据收敛。
|
||
- 已清理 docs 下临时 sync-conflict 文档,当前未发现 docs 目录下残留同步冲突文件。
|
||
- 已提交:912e315 docs: converge heicode plan entrypoint。
|
||
|
||
3. P1 Manager 资源模型最小实现
|
||
- 已实现 Manager 侧最小 Resource Binding / Resource Grant 后端能力。
|
||
- 新增资源模型:ResourceBinding、ResourceGrant。
|
||
- 已加入 GORM 自动迁移。
|
||
- 新增认证 API:/api/resources 与 /api/resource-grants。
|
||
- 支持的资源类型包括:git、sk、project_document、cloud_account、cloud_resource。
|
||
- 资源授权可表达 tenant/project/resource 到 role/子 Agnet 的最小权限关系。
|
||
- 已实现 secret_ref-only 原则:只保存密钥引用,不保存明文密钥。
|
||
- 已加入校验,拒绝 metadata、permission_scope、constraints 中出现 password、token、secret、private_key、access_key、credential 等明文敏感字段。
|
||
|
||
4. Agnet 平台请求参数文档
|
||
- 已新增文档:docs/integration/agnet-platform-request-contract.md。
|
||
- 该文档说明 Manager 主动请求 Agnet 平台时需要携带的参数。
|
||
- 覆盖内容包括:
|
||
- 创建子 Agent 部署 POST /api/agnet/deployments。
|
||
- orchestration_plan、agents、sk_sources、runtime_execution、sk_access_policy、resource_grants 字段说明。
|
||
- secret_ref、安全边界、租户/项目边界、预算与模型约束。
|
||
- 部署状态查询、停止部署。
|
||
- 日志接口:批量日志、实时 SSE 日志流。
|
||
- 监控接口:项目 dashboard snapshot、单部署 metrics。
|
||
- 事件接口、审计日志接口。
|
||
- SK 快照解析与查询接口。
|
||
- 已提交:ab71d5b docs: add agnet platform request contract。
|
||
|
||
5. 团队协作与校验
|
||
- 已启动并完成 5 个 OMX worker 的协作任务。
|
||
- 5 个 worker 均已完成并关闭,团队已 graceful shutdown。
|
||
- 当前 main 分支 ahead origin/main 15 个提交。
|
||
- 当前工作区干净。
|
||
|
||
二、今日验证情况
|
||
|
||
已通过的校验:
|
||
- git diff --check:通过。
|
||
- gofmt changed backend files:通过。
|
||
- go vet ./controller ./model ./router:通过。
|
||
- go test ./controller ./model ./router:通过。
|
||
- 重点 controller/model/router 变更包测试:通过。
|
||
- docs Markdown fence 检查:通过。
|
||
|
||
已知未通过但不属于本次改动直接引入的问题:
|
||
- go test ./... 存在历史/环境相关失败:
|
||
1. heicode 根包 main.go embed 依赖 web/classic/dist,但当前环境缺少该构建产物。
|
||
2. relay/channel/claude 相关既有测试失败。
|
||
3. relay/helper stream scanner 相关既有测试失败。
|
||
- website/frontend typecheck/lint 在部分 worker 环境中因依赖未安装或 bun 不存在无法完整运行。
|
||
|
||
三、资源使用情况
|
||
|
||
1. 本地开发资源
|
||
- 使用当前外置盘工作区:/Volumes/macOS/GO/heicode。
|
||
- 使用 Git 当前 main 分支,无新分支。
|
||
- 使用 Go 后端测试、gofmt、go vet 完成验证。
|
||
- 使用 OMX team 5 worker 协作完成分析、实现、测试、文档和验证任务。
|
||
|
||
2. 数据库与缓存资源
|
||
- PostgreSQL 与 Redis 被确认为项目运行资源。
|
||
- 本次没有把 PostgreSQL、Redis 的真实连接信息写入代码、文档、Git、日志或提交。
|
||
- 本次本地验证未直接连接生产 PostgreSQL 或 Redis。
|
||
- 后续如需线上验证,应从 VM 环境变量或 Secret Store 临时读取,不应硬编码到仓库。
|
||
|
||
3. 云与部署资源
|
||
- 当前未执行生产 VM SSH 部署。
|
||
- 当前未对 Azure PostgreSQL、Redis、AKS 或其他云资源执行写操作。
|
||
- 当前未消耗可量化的线上运行资源。
|
||
- 本次新增的资源模型与 Agnet 请求契约为后续生产部署和平台联调准备。
|
||
|
||
4. Git 资源
|
||
- 当前 main 相对 origin/main ahead 15 个提交。
|
||
- 未新建分支。
|
||
- 尚未执行 git push。
|
||
- 目标远端仍应使用既有 origin,推送时不得把密码写入 remote URL、命令、脚本或日志。
|
||
|
||
四、部署情况
|
||
|
||
1. 当前部署状态
|
||
- 代码和文档已在本地 main 完成并提交。
|
||
- OMX team 已完成并关闭。
|
||
- 尚未推送到远端仓库。
|
||
- 尚未 SSH 到生产 VM 执行部署。
|
||
- 尚未执行 Docker/服务重启/迁移等生产动作。
|
||
|
||
2. 当前可部署基础
|
||
- P0 文档边界已收敛。
|
||
- P1 Manager 资源模型最小后端能力已实现。
|
||
- Manager → Agnet 平台接口参数文档已补齐,包含日志和监控接口。
|
||
- 变更包 controller/model/router 的测试与 vet 已通过。
|
||
|
||
3. 部署前阻塞/风险
|
||
- 需要确认是否允许将 main 推送到指定 Git 仓库。
|
||
- 需要确认生产 VM 当前运行方式、服务名、docker compose 文件与环境变量状态。
|
||
- 需要在 VM 上使用现有环境变量读取 PostgreSQL/Redis 配置,禁止写入仓库。
|
||
- 需要处理或确认 go test ./... 的既有失败是否影响生产发布。
|
||
- 如部署需要前端 embed 产物,需要在部署流程中构建 web/classic/dist 或确认当前生产镜像构建流程会生成该目录。
|
||
|
||
五、后续需要完成简介
|
||
|
||
1. Git 同步
|
||
- 在不新建分支的前提下,将当前 main 推送到指定远端。
|
||
- 推送过程必须使用安全凭据输入方式,不能把密码写入 remote URL、shell history、脚本或日志。
|
||
|
||
2. 生产部署
|
||
- SSH 到生产 VM。
|
||
- 在 VM 上通过环境变量确认 PostgreSQL、Redis、Manager 运行配置。
|
||
- 使用仓库更新方式拉取当前 main。
|
||
- 执行生产构建、数据库迁移、服务重启或 docker compose 更新。
|
||
- 部署后检查服务健康、日志、API 可用性。
|
||
|
||
3. P1 后续完善
|
||
- 将 Resource Binding / Resource Grant 与现有项目、用户、Agnet 部署流更紧密打通。
|
||
- 完善资源授权 revoke/disable/status transition。
|
||
- 补充跨数据库兼容验证,尤其 PostgreSQL 线上迁移验证。
|
||
- 补充前端资源绑定与授权页面,避免展示任何 secret。
|
||
|
||
4. Agnet 平台联调
|
||
- 按 docs/integration/agnet-platform-request-contract.md 与 Agnet 平台确认最终字段。
|
||
- 联调创建部署、查询状态、停止部署、日志拉取、监控快照、事件、审计日志。
|
||
- 明确哪些接口由 Manager 内部提供,哪些接口由 Agnet 平台提供。
|
||
- 确认 Agnet 平台对日志和监控返回的脱敏策略。
|
||
|
||
5. 测试与质量
|
||
- 解决或隔离 go test ./... 的既有失败。
|
||
- 确保 frontend/web 依赖可安装并完成 typecheck/lint/build。
|
||
- 增加 e2e 验证:创建资源 -> 创建授权 -> 创建 Agnet 部署 -> 查询事件/日志/监控。
|
||
|
||
六、安全说明
|
||
|
||
- 本次文档和代码未写入任何真实密码、Token、Redis 密钥、PostgreSQL 密码、SSH 密码或 Git 密码。
|
||
- 文档示例全部使用占位符或 vault:// secret_ref。
|
||
- 后续部署与推送仍需继续遵守:密钥只走环境变量、Secret Store、交互式凭据或平台安全注入,不进入 Git。
|