refactor(desktop): give the Firefox read path a tagged error

The Firefox branch failed with an anonymous `{ reason, cause }` literal, and
typing the shared `read` value as that shape erased `ChromiumCookieReadError`'s
tag from the error channel — neither branch could then be handled with
`Effect.catchTags`.

`FirefoxCookieReadError` mirrors its Chromium counterpart, so the union stays
structurally identifiable.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
0e0133b673Julius Marminge committed on 9/4/2026, 6:20:45 AMparent3656866
2 files changedLine totals unavailable