* ✨ Allow moderators to see takendown profiles
* ✨ Allow moderators to see follows and followers of takendown account
* ♻️ Let auth check fail on optional verifier
* ♻️ Use role type to check moderator access
* ✨ Add action duration to action model
* ✨ Add periodic moderation action reversal
* ✨ Use actionDurationInHours and remove takedownExpiresAt
* ✨ Destroy mod action reversal job
* ✅ Add test for automatic moderation action reversal
* 🧹 Port over actionDuration to bsky package
* ♻️ Better naming for action duration and minor fixes
* ♻️ Optionally build expiresAt based on createdAt when logging action
* ♻️ Adjust constructor params
* ✨ Copy over migration from pds to bsky package
* 🚨 Fix indentation
* ✨ Propagate action reversal from app-view to pds
* ✨ Revert locally only if pushAgent is not found
* build
* merge dbcoordinator work into periodic mod actions
* fix entrypoint for periodic mod reversals
* do not run periodic reversals on sequencer leader
* fix duration in action detail on bsky
* update env for pushing mod reversals
* allow zero-duration actions for testing
* remove build
---------
Co-authored-by: Devin Ivy <devinivy@gmail.com>
* setup bsky so that writes always go to a db primary
* test bsky primary db functionality
* sprinkle db primary over moderation and view maintainer usage
* make bsky tests more strict on primary/secondary db, fixes
* maintain prev db config on appview, require primary db, make primary/replica explicit in config
* tidy
* sketch out db replicas
* wip
* support multiple tags per bsky replica, "any" tag, fallbacks and warns
* clarify tags
* use new coordinator api across routes & services
* wire-up replica tagging config
* tidy
* cleanup entroypoints and tests for db coordinator
* fix pds test
* re-hookup migrate db
* standardize env vars for db on bsky services
* tidy
* build
* fix bav api entrypoint
* support DB_POSTGRES_URL on ingester/indexer for backwards compat
* remove build
---------
Co-authored-by: Devin Ivy <devinivy@gmail.com>
* first pass on profiles
* quick test
* wip
* wip
* test post thread
* record embeds
* get author feed profiles
* wip timeline
* fix get timeline
* switch from counter to tid
* tidy into a service
* quick tid test
* pr feedback
* clock -> rev
* update image formatting
* disable migration & build branch
* add recent posts to getAuthorFeed & handle post thread not found errors
* refactor for lag header
* tidy
* rm collections check
* tidy test
* pr feedback
* fix small bug
* build branch
* get migrations into system
* enable migrations
* Add self-label schemas
* switch around array and union for self-labels
* apply self-labels to post and profile views
* test for self labels in pds
* apply self-labels to post and profile views in bsky appview
* test for self labels in bsky appview
* update pds proxied test snapshots
* Add support for self-labels to the mdoeration sdk
* Disable unknown-labeler filtering until 3P support is added
---------
Co-authored-by: Devin Ivy <devinivy@gmail.com>
* labeler: remove redundant 'underwear' label
This commit contains no change to mod policy, app behavior, etc.
We have been creating redundant "underwear" labels along with "sexual"
for many months. "sexual" is the actual label that gets actioned in mod
preferences, etc. The un-specified "underwear" labels are confusing and
take up resources on-disk and in API responses.
* reflect in appview
---------
Co-authored-by: dholms <dtholmgren@gmail.com>
* tighten fuzzy actor search for larger dataset
* add indexes to support post deletion on feed_item, listing user invites on invite_code
* fix migration whitespace
* temp comment migrations and build
* Revert "temp comment migrations and build"
This reverts commit 225d2c00cce1885f2d2cffc4724843eda4b01cee.
* add lexicon for unspecced applyLabels procedure
* implement label push to pds via unspecced.applyLabels
* add hive retry to bsky appview
* build
* update applyLabels to work with raw label data
* update bsky hive labeler
* remove build
* Allow setting a note when enabling/disabling invite codes
* Add inviteNote to repoView
* ✅ Add test for inviteNote
* ✨ Set to null when note is empty
* ✨ Change note from text to varchar
* 📝 Better description
* setup redis infra for appview indexer
* barebones bsky ingester
* add ioredis to bsky
* remove some indexer functionality from bsky api
* setup for bsky indexer
* tidy
* tidy, observe basic pipeline functioning
* process messages on bsky indexer pipeline, tidy tests and lifecycle
* trim partitions when moving cursor
* simplify config for partitions
* misc fixes for redis setup in bsky tests, add namespacing
* fix pds proxy tests
* remove cursor state from indexer partitions, simplify ingester state
* tidy
* utils for testing w/ multiple indexers, fix off-by-one xtrim
* test reingesting
* test indexer repartitioning
* add entrypoints for bsky ingester and indexer, fix db schema config, api entrypoint name, tidy
* setup and test bsky ingester backpressure, add config
* tidy
* add missing test file
* tidy redis calls, add redis sentinel config
* tidy/test some utils used in bsky pipeline
* tidy bsky pipeline tests, move helpers into dev-env
* fix pds crud test
* support redis host and password config
* better loggin/observability in ingester and indexer, make build
* add bsky ingester initial cursor config
* temporarily remove migrations from indexer/ingester
* allow ingester to batch
* packages/pg becomes packages/dev-infra with some cleanup (#1402)
* packages/dev-infra/
* Extract packages/dev-infra/_common.sh and use it
* Use period instead of source because of /bin/sh
* add docs for redis test script
* fix repartition test
* add logs to debug ci
* simplify repartitioning test, remove ci logs
---------
Co-authored-by: Jerry Chen <jerry@redelm.net>
* fix up bug in actor service
* add in hydrate methods
* build fix
* couple more fixes
* tidy
* port to appview
* dont build branch
* fix issue with items in list
* tidy
* dont build branch
* quick fix
* add idx to post table & tweak feed construction
* comment out migration & build branch
* split out queries
* couple tweaks
* bugfix in with-friends
* lower feed data threshold
* return to subquery
* log injection on tracing
* Tweak timeline migraiton (#1369)
* v0.4.3
* tweak timeline migraiton
* misspelling
* move mutes & blocks to pds
* moar tweaks
* joins with 1 day cutoff
* no blocks/mutes on with friends
* attempt forcing custom plan
* increase feed date threshold
* trying something out
* trying something more
* tidy
* lower timeline date threshold
* tidy