title: Registry reference description: Generated index of the Valence protocol registry: frame types, CBOR keys, channels, error codes, limits. register: IEEE generated: true
Registry reference#
The registry is the single source of truth for every number Valence puts on the wire. These pages are generated from it. No number on this site is typed by a human.
If a page here disagrees with prose elsewhere, this page wins.
Protocol identity#
| Property | Value |
|---|---|
| Protocol name | valence |
| Protocol version | 1 |
| Byte order | little-endian |
| Header size | 8 bytes |
Pages#
| Page | Covers |
|---|---|
| Frame types | The type byte and the header flag bits. |
| Channels | Channel classes, stream kinds, access levels, priorities, id ranges, spec-core channels. |
| CBOR keys | The global control-plane key space and every scoped sub-map key space. |
| Catalog vocabulary | Packed field types, field roles, setting categories and flags, procedure phases. |
| Event kinds | Event kind values for the spec-core EVENT channels, and log severity levels. |
| Safety codes | Safety intent operations and safety cause codes. |
| Pairing modes | The pairing mode bitmask advertised in WELCOME. |
| NACK codes | Every NACK and GOODBYE reason code, by range. |
| Limits and defaults | Well-known sizes, timeouts, caps and defaults. |
| Discovery | BLE GATT identity and advertising flags, and the UDP discovery probe/reply. |
| Rendering vocabulary | Categories, ranks, value axes, units, action tags, archetypes, regions, renderer classes and widget patterns: the numbers behind RENDERING.md (RFC-048). |
How to change a number#
- Edit
registry.yaml. It is the only place a number is decided. - Run the C++ generator. It rewrites
registry_constants.hpp. - Run the docs generator. It rewrites these pages.
- Commit the registry and both generated outputs together.
Released numbers are never reused and never renumbered.