Toolchain

SBN — the binary format

The canonical, signed binary serialisation for Signum.

SBN is Signum's canonical binary form — signed, versioned, content-addressed. It is the deterministic serialisation Signum uses for cross-backend round-trips and for persistent artefacts (models, caches, learned state).

  • Signed: every record carries a signature over its payload.
  • Versioned: the format carries its own version so readers can decline unsupported writers.
  • Content-addressed: the hash is the identity, so a record either matches or it doesn't.

CLI

signum --emit sbn hello.sig > hello.sbn      ~~ serialise a program
signum --load hello.sbn                       ~~ run from the SBN record
signum --sbn-id hello.sbn                     ~~ print the content-addressed id

Record shape (header, abbreviated)

magic:   "SBN\0"       (4 bytes)
version: u16            (format version)
kind:    u8             (program | model | cache | state)
flags:   u8
id:      [32]u8         (content hash; the record's identity)
sig:     [64]u8         (Ed25519 signature over id)
payload: <rest>         (CBOR-encoded body)

SBN is what makes "same input, same output, every backend" more than a slogan: identical reducers write identical SBN bytes, and a reader can refuse anything that doesn't hash to its declared id.