Kernel Protocol · object specification
Snapshot
Holds one immutable reading of the business at one point in time. It records what was true, never what it means.
Judgment protocol · lifecycle
kernel/v1.2- 01Snapshot
- 02Investigation
- 03Recommendation
- 04Outcome
- 05Reflection
- 06Pattern
- 07Candidate Principle
- 08Constitution
- loopFuture Recommendation
↺ Constitution constrains every future recommendation. The pipeline is a closed loop, not a line.
§1 Versioning
Immutable
Every downstream conclusion is anchored to the exact numbers it was derived from. A snapshot that can change retroactively invalidates all reasoning built on it.
§2 Allowed operations
- IngestParse a source file into normalized metric readings.
- LabelAttach a period label. Labels are metadata, not data.
- OrderPosition within the chronology. Order is derived, not asserted.
- ReferenceBe cited as evidence by any downstream object.
- WithdrawRemove from the active timeline; the record itself is not erased.
§3 Forbidden operations
- Edit valuesA corrected reading is a new snapshot, not an amended one.
- BackfillMissing metrics stay missing. Absence is signal.
- Silent re-parseRe-parsing under new rules produces a new snapshot id.
§4 Relationship types
Snapshot precedes → Snapshot
Establishes the chronology reasoning walks.
Snapshot grounds → Investigation
Supplies every number an investigation may cite.
Snapshot evidences → Pattern
A pattern may cite the readings it was observed in.
§5 Lifecycle events
Ingested
Parsed; unparsed rows retained verbatim.
Validated
Metrics matched to known keys, direction resolved.
Active
Part of the current timeline.
Withdrawn
Excluded from reasoning; still addressable by id.
Archived
Retained for audit only.
§6 State machine
initial: Ingested · terminal: Archived
| From | To | Trigger |
|---|---|---|
| Ingested | → Validated | metrics matched to known keys |
| Validated | → Active | admitted to the timeline |
| Active | → Withdrawn | excluded by an engineer |
| Withdrawn | → Active | re-admitted; id unchanged |
| Withdrawn | → Archived | retention window closed |
| Active | → Archived | superseded timeline archived |
Forbidden transitions
- Active ⇸ IngestedRe-parsing produces a new snapshot id, never a rewind.
- Archived ⇸ ActiveArchived readings cannot re-enter reasoning.
§7 Lineage
Ancestry — what must exist before this object
Root of the protocol. Nothing precedes it.
Descendants — what this object can produce
- Snapshot grounds →Investigation
- Snapshot evidences →Outcome
transitive: Investigation → Outcome → Recommendation → Pattern → Reflection → Candidate Principle → Constitution
§8 Invariants
- A snapshot's metric values never change after ingestion.
- Order is assigned by the timeline, never stored as truth inside the snapshot.
Global constraints binding this object
GI-07
∀ s ∈ Snapshot : ∀ t > ingestedAt(s) : values(s, t) = values(s, ingestedAt(s))Snapshot values are byte-stable after ingestion.