> 2026-11-06 **py-visactor-katex 0.1.0 已正式发布到 PyPI/GitHub，实际下载及 Windows/Linux 安装已验证。** 当前入口 [发行状态](docs/RELEASE_STATUS.md) 和 [机器记录](references/release-publication-0.1.0.json)。导入仍为 `py_katex`；下方待授权/暂缓安装状态均是历史。正式 tag 为 `py-visactor-katex-v0.1.0`。

> 2026-11-06 PyPI 拒绝 `py-katex` 相似名。正式发行名采用 `py-visactor-katex`，导入 `py_katex`/CLI `py-katex`/仓库名保持。新候选 tag 为 `py-visactor-katex-v0.1.0`；旧 v0.1.0 与其资产保留为名称被拒的历史，不覆盖。

> 2026-11-06 用户授权 py-katex 正式发布。本轮版本 0.1.0：执行构建、仓库外 wheel/sdist 安装验证、GitHub commit/push/tag/Release、PyPI 发布及下载核验。此授权覆盖下文旧“暂缓安装/未授权发布”。数学算法和静态范围不扩展；旧验收对应原始候选，发行差异需单独保存。凭据不写入代码、日志或发行物。

> 2026-11-06 **固定 KaTeX 0.18.11 核心静态迁移已完成本地验收**：973 方法、684 上下文、1909 功能输入/217 等价关系、275 案例三后端与 297 历史流程图三后端通过。当前入口为 [完整验收](docs/FULL_STATIC_ACCEPTANCE.md)。安装验证暂缓，未提交推送发布；下方旧 alpha/未实现状态仅作历史。

> 2026-11-05 用户要求一次完成剩余核心静态 KaTeX 迁移，当前执行 [完整收口计划](docs/FULL_STATIC_MIGRATION.md)。旧 alpha 验收仅是历史起点，不能用于新候选。安装验证仍暂缓。

> 2026-11-05 本轮原生静态 alpha 已完成本地验收：712 个方法、69 个数学/集成案例 × 3 后端、297 个历史案例 × 3 后端通过。详见 [验收记录](docs/ACCEPTANCE.md)。完整 KaTeX 兼容仍有明确待补项；安装验证暂缓，未提交推送发布。下文阶段安排保留为历史。

# py-katex 工作约束

当前任务：独立 Python 数学公式解析、排版和静态绘制，接入相邻 py-mermaid。来源固定 KaTeX 0.18.11 / d5bed9f38a8d747b9c4a12e18897a514707e1c26，Canvas 0.1.0a18。

生产不用 Node、浏览器、JS 解释器、DOM、skia-python 或 .local；只用 py-skia-canvas 公开 API。开发 oracle 可用锁定官方 JS。字体与字形度量随包离线提供并保留许可证。未支持语法必须明确异常，不吞错、不使用普通字符串/空图作为成功公式。

继承本次会话的顺序：P0 来源/起点/合同 → P1 集中源码，机械检查 → P2 来源独立测试设计 → P3 保存首次失败、根因批修 → P4 同候选完整验证、人工看图、HTML 报告 → P5 文档交付。安装验证按用户要求暂缓；未授权发布/提交/推送。

本任务明确采用主协调 + 三个并行 worker，遵循相邻 py-mermaid/docs/PARALLEL_EXECUTION.md 的单文件 owner 和回执规则。主协调：model/API/数据提取/包元数据/来源/工具/报告/总状态；A：parser.py/macros.py；B：layout.py 与独立 layout 子模块；C：canvas.py 与 py-mermaid 标签数学接线。接口扩展先发给主协调，不抢写他人文件。P1 不先写行为测试，待主协调宣布 P2 后独立设计测试。

命令、失败和来源指纹保存在独立 test-runs；已有证据不覆盖。保持原项目脏树，不能重置既有 F01.4 成果。全 KaTeX 兼容率只能由完整清单与实际证据得出，不能把几个可见公式冒充全部命令/环境兼容。
