Canonical-JSON (RFC 8785 / JCS) + content-addressed identity.
For our string-only payload, serde_json’s default output (sorted BTreeMap
keys, compact separators, raw non-ASCII, no /-escape) IS JCS — verified by
the golden vectors. Liveness arrays are sorted+deduped here so set-valued
fields are order-insensitive; grounds[] keeps authored order.
ev guard "<selector>" <id> [<ground>] — attach an existing test to a ground as a
data check (after the fact). Because check is hashed, this writes a NEW CHILD.
Best-effort lexical lints over built-in, deterministic word lists.
R3: the subject of self-evolve/self-improve language must be a human, not the system.
R5: no auto-close / auto-prune / self-stop op language.
Honest limit: a re-wording evades these — they are heuristics, not semantic guarantees.