Files
CM95/codex/10_第一阶段接手任务.md
2026-09-02 09:50:12 +08:00

2.1 KiB
Raw Blame History

已归档:该任务已由 v0.2.0 实现

当前请执行 codex/20_导入与审计接手.md。


Codex:CM93 → MySQL 第一阶段接手任务

目标

在现有 starter 基线上完成可实际导入大目录 CM93 的 importer。

最终标准不是“部分对象能显示”,而是:

  • cell 可完整解析;
  • feature/attribute 计数可核对;
  • geometry 可追踪;
  • 数据可断点续导;
  • 精度满足 docs/精度规范.md。

开始前

  1. 完整阅读:
    • AGENTS.md
    • README.md
    • docs/精度规范.md
    • docs/数据库设计.md
  2. 运行:
    • python --version
    • cm93db env-check
    • cm93db db-check
  3. 不修改第二阶段 PBF 范围。

必做清单

  • 完成 CM93 256-byte substitution decoder 的独立实现
  • 完成 prolog + 128-byte header
  • 校验 cell 文件长度公式
  • 完成 vector record table
  • 完成 2D point table
  • 完成 3D sounding table
  • 完成 feature record table
  • 按 CM93OBJ.DIC 映射 object class
  • 按 CM93ATTR.DIC/ATTRLUT.DIC typed decode attribute
  • 支持 B/S/R/C/L/W/G 属性类型
  • 保留 raw feature / raw attribute
  • 完成 Point
  • 完成 Line edge chain + reverse flag
  • 完成 Area ring 组装
  • 完成 Sounding 深度
  • 完成 _m_sor coverage
  • 保存 _wgsox/_wgsoy
  • 形成并文档化 WGS offset policy
  • 标准化 geometry 为 WGS84 double
  • 完成 MySQL bulk insert
  • 每 cell 独立事务
  • DONE 跳过 / FAILED 重试
  • 未知 ID 不静默丢弃
  • 完成 import summary
  • 增加精度审计命令
  • 用实际 CM93 小样本全链路验证

禁止

  • 不做 PBF
  • 不 simplify
  • 不 quantize
  • 不为了通过 geometry validity 静默改数据
  • 不使用 MySQL 8 专用 SQL
  • 不复制 OpenCPN GPL 源码

完成报告

写入: docs/报告/CM93_MySQL导入器完成报告_v1.md

至少包括:

  • 实现范围
  • 实际样本
  • cell 数
  • source/imported feature 数
  • attribute 数
  • unknown 数
  • geometry invalid/repaired 数
  • 精度审计结果
  • MySQL 版本
  • Python 版本
  • 已知限制