* Initialize Onboarding Flow
* Shorten Onboarding
* Add Setup circle and what are the current way to add tasks to the onboarding.
update donetick logo
* improve wording
* Skip onboarding flow for now
* Enable onboarding flow
* enable hold to select, remove once x1 chip, unify reschedule modal
* project title still show fromwhen login from different account
it's was cache in local storage so makdikngsure we do clean up
* Fix: show the button for creating task on the modal instead of the panel
* Bulk moving project, Move the button in scanner to the modal
* - Handle bulk change for projects
- allow no assignee being selected
- choreactionmenu become modal on mobile
* Update build.yml to allow pushes to any branch
Remove branch restriction for push events, which prevents forked projects from running CI checks prior to creating a PR.
* eslint, prettier config only
The app logged itself out in the middle of the OAuth code exchange,
tearing down the page before the callback request could finish.
On resume, the deep-link handler and the sync-on-resume listener fire in
the same tick. Sync ran first, hit a 401 (no session exists yet), and
ApiClient treated that as an expired session: it cleared tokens, wiped
the offline DB, and hard-navigated to /login via window.location.href.
That reload aborted the in-flight POST /auth/oauth2/callback, surfacing
as "Authentication request failed TypeError: Failed to fetch".
Add heartbeat/timeout recovery for silently-dead Android recognizer sessions,
wait for and prefer the late-arriving final transcript over the interim
partial, and guard against duplicate commits when it lands after restart.
Bias native recognition toward circle member/label names via contextualStrings
so unfamiliar names aren't auto-corrected. Restrict spoken "label X" to
existing labels (exact or closest fuzzy match) instead of creating new ones,
removing the now-unused label-creation flow from AddTaskModal/VoicePanel/
parseVoiceTask.