Preserve explicit model and provider architecture (#30)

This commit is contained in:
Stephan D committed 2026-09-12 12:09:26 +02:00
1 parent 54f50ad6b7
commit 8b0662e340
10 files changed
+104 -7

No files matched your search

+23
View File
@@ -256,3 +256,26 @@ Validation: all 115 frontend tests, app analysis, app Dart formatting, web build
and diff checks pass. Updated existing copy expectations; telemetry tests still
verify simulated events never count as real business success. No new click events
were needed for this presentation-only cleanup.
## Data model and provider boundaries — task #30
- `architecture-30`, based on workspace PR #29. Root and frontend agent rules,
plus README, now explicitly preserve DTO → mapper → service → data model →
provider → UI across app features, shared packages, stubs and future clients.
Models cannot be replaced by providers or reused as transport DTOs merely
because their fields currently match.
- Checked application service access: widgets compose providers with service
dependencies; they do not parse DTOs or invoke backend operations directly.
KYC and wallet transaction services already map transport data to models.
Auth success responses now pass through explicit response DTOs and mappers;
wallet profile conversion now accepts a ProfileDTO instead of a raw string.
- Existing models, provider state, asynchronous/error behavior and public service
contracts are preserved. DTOs/mappers remain service implementation details.
No UI, telemetry semantics or backend integration changed.
- Frontend review and validation: formatting of all 6 changed Dart files passed;
analysis of sxchnge_auth and sxchnge_wallet passed; all 115 frontend tests
passed; diff check passed. Existing service, provider and integrated tests
exercise the mapping paths. No additional behavioral test was needed for these
direct field projections. No security scan requested.
- Stack order: KYC #21 → limits #23 → workspace #29 → this contribution;
retarget each dependent PR to main after its base is merged.