Repository navigation
identity, part 2: mesh event vocabulary for the atlas and kanban (the rest of #8649) #8877
Copy link
Copy link
Open
Labels
Description
#8869 closed #8649 with the identity record, the agent table and signed authorship claims (specs/network/identity.t27). The issue's second half was not built and needs its own lane:
- an event vocabulary for the live atlas (see Universe Atlas: live fills from webhooks and the Queen event bus, the daily scan stays the verified baseline trinity#1587) and the actors feed (see queen: publish actor events (spawn, exit, DOWN, restart, deliver) and serve them to the kanban by cursor trios#1744), reusing tri-net TriNetMonitor terms:
- MeshNode: offline/online/weak; endpoint/relay/gateway/external;
- MeshLink, with ETX colour thresholds 1.2 / 2.0 / 3.5;
- NetworkEvent: ONLINE, OFFLINE, ROUTE, RELAY, DROP, HEAL, SCAN;
- tri_a2a HEARTBEAT with its capability card as the presence event;
- retire IP-octet node ids and demo keys derived from public node ids in favour of identity.t27 records.
Rules in .t27 with runtime-assert tests, and a ledger row per new spec.
User Scenarios
- Given the identity record and agent table from specs/network/identity.t27, When the mesh event vocabulary is defined for the live atlas and actors feed, Then MeshNode states (offline/online/weak), roles (endpoint/relay/gateway/external), MeshLink with ETX colour thresholds (1.2/2.0/3.5), and NetworkEvent types (ONLINE, OFFLINE, ROUTE, RELAY, DROP, HEAL, SCAN) are specified in .t27 with runtime-assert tests.
- Given tri_a2a HEARTBEAT messages, When the capability card is adopted as the presence event, Then the heartbeat payload structure reuses identity.t27 records instead of IP-octet node ids and demo keys derived from public node ids.
- Given the ledger requirement, When each new spec is added, Then a ledger row is recorded per spec.
Requirements
- FR-001: The mesh event vocabulary MUST define MeshNode with states offline/online/weak and roles endpoint/relay/gateway/external in .t27.
- FR-002: The mesh event vocabulary MUST define MeshLink with ETX colour thresholds 1.2, 2.0, 3.5 in .t27.
- FR-003: The mesh event vocabulary MUST define NetworkEvent with variants ONLINE, OFFLINE, ROUTE, RELAY, DROP, HEAL, SCAN in .t27.
- FR-004: The tri_a2a HEARTBEAT MUST use the capability card as the presence event, referencing identity.t27 records instead of IP-octet node ids.
- FR-005: Demo keys derived from public node ids MUST be retired in favour of identity.t27 records.
- FR-006: Each new spec MUST include runtime-assert tests in .t27.
- FR-007: Each new spec MUST add a ledger row.
Success Criteria
t27c check specs/tools/trinity/tri/mesh.t27exits with exit 0t27c check specs/network/identity.t27exits with exit 0- 3 runtime-assert tests pass in specs/tools/trinity/tri/mesh.t27
- 2 runtime-assert tests pass in specs/network/identity.t27
- Ledger contains 2 new rows for the mesh vocabulary spec and updated identity spec
Boundary
- specs/network/identity.t27
- specs/tools/trinity/tri/mesh.t27
- specs/tools/trinity/tri/identity.t27
- specs/port/trios/crates/trios-mesh/src/identity.t27
- specs/port/browseros/trios/agent-server/apps/server/src/lib/identity.t27
Reactions are currently unavailable
Activity
tri-claw commentedon Oct 11, 2026
The Queen cannot take this issue yet. A bee starts only on an issue whose body has every section below, and this one lacks:
- specs/x.t27); without it the Queen reserves nothing and no bee can take the issueFR-001: ... MUST ...exit 0, or a backticked commandShe tried to write them 2 times and could not (last: shaped). Add them and the next round takes it. The rule is
specs/policy/issue_shape.t27.