Review pass: fix bugs, silence clippy, correct docs
Bugs: - extract: pick the OUTERMOST archive suffix (sfx.first(), not last()) so x.tar.gz uses the gz->tar path - gwshop: truncate the error snippet by chars, not bytes (UTF-8 panic) - sorter: py_stem_split now matches pathlib (0 < i < len-1) so a trailing dot is not treated as a suffix - sorter::apply_plan: a per-file link/copy/mkdir failure is logged and skipped instead of aborting the whole apply (never-abort contract) - orchestrate/state: add State::mark_logged and use it for every per-URL record so a state-save error cannot abort a run Cleanups: - remove dead is_archive_name and unused SourceInfo.manifest field - mark kept-but-unused capabilities with allow(dead_code) + rationale - let-chains / is_ok_and / is_multiple_of / replace([..]) / sort_by_key and other idiomatic simplifications across modules - difflib: SequenceMatcher owns its char vecs (bit-identical parity kept) - --only now enforces gofile|0807 via value_parser Docs: - SORTING.md: drop phantom sorter_plan.jsonl, os.link -> std::fs::hard_link, zipfile -> the zip crate - README: add --since to the dlp synopsis, clarify --subs/--assume-done - .gitignore: ignore catalogue/sorter/_logs/subscriptions run artifacts Validation: cargo fmt --check clean, cargo clippy --all-targets 0 warnings, cargo test 87 passed / 0 failed.
This commit is contained in:
@@ -18,4 +18,12 @@ state.json
|
||||
state.json.tmp
|
||||
failed_urls.txt
|
||||
manifest.jsonl
|
||||
catalogue.md
|
||||
catalogue.jsonl
|
||||
catalogue_moves.jsonl
|
||||
sorter_applied.jsonl
|
||||
sorter_low_confidence.txt
|
||||
subscriptions.json
|
||||
*.bak
|
||||
_logs/
|
||||
*.log
|
||||
|
||||
Reference in New Issue
Block a user