Version packages - #5452
Merged
Merged
Conversation
github-actions
Bot
force-pushed
the
changeset-release/main
branch
21 times, most recently
from
September 3, 2026 18:04
755d578 to
2f7dec1
Compare
github-actions
Bot
force-pushed
the
changeset-release/main
branch
3 times, most recently
from
September 4, 2026 16:20
c6d55dd to
3ffcb9d
Compare
github-actions
Bot
force-pushed
the
changeset-release/main
branch
from
September 4, 2026 16:30
3ffcb9d to
6526ecd
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
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
@atproto-labs/opentelemetry-node@0.2.0
Minor Changes
222f4bcThanks @rafaeleyng! - Move the RPC telemetry constants shared by both halves of a bsync call into@atproto-labs/opentelemetry-node: thebsync.namespaceandbsync.operationattribute keys andRPC_CALL_DURATION_BUCKETSare now exported from the/conventionsentrypoint, andstatusCodeToString()from the new/utilentrypoint. Previously the AppView imported these from@atproto/bsync, which made a whole service package a runtime dependency of another just to agree on a metric label.Patch Changes
46fdec9Thanks @rafaeleyng! - Drop the@connectrpc/connectdependency:statusCodeToString()now takes a plainnumberand resolves the status name through a hand-rolled map of the ConnectCodeenum values. Importing the library here would load it before it gets instrumented, breaking the instrumentation.@atproto/ozone@0.4.0
Minor Changes
#5426
ed0b7d3Thanks @bigmoves! - Migrate Ozone onto@atproto/lex.Ozone was the last package still generating its server stack with
lex gen-server. It now useslex buildlikepdsandbsky, and the legacysrc/lexicontree is gone:server.<ns>.<method>()toserver.add(schema, …)from@atproto/xrpc-server.AtpAgentis replaced byClient;CredentialSessionbyPasswordSessionfrom
@atproto/lex-password-session.scalars (
DidString,DatetimeString,AtUriString,UriString), soroute params flow into the database and back out into views without casts.
@atproto/apiand@atproto/lexiconmove todevDependencies(the test suitesstill drive the legacy client), and
@atproto/xrpcand@atproto/lex-cliaredropped entirely.
Two behaviour changes worth noting, both from validating against the Lexicon
schemas rather than the legacy runtime:
accepted them anyway. A non-integer number in an
unknownfield — forexample a float stored in a
tools.ozone.settingvalue — is now rejected atinput validation. Reads are unaffected, since the server is configured with
validateResponse: false.validation before a route's own validators run, so the reported error is the
schema's (
Expected object value type …) rather than the application's.BlobDiverterand the OAuth-preferences proxy previously threwXRPCErrorfrom@atproto/xrpcto signal retryability toretryHttp. They now throwUpstreamHttpError, which extendsXRPCErrorfrom@atproto/xrpc-serversothat an error escaping a handler still carries its upstream status and message
instead of collapsing into a generic 500.
#5421
5c154f9Thanks @foysalit! - Allow moderators to retrieve hosted account preferences throughtools.ozone.moderation.getAccountPreferences.Patch Changes
#5479
a8d3893Thanks @gcwill70! - Scope otel down to only trace modules that are instrumented.#5074
8a4631aThanks @foysalit! - Add opt-in prometheus metrics server and opt-in OpenTelemetry tracing (via@atproto/ozone/tracer, gated onOTEL_EXPORTER_OTLP_ENDPOINT) to ozone; the ozone service image now uses OpenTelemetry instead of dd-trace#5474
59f4a42Thanks @gcwill70! - Allow headers to be set when using app-configured PDS instance#5471
263eaa3Thanks @foysalit! - Harden takedown event pushing with bounded concurrency, rate-limit-aware retries, and terminal handling for unavailable targets.#5393
7068a65Thanks @gcwill70! - Fix ascending report pagination when multiple reports share a timestamp.#5468
0f3ea4bThanks @foysalit! - Harden outbound Ozone requests to PDS and did:web endpoints.Updated dependencies [
8a4631a,ed0b7d3,ed0b7d3,ffcb7c5]:@atproto/xrpc-server@0.13.0
Minor Changes
ffcb7c5Thanks @treethought! - Cancel in-flight query handlers when the client disconnects. Queries now receive anAbortSignalon the handler context that fires when the caller hangs up, so upstream work can be aborted instead of held open. This applies to queries, not procedures.Patch Changes
#5074
8a4631aThanks @foysalit! - Add opt-in prometheus metrics server and opt-in OpenTelemetry tracing (via@atproto/ozone/tracer, gated onOTEL_EXPORTER_OTLP_ENDPOINT) to ozone; the ozone service image now uses OpenTelemetry instead of dd-traceUpdated dependencies [
ed0b7d3,ed0b7d3]:@atproto/api@0.20.43
Patch Changes
#5461
60c4395Thanks @blackmichael! - Add reference-list opt-out records and enforce them in AppView list, list feed, and starter-pack views.#5481
f0d4877Thanks @estrattonbailey! - SetupdatedAtwhen updating interests withsetInterestsPref.#5421
5c154f9Thanks @foysalit! - Addtools.ozone.moderation.getAccountPreferencesmethodUpdated dependencies [
ed0b7d3]:@atproto/aws@0.3.16
Patch Changes
@atproto/bsky@0.0.278
Patch Changes
#5457
ffcb7c5Thanks @treethought! - Abort upstream calls made by read endpoints when the client disconnects. Feed, search, and suggestion queries now forward the request's cancellation signal to their outbound calls, so a caller hanging up no longer leaves those requests running.#5461
60c4395Thanks @blackmichael! - Add reference-list opt-out records and enforce them in AppView list, list feed, and starter-pack views.#5485
908cd55Thanks @rafaeleyng! - Route notification read updates exclusively through bsync fanout.#5465
328a4a8Thanks @rafaeleyng! - Issue iris and topics requests through the global fetch, using long-lived dispatchers that are closed on shutdown.#5464
a058557Thanks @rafaeleyng! - Setup OTEL metrics on bsky and report some hydration failures#5454
f7fe823Thanks @rafaeleyng! - Add a 1s timeout to requests to iris.#5455
9a72c51Thanks @rafaeleyng! - Use a connection timeout for requests to iris and topics.#5451
ff99ec0Thanks @rafaeleyng! - Serve known likers on the root post of each feed item instead of on the feed item itself.#5473
cae15d9Thanks @rafaeleyng! - Add aBSKY_FEED_GEN_SKELETON_TIMEOUToption, bounding feed generator skeleton requests. Defaults to 5s, lowered from the previously hardcoded 10s.#5484
14bd634Thanks @rafaeleyng! - Fan out notification read timestamps through bsync and prevent older timestamps from replacing newer ones.#5472
222f4bcThanks @rafaeleyng! - Move the RPC telemetry constants shared by both halves of a bsync call into@atproto-labs/opentelemetry-node: thebsync.namespaceandbsync.operationattribute keys andRPC_CALL_DURATION_BUCKETSare now exported from the/conventionsentrypoint, andstatusCodeToString()from the new/utilentrypoint. Previously the AppView imported these from@atproto/bsync, which made a whole service package a runtime dependency of another just to agree on a metric label.#5456
db6e2e7Thanks @rafaeleyng! - Reduce dataplane calls when refilling paginated responses. Pages are now served once they hold half of the requested limit, andlistNotificationsreads the viewer's priority setting and last-seen time once per request instead of once per page.#5448
80d391aThanks @estrattonbailey! - Forwardx-atproto-bsky-topicsalongside the legacyx-bsky-topicsheader.#5470
715caf1Thanks @rafaeleyng! - Record client and server latency metrics and traces for bsync requests, including operation namespaces.#5465
328a4a8Thanks @rafaeleyng! - Add aBSKY_PROXY_CONNECT_TIMEOUToption, bounding the connection phase of blob proxy requests.Updated dependencies [
8a4631a,60c4395,f0d4877,5c154f9,ed0b7d3,222f4bc,46fdec9,ed0b7d3,ffcb7c5]:@atproto/bsync@0.0.43
Patch Changes
#5486
04dc5abThanks @rafaeleyng! - Resolve private dataplane hosts over IPv4.#5484
14bd634Thanks @rafaeleyng! - Fan out notification read timestamps through bsync and prevent older timestamps from replacing newer ones.#5472
222f4bcThanks @rafaeleyng! - Move the RPC telemetry constants shared by both halves of a bsync call into@atproto-labs/opentelemetry-node: thebsync.namespaceandbsync.operationattribute keys andRPC_CALL_DURATION_BUCKETSare now exported from the/conventionsentrypoint, andstatusCodeToString()from the new/utilentrypoint. Previously the AppView imported these from@atproto/bsync, which made a whole service package a runtime dependency of another just to agree on a metric label.#5470
715caf1Thanks @rafaeleyng! - Record client and server latency metrics and traces for bsync requests, including operation namespaces.Updated dependencies [
222f4bc,46fdec9,ed0b7d3]:@atproto/common@0.8.2
Patch Changes
@atproto/common-web@0.5.11
Patch Changes
ed0b7d3]:@atproto/dev-env@0.6.5
Patch Changes
#5426
ed0b7d3Thanks @bigmoves! - Migrate Ozone onto@atproto/lex.Ozone was the last package still generating its server stack with
lex gen-server. It now useslex buildlikepdsandbsky, and the legacysrc/lexicontree is gone:server.<ns>.<method>()toserver.add(schema, …)from@atproto/xrpc-server.AtpAgentis replaced byClient;CredentialSessionbyPasswordSessionfrom
@atproto/lex-password-session.scalars (
DidString,DatetimeString,AtUriString,UriString), soroute params flow into the database and back out into views without casts.
@atproto/apiand@atproto/lexiconmove todevDependencies(the test suitesstill drive the legacy client), and
@atproto/xrpcand@atproto/lex-cliaredropped entirely.
Two behaviour changes worth noting, both from validating against the Lexicon
schemas rather than the legacy runtime:
accepted them anyway. A non-integer number in an
unknownfield — forexample a float stored in a
tools.ozone.settingvalue — is now rejected atinput validation. Reads are unaffected, since the server is configured with
validateResponse: false.validation before a route's own validators run, so the reported error is the
schema's (
Expected object value type …) rather than the application's.BlobDiverterand the OAuth-preferences proxy previously threwXRPCErrorfrom@atproto/xrpcto signal retryability toretryHttp. They now throwUpstreamHttpError, which extendsXRPCErrorfrom@atproto/xrpc-serversothat an error escaping a handler still carries its upstream status and message
instead of collapsing into a generic 500.
#5426
ed0b7d3Thanks @bigmoves! - Use stronger types (UriString,DidString, ...) for service properties#5473
cae15d9Thanks @rafaeleyng! - Add aBSKY_FEED_GEN_SKELETON_TIMEOUToption, bounding feed generator skeleton requests. Defaults to 5s, lowered from the previously hardcoded 10s.#5484
14bd634Thanks @rafaeleyng! - Fan out notification read timestamps through bsync and prevent older timestamps from replacing newer ones.#5421
5c154f9Thanks @foysalit! - AddgetClient()method onTestOzoneclassUpdated dependencies [
a8d3893,8a4631a,ffcb7c5,60c4395,908cd55,328a4a8,ed0b7d3,04dc5ab,f0d4877,a058557,f7fe823,9a72c51,5c154f9,ff99ec0,cae15d9,ed0b7d3,14bd634,80d391a,5c154f9,222f4bc,59f4a42,db6e2e7,80d391a,715caf1,328a4a8,ed0b7d3,263eaa3,7068a65,0f3ea4b,ffcb7c5]:@atproto/identity@0.5.11
Patch Changes
@atproto-labs/xrpc-utils@0.1.21
Patch Changes
8a4631a,ffcb7c5]:@atproto/lex-cli@0.10.12
Patch Changes
ed0b7d3]:@atproto/lex@0.3.9
Patch Changes
#5426
ed0b7d3Thanks @bigmoves! - Addwalkutility to browse a generated namespace.Updated dependencies [
ed0b7d3,ed0b7d3]:@atproto/lex-builder@0.1.14
Patch Changes
ed0b7d3,ed0b7d3]:@atproto/lex-client@0.3.6
Patch Changes
ed0b7d3,ed0b7d3]:@atproto/lex-document@0.1.11
Patch Changes
ed0b7d3,ed0b7d3]:@atproto/lex-installer@0.1.18
Patch Changes
ed0b7d3,ed0b7d3,ed0b7d3]:@atproto/lex-password-session@0.2.3
Patch Changes
ed0b7d3,ed0b7d3]:@atproto/lex-resolver@0.2.11
Patch Changes
ed0b7d3,ed0b7d3,ed0b7d3]:@atproto/lex-schema@0.2.7
Patch Changes
#5426
ed0b7d3Thanks @bigmoves! - AddasUnknown$TypedObjectutility#5426
ed0b7d3Thanks @bigmoves! - Fix TypeScript errors when schemas are used within a project that does not have "isolatedDeclarations" enabledUpdated dependencies [
ed0b7d3]:@atproto/lex-server@0.1.17
Patch Changes
ed0b7d3,ed0b7d3]:@atproto/lexicon@0.7.13
Patch Changes
ed0b7d3]:@atproto/lexicon-resolver@0.4.19
Patch Changes
ed0b7d3,ed0b7d3]:@atproto/oauth-client@0.8.5
Patch Changes
@atproto/oauth-client-browser@0.5.5
Patch Changes
@atproto/oauth-client-expo@0.2.2
Patch Changes
@atproto/oauth-client-node@0.5.5
Patch Changes
@atproto/oauth-provider@0.22.6
Patch Changes
ed0b7d3]:@atproto/oauth-provider-api@0.8.2
Patch Changes
ed0b7d3]:@atproto/oauth-provider-ui@0.10.2
Patch Changes
@atproto/oauth-scopes@0.5.11
Patch Changes
ed0b7d3]:@atproto/pds@0.5.32
Patch Changes
#5448
80d391aThanks @estrattonbailey! - Forward allx-atproto-*request headers through PDS service proxies.Updated dependencies [
8a4631a,ed0b7d3,222f4bc,46fdec9,ed0b7d3,ffcb7c5]:@atproto/repo@0.10.13
Patch Changes
ed0b7d3]:@atproto/sync@0.4.8
Patch Changes
8a4631a,ed0b7d3,ed0b7d3,ffcb7c5]:@atproto/syntax@0.7.6
Patch Changes
ed0b7d3Thanks @bigmoves! - Allow usingnumbervalue astoDatetimeStringinput@atproto/tap@0.4.7
Patch Changes
ed0b7d3,ed0b7d3]:@atproto/xrpc@0.8.12
Patch Changes