Every deployment has an event log — an append-only stream of structured records the orchestrator writes as state changes. The UI renders it as the phase ladder + recent activity on the deployment detail page; the SSE endpoint streams new events live.Documentation Index
Fetch the complete documentation index at: https://docs.slipway.sh/llms.txt
Use this file to discover all available pages before exploring further.
What events look like
Each event carries:kind— the discriminator (see below).message— short human-readable summary.data— optional structured payload. For most kinds this is empty; for resolution events, it contains the list of resolved references.created_at— server timestamp.
Event kinds
| Kind | When emitted | Payload |
|---|---|---|
queued | Deployment row created. | — |
secrets_resolved | Spec parsed; secrets looked up from repo + org stores. | { secrets: [{name, scope, source}, ...] }. Never includes values. |
vars_resolved | Same, for variables. | { vars: [{name, scope, source, value}, ...] }. Does include values. |
registries_resolved | Private-registry credentials assembled into a pull-secret. | { registries: [...] } |
build_start | A service’s build Job was submitted (or cache lookup started). | — |
build_end | Build succeeded — either freshly built or reused from cache. | — |
deploy_start | Image refs locked; applying tenant workloads. | — |
cutover | A public service’s Ingress is live; URL is reachable. | — |
healthy | Every public service is Ready and addressable. | — |
failed | Terminal failure. Reason is on the deployment row’s failure_reason. | — |
cancelled | Deploy was cancelled — by you or by supersession. | — |
gc | Ephemeral TTL expired; tenant namespace deleted. | — |
Streaming
The deployment detail page subscribes to a server-sent-events stream of new events. When the deployment reaches a terminal state (healthy, failed, cancelled, superseded, or gc), the stream closes.
SSE multi-line
data: payloads are split with one data: per line. If you build your own SSE client against slipway’s stream, don’t assume a single newline-containing data: value — the standard parser will silently drop everything after the first newline.