Skip to main content

Action Catalog

The action-type catalog is the shared library of actions that appear in the BizOps Engine Step Palette. Every canvas step references a catalog action by type and name.

Why the catalog exists​

Without a catalogWith a catalog
Each job invents its own action shapeAll jobs share consistent action definitions
UI forms are hardcoded per stepForms are generated from catalog parameters and tables
Runtime plugins drift from the designerPlugin deployments bind to the same action names
Operators guess available capabilitiesTitles and descriptions document what each action does

Catalog contents​

Each catalog entry typically includes:

FieldPurpose
typeNameAction lane / family (Source, Logic, HTTP, and so on)
actionNameConcrete action identifier used by steps
titleHuman-readable name in the palette
descriptionShort guidance for operators
parameters / tablesSchema that drives the configuration panel
version metadataSupports versioned action definitions when present

Optional nested title and description values on imported JSON are persisted to Mongo and returned by the catalog API unless overridden by palette mapping files.

How the client uses the catalog​

  1. Loads GET /api/v1/workflow/action-type-catalog (or a local mock when configured).
  2. Groups actions in the Step Palette for search and drag-and-drop.
  3. When you place or select a step, binds actionType + action on the step.
  4. Renders parameter and table forms from the selected action definition.
  5. Saves the configured values into the job workflow document.

For local palette development, the client can use VITE_USE_MOCK_ACTION_CATALOG=true so the UI does not depend on a live catalog API.

How the service seeds the catalog​

On startup the workflow service can:

ModeBehavior
Seed when emptyInsert the in-code / classpath catalog if Mongo has no action-type rows
File syncImport a JSON array from BIZOPS_ACTION_CATALOG_JSON_PATH
Always syncReplace Mongo action-type documents on every startup when enabled
Dev reloadOptional POST .../action-type-catalog/reload when the reload endpoint flag is enabled
Metadata patchOptional POST .../action-type-catalog/metadata to update titles/descriptions in Mongo

Use always-sync and reload endpoints carefully — they are intended for local and controlled environments, not casual production toggles.

Plugin deployment registry​

Alongside the catalog, the service maintains a plugin-deployment registry. GET /api/v1/workflow/plugin-deployments joins deployment records with action-type bindings so Orchyron can provision the right plugin runtime for an action.

ConcernWhy it matters
Lazy K8s provisioningRuntime pods are created for actions that need them
Binding accuracyAction names in the designer must match deployable plugins
Environment differencesDifferent clusters can expose different plugin sets

Demo actions​

The mock observability walkthrough commonly uses:

ActionRole
kafkaStreamTriggerSource / ingest
aiDebugScenarioLogic / diagnosis
killProcessActionRemediation dry-run

These are safe for UI demos. Confirm real plugin availability before expecting production side effects.

Operator tips​

  • Prefer catalog titles over raw action IDs when training new users.
  • If a step form looks empty, verify the catalog loaded and the action still exists after a sync.
  • After importing a large catalog export, spot-check a few actions for missing descriptions.
  • Keep designer catalog and runtime plugin registry in the same release train whenever possible.