Define the canonical registry record used to locate, identify, and trace
physical artifacts produced by Victus.
ArtifactManifest separates domain objects from storage implementation. It
provides artifact identity, lineage, ownership, and storage location without
embedding artifact payloads.
artifact_idartifact_id is globally unique inside Victus.artifact_id is immutable after creation.artifact_id.ArtifactManifest is owned by victus-processing.
{
"artifact_id": "string",
"artifact_type": "string",
"artifact_version": "string",
"paper_id": "string|null",
"run_id": "string",
"storage_uri": "string",
"storage_backend": "string",
"content_format": "string",
"checksum": "string|null",
"size_bytes": 0,
"created_at": "datetime",
"metadata": {}
}
| Field | Type | Description |
|---|---|---|
artifact_id |
String | Stable artifact identifier. |
artifact_type |
String | Domain or operational object represented by the artifact. |
artifact_version |
String | Version of the artifact schema or contract. |
paper_id |
String / Null | Owning paper when applicable. |
run_id |
String | PipelineRun responsible for creating the artifact. |
storage_uri |
String | Physical artifact location. |
storage_backend |
String | Storage technology, such as local_fs, s3, seaweedfs, postgres, or parquet. |
content_format |
String | Serialization format, such as pdf, md, json, jsonl, or parquet. |
checksum |
String / Null | Optional content hash. |
size_bytes |
Integer | Physical artifact size in bytes. |
created_at |
Datetime | Artifact manifest creation timestamp. |
metadata |
Object | Small implementation metadata. |
ArtifactManifest must:
ArtifactManifest must not store:
artifact_id, artifact_type, artifact_version, run_id,storage_uri, storage_backend, content_format, size_bytes, andcreated_at are required.artifact_id must be stable after creation.paper_id may be null for global artifacts.storage_uri must not be empty.size_bytes must be non-negative.metadata must be an object.Created after a persisted artifact is successfully produced or registered.
Updated only for manifest metadata that does not change artifact identity.
Deleted artifacts should preserve manifest history when auditability is
required.
Deprecated when the artifact remains traceable but should no longer be used.
PipelineRunPipelineEventNone.
ArtifactManifest.run_id -> PipelineRun.run_idArtifactManifest.paper_id -> Paper.paper_idPipelineEvent.artifact_id -> ArtifactManifest.artifact_idInitial JSONL target:
data/registry/artifact_manifest.jsonl
Future database target:
artifact_manifests
Recommended indexes:
artifact_idartifact_typepaper_idrun_idcreated_atDocumentation clarification or validation wording refinement.
Backward-compatible additions such as nullable fields, optional metadata, or
additional artifact classifications.
Breaking schema changes, identity changes, field removals, or semantic meaning
changes.