How the nightly Lambda evaluates every customer and produces a prioritised work queue — trigger conditions, priority scoring, estimated value, stale cleanup, and idempotency.
Plain-English guide to how Osbert identifies who venues should be reaching out to. No code — written for sales conversations with non-technical stakeholders.
How Osbert uses a.generation() AI routes to turn an Opportunity into
a personalised outreach draft ready for manager approval.
Feedback record lifecycle, sentiment classification, escalation to needs_care,
and how grievances surface in the opportunity engine.
How the Square connector pulls customers and order history into DynamoDB —
visitCount, totalSpend, lastVisitDate
and the per-venue access token pattern.
Reservation and guest-profile sync from SevenRooms via SSM-stored
client-id / client-secret credentials.
Feasibility notes on pulling Google Business Profile reviews via 3-legged OAuth to auto-create grievance records.
Amplify Gen 2 schema overview — all models, partition keys, secondary indexes,
and the venueId-first access pattern that scopes every query.
Cognito user pools, OWNER / MANAGER / STAFF group authorisation,
and how venueId acts as the tenant boundary.
Angular 21 signals, PrimeNG component library, multi-file component conventions, and the Osbert design token system.