Patch Notes

A running log of what's changed in Drubl — written for users, not developers.

July 2026 (engine v2 · build 651)LATEST

Hotfix: real videos from TikTok and YouTube were incorrectly coming back as 'CGI' after the build-650 release. Both root causes are fixed and verified against the exact videos that failed.

  • →Fixed a calibration bug in the zero-shot CGI probe: its temperature scaling made the CGI similarity score saturate near 100% on ordinary real footage, letting it override the main classifier's confident 'Real' answer. The probe is now correctly calibrated and only overrides when it is genuinely decisive (≥85%, up from 30%).
  • →Fixed a false 'CGI' flip on heavily compressed frames: platform re-encoding (TikTok/YouTube) destroys camera grain and smooths surfaces, which the pixel-level CGI detector misread as a 'clean rendered scene'. That detector is now suppressed whenever measured compression damage is high, since its evidence is unreliable there.
  • →Verified the fix against the exact production videos that regressed — they now return 'Real' again — while genuine CGI (animated-movie renders) and AI-generated images still detect correctly.
July 2026 (engine v2 · build 650)

Provenance-aware analysis: the engine now reads file metadata, detects manipulation and splicing, measures compression damage, and reports per-category probabilities with a plain-language explanation.

  • →Added a metadata & provenance detector: the engine now inspects the file itself for EXIF camera data, editing-software tags, embedded AI-generator markers (Stable Diffusion, Midjourney, DALL-E, Firefly, and more), and Content Credentials (C2PA) structures. A generator tag found inside the file is strong evidence of AI origin — even when the image looks visually real. Missing metadata is treated as neutral: platforms strip it routinely, so absence proves nothing.
  • →Added a manipulation & splicing detector using error-level analysis and per-region noise consistency. Regions pasted in from another source, or filled by AI inpainting, carry a different compression history and noise floor than the rest of the frame — the engine now spots that mismatch.
  • →Added compression-severity estimation: heavily re-encoded uploads (typical of social platforms) degrade the pixel-level evidence the physics detectors rely on. The engine now measures that damage and caps confidence accordingly instead of pretending the evidence is intact.
  • →Every image result now includes per-category probabilities (real, AI-generated, CGI, filtered, manipulated, inconclusive), the strongest supporting evidence, contradictory evidence, known limitations, and a plain-language explanation of why the verdict was reached.
  • →When top categories are nearly tied and confidence is low, the engine now answers 'Inconclusive' instead of guessing — a firm verdict requires evidence that actually justifies it.
  • →Camera EXIF data now works as supportive (but forgeable) evidence: it boosts a Real verdict slightly and dampens a low-confidence AI verdict, but can never flip a verdict on its own.
July 2026 (engine v2 · build 641)

CGI / animated movie detection fixed; zero-shot semantic probe now runs alongside the trained classifier head to catch photorealistic 3-D renders the head hadn't seen in training.

  • →Fixed a misclassification where Sausage Party-style CGI beach scenes were returned as 'Real' at 91% confidence. Root cause: the classifier head was trained almost entirely on AI-vs-Real examples and produced near-zero CGI probability for photorealistic 3-D renders.
  • →Added a zero-shot CGI semantic probe that runs alongside the classifier head on every image. When the probe's text-image similarity against the CGI description clears a conservative threshold (≥30%) and the head is uncertain, the probe's verdict wins — CLIP's base language-vision understanding generalises far better across animated-movie and CGI render styles than the fine-tuned head.
  • →Fixed a label-mapping bug: the classifier head's 3 output classes were previously matched to the wrong label list. Class 1 (CGI) was silently relabelled 'Filtered' → 'AI Generated', then flipped to 'Real' by the evidence rules. Labels are now read from a dedicated CLASSIFIER_HEAD_LABELS constant.
  • →Added depth-of-field uniformity as a new pixel-level CGI signal: CGI renders have spatially uniform sharpness (no lens-based bokeh), while real photographs show high variance in per-block edge intensity. The signal is weighted conservatively (0.25) and combined with the existing gradient, patch, and channel-balance signals.
  • →Improved CGI confidence calibration: JPEG compression of clean CGI renders creates DCT block artifacts that previously inflated the 'noise present' signal and boosted confidence toward 'Real'. Noise is now used only as a mild dampening counter for CGI confidence, not as positive evidence.
July 2026 (engine v2)

Four new independent forensic detector families — optical flow, face identity tracking, sensor noise analysis, and audio forensics — fused into one evidence engine.

  • →Added optical-flow motion analysis: the engine now tracks how every pixel moves between frames. AI-generated video shows 'texture boiling' — motion vectors that point in incoherent directions inside moving objects — while real camera footage moves smoothly. Natural, coherent motion now counts as affirmative evidence of real capture.
  • →Added dedicated face identity tracking: when faces are present, the engine detects and crops them in each frame and measures how consistently the face's identity holds across the video. AI-generated faces drift subtly between frames; real faces do not. This is far more sensitive than the general subject-drift check.
  • →Added sensor noise fingerprint analysis: real cameras imprint a fixed sensor noise pattern on every frame, which survives compression and correlates between frames. AI generators have no sensor, so no correlated pattern exists. The analysis is codec-aware — it explicitly separates compression block artifacts from genuine sensor noise so re-encoded TikTok videos aren't misread.
  • →Added audio forensics to the video verdict: when an audio track is present, the engine analyzes ambient noise floor, natural speech dynamics, room reverb, and text-to-speech pitch regularity. Sterile TTS narration now counts toward AI evidence; natural room acoustics count toward authenticity.
  • →Added frequency-spectrum analysis as an independent check on video frames, catching the high-frequency suppression that diffusion models leave behind.
  • →All detector families now feed a central evidence-fusion engine. When independent detectors strongly contradict each other, confidence is capped instead of hidden — you'll never see a confidently wrong answer built on conflicting evidence. When three or more independent families agree, confidence gets a boost.
July 2026

Major forensic pipeline upgrade — adaptive frame sampling, watermark masking, identity drift detection, and affirmative authenticity evidence.

  • →Video analysis now samples 24–96 frames depending on video length (up from 16), with scene-change detection ensuring the most diverse possible coverage instead of blindly sampling uniform intervals.
  • →Social media overlays (TikTok watermarks, caption banners, action-button columns) are now masked out before running the AI classifier on each frame. These overlays were previously influencing the semantic verdict.
  • →Each frame is now classified three times from different crops — full masked frame, center 80% crop, and upper-center subject crop — and the most AI-leaning result wins. This catches AI artifacts that only appear in specific regions of a frame.
  • →Added inter-frame identity drift analysis: the AI now extracts a semantic embedding of the main subject from each frame and measures how consistently that identity holds across the video. AI-generated video subjects drift subtly between frames; real people and objects do not.
  • →Frames are now weighted by information density when aggregating results. Low-information frames (fades, blurs, transition frames, watermark-dominated frames) are down-weighted so they can't outvote sharp, detail-rich frames.
  • →Authenticity now requires affirmative evidence of camera capture, not just absence of AI signals. The previous logic treated 'no AI evidence found' as proof of being real — this is now prohibited.
  • →Added an inconclusive handling path: when evidence for both AI and authentic camera capture is genuinely weak, the result is returned with a low confidence score (52–60%) instead of falsely asserting Real at high confidence.
July 2026 (mid-month)

Detection accuracy overhaul, video analysis rebuilt from scratch, and new platform support.

  • →Obviously AI-generated portraits (Midjourney, DALL-E, Stable Diffusion) are now correctly detected. The detector was previously flipping them to Looks Real because a secondary pixel analysis was misreading JPEG compression artifacts as evidence of a real camera — the artifact fingerprint and the real-camera fingerprint looked identical to that layer. Fixed by making the pixel analysis aware of CLIP's confidence level: when CLIP is strongly confident about AI generation, pixel-level noise readings no longer override it.
  • →Fixed a case where the Swin AI classifier was silently undoing correct AI verdicts. The Swin model was scoring social-media AI content as "human" at 90–96% confidence even when CLIP was 98–99% certain it was AI-generated. When CLIP is this confident, the Swin signal is now blocked rather than used to flip the verdict.
  • →AI-generated animation (Sora, Kling, and similar tools) now correctly shows as AI Generated. Previously, animated AI video was being labelled Looks Real because the detector only counted photorealistic frames — artistic/stylised frames were silently ignored.
  • →The WHAT WAS IDENTIFIED checklist now always shows a full breakdown of every content type found in the video — Synthetic/AI frames, Authentic/real frames, CGI/rendered frames, and Temporal AI pattern — regardless of the final verdict. A reaction video showing someone responding to AI content will say Real but flag the AI footage in the checklist.
  • →Retraining now works on video votes. Previously, feedback votes cast on video posts were silently skipped during every retraining run (only image votes were processed), meaning the model never actually learned from any video feedback. Fixed.
  • →Video analysis completely overhauled — each video now goes through genuine per-frame classification instead of a single static guess. Confidence scores now reflect what the frames actually contain.
  • →Real photos were being flagged as AI too often. Fixed a core issue where the detector was confusing natural camera sensor noise with AI generation patterns. Real images now score correctly.
  • →Added a fourth verdict category: Art. Human-made artwork, illustrations, and paintings are now distinguished from AI-generated art rather than lumped in with either category.
  • →Added OnlyFans and Fansly profile URL support — paste a creator URL and check their profile photo in seconds.
  • →Confidence scores now feel intuitive. A clearly real photo shows 75–90%+, not a confusing 53%.
  • →Version number now shows in the corner of every page. This patch notes page launched.
June 2026

Real machine learning replaces pixel math. Video posts supported for the first time.

  • →Drubl now runs a real AI model (CLIP, a neural network trained on hundreds of millions of images) instead of relying on pixel statistics alone. The difference in accuracy is significant.
  • →Video posts and reels are now supported — not just still images. TikTok, Instagram Reels, YouTube Shorts, and Facebook Reels all work.
  • →Added a community feedback loop: when you mark a result as wrong, that correction is stored and used to retrain the model over time. Your input makes the detector smarter for everyone.
  • →Results now show a breakdown of the specific signals that drove the verdict — things like spatial artifact patterns, color channel consistency, and high-frequency suppression.
  • →Drag and drop images directly onto the homepage, or paste a screenshot from your clipboard.
  • →Added YouTube, TikTok, Reddit, Pinterest, Threads, and LinkedIn to the supported platform list.
  • →Animated confidence bar on every result shows at a glance how certain the model is.
May 2026LAUNCH

Drubl goes live. URL-based detection for the major social platforms.

  • →Drubl launched publicly. Paste any image URL from Instagram, Facebook, Twitter/X, or a direct image link to check if it's AI-generated, filtered, or authentic.
  • →Supports three verdict categories on launch: Authentic, AI Generated, and Filtered/Enhanced.
  • →Developer API access available via request — integrate Drubl detection into your own apps.
  • →Free tier rate limits added to keep the service fast and fair. Subscriber tier introduced for unlimited scans.
  • →Results delivered in under 10 seconds on average.
April 2026

Closed beta. Detection engine tested across thousands of real and AI-generated images.

  • →Closed beta opened to a small group of testers. Collected feedback on false positive and false negative rates across Instagram, Twitter/X, and Facebook.
  • →Built initial support for extracting media from social platform URLs — Instagram, Facebook, and Twitter/X posts.
  • →Introduced the three-verdict system (Authentic / AI Generated / Filtered) after testing showed a significant number of borderline cases that didn't fit cleanly into two buckets.
  • →Heuristic detection engine v1 shipped: frequency-domain analysis, sensor noise floor detection, and spatial artifact scanning.
  • →Private sharing and link-based result cards added so beta testers could share findings.
March 2026

Project started. First working prototype for detecting AI-generated images.

  • →Drubl project started. Initial research into what signals reliably separate AI-generated images from real ones.
  • →First working prototype — paste a direct image URL, get an AI/Real verdict in a few seconds.
  • →Early testing on Midjourney v6, DALL-E 3, and Stable Diffusion outputs against real photos. Detection accuracy on clean examples was already above 80%.
  • →Set up the backend infrastructure: Python inference service, image download pipeline, and a basic API.
← Back to Drubl