Skip to content

决策记录

固定 32×32 画布

  • 决策: v0.1 画布固定为 32×32。
  • 背景: 类型系统允许 1–256,但文档和渲染器假设 32×32。
  • 后果: 更简单的验证、一致的示例、更容易的测试。
  • 延期: v0.2+ 的可变画布尺寸。

CommonJS-Only 包

  • 决策: v0.1 以 CommonJS-only 形式发布。
  • 背景: TypeScript 输出 CommonJS;双构建增加复杂性。
  • 后果: ESM 消费者在严格环境中可能需要 createRequire
  • 延期: 未来 issue 的 ESM / 双构建。

同账号审查回退

  • 决策: 当 Architect 和 Builder 共享 GitHub 账号时,使用顶级 ## Architect Review Note PR 评论。
  • 背景: GitHub 阻止对自己 PR 的正式审查。
  • 后果: 审查记录位于 PR 评论中,而非 GitHub 审查 UI。
  • 延期: 机器人集成或独立账号。

作用域包名

  • 决策:@yangyus8/emotile 发布。
  • 背景: npm 因与 emotion 过于相似而拒绝 emotile
  • 后果: 更长的安装命令;作用域命名空间。
  • 延期: 如果 npm 政策改变,取消作用域。

最后写入优先的像素冲突

  • 决策: 渲染器使用最后写入优先来消除重叠像素。
  • 背景: 多个原语可能在同一坐标发射像素。
  • 后果: 确定性输出;渲染顺序很重要。
  • 延期: 未来版本的图层 / z-index / 合成器。

文档作为长期规划主页

  • 决策: 长期规划属于 docs/,而非无限期开放的 issue。
  • 背景: 开放的 issue 应该是 Builder 可执行的任务。
  • 后果: issue 是可操作的;路线图/决策存在于版本化文档中。
  • 延期: 无。

v0.2 第二阶段范围

  • 决策: v0.2.0 只发布 tickExpression、Agent helpers / guidance、以及主题 / 调色板设计提案。主题 / 调色板运行时支持默认推迟到 v0.3。
  • 背景: 已合并的 v0.2 工作已经加入行为 API(tickExpression)和面向 Agent 的辅助能力。此时加入主题运行时会扩大 renderer / schema / API 的审查风险。
  • 后果: 除非出现明确下游需求且 Architect 明确重新打开 v0.2 范围,否则不应创建 theme/palette 的 Builder runtime issue。
  • 延期: 独立调色板输入、表达式内嵌调色板、命名主题、具体颜色映射运行时。

v0.2 发布就绪处理方式

  • 决策: 发布就绪 checkpoint 记录在 docs 中,短期 issue 在决策完成后关闭。
  • 背景: 发布就绪判断是 Architect 决策,不是长期 Builder 任务。
  • 后果: 剩余发布工作必须转换为 Builder 可执行的 metadata 或验证任务。
  • 延期: 将 release readiness issue #40 作为长期发布跟踪器保持开放。

Released under the MIT License.