weichen a64fb5a168 Add CardID to CardPart for inbox-reference card parts
Why: 卡流机制(CF1)需要消息部件正式引用收件箱 ActivityCard——submit_card 产卡时卡片为产物权威载体,消息只存引用+锚点渲染(原仅能从 data 字符串里正则抠 card:<id>)。
Evidence: go test ./... 通过;golden message.json 增 card 引用部件锁定 cardId 线格式(-update 重生成后逐字节一致)。
Impact: CardPart 增可选 cardId(omitempty,旧数据零影响);ts/types.ts 同步,镜像经 make contracts 再生成。
Refs: Dev 任务卡 feature/cardflow-r1;提案 cardflow-and-process-split(编制中)。
2026-09-30 16:10:20 +00:00
2026-09-29 17:34:58 +00:00

Agent-System-Core

系统核心契约:领域模型(Project/Conversation/Message/Run/Artifact/Plan)、流式事件信封、 HITL 卡片协议、插件 API 与 manifest、AgentProfile 画像、设置 schema、UI 扩展词汇、 文档解析(ParsedDocument IR)与检索/记忆契约。Go 模块路径 agent-system-core。

三态一致

同一契约以三种形态发布,变更须保持一致:

  1. Go 类型(*.go,camelCase JSON 标签)——后端与代码插件使用。
  2. 黄金样本(testdata/golden/*.json)——线格式权威,go test ./... 强校验;变更显式重生成(go test ./... -update)。
  3. TS 类型(ts/types.ts)——前端镜像,前端测试按黄金样本做形状断言。

原则

  • 只含契约与纯函数,不含实现、不含 I/O、不依赖生态仓。
  • 前向兼容:字段只增不删;消费方对未知 type/词汇静默忽略(v 字段协商)。
  • 摄取 IR(ParsedDocument)是解析器与下游的隔离层;检索/记忆契约先行、实现后置。

验证

go test ./...
S
Description
系统核心契约:领域模型、流式事件与 HITL 卡片协议、插件 API、设置与 UI 扩展词汇、文档解析/检索/记忆契约,供前后端与插件共同依赖;不含实现。
Readme
579 KiB
Languages
Go 84.5%
TypeScript 12.3%
Shell 3.2%