Changelog
Shipped features, fixes, and improvements for CreativeValidator. Follows Keep a Changelog style.
Want the raw feed? The full machine-readable changelog lives in the repo.
View on GitHub →Unreleased Planned #
Planned
- Raw image / video / audio creative validation (MP4, PNG, MP3, etc.)
- Paid tier + per-plan scan quota (Free forever individual plan; Team/Enterprise add-ons)
- Folders / projects in scan history
- Transcription + NSFW detection on video creatives
- Blog section with ad-ops how-to content
- Ad Specs library — publisher and DSP spec reference
v1.4.0 · 2026-03-20 #
Added
- PDF export for tag scans — branded report generated by Puppeteer with system Chromium
- Admin dashboard — stat cards, vendor breakdown, risk distribution, users table
-
Webhooks —
tag_scan.completed+batch_scan.completedevents with signed delivery - Saved tag library — 50 saved tags per user, CRUD API, "Save Tag" button on results
- Magic-link authentication via SendGrid, SQLite-backed users
-
Comparison view — side-by-side diff between two scans
(
/tag-tester/compare/:a/:b) - Enhanced /health endpoint with DB status, scan count, memory usage — wired for UptimeRobot
- Regression suite expansion — 51 samples including Innovid, AdForm, BannerFlow, Quantcast, ComScore, VAST URL/XML, data URI, obfuscation, SpringServe, and more
Changed
- SQLite database migration — scan metadata, users, sessions, saved tags, analytics, batch scans, auth tokens all moved from JSON flat files to SQLite. 3,941 existing scans backfilled. Scan listing now 23ms (was seconds).
- Timeout UX — frontend shows a timeout error + Retry button after 90s polling (was infinite polling)
Fixed
-
PM2 working directory so
.envloads correctly (SendGrid key, session secret) -
Multiple TypeScript errors in
click-path-tracer,risk-scorer,static-validator - Rate limiter correctly exempts localhost for regression runs
v1.3.0 · 2026-03-19 #
Added
- Bulk upload — Excel/CSV with smart column auto-mapping, content-based detection, header-row heuristics, 25-tag cap, macro pre-insertion, batch results dashboard, Excel export
- Tag History — search + column filters (Type, Risk, Vendor, Status) + hover tooltips
- IAB compliance — tag-aware thresholds so third-party tags don't get compared against HTML5 display limits
- Context-dependent nav — separate tabs for HTML5 vs Tag Tester contexts
- Real-spreadsheet regression tests — 7 spreadsheets, 61 scans, 0 failures
Fixed
- Network behavior overflow — long URLs now wrap at 150px max-height with proper scroll
- Theme parity on all pages (dark / light)
v1.2.0 · 2026-03-17 #
Added
- "What We Check" showcase — 12-card grid on landing (8 Tag Tester + 4 HTML5) with SVG icons
- First-visit onboarding — welcome banner on Tag Tester, sample scan CTA on landing page
Fixed
- API docs sidebar no longer overlaps header (top: 48px)
- Tag Tester footer spacing now matches HTML5 Upload page
- Responsive grid breakpoints for check cards
v1.1.0 · 2026-03-16 #
Added
- Self-hosted analytics — cookie-free, privacy-friendly, JSONL storage, SPA-aware tracker (page views, events, performance, scroll depth, referrers, UTM)
-
4 SEO landing pages —
/vast-validator,/dcm-tag-tester,/html5-ad-validator,/ad-tag-checker(pre-rendered HTML with FAQ schema) - IndexNow integration — Bing + Yandex instant indexing
- GSC + Bing Webmaster Tools — verified, sitemap submitted
- Permissions-Policy header — camera, microphone, geolocation, interest-cohort all disabled
- Organization + SoftwareApplication JSON-LD — rich results eligibility
- Interactive API docs — Try-It panels for every endpoint
Fixed
- Nginx security headers now inherit correctly into static asset location blocks
-
deploy.shusesrsync --deleteto prevent stale UI artifacts - 36 stale build artifacts purged from production
v1.0.0 · 2026-03-15 #
First stable release
- VAST deep scan — MediaFile URL validation, impression/tracking pixel tests, VAST 2.0-4.2 compliance, companion ads
- Landing page validation — redirect chain resolution, SSL, loop detection, load time
- Expanded click resolution — DV360, Criteo, Amazon DSP, Xandr, Taboola, Sizmek
- TCF / CMP consent — TCF v2.0/2.2 detection + validation
- Comparative benchmarking — multi-scan comparison endpoint
- Performance benchmarking context — industry-threshold ratings (excellent/good/average/poor/critical)
- Rate limiting — global 120/min, tag scans 100/15min, batch 10/hr, auth 10/15min
- Demo scans — 5 samples across common vendors (DCM, VAST, Flashtalking, IAS, Xandr)