{
  "$schema": "https://bestaiskill.com/schemas/agent-install/2.json",
  "skill": "testimonial-video",
  "built": "2026-10-26",
  "control_level": 4,
  "control_level_label": "L4 高权限",
  "capabilities": [
    "execute_command",
    "network",
    "write_file"
  ],
  "required_controls": {
    "agent": [
      "sandbox_recommended",
      "graded_authorization"
    ],
    "admin": [
      "approval_process",
      "rollback_support",
      "full_audit"
    ]
  },
  "evidence": [
    {
      "file": "scripts/",
      "summary": "Execute local scripts or commands: No bundled scripts in skill directory; SKILL.md/reference instructs agent to run `node` (CSV→props script, source code in refer"
    },
    {
      "file": "网络端点",
      "summary": "Declare external network access: No operational API calls during runtime; review text and avatar assets provided by user (local files or user-provided URLs)."
    },
    {
      "file": "本地工作目录",
      "summary": "File read/write & artifact output: Writes `reviews/*.json` (CSV→props artifacts), `out/*.mp4`, and `out/demo.gif` inside user workspace."
    }
  ],
  "verification": {
    "method": "第一遍读全目录（SKILL.md + quote-card.md + batch-and-typography.md + 仓库根 scripts/），逐条摘录逐字引用；第二遍独立重读并找茬：① 逐行语义核对批量脚本的执行顺序（发现 slug 的 TDZ 缺陷）；② 核对两处星级实现与无障碍属性是否一致；③ 用公式复算时序表与 hlStart 的对应关系；④ token 扫描凭证面；⑤ 拼装脚本内置与 tools/verify_analysis.py 同口径的 quote 回源校验。仓库元数据 stars/last_push 取自 GitHub API 快照 2026-09-28。",
    "second_pass": [
      {
        "item": "批量脚本是否可直接运行",
        "status": "discrepancy",
        "detail": "batch-and-typography.md 的 `rows.forEach(...)` 内部调用 `slug(r.name)`，而 `const slug = ...` 定义在 forEach **之后**——直接运行会触发 TDZ ReferenceError（应把 slug 定义提前）。这是照抄会失败的实现瑕疵。"
      },
      {
        "item": "星级/分值口径是否两处一致",
        "status": "ok",
        "detail": "SKILL.md 的 StarRating 与 quote-card.md 都用 `(rating/max)*100` 宽度裁切，都挂 role=img + aria-label 真实分值；BT 另补充「无评分就不画星，不默认 5 星」。"
      },
      {
        "item": "时序表与公式是否自洽",
        "status": "ok",
        "detail": "quote-card 的时序表（8–48 行、44–54 高亮…）对应 `hlStart = 8 + lines.length * 6 + 4`：5 行时 hlStart=42（表列 44），6 行时 48（表列 44–54 上沿）——量级一致，表以 5–6 行引文为例。"
      },
      {
        "item": "SKILL.md 与 reference 的 schema 是否同构",
        "status": "ok",
        "detail": "quote/highlight/rating/max/name/role/company/avatar 八个字段在 SKILL.md 示例、quote-card.md 的 Review 类型、BT 的 Review 类型三处完全一致。"
      },
      {
        "item": "顺序纪律是否有一致论证",
        "status": "ok",
        "detail": "本 skill 的顺序是「引文→星→作者」（claim → proof → who）；SKILL.md 与 quote-card.md 的 Why these choices 均说明重排会削弱可信度。"
      },
      {
        "item": "凭证/外发面反查",
        "status": "ok",
        "detail": "token 扫描零实质命中；无 env、无 keychain、无 cookie 读取；批量脚本只读本地 CSV、只写本地 JSON 与 MP4。"
      }
    ],
    "level": 1,
    "level_label": "V1 已固定",
    "commit": "0de0f2a1c1f42a98103fc0ec436509276428372c",
    "sha256": "e005b1884e39df9adbaca0bfecca185c47bfee0d7a0be57951d17352682184bd",
    "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/testimonial-video.tar.gz",
    "sha256": "e005b1884e39df9adbaca0bfecca185c47bfee0d7a0be57951d17352682184bd",
    "commit": "0de0f2a1c1f42a98103fc0ec436509276428372c"
  },
  "original": {
    "github": "https://github.com/iart-ai/ad-video-skills/tree/main/skills/testimonial-video",
    "path": "skills/testimonial-video",
    "commit": "0de0f2a1c1f42a98103fc0ec436509276428372c"
  }
}