feature/task-sidebar-r1
Why: the approved task-centric sidebar (proposal 2026-09-30, option A) needs server-authoritative pin and archive state on conversations; client-side storage would be fake state against the event-sourced model. Evidence: go test ./... passes; omitempty keeps wire format and golden samples byte-identical for zero values (backward compatible). Impact: additive optional fields; consumers ignoring unknown fields are unaffected (forward-compat principle). Backend consumes via submodule bump. Refs: Agent-System-Documents docs/proposals/2026-09-30-ui-redesign-and-auth.md (P6/P8, R1)
Agent-System-Core
系统核心契约:领域模型(Project/Conversation/Message/Run/Artifact/Plan)、流式事件信封、
HITL 卡片协议、插件 API 与 manifest、AgentProfile 画像、设置 schema、UI 扩展词汇、
文档解析(ParsedDocument IR)与检索/记忆契约。Go 模块路径 agent-system-core。
三态一致
同一契约以三种形态发布,变更须保持一致:
- Go 类型(
*.go,camelCase JSON 标签)——后端与代码插件使用。 - 黄金样本(
testdata/golden/*.json)——线格式权威,go test ./...强校验;变更显式重生成(go test ./... -update)。 - TS 类型(
ts/types.ts)——前端镜像,前端测试按黄金样本做形状断言。
原则
- 只含契约与纯函数,不含实现、不含 I/O、不依赖生态仓。
- 前向兼容:字段只增不删;消费方对未知
type/词汇静默忽略(v字段协商)。 - 摄取 IR(ParsedDocument)是解析器与下游的隔离层;检索/记忆契约先行、实现后置。
验证
go test ./...
Description
系统核心契约:领域模型、流式事件与 HITL 卡片协议、插件 API、设置与 UI 扩展词汇、文档解析/检索/记忆契约,供前后端与插件共同依赖;不含实现。
588 KiB
Languages
Go
84.5%
TypeScript
12.3%
Shell
3.2%