{
  "$schema": "https://bestaiskill.com/schemas/agent-install/2.json",
  "skill": "seam-craft",
  "built": "2026-10-26",
  "control_level": 1,
  "control_level_label": "L1 基础",
  "capabilities": [],
  "required_controls": {
    "agent": [
      "auto_load"
    ],
    "admin": [
      "register_source_and_version"
    ]
  },
  "evidence": [
    {
      "file": "SKILL.md",
      "summary": "Pure prompt directives and normative text; executes no scripts and causes no external side effects"
    }
  ],
  "verification": {
    "method": "第二遍独立重读 + 交叉回源（不只读文档，还去 pin 源码里核它引用的路径是否存在）：① 全量文件清单：seam-craft/ 仅 SKILL.md；② token 扫描（URL/process.env/fetch/child_process/writeFile/凭证关键词）零命中；③ 把文档里的三处源码坐标拿到 pin 工作副本里逐一 test -f，并打开邻近代码看内容是否对得上；④ 回查它引用的 assemble-index.mjs 是否真的在做「刷底」（打开 skills/product-launch-video/scripts/assemble-index.mjs 实证，并全仓 grep canvas-deep）；⑤ 用 PyYAML 复采 frontmatter（本文件 description 不含 #，解析与原文一致）。",
    "second_pass": [
      {
        "item": "文档引用的源码路径在本 pin 是否真实存在（core/src/runtime/init.ts:1393-1410、core/src/lint/rules/composition.ts、core/src/lint/rules/gsap.ts）",
        "status": "discrepancy",
        "detail": "三处在仓库根下均**不存在**（core/src/… 无此目录）。实际已迁到 packages/ 前缀：`packages/core/src/runtime/init.ts` 存在（1393 行附近确为时长/clip 解析相关代码，可见 derivedDuration 等分支，但行号与分支名不能逐字对应 `external-slot branch`）；而 `packages/core/src/lint/rules/` 目录不存在，lint 现为 `packages/core/src/lint/index.ts` 单入口。结论：这三条源码坐标是写作时点的旧路径，在本 pin 已失效——不影响其结论（白闪机制、同轨非法），但照抄坐标去查源码会扑空。属上游文档与代码结构漂移，非本 skill 的行为风险。"
      },
      {
        "item": "「assemble-index.mjs now emits this」是否属实，且写法是否与文档一致",
        "status": "discrepancy",
        "detail": "属实但表达不同。pin 内 assemble-index.mjs 共 4 份（product-launch-video / faceless-explainer / music-to-video / pr-to-video）。以 product-launch-video 版为准：它确实在 <head> 样式里输出 `#root { position: relative; … background: ${groundColor}; }`（groundColor 取自 frame.md 的 canvas 语义色），并在 html,body 上兜底 `background: #000`。而文档写的字面式样是 `var(--canvas-deep, var(--canvas, #000))`——全仓（*.ts/*.mjs/*.html）对 `canvas-deep` **零命中**，即该 CSS 变量名在当前代码里并不存在。行为目标（#root 不透明、不会白闪）一致，具体表达式已演进。"
      },
      {
        "item": "「白闪」结论是否只是传言",
        "status": "ok",
        "detail": "文档给出机理（summed opacity < 1 的窗口 + 渲染器默认白页）与经验出处（observed on two Spotify runs before the fix），并指认三个会开窗的模板（cut-the-curve 中段、zoom-through 的 0.15 下限、普通 crossfade 的 power 曲线凹坑）；后在 cut-the-curve/SKILL.md 里交叉印证（zoom-through 出场透明度确为 0.15）。机理自洽、可验，接受为文档声明。"
      },
      {
        "item": "是否真的没有脚本/网络（green 档前提）",
        "status": "ok",
        "detail": "目录全量仅 SKILL.md；全文 URL、curl、npx、node 调用、process.env 均零命中。文中出现的路径串（core/src/…）是文字引用，不是可执行指令。"
      },
      {
        "item": "「不含 per-transition catalog」的自述是否属实",
        "status": "ok",
        "detail": "SKILL.md 正文只谈前置条件与机序，未列任何具体转场的参数（唯一出现 cut-the-curve/zoom-through 之处是在解释「谁会开出不透明度和 <1 的窗」）；转场目录确实不在本目录内。"
      }
    ],
    "level": 1,
    "level_label": "V1 已固定",
    "commit": "d2f0bc7f34837da54ae22063772d75d75ce26477",
    "sha256": "b3f716c34090b9a11a9ab7c29c2958d3c883050b9595bf31f019857063c99093",
    "reviewed_by": null,
    "reviewed_at": null
  },
  "assessed_at": "2026-10-25",
  "method_version": "2.0",
  "mirror": {
    "archive": "https://skillpub.pages.dev/r2/v/2026-09-28/seam-craft.tar.gz",
    "sha256": "b3f716c34090b9a11a9ab7c29c2958d3c883050b9595bf31f019857063c99093",
    "commit": "d2f0bc7f34837da54ae22063772d75d75ce26477"
  },
  "original": {
    "github": "https://github.com/heygen-com/hyperframes/tree/main/.claude/skills/seam-craft",
    "path": ".claude/skills/seam-craft",
    "commit": "d2f0bc7f34837da54ae22063772d75d75ce26477"
  }
}