Contracts 保留仓库、替换内容
旧契约退出当前基线,新规范以 new-api 原接口及 OceanWay 差异为基础
2026-09-12 用户决定保留原仓库结构,整体替换旧 Contracts 内容。原 Git 仓库与历史继续保留,Core、Edge、Contracts 分仓不变;不再为了继承旧包约束而继续扩展旧 B1 契约体系。
本地替换候选
同一仓库的新工作树为 platform/oceanway-contracts,分支 codex/contracts-newapi-baseline。保留 src、scripts、test、docs、.github 的目录职责,旧契约实现、生成器、测试、验收文档和自动发布逻辑退出该候选的现行内容。
旧参考提交、完整源码归档及原工作树状态记录在本机 coordination/contracts-replacement-source.json。当时原工作树未改;随后目录清理将候选归回标准目录,旧工作树移入可恢复位置。其他分支、历史标签与已发布的 0.2.0 / 0.3.0 保留。当前是本地未提交候选,未合并、推送或发布。
新内容
| 目录 | 当前内容 |
|---|---|
| src/upstream/new-api | 固定 new-api 管理与模型 OpenAPI 原文、许可、源提交与摘要 |
| src/oceanway | 387 项固定路由需求、12 项规范匹配差异、18 项新增提案与当前基线 |
| scripts | 来源、范围和完整性校验;构建参考文档制品 |
| test | 重复需求 ID、网关错误归属、提案伪称已实现等回归 |
| docs | 替换依据、首批交付、旧消费者处理与真实状态 |
仓库包名仍为 @oceanway-ai/contracts,候选版本 0.4.0-draft.0 仅作本地标识且设为 private。没有旧运行时 exports;不是让现有消费者直接升级的兼容包。正式版本和发布流程在具备交付条件后另定。
不再继承的约束
旧式 Key 语法、只允许 202 的 Responses 准入协议、独立 Workforce 身份链、全量 Grant/Projection/Event 体系、全量组织与资源抽象不作为新实现前置。可复用的是实际业务约束和测试场景,不能把旧类型搬回去后继续限制 new-api 原接口。
有效要求仍保留:客户隔离、权限验证、唯一账务写入、重复结算防护、审计与错误脱敏。全局登录 AUTH-G01 是首期目标,平台授权分别校验;供应网关接口仅作内部归属参考,不导出为客户 SDK。
真实完成度
已完成替换候选、源规范导入、基本检查和参考制品构建。没有重写或实现 387 个业务接口,没有生成正式 Go/TypeScript SDK,没有新 Core/Edge 运行验证。上游缺失字段、动态插件范围与新增提案仍按接口需求总表补齐。
当前参考制品包含内部接口说明,不作为公开浏览器包或公共文档包发布。应用仍固定原有已发布依赖,不能通过覆盖旧包实现强制迁移。
下一步
按“身份与 Key → 文本与流式 → 人民币积分与本人价格 → Core/Edge 授权和结算”推进。每批补齐字段、错误和兼容用例后,再生成同栈类型/客户端并接入实际服务。实际需要的内部事件随实现补充,不先完成全部未来契约。
Contracts 实施计划 · 上游差异 · 内部接口提案。
当前本地实现切片
Core 已在显式身份模式中接通 6 条密码/会话路由与 3 条受保护 Key 读取路由。上方完整清单仍是上游参考范围,不代表全部支持;精确实现和差异见会话执行记录。