Lightweight runtime context threaded through validation.
Holds a reference to the immutable root Schema and carries per-scope
state (scope stack, current source ID, raw schema) that changes as
validation descends through $id boundaries.
Summary
Types
@type t() :: %JSONSchex.Types.ValidationContext{ raw: map() | nil, root_schema: JSONSchex.Types.Schema.t(), scope_stack: [String.t()], source_id: String.t() | nil }