Files
pbf/docs/任务/NAVSEA-PBF-MULTISOURCE_CM95正式ZIP审计问题上游重生成任务_v1.md

7.9 KiB
Raw Blame History

上游 PBF Provider Pipeline 任务:按 NavSea ZIP 接收审计补全映射并重生成 CM95 新版本 Package v1

0. 任务性质与权责

  • 责任仓库:/root/sourceserver/pbf-provider-pipeline-v1,当前分支 feature/provider-pipeline-v1。
  • 责任端:PBF Provider Pipeline 上游制作端,不是 NavSea Runtime。NavSea 只解析、验证、编译已制作 ZIP;不得让客户端重新执行 PBF/Style 语义识别。
  • 依据:docs/报告/NAVSEA-PBF-MULTISOURCE_CM95-1.1.0正式ZIP接收审计与问题清单_v1.md 与 docs/报告/NAVSEA-PBF-MULTISOURCE_正式ZIP-1.1.0_内容审计证据_v1.json。
  • 正式基线 ZIP:dist/cm95/s52-full/cm95-s52-full-1.1.0.navsea-provider.zip,SHA-256 fb5bc2606ab61662c16eccd22225532779830779e931f623bac4cf049e6b737f,只读保留,禁止覆盖、删除或冒用原版本号。
  • 上位原则:Windows CARBON7i D:\React\NavSea-PBF-Multisource\docs\设计基线\NAVSEA-PBF-MULTISOURCE_通用解释器与标准层映射强制原则_v1.md;还要核对最新 MULTISOURCE-002/002B/004 和实际当前 Provider ZIP Contract。正式 Contract 发生冲突时暂停影响该 Contract 的步骤并将冲突提请用户裁决,禁止静默改 Schema。
  • 不更改原始 PBF、Style、Sprite、Glyph;不改变 Style Layer ID、顺序、filter、symbol 图形内容和 Z-order;不新增第十个 ZIP 文件;禁止基于图标名猜来源语义。
  • 保护所有用户现存 dirty/untracked 改动,不执行 git reset --hard、git clean、git add -A;不擅自 Commit/Push/Tag/切分支。

1. 先核实并完整复用既有分类成果

  1. 直接读取旧正式 ZIP 九文件与现有 mapping-layer-assignment.json,保留其中 102 个 Visual Object ID、现有状态和 standardLayer 分类。
  2. 读取完整真实 tools/visual-object-instantiation/output/cm95-current/actual-anonymous-catalog.json:已确认 475 个 Visual Object 类型、177383 张 Tile 的 Catalog 范围、976534 次 occurrence 声明。需要校对真实输入的来源锁;若重新拉取来源改变,应更新输入指纹与记录,不能沿用旧 475 的数值冒充。
  3. 复用已有 Visual Object 图形匹配器与人工审核记录;将现有上游 B2.1 的 475 条全量映射构建步骤应用于新的独立构建目录,而不是重新做 475 次人工分类。临时 /tmp/navsea-b23-audit-475-mapping.json 仅是审计材料,不是持久发行源;不能以其存在为必要执行前提。
  4. 对相同的原始 Catalog 版本,执行 ID 集合对照:正式旧 ZIP 102 ID 必须全部保留,新增 373 类必须显式出现在新 Mapping;旧 102 条 status/standardLayer 与当前审核结论应 byte-independent semantic equal,未经证据/批准禁止修改。
  5. 当前审计中 475 条分布为 LAYER_ONLY 303、VISUAL_OBJECT_MATCH 26、UNKNOWN 135、AMBIGUOUS 11;这个分布为对照事实,不强迫把 146 个未解决类别改成有意义的分类,仍保留原值或明确降级。

2. 验证补齐执行证据,不能用数量充当业务 PASS

  1. 对每个映射保留 source/source-layer、原始 Style Layer ID/index、原 filter、原绘制角色、资源 expression/key/hash 和可达范围;缺项要给出可诊断的 Reason。
  2. 根据同一原始 PBF Feature 的真实复合绘制证据复用 PRIMARY/COMPONENT 关联;图形相似是分类线索,不能凭距离、图标名、Tile 局部 ID 推断跨瓦片实体身份。当前 fidScope=unknown,无证据不得升级。
  3. 从原 Style 表达式派生逐 Style Layer 的精准 selector 或现行 Contract 允许的同义证据;29 个混合已知标准层/残余的原始 Style Layer 不得整层隐藏,UNKNOWN/AMBIGUOUS 必须默认 PRESERVE。
  4. 第一版本实际 Compiler 只放行已证明导航标记的 19 条,另有 32 VERIFIED_NOT_ENABLED、51 RESIDUAL(包括 5 个已知冲突)。新包必须诚实声明哪类对象可被当前客户端执行,不得擅自标注 Pickup/Danger/Planning READY。
  5. 如需新的正式属性来表达跨 Layer COMPONENT 继承/PRIMARY/cross-standard-display-group 契约,先提交 CONTRACT_DIFF_AND_BLOCKERS.md 并征得明确批准;在未获批准前不能生成声称正式兼容的新 ZIP。当前 ZIP 仍固定 v1 九文件。

3. 生成新 Package 候选并跑自动验证

  1. 新包须采用独立递增版本目录与 ZIP 名称 <provider>-<dataset>-<new-version>.navsea-provider.zip,不得覆盖旧 1.1.0;所有 9 文件、Manifest/Package/Policy/Mapping 的身份、来源锁和校验值必须相互一致。
  2. 在重新发行前逐 ID 对比 Actual Catalog、Mapping、Package/Policy 中的映射集合,禁止漏掉 UNKNOWN/AMBIGUOUS;统计 Missing/Extra/Duplicate 必须全部为 0。
  3. 调用现有 Pipeline PBF-01~PBF-08、strict ZIP/Manifest 检查;执行测试(当前 X220 上游 50 项 Python 回归基线)和真实 Style/Sprite Source Lock 检查。
  4. 复核 B2.3/B2.4/B2.5/B2.7 的全量证据/261 Tile 抽样:保证错误分类、残余与跨组误隐藏不因新增 Mapping 恶化;不把抽样 0 collision 当作全 Provider 证明。
  5. 在 NavSea CARBON7i 环境仅用 import_provider_package、adapt_provider_package 及 test_visual_bindings.py 校验新 ZIP。如本次上游执行没有当前 NavSea Worktree 访问权限,把此项标为 无法验证并提供真实新 ZIP SHA 与路径,待 NavSea 接收端执行,禁止声称跨端 PASS。
  6. 若资源仍指向 http://192.168.200.184:18889/...,发行报告须将该包标为局域网测试发行,不宣称公网用户 URL 安装成功;原资源表现和指纹不因主观换域名而失真。

4. 强制交付文件(本任务开工前已列明,禁止执行后临时追加)

至少实际生成以下完整文件,不得只在聊天里汇报:

  • docs/报告/NAVSEA-PBF-MULTISOURCE_CM95重生成_上游完成报告_v1.md:逐项 已完成 / 未完成 / 无法验证、原因、真实代码/文件、版本、命令与结果;必须列出仍关闭的能力。
  • docs/报告/NAVSEA-PBF-MULTISOURCE_CM95重生成_新旧映射差异_v1.json:逐 Visual Object ID old/new 的 status/standardLayer/PRIMARY/组件证据与遗漏列表、明示 102 条旧记录是否保持语义。
  • docs/报告/NAVSEA-PBF-MULTISOURCE_CM95重生成_新ZIP结构与来源校验_v1.json:实际文件 CRC、SHA、Schema、Style/PBF/Sprite/GSRL Source Lock、Manifest、九文件、真实 Catalog IDs 的覆盖及能力结果。
  • docs/报告/NAVSEA-PBF-MULTISOURCE_CM95重生成_能力与Residual矩阵_v1.md:四档 Display、Pickup、Danger、Planning 分开列为已验证/待验证/不支持,列出混合 Layer、未知分类和冲突影响。
  • docs/报告/NAVSEA-PBF-MULTISOURCE_CM95重生成_Contract差异与阻塞_v1.md:说明沿用正式 Contract 的字段与任何冲突;无冲突也必须写明 无须修改。
  • docs/报告/NAVSEA-PBF-MULTISOURCE_CM95重生成_测试与运行记录_v1.md:原生真实来源审计/测试、NavSea 消费端能否运行、未完成的 Android/iOS 项及原因。
  • 新版本 dist/cm95/s52-full/<new-version>.navsea-provider.zip(只有契约和必备证据均满足时才输出正式候选;若阻塞,产物列为未完成且留下已生成的所有报告)。
  • 进展应以中文追加至仓库 STEP_RECORD.md,遵循当前工作区 AGENTS 规则;必要时附完成本任务所需的可重复生成命令或脚本,但不要复制旧 1.1.0 伪装新品。

5. 阶段完成判定

  • 审计修复完成不等于实机可见性 PASS;必须分别报告 Zip Contents/Contract/Mapping/Compiler/Android/iOS/URL。
  • 没有经批准的多源通用 Contract/标准层显示组语义时不得用 Renderer 专属硬编码补救。人工审核只针对确实缺证据或已知冲突,不重复让人工从零逐项审核已经认可的旧映射。
  • 出现需要用户裁决的正式 Contract 分歧时,先提供完整 Blocking Report 而非修改已批准标准。任务以可验证交付物为终点,不自动 Commit/Push。