weichen 360a8a8946 Add the optional node id/source fields to the TS contract authority
Why: PR #25 added the fields to the Go UINode; ts/types.ts is the
single authority that make contracts mirrors into the frontend and UI
repos, so the fields must originate here or the sync reverts manual
mirror edits (CI build caught exactly that).

Evidence: Regenerated mirrors and combined make test run in the Dev
workspace after re-pinning.

Impact: Type-only additive change.

Refs: Core PR #25; Dev task feature/generative-ui-u2
2026-10-11 08:44:00 +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
588 KiB
Languages
Go 84.5%
TypeScript 12.3%
Shell 3.2%