# fix\(accounts\): preserve healthy options after malformed account records \(\#219\) · lucenx/codexbar-plasma

[View on GitCafe](https://git.cafe/lucenx/codexbar-plasma/commit/83762de48a70bead3a93d89fd53dfd283d705322)

Repository: [lucenx/codexbar-plasma](https://git.cafe/lucenx/codexbar-plasma)

Visibility: public

Requested revision: 83762de48a70bead3a93d89fd53dfd283d705322

Requested commit: 83762de48a70bead3a93d89fd53dfd283d705322

Commit: 83762de48a70bead3a93d89fd53dfd283d705322

Tree: f2b4a496a5119c96409099aa4e024e6c0781904a

Author: Simone

Committer: GitHub

## Message

```
fix(accounts): preserve healthy options after malformed account records (#219)

An accepted `usage --all-accounts` reply was parsed under a single outer try in
parseProviderAccountsOutput. A record that threw during normalizeProvider
aborted the whole loop, so healthy accounts before and after it were never
published and the picker went empty or kept a stale roster.

Wrap the per-record copy and normalization instead, so a failing record is
skipped with a bounded scoped message while its healthy siblings survive. When
no usable option remains, the existing empty-result path still preserves the
previous roster and reports the error.

Request acceptance, source completion, provider scoping, deduplication,
missing-token-account semantics and the outer JSON failure handling are
unchanged.

Documentation impact: CHANGELOG Unreleased/Fixed entry; new user-facing string
added to the gettext template and translated in de, es, fr, it and pt_BR. No
usage-guide or TODO change applies.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
```

## Parents

- [77aecea6eea131be3b9f97f42b4592d734ff5828](https://git.cafe/lucenx/codexbar-plasma/commit/77aecea6eea131be3b9f97f42b4592d734ff5828?format=markdown)

[Source at this commit](https://git.cafe/lucenx/codexbar-plasma/tree/83762de48a70bead3a93d89fd53dfd283d705322?format=markdown)
