Current client workflows, contract boundaries, configuration gates, and readiness coverage.
Alfred's client OpenAPI 3.1 contract contains 26 operations across 23 paths, including exactly 5 workflow triggers. The separate operator contract contains 9 operations across 8 paths. These counts come from the current generated OpenAPI builders.
For exact parameters, bodies, and responses, use the
generated client API reference. Operators can download
the machine-readable /openapi.operator.json
contract without adding its operations to client SDK pages.
All client workflow triggers have a Workflow SDK implementation and persist durable runtime state in Postgres World.
| Workflow | Permission | Concurrency | Approval | Dry run | Recovery |
|---|---|---|---|---|---|
onboard-domain | workflows:onboard-domain | Global aws-infrastructure lane; Maps recovery uses google-maps-api-keys | No API approval step | Yes | Retry; eligible finalization, Maps-only recovery, and rollback |
add-certificate | workflows:add-certificate | Global aws-infrastructure lane | No API approval step | Yes | Retry; eligible finalization recovery and rollback |
add-domain | workflows:add-domain | Global aws-infrastructure lane | No | No | Retry failed or canceled execution |
add-subdomain | workflows:add-subdomain | Per execution | Required for a replacement plan | No | Retry failed or canceled execution |
update-lambda-version | workflows:update-lambda-version | Per target and environment | Slack confirms a prepared review | Yes | Retry unfinished work; restore from durable receipts |
A workflow permission grants submission and every supported interaction with
that workflow's executions. Workflow submission is asynchronous. A new
accepted request returns 202; an idempotent replay can return 200 with
Idempotent-Replay: true.
| Contract | Included surfaces |
|---|---|
/openapi.json | Five workflow triggers, workflow-filtered executions and events, controls, streams, and outbound webhook subscriptions. |
/openapi.operator.json | Health, readiness, metrics, audit, event administration, API-key lifecycle, and Workflow Admin proxy metadata. |
Slack, GitHub, and Zendesk ingress hooks remain callable adapter endpoints but are excluded from both generated contracts. The Fumadocs endpoint pages are generated only from the client contract.
| Capability | Gate | Behavior when unavailable |
|---|---|---|
Slack /alfred and /v1/hooks/slack | SLACK_BOT_TOKEN, SLACK_SIGNING_SECRET, and ALFRED_SLACK_WORKFLOW_CHANNEL_ID | Slack route and bot are not registered. |
| Workflow Admin proxy | Internal Workflow Admin origin | Authenticated proxy reports that Workflow Admin is unavailable. |
| Audit, API-key, event-version, and subscription stores | Corresponding injected store | Route returns a specific 503 ..._unavailable response. Production wires Postgres stores. |
| Execution controls and workflow recovery | Workflow SDK controls, starter, and command store | Unsupported configuration returns a specific configuration error. Production wires these dependencies. |
| Check | What it proves | What it does not prove |
|---|---|---|
GET /healthz | The Hono process can answer a request. | Dependency, workflow, or provider readiness. |
GET /readyz | Postgres responds, Alfred migrations are current, and Redis responds in production. | AWS or vendor credentials, provider health, Slack configuration, or Workflow Admin availability. |
| API and docs builds | Source compiles and generated contracts/pages can be produced. | A deployed environment can reach dependencies or mutate providers. |
Health, readiness, and metrics are operator endpoints, so they appear in
/openapi.operator.json. A production readiness decision needs /readyz and
bounded provider validation for the selected workflow. See
Deployment And Operations.