Skip to main content
Changelog

What's new.

Every update to the platform in plain English: features, improvements, fixes, design, security, and performance. Filter by type or product area.

Type
Area

214 updates

2026

Jul 28, 2026

Every email we send now shows up in our own records

  • Big announcement emails were sent through our mail provider directly and never written to our own database, so they were missing from the admin email view and from the growth numbers.
  • Worse, the opens and clicks our provider reported back had no record to attach to, so that information was received and thrown away. Those campaigns did not have poor reporting. They had none.
  • Sending and recording are now a single step, so a send that is not recorded is no longer possible, and a check on every commit blocks any new code that tries to skip it.

The coach demo is a proper tab

  • Clicking Demo used to leave the setup form on screen and quietly scroll you down the page. It now switches view like Drills and Progress.
  • Each stage is named once. The same idea used to appear four times before any content.
  • Page animations across the site are slower and properly sequenced instead of one snap.

Small-screen and date fixes

  • The menu button hung off the edge of a small phone, signed in and signed out.
  • Event dates were printed in the server's timezone, so an evening event could show one date on the page and a different one on the sign-up button.
  • Email wording is now checked by the same copy rules as the rest of the site.

Checks that had quietly stopped working

  • Our code-quality limits could silently raise themselves instead of only tightening. It had happened six times.
  • A new check blocks any screen whose wording contradicts the thing it is describing, which is what let the tournament labelling ship.
  • The recruitment email cap handed back a full day's allowance whenever it failed to read how many had already gone out.

All four growth numbers on one chart

  • The dashboard plots new members, club joins, sign-ups and debates created on one chart, each in its own colour, so you can see whether they move together.
  • Hovering any day reads out all four numbers at once.
  • Clicking a metric brings its line forward. Nothing is repainted, so a colour always means the same thing.
  • The colours were checked against colour-blind vision rather than picked by eye, and every line is named in the legend and the tooltip.

The dashboard metrics read like a report again

  • One heading was printing the word last twice. Fixed at the source, so it cannot be rebuilt wrong again.
  • Four numbers were laid out as three separate tables, each with its own column header above a single row, and each number sat most of the screen away from its own label.
  • They are now one even grid of cards, each showing the number, what it counts, and the period it covers.

Your event page now shows who is coming

  • A weekly hangout was being shown "Tournament Management", a judges count and a "1 days" duration. Every event now shows what it actually is.
  • Attendees are people you can open: photo, name, profile link, and when they signed up. Before, they were plain text or missing.
  • The setup page and the run-the-night page now link to each other. Nothing on setup used to mention the other one existed.
  • Recording how many people came was only reachable for tournaments. Every event can reach it now, and that is the number the growth report counts.
Jul 27, 2026

The features page reads like documentation

  • /roadmap is documentation now. Every live feature is grouped by what you are actually trying to do, and the roadmap follows as a dated second act instead of being mixed in.
  • Six retired features stopped claiming to be live. Best Point, Leaderboards, Tournament Brackets, AI Training, Learning Paths and the Fallacy Spotter now say where they went rather than linking into a redirect.
  • A recently shipped strip reads the newest changelog entries straight from the database, so the page stays current without a deploy.
  • Accessibility caught up: the search box has a real label, the filters announce what they select, and the highlights toggle behaves the same on a laptop as on a phone.
Jul 26, 2026

Coach training that proves itself

  • Set a training goal, a weekly rep target, and a diagnostic baseline round on the Coach progress page. Your baseline is verified server-side and locked once set, so every later claim of progress is measured against a starting point that cannot be quietly moved.
  • Verified progress compares your baseline against your newest verified reassessment: the six rubric criteria, how many of your turns actually answered the opponent, and how much of their case you addressed. A round with incomplete scoring drops out rather than becoming a fake zero.
  • Your next 4-week program checkpoint downloads straight to your calendar as an all-day event that lands on the right date in any timezone, and re-downloading updates the entry instead of duplicating it.
  • Dropped-points drills now close the loop: a finished rep is attributed to the exact argument you originally dropped, so the argument map knows which points you have gone back and answered.
  • The numbers on your training profile are now checkable — cards link to the actual round behind each aggregate.
  • Thirty seconds after a round, you can ask the coach why a specific response failed and get an answer grounded in that exchange — and your worst turn becomes a rewrite exercise while it is still fresh.
  • The clash map now verifies which side each argument belongs to instead of trusting the browser, so drills and recommendations can no longer inherit a mislabeled argument.

The admin console works on a phone

  • The console no longer renders inside the member site: one scroll container instead of two fighting over every mobile swipe, no marketing footer underneath the dashboard, and a proper way back out to the site.
  • Every hairline in the admin tables painted solid white because of one invalid CSS token — borders now render at their intended subtle weight across roughly 80 call sites, fixed at the root.
  • The chat inbox is no longer a wall of outlined rectangles: conversation rows separate by surface and spacing, and the duplicate signal tiles folded into the queue dropdown with live counts.
  • The usage charts were permanently flat and the budget gauge always read $0.00 — both now show real per-day activity and real spend.
  • Email queues and the vote-integrity table are sortable, with sorting riding the same server fetch as search and pagination.
  • Needs attention is dismissible (the dismiss control was on the wrong section), KPI cards read cleanly two-up on mobile, and redundant quick-action buttons are gone.

Sign-in and access fixes

  • Finishing sign-in no longer loops you back to the auth page or reopens setup you already completed.
  • Dismissing the onboarding nudge is now per-person: signing out and in as someone else on the same browser shows the right person their nudge.
  • Tightened access on an internal growth-metrics function and on profile location updates to least privilege, and argument text in coach tooltips is now escaped.

See your clashes, then practice them

  • A new clash film room on your Coach progress page maps every recent debate as an interactive 2D or 3D graph: which of your opponent's arguments you answered, which you dropped, and where the leverage was.
  • Saved session reviews get the same explorer on the map tab, and every dropped point links straight into a practice rep against that exact argument.
  • Your scorecard now ends with one concrete recommendation: the drill that targets the weakest criterion from that specific round, one tap away.
  • You can try the whole coach without an account: an interactive demo of rounds, scorecards, follow-ups, rewrites, drills, programs, and clash maps now lives on the Coach page for visitors.

Your dashboard now leads with one next move

  • The signed-in home now opens with the single most relevant next action: an event starting soon, your active training rep, a pending invitation, an unfinished draft, or your next coaching step, in that order.
  • A coaching momentum panel shows where you are in your program week without leaving the dashboard.
  • A slow activity feed can no longer hold up the page: the home renders when your core data is ready.

Admin: instant analytics that tell the truth

  • The analytics overview went from 3.2 seconds to instant: a scheduled job now precomputes the numbers, and a freshness note warns if they are ever more than 3 hours old, so fast can never quietly mean stale.
  • The attention strip stops crying wolf: signups who never reached setup are separated from those who abandoned it midway (opposite fixes), tiny cohorts no longer skew medians, and a funnel dropping from 3 people to 0 no longer raises a red alert.
  • Charts stop lying: independent funnel steps no longer print impossible percentages, axes no longer count backwards, and a dead data pipeline now raises an alert instead of rendering an empty chart that reads as a quiet week.
  • Support chat can be scoped to one member with a durable link that filters on the server, with a visible notice while the scope is active.
  • A design pass across 58 admin screens aligned section headers with their content and reserved monospace for figures.
  • Signup attribution no longer loses people: instantly-confirmed signups and OAuth retries are now attributed, so the growth dashboards see every channel.

Getting involved takes one step, then one more if you want

  • The Get Involved form submits the moment you send your email: abandoning the follow-up questions can no longer lose your interest.
  • An optional second step asks just enough to match you properly, with Skip as a real button. Competitors can turn their interest into a full debate application right there.
  • The team now hears about you as a person, not a form: if you are already a member, the notification says who you are, what you have done, and whether a reply is owed.
Jul 23, 2026

A fairer, clearer AI Coach arena

  • The turn clock now starts when you begin your turn (first keystroke, mic tap, or spoken word), so reading your opponent's argument never burns your time.
  • The mic is a real button inside the composer with honest states: it tells you when access is blocked, no microphone is found, or a start failed, with how to fix it.
  • The live arena reads as three clear zones: a compact header with the clock and phase rail, the transcript as the main stage, and a grounded input area that dims (instead of vanishing) while your opponent speaks.
  • One coach voice: the walkthrough, phase guidance, and corner notes now share a single slot instead of stacking three boxes.
  • The Coach landing shows one contextual notice at a time (resume beats challenge beats training plan), so the page reads top to bottom without noise.

Attend online events live

  • Every online debate on the calendar now has a real way in: a Join Live button appears on the event page 15 minutes before start.
  • Premieres open the debate watch page, where you watch the two sides argue live, vote for a winner in real time, and catch the replay afterward. No account needed to watch and vote.
  • City Debate Nights open a shared video room for the whole club: talk or mute yourself like any video call, with the host keeping things moving.
  • Registered attendees and notify-me signups get one email right before we go live, with the join link inside.
  • Reminder and confirmation emails now tell you exactly how your kind of event works, and event times show in your own timezone where it matters.

Every menu speaks one design language

  • All floating menus, from the search palette to the mobile bottom sheets to the navigation dropdowns, now share one frosted-glass surface with a gold seam, instead of four slightly different looks.
  • Menus feel steadier and more legible on mobile, and the whole shell reads as one product.

Sticky bars work everywhere again

  • A long-standing CSS rule silently prevented every sticky element on the site from pinning while you scroll. Club page tabs, the blog table of contents, the debate guide sidebar, and the Coach arena header now stay in view as designed.
Jul 17, 2026

The Contrarian remembers you, and one tap starts a spar

  • Come back for a rematch and the AI opponent now remembers your past meetings: the arguments you left unanswered, the skill judges score you lowest on, and what your coach told you to work on. Expect it to press exactly there.
  • The setup screen shows you the same notes up front, so the rematch is a fair fight: "meeting 4 — last time you left one argument unanswered."
  • A new Quick Spar button jumps you straight into a three-minute debate in one tap: random topic, your level, no setup. The full configurator is still right below.
  • First session ever? Nothing changes: the opponent has no notes on you yet.

Challenge a rival to the exact same debate

  • Finish a scored session and you can mint a challenge link: same topic, same opponent strength. Send it to anyone.
  • Your rival opens the link, sees your name and the terms, picks their side, and debates the same AI opponent.
  • Scores stay sealed until you have both finished — then both scorecards reveal side by side with a verdict.
  • Challenges last seven days, five per day, and the flex is earned: a challenge can only be minted from a debate you actually completed.

The admin got a growth console and a changelog editor

  • A new Growth page shows every growth lever in one place: its on/off switch, when its automation last ran, what it sent (or would have sent while dry-running), and who landed from each campaign.
  • Changelog entries are now written and published right from the admin, no code release required. This entry was published that way.
  • A daily vitals check watches signups, registrations, and email health against their recent baseline and emails us the moment something looks wrong, instead of waiting for the Monday digest.

Admin bottom tab bar on mobile

  • Admins on phones get their own bottom tab bar: Pulse, Inbox, Insights, Users, and Menu, with live attention badges on Pulse and Inbox.
  • Replaces the floating hamburger button that hovered over page content; the member tab bar now steps aside on admin pages.

Explore the clash in 3D

  • After a practice debate, the clash map now offers a 3D view: spin the argument graph, see which of your points stood and which dropped, and tap any node to jump back to that turn.
  • Offered once a debate produces enough arguments to make the 3D view worth it; the classic column map stays the default.

Every debate topic now has a public home

  • Sixty-two debate topics with real activity now have their own public pages: the resolution, actual arguments from both sides, replays where they exist, and a direct path to argue it yourself.
  • Ambassador pages now exist for a hundred cities instead of eight, each showing the top referrers in that city. Bring people in and your name is on the board.
  • Every club page now points at its city's ambassador page: empty campus clubs recruit their campus ambassador, young clubs ask for a founding leader, and established clubs invite people to help their city grow.
  • Each city ambassador page now opens on that city's own skyline and shows its real numbers: members already there, local clubs to build on, and how many people are waiting for debates, alongside what the role brings and what it pays.
  • A site-wide feed at /feed.xml carries every new replay and article for readers and apps that follow feeds.

Apply to debate, hear back the same day

  • Submitting a debater application now gets you an email the same day with up to three real, open opportunities matched to your topic and side, with links to claim them.
  • If nothing matches yet, we hold your application and a nightly check emails you as soon as something opens up. Every application is still reviewed by hand as well.
  • Sharing a debate now carries your personal referral link automatically, and your registration and replay emails include a one-tap way to bring a rival along.
Jul 16, 2026

Your first-week emails now know why you joined

  • The day-two email used to suggest the same thing to every new member. It now follows the goal you picked at signup: sharpeners get a training rep, competitors get the events calendar, and community-minded members get their city's club.
  • The day-seven recap now leads with events actually happening in your city, and only ever recommends real, published events. A bug let unpublished drafts slip into that list.
  • Members who already jumped in are no longer nudged to "get started."
Jul 15, 2026

Dead ends removed: dashboard links work, organizers can actually send invitations

  • Upcoming events on your dashboard linked to a page that did not exist. Every activity card now goes where it says.
  • Old event links built from internal ids (in emails, admin tools, or shares) now land on the right event page instead of a 404.
  • The "Send Invitations" button on the event organizer dashboard used to say "coming soon" even though the invitation system has been live for weeks. It now opens a real invite form: add emails, send, done.

No more silent consequences: suspension and club-change emails

  • If your account is suspended, you now get an email saying so, with the reason and how to appeal. Before, your sign-in just stopped working with no explanation.
  • Club role changes and ownership transfers now notify the person affected, with what changed and a link to their club.
  • These are courtesy-of-record notices, so they send regardless of email preferences, and a mail hiccup never blocks the underlying action.

An admin panel that tells the truth

  • Removed twenty-plus settings toggles that saved your choice and then did nothing: registration switches, profanity filters, digest schedules, and more. Every control left on the settings page is actually read by the platform.
  • A blind spot in our error monitoring is closed: eleven admin actions whose failures showed a generic "failed" message now report the real error to the failures dashboard.
  • Retired two analytics funnels and two tracked events that nothing fired anymore, so the analytics dashboards only show journeys that are really measured.
  • Fixed the Coach analytics tab, which had crashed since training drills shipped: drill sessions have no difficulty setting and the report choked on that.

Scoring status you can trust on every SuperDebate page

  • If the live voting status briefly failed to load, the scoring section used to claim "scoring opens soon" even while scoring was wide open. It now says plainly that the status could not load and to refresh, and your picks keep saving on your device either way.
  • Every SuperDebate page (Jordan vs. LeBron, UBI, DEI, and the home feature) now computes its voting window with one shared, tested rule, so the countdown, the live badge, and the final-result lock always agree.

The footer stopped eating your phone screen

  • On phones, the footer shrank from roughly two thousand pixels of stacked links to a compact two-column strip of the eight destinations people actually tap. Desktop keeps the full four columns.
  • Both views now draw from one shared link list, so they can never fall out of sync.
  • Topic pages got matching polish: consistent hero actions, clearer section separation, and tighter empty states.

Events can no longer end before they start

  • Three featured debate pages listed end times earlier than their start times, which produced broken calendar invites. All three are corrected, and an automated test now checks every featured debate.
  • The database itself now rejects any event whose end precedes its start, and the edit and reschedule forms explain the problem in plain English instead of failing cryptically.

This changelog learned to filter: browse by kind of change or part of the product

  • Every entry is now tagged two ways: the kind of change (feature, improvement, fix, design, plus new security and performance tags) and the part of the product it touched (coach, clubs, video, events, and more).
  • Filter chips show live counts, combine with search, and always agree with what clicking them reveals.
  • All 180 past entries were re-tagged, so filters work across the whole history, not just new releases.
  • Filtered views live in the address bar: copy the link and it opens with the same filters applied.

The team got a real roadmap board

  • A drag-and-drop kanban inside the admin panel tracks every feature idea from Ideas through Planned and In Progress to Shipped.
  • Cards carry a description, category, priority, effort, and target quarter; moving a card to Shipped stamps the ship date automatically.
  • Column changes land in the audit trail, and view-only admins can read the board without being able to move anything.
  • Seeded with the public roadmap so planning starts from what we've already promised.
Jul 14, 2026

Ask Admin Analyst: the admin panel can now answer questions about itself and the live data

  • Any team member with admin access — including view-only accounts — can open "Ask Admin Analyst" and ask, in plain English, what a page does, how the product works, or a specific data question.
  • It reads the live database directly (safely, read-only) to answer real questions like "which clubs have the most members" or "how many people signed up each week", and it shows the exact query it ran, so every number is verifiable.
  • Its counts use the same definition of a real member as the dashboards, so the numbers always agree.
  • It can never change anything and can never see passwords or secrets — reads are locked to application data only.

Members are now told when their role changes

  • When an admin changes a member's role, that member now gets a clear, friendly email explaining what changed and what they can do next.
  • Every role change asks for confirmation first, and the admin sees exactly how many people were notified.

The admin operations pages got a professional cleanup

  • Live Monitor, Video Command, and Weekly Review now share the same card language as the rest of the admin: clear sections, aligned numbers, and consistent spacing.
  • Funnel health on the Weekly Review reads as a proper table (this week, last week, entries) instead of a cryptic one-line code.
  • Status colors now only appear when something actually needs attention. A zero is no longer painted red.

Bring a rival: sharing and inviting now live where the moments happen

  • Joining a club, finishing a coach session, registering for an event, or completing a debate now offers a one-tap way to bring a friend along, with your referral link built in, so people you bring are counted as yours.
  • Creating a club now opens the invite form directly from the success screen. Your first three members are the difference between a club and an empty page.
  • Event pages have a real share button, and registering for an event shares an "I'm going, join me" link.
  • Your dashboard and profile show a "grow your circle" card with your referral link and how many people joined through you.
  • The dashboard also suggests upcoming debates and events you haven't registered for. That "what do I do next" gap had nothing in it before.
  • Registering for an event while signed out now resumes automatically after you sign up, instead of making you find the button again.

The in-person loop: founding-member clubs, a real city waitlist, and door check-in that counts

  • A club with just a member or two no longer looks like an empty room: its page now frames the moment honestly as a chance to be a founding member, campus clubs carry their own Campus identity, and established clubs show a real member count.
  • Ask to be told about debates in your city and you actually hear back: an instant confirmation, then a real email the moment an event is scheduled near you.
  • A new City Demand view in the admin shows exactly which cities are asking for debates, so the next launch follows real interest.
  • Registered for an event? You can now get the 24-hour and 1-hour reminders the confirmation email always promised.
  • On event day, organizers get a prominent one-tap door check-in, so who actually showed up is finally recorded, with a written runbook to match.
  • You can now set your city on your profile at any time, and members who joined a local club had their city filled in automatically, so we can point you at what is near you.
  • All the new event and city emails are off by default and controlled from admin settings. Nothing sends until you say so.

Onboarding starts with why: tell us your goal, and the rest adapts

  • Signing up now opens with a simple question — what brings you here? — and the rest of the flow adapts to your answer, suggesting the role and first step that actually fit your goal.
  • Instead of a generic "all done" screen, you land on a launchpad that points you straight at your first real action: start a debate, find a club, record a take, or explore.
  • The whole flow is smoother and quicker, with fewer dead ends between signing up and doing something.
Jul 13, 2026

The admin dashboard learned to report: a month of platform activity at a glance

  • A new Platform Pulse band on the admin dashboard shows how the platform is actually growing — new members, club joins, debates created, coach sessions, and more — with every number compared to the previous period.
  • A daily activity chart and a full rollup table cover the last 7, 30, or 90 days, switching instantly.
  • Every count now excludes test accounts and seeded data the same way across the dashboard, the user list, and analytics — one definition of "a real member" everywhere.
  • Two misleading widgets retired: a user-activity pie chart built on the wrong timestamps, and a recent-activity feed that resurfaced old accounts as new.
  • The numbers are computed in one database pass, so the dashboard loads with data already in place — no spinners, no undercounting.

Sharper words, honest numbers, and a site that connects its own dots

  • The About page got a real rewrite: shorter, more direct, and written the way we actually talk.
  • Every traction number on the site now comes from one source of truth, and an automated check blocks any page from drifting again.
  • The AI coach's scorecard is now described everywhere as what it is: a six-line practice rubric built for training, distinct from the ballots live judges fill in.
  • Judge ballots now carry their proper name, the Standard Scorecard, on the scoring form.
  • The proof page joined the footer, and the club-starting pages now point to each other so you can go from "what is this" to "my club is live" without a dead end.
  • Dozens of small copy fixes: hedgy answers made confident, corporate phrasing cut, and rhythm restored where earlier edits flattened it.
Jul 12, 2026

The observable machine: every funnel visible, every conversion tracked

  • A new Funnels dashboard shows all seventeen product journeys — signups, club joining, going live, take recording, and more — step by step, this week vs last, with a drill-down to exactly where people stall.
  • Five conversion moments that were invisible now record themselves: payments succeeding, leads submitting, referrals attributing, event check-ins, and judge scoring.
  • Every Monday a funnel digest email flags any journey whose conversion dropped meaningfully week-over-week, so problems surface without anyone remembering to look.
  • Dead analytics plumbing removed: an hourly job refreshing numbers nobody read, an empty tracking table, and eighteen event helpers nothing ever called.
  • My Clubs is now one clean list of every club you belong to with your role on each; managing what you run lives in Hosting.
  • New end-to-end tests walk the real signup-by-referral, debater-application, and contact flows so they can't silently break again.
Have feedback? Email us.