← ClaudeAtlas

security-fix-oraclelisted

Use when turning a real project's git history into a labeled, enriched, leakage-free security-fix dataset ("oracle") for a vulnerability classifier, rule-authoring feed, or risk-prioritization model. Triggers: "mine commits for security fixes", "build a vuln dataset / training corpus from git history", "label commits by CWE / vuln category", "SZZ", "blame who introduced the vulnerability", "vulnerability-introducer attribution", "skill-gap analysis", "CVSS scoring of commits", "diff-verified gold vs message-only weak labels", "git blame on a blobless / partial clone is slow". Also load when extending the vuln-research Ruby rule MegaDB oracle.
Lu1sDV/skillsmd · ★ 2 · AI & Automation · score 63
Install: claude install-skill Lu1sDV/skillsmd
# Security-Fix Oracle — mining git history into a labeled vuln dataset A reproducible pipeline + runnable **harness** for converting a project's commit history into a quality-tiered, leakage-aware dataset of security fixes, enriched with **CVSS 3.1** scores and **SZZ vulnerability-introducer attribution**. Built and validated on `gitlab-org/gitlab` (189k commits → 18,202 security-relevant → 1,018 diff-verified gold + 204 non-Ruby confirmed; CVSS over 18,060 rows; SZZ over 13,643 diffed rows). The methodology is repo-agnostic; the harness constants point at the GitLab build and are meant to be re-pointed. ## What it produces A single Parquet (one row per commit SHA) with: - **labels**: `category` (vuln-class taxonomy term), `cwe[]`, `quality_tier` (gold/weak) - **features**: `subject`, `body`, `diff` (the fix patch), `sink`, `tainted_input`, `language` - **enrichment**: `cvss_score`/`cvss_vector`/`cvss_severity`, `vuln_class_cwe[]` - **attribution** (optional sidecar column, PII): `szz_introducers`, `szz_primary_introducer`, … - **quality signals**: `is_security_fix_regate`, `label_disagreement`, `near_dup_subject_hash` …plus a **data dictionary** documenting every column and the read-before-modeling caveats (train on gold, never use model-generated text as features, avoid random splits because of backports). ## Pipeline (7 phases) | # | Phase | Harness | Model? | Output | |---|-------|---------|--------|--------| | 1 | **Mine & triage** — classify every commit's securit