AntFleet

Disagreement · 09a05e58-anthropic-3

Sidebar refresh's setLoading(false) runs unconditionally on stale request when gwStatus disconnects mid-flight

solo Opus
repo 5149da9d·PR #1·reviewed 2 days ago

Opus finding

Sidebar refresh's setLoading(false) runs unconditionally on stale request when gwStatus disconnects mid-flight

lowconcurrencymedium
  • desktop/renderer/src/components/wallet/WalletSidebarPanel.tsx:32-60
If the user clicks refresh, then quickly the gateway disconnects and reconnects, two `refresh` calls can overlap. There is no cancellation token; both will eventually call `setLoading(false)` and `setBalances`, with the later-returning (possibly stale) request overwriting fresher data. Same pattern in WalletView. This is a typical async race in store-backed UI components.

Recommendation

Track an in-flight token (or AbortController) and ignore results from any but the latest refresh call.

Other reviewer

The other reviewer flagged nothing in this file/line range.

Why this didn't post

This finding didn't meet AntFleet's unanimous agreement threshold. Both frontier models review every PR independently; only findings they both flag with the same severity and category are posted to the PR. This one fell through.

read the methodology →

From the same review

These findings passed the unanimous gate on the same PR review. The disagreement above was filtered out; the findings below were posted.