RECIPE 11 · THE LIGHTEST DOOR

Emit from Anywhere

Not everything that has something to say should be a node. A CI pipeline, a cron job, a sensor on a shelf — they observe things your mesh should know, and they should not carry a daemon, a store, or a cognition engine to say so. sym emit is the one-shot door: connect, deliver one signed block, disconnect. The mesh’s receivers judge it like anything else.

This is the MMP Class 1 Emitter (spec §17.1) as a tool: the block is content-addressed, Ed25519-signed under the emitter’s own persistent identity, and audience-bound to your group. Provenance stays with the actual source — github-ci said the build passed, not whichever machine relayed it.

Version
Requires sym ≥ 0.7.30. Local networks (TCP) today; emitting through the relay ships with one-shot end-to-end encryption.

Steps

01
One command, one observation
From any machine that can reach a mesh node (the server address is the one your cockpit is connected to’s mesh, or any node’s host:port):
sym emit --server 192.168.1.10:52781 --group team --name github-ci \
  '{"focus":"build 4821 green","commitment":"nightly suite passed"}'
It prints the emitted key and exits. No daemon was started; no lock was taken; nothing persists on the emitting machine except a keypair, so the next emission from github-ci is provably the same source.
02
Watch it arrive
In xMesh, Live shows the block the moment a receiver admits it — source github-ci, its CAT7 fields in the inspector. Audit shows how each node’s gate judged it: aligned, guarded, redundant, or rejected. An emitter gets no free pass — SVAF decides, per receiver, like always.
03
Ground the mesh in real outcomes
The payoff. When work completes in the real world, let the system that observed it say so — with lineage pointing at the cognition it confirms:
sym emit --server 192.168.1.10:52781 --group team --name github-ci \
  --parents cmb1-9b4b8e27… \
  '{"focus":"deploy outcome","intent":"ground","commitment":"verified: deploy healthy"}'
A verified: (or failed:) outcome carried by lineage is how cognition earns its place in the Canon — and now it happens from CI, automatically, instead of waiting for an operator’s tap.
04
Script it (ten lines)
The same door, programmatic:
const { emitOnce } = require('sym').emit

await emitOnce(
  { server: '192.168.1.10:52781', group: 'team', name: 'github-ci' },
  {
    focus: 'build 4821 green',
    intent: 'ground',
    commitment: 'verified: full suite passed',
  },
)
Emitter vs node — when to use which
Use sym emit when something only contributes: fire-and-forget observations, outcomes, telemetry worth remembering. Deploy a node (or a worker) when something must also listen, remember, and reason — admission, memory, and recall are what a node buys you. The mesh treats both honestly: an emitter’s block carries its signature and earns its trust the same way a node’s does.

Where this goes

Every emitter makes the brain more valuable: more grounded outcomes, more sources with provable provenance, more of reality flowing through the gate. The protocol side of this door is open and frozen — anyone can build an emitter from the spec in an afternoon (meshcognition.org, §17.1). This recipe is the afternoon, already done.