← Back to Updates

Every fix, listed.

A detailed, customer-readable record of 279 fixes in v0.3.256 to v0.3.286. Updated 3 October 2026.

The current version is v4.0.21, released 5 November 2026.The Updates page has a short card for each release: what is new, what improved, and the headline changes worth knowing about, newest first. Updates →

Release

Fixes in v0.3.286

106 fixes across 14 categories.

v0.3.2863 October 2026

Voice and telephone calls

7 fixes
  • v0.3.278 A failed call start is recorded in its chat, so the agent can see why it failed.
  • v0.3.278 When a call ends early, the agent stops preparing for it instead of carrying on for a call nobody is on.
  • v0.3.278 Calls on hosted installations no longer end almost as soon as they start.
  • v0.3.279 Fast voice calls no longer go silent shortly after they start.
  • v0.3.282 A call no longer cancels a live call on another installation.
  • v0.3.282 Progress notes are no longer read out in a voice call or on the phone.
  • v0.3.283 A library voice that ElevenLabs' free plan refuses now says so, instead of looking like an empty account.

Your own computer and browser

2 fixes
  • v0.3.283 A browser snapshot of part of a page no longer reports a tab you named as not open.
  • v0.3.283 After a mode change or reconnect, the agent is told what the browser connection allows, including switching tabs.

Chat and conversations

10 fixes
  • v0.3.262 The installed iPhone app no longer shows a faded band under the status bar, and the phone header is one colour.
  • v0.3.274 System notes in a transcript are no longer filed as your words or counted as a turn.
  • v0.3.278 A photo or file sent through a channel appears in the web chat as itself, not as a note in the sender's bubble.
  • v0.3.281 Older messages stored behind system lines read back as the person's words, and queued system events show as grey lines outside the bubble.
  • v0.3.281 A channel message holds only what the sender sent, with no queued system events or extracted file text mixed in.
  • v0.3.281 A Telegram voice note no longer shows the channel's envelope, and the web chat shows activity while a channel message's files are read.
  • v0.3.281 Progress notes no longer appear as text in Slack and other channels, and the web chat shows a channel turn's progress.
  • v0.3.282 A reply with nothing to read now shows its footer line instead of a blank message.
  • v0.3.282 A message typed in the web chat counts as a web chat turn, even in a chat pinned to a channel, and picks up queued system events.
  • v0.3.282 A spoken-back reply shows as one message with one player that plays.

Jobs, tasks and automations

5 fixes
  • v0.3.266 Clone on the scheduled tasks page now makes a copy of the task.
  • v0.3.266 The scheduled-task editor saves only the schedule you changed.
  • v0.3.275 A flow that asks an agent or another flow no longer loses a quick answer, and the ask is no longer timed out early.
  • v0.3.275 A coordinator's status line counts cancelled and dropped tasks.
  • v0.3.281 A job that names specific agents gives their tasks to one of them, or records why it did not.

Agents, skills and tools

11 fixes
  • v0.3.259 Removing an agent, or an imported shared agent, takes its project memberships and tags with it.
  • v0.3.268 A command runs exactly as the agent wrote it, with heredocs kept whole.
  • v0.3.268 The Google Workspace skill now says a Gmail attachment cannot yet be saved to a file, and asks you to add it to the chat.
  • v0.3.278 The OpenAI speech-to-text skill uses GPT Transcribe, and no longer saves an error as the transcript.
  • v0.3.278 Agents no longer keep skills that no longer exist, and creating or updating an agent saves only skill names that resolve.
  • v0.3.278 A skill that fails to load now shows a warning naming the agent and the skill.
  • v0.3.281 A tool call made together with loading its tool is now answered like a direct call.
  • v0.3.281 Messaging a teammate who cannot take messages now says so, and a wrongly passed link names the expected shape.
  • v0.3.281 A tool call with an unknown parameter is refused rather than run as if it was missing, and no longer prompts a memory-save nudge.
  • v0.3.283 A check that answers with an exit code, or a file not written yet, no longer prompts the agent to save a lesson.
  • v0.3.283 A command run in another workspace is named by whose workspace it is, not called the agent's own.

Memory, knowledge and search

6 fixes
  • v0.3.278 A workspace that still holds a memory space can no longer be deleted.
  • v0.3.278 A memory space turned off for good, or needing a person, now reaches your bell.
  • v0.3.278 A memory space picks up the notes left on its old inbox routes.
  • v0.3.278 A memory space whose folder lost its workspace record is registered again, not turned off for good.
  • v0.3.283 A memory space file opens at the path a search result shows, and a miss names the folder paths are relative to.
  • v0.3.283 A new memory space starts with the sleep its creation asked for, even where the emergency disable is still in place.

Models and providers

16 fixes
  • v0.3.259 A subscription serving the same model now runs ahead of an API key you ranked below it.
  • v0.3.260 Opening a chat shows the model its next turn will actually run, not an outdated one.
  • v0.3.264 The platform's own Google key is no longer shown or used as your Google account.
  • v0.3.264 A custom provider's API key is labelled API.
  • v0.3.265 A 401 from an endpoint that needs no key now says it needs a key, not that a stored key was refused.
  • v0.3.270 Every Claude, ChatGPT or xAI sign-in failure shows a clear error that stays until dismissed, and a reconnect says where it landed.
  • v0.3.273 GitHub Copilot keeps offering Sonnet 5 until GitHub publishes the id for Sonnet 5.5.
  • v0.3.273 Sonnet 5.5 is no longer estimated as slower than Sonnet 5 on the same provider.
  • v0.3.273 Tool-using turns on the newest Claude models no longer fail on newer Anthropic accounts when earlier context changes between calls.
  • v0.3.275 A model served by two providers shows each provider's own context window.
  • v0.3.275 Kimi web search uses your connected Kimi API account's key, and a connected account never picks a search provider on its own.
  • v0.3.275 A model that has been superseded leaves your pins and routing chains before any chat resolves a route.
  • v0.3.276 The Web Search tab names Gemini as its one row, with no Grok.
  • v0.3.277 The note about more providers names the real path, Admin, Models, Providers, Add provider, and lists only providers that path connects.
  • v0.3.281 Reading images and PDFs skips a provider account that has been refused, instead of trying it first every time.
  • v0.3.283 An Anthropic account whose organisation refuses subscription sign-in says so, and offers an API key.

Sharing, connections and channels

19 fixes
  • v0.3.259 Unpublishing a shared agent leaves no working link, and its row shows as not shared.
  • v0.3.259 A shared agent that was removed and imported again can be filed into a project again.
  • v0.3.261 Open questions reach the agent in channel conversations even when a custom base prompt is in use.
  • v0.3.261 No channel writes message content to the logs, and Signal reaction notices still show who reacted and with what.
  • v0.3.261 Your answer to an agent's question goes back to the chat that asked.
  • v0.3.263 A question carries a reply mark instead of an English footer, and its formatting follows what the channel supports.
  • v0.3.264 A notice shows in the bell as unread until you read it.
  • v0.3.266 An approval client that cannot start no longer takes its channel down.
  • v0.3.278 A button press answers only the question it names, and a stale approval press on Telegram is answered in the chat.
  • v0.3.281 A Discord button on a question or approval keeps working after a restart or half an hour, and settling it redraws it.
  • v0.3.281 Question choices and approval buttons reach Discord and Slack as real buttons, not plain text, and Slack no longer refuses them.
  • v0.3.281 SharePoint saves a renewed sign-in, and its errors read as sentences.
  • v0.3.281 A long turn in Teams no longer loses its message, because the message is acknowledged at once and answered after.
  • v0.3.281 A press on a Teams card button reaches the conversation instead of vanishing.
  • v0.3.281 A reply in a Teams channel thread stays in the thread, even when sent proactively or by the message tool.
  • v0.3.281 A file that did not arrive from Teams is named for the agent, files keep their names, and a pasted picture is fetched once.
  • v0.3.281 A file sent to Teams is uploaded per conversation, never shared wider than asked, and a file that was not sent says so.
  • v0.3.281 A Slack message sent with buttons shows its text above them.
  • v0.3.281 A Slack message addressed to a person by user id reaches their direct message, and settling a question works there.

Cards and tabs

1 fix
  • v0.3.283 A long teammate card in the web chat shows five lines and a Show more control.

Admin, settings and security

15 fixes
  • v0.3.266 A command that starts with a NAME=value setting is judged by the program it runs, so Always remembers it.
  • v0.3.267 A press on an approval that is no longer waiting is answered with an hourglass.
  • v0.3.267 The completion notice names the approval its run answered.
  • v0.3.267 The approval message in a chat shows the command without its reference code.
  • v0.3.267 An approval button pressed in a chat now settles the approval.
  • v0.3.268 Checking whether a program exists no longer raises an approval card for that program.
  • v0.3.268 A chat shows typing after you press an approval there.
  • v0.3.268 A command line of several steps asks only about its new programs, skips cd, and keeps Always.
  • v0.3.268 An approval says a command ran in a directory, never that it wrote there.
  • v0.3.269 Shell builtins that run no program, such as cd and test, no longer raise an approval card.
  • v0.3.275 One browser tab's failed session refresh no longer signs every tab out.
  • v0.3.276 File access and command approval were tightened in several places.
  • v0.3.278 Running sleep no longer asks for approval.
  • v0.3.283 Building a presentation from a deck script and running the PDF pipeline no longer ask for approval.
  • v0.3.283 A new webhook's result says when its URL is the only credential.

Files, backups and media

1 fix
  • v0.3.281 A new workspace gets a folder of its own, never the files of a deleted one.

Speed and reliability

5 fixes
  • v0.3.259 A settings save at start-up is no longer refused because another save or the routing check held the lock too long.
  • v0.3.259 Player One reports ready only after its start-up steps have finished, so early connections no longer time out.
  • v0.3.268 A new workspace is watched at once, instead of waiting for the first workspace scan at start-up.
  • v0.3.268 Discord's skill commands no longer hold up Player One's start-up.
  • v0.3.282 A failed first project list is retried, so one refused request no longer blanks the app.

Sign-in and account security

7 fixes
  • 27 Sep Adding an authenticator app no longer notifies you or signs out sessions until confirmed, and adding a second step keeps your saved recovery codes.
  • 27 Sep The account page's way back to the dashboard sits at the left edge of the window again.
  • 27 Sep An empty field on sign-in, password reset or adding a passkey now says it is wrong instead of failing with a server error.
  • 27 Sep A browser signed out of the account but still running the dashboard now shows in Devices as signed out, not as "Unknown device".
  • 27 Sep The name field you edit on the account page uses the same type as the name itself, and the dashboard settings show the larger profile picture.
  • 27 Sep The dashboard's settings page no longer shows your email twice when you have no display name.
  • 27 Sep The Manage account link looks disabled until its address is known, instead of looking live and doing nothing.

Organisations, access and installations

1 fix
  • 3 Oct Email sent to an email account in webhook mode now reaches the installation instead of being refused.

Release

Fixes in v0.3.257

173 fixes across 14 categories.

v0.3.25726 September 2026

Voice and telephone calls

10 fixes
  • v0.3.257 A chat with a sandboxed agent now offers the microphone for voice notes.
  • v0.3.257 Voice notes are transcribed in your language when the card names one, so short notes stop coming back in the wrong language.
  • v0.3.257 Agents read a voice note's text as a machine transcript that can mishear, not as exact words.
  • v0.3.257 Speak back no longer fills a single reply with dozens of identical audio players.
  • v0.3.257 A long voice narration gets longer to render, and a timeout now says so instead of a bare abort.
  • v0.3.257 Phone-call transcription works again, now that it uses OpenAI's current realtime interface.
  • v0.3.257 A live call no longer opens with a transcription model that cannot stream, which left it unable to listen.
  • v0.3.257 A Fast voice call saves each line in the order it was spoken, dated from when it began.
  • v0.3.257 A Fast voice call no longer makes a pointless agent model call when it starts.
  • v0.3.257 Speak back plays one clip per reply, however many times the model asks for it.

Your own computer and browser

17 fixes
  • v0.3.257 Approving a computer or browser no longer ends in a bare 401, and the page says when the sign-in is held only in the side panel.
  • v0.3.257 The close button in the browser's side panel now closes it, and the pin is left out there.
  • v0.3.257 Agents no longer take the standing notes about your computers for fresh news on every turn.
  • v0.3.257 A browser that fails to start now says whether Chromium exited, handed the profile over or hung.
  • v0.3.257 Two agents asking for the same browser at once now share one browser instead of launching two.
  • v0.3.257 Stopping one browser no longer closes a healthy browser that an agent is still using.
  • v0.3.257 A browser that died or went silent is cleared before a relaunch, so browser calls stop failing to start.
  • v0.3.257 Changing a browser setting no longer closes browsers in use, so a scheduled task keeps its page mid-run.
  • v0.3.257 An agent keeps working in your own browser, and in the tab of the chat that asked, rather than moving to a managed browser or another chat's tab.
  • v0.3.257 A project's default browser profile no longer decides whose browser an agent uses, and your own browser no longer refuses it.
  • v0.3.257 Browser results now say which browser they came from, and why your own browser did not get the work, including while its extension is still arriving.
  • v0.3.257 Your own browser is no longer chosen by default for screen, shell and file requests it cannot serve.
  • v0.3.257 An element that was found but cannot be reached is no longer reported as not found.
  • v0.3.257 An agent no longer states the title of a page it was refused permission to capture.
  • v0.3.257 A page snapshot filtered down to nothing now says so, instead of looking like a page that cannot be seen.
  • v0.3.257 Elements inside frames now appear in a browser snapshot.
  • v0.3.257 The browser skills name the tool that is actually available, and stop teaching an agent to guess at a site's own addresses when it can reach the page.

Chat and conversations

14 fixes
  • v0.3.257 Opening a chat's rename box and closing it without a change no longer counts as your own title, so automatic titles keep updating.
  • v0.3.257 Deleting a chat for good no longer leaves stray records behind.
  • v0.3.257 The message box names the agent the chat is with, and a chat opened for an agent starts with that agent, whatever project is selected.
  • v0.3.257 An imported chat keeps a title you set, rather than having it replaced by an automatic one.
  • v0.3.257 Putting a phone's keyboard away, or tapping outside the message box, keeps your draft instead of sending it.
  • v0.3.257 A new chat, a chat that started a coding session and a Fast voice chat can be moved to Trash straight away.
  • v0.3.257 A new chat's first message no longer vanishes and bounces back a moment after you send it.
  • v0.3.257 Searching chats finds a chat by its first message again.
  • v0.3.257 An opened chat stays in its sidebar folder.
  • v0.3.257 Times an agent sees in scheduled runs, after a compaction, in status and on incoming messages are in your time zone, not the server's.
  • v0.3.257 Clicking away from the composer on a desktop no longer sends the draft.
  • v0.3.257 A chat pinned in a project now shows in Pinned under All projects, and a pinned chat stays in Pinned.
  • v0.3.257 The notice under the composer and "LLM only" now share one line.
  • v0.3.257 Moving a chat to a project moves its whole team of chats too, and the move says which chats went with it.

Jobs, tasks and automations

9 fixes
  • v0.3.257 Scheduled tasks are told to cap work that grows with your data, and an optional trial no longer fails the whole task.
  • v0.3.257 Re-sealing a flow revision during a live run clears a finished compile step, and refusals name it.
  • v0.3.257 A coordinator killed by a restart is noticed promptly, and one waiting out a long provider retry is no longer mistaken for dead.
  • v0.3.257 A scheduled run's chat can be moved to Trash from its first turn, and removed after its task's own chat is deleted.
  • v0.3.257 Creating a webhook refuses a name that the webhook address already serves.
  • v0.3.257 A model named on a scheduled task moves to its successor when the catalogue replaces it.
  • v0.3.257 A flow's message into a chat is shown as the flow's words, not as yours.
  • v0.3.257 A scheduled task's delivery step now says what became of the delivery, and stops raising false alarms on deliveries that went through.
  • v0.3.257 The owner notice for a failing scheduled task reports incidents rather than every failure, and carries no text the run produced.

Agents, skills and tools

20 fixes
  • v0.3.257 Agents now read "workspace in another project" as reachable by switching project, not as a missing workspace.
  • v0.3.257 Team members check the team guidance before specialist work, and the main agent is no longer exempt.
  • v0.3.257 An approved command's output reaches the agent with its lines intact, and names the process log when it is cut.
  • v0.3.257 The agent is told whether you approved once or with Always allow, and what that covers.
  • v0.3.257 A background command stopped by a safeguard or a cancel now says who stopped it and why, not just a bare signal.
  • v0.3.257 A tool call made before its tool was loaded keeps its arguments on the record.
  • v0.3.257 Changing skills in one workspace or project no longer makes every other agent re-read the whole skill list.
  • v0.3.257 An instructions file over the prompt limit is no longer cut silently: the agent and the agent page say what is left out.
  • v0.3.257 When an agent asks to load a tool that does not exist, the reply names the closest tools.
  • v0.3.257 An agent that uses a tool's short name no longer wastes a round searching, and the full name is given.
  • v0.3.257 Deleting an agent clears its workspace record, so re-creating one under the same name no longer finds the old directory.
  • v0.3.257 An updated tool's description and inputs reach the agent on the next turn, without a restart.
  • v0.3.257 The prompt tab offers a file switch only for files Player One lists for the agent.
  • v0.3.257 A command run in a workspace that names a missing directory now says so, instead of reporting a missing shell.
  • v0.3.257 An agent created through the API has its workspace straight away, without waiting for a restart.
  • v0.3.257 An agent's connections tool no longer answers "Unknown action" to every request.
  • v0.3.257 Skills changed on disk are noticed again, after the watcher had stopped seeing any change.
  • v0.3.257 A hosted workspace lists the skills it has, and editing a shipped skill is noticed.
  • v0.3.257 A generated agent face is square and rounded by its frame like every other picture, and an agent keeps one face wherever it appears.
  • v0.3.257 An agent picker with nothing chosen now has a name, so screen readers and voice control can find it.

Memory, knowledge and search

15 fixes
  • v0.3.257 A problem in one Memory Space now pauses only that Space, not every Space's sleep for a day.
  • v0.3.257 A document of any type dropped in a Memory Space's inbox now counts as pending work.
  • v0.3.257 Ranked search rows read cleanly, with short labels, one file shape and at most ten rows.
  • v0.3.257 Ranked search no longer drops the right items before ranking, and name matches come first.
  • v0.3.257 Ranked search stays inside its time limit, falling through to the next model and asking for fewer scores.
  • v0.3.257 The memory plugin that stores knowledge in LanceDB loads from a built install again.
  • v0.3.257 A provider whose accounts are all switched off is no longer used for ranked search.
  • v0.3.257 A search refused by the account's terms now says so, instead of blaming a missing provider.
  • v0.3.257 Raw search shows the matched text of full-text rows, and no longer prints an empty Roots heading.
  • v0.3.257 A named skill or tool now comes first in a search, and a lookup for one item always shows it.
  • v0.3.257 A ranked search ignores options it does not take, and skips a pinned source this chat cannot search instead of failing.
  • v0.3.257 A write outside every Memory Space now explains that a Space is reached one at a time by its own route, not through a project link.
  • v0.3.257 Moving a large source from a Memory Space's inbox into its library is no longer refused.
  • v0.3.257 Context search keeps two sources' files that share a relative path as two separate results.
  • v0.3.257 Search in a hosted workspace now finds the skills that ship with Player One.

Models and providers

27 fixes
  • v0.3.257 A model catalogue refresh now reaches every provider, because stale copies of catalogue rows in config are removed at boot.
  • v0.3.257 A curated provider's model list is no longer replaced by a live list of every model it serves.
  • v0.3.257 A failed turn no longer claims Groq is connected when the only Groq key is Player One's own voice key.
  • v0.3.257 Player One keeps using a newer model catalogue and skips only the entries it does not understand, instead of freezing on the old one.
  • v0.3.257 Venice, Together and Chutes onboarding keep their default model in your model allowlist.
  • v0.3.257 A provider's plan variant now uses the same key as its base provider, rather than staying disconnected.
  • v0.3.257 Migrate on the Providers page asks the same data terms question as connecting, and re-authenticating reopens the provider's own card.
  • v0.3.257 Media, image and PDF tools send a model's current name, so a superseded name no longer fails.
  • v0.3.257 A bare model name on OpenRouter or Vercel AI Gateway finds that provider's own row, not a model that does not exist.
  • v0.3.257 NVIDIA models whose names start with nvidia keep their full name when routed.
  • v0.3.257 Cloudflare AI Gateway no longer adds a guessed Claude model as your default; its models are your own rows.
  • v0.3.257 MiniMax's China sign-in connects models on its documented China host.
  • v0.3.257 Xiaomi MiMo shows Xiaomi's company mark, which reads at small sizes.
  • v0.3.257 A chat's pinned model is kept when a message is sent, even if config does not list that model.
  • v0.3.257 A model run with some thinking is timed with thinking, so its speed grade is never overstated.
  • v0.3.257 Ollama now runs simple completions and spoken-reply summaries at the intended thinking level, and Ollama Cloud's models take the settings Ollama declares.
  • v0.3.257 A search provider that runs no model reads "no key" when its chat provider is connected.
  • v0.3.257 Copilot's cheap and fast picks now choose the model that draws the fewest AI credits.
  • v0.3.257 New chats of an agent share one prompt cache on OpenAI and Codex, so they read from the cache instead of starting cold.
  • v0.3.257 The Codex coding agent is sent only a model it offers, and falls back with a notice instead of failing.
  • v0.3.257 The Codex coding agent runs a pinned version that offers GPT-6, and the model notice names what you can change.
  • v0.3.257 Parts of the prompt that change within a chat now sit at the end, so later turns reuse more of the cached prompt.
  • v0.3.257 The provider help video plays instead of showing an empty dialog.
  • v0.3.257 The model list now refreshes on an installation whose saved copy lacked a signature.
  • v0.3.257 Model pickers use the catalogue's names and order, newest first, and no longer mark a model as Legacy.
  • v0.3.257 Saved model choices and allowlists move to a model's successor when it is replaced, for every provider, and a dropped model leaves the picker.
  • v0.3.257 Opus 5.5 now works on a Claude subscription, where each turn was refused for needing a newer Claude Code version.

Sharing, connections and channels

5 fixes
  • v0.3.257 Agents now know a Telegram message without buttons needs an empty buttons list, so a scheduled send no longer goes quiet.
  • v0.3.257 In a Feishu broadcast group, a sandboxed agent no longer sees your time zone.
  • v0.3.257 The Feishu channel loads again.
  • v0.3.257 Discord voice finds its voice packages on a built install.
  • v0.3.257 The Messaging page says which plugin setting keeps a channel off, and Set up no longer stays silent.

Cards and tabs

2 fixes
  • v0.3.257 A deep link into the agent page opens the tab and sub-tab it names.
  • v0.3.257 On an installed iPhone app, the strip under the status bar wears the header's colours instead of a white band.

Admin, settings and security

10 fixes
  • v0.3.257 An agent configuration that cannot be read no longer leaves agents without their sandbox and role limits.
  • v0.3.257 A Vault request notification names the project, and a Process inspection request now reaches the bell.
  • v0.3.257 The Vault Requests tab says when a linked request is already settled, and names each item.
  • v0.3.257 Always allow is offered only when it will stop the same command asking, and an Always that would not be kept is refused.
  • v0.3.257 The approval card for a forced delete no longer lists a hash as one of the things to be deleted.
  • v0.3.257 A sandboxed agent and a hosted chat are no longer told your time zone.
  • v0.3.257 After you make, paste or reissue a key, focus moves to its Copy button.
  • v0.3.257 Copy blocks for setup lines now have a name for what they hold, so screen readers announce them.
  • v0.3.257 A gateway restart no longer signs every browser out.
  • v0.3.257 The control UI now tells search engines not to index it.

Files, backups and media

7 fixes
  • v0.3.257 The video player's controls show, and a previewed video is reported as video.
  • v0.3.257 A video preview survives a refreshed link without crashing.
  • v0.3.257 Ending a served file never deletes a file the serve did not create.
  • v0.3.257 A reopen-preview link for a file with spaces in its name now works instead of showing as raw text.
  • v0.3.257 The PDF viewer offers Open and Download on every device, and a card on phones.
  • v0.3.257 PDFs built in the page now show on desktop.
  • v0.3.257 A crashed process in a hosted workspace no longer leaves large core dump files in it.

Speed and reliability

11 fixes
  • v0.3.256 Long chats trim old tool results rarely and in one step, so the prompt cache survives and usage is not burnt on re-reads.
  • v0.3.256 Starting up no longer freezes for nearly a minute on a long chat's compaction.
  • v0.3.257 A turn that keeps crashing Player One is no longer resumed again and again at every start.
  • v0.3.257 A reply that stalls partway falls back to another model or says it looks stuck, instead of hanging the chat.
  • v0.3.257 A reply cut short by a restart or update resumes at the next start, even when the shutdown left a lock behind.
  • v0.3.257 Each turn no longer re-reads the account store file to work out the plan.
  • v0.3.257 The app stops sitting on a dead connection after a phone suspends it.
  • v0.3.257 Project panels and media viewers load again after an update instead of failing on missing files.
  • v0.3.257 A page error now shows a Reload button instead of a blank page.
  • v0.3.257 The app's service worker now registers correctly.
  • v0.3.257 Hosts where the runtime serves the dashboard now cache and compress its files, so reloads stop downloading about 4 MB each time.

Sign-in and account security

17 fixes
  • 23 Sep A sign-in can no longer end on another site's page through a crafted return address.
  • 23 Sep The sign-in page no longer loads blank.
  • 23 Sep Signing in with two-step sign-in switched on no longer fails with a server error.
  • 23 Sep Signing out of the dashboard no longer fails with a gateway error.
  • 23 Sep Signing out no longer shows the sign-in page twice.
  • 23 Sep After a successful sign-in or code, the form keeps its spinner until the dashboard opens, rather than looking idle.
  • 24 Sep Signing in or resetting a password with no return address now lands on account settings, not a missing page.
  • 24 Sep A failed account lookup shows an error with a retry instead of looping through sign-in again and again.
  • 24 Sep A sign-in page left open or restored with Back no longer ends in an error and starts over instead.
  • 24 Sep The theme you pick now carries across the dashboard and sign-in pages, and pages no longer flash dark before showing the light theme.
  • 26 Sep Signing out of the dashboard now revokes its long-lived sign-in token, and simultaneous requests no longer leave extra valid ones behind.
  • 26 Sep Every sign-in now starts a fresh session, so an earlier copy of the sign-in cookie can no longer carry a later sign-in.
  • 26 Sep A signed-out browser goes straight to sign in instead of first loading the whole dashboard, and Back no longer bounces between pages.
  • 26 Sep A lost authenticator app can be replaced after signing in with a recovery code or a passkey, without a code from the old app.
  • 26 Sep Adding a passkey while two-step sign-in is on now asks for an authenticator code.
  • 26 Sep A Telegram approval no longer works after it has expired or once its Telegram link is removed.
  • 26 Sep A working authenticator app is changed by turning two-step sign-in off and on, so it never stops working before the new one is scanned.

Organisations, access and installations

9 fixes
  • 20 Sep An installation whose stored user limit was zero can be updated again, and new installations no longer get a zero limit.
  • 21 Sep Creating an installation now requires a usable admin email and password, so it never ends with blank login fields.
  • 22 Sep A custom domain's HTTPS certificate check no longer stalls, so its certificate can be issued and renewed.
  • 25 Sep Dialogs stay inside the window, with long lines contained and the buttons always within reach.
  • 26 Sep Upgrading a running installation is no longer refused for lack of room by counting the installation twice.
  • 26 Sep A purchase with an email that already has an account now carries on, and the welcome email says correctly whether the invitation arrived.
  • 26 Sep The create-installation sheet stays open while it creates, so a failure is no longer missed after closing it.
  • 26 Sep The create-installation sheet no longer shows an error before you have touched a field.
  • 26 Sep Previews of spare avatars no longer show as broken images on installations.