# Vocabulary decision record: [SHORT TITLE]

> Team document template. Copy this file per decision, fill every bracketed
> field, and store the result beside the vocabulary package it affects. The
> engine never reads this file: it explains why a word means what it means,
> not a package format.

How to use: write one record per naming decision (a new term, a rename, a
split or merge, a deprecation). One page; decide in prose, show the effect
in fences.

- Term: [the exact name, e.g. ParcelKind]
- Package: [package id holding the term]
- Date: [YYYY-MM-DD]
- Author: [who proposes]
- Status: [proposed | accepted | deprecated | superseded by RECORD-NAME]

## 1. Context

[What forced this decision? Two or three sentences: the rule or source
passage that needs the word, and why the current words fall short.]

## 2. Options considered

| Option | Shape | Rejected because / chosen because |
|---|---|---|
| [A: e.g. ParcelKind enum] | [new enum with three members] | [chosen: closed choice, matches the source classes] |
| [B: e.g. free text field] | [Text field on Parcel] | [rejected: open text cannot be joined on reliably] |

## 3. Decision

[One paragraph: what the term means, what it covers, what it excludes.
Name the key fields and the parent type where they apply.]

## 4. Consequences

- Consumers affected: [package ids, or "none yet"]
- Labels needed: [languages and standing for each]
- Alias or notice period: [what old name keeps working, and until when]
- Follow-up work: [e.g. update the public vocabulary contract, add a case]

## 5. Effect sketch

Show the declaration shape before and after (illustration only; the
package source stays the authority):

```text
[before: the declarations this decision replaces, or "none"]
```

```text
[after: the new or changed declarations]
```

## 6. Review

- Reviewer: [name]
- Date: [YYYY-MM-DD]
- Outcome: [accepted | returned with notes]
- Notes: [one line, or "none"]
