Publish intent
Write task state and any application-owned coordination fields as rows.
Architecture decision 04 · Trusted processing
A worker or agent can read rows, act, and publish results without exposing task content to the mailbox. Giving it the mesh key also gives it the full row database, and convergent rows do not become an exactly-once queue.
Correct mental model
The mailbox remains a storage surface that cannot interpret encrypted work. Trusted processing happens in a separate endpoint—browser, native runtime, Python process, or another compatible client—with the same plaintext responsibility as any other participant.
Write task state and any application-owned coordination fields as rows.
Store and return encrypted changes without reading or scheduling them.
A trusted endpoint pulls the mesh, decrypts rows, and performs the work.
Write convergent result state as rows and exact output bodies as files.
Three design obligations
Interocitor transports and merges state. It does not selectively disclose a shared mesh, elect a worker, or prove that an external effect happened exactly once.
Authority
A shared mesh key grants access to every row table in that mesh.
Coordination
Two processors can observe the same task and both act on it.
Results
Rows describe status, attempts, ownership, and references; durable files carry reports, media, or other exact output.
Queue boundary
Convergence ensures endpoints reach the same row result after receiving the same changes. It does not prevent two workers from observing the same pending task before either worker's claim has reached the other.
Pattern checklist
Use this before giving a worker or agent credentials for a production mesh.
Canonical detail
Choose a headless peer for processing, define its key custody and mesh isolation, then add application-level coordination for work that must not overlap.