615 Commits

Author SHA1 Message Date
Daniel Holmgren
30b05a7d4b
Account migration (#2179)
* draft of account migration lexicons

* format

* clean up schemas

* codegen

* second pass on schemas

* small fix

* move around checkImportStatus

* re-codegen

* getServiceAuth

* getServiceAuth impl

* importRepo impl

* handle uploadBlob for import

* allow bringing your own did on createAccount

* working on test flow

* fleshing out flow

* fix up sendPlcOP

* small fixes

* activate/deactivate account

* full flow working!

* schema tweaks

* format

* update schemas

* moar codegen

* match impl to new schemas

* email flow for signed plc operation

* add email flow for plc operations

* impl plc op request email

* proxy to entryway

* tidy activate account

* integrating account deactivated state

* fix up tests

* friendly parse on optional did auth

* admin activate/deactivate routes

* proxy relevant requests to entryway

* remove admin activation routes

* do not proxy acitvaition to entryway

* cfg for disallowing imports

* buff up test

* refactor listMissingBlobs a bit

* add validDid & activated to accoutn status

* emit event on account activation

* test creating a post after migrating

* account deactivation tests

* test name

* tests on plc operations

* fix recommended did creds

* codegen

* turn off accepting imports on createAccount

* undo prev change

* increment version

* build branch

* pr feedback

* handle errs in p-queue

* handle blob upload outside of txn

* Clean old temp account migration lexicons (#2187)

* clean old temp lexicons

* rm old test

* fix agent session test

* fix bsky test

* dont build branch
2024-02-20 19:29:49 -06:00
Daniel Holmgren
4c511b3d9d
Account migration schemas (#2170)
* draft of account migration lexicons

* format

* clean up schemas

* second pass on schemas

* small fix

* move around checkImportStatus

* getServiceAuth

* schema tweaks

* format

* update schemas

* email flow for signed plc operation

* refactor listMissingBlobs a bit

* codegen

* return did in describeServer

* changeset
2024-02-20 19:23:56 -06:00
github-actions[bot]
1cce9ddb34
Version packages (#2193)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2024-02-19 11:27:59 -05:00
Foysal Ahamed
d81573232b
Allow filtering moderation queue by language (#2161)
*  Store languages on subjects from record data

*  Fetch lang from author feed for repo subject

*  Regenerate lex

*  Add lang to profile subject

*  Move lang to flag

*  Add comment to flag event

*  Update pds test snapshot

* 🐛 Fix broken import

*  Rename flag to tag

*  Update snapshot for event by id

*  Bring back skipped test

*  Move tags to dedicated columns

*  Update test snapshots, use logger

*  Change lang:unknown to lang:und

*  Update test snapshots

* 🧹 Cleanup

*  Add filter params for tags on queryModerationEvents endpoint

*  Add tags property to subject status model

*  Update test code

*  Add filter to get subjects that do not have certain tags
2024-02-19 10:35:03 -05:00
github-actions[bot]
6e6b94be10
Version packages (#2184)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2024-02-15 20:22:33 -06:00
Daniel Holmgren
8c94979f73
Timeline index pref (#2188)
* add following index pref

* added changeset

* change pref name

* update changeset
2024-02-15 20:12:39 -06:00
Foysal Ahamed
0acd6c180c
Include takendown posts on author feed for admins (#2172)
*  Allow admins to view author feed on takendown account

*  Add tests for admin behavior
2024-02-13 15:20:54 -05:00
Devin Ivy
b400fae24e sanity check on did part 2024-02-13 11:28:19 -05:00
bnewbold
9579bec720
update descriptions in Lexicons (#2110)
* lexicons: update descriptions in com.atproto.*

* lexicons: update descriptions in app.bsky.*

* Apply suggestions from code review

Thanks Emily!

Co-authored-by: Emily Liu <emilyliu7321@gmail.com>

* codegen description-only Lexicon updates

---------

Co-authored-by: Emily Liu <emilyliu7321@gmail.com>
2024-02-11 16:06:58 -08:00
Daniel Holmgren
758de8743d
PDS pipethrough (#2150)
* initial impl

* re-codegen

* tweak pipethrough

* wip

* read after write pipethrough

* integrate read after write

* setup pds pipethrough logic

* pipe through repo rev header

* fix up tests

* apply pipethrough to most pds routes

* apply pipethrough to remaining pds routes

* fix/tidy

* getRecord

* final details for passthrough in xrpc-server

* build

---------

Co-authored-by: Devin Ivy <devinivy@gmail.com>
2024-02-07 20:40:43 -05:00
github-actions[bot]
77118a66a7
Version packages (#2140)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2024-02-06 10:42:24 -05:00
Foysal Ahamed
e4ec7af036
Add date range and comment filter to queryModerationEvents endpoint (#2124)
*  Add date range and comment filter to queryModerationEvents endpoint

*  Add report type and label filters and tests

* tidy tests

*  commentKeyword -> comment and make comment and hasComment independent

*  Fix multiple label filter query

* 📝 Add changesets

* codegen tidy

* add changeset

* remove unused changeset

---------

Co-authored-by: Devin Ivy <devinivy@gmail.com>
2024-02-05 19:10:44 -05:00
Daniel Holmgren
cdb89c3b3b
Simplify appview automod (#2108)
* rm fuzzy matcher & abyss

* tidy dev env
2024-01-30 16:19:56 -06:00
Daniel Holmgren
f023494802
Remove appview feedgen (#2106)
* remove appview feedgen

* deprecate getTimelineSkeleton

* fix dev-env build

* rm unused test
2024-01-30 16:19:36 -06:00
devin ivy
51aa369cd0
Include dids in bsky logs (#2015)
* include dids in bsky logs

* tidy
2024-01-26 16:43:33 -05:00
devin ivy
d03ddd02e1
Appview v1 handling clearly bad cursors (#2088)
* fail open on clearly bad appview cursors

* tidy tests
2024-01-26 16:30:18 -05:00
github-actions[bot]
61bf9fbe7f
Version packages (#2097)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2024-01-25 14:20:32 -06:00
Daniel Holmgren
8994d3633a
Signup queueing - Client & PDS (#2090)
* schema + codegen

* port session refresh

* pds updates

* typo

* changeset
2024-01-25 14:16:30 -06:00
github-actions[bot]
79ec5ad95d
Version packages (#2093)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2024-01-25 13:22:42 -06:00
Eric Bailey
4171c04ad8
Add interest tags to preferences (#2086)
* Add interestsPref

* Codegen

* Update lex

* Add method to agent, test

* Codegen

* Format

* Remove console

* Update lex, codegen, update tests

* Update tests

* Format

* Add changeset

* Update property name
2024-01-25 12:05:10 -06:00
Daniel Holmgren
39fe6b5dbf
Add getRelationships route to appview (#2085)
* codegen

* add getRelationships route
2024-01-24 19:38:12 -06:00
Daniel Holmgren
43eb4054a6
Fix typo in getRelationships (#2091)
fix typo in getRelationships + codegen
2024-01-24 19:23:01 -06:00
github-actions[bot]
ffd6c25cc0
Version packages (#2082)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2024-01-24 13:36:00 -06:00
Daniel Holmgren
dac5c9e202
Tagged suggestions (#2077)
* add tagged suggestions

* fix codegen

* rm unused err
2024-01-24 09:04:09 -06:00
devin ivy
6a318b9f76
Appview v1 maintaining device tokens and pushing notifications w/ courier (#2073)
* add courier proto to bsky, build

* update registerPush on appview to support registering device tokens with courier

* setup bsky notifications to send to either gorush or courier

* wire courier push into indexer, test

* courier push retries

* tidy and build
2024-01-23 21:17:32 -05:00
devin ivy
d108310575
Appview v1 generating and ingesting mute ops w/ bsync (#2067)
* build bsync protos in appview, standardize per-package proto gen directory

* configure appview with bsync, allow mute endpoints to use bsync

* import fixes in bsync

* configure appview ingester with bsync, ingest mute ops into db

* test bsync mutes roundtrip w/ appview, setup bsync in dev-env

* build

* ensure to propagate errors when bsyncOnlyMutes is on
2024-01-22 15:48:31 -05:00
github-actions[bot]
f069c67527
Version packages (#2065)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2024-01-19 17:24:16 -05:00
Foysal Ahamed
15f38560b9
Manage communication templates for moderation purposes (#2045)
*  Add initial lexicons to manage communication templates

*  All 3 endpoints are functional

*  Add list and delete endpoints

*  Add tests for communication template CRUD

* 🔒 Allow only admins to create and update templates

* 🧹 Cleanup according to PR review

*  Make updatedBy and createdBy optional in lexicon

*  Typo

*  Allow string id and update lexicon language

*  Fix tests

*  content -> contentMarkdown

*  Change column name in db table

* add changeset

---------

Co-authored-by: Devin Ivy <devinivy@gmail.com>
2024-01-19 17:06:37 -05:00
github-actions[bot]
48298d545f
Version packages (#2063)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2024-01-18 18:09:50 -06:00
github-actions[bot]
a7000f2be5
Version packages (#2036)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2024-01-18 15:27:18 -06:00
Daniel Holmgren
bf8d718cf9
Namespace lexicon codegen (#2039)
* namespace codegen

* fix test that uses namespace prototype

* changeset
2024-01-18 15:24:38 -06:00
Daniel Holmgren
e43396af09
Phone verification schemas (#2056)
* add phone verification schemas

* lint

* codegen

* changset
2024-01-18 15:17:57 -06:00
Daniel Holmgren
07a9c89e28
Do not enforce deleted lists (#2038)
* do not enforce deleted lists

* tests
2024-01-10 18:25:53 -06:00
Dimitris Apostolou
ff2f9db97e
Fix typos (#2022) 2024-01-10 12:24:14 -06:00
Daniel Holmgren
87e4641e0c
Tidy feed generator language headers (#2037)
* tidy code & return content-language headers in res

* tidy

* no undefined headers

* tidy
2024-01-10 12:23:22 -06:00
Cooper Edmunds
50f70453a9
Pass headers to feed generator (#2030)
* Pass headers to feed generator

* Allow-list headers rather than forward all by default
2024-01-09 17:33:10 -06:00
bnewbold
51fcba7a79
remove deprecated app.bsky.unspecced.getPopular (#1988)
* remove deprecated app.bsky.unspecced.getPopular lexicon

* codegen

* remove remaining references to getPopular

* changeset for getPopular removal
2024-01-09 15:29:07 -08:00
Daniel Holmgren
e41a25fa17
Automod: create reports using emitModerationAction (#2025)
* create reports using emitModerationAction

* fix input

* dont build
2024-01-08 17:49:31 -06:00
Daniel Holmgren
de2dbc2903
Split out moderation backend (#1970)
* mv appview

* copy

* finalize copy

* package names

* big WIP

* first pass at mod servce

* some tidy

* tidy & fix compiler errors

* rename to ozone, db migrations, add to dev-env & pds cfg

* getRecord & getRepo mostly working

* fix open handle

* get record tests all working

* moderation events working

* statuses working

* tidy test suite

* search repos

* server & db tests

* moderation tests

* wip daemon + push events

* pds fanout working

* fix db test

* fanning takedowns out to appview

* rm try/catch

* bsky moderation test

* introduce mod subject wrappers

* more tidy

* refactor event reversal

* tidy some db stuff

* tidy

* rename service to mod-service

* fix test

* tidy config

* refactor auth in bsky

* wip patching up auto-mod

* add label ingester in appview

* fix a couple build issues

* fix some timing bugs

* tidy polling logic

* fix up tests

* fix some pds tests

* eslint ignore

* fix ozone tests

* move seeds to dev-env

* move images around

* fix db schemas

* use service auth admin reqs

* fix remaining tests

* auth tests bsky

* another test

* random tidy

* fix up search

* clean up bsky mod service

* more tidy

* default attempts to 0

* tidy old test

* random tidy

* tidy package.json

* tidy logger

* takedownId -> takedownRef

* misc pr feedback

* split daemon out from ozone application

* fix blob takedown mgiration

* refactor ozone config

* do push event fanout on write instead of on read

* make suspend error work again

* add attempts check & add supporting index

* fix takedown test ref

* get tests working

* rm old test

* fix timing bug in event pusher tests

* attempt another fix for timing bug

* await req

* service files

* remove labelerDid cfg

* update snaps for labeler did + some cfg changes

* fix more snaps

* pnpm i

* build ozone images

* build

* make label provider optional

* fix build issues

* fix build

* fix build

* build pds

* build on ghcr

* fix syntax in entry

* another fix

* use correct import

* export logger

* remove event reverser

* adjust push event fanout

* push out multiple

* remove builds
2024-01-05 17:06:54 -06:00
github-actions[bot]
65254ab148
Version packages (#2021)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2024-01-04 19:55:23 -06:00
Devin Ivy
5560b7a25a Revert "lexicons: more string limits (#1994)"
This reverts commit ad0d976188d1f07401b9675b5c6045c91e82a84e.
2024-01-03 16:41:07 -05:00
Foysal Ahamed
5e7b0136da
Allow appealing a moderator decision through special report type (#1969)
*  Allow appealing a moderator decision through special report type

*  Allow querying subjects by appealed status

*  Move to appealed boolean state column

*  Remove leftover

*  Move appealed status to new boolean column

*  Throw when non-author attempts to appeal a subject

* 🚨 Appease the linter gods

* build

---------

Co-authored-by: Devin Ivy <devinivy@gmail.com>
2024-01-02 19:17:42 -05:00
bnewbold
ad0d976188
lexicons: more string limits (#1994)
* limit external embed strings sizes

* set a (very large) alt text length limit

The motivation is to have *some* size limit on every string in post
records, to maximize interoperation. For example, we currently have a
CBOR library rejecting some records because of too-long strings.

We don't want to limit the ability of folks to be very descriptive in
alt text, specifically, so chose what seems to be a very large limit. If
this is not large enough, based on feedback, we can bump it even higher.
As context this is the largest string length limit in all of our
lexicons.

* make thumbnail URL fields format=uri

This mostly results in checks against the string being empty, or
unlimited size.

* codegen: string limits

* add changeset for string format lex updates
2024-01-03 00:24:32 +01:00
bnewbold
50f209e650
bsky: add top-level and robots.txt endpoints (#1979)
These provide helpful context (instead of just a generic 404).

The robots.txt in particular will show up for public.api.bsky.app
2023-12-21 18:01:21 +01:00
Foysal Ahamed
905743de9f
Optionally allow comment when sending email to be added to moderation event (#1981) 2023-12-20 09:49:21 -05:00
Foysal Ahamed
f365dc54dd
Create a mod event when automod applies labels to a record (#1927) 2023-12-20 09:47:51 -05:00
Daniel Holmgren
aadd35e1bd
Better handle 3rd party blocks in feeds (#1677)
* better handle 3rd party blocks inf eeds

* show anchor post in threads

* test
2023-12-19 11:43:16 -06:00
devin ivy
80161e3c62
Optimize timeline for limit=1 (#1971)
* optimize timeline skeleton w/ limit=1

* build
2023-12-15 15:45:31 -05:00
github-actions[bot]
2012796c3b
Version packages (#1967)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2023-12-13 18:17:15 -08:00
github-actions[bot]
8d4a87c0a8
Version packages (#1963)
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2023-12-12 15:35:52 -08:00