- Shipped
- November 8, 2026 at 6:13 AM UTC
- Author
- Kamo
- Commit
- 898f141
- Rights 703-707 (ANTIVIRUS_WIDGET + **************** mirrored from shared-lib 9dcbc521 with the five hierarchy edges (parity 292 -> 297); widget 'antivirus.protection' registered (1x1, resizable, no app gate) - Plain-language Antivirus refusals: wallpaper dropzone + BackgroundManager, Clubhouse post images (incl. partial refused[] lists; a refused upload keeps the draft), lead-import source file (stops the import), rate-sheet ingestion, photo album uploads (blocked rows no longer count as still processing, so the dialog can close) - uploadDocument / ingestionApi errors carry status + body so callers can read the reason - Document tiles: library picker, material picker, Materials workspace and album picker read **************** locked or checking files show the overlay and can't be picked - Mail rows: shield-paperclip from antivirusRemoved / hasBlockedAttachment (EmailService b05af4f), header fallback, shown even when the listing says no attachment - Composers lock the exact file a 422 names (top-level fileName) in mail and chat - NOTIFICATION_KINDS: the three Antivirus kinds straight after SI_ASSISTANT_REPLY, as NotificationKindCatalog - Platform tab: Stored Files Check panel (baseline done/total, pace, time left, clean/locked/couldn't check/not stored) - @kamo/antivirus-core 0.1.1
