// CHANGELOG
What just shipped.
Latest releases. Each entry covers a milestone batch — what landed, when, and what it changed for you.
v5.0May 20, 2026Account Value Score, full rebrand, GA fix, copy overhaul — Build 5.0.
- —Free Account Review renamed to Account Value Score — shareable results, updated across every surface.
- —GA4 measurement ID fixed — production was silently routing to the old TokBench property (G-T2PTS4KRKT); now correctly sends to The Ad Bench production stream (G-8Q92YFW90B).
- —Email rebrand complete — @theadbench.ai contact addresses everywhere; Tier → Plan copy site-wide.
- —Learn platform tags — TikTok / Meta / YouTube / Snapchat etc. as filterable chips on /learn.
- —Copy inventory audit (#229) — pricing/credits contradiction fixed, API key prefix sk_tok_ → sk_tab_, agency waitlist framing removed.
- —Home page de-TikTok-ed — platform-neutral marketing copy; supported-platform list + SEO intact.
- —Claude Code continuity system added — docs/claude/ session handoff guide + STATUS.md.
v3.34May 11, 2026Deep Dive narrative layer, share + render-crash hardening, conservative speed language, scroll-on-analyze.
- —Deep Dive narrative layer (PR #187) — seven new outputs on every Deep analysis: vertical archetype + gap (e.g., 'hair = reflective-texture-reveal; yours sits on product hold'), emotional positioning (surface need vs deep need + reframe), hook valence (confession / warning / transformation / etc.), production craft direction (lighting / cuts / detail shots / sensory), 3–6 macro-shot prescriptions with placement timestamps, and a 4–6 beat storyboard rebuild. Six new section components in Report.tsx, all null-safe so older saved reports decode identically.
- —Site-wide "Score an ad now" pill banner (PR #184) — replaces the old full-width strip; reads as an obvious CTA on every route.
- —Conservative speed language (PR #184) — Quick mode standardizes on "about 60 seconds"; Deep dive drops specific timing claims entirely. Touched /, /affiliate, /for/[vertical], /learn, /library/hooks, /help, /docs/api, /with/[partner], Agency FAQ, llms.txt, llms-full.txt, root metadata.
- —iOS share crash fix (PR #184) — ShareButton.encodePayload now uses TextEncoder + btoa instead of Node's Buffer (which Next 16 doesn't polyfill in client components and was dropping iOS Safari users onto error.tsx mid-click).
- —Share preview fix (PR #184) — stripped the trailing https://theadbench.ai from the marketing line so iMessage / Slack / X unfurl the report URL, not the home page.
- —Render-boundary error logging (PR #184 + #186) — error.tsx now POSTs mid-render crashes to /api/log-error via sendBeacon, and the structured log line emits a queryable summary first ("[err] client/boundary dig=<hash> msg=...") so future boundary crashes are greppable by digest in Vercel runtime logs.
- —Defensive guards on report-render arrays (PR #186) — QuickReport.feedback, Report.topIssues / .rewrites / .risks all default to empty so a partial API response surfaces blanks instead of crashing to error.tsx.
- —Scroll-on-analyze (PR #185) — the ThinkingAnimation now smooth-scrolls into view (block: center) as soon as `loading` flips true, so users see the work happening instead of staring at the upload card. Honors prefers-reduced-motion.
- —Issue hygiene: closed 11 stale GitHub issues (#82, #169, #170, #47, #140, #165, #103, #41, #22, #61, #42) where code shipped or work is operational-only. Open list now reflects engineering reality — 19 issues, all genuinely future work.
v2.5.0May 6, 2026Hero refactor, /learn library, modal email forms, partner program direction.
- —Two-column report hero — cover frame on the left, share + caption/transcript + verdict stacked on the right (lg+); stacks vertically below. Same layout on / (after analyze) and /r/[id] (recipient view).
- —/learn — new educational hub at /learn with 7 cards. New articles: What is performance marketing?, The 6-category rubric, Designing for sound-off, CTA architecture, What the FYP rewards. Existing /library/hooks and /affiliate now linked from the hub.
- —TopNav simplified — drops AFFILIATE / HOOKS / ANALYZE_AD CTA in favor of // LEARN · // PLANS · // HELP · ACCOUNT (single cyan-bordered CTA).
- —Email signup forms now open in modals — partner application, DFY review-request, and other email-capture surfaces all open via <EmailFormButton> instead of rendering inline.
- —Saved-reports listing (/account/reports) — every card grows a footer row with the share URL + a one-click COPY button. Date label adds time. No-thumbnail cards get a // NO_PREVIEW placeholder.
- —/refer reframed as Coming Soon, partner program will run through TikTok's creator + affiliate ecosystem (TikTok-native attribution + payouts).
- —/pricing template aligned with the rest of the site — same status strip, container width, header treatment as /help, /privacy, /refer, /learn.
- —Footer link row trimmed — drops HOOK LIBRARY, PARTNERS, CHANGELOG.
- —/changelog page now Releases-only — drops the rolling git-log feed and all GitHub commit links.
- —Hotfix: /r/[id] 500 fixed — TranscriptCard was missing 'use client' so onClick handlers couldn't serialize when rendered from the server tree. Latent since PR #51, surfaced when shares with a transcript payload appeared.
v2.2.0May 6, 2026Email architecture, privacy stack, AEO, and report-column polish.
- —POST /api/review-request — DFY card now fires a real Resend operator notification with full report context (mode, score, vertical, hook formula, top issue, share link), plus Mailchimp tag + optional REVIEW_WEBHOOK_URL fan-out. Awaited end-to-end (no fire-and-forget).
- —New shared lib modules: lib/server/mailchimp.ts (subscribeToMailchimp), lib/server/resend.ts (sendEmail), lib/server/review-request.ts (orchestrator).
- —Privacy stack: /.well-known/security.txt (RFC 9116) + /.well-known/gpc.json (Global Privacy Control). New /privacy sections — Cookies, Your data rights (DSAR), Do not sell or share.
- —AEO: /llms.txt + /llms-full.txt per llmstxt.org for AI answer-engine ingestion (Claude / ChatGPT / Perplexity / Google AI Overviews).
- —Share payload now carries the 4-frame video preview strip + voiceover transcript so /r/<id> recipients see the same context the original viewer did.
- —Preview card: 4 evenly-spaced frames horizontal row (was 2x2). Metadata above. URL/image flows show single thumbnail in same row container.
- —Report column reorder on the home page: SHARE → FRAMES → VO TRANSCRIPT → VERDICT → GMV → body → DFY.
- —CSP hotfix: connect-src now allows vercel.com so @vercel/blob/client's upload-handshake doesn't get blocked. Video uploads work in production again.
- —Pricing-integrity audit (#24): Free-tier day caps fixed to match real rate-limit shape. Pro 'Priority queue' bullet removed. Agency unshipped bullets flagged '(in development)'.
- —Stripped user-facing 'Claude' references in favor of neutral copy. Server-side model IDs unchanged (still required by SDK).
- —Lint cleanup sweep (#45): 21 errors → 0, 26 unused eslint-disable directives removed.
- —Docs: docs/email.md + docs/mailchimp.md added; README rewritten end-to-end to current 2.2.β state; /help gains four new sections (Cookies, Your data rights, Done-For-You, Security disclosures, AI answer engines).