Topolo Support
Tenant-scoped support platform for Topolo internal operations and customer-organization ticket workflows, with support-owned workflow persistence kept outside Topolo Auth.
Documentation Map
What It Is
Tenant-scoped support platform for Topolo internal operations and customer-organization ticket workflows, with support-owned workflow persistence kept outside Topolo Auth.
Architecture
Owners: support-operations, platform-experience
Source repos: PlatformApplications/TopoloSupport
Dependencies: topolo-auth, topolo-nexus
Repo shape
- PlatformApplications/TopoloSupport/functions/
- PlatformApplications/TopoloSupport/index.html
- PlatformApplications/TopoloSupport/migrations/
- PlatformApplications/TopoloSupport/package-lock.json
- PlatformApplications/TopoloSupport/package.json
- PlatformApplications/TopoloSupport/packages/
- PlatformApplications/TopoloSupport/postcss.config.cjs
- PlatformApplications/TopoloSupport/scripts/
- PlatformApplications/TopoloSupport/src/
- PlatformApplications/TopoloSupport/tailwind.config.js
- PlatformApplications/TopoloSupport/test/
- PlatformApplications/TopoloSupport/topolo.cloudcontrol.json
- PlatformApplications/TopoloSupport/tsconfig.json
- PlatformApplications/TopoloSupport/tsconfig.node.json
- PlatformApplications/TopoloSupport/vite.config.ts
- PlatformApplications/TopoloSupport/wrangler.toml
Runtime Surfaces
Hosts:
https://support.topolo.app Config: PlatformApplications/TopoloSupport/wrangler.toml
Main: src/worker.ts
Routes: workers.dev or asset-only surface
API Reference
Coverage: curated
Source: PlatformApplications/TopoloSupport/functions/api/support/[[path]].ts
Source exists in repo: yes
Topolo Support is a standalone Worker application with a support-owned /api/support/* route family for workspace context, ticket, message, notification-dispatch, and signed inbound webhook workflow. The browser app now consumes the canonical shared `PlatformApplications/packages/topolo-ui-kit` and `PlatformApplications/packages/topolo-auth-client` surfaces for its public landing/login pages, authenticated shell, launcher, local command palette, loading/auth transitions, and browser auth contract. Its signed desk should follow the same fixed responsive `TopoloShell` sidebar/header composition used by the other first-party apps rather than keeping a Support-local static layout inside the shell container. It uses the same-origin /api/auth/* gateway only for Auth-owned reads such as session, user, organization, and launcher-catalog context, with that gateway preserving the upstream Auth /api/* path instead of stripping it; callback completion must also rehydrate local auth state from the shared browser auth events before the signed workspace route continues. Support workflow state is persisted in the support-owned D1 schema instead of Auth, including explicit Support-owned workspaces and inboxes for tenant queue routing, checked-in schema ownership in `PlatformApplications/TopoloSupport/scripts/support-schema.sql`, a first-party ticket activity ledger plus notification outbox for reply and assignment workflow, first-party retry-state fields and scheduled backlog processing for unattended notification recovery, a first-party `support_webhook_events` audit and idempotency table for inbound provider callbacks, the same Worker serving the built frontend asset bundle, workspace-scoped macros, and signed API tenant-safe queue access so Topolo operators can switch across workspaces while org operators and requester-grade users stay confined to their own support scope. Outbound email delivery is delegated to Topolo Nexus rather than being sent directly from the Support worker, using a dedicated Support trusted service token when no caller bearer token is available.
App API page: /reference/apps/topolo-support
This system currently relies on a curated or README-derived contract surface instead of a source-controlled OpenAPI spec.
Auth and Permissions
Depends on Topolo Auth: yes
Service IDs:
svc_topolo_support API key scopes
Look up Auth-owned user and organization context from the support workspace
Resource pattern: none
View support macros
Resource pattern: none
Create and manage support macros
Resource pattern: none
View support tickets, queues, and ticket conversations
Resource pattern: none
Create and update support tickets, assignments, and messages
Resource pattern: none
Service permissions
context:read, macros:read, macros:write, tickets:read, tickets:write
Data Ownership
Binding: SUPPORT_DB
Target: b5455665-b792-4a79-b96d-fe558178aa64
Environment: default
Source: PlatformApplications/TopoloSupport/wrangler.toml
Queues / Cron / Workflows
Queue bindings:
No queue bindings were detected.
Cron triggers
*/5 * * * *via PlatformApplications/TopoloSupport/wrangler.toml
Workflow signals
- cron */5 * * * *
Environment Variables and Bindings
Environment variables:
AUTH_API_URL TOPOLO_NEXUS_API_URL All wrangler bindings
-
SUPPORT_DB(d1) -> b5455665-b792-4a79-b96d-fe558178aa64
Deployments
Deployment environments: default only or not declared
Routes: workers.dev or Pages-only delivery
Observability enabled: yes
Wrangler surfaces
- PlatformApplications/TopoloSupport/wrangler.toml -> topolo-support (assets dist)
Build and deploy commands
-
build— PlatformApplications/TopoloSupport/package.json :: tsc && vite build --mode production -
build:worker— PlatformApplications/TopoloSupport/package.json :: wrangler deploy --dry-run --outdir .wrangler/deploy-build -
preview— PlatformApplications/TopoloSupport/package.json :: vite preview -
build— PlatformApplications/TopoloSupport/packages/topolo-auth-client/package.json :: tsup src/index.ts --format esm,cjs --dts -
build— PlatformApplications/TopoloSupport/packages/topolo-ui-kit/package.json :: tsc -p tsconfig.json -
update:build-meta— PlatformApplications/TopoloSupport/packages/topolo-ui-kit/package.json :: node ./scripts/update-build-meta.mjs -
rollout:deploy— PlatformApplications/TopoloSupport/packages/topolo-ui-kit/package.json :: node ./scripts/rollout-consumers.mjs deploy
Failure Modes
- Neither OpenAPI nor README-derived interface detail was found.
Debugging Runbooks
Start with these entrypoints:
- PlatformApplications/TopoloSupport/wrangler.toml
- PlatformApplications/TopoloSupport/functions/api/support/[[path]].ts
- PlatformApplications/TopoloSupport/package.json
- PlatformApplications/TopoloSupport/packages/topolo-auth-client/package.json
- PlatformApplications/TopoloSupport/packages/topolo-ui-kit/package.json
Change Log / Verification
Lifecycle: active
Last verified: 2026-04-15
Any code change to this system is expected to update the canonical docs in PlatformApplications/TopoloDocs and refresh the verification date.