- Goal: Build and publish attributable candidate bytes from one committed revision.
- Status: The local recovery and projection journeys passed for 0.2.1. Candidate publication was refused because
release_api.publishershas notranscript-lake/publisher binding; no immutable release is claimed. - Risk: Build output and network publication. This does not start a stream, modify an existing Lake, or edit provider transcripts.
- Environment: The canonical checkout on
main, the Rust toolchain required byCargo.toml, Stado, and a declared macOS ARM builder. - Preconditions: Matching source and version, a product-specific publication item, and a separate Skarbiec publication reader with access to that item's
tokenfield. - Inputs: Committed source,
Cargo.lock, and.wisent-release.json. The manifest names the quality gate, build command, staged binary, and candidate/stable promotion policy. - Artifacts: Local qualification output stays in
.wisent-output/target. Stado records the submitted revision, gates, builder, artifact digest, and publication result.
sh
cargo test --locked --test source_rewrite --test oko_export_role --test show_out --target-dir .wisent-output/target
stado release submit --source . --commit <full-source-revision> --version <exact-version> --channel candidate --json
stado release status transcript-lake --jsonThe submission publishes a candidate; the first command alone does not. Stado runs the named gate again against the submitted source before building. The package declares no automatic runtime rollout, so publication does not restart the stream.
- Verification: Read the recorded gate results and artifact digest. A local test pass, accepted submission, or installed development binary is not proof that the candidate reached the public object origin.
- Failure path: A missing publisher binding, refused field grant, failed test, failed build, or failed object read-back blocks publication. Correct the declaration or source through its owning product; do not substitute the coordinator's bearer, skip the gate, or overwrite an immutable coordinate.
- Retention: Keep the exact commands, exit statuses, source revision, test evidence, and Stado receipt. Retry the same submission only after its recorded failure has been addressed.
- Next: Read release policy and Stado's release contract before promotion or installation.