rsky icon indicating copy to clipboard operation
rsky copied to clipboard

AT Protocol Sync v1.1

Open afbase opened this issue 9 months ago • 3 comments

Background

Draft Proposal: Link

Bluesky Thread: https://bsky.app/profile/bnewbold.net/post/3lin3bnojv22h

Done When

  • [ ] Implement com.atproto.sync.listReposByCollection endpoint
  • [ ] enable per-commit MST validation over firehose #commit messages
  • [x] Support #sync
    • [x] robust synchronization error handling over invalid commit messages and discontinuous commits
  • [ ] variant of com.atproto.sync.getRepo API endpoint to return a verifiable subset of full repository (eg, a specific collection), including relevant records and MST nodes, as a CAR file
  • [ ] support resynchronization process
  • [ ] Deprecate com.atproto.sync.getHead
  • [ ] Deprecate com.atproto.sync.getCheckout
  • [ ] Deprecate commit parameter to com.atproto.sync.getRecord
  • [ ] Deprecate the blobs array of CIDs in #commit will be deprecated and set to an empty array, though not fully removed (the field is required)
  • [x] Deprecate the deprecated #handle, #tombstone and #migrate firehose events will be fully removed
  • [ ] Make sure the "optional and nullable" prev CID field on #commit events will be fully removed

afbase avatar Mar 04 '25 01:03 afbase

related commits and prs:

  • https://github.com/bluesky-social/atproto/commit/6e382f67aa73532efadfea80ff96a27b526cb178
  • https://github.com/bluesky-social/atproto/pull/3585

afbase avatar Mar 06 '25 01:03 afbase

I've started a branch of work on this: https://github.com/afbase/rsky/tree/afbase/sync1.1-part-1

I've add the #sync event and removed the #handle, #tombstone and #migrate.

afbase avatar Mar 07 '25 01:03 afbase

Related PRs in atproto

There are the following PRs I see around this thus far in ATProto

  • https://github.com/bluesky-social/atproto/pull/3391
  • https://github.com/bluesky-social/atproto/pull/3585
  • https://github.com/bluesky-social/atproto/pull/3612

afbase avatar Mar 12 '25 20:03 afbase