feat(integrations): M5 — transport/lodging/activity traits + affiliate links #12

Merged
charles merged 1 commit from feat/m5-integrations into main 2026-06-17 14:09:37 +00:00
Owner

Roadmap M5: the priced-pillar integration surface (foundation for M6's trip builder).

Changes

  • search: GeoPoint + non-personal queries (LegQuery/StayQuery/ActivityQuery — coords/dates/counts only, FR-PRV-09), Offer (Priced + BookingLink + relevance hint), TransportSrc/LodgingSrc/ActivitySrc traits, StaticSources fake.
  • affiliate: affiliate_link() builds a trip::BookingLink with the partner tag appended (v1 monetisation, FR-INT-13/FR-PRES-18); handles existing querystrings.

Verification

  • just qa green. Tests: fakes return priced estimate offers; affiliate id appended correctly.

Real vendors (Travelpayouts/GetYourGuide) plug in behind the traits later; M6 maps Offer→ trip Proposal. Traces: FR-INT-12/13, FR-PRV-09, FR-OV-05 · tech-spec 05.

Roadmap **M5**: the priced-pillar integration surface (foundation for M6's trip builder). ## Changes - **search**: `GeoPoint` + non-personal queries (`LegQuery`/`StayQuery`/`ActivityQuery` — coords/dates/counts only, **FR-PRV-09**), `Offer` (Priced + BookingLink + relevance hint), `TransportSrc`/`LodgingSrc`/`ActivitySrc` traits, `StaticSources` fake. - **affiliate**: `affiliate_link()` builds a `trip::BookingLink` with the partner tag appended (v1 monetisation, **FR-INT-13/FR-PRES-18**); handles existing querystrings. ## Verification - `just qa` green. Tests: fakes return priced estimate offers; affiliate id appended correctly. Real vendors (Travelpayouts/GetYourGuide) plug in behind the traits later; M6 maps `Offer`→ trip `Proposal`. Traces: FR-INT-12/13, FR-PRV-09, FR-OV-05 · tech-spec 05.
feat(integrations): M5 — transport/lodging/activity traits + affiliate links
All checks were successful
qa / qa-1 (push) Successful in 1m15s
qa / qa-1 (pull_request) Successful in 1m15s
qa / qa (push) Successful in 0s
qa / qa (pull_request) Successful in 0s
4b47f17468
- search: GeoPoint + non-personal queries (LegQuery/StayQuery/ActivityQuery —
  coords/dates/counts only, FR-PRV-09), Offer result (Priced + BookingLink +
  relevance hint), TransportSrc/LodgingSrc/ActivitySrc traits, StaticSources fake.
- affiliate: affiliate_link() builds a trip::BookingLink with the partner's tag
  appended (v1 monetisation, FR-INT-13/FR-PRES-18); handles existing querystrings.
- integrations now deps trip (Money/Priced/BookingLink).

Tests: fakes return priced estimate offers; affiliate id appended correctly.
just qa green. Real vendors plug in behind the traits; M6 maps Offers → trip
Proposals.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Sign in to join this conversation.
No reviewers
No labels
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
charles/geneatrip!12
No description provided.