Runtime

Runtime

bundle publish

Verify bundle.lock.json and publish an immutable bundle version (semver + lock hash).

Synopsis

Shell
$ phrony bundles publish BUNDLE

Description

Publishes a multi-agent Bundle to the runtime:

  1. Validates the manifest, including required metadata.version semver.
  2. Requires bundle.lock.json; fails with a message naming bundle lock when missing.
  3. Re-walks the closure, resolves external content_hash values when needed, and verifies the result matches the committed lock.
  4. Sends the committed lock bytes in committed_lock; the server re-verifies before storing.
  5. Enforces immutable version semantics (same semver or same lock hash cannot be rebound to different content).
  6. Validates the secret union across closure members; rejects when two members use the same secret name with different fromEnv values (same rule as bundle lock and bundle validate).
  7. Resolves external members (verifying DB content_hash against the lock), materializes vendored members, and pins agent_version_id on delegation bindings.

Each published snapshot is identified by semver (metadata.version) and lock hash (sha256:… from the lockfile). Bump metadata.version when the closure changes. Publishing does not make the bundle runnable—use bundle deploy next.

BUNDLE is the path to the kind: Bundle YAML file.

Do not use phrony agents publish for bundles.

Example

Shell
$ phrony bundles lock ./support/bundle.yaml
$ phrony bundles publish ./support/bundle.yaml

On success:

Text
support/support 1.2.0 (sha256:…)

Up next

bundle deploy

Activate the published semver or lock hash for sessions.

Bundle spec

Full publish, deploy, and run semantics.