actualbudget / actualbudget/actual

Add consistent error handling to all four provider reset handlers in CreateAccountModal

Aperta Adatta ai principianti
#7,659 1 commento 0 reazioni 0 assegnatari Vedi su GitHub
Lingua principale
TypeScript
Stelle
28.8k
Fork
3k
Merge medio
2g 11h
PR unite (30g)
65

Descrizione

## Summary

The four bank-sync provider reset handlers in `packages/desktop-client/src/components/modals/CreateAccountModal.tsx` — `onGoCardlessReset`, `onSimpleFinReset`, `onPluggyAiReset`, and `onEnableBankingReset` — all chain `secret-set` IPC calls without `try/catch` and are invoked via `void`, meaning any rejection is silently dropped with no user feedback and an ambiguous UI state.

## Steps to Reproduce / Context

Flagged during review of PR #7345 (Enable Banking integration). The Enable Banking handler (`onEnableBankingReset`) uses `await Promise.all([...])` so it can reject, while the GoCardless/SimpleFIN/PluggyAI handlers chain `void send(...).then(...)` — all four share the same missing-error-handling issue.

## Proposed Fix

Wrap each reset handler in a `try/catch`, only update setup state on success, and surface an error notification (e.g. via `addNotification`) on failure so the user knows the reset did not complete.

## References

- PR: https://github.com/actualbudget/actual/pull/7345
- Review comment: https://github.com/actualbudget/actual/pull/7345#discussion_r3159466250
- Requested by: @AurelDemiri

Guida per i contributori

Apri la guida per i contributori

Direzione di ricerca

Start in packages/desktop-client/src/components/modals/CreateAccountModal.tsx and inspect onGoCardlessReset, onSimpleFinReset, onPluggyAiReset, and onEnableBankingReset, including the review context from PR #7345. Done means failed secret-set calls produce an error notification, setup state changes only after success, and all four handlers handle rejections consistently.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Valutazione

Stack tecnologico
typescript
Ambito
desktop, frontend
Tipo di issue
Bug
Difficoltà
2/5
Tempo stimato
1-3 ore
Stato di attività
Tranquilla
Chiarezza
Specificata chiaramente
Idoneità per principianti
78/100

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.