Commit Graph

465 Commits

Author SHA1 Message Date
Foysal Ahamed 0748d919d1 🐛 Allow querying for reviewNone status in ozone (#4360)
* 🐛 Allow querying for reviewNone status in ozone

* 📝 Add knownValues for reviewState
2025-11-21 00:10:56 +01:00
Foysal Ahamed 032abf6b50 Update ozone action scheduler to queue emailing (#4340)
*  Update ozone action scheduler to queue emailing

* 🧹 Cleanup

* 📝 Add changeset
2025-11-19 10:26:14 +01:00
Foysal Ahamed 9115325c7b ❇️ Ozone takedown target service (#4344)
*  Add targetServices to takedown action to drive pds vs. appview takedowns

* 📝 Add changeset
2025-11-18 21:26:33 +01:00
Eric Bailey 39b5c08e07 Clean up getPostThreadV2 in prep for future work (#4269)
* Deprecate prioritizeFollowedUsers, codegen

* Remove from agent response types

* Remove codepaths

* Format

* Changeset

* Remove fields entirely

* Changeset

* Swap changeset
2025-11-05 11:11:32 -06:00
bnewbold 94ddc8219c resolveLexicon endpoint (#4227)
* Add resolveLexicon.json for lexicon resolution

* Update lexicons/com/atproto/lexicon/resolveLexicon.json

* chore: formatting and linting

* chore: Adding changeset information

* documentation: Updating descriptions for properties.

* refactor: Updating com.atproto.lexicon.resolveLexicon lexicon schema from PR discussion and feedback

* Update lexicons/com/atproto/lexicon/resolveLexicon.json

Co-authored-by: Nick Gerakines <12125+ngerakines@users.noreply.github.com>

* tweak changeset

* lexicon codegen

---------

Co-authored-by: Nick Gerakines <12125+ngerakines@users.noreply.github.com>
Co-authored-by: Matthieu Sieben <matthieusieben@users.noreply.github.com>
2025-11-02 12:04:06 -05:00
Eric Bailey 15fe80c39f Add optional via property to follow records (#4317) 2025-10-29 17:16:06 -05:00
Eric Bailey cdb6b27fc6 [TS-160] Add debug field to PostView and ProfileView*s (#4297)
* Add debug field to lex and proto, codegen

* Include debug field for DIDs configured via env var

* Gen bufs

* Update types and view

* Add debug field to profile views

* Safely populate debug field

* Format

* Use util

* Simplify existence check

* Values may be undefined

* Clarify type

* Update descriptions

* Include default value for dev-env

* Add test harness

(cherry picked from commit 7e49b4cf4cf3cbb989114540081e74f7a34acb6f)

* Use unknown field type instead of serializing

* KISS keep it set stupid

* Fix comments

* Differentiate between source of debug

* Add matching profile view test

* Specifying types of the merged objects isn't really helpful

* Changeset

* Add comment

* Put includeDebugField on HydrateCtx and use in views

* Mutate TestNetwork innards for tests

* Format

* Use separate debug schema for profile test

* Little more terse

* Oops, remove last usage

* Remove vestigial props

* Include other actor metadata

* Simply views, remove debugField
2025-10-28 11:59:50 -05:00
Foysal Ahamed 601401afce Add account level strike count in ozone (#4279)
*  Add account level strike count in ozone

*  Update test snapshot

* 📝 Update lexicons

* 🧹 Cleanup

*  Allow objects in policy-sev level association

*  Allow negative strikeCount

* 📝 Add changeset
2025-10-27 16:45:22 +01:00
Eric Bailey 386f583cff Bump threadgate limits (#4268)
Bump threadgate max hidden replies to 300
2025-10-10 10:03:01 -05:00
Eric Bailey 1cb5b9b80c Finalize report reasons (#4262)
* Finalize report reason lexicons

* Codegen

* Update NEW_TO_OLD_REASON_MAPPING in Ozone

* Changeset
2025-10-08 09:39:20 -05:00
Foysal Ahamed 591de19524 Ozone delayed action (#4241)
*  Add delayed takedown feature to ozone

*  Apply tag auth check and add takedown event push

*  Add tests for takedown restrictions

* 🐛 Remove only test block

* 🐛 Add service forwarding

*  Copy event properties into scheduled takedown event

* 🧹 Cleanup

* 🐛 Make statuses required in listScheduledActions

* 🐛 Define required field in lexicon

*  Add tag when scheduling and cancelling scheduled takedown
2025-10-04 12:56:55 +02:00
rafael 7f38ee03c0 Add pronouns to profileView and profileViewBasic (#4232) 2025-09-26 18:02:37 -03:00
rafael 1a5d7427bf Endpoint for onboarding starter packs (#4228) 2025-09-25 17:39:34 -03:00
rafael 8dc4caf558 Expand profile fields (#4224) 2025-09-24 17:30:10 -03:00
Foysal Ahamed 55cc15cdd6 Add ozone proxy for revokeCredentials endpoint (#4170)
*  Add ozone proxy for revokeCredentials endpoint

* 📝 Add changeset

*  Add mod event for revoke credentials

*  Add tests
2025-09-09 14:13:48 +02:00
Matthieu Sieben 8914f9abde Allow encoding scope claims of oauth access token JWT (#4149)
* Refactor token decoding

* Add scope decoder to pds

* tidy

* tidy

* tidy

* tidy

* review changes

* Add scope normzlization utility

* wording in lexicon

* Add specific error

* style

* tidy

* Update `AccessTokenMode` enum values to be more meaningful

* tidy

* Update .changeset/brown-boxes-bow.md

Co-authored-by: devin ivy <devinivy@gmail.com>

* Add retry strategy

* lint

* lint

---------

Co-authored-by: devin ivy <devinivy@gmail.com>
2025-09-09 12:13:34 +02:00
Eric Bailey a5b20f0218 Add expanded moderation report reasons (#3881)
* Integrate new reporting reasons

* Update bnn to BNR, prefix all with reason* to match previous

* Remap deprecations

* Update naming, add notes about Bluesky-only reasons

* Update reason

* Move new defs to tools.ozone namespace

* Add ozone lexicons to app view

* Copy known values to merge defs

* Update comments

* Add reasonAppeal to new ozone namespace defs

* Changeset

* ❇️ Support new reporting categories in ozone (#3974)

*  Validate report reason using labeler service profile

*  Rename test

* :rotating_lights: Fix lint issue

*  Use both appeal reason type for materialized views

*  Add old to new reason mapping for fallback

*  Update test snapshot

* :rotating_lights: Fix lint issue

* 🧹 Cleanup

* :rotating_lights: Fix lint issue

*  Adjust report reason tagging

* 📝 Additional comment for new migration

---------

Co-authored-by: Foysal Ahamed <foysal@blueskyweb.xyz>
2025-09-02 21:40:31 +02:00
rafael 64100a75b3 Bookmarks (#4163) 2025-09-02 10:28:34 -03:00
David Buchanan 66dbf8db6d revokeAccountCredentials lexicon (#4142)
* lexicons: add com.atproto.temp.revokeAccountCredentials

* codegen

* changeset
2025-08-28 10:17:12 -04:00
Foysal Ahamed 3156ddf615 Add batchId filter for queryEvents (#4109)
*  Add batchId filter for queryEvents

* 📝 Add changeset
2025-08-20 21:39:24 +02:00
rafael c370d933b7 Lists API improvements (#4081)
* Add purposes filter to app.bsky.graph.getLists

* Add getListsWithMembership

* Add getStarterPacksWithMembership

* Refactor list membership hydration

* changeset

* update getStarterPacksWithMembership lexicon output

* bsky: address feedback on list api improvements

* tidy

* tidy

---------

Co-authored-by: Devin Ivy <devinivy@gmail.com>
2025-08-05 01:06:05 -04:00
Foysal Ahamed 171efadb49 ❇️ Ozone events timeline (#3927)
* 🚧 WIP

*  Blend in plc and account history events in account timeline

*  Adjust snapshot

* 🧹 Cleanup and address review comments

*  Update test snapshot

* 🐛 Add back the helper function

* 📝 Add explainer comment

*  Map plc events to conforming naming convention

*  Update test snapshot

* 🧹 Cleanup

*  Add known values for event types

* 📝 Add changeset
2025-08-04 20:37:05 +02:00
rafael 9751eebd71 Cleanup app.bsky.unspecced.checkHandleAvailability (#4072) 2025-07-29 17:00:05 -03:00
Eric Bailey 8787fd9dea Prevent assured user from re-initiating (#4058)
* Validate user status before initiating

* Format

* Add test, not working yet

* Fix test

* Import order

---------

Co-authored-by: rafael <rafael@blueskyweb.xyz>
2025-07-18 14:13:25 -05:00
rafael dc84906c86 checkHandleAvailability endpoint (#4049) 2025-07-17 16:09:14 -03:00
rafael 77c6dffd0b AA fixes (#4050) 2025-07-16 15:13:21 -03:00
Foysal Ahamed 3b356c5096 External ID in ozone events to help dedupe events (#4048)
*  Add externalId to ozone events for deduping events per subject and event type

* 📝 Add changeset

*  Move duplicate event check inside transaction
2025-07-15 18:32:22 +02:00
rafael 083566ddfc Endpoint for unregistering push notifications (#4041)
Co-authored-by: Samuel Newman <mozzius@protonmail.com>
2025-07-14 20:06:22 -03:00
rafael 88c1364274 APIs for age assurance compliance (#4028)
Co-authored-by: Eric Bailey <git@esb.lol>
2025-07-11 19:09:18 -03:00
Foysal Ahamed 926193f825 Ozone support for age assurance compliance events (#4029)
* 🚧 WIP

*  Make age assurance state queryable

*  Split age assurance events into 2

*  Implement admin and user state overrides

*  Add blocked as a known value for age assurance state

*  Update test snapshot

*  Update test snapshot

*  Cleanup
2025-07-11 18:00:55 +02:00
Jim Calabro c73d913354 Pass Through Age Restricted Status on Device Push Tokens (#4030)
* add ageRestricted to lexicon

* make codegen

* update courier proto

* pass through ageRestricted

* make fmt
2025-07-10 17:22:09 -04:00
Foysal Ahamed 0c0381a2bb ❇️ Ozone user agent (#3991)
*  Add userAgent tracking for events

* :rotating_lights: Fix lint issue

* ♻️ Refactor userAgent to modTool

*  Rename extra to meta

* 📝 Add changeset

*  Support modTools param in createReport

*  Add support for mod tool in createReport
2025-07-02 22:34:15 +02:00
Foysal Ahamed 02c358d0ca Adds safelink module (#3945)
*  Adds safelink module

*  Remove createdAt timestamp bloat

* :rotating_lights: Fix lint issue

* 🐛 Fix pagination

* 🔨 Refactor safelink rule table

* 🧹 Add better default

*  Better search params

*  Remove mod requirement for query rules and events

*  Cleanup search for queryEvents

* 📝 Add changeset

* :rotating_lights: Fix lint issue

* 🧹 Adjust as per review feedback

*  Add support for sort direction in safelink rules

* :rotating_lights: Fix lint issue

*  Split input and response object shape

* :rotating_lights: Fix lint issue
2025-07-02 21:17:38 +02:00
Samuel Newman 8a0f190399 Subscribe to activity implementation (#3908)
Co-authored-by: rafael <rafael@blueskyweb.xyz>
2025-06-30 18:43:27 -03:00
Samuel Newman bb65f7a6e2 Add subscribed-post notification reason (#4005)
* add new notification reason

* changeset
2025-06-30 07:53:56 -07:00
rafael 6cd1202065 Subscribe to activity lexicons (#3990)
* Activity subscription lexicons

* Update lexicons/app/bsky/notification/declaration.json

Co-authored-by: surfdude29 <149612116+surfdude29@users.noreply.github.com>

* update codegen

---------

Co-authored-by: Samuel Newman <mozzius@protonmail.com>
Co-authored-by: surfdude29 <149612116+surfdude29@users.noreply.github.com>
2025-06-24 03:43:53 -07:00
Samuel Newman 97ef116571 Rename filter -> include (#3966)
* rename filter -> include

* changeset

* fix tests
2025-06-17 13:45:49 -04:00
Samuel Newman a48671e730 Notification preferences V2 endpoints (#3901)
Co-authored-by: surfdude29 <149612116+surfdude29@users.noreply.github.com>
Co-authored-by: rafael <rafael@blueskyweb.xyz>
2025-06-06 18:29:05 -03:00
Eric Bailey c6eb8a12e2 Update V2 additional replies naming convention (#3929)
* Rename

* Import sorting
2025-06-06 10:54:36 -05:00
Eric Bailey a5cd018bd5 Unify getPostThreadV2 and getPostThreadHiddenV2 responses (#3912)
Co-authored-by: rafael <rafael@blueskyweb.xyz>
2025-05-31 16:25:25 -03:00
rafael f6d5a467e7 Fix handling following users in threads v2 (#3909) 2025-05-29 13:01:11 -03:00
Foysal Ahamed 37b5a4ef29 🐛 Add missing union ref to ozone mod subject (#3605) 2025-05-28 10:30:54 +02:00
Foysal Ahamed fe2a1d12bb 🐛 Add datetime format in lexicon def for createdAt field on grantVerification input (#3829) 2025-05-28 10:30:43 +02:00
rafael 1dae6c59ab Add app.bsky.unspecced.getPostThreadV2 (#3825)
Co-authored-by: Eric Bailey <git@esb.lol>
2025-05-27 22:12:12 -03:00
Samuel Newman 79a75bb1ed Referred likes lexicon changes (#3882) 2025-05-26 19:28:59 +03:00
bnewbold 24e20b96c6 lexicons: update searchPosts to indicate it isn't always available publicly (#3844)
* update searchPost description to clarify it may or may not be public

* codegen
2025-05-20 21:04:40 -07:00
hailey 80f402f366 add reqId to interactions (#3869) 2025-05-20 14:45:19 -07:00
rafael 86b3153884 Add liveNow to app.bsky.unspecced.getConfig (#3860) 2025-05-16 17:01:37 -03:00
rafael 3a65b68f7d Actor status lexicon and views (#3824) 2025-05-05 17:35:10 -03:00
Foysal Ahamed 45354c84f8 ❇️ Verifications manager in ozone (#3765)
* First vouch implementation

* Remove unneeded endpoints

* wip

*  wip

*  Process jetstream events through p-queue and add tests

*  Add test for cursor update

* 🐛 Use utc time to update updatedAt

* 🧹 Cleanup

* 🔨 Fix pnpm versioning issues

*  Replace jetstream lib with manual implementation

*  Remove unnecessary 3p dep

*  Add e2e test for jetstream

* 🚨 Fix import

* 🧹 Remove unnecessary property

*  Fix dev-env and add profile to verification view in ozone

*  Add profile type

*  Add backpressure handling to jetstream listener

*  Use WebSocketKeepAlive from xrpc-server and replace partysocket

*  Add a new verifier role to ozone team meber roles

* 📝 Run codegen

* 🐛 Fix auth check

* 🐛 Fix test failure check

* 🚨 Fix json formatting

* 🐛 Fix team role check

* 🚧 Checking failing test

*  Fix tests

*  Address review comments

*  Add xrpc-server to version

* 🚨 Fix linter issue

* 🚨 Fix linter issue

*  Resolve race condition in cursor update

*  Add verification check on profile

* 🐛 Fix missing cid in test and firehose cursor

*  Fix test

*  Add record validation for verification and separate xrpc-server version

*  Return error object for failed revocations

*  Add re-login on expired session case

* 📝 Fix typo

---------

Co-authored-by: rafael <rafael@blueskyweb.xyz>
2025-04-24 10:49:45 +02:00