This document defines the contributor workflow for the current release line. Keep changes minimal, validation-preserving, and explicit about whether they affect the current line (v1.1.0) or retained legacy artifacts.
- Describe the exact problem being fixed and the exact files changed.
- Keep protocol semantics unchanged unless the change is intentionally normative and documented.
- Prefer deletion over vestigial compatibility scaffolding.
- When docs change, keep them precise and avoid restating the full validation command block outside
README.md#validation-commands. - If you touch checksum-covered machine artifacts (
schemas/v1.1.0/,examples/v1.1.0/,manifest.json), regeneratechecksums.txtbefore merge.
Use concise, imperative commit subjects. Prefer a scope when it clarifies intent, for example:
docs: clarify current-line validation policytooling: route npm test through validation aggregatevalidation: reuse strict JSON loader across scripts
Avoid mixed-purpose commits when a focused change is practical.
Run the canonical commands from README.md#validation-commands that match your change set. In normal contributor flow, this means at least:
npm test
npm run validate:schemas
npm run validate:examples
npm run validate:integrityAlso run sha256sum -c checksums.txt whenever you changed checksum-covered artifacts or regenerated the checksum ledger.
- Preserve flat, self-contained
v1.1.0schemas; do not reintroduce current-line cross-file schema dependencies. - Keep file paths and
$idvalues aligned exactly. - Treat same-named local
$defsas canonical repeated shapes and keep them consistent across verbs.
- Keep valid fixtures conformant and invalid fixtures narrowly targeted.
- Ensure request and receipt coverage remains present in both
valid/andinvalid/for each current-line verb. - Do not add a current-line
examples/v1.1.0/**/ts/surface unless the repository deliberately restores and governs it.
- Keep onboarding content orientation-focused and contributor policy in this file.
- Use explicit JSON path imports in examples by default, with any bare-package import labeled as environment-dependent.
- State clearly when guidance applies only to the current line and when legacy
v1.0.0artifacts are mentioned for compatibility or audit history.