Per docs/backend-roadmap.md formulate a plan for the following implementation activity:
3. Data platform foundation
Ensure schema and ingestion work expose their operations through domain ports, so persistence details stay confined to outbound adapters.
3.2. Catalogue and descriptor read models
- 3.2.1. Define catalogue and descriptor domain types (
RouteSummary, RouteCategory, Theme, RouteCollection, TrendingRouteHighlight, CommunityPick, Tag, Badge, SafetyToggle, and SafetyPreset) with localization maps and semantic icon identifiers.
Ensure that the new feature is validated with unit tests (using rstest) and behavioural tests (using rstest-bdd), covering happy and unhappy paths and any relevant edge cases. Use pg-embedded-setup-unpriv to enable local testing with Postgres.
Record any design decisions taken in the backend architecture document.
Please ensure that make check-fmt, make lint, and make test all succeed.
See docs/wildside-backend-architecture.md, docs/rust-testing-with-rstest-fixtures.md, docs/rust-doctest-dry-guide.md, docs/complexity-antipatterns-and-refactoring-strategies.md, docs/pg-embed-setup-unpriv-users-guide.md and docs/rstest-bdd-users-guide.md
On completion of this feature, mark the relevant entry in the roadmap as "done".
Per
docs/backend-roadmap.mdformulate a plan for the following implementation activity:3. Data platform foundation
Ensure schema and ingestion work expose their operations through domain ports, so persistence details stay confined to outbound adapters.
3.2. Catalogue and descriptor read models
RouteSummary,RouteCategory,Theme,RouteCollection,TrendingRouteHighlight,CommunityPick,Tag,Badge,SafetyToggle, andSafetyPreset) with localization maps and semantic icon identifiers.Ensure that the new feature is validated with unit tests (using
rstest) and behavioural tests (usingrstest-bdd), covering happy and unhappy paths and any relevant edge cases. Usepg-embedded-setup-unprivto enable local testing with Postgres.Record any design decisions taken in the backend architecture document.
Please ensure that
make check-fmt,make lint, andmake testall succeed.See
docs/wildside-backend-architecture.md,docs/rust-testing-with-rstest-fixtures.md,docs/rust-doctest-dry-guide.md,docs/complexity-antipatterns-and-refactoring-strategies.md,docs/pg-embed-setup-unpriv-users-guide.mdanddocs/rstest-bdd-users-guide.mdOn completion of this feature, mark the relevant entry in the roadmap as "done".