mirror of
https://github.com/norandom/OpenUltraSAST.git
synced 2026-10-16 03:49:26 +00:00
23 lines
822 B
Markdown
23 lines
822 B
Markdown
# VFC training catalog
|
||||
|
|
|
|||
|
|
Each JSONL row is one isolated snapshot: **vuln** (positive) or **fixed** (negative).
|
|||
|
|
|
|||
|
|
```bash
|
|||
|
|
python3 benchmarks/pairs/vfc/generate_catalog.py
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
`manifest.jsonl` fields: `id`, `pair`, `label` (`vuln`|`fixed`), `cve`, `year`, `cwe`, `project`, `file`, `relpath`, `license`, `commit`, `commit_url`.
|
|||
|
|
|
|||
|
|
The JSONL is the training index. Pair eval (`ousast pairs --slice vfc`) is the honesty dashboard, not a merge gate.
|
|||
|
|
|
|||
|
|
Filter 2020–2026:
|
|||
|
|
|
|||
|
|
```python
|
|||
|
|
import json
|
|||
|
|
from pathlib import Path
|
|||
|
|
rows = [json.loads(line) for line in Path("benchmarks/pairs/vfc/training/manifest.jsonl").read_text().splitlines()]
|
|||
|
|
recent = [row for row in rows if 2020 <= row["year"] <= 2026]
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
Do not treat this slice as a merge gate. Memory-safety pairs often LEAK after the fix; UAF/type-confusion often MISS inventory.
|