Use the scheduled time, race clock, or configured checkpoint already stored with a poll to open it automatically while preserving the manual race-day controls and rehearsal isolation.
Build Triathlon Lab with us
Request a feature, report a bug, vote for what matters, and see what is planned, underway, or shipped.
5
In progress
9
Planned
38
Shipped
Actively being built or fixed.
Use the scheduled time, race clock, or configured checkpoint already stored with a poll to open it automatically while preserving the manual race-day controls and rehearsal isolation.
Finish the shadow rehearsal and controlled rollout of the central probability model so pre-race picks, desktop live odds, and mobile live odds use the same approved markets and stability…
Accepted for a future development cycle.
Show a clear alert on the live dashboard when heat, wind, rain, or water conditions could materially affect how the race unfolds.
Released changes and resolved bugs.
Fans can submit feature requests and bugs, vote on public ideas, follow status changes, and read official responses while private submissions remain protected until review.
Promote the tested race-edition adjustment that combines course geometry, weather, and prior-edition history without changing athlete ordering or overreacting to a single condition.
Turn the locally validated multi-race predictor into a production-ready forecast that estimates how each field is likely to move through a specific course and conditions.
Build on the existing slot fields and projected qualification views to show official allocations, accepted slots, declines, and roll-down results when that information is available.
Keep the full race-day workspace hidden until ten minutes before the first professional start while continuing to show the existing pre-race athletes and storylines beforehand.
Flag an athlete as a likely DNS after leaders reach later timing points and the athlete has missed the required early observations, with a safe review path for timing faults.
Archive each completed edition's normalized timing so its checkpoint progression and course history are ready for the following year's live forecast.
Expand race-relative Age Group PowerIndex into chronological, distance-specific ratings for every eligible age-group athlete with competitor-quality strength of field.
Add real age-group cutoff history from individual Race Hubs so Kona recommendations can show what qualification has actually required at each race.
Let every account confirm its country and prize eligibility so Race Picks promotions can apply geographic rules without relying on incomplete older profile data.
Add dark-horse hit cards to completed prediction reviews so fans can see which lower-ranked athletes beat expectations and which signals proved useful.
Create separate short-course ranking profiles for developing athletes instead of mixing those results into the elite WTCS ranking.
Signed-in fans can answer live race questions, see a real countdown, and view aggregate percentages while rehearsal responses remain isolated from the real race.
Prize-enabled polls can use reproducible random drawings, winner verification, replacements, and fulfillment tracking without losing the original selection history.
Polls now stop accepting votes and move to a closed state at their deadline, even if an admin does not manually close them.
Race Hub discovery now loads the complete paginated catalog instead of silently stopping after the first server-limited page.
Mobile fans get a purpose-built race interface with a sticky header, persistent gender selection, Live, Timing, Picks, Watch, and More tabs, and one natural page scrollbar.
Fans can close or remove course, position, race-group, movement, and Pro Series blocks, then restore or reset them from More for each race.
The Watch tab shows followed athletes' live place, checkpoint, pace, leader gap, and movement, and the same selection filters every mobile section.
Desktop race-story rails now keep their own scroll space, and fresh timing updates no longer make the selected men's or women's view disappear or switch unexpectedly.
Once timing data is available, the race opens directly in the focused race-day workspace with a clear Back action instead of maintaining duplicate embedded and fullscreen layouts.
Crowded calculation text was replaced with outcome-first reads such as projected position and gap at the next timing point or the location where a catch is likely.
The profile now keeps course progress, elevation, current-leg time, total time, and prior-edition adjustment in a much shorter race-day block.
Race groups, forecasts, Pro Series movement, chase stories, and specialist blocks now use compact rows, consistent typography, and less empty space.
Timing tables now default to actual race order, completed legs stay ordered by who reached the final leg checkpoint first, and athlete sorting uses natural numeric bib order.
The lower race workspace now uses Live feed, discipline timing, prior-edition leaders, returning athletes, and Follow athletes with clear labels and shared athlete filtering.
The navigation now shows a neutral loading state and reads the local session before slower profile data arrives instead of flashing Sign in and Join to authenticated users.
Swim, bike, and run tables use stable column widths, horizontal scrolling for larger courses, and directional arrows with plain-language labels for gains and losses.
Swim projections only appear when lap timing supports them, while bike and run forecasts use the correct discipline units, realistic limits, and next-leg targets.
Live projections use stored course geometry and prior-edition timing context so climbs and descents do not distort expected leg and finish times.
Fans can inspect one row per athlete across every timing point, including segment time, pace or speed, rank, race movement, and a full athlete split/history drawer.
Before timing begins, the live page shows a countdown, professional start times, leading athletes, storylines, odds, and the published field instead of an empty race screen.
Age-group race pages can display imported starters, match them to athlete history, organize every age group, and publish field research independently from the pro start list.
Published field additions and withdrawals can be reviewed before delivery and emailed only to eligible users who have a saved card for that race; bib and metadata-only edits are excluded.
Published forecast data no longer makes an explicitly draft campaign visible; administrators retain a clearly labeled private preview while regular users only see published campaigns.
Each campaign can use its own sponsor identity, logo, prizes, eligibility, rules, terms page, lock times, and matching presentation across the picker, results, and emails.
Campaigns can add special prizes with a winner count and selection method, generate the required terms, and later draw verified winners independently of leaderboard placement.
After a race is reviewed, the system stores a per-user score settlement, reconciles every market from promoted results, preserves the audit trail, and creates prize-fulfillment records.
Admins can preview each personalized result email, send a test, and run deduplicated bulk delivery that skips users already notified for the same settlement.
Age-group fields can use stored overall, swim, bike, and run scores built from field-relative placement, winner gap, depth, recency, repeat evidence, and course-quality safeguards.
The men and women overview now compares verified target-distance finish evidence instead of comparing division-relative scores across different age groups.
A public guide explains distance-specific rankings, split scorecards, start-list model selection, live odds, formulas, and evidence in plain language.
Age-group athletes can compare qualifying races using slot volume, age group, course preferences, heat tolerance, swim strength, and speed profile.
Pro and age-group results now open the same athlete route with shared identity, profile context, result summaries, and race history instead of separate legacy pages.
The rankings area includes official World Triathlon and T100 standings alongside Triathlon Lab PowerIndex and distance-specialist models.
Relay events render team-level rows with expandable athlete legs, proper mixed-relay ordering, and clear links between team and athlete results.
The homepage now leads into Race Hubs, athletes, results, rankings, start-list research, tools, and live race experiences instead of placeholder content.
Authenticated users now have the same safe read access to master athlete and result data as signed-out visitors, and browser pages share one auth client.
IRONMAN, T100, and World Triathlon ranking choices now use consistent, readable brand treatments instead of disappearing on dark tiles.