Builds canonical snapshot artifacts from configured sources.
@type artifact() :: %{ snapshot: map(), snapshot_id: String.t(), metadata: map(), output_dir: String.t(), snapshot_path: String.t(), metadata_path: String.t() }
@spec build(keyword()) :: {:ok, artifact()} | {:error, term()}
@spec up_to_date?( artifact(), keyword() ) :: boolean()
@spec write!( artifact(), keyword() ) :: artifact()