{
  "$schema": "https://bestaiskill.com/schemas/agent-install/2.json",
  "skill": "d3-js-visualization",
  "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 instructions and rule text; involves no script execution or external impact."
    }
  ],
  "verification": {
    "method": "两遍独立侦查。第一遍：全目录逐文件读（SKILL.md 820 行全文 + 3 份 references + 2 份 jsx + 1 份 json），按声明逐项取证。第二遍换角度反查（不复用第一遍结论）：① 用 find/git 枚举全部文件与隐藏文件，核对资产面结论（得 7 个文件，无 scripts/package.json/LICENSE/.github）；② 全目录逐类 token 扫描（https?:// / curl / wget / fetch / d3.json / d3.csv / XMLHttpRequest / require / child_process / exec( / spawn / process.env / .env / api_key / token / secret / localStorage / fs. / base64 / eval( / atob( / \\x 转义），逐条确认真实命中与假阳性；③ 非 ASCII 扫描（LC_ALL=C grep '[^ -~\\t]'）排除隐藏/混淆内容；④ 功能声明 vs 实际能力逐条对齐（选型/图型/交互/过渡/响应式/地理/可访问性/性能）；⑤ 资源引用与实际文件名核对；⑥ gh api 核对 stars/license/pushed；git rev-parse 核对 commit。",
    "second_pass": [
      {
        "item": "official_desc 原文（frontmatter description）",
        "status": "ok",
        "detail": "SKILL.md:1-4 有完整 frontmatter，name: d3-viz、description 441 字符，已原文写入 meta.official_desc。"
      },
      {
        "item": "外部资源/网络端点清单",
        "status": "ok",
        "detail": "全目录 URL 扫描仅 1 条：https://d3js.org/d3.v7.min.js（SKILL.md:39）。无 fetch/d3.json/d3.csv/XMLHttpRequest 调用，无 API 端点、无 CLI 调用；地理图几何数据由调用方传入（d3-patterns.md:608-611），无 tile/topojson/atlas 拉取（grep topojson|us-atlas|world-atlas 零命中）。"
      },
      {
        "item": "凭证/环境变量读取",
        "status": "ok",
        "detail": "grep process.env|API_KEY|token|secret|localStorage 全目录零命中（不区分大小写）。"
      },
      {
        "item": "脚本执行面",
        "status": "ok",
        "detail": "无 scripts/ 目录、无 package.json、无 shell/python 文件；两份 .jsx 是给宿主工程用的 UI 模板，不被 skill 执行。唯一 exec 相关字面命中为 references/d3-patterns.md:366 `defs.append(\"linearGradient\")` 中的 `fs.`（假阳性），人工确认非文件系统调用。"
      },
      {
        "item": "资源引用与实际文件名一致",
        "status": "discrepancy",
        "detail": "SKILL.md:814-815 写 `chart-template.js` / `interactive-template.js`，实际文件为 `assets/chart-template.jsx` 与 `assets/interactive-template.jsx`（React JSX）。模型按正文文件名读取 assets 会落空（`.js` 不存在），只能靠 glob 或猜后缀——这是第一遍照抄资源段时容易漏掉的错，第二遍以 find 结果纠正。"
      },
      {
        "item": "『跨框架可用』宣称与模板实现一致",
        "status": "discrepancy",
        "detail": "SKILL.md:3（description）与 SKILL.md:10（Overview）宣称 React/Vue/Svelte/vanilla 全支持，SKILL.md:818 更称两份模板『work with vanilla JavaScript, React, Vue, Svelte』；但两份模板首行均 `import { useEffect, useRef, useState } from 'react'`（chart-template.jsx:1、interactive-template.jsx:1），且正文/模板使用 Tailwind 类名（chart-template.jsx:78,101 `className=\"chart-container\"` / `className=\"p-8\"`）。Vue/Svelte 在全文只出现于 description 与 Pattern B 注释，无任何示例代码——宣称覆盖面被高估，实际是 React+Tailwind 优先、vanilla 次之。"
      },
      {
        "item": "地理可视化能力是否真实（描述主张之一）",
        "status": "ok",
        "detail": "主干 SKILL.md 无地理章节（第一遍据此可能误判为『宣称未兑现』），但 references/d3-patterns.md:594 起确有 `## Geographic visualisations`，含 Basic map with points 与 Choropleth 两个完整实现（d3.geoMercator + geoPath）。结论修正为：能力存在，但只在下沉文档里，主干不提示地理章节位置。"
      },
      {
        "item": "d3 版本一致性",
        "status": "ok",
        "detail": "CDN 显式 v7（SKILL.md:39），示例用 .join() 与事件形参写法（v7 语义）；全文无 d3.event（v5 语义）残留。"
      },
      {
        "item": "许可证与仓库元数据",
        "status": "ok",
        "detail": "根目录无 LICENSE（与 GitHub API `license: null` 一致）；gh api 得 stars=230、pushed=2025-10-18T02:29:55Z、archived=false、created=2025-10-17。git log 仅 1 个 commit（e198c87 \"Initial commit.\"），无 tag，与 pin 一致。"
      },
      {
        "item": "commit 与工作副本一致性",
        "status": "ok",
        "detail": "git rev-parse HEAD = e198c87d03f1c9811acbff681886fac24baee53d，等于任务书 pin e198c87d03f1。"
      }
    ],
    "level": 1,
    "level_label": "V1 已固定",
    "commit": "e198c87d03f1c9811acbff681886fac24baee53d",
    "sha256": "e9922be6af3bb98d495dce684afff1c4d174aa8efd19ab1ddca8161024bed409",
    "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-15/d3-js-visualization.tar.gz",
    "sha256": "e9922be6af3bb98d495dce684afff1c4d174aa8efd19ab1ddca8161024bed409",
    "commit": "e198c87d03f1c9811acbff681886fac24baee53d"
  },
  "original": {
    "github": "https://github.com/chrisvoncsefalvay/claude-d3js-skill",
    "path": "",
    "commit": "e198c87d03f1c9811acbff681886fac24baee53d"
  }
}