An artifact is the packaged output of a build, a container image, a compiled binary, a JAR file, a Helm chart, a signed APK, or any other distributable unit that the build system produces. In supply chain security, the critical question about an artifact is not only what it contains but whether it can be traced back to a specific, trusted build event. An artifact without that traceability is opaque. There is no way to determine, after the fact, where it came from, what source code produced it, or whether it has been modified since it was built.
Artifacts should be immutable once built. An artifact identified by version 2.3.1 should always refer to the exact same bytes. Mutable artifact identifiers, where a tag like latest or v2 can point to different content over time, undermine every downstream integrity check. Content-addressable storage, where an artifact is identified by the cryptographic hash of its content (a digest), provides immutability by construction, if the content changes, the hash changes, and any reference using the old hash no longer matches.
Versioning strategy communicates intent and enables traceability. Using the git commit SHA as part of the artifact version (myapp:a3f2c9b) allows any running instance to be traced back to the exact source code commit that produced it. Semantic versions communicate stability contracts for libraries and APIs. Build numbers are simple but lose the connection to source code without additional metadata. The right choice depends on the context, but all choices should support the ability to answer. Given this running artifact, what source code produced it and when?
The artifact lifecycle has four key integrity moments. Creation (the build must be trusted and the inputs controlled), storage (the registry or artifact store must protect the artifact from modification), distribution (the transfer from storage to deployment must be integrity-verified), and consumption (the deployment system must verify the artifact before using it). A supply chain attack can target any of these moments, which is why integrity controls at a single point are insufficient.