Skip to content

[Crash] EXC_CRASH SIGABRT in CursorStatusProbe.fetchIfSessionAccepted on startup (0.20) #696

@h3x89

Description

@h3x89

Bug Report — App crashes on startup, cannot launch

CodexBar version: 0.20 (build 55)
macOS: 26.3.1 (25D771280a) arm64
Reproducible: Every launch

Symptom

CodexBar crashes immediately on every startup. The app is completely unusable — it crashes within ~1.5s of launch every time.

Crash stack trace (from DiagnosticReports .ips)

Exception: EXC_CRASH (SIGABRT)
Signal: SIGABRT

Crashed thread:
  __pthread_kill
  pthread_kill
  abort
  swift::swift_Concurrency_fatalErrorv(unsigned int, char const*, char*)
  swift::swift_Concurrency_fatalError(unsigned int, char const*, ...)
  swift_task_dealloc
  asyncLet_finish_after_task_completion(...)
  specialized CursorStatusProbe.fetchIfSessionAccepted(_:log:)
  CursorStatusProbe.fetch(cookieHeaderOverride:logger:)
  CursorStatusFetchStrategy.fetch(_:)
  protocol witness for ProviderFetchStrategy.fetch(_:) in conformance CursorStatusFetchStrategy
  ProviderFetchPipeline.fetch(context:provider:)
  closure #1 in closure #3 in UsageStore.refreshProvider(_:allowDisabled:)
  partial apply for closure #1 in closure #3 in UsageStore.refreshProvider(_:allowDisabled:)
  specialized thunk for @escaping @isolated(any) @callee_guaranteed @async () -> (@out A)
  partial apply for specialized thunk for @escaping @isolated(any) @callee_guaranteed @async () -> (@out A)
  completeTaskWithClosure(swift::AsyncContext*, swift::SwiftError*)

Attempted workaround

I tried disabling the Cursor provider via defaults:

defaults write com.steipete.codexbar providerToggles -dict antigravity 0 claude 1 codex 1 cursor 0 gemini 1
defaults write com.steipete.codexbar selectedMenuProvider claude

However, the crash persists. The stack shows refreshProvider(_:allowDisabled:) — it appears CodexBar fetches all providers including disabled ones on startup, which triggers the crash regardless of the toggle state.

Additional context

  • selectedMenuProvider was set to cursor before I changed it to claude
  • Cursor is installed on this machine
  • The crash happens in Swift concurrency (swift_task_dealloc + asyncLet_finish_after_task_completion), suggesting a memory/task lifecycle issue specific to CursorStatusProbe.fetchIfSessionAccepted
  • Crash report ID: 19ECAB52-9CA3-48BE-BE91-0BD4A1C29CE7

Is there a way to fully disable the Cursor provider from the command line so the startup fetch is skipped entirely?

Metadata

Metadata

Assignees

No one assigned

    Labels

    acceptedConfirmed backlog item or verified open bugarea:install-distributionInstall, packaging, Homebrew, launch, binary detectionbugSomething isn't workingpriority:highHigh priority: confirmed serious bug or blockerprovider:cursorIssue specific to Cursor

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions