Files
MapLibreParticleLab/docs/报告/STEP-098_公共契约阻塞报告_v1.md

5.2 KiB
Raw Blame History

STEP-098:公共契约闸门阻塞报告 v1

日期:2026-09-26(日本时间) 状态:BLOCKED_CONTRACT / 未进入功能实施和发行。

1. 当前真实基线

  • 用户本轮要求:RDC 严格串行执行 STEP-098,并使用统一 Pipeline 发布 V15;未要求将历史 .14-dev AAR 当作 V15 产物。
  • 源码仓库:Mac /Users/tei/dev/MapLibreParticleLab,分支 particle/main,本轮开工 HEAD 与公开 origin/particle/main 均为 b1239ac3b1554943200e6fbf14321459ccc86527。
  • 该正式工作树已有 22 项修改/未跟踪内容(含 STEP-097 B 和本任务 MD);这些既有内容全部受保护,不得 reset、clean、覆盖或整体暂存。
  • 本任务原始文件:docs/40_任务/STEP-098_QBIN_V4单帧首显与八帧滚动缓存_Codex任务_v1.md;其状态明确为“待契约闸门通过后执行”。
  • Integration:Mac /Users/tei/dev/navsea-particle-integration 已执行 git fetch origin main;本地 main 和 origin/main 一致,均为 318f8ccf911ac3136c3086a1d14e61f83e2d4bce,工作树干净。
  • 当前已安装正式版本:Android/RN 13.4.1-particle.13,iOS 基础 VERSION 6.28.0。先前 Native 13.4.1-particle.14-dev-d00d2ddc-bf4539890c6f 仅为本地开发 AAR,不能替代 RN 联编、双平台测试或 V15 正式发行证据。

2. 契约冲突与停止原因

  • rfc/RFC-003_编码场两帧首显与增量补帧语义.md 仍标为 DRAFT/Shared Core 与 Android/iOS 评审待完成,其目标语义第 1 项是至少两帧覆盖后才合法显示,第 4 项是超容量明确拒绝。
  • STEP-098 的目标不同:一个有效时间的单帧可按真实 validTime 首显并驱动合法向量粒子;后续每 fieldKey 维持按时间升序的最多 8 帧,合法第 9 帧按新帧时间选择远端淘汰,正常满额提交不返回容量拒绝。
  • coordination/active/COORD-004/状态.md 将 B 列为 B_RFC_DRAFT;同目录 决议.md 仅明确 A 的 React Style 方向,B 仍待调查。未发现正式接受 STEP-098 新语义的 RFC/ADR/COORD 决定或合同更新。现有 C-001 不可被当成这项新行为已经批准。
  • 按 STEP-098 任务 §1 第 3~4 项,必须先由粒子负责人/Integration 正式接受且消除上述冲突,记录准确文件、版本、commit;本执行窗口不能把聊天目标、自身判断或 DRAFT 冒充正式跨平台决定。

3. 需要的正式协调决定

请由粒子负责人在 Integration 的 COORD-004/RFC-003 或新 ADR/Contract 中明确并正式接受:

  1. 单帧真实时刻的首显和向量粒子行为;合法相邻两帧插值;不覆盖目标的旧帧必须 fail-closed,不能伪造数据或时间。
  2. 每 fieldKey 独立的 8 帧排序/容量;正常已满时先验证、再原子淘汰并保留新帧;无效帧零副作用、不同 key 不相互挤占。
  3. 未来/过去/内部插入的确定性端点淘汰,距离相同时的 tie-break,以及当前显示端点能否参与稳定优先级;禁止依赖尚未下发的新目标时间决定淘汰。
  4. 同 validTime duplicate/revision/stale/conflict、dataset/profile/grid 身份、请求时间不被 submit 静默修改、现有 RN 两步调用、Renderer/GPU 资源复用与释放、内存边界及 Android/iOS 同一 Shared Core 契约。
  5. 核对任务书中“13:00 ... 21:00 共 8 帧”的计数错误(若逐小时含两端实际为 9 个时间点),在正式合同及实施示例中写为确实 8 帧的区间。
  6. 指明是否因生命周期、错误/数据所有权语义变化需要升级 C-001,以及适用的正式版本与跨平台责任。

以上正式结果若与 STEP-098 MD 的行为不一致,应先修订任务书,不得由 Android/iOS 各自选择不同语义。

4. Git 和 V15 Pipeline 独立门槛

  • 用户提出 V15:统一脚本 tools/particle_release_pipeline/release.sh 15 的目标将是 Android/RN 13.4.1-particle.15 与 iOS 6.28.0-particle.15。这是待发行目标,不是已经构建/发布的事实。
  • Pipeline 的 prepare、build 均要求工作树干净且版本锁正确;当前主工作树 dirty,不能直接运行。STEP-097 B 的未提交工作及正式版本锁需先按范围审计、受控收尾,不能 git add -A 或把 .14-dev 当正式 .15。
  • Pipeline 的 public target 不得覆盖现有版本;正式发布必须在同一冻结 source commit 上完成 Android Native 四 ABI、RN、iOS Metal/XCFramework,分别验证,再检查 SHA、manifest、SwiftPM tag 与公网实际回读。
  • Mac 只余约 11 GiB 可用空间,是完整构建前需要核实的容量风险;不能据此虚报构建失败或 PASS。

5. 本轮实际执行与未执行

  • 已执行:RDC 只读 Git/任务/发布脚本审计、Integration fetch 和 SHA 对齐、RFC-003/COORD-004/Contract/职责核查。
  • 未执行:Codex 功能实现、Core/Bridge/Renderer 修改、T01~T17 测试、Android/iOS 编译或设备验收、V15 Pipeline 的 prepare/build/publish/finalize、Git commit/push。
  • 本报告是独立新增文件,不修改 STEP-098 MD、STEP-097 既有改动、Integration 文档、VERSION、历史制品或任何公网发行目录。

当前结论:BLOCKED_CONTRACT。第一闸门未正式通过,不启动第二阶段,也不进行 V15 发行。