AI service desk demoLive operations workspace
Demo data
Demo mode0 credsSeeded state, no paid cloud services
Async jobs7pg-boss job contracts mapped
Contract surfaces3Events, webhooks, and AI runs
Deploy checks4Unit, typecheck, build, e2e

Demo mode vs local/prod mode

What is simulated on Netlify and what changes when infrastructure is enabled.

BoundaryHosted demoLocal/prod path
Data storeSeeded TypeScript state + cookie replayPostgres, pgvector, Drizzle migrations, backups
JobsStatic contract simulatorpg-boss workers with retry, DLQ, and idempotency
EventsKafka/Redpanda-shaped envelopes on screenRedpanda or MSK topics with schema compatibility checks
SearchDeterministic in-memory selectorsOpenSearch lexical/vector hybrid retrieval
GraphRelationship panel in knowledge routeNeo4j or Postgres graph projection for investigations
ObservabilityDemo trace view in WatchtowerOpenTelemetry exporter path to managed tracing

Serverless AWS path

  1. Edge entryNetlify or CloudFront routes React Router requests and keeps intake fast.
  2. Async queueSQS or EventBridge receives ticket lifecycle and AI action events.
  3. WorkersLambda runs triage, document extraction, retrieval, and webhook delivery.
  4. PersistenceRDS Postgres keeps tickets, ai_runs, audit events, and pgvector knowledge chunks.
  5. SearchOpenSearch indexes playbooks, tickets, uploaded documents, and AI run metadata.

CI/CD and test gates

  1. Pull requestTypeScript, unit tests, route smoke tests, schema diff check
  2. Preview deploySeeded demo data, no paid credentials, deterministic session replay
  3. Release gatePlaywright smoke suite, AI fixture regression pack, accessibility snapshot
  4. Production deployMigrations first, workers after schema, canary webhook endpoints

IaC and container boundary

  1. Terraform ownsVPC, RDS, queues/topics, OpenSearch, secrets, IAM, alarms
  2. App deploy ownsReact Router bundle, worker image, env-specific feature flags
  3. Kubernetes optionRun web, worker, and replay services as separate deployments with HPA
  4. SecretsWebhook HMAC keys rotate by version and are never exposed in payloads

Data contracts make the demo reviewable.

event

ticket.lifecycle.v2

Service desk platform · version 2.1.0 · linked ticket tkt-wifi

ticketId: string requiredcorrelationId: string requiredpriority: enum requiredriskFlags: string[] optional
event

ai.action.v1

AI Watchtower · version 1.4.0 · linked ticket tkt-cctv

aiRunId: string requiredpromptVersion: string requiredconfidence: number requiredapprovalStatus: enum required
webhook

webhook.delivery.v1

Integrations · version 1.0.0 · linked ticket tkt-invoice

eventId: string requiredtimestamp: iso8601 requiredsignature: hmac-sha256 requireddeliveryAttempt: number required
React Router appKept as an explicit boundary so a reviewer can map demo behavior to production infrastructure.
Postgres + pgvectorKept as an explicit boundary so a reviewer can map demo behavior to production infrastructure.
Queue workersKept as an explicit boundary so a reviewer can map demo behavior to production infrastructure.
Events/webhooksKept as an explicit boundary so a reviewer can map demo behavior to production infrastructure.