# Release checklist: [PACKAGE ID AND VERSION]

> Team document template. Copy this file per release, check every box with
> evidence, and store the result beside the released package. The engine
> never reads this file: it records that a human walked the release below,
> not a package format.

How to use: one filled copy per release. Work top to bottom; a box is
checked only with a pointer to evidence (a fenced output or a named
record). Stop at the first unchecked box.

- Package: [package id]
- Version: [version]
- Releaser: [name]
- Date: [YYYY-MM-DD]
- Release kind: [additive words only | behavior change | withdrawal]

## 1. Scope and version

- [ ] The version follows the team grammar; consumers select it explicitly
  (no release upgrades anyone automatically).
- [ ] The change list since the previous release is written (added words,
  changed behavior, withdrawals).
- [ ] Shared dependency moves each carry their own change record.
- [ ] The vocabulary contract and decision records are current.

## 2. Verification

- [ ] The review checklist for this version ends in approved.
- [ ] The scenario tests pass on the locked world.
- [ ] The pinning check passes (for source packages).
- [ ] The outdated report is read: this release supersedes what it should.

```text
[paste: scenario test output]
```

```text
[paste: pinning check output, or "not a source package"]
```

## 3. Publication

- [ ] The lockfile is refreshed and its resolution hash recorded.
- [ ] The registry entry (or offline container for air-gapped transfer)
  carries the exact bytes the hash names.
- [ ] The canon profile, when this package ships in one, pins this version.

```text
[paste: the published name, version, and content hash]
```

## 4. Announcement

- [ ] Consumers are told: what moved, whether they must act, and the notice
  period for withdrawals.
- [ ] The corpus charter package set is updated when membership changed.

## 5. Sign-off

- Releaser signature: [name, date]
- Notes: [one line, or "none"]
