Finalize a zelnet package set that carries no reels #291

Merged
binjovi-bot merged 1 commit from feat/optional-candidate-media into trunk 2026-09-13 15:21:21 +00:00
Owner

First of three changes that let a zelnet pull request produce a downloadable candidate package set, so a Build can be tried before anyone decides to release it.

A pull-request candidate must not drive Gibson, pub400.com or Telehack, so it records no reels. zelnet's finalize stage passed --media-manifest and --media-manifest-digest on every call, which made a set without reels impossible.

The stage now builds the argument list and adds the reel pair only when MEDIA_MANIFEST_REF is set. binjovi-package-finalize has always treated the reels as optional: it defaults media_manifest='', guards every media step on it, and emits an empty media member list without them. That is how zdns and zerotea already finalize. A Release always sets the pair, so release behaviour is byte-identical.

scripts/check gains two assertions: the conditional form is present, and the unconditional pairing is gone. Both were verified red before the change and green after. The construct itself was checked in a POSIX shell for both the empty and the set case.

This lands first because a Build pins the catalog revision that accepted it, so the recipe must be released before binjovi starts finalizing candidates without reels. It is inert until then.

https://claude.ai/code/session_01XdBRc9CHgFhAxCyHbdVtt6

First of three changes that let a zelnet pull request produce a downloadable candidate package set, so a Build can be tried before anyone decides to release it. A pull-request candidate must not drive Gibson, pub400.com or Telehack, so it records no reels. zelnet's `finalize` stage passed `--media-manifest` and `--media-manifest-digest` on every call, which made a set without reels impossible. The stage now builds the argument list and adds the reel pair only when `MEDIA_MANIFEST_REF` is set. `binjovi-package-finalize` has always treated the reels as optional: it defaults `media_manifest=''`, guards every media step on it, and emits an empty media member list without them. That is how zdns and zerotea already finalize. A Release always sets the pair, so release behaviour is byte-identical. `scripts/check` gains two assertions: the conditional form is present, and the unconditional pairing is gone. Both were verified red before the change and green after. The construct itself was checked in a POSIX shell for both the empty and the set case. This lands first because a Build pins the catalog revision that accepted it, so the recipe must be released before binjovi starts finalizing candidates without reels. It is inert until then. https://claude.ai/code/session_01XdBRc9CHgFhAxCyHbdVtt6
Finalize a zelnet package set that carries no reels
All checks were successful
binjovi/ci Binjovi completed the frozen plan
75b47ae7ce
A pull-request candidate must not drive Gibson, pub400.com or Telehack, so
it records no reels. The finalize stage demanded the reel manifest on every
call, which made a set without reels impossible.

The stage now adds the reel manifest pair only when the Build recorded one.
binjovi-package-finalize has always treated the reels as optional and emits
an empty media member list without them. A Release always sets the pair, so
release behaviour does not change. A check refuses the unconditional form.

Claude-Session: https://claude.ai/code/session_01XdBRc9CHgFhAxCyHbdVtt6
binjovi-bot deleted branch feat/optional-candidate-media 2026-09-13 15:21:21 +00:00
Sign in to join this conversation.
No reviewers
No labels
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
sean/binjovi-plans!291
No description provided.