Evidence

Genblaze manifests

Genblaze owns the visible generative-media orchestration. Every stage is a separate run carrying its own canonical manifest.

Nine runs for one edition

#StageProvider
1TranscriptionFaster Whisper
2–4Translation ×3Argos Translate
5–7Speech ×3ElevenLabs
8Localized-audio fan-inFFmpeg
9Final compositionFFmpeg

Each manifest records the provider, the model, the inputs, the parameters, timestamps, output hashes, the approver, and the disclosure state.

Lineage

A retry uses Pipeline.from_result(), so the child manifest carries the previous attempt's parent_run_id. That is what turns a set of independent runs into a traceable chain.

Correction lineage
a9cc6c70-86ee-4e1c-8874-002c47c50c9a   attempt 1 · red    · +113.87%
        └── 3e5cdd07-51e0-4784-90f0-f419b143f1c3
                                       attempt 2 · green  ·  −5.90%

Append-only, always

A retry never replaces its parent. Both manifests, both audio objects and both measurements stay in B2.

Independent verification

Toluva does not trust a manifest's own claims about bytes. Before the interface describes an object as verified it:

  1. Fetches the stored object
  2. Hashes it
  3. Compares that against the manifest's recorded hash

Both manifestVerified and storedAssetHashMatches have to hold. The Provenance page shows the result per run.

What a manifest proves

It proves recorded lineage and canonical integrity — this run happened, with these inputs and parameters, and produced exactly these bytes.

And what it does not

A manifest does not prove that every fact supplied to it was true. It does not establish that consent was validly obtained, that the speaker agreed, or that the output is lawful in any jurisdiction. Describing a manifest as proof of consent or of compliance would be a misrepresentation, and Toluva's interface is written to avoid it.

Feedback upstream

The output-root issue found while building against the SDK is tracked upstream as backblaze-labs/genblaze#247.