Sales Lab · Changelog
Newest first. Each entry is something a customer can now do (or trust) that they couldn’t before. We curate this list — if a change didn’t move the surface a customer touches, it doesn’t earn a row.
A procurement-grade status surface — seven subsystems, mono-caps state badges, and a communication policy spelled out (post within five minutes of detection, postmortem in five business days).
Open status →Every transactional email — magic-link, scorecard delivery, Monday-morning 1:1 brief, weekly Realism digest — now ships from a shared shell with system-blue CTAs and unified type hierarchy. They read as one brand alongside Stripe and Apple in the inbox.
The 464KB ElevenLabs + LiveKit chunk no longer ships on the /demo landing form. It loads only after a persona is resolved and the call surface is about to mount — Lighthouse perf score 50 → 68 on desktop /demo, LCP -740ms.
Open →Color-contrast violations on /, /product, /pricing, /demo, /login, /security collapsed 95% — from 323 nodes flagged by axe-core to 17. Label-2 and label-3 tokens bumped on the light side; dark mode already passed.
Every $30K+ buyer asks the same five questions during procurement — contract length, onboarding shape, what happens when a rep leaves, security questionnaire process, the money-back guarantee. They are answered on the pricing page so the buyer never has to leave.
Open →The portable Sales Lab Score now has a working public sample card at /score/demo (was a 404 referenced from /wage-index). /science gets TechArticle schema; /retros gets CollectionPage schema with up to 20 Article entries.
Open the sample score →Signed audio URLs were issued for 365 days AND persisted to the sessions row. Now: 300 seconds, re-signed on every read from a non-secret storage key. A leaked row stops being a year-long bearer credential.
Three surfaces teased in the navigation that previously 404'd are now full pages. Hardware lays out the desk-pad, headphones, and stress ring. Live is the annual conference page. API platform is the developer entry point.
Open →A single source of truth for the visual layer: §3 raw palette in globals.css, dark mode first-class, every semantic token resolving through it. System blue, true blacks, real grays. No tints, no approximations.
How this list is maintained
We write each entry by hand the day it ships. We don’t auto-generate from git — noise is the enemy of credibility. For the postmortem on every customer we’ve lost, read the public retros.