{
  "name": "vanguard-advisor-tools — 1 skill",
  "slug": "source-skills-7195c385a63a0a994eb0a274",
  "type": "skills",
  "category": "developer-tools",
  "example": false,
  "evidence_state": "pinned_source_listing",
  "stamp": "Pinned source listing — machine-checked",
  "summary": "Pinned source declarations and file hashes were listed.",
  "outcome": "Listed 1 skill declaration. Ran 10 git commands; each one's exit status and output hash is in commands.json. Scope: acquisition and static inspection.",
  "rule_results": [
    "The retained source tree matches its acquisition manifest.",
    "Declared skill names (listing.json): model-prep"
  ],
  "task": "What declarations and files are present in this pinned source?",
  "setup": "Git blob acquisition followed by static source inspection.",
  "limitations": "Scope: acquisition and static inspection. Command results: commands.json.",
  "source_url": "https://github.com/Vanguard-oss/vanguard-advisor-tools.git",
  "documentation_url": "https://github.com/Vanguard-oss/vanguard-advisor-tools.git",
  "commit": "328fe9f61fe7a375b87a6492e265b4a5a955b0ce",
  "tree_sha256": "9760d1cb683157684387e1ae78a7c61f2bc3c8aaa5dc325757ff076b81426db8",
  "file_sha256": {
    ".claude-plugin/plugin.json": "0e86c5bccba56ead1affef7866dcc402dcfbf32919736c4bc34ca402b989103d",
    "skills/model-prep/SKILL.md": "644822466e6c7aa24ca0b6f939d042750a429df518194f210416a32dda38a362",
    "skills/model-prep/reference/client-output.md": "d550d83d90e9203403c7e285a24daf9527868cab34b9455e46d521b89867dc9c",
    "skills/model-prep/reference/one-pager.md": "8b6e7fc1e122fde01dc004a454ebd28870e7ac38fb8e96b46cf944977e41da4c",
    "skills/model-prep/scripts/make_model_pdf.py": "072c70631867b9b2dcbc2183bdc8857ee67032ae279e628c83c7d340680876b2"
  },
  "lockfiles": [
    "LOCK.json"
  ],
  "utc_date": "2026-10-20T00:19:03Z",
  "source_date": "2026-10-16",
  "discovered_date": "2026-10-16",
  "retested_date": "2026-10-20",
  "reviewed_date": "2026-10-20",
  "published_date": "2026-10-20",
  "modified_date": "2026-10-20",
  "reviewer": "machine pipeline",
  "harness_version": "toolwitness harness at commit 80347ac5c68b1268b011b015a8797984151a16e7",
  "claude_code_version": "Not applicable: static source inspection (commands.json).",
  "model_id": "Not applicable: static source inspection (commands.json).",
  "scanner_version": "Not applicable: static source inspection.",
  "rulepack_version": "Not applicable: static source inspection.",
  "agents": [],
  "disclaimer": "This record lists declarations and file hashes from a pinned source tree. Git command results from acquisition and static inspection are retained in commands.json. Scope: acquisition and static inspection. It is not a security or quality verdict. Changed bytes are outside this record.",
  "commands": [
    "Ran 10 git commands; each one's exit status and output hash is in commands.json. Scope: acquisition and static inspection."
  ],
  "prompt_list": [
    "Not applicable: static source inspection (commands.json)."
  ],
  "history": [
    "2026-10-20T00:19:03Z: pinned source inspection"
  ],
  "application": {
    "name": "vanguard-advisor-tools — 1 skill",
    "softwareVersion": "328fe9f61fe7a375b87a6492e265b4a5a955b0ce",
    "applicationCategory": "DeveloperApplication",
    "operatingSystem": "Not exercised"
  },
  "artifacts": {
    "transcript": "Ran 10 git commands; each one's exit status and output hash is in commands.json. Scope: acquisition and static inspection.",
    "sinkhole_log": "Not applicable: static source inspection (commands.json).",
    "canary_log": "Not applicable: static source inspection (commands.json).",
    "scanner_output": "Not applicable: static source inspection (commands.json).",
    "normalized_text": "{\n  \"listing\": {\n    \"skills\": [\n      {\n        \"path\": \"skills/model-prep/SKILL.md\",\n        \"name\": \"model-prep\",\n        \"description\": \"Help a financial advisor find Vanguard model portfolios that match a client need, understand how those models are built, and produce a meeting-ready advisor one-pager — as text and as a styled PDF — with optional client-facing material. Use when an advisor asks about model portfolios, model series, prebuilt or off-the-shelf portfolios, outsourcing portfolio construction, wants a PDF of a model one-pager, or wants to prepare for a client conversation about a model approach. Also use when an advisor describes a client need or goal — income, growth, retirement, \\\"something safer\\\" — and asks what portfolio to show, present, put in front of, or build for them, even when they never say the word \\\"model\\\" and name no specific funds. That phrasing is how advisors actually open this request. This skill covers model portfolios rather than individual funds, so weighing two or more specific tickers against each other is a fund-comparison question and outside its scope.\",\n        \"files\": {\n          \"skills/model-prep/SKILL.md\": \"644822466e6c7aa24ca0b6f939d042750a429df518194f210416a32dda38a362\",\n          \"skills/model-prep/reference/client-output.md\": \"d550d83d90e9203403c7e285a24daf9527868cab34b9455e46d521b89867dc9c\",\n          \"skills/model-prep/reference/one-pager.md\": \"8b6e7fc1e122fde01dc004a454ebd28870e7ac38fb8e96b46cf944977e41da4c\",\n          \"skills/model-prep/scripts/make_model_pdf.py\": \"072c70631867b9b2dcbc2183bdc8857ee67032ae279e628c83c7d340680876b2\"\n        }\n      }\n    ],\n    \"hooks\": [],\n    \"executions\": []\n  }\n}"
  },
  "review_input": {
    "identity_artifact": "identity.json",
    "evidence_sha256": {
      "LOCK.json": "22fe8b72380c1ee4baf3f06ec9abebec4e8b5d7452916d1b343462817089827d",
      "commands.json": "31ba6191656524fd4d385578756670a3c81d9f866b7cbdf26555b5ecce69e93d",
      "complete.json": "91b504b43905fdc009504d516c45eea831f39a1995b9e7d69987c9756c936d6f",
      "identity.json": "144690fa26ab6635f1c8253ff9730d852f5aafd89096018ed82464c3540699cb",
      "listing.json": "f035f7bbabdf690b1fdfc32c711136c32a58f1b147d01e036c049334cd108e41",
      "selection.json": "0ee6cf5e2f4ac80ffc4bfc9e72e290a9fb8ed9071f6f87aa9ccbfb1f0280b786"
    },
    "claims": [
      {
        "id": "acquired",
        "field": "summary",
        "text": "Pinned source declarations and file hashes were listed.",
        "sources": [
          "LOCK.json",
          "listing.json",
          "commands.json"
        ]
      },
      {
        "id": "listed",
        "field": "outcome",
        "text": "Listed 1 skill declaration. Ran 10 git commands; each one's exit status and output hash is in commands.json. Scope: acquisition and static inspection.",
        "sources": [
          "LOCK.json",
          "listing.json",
          "commands.json"
        ]
      },
      {
        "id": "tree",
        "field": "rule_results.0",
        "text": "The retained source tree matches its acquisition manifest.",
        "sources": [
          "LOCK.json",
          "listing.json",
          "commands.json"
        ]
      },
      {
        "id": "declared",
        "field": "rule_results.1",
        "text": "Declared skill names (listing.json): model-prep",
        "sources": [
          "LOCK.json",
          "listing.json",
          "commands.json"
        ]
      }
    ]
  },
  "review": {
    "kind": "machine-checked",
    "date": "2026-10-20",
    "reviewed_sha256": "1d314deb8698addec9d20e558d01ea00edab49b6c8b04f86c20ba197ccf2c079",
    "gates": "74c0eea647266c77e74b8b890dfc5a6784f4c9fb9024994cf3e71b87116b5b3d",
    "codex": "0e7151ed35cfd1f0732d90cdc01cfe81ec64907cdc9c0ee9c31bb228ac25f087",
    "grok": "001f2816dec6b047a3260dede2e51e68b5979fe689a1494b1a4b7d5bd29e0971",
    "summary": "Deterministic gates passed; every claim rebuilt from evidence with a reviewed template; Grok reported no standing refutation."
  }
}
