Standardize picker fetch and decode error rows #638

Closed
opened 2026-05-06 19:55:42 +00:00 by barrettruth · 0 comments
Owner

Parent: #634

Problem

Async picker fetches can fail because the CLI exits nonzero, the network is unavailable, authentication is broken, JSON is invalid, or a backend returns an unexpected shape. Picker error rows and notifications should consistently preserve the actionable part of that failure instead of showing only a generic empty/error row.

Scope

  • Audit lua/forge/picker/session.lua and picker-specific error_entry call sites.
  • Use the shared failure formatter from #635 where appropriate.
  • Ensure PR, issue, CI, release, branch, commit, and source pickers have coherent failure rows.
  • Add tests for command failure and decode failure rows.

Non-goals

  • Do not change picker mappings or successful row rendering.
  • Do not make transient stale requests noisy.
Parent: #634 ## Problem Async picker fetches can fail because the CLI exits nonzero, the network is unavailable, authentication is broken, JSON is invalid, or a backend returns an unexpected shape. Picker error rows and notifications should consistently preserve the actionable part of that failure instead of showing only a generic empty/error row. ## Scope - Audit `lua/forge/picker/session.lua` and picker-specific `error_entry` call sites. - Use the shared failure formatter from #635 where appropriate. - Ensure PR, issue, CI, release, branch, commit, and source pickers have coherent failure rows. - Add tests for command failure and decode failure rows. ## Non-goals - Do not change picker mappings or successful row rendering. - Do not make transient stale requests noisy.
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
barrettruth/forge.nvim#638
No description provided.