Tags: blacksky-algorithms/indigo
Tags
Tap: fix nil pointer err on prevData (bluesky-social#1287) Prev data can be nil in the case of legacy (non sync1.1) commits, causing a nil pointer error.
Tap: fix repo commit metadata tracking (bluesky-social#1280) Fixes a few issues in Tap. The most important is that we were not updating prev data & rev when we didn't need to process any ops from a commit. This would cause commits to appear as disjunctions in commit history. This also rearranges some logic in `ProcessCommit` which would cause us to mark a repo "desynced" if an event came in while resyncing rather than adding that event to the resync buffer. For events that we add to the resync buffer, we hold off checking that they play neatly on the current state of the repo (through prevData) until we actually go to play them back.
Tap: restore nextID counter on restart to prevent unique constraint e… …rrors (bluesky-social#1257) When Tap restarts, the EventManager loads existing events from the database but doesn't initialize the nextID counter. This causes new events to be assigned IDs starting from 0, which collide with existing database records. The fix restores the nextID counter as events are loaded, ensuring new IDs are always greater than any existing database IDs. Fixes bluesky-social#1253
Tap: allow custom plc directory (bluesky-social#1234) One might need custom plc directory endpoint other than <https://plc.directory> for testing purposes or for plc mirrors. As tap supports full network backfill, it would be better to test that on sandboxed atproto infra than public infra with ~40M repos. So I added a `plc-url` flag and `TAP_PLC_URL` env var. Same as relay, `ATP_PLC_HOST` env var can also be used instead.
Tap (sync tool) (bluesky-social#1170) Sync tool for backfilling and consuming the firehose in order to hand off a fully authenticated stream of operations to an application. More details in the included README. TS client lib: https://github.com/bluesky-social/atproto/pull/4290/files