Skip to content

docs(pre-commit): canonical 21-hook template + tier docs (#186)#222

Draft
avrabe wants to merge 1 commit intomainfrom
feat/issue-186-canonical-pre-commit-template
Draft

docs(pre-commit): canonical 21-hook template + tier docs (#186)#222
avrabe wants to merge 1 commit intomainfrom
feat/issue-186-canonical-pre-commit-template

Conversation

@avrabe
Copy link
Copy Markdown
Contributor

@avrabe avrabe commented Apr 26, 2026

Refs: #186

Summary

First in-scope cut at the canonical pre-commit template story. Two new files:

  • templates/pre-commit/.pre-commit-config.yaml — copy-pasteable source of truth, mirroring rivet's own 21-hook config but with CUSTOMIZE: markers for per-project knobs.
  • docs/pre-commit.md — per-hook rationale table, standard-clause mapping, advisory T1 / T2 / T3 tier system, adoption recipe, drift policy.

Acceptance-criteria mapping (from #186)

AC bullet Status here
Publish canonical template as versioned, copyable asset Done — templates/pre-commit/.pre-commit-config.yaml
Document rationale per-hook + standard clause Done — docs/pre-commit.md per-hook table
Define T1 / T2 / T3 tiers Proposal only — tier labels included as inline annotations, doc explicitly notes the partition is open for review
Open adoption follow-up issues on kiln/loom/meld/relay/sigil/synth/spar/gale/wohl Out of scope — automated GitHub access is restricted to pulseengine/rivet; needs a session with broader org scope (or manual filing)
CI gate that verifies adopter tier compliance Stretch goal; not addressed

Why draft

Two open decisions need maintainer review before this leaves draft:

  1. Tier partition. The 21-hook → T1 / T2 / T3 split in Canonicalize 21-hook pre-commit template for adoption across production repos #186 totals 15 hooks (T1=11 + T2=3 + T3=1), leaving 6 of the file-hygiene hooks unassigned. The template assigns all 21 to a tier under a defensible reading; the doc flags this explicitly. Confirm or adjust.
  2. cargo +stable pinning. Hard-coded for the template; if adopters should template-substitute the channel from their rust-toolchain.toml instead, say the word and I'll switch the example to a placeholder.

Test plan

  • Template parses as valid YAML; hook count = 21 (matches issue claim)
  • No artifact YAML touched, so rivet validate is unaffected
  • CI green
  • Maintainer confirms tier assignment
  • Cross-repo adoption issues filed separately (see "Out of scope" above)

Generated by Claude Code

Adds `templates/pre-commit/.pre-commit-config.yaml` as the
versioned, copy-pasteable source of truth for PulseEngine Rust
repositories, and `docs/pre-commit.md` documenting the rationale
per hook plus an advisory T1 / T2 / T3 tier system.

Each hook in the template carries an inline tier annotation so
adopters can grep-trim to their assurance level. `CUSTOMIZE`
markers flag the per-project knobs (rust-toolchain pinning,
artifact-path globs, mutation crate selection).

Refs: #186
@codecov
Copy link
Copy Markdown

codecov Bot commented Apr 26, 2026

Codecov Report

✅ All modified and coverable lines are covered by tests.

📢 Thoughts on this report? Let us know!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants