Domain Glossary
Canonical definitions of the terms used across the platform. These are the core (domain-agnostic) terms; a plugin adds its own vocabulary for its domain. Where a concept has its own article, this entry is the short, authoritative definition.
Platform & extension
Circus platform — a domain-agnostic orchestration platform for configuring, executing, monitoring, and costing multi-step AI workflows.
Plugin — a domain-specific extension that gives the core a concrete entity type and its behaviour (tables, statuses, routes, UI, result handler). Plugins are code in the repository, not runtime-installable packages.
Entity — a registered plugin type; one row in the core entity table (name, slug, entity-object table, enabled flag), auto-populated from plugin manifests at startup.
Entity object — the plugin-owned business record the plugin manages (e.g. a Video, a Thing), in a plugin-owned table the core never reads or writes.
Plugin manifest — the application-level declaration of a plugin's identity, routes, menu, and extension points, read by the core at startup.
Workspaces & status
Workspace — the core operational unit: an operational branch of an entity, holding status and timestamps only. Core workspaces are never deleted.
Entity-workspace join table — the plugin-owned {entity_slug}_workspace table linking entity objects to core workspaces, carrying is_deleted / is_archived.
Active workspace / final workspace — plugin-level pointers (the currently selected workspace; the designated final one). Not core columns.
Workspace status — the canonical operational status of a workspace, scoped to an entity type via workspace_status.entity_id and registered by the plugin. Gates which workflows can run.
Eligible input statuses / resulting status — the statuses a workflow may launch from, and the single status it sets on success. All must belong to the workflow's entity type.
Configuration
System context — global, operator-managed context entries (brand, tone, audience) injected into workflow runs.
System-wide configuration — global runtime parameters (uppercase-snake-case key/value), overridable per workflow.
Model — a registered AI model (provider, base URL, per-token pricing).
Agent — a reusable, identity-only role. Runtime bindings (model, prompt, temperature, max tokens) live in workflow-config assignments, not on the agent.
Prompt family / prompt / prompt version — the three-layer prompt model; a prompt has one active version via prompt.active_prompt_version_id.
Workflow configuration set — a named bundle of agent→model→prompt assignments a workflow references.
Service — a registered non-LLM external API (slug, URL template, billing unit, pricing).
Service config set — a named bundle of service assignments (method, headers, variables, retries).
Cascade (disable cascade) — the propagation by which disabling any dependency invalidates everything downstream, up to the workflow.
Execution
Workflow — an executable pipeline entry, scoped to an entity type and an engine, with guardrails and status gating.
Workflow execution — a single run of a workflow, scoped to a workspace; carries status, timing, cost, and four immutable snapshots.
Configuration snapshot — one of four immutable copies (workflow_config, service_config, system, workspace) capturing the runtime context at launch.
Execution log / timeline node — the per-step audit record; each row carries its own cost_usd. Node types: agent, service, internal.
Worker type — the classification of a logged step: agent, service, or internal.
Workflow engine — a registered external engine instance (n8n or other) the platform dispatches to; carries engine_type, webhook base URLs, and an API base URL.
webhook_identifier — an opaque per-workflow string the engine package combines with the engine base URL to build the dispatch URL.
external_execution_id — the engine's own execution ID; the key that keeps platform and engine in sync, required on machine callbacks.
Reconciler — the background service that reconciles stale running executions with the engine's real state.
Security
User JWT — the operator session token, signed with user_jwt_secret; JTI-revocable.
API Key — the machine credential (a JWT signed with workflow_jwt_secret), JTI-revocable, 30-day expiry; shown in full only once.
JTI — the JWT ID used for denylist-based revocation of both token classes.
Naming
Slug — a machine-readable, lowercase-underscore identifier, immutable after creation, auto-generated from a name.
Entity slug — a plugin/entity type's unique identifier, used as a prefix in plugin table names and migration paths.