文档文章

理解 loss analysis

通过 diagnostics 判断哪些语义发生了降级,哪些能力还未被支持。

指南8 分钟

Loss analysis 是我们在跨格式转换里保持诚实的方式。

转换成功不等于语义百分之百保真,文档应该尽早把这件事讲清楚。

适合人群
集成开发者
难度
中级
最近更新
2026年7月27日
First transformation
先理解基本转换流程,再看语义损失。
Playground
在浏览器里观察这些 warning 如何出现在转换结果旁边。

为什么会有 loss

当源格式能表达的语义无法被目标格式完整承载,或者当前 generator 还没有建模到这一层时,就会发生 loss。

toolkit 应该把这些情况显式标记为 diagnostics,而不是悄悄塞进一个看起来可用的 best-effort 输出里。

怎么理解 diagnostics

这对下游团队尤其重要,否则他们很容易误以为生成结果已经可以不经检查直接提交。

  • 把 warning 当作需要审阅的事项,而不是噪音。
  • 区分语义损失和纯格式差异。
  • 把已知的 lossy case 示例放在支持路线附近。

如何继续使用这套分析

按 route 分类的矩阵和示例可以帮助团队更快判断风险。先从统一的诊断语言和预期开始。