Deterministic FlashMini training corpus. Canonical documents live in Parquet+ZSTD shards under shards/; each shard carries a manifest with sha256, counts, and distributions; the frozen corpus identity is corpusfingerprintsha256. recipeonly, gatedrecipeonly, reviewrequired, generatedowned (fail-closed; see registry/sources.yaml + sourcesnapshot.lock.json). Content shards are published only for mirrorallowed/generatedowned sources; recipe-only sources contribute provenance only and stream from upstream at training time. Gated NVIDIA sources are not mirrored. Licenses are recorded per source; no blanket license is claimed over mixed content. filter/dedupe versions, split salt, per-shard…