这次发布用主脚本 `publish_to_halo.py` 走完整链路:POST + async publish + list 确认 + 公开页验证 + snapshot dump 验证。本文档用于回归检查 Halo 后台编辑器是否还能解析干净。
前提
本站点 Halo 是 2.23.1(OpenAPI spec 下载于 https://api.halo.run/assets/apis_console.api_v1alpha1-7jdlSuxO.json),运行 joe 主题。Console API 通过 Bearer PAT 鉴权。
发布链路
1. `content.content` 和 `content.raw` 都是 line-based HTML 字符串(`\n` 分隔),不是 ProseMirror JSON。
2. `spec.owner` 必须是 `mem0-ai`(主题用它渲染作者栏)。
3. `spec.cover` 是封面图路径。
4. POST body 里 `rawType: "HTML"`。
5. 首次发布触发 base snapshot 创建(带 `keep-raw: true` 标注)。
6. publish 用 `?async=true`,发布完后 list 二次确认 publishTime 非空。
7. 公开页验证用关键词 grep(不要用 ` ` 节点数
后续所有 niuma-NNN 发布都用这个脚本
不再需要绕过素材断言(脚本自动校验)。不再需要手动维护 ProseMirror JSON 格式。
评论区