文档
历史档案文档项目进度

历史 · 当前状态

重构前档案,仅供追溯,不作为新版本执行指令

历史档案 · 2026-09-11 重构前快照。 本文中的“当前”“已冻结”和实施顺序属于旧基线。新版本以现行总览实施计划为准。

当前工作安排:需求、设计与原型优先

2026-09-09 本人决定先补齐并统一全平台需求、产品设计与原型,随后按确认流程排后台 API、前端、API 文档与联调。总体和各平台计划见总体实施计划,实时工作包和决定进入本机协调。计划补全不等于需求/原型已验收。

下方为此前技术进度和 B1 工作包的历史快照,不代表当前唯一派工顺序。Core 存储回归已由 #21 → #19 合入 118f232c,主线 CI 123 单测/105 PG 通过;Console 目录/入口、Design 移交已合并。既有候选和运行限制保留,R1 需求设计轮次不等同 B1 完成。新状态以工作台的带日期核验为准。

2026-09-09 较早技术校正(历史)

B1 控制页最新核验 为当前依据,下方 9 月 8 日状态保留为历史记录。Contracts #11、Core #12/#15/#16/#17、Admin #9/#10、Infrastructure #18 已合并;Admin P4 #8 与 Infrastructure #17 已关闭。Core 已实现休眠 Schema 和事务 Repository,但合并态 CI 34308928860 失败(PG 72/73),原 Writer 正修复;独立 Reviewer 已在扩大范围复现四项 P2(回滚断言、B0 角色权限、Gap/Receipt 互斥、SAVEPOINT 事务识别),整体高风险,需修复及专业人工复核。P5 与 B1 真实联调仍未验收。

Studio #20 当前远端检查均通过,本地 #21 失败仍保留;Console #4 尚缺长期机器可读组合证据。下一步依次是 Core 修复与完整 head 接收、Contracts P5、Core Append/Bootstrap;不重开架构。普通包执行独立 AI 审查加用户完整 head 验收,高风险仍须专业人工复核。各仓治理模板同步另列独立包,当前不重复派发。

2026-09-08 历史记录

更新时间:2026-09-08;固定证据与核验范围见 B1 控制页

OceanWay 已从“架构收敛”进入“共享执行骨架实施”。十四仓边界已经建立,Contracts 0.2.0、Organization-backed Core Run Admission、API Edge V1 受控入口及 Edge → Core → PostgreSQL 隔离联调均已通过门禁。Outbox Publisher/Dispatcher 与 Ops Explorer 的实施架构由 ADR-030 冻结;Execution → Gateway → Metering → Billing 的终局协议由 ADR-031 冻结。Contracts 0.3.0 已正式发布,Core/Admin 包资格及无副作用代码候选已进入独立评审输入阶段;B1 真实链路未验收。当前下一动作是 P3/P4 评审接收与 P5 收口,再推进持久化链路,ADR-031 是后续 Metering/Settlement 阶段的目标契约,不代表运行时已经具备这些能力;Personal Space API Admission 同样尚未实现。

状态定义

状态含义
已发布已生成固定版本和可追溯发布制品
已发布 / 扩展待验收既有版本已发布,但当前新增契约仍需固定发布与消费者门禁
已验收对声明范围已有评审和约定运行证据;B1 必须包含真实联调与故障恢复,单仓 CI 不足;不等于生产上线
已验收 / 扩展待验收既有基线已验收,但当前新增契约或纵切扩展仍需独立门禁
待验收已有实现候选,但独立 CI 或目标环境门禁尚未全部通过
已确认已形成正式决策,后续实现必须遵守
已文档化目标模型、边界和验收原则已经写入架构文档
开发中已进入代码、数据或基础设施实现
待实施已明确方向,但尚未进入完整实现

当前实施基线

领域当前状态已完成下一门禁
Polyrepo 与职责边界已确认Site、Developer Center、Console、Studio、Drama、Commerce、Admin、Core、API Edge、Contracts、双网关、Docs 与 Infrastructure 已分仓持续校验唯一 Owner、固定依赖和禁止跨仓源码导入
Contracts0.3.0 已发布 / P5 待接收0.2.0 保留 B0;B1 0.3.0 固定 004401c1、正式 tgz d30e9e67…,发布与双源校验通过Core #16/Admin #9 已有通过 CI,独立评审/合并/接收待完成;不能据此启用 v2 Writer
Core Run Admission已验收 / 扩展待验收main Commit f9e55b6 与 CI 33777925718 已通过;当前只包含 Organization-backed Credential Snapshot、Workload JWT 私有接口、publicModelId 解析、不可变 Run Input、credits 预占、Manifest、幂等与事务 OutboxProducer 原子切换为配对的 Run/Wallet v2,保持准入原子性和幂等事件数量,不允许 v2/v1 混搭;Personal Space 继续拒绝
API Edge已验收 / 扩展待验收main Commit f97cf5f 与 CI 33774539995 已通过;受控入口只承载 POST /v1/responses,完成强制幂等、22/43 Credential、本地 constant-time 校验和短期 Workload JWT Core 调用接入低敏 best-effort Observation,同时保持 Intake 故障不改变客户请求;公网继续默认关闭
受控跨服务链路已验收Infrastructure main Commit e72e5f3 已固化真实 HTTPS JWKS、JWT、Socket HTTP 与一次性 PostgreSQL 门禁;正式证据 evidence/controlled-admission-e2e-9cc3c9c49b16-f9e55b6e56e4-f97cf5f27027.json 绑定门禁 9cc3c9c、Core f9e55b6、Edge f97cf5f 和 Contracts 0.2.0 tgz不扩大为公网、Gateway 输出、Outbox 发布或结算完成;证据继续随源 Commit 固定
Outbox 与运维投影候选代码 / 未联调Core #17 实现 v2 无副作用折叠及 11 项新测试;#12 仅 Schema 准备文档Receipt/Mutation 事务、Dispatcher、Intake、Shadow/Integrity/Query 尚缺真实链路证据
Admin Run Explorer身份壳已合并 / 包资格候选#5 Host-only 外壳已合并;#9 13 项测试与当前 head CI 通过,403 已解除真实 Grant/Audit/Core Query、Explorer 与故障恢复未验收
Metering 与 BillingReservation 基线已验收 / 终局协议已文档化credits 预占与不可变 Price Snapshot 已进入 Admission 纵切;ADR-031 已冻结 Dispatch Slot、Attempt 关闭、Settlement Input、三组 Validation Bundle、严格经济身份、Billing 本地终局、迟到 Transition/Exposure、Funding 与 Command Result在固定 Contracts Release 中实现严格 DTO/Golden/负测,再实现各 Owner 的版本化 Read/Validate Contract;未完成前不得把预占解释为结算、释放或可人工补扣
Text/Media Gateway边界已确认文本与媒体网关同级、私有且不拥有客户/售价/钱包事实先接 Text Gateway canary;Media 在同级契约上随后接入
Asset 与产品迁移待实施Asset Version、Lineage、Console /ai 和 Studio 边界已经定义文本结果登记 Asset;随后按命令切换 Console /ai 与 Studio Writer
文档体系已上线docs.oceanway.site 已发布并自动同步 main;架构、十四仓实施计划和项目进度已经分层持续以 ADR、仓库证据和验收结果更新状态,任务级进度留在 GitHub

已冻结的不变量

  • 网页、公共 API 与内部模型使用不同发布面;内部规划、审核和评测模型不能进入公共目录。
  • API Edge 只终止机器凭据并建立受信上下文,不保存第二份 Run、余额或模型事实。
  • 首期 DeveloperCredential 固定为 ow_sk_<keyId>.<secret>,其中 keyId 为 22 字符、secret 为 43 字符无填充 base64url。调用时 Raw Secret 只到 API Edge;Edge 按 keyId 从 Core 读取请求级验证快照,在本地执行 SHA-256 constant-time 比较,不持久化 Digest 或 Snapshot。
  • developerCredentialId 本身是不可变 Credential Version 身份,不再叠加独立 credentialRevision;轮换创建新 ID/Key/Secret 并撤销旧 ID,Core Admission 再次校验确切 Credential ID 与完整父链。
  • Edge 到 Core 只使用短期 Workload JWT;Core 解析 publicModelId、持久化不可变 Run Input,并继续拥有 Credential、Offering、Run 与 Billing 事实。
  • 首期 POST /v1/responses 强制要求 Idempotency-Key;内部 Admission 强制 apiVersion="v1",成功使用 flat {requestId, runId, status: "reserved", createdAt},错误使用 nested error 与 underscore 稳定错误码。
  • 当前 Trace 能力只校验 W3C Version 00 traceparent 并将合法 Trace ID 写入 Run/Manifest;未建立远端 Parent Span、Sampling State 或 OpenTelemetry Exporter。
  • Core 是租户、授权、Billing、Run、Asset 和模型控制的事实 Owner;产品仓与网关不直连 Core 数据库。
  • Run Admission 中 projectId 由 Environment Execution Binding 唯一解析且可选,billingAccountId 必填并由同一服务端绑定验证;客户不能声明或覆盖,首版只接受 credits。
  • Event Envelope 使用 aggregateId 与正整数 aggregateRevision,不使用 subjectIdorgId
  • 目标资源归属统一使用严格 tenantKind = organization | personal_spacetenantId;当前已验收 API Admission 和 wallet.reserved@1.0 仍只支持 Organization。Personal Space 不得通过字段映射伪装接入,必须等待 tenant-aware Manifest、Run/Wallet Event 与真实授权、账务门禁共同发布。
  • Outbox Event Envelope/Payload 与已接受的 Observation Source 由数据库权限/约束强制不可变;Delivery/Attempt/Quarantine 与 applied receipt 分离,Consumer Receipt、Projection Mutation 和 Checkpoint 必须同事务。
  • 首期 Outbox 使用 PostgreSQL 与 core-operations-worker,不新增 Broker 或仓库;Mandatory Delivery Set 在 Event Append 同事务冻结,Checkpoint 不使用会被 PostgreSQL 提交乱序或回滚空洞误导的全局标量 Position。
  • run.created@1.0 + wallet.reserved@1.0 只能形成 Legacy/Partial 运维投影;下一 Contracts 版本配对发布 run.created@2.0 + wallet.reserved@2.0 形成低敏、自包含准入快照,不通过 Domain Query 或日志水合历史,也不收紧 v1 Optionality。
  • Run 准入、实际 Attempt 与网关私有路由分别由 RunAdmissionManifestAttemptExecutionManifestAttemptRouteBindingGatewayRouteSnapshot 固定;同一 Attempt 不允许换路,Metering 必须逐层验证 Binding、Route Snapshot 与 Evidence。
  • Gateway 以唯一 Dispatch Slot 将每个 Attempt 原子收敛到 bound | terminal_rejected;只有可证明无 Provider Side Effect 的拒绝才能进入 Not-dispatched,状态未知必须保留为 Attempt-bound 并查询或对账。
  • Execution 以不可逆关闭事实冻结完整 Attempt 集;Billing 先保存严格 Finalization Input,再取得 Execution、Metering、Gateway 三组 Purpose-bound Receipt,最后只在 Billing 本地事务原子写 Decision、Ledger 与 Reservation 终态。成功终局不重开,边界后的更正只走追加式 Transition、Exposure 与对账。
  • Finalization Fence 进入 reconciliation_required 后,普通 Closure/Settlement 输入只能推进已接受 Watermark,不能创建后继 Work 或离开 Case;只有当前代 Billing-owned Resolution Applied Event 能统一冻结最新 Watermark 并生成下一代评估 Work。完整 Resolution Command、Grant、Applied Fact 与双 Destination Event 必须先于任何可进入该状态的 Producer 上线。
  • Finalization Case Identity Reservation 只绑定稳定 Tenant/Account/Reservation/Run/Fence/Generation/Predecessor,不绑定可能被并发取代的 Work;Case Requested Event 才冻结获胜 Work、Work Generation 与 Finalization Operation。Operations/Admin 对 late_settlement_dimension | billing_finalization_run 两种 Billing 来源均禁止本地终结,终态必须绑定来源专属 Billing Applied Fact。
  • 当前正式 Operations Reconciliation Case 只允许上述两种 Billing sourceScope。Execution、Gateway、Metering、Provider Cost、Asset 与 Webhook 的其他确定性冲突留在唯一 Owner 内形成内容寻址 Conflict Fact 与 Active Blocked Work;暂态错误不写领域冲突事实。没有 Canonical Event、Mandatory core_operations Delivery、严格 Owner Read、Identity 与终态 Authority 时,不得伪造第三种 Case 或可靠 Admin 队列。
  • Metering 新 Current Generation 必须以 superseded Finish 收敛旧 Started Attempt;Blocked Work 保留相同 Work/Operation/Generation、释放 Lease,并在修复后重领。同一 Work 不能同时被展示为 Running、Finished 与 Case。
  • Admin Command Grant Exchange 使用稳定 Operation-first Result;同 Assertion Issuer/JTI 的相同 Candidate/Workload 在 Core 已提交但响应丢失后返回首次 Grant,异 Candidate/Workload 冲突,只有 Result 不存在才校验当前时间并消费 Assertion JTI。
  • 客户结算始终携带严格 credits | entitlement{entitlementKey,unit} | money{currency} 经济身份;人工迟到补结还必须绑定 Funding Policy、一次性 Funding/Command Grant 与内容可验证的 Command Result,不能跨价值桶重放。
  • Edge Observation 与领域事实分离:到 Core Intake 前是 best-effort,一旦接受则按 Observation ID 幂等耐久保存;首期只描述已接受记录范围、健康窗口和已知投递失败,请求级完整性保持 Unknown/Not Measurable。
  • Error Producer 提交版本化标准错误,Core Projector 是 Error Fingerprint 的唯一计算者;Fingerprint 只基于单条 Accepted Error Observation 的固定七字段、NFC + RFC 8785 JCS 与 SHA-256,不能信任 Producer 自报服务或指纹。
  • Operations Snapshot 只有在存在定义匹配的已完成一致性快照且 Guard 可比较时才可声明 verified;否则必须以严格 unverified 联合返回 unknown,不能用缺失证据推断 Current 或 Stale。Shadow Rebuild 先冻结 Candidate 集合,追平该集合后再排空旧 Active 并原子切换,切换边界不得在最后事务中扩张。
  • Operations Read Model、Projector 与 Private Query 归 Core,Admin 只通过 Workload JWT + 由 Core Authorization 签发的 Signed Workforce Grant 的 BFF 查询;特权或跨租户查询在返回数据前必须耐久写入 Audit,失败时关闭查询,首期完全只读。
  • Agent 只拥有 Definition、Revision 与 Deployment;Run、Step、Attempt、Manifest 与 Output 由 Execution 拥有。
  • 同一业务命令只有一个 Writer,不允许旧、新实现同时创建 Run、Reservation、Ledger、Asset 或 Provider Task。
  • B0 的 Core/API Edge 固定 0.2.0 证据保持原范围;Core #16 与 Admin #9 候选已固定正式 0.3.0。包升级不等于运行时已启用;所有消费均限定私有 GitHub Packages 的精确制品。

本轮旁线与证据限制

  • Studio #18 目录/候选隔离与 #20 生成入口强制尚未评审合并;#20 新 head 65f77c59 远端 CI 核验时仍运行,本地全浏览器仍为 140 pass / 19 skip / 1 fail(#21)。不声称网页/API 隔离已生产生效。
  • Core #15 与 Console #4 已有真实隔离 HTTP/PostgreSQL 和本地浏览器组合报告;正式接口、Workload 身份和长期 Evidence 未接收。临时目录中的报告可能过期,不能充当永久验收索引;纯目录不代表 Console 登录、钱包或执行能力。
  • Infrastructure #6 临时 K3s 拒绝/允许测试不能替代 Core/Admin 真实身份、DB Role 或目标环境故障恢复。B1 尚无完整 Event → Delivery → Receipt → Projection → Admin Query 的组合 Manifest。
  • 完整测试数、固定 head、失败记录及唯一下一工作包见 控制页下一阶段

当前不代表已经完成的内容

  • V1 Contracts/Core/API Edge 受控准入和隔离联调已经验收,但生产部署、Public API 公网切流、Gateway 输出、Outbox 发布、Metering 与 Settlement 尚未完成。
  • ADR-029 的受控准入基线已经验收;当前 /v1/responses 仍不接一般客户公网流量,也不产生模型输出。
  • API Edge 默认 PUBLIC_ADMISSION_MODE=disabled 且监听回环地址;controlled 只授权隔离联调,不等于公网切流。
  • 分布式限流、Developer Credential IP/细粒度 Scope 策略、完整 OpenTelemetry 链路和公网容量/压力测试尚未完成,是未来公开切流前置而不是当前完成项。
  • 预占不等于完整结算;Gateway ProviderUsageEvidence / ProviderCostEvidence、Metering 唯一 Writer 的规范 MeterEvent / ProviderCostFact、释放、退款和对账仍需实施。
  • Outbox 表不等于事件已经可靠发布,也不等于 Admin 已有可用的 Run Explorer。
  • ADR-030、ADR-031 与 Operations 文档“已采用/已文档化”不等于 Run/Wallet v2、Dispatcher、Observation Intake、Projection、Query、Gateway Evidence、Attempt Closure、Metering、Finalization、Ledger Release 或 Admin 页面已实现。
  • ADR-031 中的 Finalization Resolution 命令出口、Command Grant Exchange 恢复和 Billing-authoritative Case 终结同样只是已冻结契约;在其运行时与故障注入门禁通过前,不得启用会把 Finalization Fence 置入 reconciliation_required 的路径。
  • tenant-aware Run/Wallet v2 契约已在 0.3.0 发布;Personal Space API Admission 仍未实现或验收。Attempt/Route Binding/Evidence/Metering 不因 B1 发包成为已发布运行能力。
  • 现有 Studio、Console、Drama、Commerce 与 FDE 尚未完成统一身份、钱包、资产和 Run 的生产切换。
  • Canvas Runtime、完整 Agent/MCP 链路和 Media Gateway 执行不属于首个 Run Admission 基线。

Core 纵切见 ADR-028,API Edge 边界见 ADR-029,Outbox/Ops 决策见 ADR-030,执行、计量与账务终局见 ADR-031,详细实施契约见运维事件与读模型,执行顺序见下一阶段

On this page