You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Each classify-*.sh now auto-detects input format and emits the
sweep-target path as an explicit column.
Input formats (auto-detected from first byte):
- JSONL (legacy): {repo, path?, sha} — from gh /search/code paginate
- TSV (preferred): repo\tpath\tsha\tscope — from list-workflow-paths.sh
Output (all 4 classifiers, 7 columns):
repo \t path \t sha \t class \t reason \t lines \t details
The path column carries the file's location inside the repo, so
sweeps can target nested copies as first-class wrapper sites (not
just root-level workflows). When path is empty (legacy JSONL without
.path field), it defaults to "".
Validated:
- classify-mirror.sh /tmp/drift-survey/mirror-full.json (JSONL):
267 TRIVIAL + 22 NEEDS_REVIEW, matches prior sweep-report.md.
- classify-mirror.sh /tmp/drift-survey/scorecard-tuples.tsv (TSV):
fetches blobs and emits per-(repo, path) rows correctly.
Shared `normalize_input` extracted into _lib.sh; each classifier
sources it. Reduces per-script duplication.
Refs: #199 (campaign), #204 (helper script).
0 commit comments