diff --git a/web/src/pages/architecture.astro b/web/src/pages/architecture.astro index 00b8b03..22823b2 100644 --- a/web/src/pages/architecture.astro +++ b/web/src/pages/architecture.astro @@ -106,158 +106,14 @@ const storage = [
-

The moving parts

+

how it works

- The extension runs as four separate contexts in your browser, and talks - to AT Protocol services directly. There is no substandard server in any - of these paths. Everything below is in the - source repository. + The extension runs in your browser and talks to AT Protocol services directly.

-
-
- -
-

The four contexts

- -
- -
-

What crosses the network

- Public reads carry no cookies and no credentials - (src/lib/http.ts sets - credentials: "omit"), and their answers are cached in your - browser. Only the last two rows are authenticated, and both go to your - own PDS. XRPC calls are named without their - com.atproto. prefix. -

-
- - - - - - - - - - - { - calls.map((call) => ( - - - - - - - )) - } - -
FromToCallFor
{call.from}{call.to} - {call.what} - {call.why}
-
-
- -
-

What is written, and what is only read

-

- The OAuth scope the extension asks for is listed in full in its - client metadata. It permits exactly - two kinds of write: -

- -

- Everything else is read-only, including your follows, your blocks, your - profile and your labeler preferences. Nothing follows, blocks or posts - on your behalf: sharing to Bluesky opens a compose link rather than - writing a post. -

-
- -
-

What is stored, and where

-
- - - - - - - - - - { - storage.map((row) => ( - - - - - - )) - } - -
WhereWhatHow long
- {row.where} - {row.what}{row.life}
-
-

- Tokens are never put in chrome.storage; the OAuth client - keeps them in the extension origin's own storage. Uninstalling the - extension removes all of it. -

-
- -
-

Why the extension asks for every site

-

- Detection needs the well-known probe, and there is no list of which - sites publish on standard.site, so - the probe has to be able to run wherever you are. That is what the - host permissions in the manifest are for. The - privacy policy covers what that means for your data; - this page is its diagram. + This includes the site you're on, both their and your PDS, and ecosystem services (like Bluesky APIs).

+