# Change Packet

> One reviewable proposed transition — exact delta, cited evidence, rationale, uncertainty, and expected state — that becomes the accepted record's ancestry.

**Tier:** 3 · **Normative weight:** implements `TM-REC-004`–`TM-REC-008`,
`TM-CHG-009`
**Requires:** [Evidence Packet](/docs/truth-machine/kit/evidence-packet/)

## Problem it removes

For truth Git does not govern, "review" means someone glanced at a
description of the change. What was actually applied, what evidence backed
it, and what uncertainty survived acceptance are unrecoverable a month
later.

## Mechanism

One directory per proposed change: a `change.toml` carrying the machine
identity, and a README carrying the reviewable substance. Together they
hold the exact before-and-after delta (`TM-REC-004`), the cited evidence
packets and why they support the delta (`TM-REC-005`), the uncertainty
that remains (`TM-REC-006`), the known consequences (`TM-REC-007`), and
the expected current-state revision the proposal reasoned against.
Mutations whose partial application could contradict travel in one packet
(`TM-REC-008`).

On acceptance the packet gains its acceptance fields — reviewer, date,
acceptance evidence, proposal digest — and becomes the durable change
record `TM-CHG-009` enumerates. Records are what accepted changes become:
each transition in the packet names the record it creates or supersedes,
and the record packet
([`record.toml`](/docs/truth-machine/templates/record-packet/record.toml))
binds that record's content and ancestry.

## Cost

Authoring: the schemas exist; the first packet is an hour of understanding
the lifecycle. Per change: writing the delta and rationale — which is the
review the change needed anyway, made durable. Per session: none.

## Do not adopt when

Git and PR review already govern the truth in question. This is the
clearest "do not" in the catalog: change packets over source code are
ceremony duplicating commits.

## Evidence

Assessed in [kinra-corpus](/docs/truth-machine/implementations/kinra-corpus/);
the reference instance's own accepted changes are frozen history in the
same shape. The [flow](/docs/truth-machine/implementations/flow/) ledger
implements the semantics in an application. Validated by
[`change.schema.json`](/docs/truth-machine/schemas/change.schema.json) and
[`record.schema.json`](/docs/truth-machine/schemas/record.schema.json).

## Template

[`templates/change-packet/change.toml`](/docs/truth-machine/templates/change-packet/change.toml)
and
[`templates/record-packet/record.toml`](/docs/truth-machine/templates/record-packet/record.toml)

## Related patterns

[Exact Review](/docs/truth-machine/kit/exact-review/) binds review to this
exact packet;
[Atomic Transition](/docs/truth-machine/kit/atomic-transition/) applies it.
[Decision Records](/docs/truth-machine/kit/decision-records/) are the
lighter form when narrative is enough.
