Skip to content

Promote: staging -> develop#700

Merged
TaprootFreak merged 2 commits into
developfrom
staging
Jun 8, 2026
Merged

Promote: staging -> develop#700
TaprootFreak merged 2 commits into
developfrom
staging

Conversation

@github-actions

@github-actions github-actions Bot commented Jun 5, 2026

Copy link
Copy Markdown
Contributor

Automatic Staging PR

This PR was automatically created after changes were pushed to staging.

Commits: 1 new commit(s)

Checklist

  • Review all changes
  • Verify CI passes
  • Approve and merge to promote into develop

TaprootFreak and others added 2 commits June 5, 2026 12:27
fix(android): track Fastlane Gemfile.lock to fix android-deploy
…ge (#699)

## Problem

When buying/selling RealUnit while the external price provider
(Aktionariat) is down, the app showed a generic "An error occurred …
contact support" message. That wrongly implies the problem is with
RealUnit or the app, when it is the external price provider.

## Change

Pairs with API PR DFXswiss/api#3825, which now returns `503` / `code:
PRICE_SOURCE_UNAVAILABLE` for the buy/sell quote during a price-source
outage.

- New `PaymentInfoError.priceSourceUnavailable`.
- Buy (`buy_payment_info_cubit.dart`) and sell
(`sell_payment_info_cubit.dart`): add an `on ApiException` clause —
matched on `statusCode == 503` **or** `code ==
'PRICE_SOURCE_UNAVAILABLE'` — kept **below** the KYC/Registration
clauses (those are `ApiException` subclasses). Matching on both makes it
defensive even before the API ships.
- Render an explicit message attributing the problem to Aktionariat: buy
shows it inline (`payment_information.dart`), sell shows it as a
snackbar (`sell_button.dart`).
- New i18n keys `priceProviderUnavailableTitle` /
`priceProviderUnavailableDescription` (de + en).

Dashboard intentionally unchanged (still `--.--`) — scope is buy/sell
only.

## Copy (de)

> **Problem beim Kursanbieter (Aktionariat)**
> Der externe Kursanbieter Aktionariat liefert aktuell keine Kurse. Das
Problem liegt bei Aktionariat – nicht bei RealUnit oder der App. Sobald
Aktionariat wieder Kurse liefert, funktioniert alles automatisch. Bitte
später erneut versuchen.

## Tests

- Buy + sell payment-info cubit tests: `503` and `code` →
`priceSourceUnavailable`; other `ApiException` → `unknown`.
- New buy golden `buy_price_source_unavailable` (regenerated via
`golden-regenerate.yaml`).
- `flutter analyze` clean; buy/sell cubit suites green.

## Test plan

- [ ] Buy/sell while the price source is down (current real state) →
explicit Aktionariat message, not the generic one.
- [ ] Normal case (price available) → unchanged.

---------

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
@TaprootFreak TaprootFreak merged commit fd8043a into develop Jun 8, 2026
10 of 11 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant