These commits are when the Protocol Buffers files have changed: (only the last 100 relevant commits are shown)
| Commit: | e4e6e84 | |
|---|---|---|
| Author: | Eric Bailey | |
| Committer: | GitHub | |
searchPostsV2: filter by multiple languages (#5146) Swap the singular `language` filter for a repeated `languages` field and add `excludeLanguages`, matching tango#1100. `languages` moves into `PostsFilters` (applied to both include and exclude); the singular `language` is removed from `SearchPostsV2Request` and the remaining fields are renumbered to stay byte-compatible with the upstream proto. Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com>
| Commit: | 5206b3a | |
|---|---|---|
| Author: | Eric Bailey | |
| Committer: | GitHub | |
Add `searchPostsV2` (#5114) * Initial lexicon spec * Sketch out searchPostsV2 impl * Changeset * Remove old experiment for clarity for now * Add misisng field to existing dev-env v2 impl * Update fields
| Commit: | cab3ac3 | |
|---|---|---|
| Author: | rafael | |
| Committer: | GitHub | |
update chat lexicons and deprecate chat notif pref (#5123) Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com>
| Commit: | 13eff6a | |
|---|---|---|
| Author: | Eric Bailey | |
| Committer: | Eric Bailey | |
Update fields
| Commit: | eb170f5 | |
|---|---|---|
| Author: | Claude | |
Add poll embed type to app.bsky Introduces native polls for Bluesky posts: - Lexicons: app.bsky.poll.topic (the poll record), app.bsky.poll.vote (a single-choice vote, strongRef to a topic), app.bsky.embed.poll (the post embed + pollView), and the app.bsky.poll.getVotes / app.bsky.poll.getPoll queries. Adds the embed to the post, postView, and viewRecord unions, and a "poll-ended" notification reason. - Bsky indexing: poll-topic and poll-vote plugins. Votes dedupe on (creator, subject) so only the first vote per user counts, and votes cast after a poll's endsAt are dropped. Per-option counts are denormalized into poll_option_agg. - Data plane: getPollVotesBySubject (paginated, optional option filter), getPollVotesByActorAndSubjects (viewer state), getPollVoteCounts, and getPollVoterFacepile, which prioritizes accounts the viewer follows. - Hydration + views: pollView assembles per-option counts, the viewer's vote, and a follow-ordered <=3 voter facepile per option. - Poll closing: a periodic PollCloser sweep emits a one-time poll-ended notification to the author and all voters once endsAt passes (the only time-triggered notification source); getPoll lets clients fetch full results from that notification. - Tests: end-to-end coverage in packages/bsky/tests/views/polls.test.ts. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01AinMGjbJNqE2pfaGzn6tvZ
| Commit: | a1fa46a | |
|---|---|---|
| Author: | Eric Bailey | |
Add repost-only actor mutes
| Commit: | a89e912 | |
|---|---|---|
| Author: | Eric Bailey | |
Update fields
| Commit: | 3002e9f | |
|---|---|---|
| Author: | Cam Sweeney | |
| Committer: | GitHub | |
searchv2: typeahead params envelope, arabic hint, detected langs (#5112) * searchv2: typeahead params envelope, arabic hint, detected langs * add changeset
| Commit: | 1dfab81 | |
|---|---|---|
| Author: | Eric Bailey | |
Sketch out searchPostsV2 impl
| Commit: | d5f3615 | |
|---|---|---|
| Author: | rafaeleyng | |
bsky: consume expanded notification preferences Track tango proto changes (bluesky-social/tango#1034): - rename ChatNotificationInclude.ACCEPTED -> FOLLOWS (value 2 kept) - add ChatRequestNotificationPreference message + chat_request field Wire chatRequest through the getPreferences/putPreferencesV2 lex<->proto converters and the dataplane mock, and update the chat include value from "accepted" to "follows" to match the app.bsky.notification lexicon. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
| Commit: | 0d62d5b | |
|---|---|---|
| Author: | treethought | |
| Committer: | GitHub | |
bsky: enable search v2 behind feature gate (#5035) * bsky: enable search v2 behind feature gate * wrap v1 search logic for dev env * fix features scope
| Commit: | 2c958f8 | |
|---|---|---|
| Author: | Eric Bailey | |
| Committer: | GitHub | |
Integrate `site.standard` lexicons and record hydration + new `getEmbedExternalView` (#4915) * Add rich metadata fields to app.bsky.embed.external#viewExternal * Hook up hydration * Update lexicons to match new changes * Hydrate site.standard records by ref on the read path Replaces the placeholder GetSiteStandardDocumentsWithPublication RPC with GetSiteStandardRecordsByURI and GetSiteStandardRecordsByRef to match what tango exposes. Hydration uses the ByRef variant so embedded link cards freeze to the exact record versions present at post time. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com> * Plumb hydration state into externalEmbed view Threads HydrationState through externalEmbed call sites and adds a lookup helper that resolves associatedRecords against the hydrated site.standard documents and publications by their "<uri>@<cid>" keys. Field extraction is left as a follow-up. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com> * Implement getEmbedExternalView for compose-time link cards Switches the lex query to take an array of site.standard.* URIs and return strongRefs alongside an optional viewExternal. The handler resolves URIs through GetSiteStandardRecordsByURI and emits strongRefs suitable for embedding into a post's external.associatedRecords. viewExternal field decoration and verification are left as follow-ups. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com> * Update getEmbedExternalView lex, update code to use new lexicons * Integrate new protos and response shapes * Update lexicons * Hydrate labels for site.standard.* URIs and gate on takedown Appends site.standard record URIs to the post-hydration label fetch so state.labels carries entries for every SS doc/publication referenced by an embed. Adds actionSiteStandardTakedownLabels to drop hydrated SS records whose labels include a takedown from a redacting labeler. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com> * Decorate viewExternal with site.standard records externalEmbed now layers a site.standard-derived overlay on top of the post's embed values, so hydrated document/publication fields override title/description/thumb/createdAt/updatedAt/labels/source while uri and associatedRefs always come from the post. The overlay is exposed as externalEmbedFromStandardSite for reuse. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com> * Wire getEmbedExternalView through site.standard hydration Adds Hydrator.hydrateEmbedExternalViewFromUris which filters input URIs to site.standard.*, hydrates the latest record versions plus labels, and gates taken-down records. The handler runs that hydration, builds associatedRefs/Records from the surviving entries, and produces a view via Views.externalEmbedFromStandardSite. Adds a required `url` param to the lex so the returned viewExternal can carry the user's pasted share URL as its `uri`. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com> * Refactor getEmbedExternalView to createPipeline Adopts the skeleton/hydration/rules/presentation pattern used by other query handlers (searchPosts, getFeedGenerators) for parity. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com> * PR review nits - Clarify in the getEmbedExternalView lex that `view` is optional - Simplify the no-fields-set branch in buildExternalEmbedSourceTheme - Make externalEmbed's overlay spread order robust to future overlay fields by re-setting uri and associatedRefs after the spread Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com> * Extract site.standard hydrator into hydration/external.ts Splits the SS record types, key helpers, AssociatedSiteStandardRecord type, and the two getSiteStandardRecords RPC wrappers out of feed.ts and the SITE_STANDARD_NSID_PREFIX const out of hydrator.ts into a new ExternalHydrator class. The Hydrator gains an `external` field mirroring how actor/feed/graph/label are mounted, and call sites move from this.feed.* to this.external.*. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com> * PR review nits - Refresh siteStandardRefsFromPosts JSDoc to reflect uri@cid map keys - Note in the getEmbedExternalView handler why we pass over the hydration maps twice - Move AssociatedSiteStandardRecord back to views/index.ts since it's internal to that module's view-building helpers Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com> * Thread includeTakedowns through read-path SS hydration The compose-time hydrator method already forwards ctx.includeTakedowns; mirror it on the read path so parseRecord respects the same flag and takedown gating stays consistent across the two entry points. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com> * Fix var shadowing * Update changeset * Update lex, update codepaths * Merge labels * Format * Remove comment * Prune publications not referenced by any hydrated document The dataplane auto-resolves a document's `site` field, so a request can return a publication the caller never asked for. If the caller also passed a publication URI that doesn't match any document's `site`, that publication is dropped to keep the response strictly tied to the documents we returned. Publication-only resolution (no documents hydrated) skips the prune. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com> * Format * Estimate reading time from document.textContent Uses a coarse 200wpm word-count heuristic to populate viewExternal's readingTime when a document has plaintext content. Factored into a helper so swapping in a library later is a one-function change. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com> * Move publication pruning into the getEmbedExternalView handler The hydrator method goes back to a generic "fetch what was requested" shape. Request-shape semantics — i.e. dropping publications the dataplane auto-resolved that the caller didn't actually ask for — now live in presentation, alongside the rest of the response assembly. collectAllowedPublicationUris is exported from hydration/external for reuse. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com> * Extract site.standard helpers into util/standard-site.ts Moves SITE_STANDARD_NSID_PREFIX, the (uri, cid) key helpers, collectAllowedPublicationUris, AssociatedSiteStandardRecord, lookupAssociatedSiteStandardRecords, and estimateReadingTimeMinutes out of hydration/external and views/index into a single util module. The util keeps no hydration imports — collectAllowedPublicationUris and lookupAssociatedSiteStandardRecords are typed structurally over the record-info shapes they read. Also tightens the getEmbedExternalView handler: empty maps return early, publications get pruned only when documents are present, and the view is always returned with the request's `url` and overlay-derived title/description (falling back to empty strings) when any record was hydrated. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com> * Move SS hydration-state lookup back to hydration/external The util-level helper went generic over the doc/publication info shape, which lost the documented hydration-map types (and their `uri@cid` key docblocks) at the call boundary. Move it next to buildSiteStandardRecordsHydrationMaps under the more discoverable name getSiteStandardRecordsFromHydrationMaps and type it concretely against SiteStandardDocuments/Publications. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com> * Mirror takedowns across site.standard doc/pub pairs Fold the per-record null sweep and the cross-pair sweep into a single actionSiteStandardTakedownLabels(documents, publications, labels) so neither read- nor compose-path callers can forget the second half. If either side of a doc/publication pair (discovered via doc.record.site) is taken down, mirror the null onto the other side; orphan docs and orphan publications still get the per-record sweep. Also: in the view layer, treat the document as authoritative for title/description as a unit — don't blend a doc's title with a publication's description. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com> * Split externalEmbedFromStandardSite into ref- and record-based variants externalEmbedFromStandardSite stays as the read-path entry point, resolving doc/publication via the by-ref lookup against state, then delegates to externalEmbedFromStandardSiteRecords which owns the overlay-building body. The compose-path handler now captures the first hydrated doc/publication during its existing pass over the SS maps and calls the records variant directly, eliminating the redundant second walk. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com> * Dispatch presentation by hydrated record type `presentation` is now a thin dispatcher that hands off to a `standardSitePresentation` helper when site.standard records were hydrated, returning `{}` otherwise. Future record types get their own branch. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com> * Document empty-string contract on getEmbedExternalView output When the resolved records don't supply title/description, those fields land as empty strings on the returned view rather than the view being omitted. Spell that out in the lex description and at the build site so clients know to treat empty values as 'no enrichment' rather than 'titleless content.' Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com> * Inline gate for publication allow-set Collapse the `prunePublications` flag into the allow-set itself: when no docs were hydrated, `allowedPublicationUris` is `undefined` and the publication loop allows everything; an empty set still means "constraint exists, nothing matches" and drops every publication. Removes the second variable that encoded the same rule. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com> * Validate site.standard records against the assumed URL Both view-layer entry points now take an `assumedUrl` (the post's external.uri on the read path, the request's `url` on compose) and pass it through to validateStandardSiteForUrl. The validator mirrors the spec's rule tree: - Doc + publication: doc.site must resolve to the hydrated publication, and publication.url + document.path must equal assumedUrl. - Loose doc: doc.site must be HTTP and doc.site + document.path must equal assumedUrl. - Publication only: publication.url must equal assumedUrl. URL comparison normalizes via the WHATWG URL constructor (resolving path against base, lowercase host, dropping query/fragment, stripping trailing slash). On failure, the overlay is dropped and clients fall back to the bare embed. Adds parameterized tests covering the rule tree and the URL normalization cases. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com> * Reject misconstructed doc/pub pairings during ref lookup When `associatedRefs` carries both a document and a publication, the hydration-map lookup now requires the doc's `site` field to equal the publication ref's URI; mismatches return both slots as `undefined` rather than silently rendering enrichment from records that don't agree. Doc-only and publication-only refs pass through unchanged. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com> * Symmetric SS lookup contracts across read and compose paths Splits the SS hydration-map lookup into two named sister functions: - getSiteStandardRecordsFromHydrationMapsByRefs (read path) trusts the post's strongRefs and rejects pairs that disagree, including the case where a doc declares an at-uri `site` but no matching publication ref was pinned. - getSiteStandardRecordsFromHydrationMapsByDocumentUri (compose path) takes the first hydrated doc and pairs it with the publication its `site` field points at, rejecting the whole pairing when the declared publication wasn't auto-resolved. The handler now uses the compose-path variant directly, so the firstDoc/firstPub capture, the allowed-publications prune, and collectAllowedPublicationUris all go away. By the time externalEmbedFromStandardSiteRecords runs, both paths guarantee the same contract: doc+pub agree on URI, doc-only means loose doc, pub-only means publication-only flow, otherwise both slots are undefined. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com> * Test the SS hydration-map lookups Covers both byRefs (read-path strict) and byDocumentUri (compose-path doc-first) variants, including the doc/pub pair-match invariant, the loose-doc and publication-only branches, the bail-out when a doc declares an at-uri publication that wasn't hydrated, and version-exact lookup misses. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com> * Tighten validation and the empty-overlay contract - validateStandardSiteForUrl is now URL-match only; the structural pair-agreement and orphan-doc checks live exclusively in the hydration-map lookups (`hydration/external.ts`). Function and test comments cross-reference where each layer enforces what. - externalEmbedFromStandardSiteRecords now bails out and returns undefined when the chosen pair can't supply both `title` and `description`. The handler treats an undefined overlay the same as "nothing hydrated" and returns `{}` so Cardy falls back to its own card render and skips writing strongRefs to the post. - Lex description on getEmbedExternalView updated: empty-string fallbacks for title/description are gone; the response is empty when records are missing or validation fails. - Lookup JSDocs cross-reference each other: same observable contract, different upstream guarantee. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com> * Drop unused collectAllowedPublicationUris The handler-side prune got obsoleted by the doc-first lookup (getSiteStandardRecordsFromHydrationMapsByDocumentUri), which only emits the publication a hydrated doc points at. No callers remain. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com> * Remove untracked new codegen files * Remove untracked new codegen files for Ozone * Update comments * Refresh comments on the SS external-embed view methods The overlay is now a fully-populated `viewExternal['external']` (uri, title, description always set), not a partial. Update the JSDocs and the read-path spread comment to match: drop the "partial overlay" / "uri intentionally excluded" framing, explain the new return shape, and note that the spread on the read path layers SS-derived fields over post-author-supplied ones with `associatedRefs` re-set last because the post is authoritative. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com> * Stick to convention * Fmt * Untrack generated files --------- Co-authored-by: Claude Opus 4.7 <noreply@anthropic.com>
| Commit: | 733d557 | |
|---|---|---|
| Author: | rafael | |
| Committer: | GitHub | |
update courier proto (#4919)
| Commit: | dacb0e8 | |
|---|---|---|
| Author: | rafael | |
| Committer: | GitHub | |
group chat declaration hydration (#4868) Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
| Commit: | efb2b58 | |
|---|---|---|
| Author: | Eric Bailey | |
| Committer: | GitHub | |
[APP-1926] Add bsync delete operations support (#4745) * Add bsync handlers for deletion request * Add test * Changeset * Abtract util, add comments
| Commit: | 5905eb9 | |
|---|---|---|
| Author: | rafael | |
| Committer: | GitHub | |
Drafts implementation (#4549)
| Commit: | 9bdd358 | |
|---|---|---|
| Author: | bnewbold | |
| Committer: | GitHub | |
Experiment: wire-through germ chat declaration in bsky appview backend (#4415) * lexicons: add germ chat declaration record, and ref from profile view * codegen germ record for bsky pkg * make lex-client build happy by including germ ref * add germ chat declaration methods to dataplane .proto * dataplane codegen * start wiring up germ chat records * germ lex in api package * api codegen * initial attempt at germ record test * update germ lexicon * make codegen * updates for germ declaration NSID rename * implement new germ hydration * more progress on germ integration * fix germ profile test The main issue here was forgetting the '.associated.' bit in the data path. * remove unnecessary germ imports/refs * hydrate germ metadata in basic profile view (as per schema) * type fixes for germ appview test * prettier * synchronize bsky.proto with dataplane; run buf:gen * add changeset for Germ declaration records
| Commit: | 6d9a326 | |
|---|---|---|
| Author: | rafaeleyng | |
store createdAt
| Commit: | b0405fb | |
|---|---|---|
| Author: | rafaeleyng | |
rename savedAt -> updatedAt
| Commit: | 4fc0ee2 | |
|---|---|---|
| Author: | rafaeleyng | |
| Committer: | rafaeleyng | |
implementation
| Commit: | 57811e4 | |
|---|---|---|
| Author: | Eric Bailey | |
| Committer: | GitHub | |
Reserve field on ActorInfo (#4469)
| Commit: | 397c62f | |
|---|---|---|
| Author: | Jim Calabro | |
| Committer: | GitHub | |
Sitemap Handlers (#4434) * add sitemap protos * cd packages/bsky && npm run buf:gen * implement user sitemap handlers * add a test * lint:fix * use /external * use Readable pipe for slightly more effecient data transfer * rename functions to include the word user * improve not found case and add test
| Commit: | 380aa3b | |
|---|---|---|
| Author: | rafael | |
| Committer: | GitHub | |
appview: Contact import lexicons (#4393)
| Commit: | 90f1569 | |
|---|---|---|
| Author: | Eric Bailey | |
| Committer: | GitHub | |
Age Assurance V2 (#4407) Age Assurance v2 endpoints and config
| Commit: | 532b228 | |
|---|---|---|
| Author: | Eric Bailey | |
| Committer: | GitHub | |
[APP-1484] Add thread/search exploration code and feature gate (#4327) * Add ranking exploration code and feature gate * Import sort
| Commit: | b52e981 | |
|---|---|---|
| Author: | Eric Bailey | |
| Committer: | Eric Bailey | |
Add debug field to lex and proto, codegen
| Commit: | cdab1a2 | |
|---|---|---|
| Author: | Eric Bailey | |
| Committer: | Eric Bailey | |
Gen bufs
The documentation is generated from this commit.
| Commit: | 63f6f33 | |
|---|---|---|
| Author: | rafael | |
Bookmarks moderation endpoints
| Commit: | 64100a7 | |
|---|---|---|
| Author: | rafael | |
| Committer: | GitHub | |
Bookmarks (#4163)
The documentation is generated from this commit.
| Commit: | 083566d | |
|---|---|---|
| Author: | rafael | |
| Committer: | GitHub | |
Endpoint for unregistering push notifications (#4041) Co-authored-by: Samuel Newman <mozzius@protonmail.com>
| Commit: | 91bc841 | |
|---|---|---|
| Author: | rafael | |
| Committer: | GitHub | |
Update proto to keep up with latest changes (#4040)
| Commit: | 88c1364 | |
|---|---|---|
| Author: | rafael | |
| Committer: | GitHub | |
APIs for age assurance compliance (#4028) Co-authored-by: Eric Bailey <git@esb.lol>
| Commit: | 10ce5c4 | |
|---|---|---|
| Author: | rafael | |
| Committer: | rafael | |
Verification response flow
| Commit: | 5cb628d | |
|---|---|---|
| Author: | rafael | |
| Committer: | rafael | |
Fix up XPRC endpoints
| Commit: | 8c7ba2e | |
|---|---|---|
| Author: | Eric Bailey | |
| Committer: | rafael | |
Initial implementation
| Commit: | c73d913 | |
|---|---|---|
| Author: | Jim Calabro | |
| Committer: | GitHub | |
Pass Through Age Restricted Status on Device Push Tokens (#4030) * add ageRestricted to lexicon * make codegen * update courier proto * pass through ageRestricted * make fmt
| Commit: | 23f3ee2 | |
|---|---|---|
| Author: | rafael | |
| Committer: | rafael | |
Verification response flow
| Commit: | bf83ab0 | |
|---|---|---|
| Author: | Eric Bailey | |
| Committer: | rafael | |
Initial implementation
| Commit: | 2991c85 | |
|---|---|---|
| Author: | rafael | |
| Committer: | rafael | |
Fix up XPRC endpoints
| Commit: | 722ab08 | |
|---|---|---|
| Author: | rafael | |
| Committer: | rafael | |
Verification response flow
| Commit: | b352080 | |
|---|---|---|
| Author: | rafael | |
| Committer: | rafael | |
Fix up XPRC endpoints
| Commit: | 06441ee | |
|---|---|---|
| Author: | rafael | |
| Committer: | rafael | |
Fix up XPRC endpoints
| Commit: | 9c3c3ae | |
|---|---|---|
| Author: | Eric Bailey | |
| Committer: | rafael | |
Initial implementation
| Commit: | 8a0f190 | |
|---|---|---|
| Author: | Samuel Newman | |
| Committer: | GitHub | |
Subscribe to activity implementation (#3908) Co-authored-by: rafael <rafael@blueskyweb.xyz>
| Commit: | 982b869 | |
|---|---|---|
| Author: | rafael | |
| Committer: | rafael | |
Update proto
| Commit: | c377034 | |
|---|---|---|
| Author: | rafael | |
Fix up XPRC endpoints
| Commit: | 27cc32b | |
|---|---|---|
| Author: | rafael | |
| Committer: | rafael | |
Fixup the 2 XRPC endpoints
| Commit: | a67410e | |
|---|---|---|
| Author: | Eric Bailey | |
| Committer: | rafael | |
Init lex
| Commit: | 511ae82 | |
|---|---|---|
| Author: | Samuel Newman | |
| Committer: | rafael | |
Implement activity subscriptions
| Commit: | 5829d12 | |
|---|---|---|
| Author: | jcalabro | |
update courier proto
| Commit: | 7fd57f6 | |
|---|---|---|
| Author: | rafael | |
Add endpoint to get records
| Commit: | d577e70 | |
|---|---|---|
| Author: | rafael | |
Use string instead of enum for declaration value
| Commit: | c20553e | |
|---|---|---|
| Author: | rafael | |
ActivitySubscriptionResponse->ActivitySubscription
| Commit: | f66969d | |
|---|---|---|
| Author: | rafael | |
| Committer: | rafael | |
Hydrate activity subscript. outside relationships
| Commit: | 6cc33ce | |
|---|---|---|
| Author: | rafael | |
| Committer: | rafael | |
Rename self-declaration values
| Commit: | 3d8eb12 | |
|---|---|---|
| Author: | Eric Bailey | |
| Committer: | Eric Bailey | |
Init lex
| Commit: | f2beb8a | |
|---|---|---|
| Author: | rafael | |
| Committer: | rafael | |
New approach in putActivitySubscription
| Commit: | b43de1e | |
|---|---|---|
| Author: | rafael | |
| Committer: | rafael | |
Ret. actorDid+namespace in getActivitySubscription
| Commit: | 2a90dd4 | |
|---|---|---|
| Author: | rafael | |
| Committer: | rafael | |
Address change requests in protobuf
| Commit: | 15aba33 | |
|---|---|---|
| Author: | rafael | |
| Committer: | rafael | |
Implement activity declaration on profile viewer
| Commit: | 90a14fd | |
|---|---|---|
| Author: | rafael | |
| Committer: | rafael | |
Add profile.associated.activitySubscriptions
| Commit: | 2816127 | |
|---|---|---|
| Author: | rafael | |
| Committer: | rafael | |
Implement listActivitySubscriptions
| Commit: | 9f7be0b | |
|---|---|---|
| Author: | devin ivy | |
| Committer: | GitHub | |
Appview: sync up protos for notification prefs (#3970) appview: sync up protos for notification prefs
| Commit: | 9e79233 | |
|---|---|---|
| Author: | Eric Bailey | |
| Committer: | Eric Bailey | |
Init lex
| Commit: | ca70ab9 | |
|---|---|---|
| Author: | rafael | |
| Committer: | rafael | |
New approach in putActivitySubscription
| Commit: | 8a6ec82 | |
|---|---|---|
| Author: | rafael | |
| Committer: | rafael | |
Address change requests in protobuf
| Commit: | 169f2af | |
|---|---|---|
| Author: | rafael | |
| Committer: | rafael | |
Implement listActivitySubscriptions
| Commit: | 4291166 | |
|---|---|---|
| Author: | rafael | |
| Committer: | rafael | |
Add profile.associated.activitySubscriptions
| Commit: | c18c67a | |
|---|---|---|
| Author: | rafael | |
| Committer: | rafael | |
Implement activity declaration on profile viewer
| Commit: | e88f57b | |
|---|---|---|
| Author: | Eric Bailey | |
Rename bufs, runtime
| Commit: | 8190bed | |
|---|---|---|
| Author: | Eric Bailey | |
Add bufs and get state methods
| Commit: | 76ddcda | |
|---|---|---|
| Author: | rafael | |
Address change requests in protobuf
| Commit: | 9dcf938 | |
|---|---|---|
| Author: | rafael | |
Implement activity declaration on profile viewer
| Commit: | 23da580 | |
|---|---|---|
| Author: | rafael | |
Add profile.associated.activitySubscriptions
| Commit: | 8b7a469 | |
|---|---|---|
| Author: | rafael | |
| Committer: | rafael | |
Implement listActivitySubscriptions
| Commit: | 3f07ffd | |
|---|---|---|
| Author: | rafael | |
| Committer: | GitHub | |
Add field to NotificationPreferences proto msg (#3946)
| Commit: | a48671e | |
|---|---|---|
| Author: | Samuel Newman | |
| Committer: | GitHub | |
Notification preferences V2 endpoints (#3901) Co-authored-by: surfdude29 <149612116+surfdude29@users.noreply.github.com> Co-authored-by: rafael <rafael@blueskyweb.xyz>
| Commit: | 2801f2c | |
|---|---|---|
| Author: | rafael | |
Rework proto and lex
| Commit: | ee56cb4 | |
|---|---|---|
| Author: | rafael | |
Specific preferences per notification setting
| Commit: | eabe737 | |
|---|---|---|
| Author: | rafael | |
| Committer: | rafael | |
Impl. notif getPreferences and putPreferencesV2
| Commit: | b9616f6 | |
|---|---|---|
| Author: | rafael | |
| Committer: | GitHub | |
[bsync] Rename operation endpoint properties (#3921)
| Commit: | cb8bf18 | |
|---|---|---|
| Author: | rafael | |
| Committer: | GitHub | |
`app.bsky.unspecced.getPostThreadV2` filtering (#3905)
| Commit: | e474623 | |
|---|---|---|
| Author: | Jim Calabro | |
| Committer: | GitHub | |
Add Generic Bsync Proto (#3887) Co-authored-by: rafael <rafael@blueskyweb.xyz>
| Commit: | 389e5d7 | |
|---|---|---|
| Author: | rafael | |
Add bsync endpoint for generic operation
| Commit: | 7e877ba | |
|---|---|---|
| Author: | jcalabro | |
Add Generic Bsync Proto
| Commit: | 3a65b68 | |
|---|---|---|
| Author: | rafael | |
| Committer: | GitHub | |
Actor status lexicon and views (#3824)
| Commit: | 192be86 | |
|---|---|---|
| Author: | rafael | |
Actor status lexicon and views
| Commit: | ab4e720 | |
|---|---|---|
| Author: | rafael | |
| Committer: | GitHub | |
Handle resolution improvements (#3816) * Handle resolution improvements On PDS, only perform resolution if appview is not configured. On appview, never perform resolution, only rely on dataplane. * changeset * appview: add lookup_unidirectional to GetDidsByHandles * appview: plumb lookup_unidirectional for handle lookup * note --------- Co-authored-by: Devin Ivy <devinivy@gmail.com>
| Commit: | b428ce3 | |
|---|---|---|
| Author: | rafael | |
| Committer: | GitHub | |
Hookup no-cache arg to GetInteractionCounts (#3812)
| Commit: | 688268b | |
|---|---|---|
| Author: | rafael | |
| Committer: | GitHub | |
Delegated verification (#3761) Co-authored-by: Eric Bailey <git@esb.lol>
| Commit: | ebc5505 | |
|---|---|---|
| Author: | rafael | |
| Committer: | rafael | |
wip
| Commit: | 7a1e471 | |
|---|---|---|
| Author: | rafael | |
| Committer: | rafael | |
Remove unneeded endpoints
| Commit: | b665b7a | |
|---|---|---|
| Author: | rafael | |
| Committer: | rafael | |
First vouch implementation
| Commit: | 388e5d3 | |
|---|---|---|
| Author: | devin ivy | |
| Committer: | GitHub | |
Appview: skip actor cache for viewer (#3733) * appview: skip actor cache for viewer * appview: rename getActors cache control arg, convenience on hydration ctx
| Commit: | c0a75d3 | |
|---|---|---|
| Author: | rafael | |
| Committer: | GitHub | |
posts_with_video filter (#3390)
| Commit: | 22204d1 | |
|---|---|---|
| Author: | rafael | |
| Committer: | rafael | |
Fix bsync and bsky proto casing
| Commit: | 2e52960 | |
|---|---|---|
| Author: | rafael | |
| Committer: | rafael | |
Implement suggestions
| Commit: | 1cfff09 | |
|---|---|---|
| Author: | rafael | |
| Committer: | rafael | |
add purchases endpoints on bsky
| Commit: | 94c2387 | |
|---|---|---|
| Author: | rafael | |
| Committer: | rafael | |
lexicon and proto definitions
| Commit: | ea159c6 | |
|---|---|---|
| Author: | rafael | |
| Committer: | rafael | |
Add bsync scanPurchaseOperations route