Skip to content

fix: align tourism info sheet with api contract#424

Merged
ClarusIubar merged 1 commit into
mainfrom
tourism-contract-field-consumption
Jun 13, 2026
Merged

fix: align tourism info sheet with api contract#424
ClarusIubar merged 1 commit into
mainfrom
tourism-contract-field-consumption

Conversation

@ClarusIubar

Copy link
Copy Markdown
Contributor

Summary

  • align the Web Front KTO tourism consumer DTO with the actual /api/tourism/places contract fields
  • render name, ktoContentTypeLabel, roadAddress, and sourcePageUrl instead of relying on legacy title/homepageUrl assumptions
  • restore mojibake in TourismInfoSheet and KTO tourism E2E/unit fixtures

Architecture Boundary Gate

  • Responsibility map: tourismTypes owns the Web Front consumer DTO, TourismInfoSheet owns read-only presentation, E2E/unit tests own contract regression coverage.
  • Dependency direction: frontend consumes Worker /api/tourism/places; it still does not call KTO/OpenAPI, Supabase, or admin import APIs directly.
  • Test seam: component boundary verifies rendered KTO contract fields; E2E verifies toggle fetch behavior remains opt-in.
  • Scope map: frontend contract consumption only. API path, response shape, DB schema, OAuth, and curated place stamp/review behavior unchanged.
  • Architecture risk: frontend could accidentally treat KTO info places as curated places. This keeps KTO pins information-only and only uses curatedPlace for existing curated linkage logic.

Validation

  • npm.cmd run check:numeric-literals
  • npm.cmd run lint
  • npm.cmd run typecheck
  • npm.cmd run test:unit -- tourism-info-sheet tourism-client
  • npm.cmd run test:unit
  • npm.cmd run test:integration
  • npm.cmd run test:regression
  • npm.cmd run test:e2e
  • npm.cmd run build
  • git diff --check
  • UTF-8 strict read / commit hook

Refs #420
Refs #421

@ClarusIubar ClarusIubar merged commit ad668fe into main Jun 13, 2026
6 checks passed
@ClarusIubar ClarusIubar deleted the tourism-contract-field-consumption branch June 13, 2026 06:04
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