Real 7z archives named .zip (seen live: 'Heresy Lab - HL068 Utela Justina.zip')
were quarantined because dispatch trusted the extension. python's 7z CLI
sniffs content; now so do we for 7z/zip/rar, keeping extension logic for
gz/bz2/xz/tar where the tar-inside decision needs the name.
User policy: the channel hosts user-created torrents (one ~2.5 TB); this
tool is for direct-download packs. Torrent links are recorded as done with
a note so they never re-download.
Rust-only extension (no python counterpart): --since 5d / 12h / 2026-10-04
keeps only URLs posted at/after the cutoff. URLs without a timestamp
(e.g. --urls-file lists) are kept with a warning.
- src/sorter.rs: inspect (zip/7z listing via crates, HTML-page detection),
keyword classification with inner-name votes, catalog load with dropped
systems, fuzzy matching on the CPython-difflib port (containment boost,
generic-token stoplist, tokenless bonus, weak tier, cross-system gates),
deepest-dir re-homing incl. provenance unit mode, build_target,
hardlink-apply with audit + low-confidence doc, format_plan
- all 9 python test_sorter_units.py cases ported and passing
- parity fixes found while porting: inner-name votes REPLACE (not max-keep)
the outer score below threshold; python max() keeps first maximal vote;
ratio cache keyed with allow_single; 512-byte head read for HTML sniff
- git mv of all existing files into version-python/ (history preserved)
- version-rust/: minimal cargo scaffold (edition 2024), no deps yet
- root AGENTS.md documents the transition rules and artifact/schema contract
- main is untouched; the python layout there stays as-is