KamoCRM

Shared-library half of Antivirus — gate, client, tables, rights, kinds, templates, report

Featurekamo-shared-library
Shipped
8 நவம்பர், 2026 அன்று 12:25 AM UTC
Author
Kamo
Commit
332f727

- Entities/repos for the six hand-applied tables (content_scan_verdicts, antivirus_detections, antivirus_false_alarm_reports, antivirus_allowlist, antivirus_org_settings, antivirus_daily_stats). - com.kamo.z.shared.antivirus: **************** AntivirusPolicy (brief §2), AntivirusClient (streaming /v1/scan, holds by pod, breaker, X-Internal-Auth), AntivirusGate (scanUpload / verdictFor / assertReadable / recordVerdict / applyRecheck / drill), AntivirusRecorder (REQUIRES_NEW writes, upserts), AntivirusNotifier (bell + email via EmailService, rt.org.<org>.antivirus), AntivirusUploadGuard (raw-MinIO paths), AntivirusHoldCompleter, AntivirusExceptionAdvice (422/423/503). - ImageService: screen before any row/object in storeContentAddressed (all overloads) and uploadDocument; held => is_missing dat, no object; read gate in downloadDocument + public assertReadable. Scanning is opt-in per service (kamo.antivirus.enabled); the read gate is always on. - ServiceType ANTIVIRUS(41, core); rights VIEW_ANTIVIRUS 698, MANAGE_ANTIVIRUS_POLICY 699, SHOW_TOUR_ANTIVIRUS 700; PlatformRightType MANAGE_PLATFORM_ANTIVIRUS; NotificationKind **************** AccessLogEventType ANTIVIRUS_*; four canonical templates; Report Studio compliance.antivirus.

All changes

Like what you see shipping?

All of it arrives in your workspace on its own. Start on the free plan and read this page again in a month.

Start Free ForeverView Pricing