Summary of Recent Changes (2024-02-22) #2220
Replies: 4 comments 3 replies
-
Yup, already happened :p I saw a post with no text and one with reply being an array instead of an object ;) |
Beta Was this translation helpful? Give feedback.
-
Is the identity event being sent now? I don't think I'm seeing it... |
Beta Was this translation helpful? Give feedback.
-
Is there somewhere to read more about that account creation bit? Not sure I fully understand what that change is and how it will work when users are able to select any other server at sign up. |
Beta Was this translation helpful? Give feedback.
-
First of all, I really appreciate your hard work to create a nice protocol!
Is there a guideline of bluesky PDS for third-party developers to follow? I'm a hobby atproto developer making an AppView for blog service. |
Beta Was this translation helpful? Give feedback.
-
There have been a whole bunch of changes in the past week! This is a listicle post for devs in case they missed any of this.
Federation: we've started federating with small self-hosting PDS instances! See blog posts for details. Impact on devs:
Lexicon flexibility and disabling validation: until this week, we have be conservative about what kinds of records we allow folks to write in to their atproto repositories on our PDS. this has been "off-specification" to reduce headaches, but with federation we can't prevent this any longer, and have thrown open the limits. Specifically, folks can disable validation of existing record schemas (
app.bsky.*
), and create records for new or invented Lexicons. Impact on devs:Account Migration: details here: https://github.com/bluesky-social/pds/blob/main/ACCOUNT_MIGRATION.md
Control over PLC: until now, the vast majority of Bluesky PDS accounts have not actually had direct control of their DID identity. As part of account migration, we now have an endpoint which lets users request signed PLC operations from their PDS instance. This allows them to add new rotation keys (under their own control), and from there can submit additional future operations to update their DID documents. Impact on devs:
New
#identity
repo stream event type: we are working on some iterations to the repo event stream messages for identity and account state updates. in the near future we will probably end up with just three events:#commit
(no change),#identity
(all handle and DID updates),#account
(PDS repo hosting lifecycle related, including deletions, PDS takedowns, etc). As a first step, we have a new basic#identity
which is emitted any time the PDS knows that an account's DID document or handle has changed. This rolls the#handle
and#migrate
events. For now this event is basically empty, and downstream services should use it as a trigger to re-resolve both the handle and DID document. In the future we may include the handle, DID document, and identity tombstone status. There is no plan to sign these events; authority rests in the resolution process.Preventing legacy blobs on record creation: in early 2023, we refactored the
blob
data type in atproto to includesize
in bytes, and be easier to identity in un-specified data. Until now, we preferred but did not require the new format. Now our PDS requires new records to use the new format, though there remain many old records in the network. Details at: https://atproto.com/specs/data-model#blob-typeAccount creation on PDS/entryway website: to date, account creation has been driven by the
createAccount
endpoint, both from the mobile app and the web app. We are now starting to have account creation on the Bluesky servers happen on a regular web page, which is closer to how things will work with OAuth. This makes it possible to tweak how the flow and our anti-abuse measures work (like SMS phone validation, captchas, invite codes, etc) without an API iteration. The API endpoint will probably stick around in some form, but we may reduce or remove support. From a mobile app, it will be possible to bounce to webview, complete signup, and redirect back to the app.Firehose cursor reset: discussed here: #2194
search.bsky.social shut down: previously announced, but finally implemented.
Beta Was this translation helpful? Give feedback.
All reactions