Files
git.stella-ops.org/docs/schemas/artifacts.md
StellaOps Bot 9f6e6f7fb3
Some checks failed
Docs CI / lint-and-preview (push) Has been cancelled
Signals CI & Image / signals-ci (push) Has been cancelled
Policy Lint & Smoke / policy-lint (push) Has been cancelled
Policy Simulation / policy-simulate (push) Has been cancelled
SDK Publish & Sign / sdk-publish (push) Has been cancelled
AOC Guard CI / aoc-guard (push) Has been cancelled
AOC Guard CI / aoc-verify (push) Has been cancelled
Concelier Attestation Tests / attestation-tests (push) Has been cancelled
devportal-offline / build-offline (push) Has been cancelled
up
2025-11-25 22:09:44 +02:00

1.8 KiB

Artifacts Schema (DOCS-ORCH-34-004)

Last updated: 2025-11-25

Purpose

Describe artifact kinds produced by Orchestrator runs and how they are stored, hashed, and referenced.

Artifact kinds

  • log: NDJSON log fragment for a step/run.
  • metrics: Prometheus/OpenMetrics snapshot for a step/run.
  • output: arbitrary task output (JSON, NDJSON, binary), content-addressed.
  • manifest: bundle manifest listing artifacts and hashes.

Schema (common fields)

{
  "kind": "log|metrics|output|manifest",
  "tenant": "acme",
  "dagId": "string",
  "runId": "string",
  "stepId": "string",
  "contentType": "application/json",
  "hash": "sha256:<hex>",
  "size": 1234,
  "createdUtc": "2025-11-25T00:00:00Z",
  "traceId": "optional",
  "encryption": "none|aes256-gcm",
  "compression": "none|gzip"
}

Storage rules

  • Content-addressed by sha256 (lowercase hex). Filenames may use <hash>; metadata kept in Mongo with tenant scoping.
  • Immutable; new versions create new hashes.
  • Optional encryption: AES-256-GCM with keys from Authority secretRef; never store keys alongside artifacts.
  • Compression optional (gzip) but hash is computed on compressed bytes; record compression.

Access & security

  • Tenant-scoped reads; artifacts cannot be shared across tenants.
  • No secrets stored; redact before writing. Logs/metrics already redacted at source.
  • Access control enforced via orchestrator scopes; audit log every download/export.

Offline posture

  • Artifacts may be exported as tarball with manifest (manifest kind) that lists hash, size, compression/encryption flags.
  • Imports verify manifest hash and per-artifact hash before accepting.

Determinism

  • Hash and size recorded at creation; manifests sorted by kind, then dagId, runId, stepId, hash.
  • Timestamps UTC ISO-8601; NDJSON ordering stable.