Core value representations shared across TinyChain crates. This crate will house
the canonical Value enum (numbers, strings, tuples, etc.) used by the IR,
state subsystem, and adapters.
- Canonical
Valueenum implemented with variants:NoneBoolNumberStringLinkMapTuple
-
destream/JSON round-trip support for all variants. - Bool-as-number semantics: JSON booleans decode as
Value::Number(Number::Bool(...)). - Unit tests for literal and nested map/tuple round-trips.
None,Bool,Number, andStringencode as plain JSON literals.Mapencodes as a plain JSON object of nestedValues.Tupleencodes as a plain JSON array of nestedValues.Linkencodes as a single-entry map keyed by the link path (v1-compatible form).
Typed value envelopes (/state/scalar/value/...) remain accepted where required for
compatibility, but canonical emission prefers the plain JSON forms above.