Resource Synchronizer
独立维护定时、事件和手动更新策略,生成缓存、freshness、last-good、Repo Mirror、文档索引与 GitNexus 等派生数据。公开 Registry/Sync Run 已兼容包住 Scheduler GitNexus 增量索引、Docker runtime 项目复制、文档导出/缓存和 Robot DevOps 工作项缓存刷新;通用 run ledger 当前为进程内,成熟缓存与索引各自保留既有持久恢复。跨节点账本、高级索引和新宿主属于增量增强。
职责与边界
负责
- 按 manual/scheduled/event 策略触发全量或增量同步
- 在仓库提交或分支更新后同步代码,并按成本策略更新 GitNexus 等派生数据
- 维护 Sync Run、游标、缓存快照、freshness、完整性与 last-good
- 隔离失败、重试并保留最后可用版本和可定位日志
- 为手动 doctor、重建和回滚提供标准入口
不负责
- 不定义资源目录或权限
- 不保存 Secret 正文
- 不向 Agent 定义工具语义
- 不要求每种资源必须缓存或建立索引
数据与接口
拥有的数据
- Sync Policy 执行状态、Sync Run、Cache Snapshot、Repo Mirror、Doc Cache、GitNexus/映射图谱、新鲜度和 last-good
输入
Sync Policy;manual/schedule/event trigger;Connector Operation
输出
Sync Run;Cache Snapshot / last-good;Repo Mirror / Index / GitNexus;freshness 与失败记录
协议
flynor/resource-sync/v1alpha1;scheduler/event/manual trigger
依赖
project-resource-catalog;project-resource-connector;protocol
运行与部署
集成平台组 · pilot · active;升级路径:集成平台组 → 运行平台组
embedded · supported;定时、事件或手动同步与派生索引模块,受支持地嵌入 Robot 与 Project Intelligence;与 Connector 共进程但保持独立 Registry、Sync Run、freshness、last-good 和恢复边界,不要求微服务。
同步模式、周期、触发条件、派生数据成本策略、重试、保留和缓存目录;不含 Secret。
可作为项目资源宿主内定时/队列模块或独立 Worker 运行,不要求每项目一个服务。
触发、增量游标、失败隔离、进程内 last-good、成熟缓存/索引恢复和 GitNexus 成本策略测试。
syncRunId、resourceId、sourceVersion、策略、耗时、结果、错误边界和快照引用;日志正文后续另行设计。
保留旧同步器影子运行且不产生重复写入;缓存/索引版本化,失败时回到 last-good。