GitHub 发布前检查清单
核心范围
- 项目定位保持为 L2-only SPZ validator
- CLI 对外口径为
check-spz/dump-trailer/registry/compat-check/compat-board/gen-fixture/guide/--self-test - 不对外承担
check-glb/check-gltf/ GLB 容器校验 -
compat-board被明确描述为兼容性成熟度看板,而不是算法排行榜
协议一致性
- 官方扩展存在位为
0x02 -
0x01抗锯齿语义保持不变 - 未知 flags 位按可忽略处理
- TLV 结构固定为
[u32 type][u32 length][payload...] - 未知 TLV 类型可按
length跳过 - 版本策略为:
<1error,1..4正常,>4warning
Adobe 扩展
- 文档与代码统一使用弧度制语义
-
minElevation/maxElevation范围为[-pi/2, pi/2] -
minRadius >= 0 - Adobe 单元测试与集成测试已覆盖弧度制边界
文档一致性
-
README.md与README-zh.md结构和口径一致,并完整覆盖当前 CLI 命令说明 -
docs/WIKI.md与公开协议口径一致,README承担完整 CLI guide -
docs/extension_registry.json与内置 registry / compatibility board 快照一致 -
spz-entropy被描述为 vendor extension 规划项,而非 core header 修改
构建与测试
- 在 WSL 中完成配置、编译、测试
-
spz_gatekeeper_self_test通过 -
adobe_extension_test通过 -
extension_integration_test通过 -
registry_cli_test/compat_check_test/gen_fixture_test通过 -
./build/spz_gatekeeper --help与 README 中的命令面一致 - WASM 浏览器 smoke test 通过(仅使用程序生成的合成 fixture,不依赖真实
.spz) - GitHub Pages / Emscripten 构建通过或已明确记录非本次范围
发布步骤
cmake -S cpp -B build -DCMAKE_BUILD_TYPE=Release
cmake --build build --parallel
ctest --test-dir build --output-on-failure
./build/spz_gatekeeper --help
./build/spz_gatekeeper registry --json
./build/spz_gatekeeper compat-board --json
emcmake cmake -S cpp -B build-pages -DCMAKE_BUILD_TYPE=Release -DBUILD_TESTING=OFF
emmake cmake --build build-pages --parallel
./build/spz_gatekeeper gen-fixture --type 0xADBE0002 --mode valid --out build-pages/site/synthetic_valid.spz
python3 -m http.server 4173 --directory build-pages/site
# 新终端执行:node tests/wasm_smoke_test.mjs http://127.0.0.1:4173 build-pages/site/synthetic_valid.spz
后续规划
- 若要实现
spz-entropy,先固定公开的 vendor/type 口径 - 先补 payload 规范,再补 validator 和 TLV 集成测试