Skip to content

chore: version packages#1006

Open
enbox-release-bot[bot] wants to merge 1 commit into
mainfrom
changeset-release/main
Open

chore: version packages#1006
enbox-release-bot[bot] wants to merge 1 commit into
mainfrom
changeset-release/main

Conversation

@enbox-release-bot

@enbox-release-bot enbox-release-bot Bot commented Jun 11, 2026

Copy link
Copy Markdown
Contributor

This PR was opened by the Changesets release GitHub action. When you're ready to do a release, you can merge this and the packages will be published to npm automatically. If you're not ready to do a release yet, that's fine, whenever you add more changesets to main, this PR will be updated.

Releases

@enbox/agent@0.8.1

Patch Changes

@enbox/api@0.6.38

Patch Changes

  • #1005 9b51592 Thanks @LiranCohen! - Remove Bun fetch stream buffering workarounds and pass data streams through HTTP and storage paths directly.

  • Updated dependencies [9b51592]:

    • @enbox/agent@0.8.1
    • @enbox/dwn-clients@0.4.6
    • @enbox/auth@0.6.46

@enbox/auth@0.6.46

Patch Changes

@enbox/browser@0.3.24

Patch Changes

  • Updated dependencies [9b51592]:
    • @enbox/agent@0.8.1
    • @enbox/api@0.6.38
    • @enbox/auth@0.6.46

@enbox/dwn-clients@0.4.6

Patch Changes

@enbox/dwn-sdk-js@0.4.1

Patch Changes

  • #1009 970aa97 Thanks @LiranCohen! - fix: convergent tombstones — delete-wins over writes and a canonical-winner lattice among competing deletes. A RecordsDelete now displaces a RecordsWrite regardless of timestamp (the convergent counterpart of the write handler's writes-after-delete rejection), and competing tombstones resolve to one canonical winner on every replica: a prune beats a plain delete regardless of timestamp, and within the same class the newest (messageTimestamp, then CID) wins. Supersession displacement is decided by CID membership rather than timestamp comparison so the retained message survives resumable-task replay. Public behavior change: deleting an already-deleted record now returns 202 when the incoming tombstone wins and 409 Conflict when it is beaten (replication classifies the 409 as a Superseded no-op); 404 is returned only when the record has no messages at all. Records.canPerformDeleteAgainstRecord is removed in favor of the shared Records.isDeleteBeatenByExistingTombstone predicate used by both admission and resumable-task replay.

  • #1011 211049b Thanks @LiranCohen! - fix: emit all missing ancestor refs in one Incomplete

    applyReplicatedMessage now layer-batches missing-ancestor dependencies: the incoming message's contextId is split into its recordId segments, each segment above the failure-named ancestor is presence-checked against the message store, and a single Incomplete names every locally-absent ancestor — for both the immediate-parent referential failure and record-chain construction failure — instead of surfacing one ancestry level per retry pass. Deep record chains now resolve in a bounded number of passes regardless of depth. Refs remain recordId selectors and the wire shape is unchanged.

  • #1010 e781263 Thanks @LiranCohen! - feat: mark permission records immutable

    The permissions protocol now sets $immutable: true on the request, grant, and grant/revocation paths. Permission records are write-once by design — a grant is never amended, it is revoked and re-issued — and immutability locks each record's initial-write facts (notably the protocol tag), which replication fingerprint domains and protocol-scoped shadow filters are computed from. Updates to existing permission records (including tags-only mutations) are now rejected with ProtocolAuthorizationImmutableRecord in both processMessage and applyReplicatedMessage; creating permission records and revoking grants are unaffected.

  • #1012 a2bfa0d Thanks @LiranCohen! - fix: carry mutable query-visibility facts (flattened tag.* and published) from the pre-delete latest write onto RecordsDelete tombstone indexes. Without them, tombstones of tagged permission records never match the permission shadow filters and published-record tombstones never match published: true queries and subscriptions. Immutable record facts keep coming from the initial write, and pruning an already-deleted record carries the existing tombstone's visibility facts forward.

@enbox/dwn-server@0.1.10

Patch Changes

@enbox/dwn-sql-store@0.0.26

Patch Changes

@enbox/protocols@0.2.65

Patch Changes

@enbox/electrobun-dwn@0.0.56

Patch Changes

  • Updated dependencies [9b51592]:
    • @enbox/agent@0.8.1
    • @enbox/api@0.6.38
    • @enbox/dwn-server@0.1.10
    • @enbox/auth@0.6.46
    • @enbox/protocols@0.2.65

@github-actions

github-actions Bot commented Jun 11, 2026

Copy link
Copy Markdown
Contributor

Coverage Report

Node (bun test)

Package Line Coverage Status
agent 74.9% ⚠️ Below 96% target
api 75.3% ⚠️ Below 96% target
auth 25.9% ⚠️ Below 96% target
browser 100.0%
common 94.3% ⚠️ Below 96% target
crypto 99.7%
dids 98.9%
dwn-clients 26.3% ⚠️ Below 96% target
dwn-sdk-js 98.1%
dwn-server 59.9% ⚠️ Below 96% target
dwn-sql-store 91.2% ⚠️ Below 96% target

⚠️ Some packages are below the 96% coverage target. The report is informational and does not fail CI.

Coverage Report

Node coverage not available for this run.

Browser Coverage (informational)
Package Chromium Firefox WebKit
agent 81.9% 81.9% 81.9%
api 100.0% 100.0% 100.0%
browser 53.8% 53.8% 53.8%
common 94.0% 94.0% 94.0%
crypto 99.4% 99.4% 99.4%
dids 97.4% 97.4% 97.4%
dwn-sdk-js 93.0% 93.0% 93.0%

Browser coverage is informational only (subset of tests).

@enbox-release-bot enbox-release-bot Bot force-pushed the changeset-release/main branch 4 times, most recently from 16c2e52 to 93bde6a Compare June 12, 2026 00:05
@enbox-release-bot enbox-release-bot Bot force-pushed the changeset-release/main branch from 93bde6a to d825c25 Compare June 12, 2026 17:00
@sonarqubecloud

Copy link
Copy Markdown

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

0 participants