# M1 · 契约与身份对齐 ## 目标 在**不绑定具体云厂商**的前提下,冻结 **Heicode Manager** 与 **Heicode 客户端** 之间的最小身份与 API 语义,使后续 Agnet 集成可通过同一身份体系挂载授权。 ## 完成定义(DoD) - [ ] **登录与会话**:浏览器 OAuth / loopback 回调语义文档化;`session` 与 `token` 字段含义与过期策略书面一致。 - [ ] **模型发现**:`GET /v1/models`(或等价路径)的请求头、错误码与分页/过滤约定写入契约草案。 - [ ] **用户上下文**:客户端携带的租户/组织标识(若有)与 Manager 侧解析规则一致,避免 silent ignore。 - [ ] **版本协商**:客户端 `User-Agent` / `X-Heicode-Client-Version` 与 Manager 最低兼容矩阵写明。 ## 依赖 - 无前置里程碑;为本目录后续里程碑的**共同前置**。 ## 与 Agnet 的衔接(预备) M1 **不要求** Agnet 已接入;但契约中预留: - `X-Tenant-Id` / `X-Org-Id`(可选)传播约定,便于 M4 多租户对齐。 ## 验收建议 - 自动化契约测试或 Postman/Newman 集合跑通最小路径。 - 产品侧评审:登录失败、令牌过期、权限不足三类错误对用户可见且可诊断。 ## 风险 - 契约频繁变动会导致 M3 编排回调身份映射返工——M1 冻结后应通过**版本号**约束变更。