Skip to content

BYOK SDK 0.30.0 · keys 0.30.0

Choose a tag to compare

@Ancienttwo Ancienttwo released this 24 Oct 07:37
· 903 commits to main since this release
6b779cf

0.30.0 publication record

Date: 2026-10-24 (UTC).
Status: all nine packages are published on npm latest. The complete registry readback passed.

Changes

0.30.0 is a MINOR release under the default pre-1.0 policy, with no exception. It has breaking changes in protocol, server, cloud and client.

  • Protocol and cloud: wire v3 gets the rules of sealed payload v1 behind the capability sealed-payload-v1: 13 sealed message types, the split table SEALED_SPLIT_TABLE and six sealed hosted entries (#654 E3a). The sealed entries accept a ciphertextRef and the sealed task output, and cloud advertises the flag (#654 E3b). A sealed execution offer can carry a plaintext routineRef (#654 E3d).
  • Protocol, cloud and server (breaking): the plaintext hosted entries, the reference server dispatch() and executions.submit, and the wire schema refuse sealing and sealed with coordination_input_invalid. Before, these keys were dropped and the task ran in plaintext (#654 E3a).
  • Cloud (breaking): ActivityTail.entries is now ActivityTailEntry[], and ApprovalTimelineEvent gets a sealed request member with no summary (#834). ByokCloud gets 13 new methods (#782, #784, #828). TaskRedactionStoreInput gets the required field releaseObjectReferences (#654 E3b).
  • Cloud and cloud-dataplane: the Host redacts the stored content of terminal tasks (#782). It stores E2EE member state, serves the member device routes with the hosted capability e2ee.member and sends the key package notice e2ee.key_package.available (#828, #832, #840). Postgres needs migration 0027_e2ee_member.sql.
  • Core: sealed content seals decimal plaintext numbers with the RFC 8785 number rule (#786), and sealed payload v1 seals blob bytes (#801). Core exports the E2 member chain, member bundle and pairing MAC rules. Only a member in a scope's current policy may sign a scope-policy or shred of that scope (#792, #808, #809, #813, #814, #844).
  • Protocol, server, cloud and client: an ordinary Agent offer can select agentMemory: 'read-if-admitted'. Devices advertise the capability agent-memory-read-if-admitted (#815).
  • Client (breaking): on macOS, the Agent memory helper refuses an entry below the Agent home that is on another device than its parent, with unsafe_path (#781). The daemon declines an over-bound inbound offer, so the cursor no longer stalls. A custom LocalTaskJournal must implement appendWithheldOffer (#826).
  • Client: the daemon can open sealed task input, seal sealed task output and open the routine template of a sealed offer. In 0.30.0 only a test seam enables this, so a default daemon does not advertise sealed-payload-v1 and declines every sealed offer (#654 E3c, E3d-3).
  • Keys: the device sealing key record requires canonical base64url (#807). The member key custody that #792 added to keys is removed again (#841).
  • Examples: K8 moves CollaborationState to version 3, can veto a K4 compaction of a Turn that it still reads, and readbackDelivery takes the attempt. These are breaking for a Host that copies K8 (#820, #823, #852). The hosted Node/Postgres reference H gets its commit store, intents, Agent message consumer, routines, scheduler, outbox, delegation settlement and inbound channel. H is unreleased (#793).

See the CHANGELOG and the release notes for the full scope and the upgrade notes. The release tracker is #788.

Source and accepted artifacts

  • Source commit: 6b779cffb53c9695fd0d76bd82523a29f5f2e5fc on main, the merge of #837.
  • Push CI: run 40070143632 completed with success.
  • Release matrix: run 40070158099, dispatched with release_sha equal to the source. It completed with success: 33 jobs passed and 1 job was skipped as expected.
  • Artifact: release-pack-6b779cffb53c9695fd0d76bd82523a29f5f2e5fc, id 12550758464. Manifest SHA-256: 0ca6d4d46d53e15a31b1711396ab8b776efa2e82ba14fab9f437d2fc47104724.
  • Downstream acceptance (AiphaBee) passed on macOS with the nine CI tarballs from this artifact. Their SHA-256 and SHA-512 values match the manifest.
  • After publication, the npm dist.integrity of all nine packages was compared with the SHA-512 values in the manifest. All nine are equal.

npm execution

The account is ancienttwo, with auth-and-writes 2FA. Uploads used browser authentication. This local route has no provenance attestation. The dist-tag is latest.

One run uploaded all nine packages after one browser authentication. The registry records them from 07:09:58 to 07:11:56 UTC. The run waited for registry propagation, read back all nine packages and created the tag. No upload was repeated. The dry runs before it uploaded nothing.

Tag

The annotated tag v0.30.0 points to 6b779cff. The tag object is f2f02a4c886b499582d7fc2c9411f29b13cfbfda. Its message is v0.30.0, a blank line, then sourceGitSha 6b779cffb53c9695fd0d76bd82523a29f5f2e5fc. It was created after the readback passed, on 2026-10-24 at 07:13:21 UTC.

Accepted tarballs

Package Version SHA-256
@byok-sdk/core 0.30.0 199e8a7ab8a4153ec7fe8a17ce9a45744c0dad6bb0a930485e8a337ed787cf2c
@byok-sdk/protocol 0.30.0 4e88d54db61687f26c39fff840075d84e5e424d3f270d4ab1021596faa8a3409
@byok-sdk/server 0.30.0 b36301597b5d945328946860d3ccc1f0d25e6024993a3da98ae869f7e454d101
@byok-sdk/cloud 0.30.0 9bdd6620c0e967cef7112b7114ecf281469981aa9abf3ed8154f3b4339456346
@byok-sdk/client 0.30.0 9d08553da423de1db1b502c31401b71a8aa8b5d91cc76c54dea242152cfdde9f
@byok-sdk/cloud-dataplane 0.30.0 c13b2e8afe42e46542df10b63ae04c92c87ba734df7bf481f33efac022ebfc91
@byok-sdk/cloud-do 0.30.0 448fa57f53fb6b6b68b818579e3fcf3cb05d45542bb4f20d6fa433f7305d7bd0
@byok-sdk/ui-runtime 0.30.0 a3b1c2ad2a41feb1bcc1027bd83731b5f78197149473e0b2256dd6bbfbeac3b4
@byok-sdk/keys 0.30.0 2ad39180d7b83e83d1d97a4063ebd159a92033233e446d7b04be0fe65d0d217c

Release boundary

AiphaBee accepted this release on macOS only. Windows code relies on the required windows-latest CI. The 0.30.0 daemon does not advertise sealed-payload-v1, so a Host refuses a sealed offer to a 0.30.0 device before the task exists, and sealed output is inline only. The E2EE member flows were not run on two physical devices (#794), and no browser tests ran (#654 E6). Live provider runs were not part of this release: real Windows runs of Hermes (#608) and the submit_result success rate (#610). On Windows, Agent memory makes no claim for an OS crash or a power loss (#605). The hosted example H is unreleased and has no migrations (#793). npm publication does not deploy a Host.