fix(tasks): stop spinner after provisioning error#2481
Conversation
Greptile SummaryThis PR fixes a bug where the activity spinner kept running indefinitely after workspace creation or provisioning failed, by narrowing
Confidence Score: 5/5Safe to merge — the change is a small, focused fix that only affects spinner visibility after provisioning errors. The narrowed isBootstrapping logic is correct for every phase/state combination, transitionToUnregistered already hardcodes phase = 'creating' so the new check is always entered on creation start, and both consumers are updated consistently. No unrelated code is touched. No files require special attention.
|
| Filename | Overview |
|---|---|
| apps/emdash-desktop/src/renderer/features/tasks/stores/task-store.ts | Narrows isBootstrapping to exclude error phases ('create-error', 'provision-error'), stopping the spinner when creation or provisioning fails. Logic is correct for all phase/state combinations. |
| apps/emdash-desktop/src/renderer/features/sidebar/task-sidebar-agent-status.tsx | Removes duplicated local isBootstrapping derivation, delegates to task.isBootstrapping. Clean simplification with no behavior loss. |
| apps/emdash-desktop/src/renderer/features/sidebar/task-item.tsx | Removes duplicated local isBootstrapping computation, delegates to task.isBootstrapping. Text dimming now correctly clears on provisioning error. |
Flowchart
%%{init: {'theme': 'neutral'}}%%
flowchart TD
A[TaskStore state/phase] --> B{isBootstrapping?}
B -->|unregistered + creating| C[true → show spinner]
B -->|unregistered + create-error| D[false → stop spinner ✅]
B -->|unprovisioned + provision| E[true → show spinner]
B -->|unprovisioned + provision-error| F[false → stop spinner ✅]
B -->|unprovisioned + idle/teardown/teardown-error| G[false → no spinner]
B -->|provisioned| H[false → no spinner]
C --> I[CLISpinner in TaskSidebarTrailingSlot]
C --> J[Dimmed text in SidebarTaskItem]
D --> K[AgentStatusIndicator or timestamp]
F --> K
Reviews (1): Last reviewed commit: "fix(tasks): stop spinner after provision..." | Re-trigger Greptile
arnestrickmann
left a comment
There was a problem hiding this comment.
great small addition!
Description
Screenshot/Recording (if applicable)
https://streamable.com/9kizfv
Checklist
messages and, when possible, the PR title