The Desk

This device

The world runs here, in a Worker on this machine. This page is the evidence for that — what is stored, and what has left.

Opening the local world…

Where the data is

Opening the local world…

What is in it

What has left

What leaves this device the four routes that can send · what this log does not cover · automatic index sync is off

The engine makes no network calls. The Worker that owns this database contains no fetch, no XMLHttpRequest, no WebSocket, no importScripts and no sendBeacon — zero of each, counted in the source and held at zero by a test. Nothing in the browser forbids a Worker from opening a socket, so this is a fact about what the engine does, not a cage it sits in; the test is what keeps it true.

Four routes outside it can send something out, and each only when you act. Every one writes to the log below as it goes.

What the log does not cover: the queries this app makes to read when you are signed in — checking your session, listing worlds and exports, counting an agent's pending proposals. Those send a request and receive rows back; they carry no world content outward, and they are not written down below. So the log accounts for everything that goes out, not for every packet.

  • world/feed.ts Reads the public feed, and writes back two things: that an item was opened here, and the situation INDEX — titles, bands and entity keys, never an account or a reading (F0.2). Runs when you: Pull feed · Open a situation · Sync
  • world/sync.ts Writes to the coordination plane, and can upload the exported SQLite file — the whole world, and the largest thing that can leave this device. Runs when you: publishing or adopting an export
  • components/StudyGateB.svelte The owner opens the exact hosted draft, then sends only the Gate-B outcome, reviewed decision ids, and a publish request for that bound draft. It never mints a run, sends a new intake, or uploads the local document. Runs when you: reviewing and publishing a formal Study
  • world/client.ts Writes the exported SQLite file to your disk. No server is involved — but the world does leave the app, so it is logged like anything else that goes. Runs when you: exporting or downloading the world

Every 15 minutes, while this tab is open: push the situation and document indexes — titles, public source links, status and counts, never draft prose or evidence — and apply anything an agent has proposed. Each run is recorded in the log below. Nothing happens while the tab is closed; there is no copy of your world anywhere else to sync from.

Reading the log…

Backup and transfer

A transfer moves the SQLite file itself. A merge unions the append-only logs and re-derives everything downstream, so two devices that have seen the same events end up agreeing exactly — that is what the clock-free core is for.

  • Merge — unions the record, imports new documents, and preserves divergent document versions as linked forks. The result names what was added, citation-extended, unchanged, or forked.
  • Replace — adopts the file wholesale; everything currently on this device goes.

Danger

Your data is removable even though history is not editable — deleting suspends the append-only guards for one transaction and restores them. Nothing here is recoverable afterwards, because there is no copy anywhere else.