Season 0 reached its finish line this week, the busiest of October: 75 changes merged, twenty of them on Wednesday and nineteen on Friday. The podium of a finished season got a home on the site and in the widget. The Founding Hero badge became a medal. A time-zone slip that would have closed the season at noon on its last day was caught the day before. You can sign in with Notion now. New accounts get a welcome mail with the setup steps. A walk through the product as a newcomer produced a dozen wording fixes.
Sprint map
One row per story arc, one column per day.
| Sun 25 | Mon 26 | Tue 27 | Wed 28 | Thu 29 | Fri 30 | Sat 31 | |
|---|---|---|---|---|---|---|---|
| A first widget view you can predict | |||||||
| Toward the Notion Marketplace | |||||||
| Wording fixes from a newcomer's walk-through | |||||||
| Sign in with Notion | |||||||
| The season's podium gets a home | |||||||
| Wide embeds and a compact Competition tab | |||||||
| Registration without dead ends | |||||||
| Closing a competition on time | |||||||
| A welcome mail, signed Habit Heroes | |||||||
| Season 1 trailer and a sharper hero video | |||||||
| Account deletion wipes everything | |||||||
| Under the hood |
Wednesday and Friday carried the week. Monday had two merges. Season 0 closed on Saturday night.
Merges per day
The arcs
In rough chronological order.
A first widget view you can predict
The first widget view after connecting Notion depended on timing. Open it a few seconds before the starter habits were seeded and you got the Edit Habits screen. Open it a few seconds later and you got an empty Streaks view. The app now tells the widget whether your habits came from the seed or from your own save. Until your first own save, the widget opens on Edit Habits with a welcome that says these are starting habits you can rename, reorder or replace. The start page's "Open your Habit Tracker" button opened the database instead of the Habit Heroes page that holds it. It opens the page now. Accounts connected earlier get the page resolved on their next visit to the start page. The How it works page describes the integration path first, with the official Notion integration badge.
Toward the Notion Marketplace
The listing for the Notion Marketplace went back in for review with new assets. The knight mark was cut tight to the shield with a white border, so Notion's icon field no longer shows a tiny crest surrounded by transparency. A round version centres the knight for the creator profile picture. The creator profile header is rendered from the pond scene by a script, with the tagline top left where the round avatar does not cover it. The page cover for Notion has the pond in the middle. The template's own page got a Getting started section with the setup steps and the game rules, checked against the code. Notion decides when the listing goes live.
Wording fixes from a newcomer's walk-through
Walking the product as a newcomer produced a list of places where the words were wrong or stale. Each got its own small fix. The live leaderboard lost its average Points column, which measured nothing useful. The error shown when a duel cannot be created no longer claims a Pro subscription is required. There is no Pro tier for individuals, everything is free. Dead "upgrade to Pro" teasers in the widget were replaced with a neutral fallback. Two blog articles had the duel rules wrong. The disconnect FAQ and dialog now say which gap resets a streak. The Freeze Day button says the same thing in every state. The competition password hint matches what the field accepts. The start page's error card dropped an instruction to keep the template's exact name, which was never checked. The mail that nudges you to track your first habit now says that points update as soon as you open the widget, with the nightly sync as the safety net.
Sign in with Notion
The register page offered Notion sign-in, the login page did not. Since Tuesday Continue with Notion sits on the login page too. Notion's consent screen asks on every sign-in whether to copy the template again or to select pages, with the copy preselected. Notion offers no way to skip that question, so the page explains the picker under the button. If you click through with the copy preselected on an account that is already connected, the second template copy is moved to the trash for you. Signing in with Notion on a connected account now lands on the home page, like a Google sign-in, instead of parking you on the connect page.
The season's podium gets a home
The Season 0 rules page promises that the final podium shows on the competition page once every time zone has passed October 31. The competition page never asked for it. Now it shows the final podium of a finished featured season. In the widget, the cards of past competitions open that competition's podium, so a later regular competition cannot push Season 0 out of reach. The Founding Hero badge is a medal drawn as vector artwork on your profile. The first version had the season name too small to read at profile size, so it moved into a gold ribbon. Badges without artwork keep the text chip. The badge is awarded under its own key, Founding Hero, never to be given again, instead of the generic season-finisher key. A season-end result mail to every badge holder exists now. It is sent only by hand, after a dry run.
Wide embeds and a compact Competition tab
On a wide Notion embed, 1400 pixels and up, the whole widget now renders at 70 percent so it does not loom over the page. The leaderboard table is centred under its headline there. The Competition tab got a compact header: the banner reads the competition's name and "Day x of z", the two date badges are gone. The actions sit on one row. Three small polish items landed together: a Freeze label that fits on one line while you wait, progress bars with proper corners and long competition names that no longer break the layout. Edit Habits rebuilds itself from the saved state every time you open it, so an expanded row or an old error text from the last visit does not come back. In the Insights and duel views an empty footer that added eight pixels of dead height is gone.
Registration without dead ends
Someone connected Notion and never ticked a habit. The walk-through that followed found the path from registration to a confirmed address broken in one case. An account that ticked the newsletter box at signup and tried to log in before confirming got a password prompt. Its confirmation link was silently replaced. That branch was built for pre-launch newsletter signups and was never meant for real accounts. It is fixed. The login page now says the address is unconfirmed and offers a resend link. The reminder mail goes out at most once a day. The registration endpoint also took some quiet hardening.
Closing a competition on time
Two fixes landed a day before Season 0 closed. First, a competition used to be closed by the next participant's nightly sync or by a daily sweep with two days of grace. For a European field that meant the podium came almost a day late. An hourly sweep now closes any competition whose last day has ended everywhere on earth. Second, a read-only check against production showed that the test for "is this competition due" read the end date in the wrong time zone. A competition would have been closed at noon on its last day, before most participants had their last day counted. The frozen leaderboard would have been wrong for good. The test now waits for the day after the last day. Season 0's podium is due on Sunday afternoon, European time.
A welcome mail, signed Habit Heroes
New signups got no setup instructions by mail. The confirmation mail had one line about it. Signups through Google or Notion got nothing at all. A one-time welcome mail now goes out at the moment an account is first verified, whichever way you signed up. It carries the setup steps, in two variants depending on whether Notion is already connected. Its button opens your own Habit Heroes page in Notion when the app knows it, your habit database otherwise and the setup page as the fallback. Every mail and every page the app renders now says Habit Heroes, including the sender name. The three-word name stays for the website. The structured data that search engines read carries the short name as an alternate name and names the publisher.
Season 1 trailer and a sharper hero video
The Season 1 launch trailer is cut, from a recording of the real widget: two ticks in a Notion replica, the Season 1 table, a climb from third to second, the podium. The home page's hero loop comes from the same recording. The first encode looked soft on high-density screens. It was rendered at half the display resolution with a bitrate tuned for the old, static scene. The loop now ships at double resolution with a quality-based encode.
Account deletion wipes everything
Deleting an account left data behind. For an account that never connected Notion the wipe skipped almost every table. A competition the account had joined could make the delete fail after the Notion token had already been revoked. Deletion now runs one flow for every kind of account, keyed by the account itself. It takes badges, feedback, schedule mirrors and duel references with it. A nightly sweep purges raw entries older than 400 days from dormant accounts, which active accounts already did on their own syncs. It was switched on Saturday. Separately, a Notion column with a name longer than a hundred characters no longer breaks the starter habits. It is skipped. Saving keeps any existing habit with such a name.
Under the hood
The nightly browser suite was red for three days with zero specs run, because the new Notion login button shared a label with the form's own Continue button. The locator was fixed on Saturday. Twelve specs that had gone stale behind the week's app changes followed. The server's embedded web engine took a security patch release. Two version overrides in the build were dropped once the framework's own patch release managed the same versions. The build image took two routine updates, the coverage and JSON libraries one each. The site's automatically merged dependencies landed on Tuesday. Node major updates are no longer proposed. The headless build host now runs its containers without root. Three small backlog tools learned new rules. The design-system notes caught up with the header breakpoints. Two dead legal templates were deleted. The start page's connected card dropped the journal-entry row that competed with the tracker link. The profile's Notion workspace buttons were aligned.
Compiled from the merge history across the Notion Habit Heroes app and this site, October 25 to 31, 2026. Wednesday carried twenty merges, Friday nineteen. Monday had two.
