Visual state change now happens before any async work (getGlobal, getRunningEntryId, API calls). Previously the button waited for getGlobal() to resolve before going green, causing a 1-2s delay. Also reverts optimistic state on API error. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>