Skip to content

feat(build-plan): customer_portal goal asks for connections + reservation deep-link - #8

Merged
itelo merged 1 commit into
mainfrom
itelo/enrich-customer-portal-goal
Aug 11, 2026
Merged

feat(build-plan): customer_portal goal asks for connections + reservation deep-link#8
itelo merged 1 commit into
mainfrom
itelo/enrich-customer-portal-goal

Conversation

@itelo

@itelo itelo commented Aug 11, 2026

Copy link
Copy Markdown
Contributor

Summary

When testing the wizard against a Next.js PMS in Customer Portal mode, the integration agent produced only a generic embedded portal — never the connections/mapping and reservation-deep-link flows that the next-app-router-customer-portal reference app (seam-ai#99/#100) now demonstrates.

Root cause: composeGoal()'s customer_portal branch is a fixed generic prompt ("create a Customer Portal, embed it, regenerate per visit"). It never asks for those capabilities, and customer_portal mode ignores the build-block selections. The richer example is only a structural reference — the goal defines what gets built, so the two flows could never appear.

This enriches the customer_portal goal to request both explicitly:

  1. Connections + mapping — an embedded portal (is_embedded: true) with connect + organize + manage so the customer connects device accounts and maps devices onto their spaces.
  2. Open a reservation directly — push the reservation (customers.pushData) and create a portal deep-linked to it (landing_page / deep_link) that a reservation page links to.

It also nudges the agent to model the structure on the Customer Portal example app.

Behavior preserved

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

Testing

  • tsc typecheck clean
  • build-plan.test.ts — all 16 pass (incl. "describes the Customer Portal", "ignores selections", "names the framework for customer_portal too")
  • prettier + eslint clean on the changed file
  • Manual: re-run wizard against a Next.js PMS and confirm the two routes are generated

Security & Compliance

  • No security impact

…tion deep-link

The customer_portal goal was a generic "create a portal and embed it", so the
integration agent never built the two flows the reference example demonstrates.
Enrich it to request both explicitly: (1) an embedded connections-and-mapping
page (connect + organize + manage), and (2) opening the portal directly to a
reservation via pushData + landing_page/deep_link. Points the agent at the
Customer Portal example app for structure.

Keeps existing behavior: still names the framework, still ignores build-block
selections (customer_portal has no hint lines). All build-plan tests pass.
@itelo
itelo requested a review from razor-x as a code owner August 11, 2026 16:58
@itelo
itelo merged commit c8c58a0 into main Aug 11, 2026
11 checks passed
@itelo
itelo deleted the itelo/enrich-customer-portal-goal branch August 11, 2026 17:00
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