Expand description
Artifact production and consumption from a running workflow.
ArtifactSink is the seam between the engine and wherever artifact bytes
actually live. The engine never talks to a blob store directly, because the
two execution topologies reach storage differently:
- in-process (API server, tests):
DirectArtifactSinkwrites to the blob store and records the metadata itself; - remote worker: the worker’s sink uploads over the internal HTTP API, which keeps storage credentials on the API side only.
Ordering is always “bytes first, metadata second”. The metadata row is the source of truth, so a crash in between leaves an unreferenced blob rather than a record pointing at nothing.
Structs§
- Artifact
Upload - Everything needed to record an artifact, minus the bytes.
- Direct
Artifact Sink ArtifactSinkbacked by a blob store and a run store in the same process.
Traits§
- Artifact
Sink - Where a running workflow reads and writes artifact bytes.
Type Aliases§
- Artifact
Future - Boxed future returned by
ArtifactSinkmethods – keeps the trait object safe.