public interface Artifact
An "artifact" is an entity in object storage, file storage, or block storage. Artifacts should be able to be stored in-memory as a single byte array. Implementations with an underlying type that only supports streaming should stream in the full contents and make the full contents available.
Implementations should remain read-only. Writing artifacts should be left to the
responsibility of a
ArtifactClient implementation. If an object of the artifact type
returned allows writing of any type, then it should not be made available.