Sequence: Join Testnet → Play Oregon Trail from Node UI

1 wagon = 1 game = 1 context graph. Each player runs a node and plays from their UI. Min 3 players; votes via workspace; GM proposes CG entry; at least floor(2/3*N) signatures to commit on-chain.

sequenceDiagram autonumber actor PlayerA as Player A actor PlayerB as Player B actor PlayerC as Player C participant NodeA as Node A GM participant NodeB as Node B participant NodeC as Node C participant Workspace as Workspace participant CG as Context Graph Note over PlayerA, CG: Each player runs node, join testnet, open Node UI on own machine PlayerA->>NodeA: start node, open UI NodeA->>Workspace: connect to contextGraph PlayerB->>NodeB: start node, open Node UI PlayerC->>NodeC: start node, open Node UI NodeB->>Workspace: connect to contextGraph NodeC->>Workspace: connect to contextGraph Note over PlayerA, CG: Lobby - wagons are context graphs, min 3 players to create PlayerA->>NodeA: Create wagon or Join existing NodeA->>Workspace: create wagon, new context graph Workspace-->>NodeB: wagon created Workspace-->>NodeC: wagon created NodeA->>CG: bootstrap context graph NodeA-->>PlayerA: wagon view Note over PlayerA, CG: Vote on next action - travel, hunt, rest, ford, ferry PlayerA->>NodeA: vote Travel pace 2 PlayerB->>NodeB: vote Rest PlayerC->>NodeC: vote Travel pace 2 NodeA->>Workspace: publish vote NodeB->>Workspace: publish vote NodeC->>Workspace: publish vote Workspace-->>NodeA: all votes Workspace-->>NodeB: all votes Workspace-->>NodeC: all votes Note over NodeA, CG: GM proposes new CG entry - floor 2/3 N signatures to commit on-chain NodeA->>NodeA: compute outcome, build new state entry NodeA->>NodeB: request signature for CG entry NodeA->>NodeC: request signature for CG entry NodeB->>NodeB: verify, sign NodeC->>NodeC: verify, sign NodeB->>NodeA: signature NodeC->>NodeA: signature NodeA->>CG: commit entry on-chain CG-->>NodeA: entry accepted CG-->>NodeB: entry accepted CG-->>NodeC: entry accepted NodeA-->>PlayerA: updated wagon view NodeB-->>PlayerB: updated wagon view NodeC-->>PlayerC: updated wagon view