Studio Dispatch · Development record

Cell / Live-Link Networking Goes Live

· Operator · Handler · VeilLink

← Development record

Before this, a table that wanted to use the Operator and Handler apps on separate devices had to ferry state by hand. The Operator exported something, the Handler imported it, and everyone hoped nobody had changed anything in between. VeilLink hosted a separate mini-sheet to paper over the gap.

Over four days, that ferry was replaced with a live connection.

What shipped

  • Handler authority. The Handler got real mechanical authority, connected live to the Operator's sheet.
  • A real transport. VeilLink's disconnected Cell ferry was replaced with a live remote transport. Session end, Pressure Round action economy, and reconnect-on-load all carry over. The old mini-sheet was deleted.
  • Round authority. The Handler owns the round. A fresh connection adopts the Handler's round outright, and the gap before the first sync is closed so nobody can advance a round they do not own.
  • Cross-device rolls. Operators report rolls to the Cell from their own devices, and a lobby-wide roll feed updates in real time.
  • Identity. Joining a Cell fills in the seat's identity, so the Handler sees who actually sat down. Connection persistence is scoped by role, which means an Operator and a Handler on the same browser no longer overwrite each other.
  • Multi-Cell. By August 3, one Handler could manage several Cells, with Weave, Thread, and Clue carrying between them.

What did not change

Everything still works signed out and local-first. Signing in or out never touches local saves. Sync happens at deliberate moments, such as sending to the Cell, ending a Pressure Round, or archiving a session. It is never background polling. The Operator still owns their sheet.

Why it matters

A table no longer has to share a screen to share a session. This changes how people can actually run CradlePoint.

Open Handler Open Operator file Why VeilLink exists