Expand description
Strongly-typed identifiers for Cortex primitives.
Every ID is a prefix + ULID newtype (see BUILD_SPEC §9). The textual form is
<prefix>_<26-char Crockford ULID> (e.g. evt_01ARZ3NDEKTSV4RRFFQ69G5FAV). The
prefix is part of the wire format and is verified on parse: this prevents an
EventId from accidentally being constructed from, say, a TraceId string.
IDs implement Display (writes the prefixed form), FromStr (parses and
validates the prefix + ULID), and serde::{Serialize, Deserialize} as a
transparent string. JsonSchema is implemented manually as a string so
generated schemas stay stable across schemars versions.
Generation is via <Id>::new() (random ULID) or <Id>::from_ulid(u) (caller
supplies the ULID, useful for time-ordered IDs in tests / fixtures).
Structs§
- Audit
Record Id - Audit record identifier.
- Context
Pack Id - Context pack identifier.
- Contradiction
Id - Contradiction (first-class conflict) identifier.
- Correlation
Id - Cross-trace correlation identifier (joins related causal chains for audit).
- Decay
JobId - Scheduled decay job identifier (Phase 4.D operator-fired compression).
- Doctrine
Id - Promoted doctrine identifier.
- Episode
Id - Interpreted episode identifier.
- EventId
- Append-only event identifier.
- Memory
Id - Durable memory identifier.
- Principle
Id - Hypothesis principle identifier.
- TraceId
- Trace / causal chain identifier.