Skip to main content

Module ids

Module ids 

Source
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§

AuditRecordId
Audit record identifier.
ContextPackId
Context pack identifier.
ContradictionId
Contradiction (first-class conflict) identifier.
CorrelationId
Cross-trace correlation identifier (joins related causal chains for audit).
DecayJobId
Scheduled decay job identifier (Phase 4.D operator-fired compression).
DoctrineId
Promoted doctrine identifier.
EpisodeId
Interpreted episode identifier.
EventId
Append-only event identifier.
MemoryId
Durable memory identifier.
PrincipleId
Hypothesis principle identifier.
TraceId
Trace / causal chain identifier.