Skip to content

feat(build-plan): customer_portal goal syncs reservations to Seam on create/change - #12

Merged
itelo merged 1 commit into
mainfrom
itelo/sync-reservations-goal
Aug 12, 2026
Merged

feat(build-plan): customer_portal goal syncs reservations to Seam on create/change#12
itelo merged 1 commit into
mainfrom
itelo/sync-reservations-goal

Conversation

@itelo

@itelo itelo commented Aug 12, 2026

Copy link
Copy Markdown
Contributor

Summary

End-to-end testing of a customer-portal integration surfaced a gap: the generated code pushed a reservation to Seam only lazily — inside the reservation's deep-link page, i.e. when someone opened it. Nothing pushed on create/change, so a brand-new booking never reached the portal until its access page was visited.

Root cause is the goal: it said "push the reservation, then create a deep-linked portal", which the agent implemented as a per-page-visit push. This adds an explicit sync instruction to composeGoal's customer_portal branch:

Keep Seam in sync with the app: call customers.pushData from the booking create and update handlers (and customers.deleteData on cancellation) so new and changed reservations reach the portal — do not push only when a reservation page is opened.

Behavior preserved

  • Still names the framework (…'s conventions).
  • Still emits no build-block hint lines for customer_portal (the existing test asserts this).

Testing

  • Render check: goal contains customers.pushData, customers.deleteData, Customer Portal, <framework>'s conventions; 0 hint lines
  • build-plan.test.ts — all pass
  • prettier clean (the only tsc error is @seamapi/cli unresolvable in my local install; CI resolves it)
  • Re-run the wizard and confirm the generated booking create/update handlers call pushData

Security & Compliance

  • No security impact

…create/change

Testing showed the generated integration only pushed a reservation lazily (when
its access page was opened), so new bookings never reached the portal. The goal
asked to "push the reservation, then deep-link" — which the agent read as a
per-page-visit push.

Add an explicit sync instruction: call customers.pushData from the booking create
and update handlers (and customers.deleteData on cancellation) so new and changed
reservations reach the portal, not only when a reservation page is opened.

Keeps existing behavior: still names the framework, still no build-block hint
lines for customer_portal. All build-plan tests pass.
@itelo
itelo requested a review from razor-x as a code owner August 12, 2026 19:58
@itelo
itelo merged commit e8bc305 into main Aug 12, 2026
11 checks passed
@itelo
itelo deleted the itelo/sync-reservations-goal branch August 12, 2026 19:59
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