Neue Befehle:
- `python -m scanner check-assets` — SHA-256-Hashes aller JS/CSS/Bild-Assets
aus dem letzten Snapshot fetchen und mit Baseline vergleichen
- `python -m scanner approve-assets` — aktuelle Hashes als neue Baseline setzen
Scoring: geändertes JS 40 Pkt, CSS 30 Pkt, Bild/PDF 20 Pkt.
Asset-Baseline liegt in data/baseline/asset_hashes.json.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Echte Bugs:
- extractor: JSON-LD-Crash bei Nicht-Dict-Items (isinstance-Guard)
- baseline/__main__: Crawl-Fehler ins Snapshot-Manifest -> erscheinen im Report
- __main__: Whitelist-/Header-/Webshell-Checks nur noch auf status==200
- crawler: Noise-Param-Regex auf Voll-Key (view=/value= nicht mehr verworfen)
- differ/__main__: unerwartetes JSON-LD via eigenem Kanal, auch auf
unveraenderten Seiten erkannt, kein Re-Alert auf bereits genehmigte Typen
Aufgeraeumt:
- checker: check_internal_paths, find_broken_pages, canonical_is_hijacked,
check_jsonld_types entfernt (nicht verdrahtet)
- allowed_paths.yaml-Logik und tote Scoring-Keys entfernt
- tote Imports entfernt
Neuer aktiver Schutz:
- Webshell-/Backdoor-Dateinamen-Check verdrahtet (suspicious_filename: 60).
Regex wortgrenzen-verankert gegen Fehlalarm auf PSEMailerAntispam.js
Effizienz/Struktur:
- crawler nutzt requests.Session (keep-alive)
- Cache-Buster-Normalisierung an einer Stelle (Extraktion) -> stabile
Snapshots, differ wieder reiner Set-Diff
Tests: 111 gruen (neu: test_checker.py + Regressionstests)
CLAUDE.md aktualisiert
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>