diff options
| author | Craig Jennings <c@cjennings.net> | 2026-04-24 19:11:41 -0500 |
|---|---|---|
| committer | Craig Jennings <c@cjennings.net> | 2026-04-24 19:11:41 -0500 |
| commit | e5b54c24afdd569765b215732884bd0a8f2758a9 (patch) | |
| tree | 7adda3a4d514b5259d4f75d0da24fdfdde9c1c77 | |
| parent | 060636d2f9acc8c37bc5873f109ffa16c270f98a (diff) | |
| download | rulesets-e5b54c24afdd569765b215732884bd0a8f2758a9.tar.gz rulesets-e5b54c24afdd569765b215732884bd0a8f2758a9.zip | |
docs: split Linear vs PR structure; propagate content-scope rule to Tier 1 skills
Linear ticket bodies are now Problem + Fix only. PR descriptions keep
the four-section format (Problem, Fix, Why this fixes it, How it was
tested). Linear's GitHub integration handles the cross-link via the
PR body's Linear: line.
Cross-ref to the content-scope rule appended at the end of each Tier 1
skill that produces public artifacts: testing.md, arch-document,
arch-decide, arch-design, review-code, respond-to-review, brainstorm,
codify. Single-source the rule in commits.md, point at it from each
output-producing skill.
| -rw-r--r-- | arch-decide/SKILL.md | 4 | ||||
| -rw-r--r-- | arch-design/SKILL.md | 4 | ||||
| -rw-r--r-- | arch-document/SKILL.md | 4 | ||||
| -rw-r--r-- | brainstorm/SKILL.md | 4 | ||||
| -rw-r--r-- | claude-rules/commits.md | 25 | ||||
| -rw-r--r-- | claude-rules/testing.md | 4 | ||||
| -rw-r--r-- | codify/SKILL.md | 4 | ||||
| -rw-r--r-- | respond-to-review/SKILL.md | 4 | ||||
| -rw-r--r-- | review-code/SKILL.md | 4 |
9 files changed, 52 insertions, 5 deletions
diff --git a/arch-decide/SKILL.md b/arch-decide/SKILL.md index 8446ca3..b0078fb 100644 --- a/arch-decide/SKILL.md +++ b/arch-decide/SKILL.md @@ -445,3 +445,7 @@ adr link 2 "Complements" 1 "Is complemented by" Forked from [wshobson/agents](https://github.com/wshobson/agents) — MIT licensed. See `LICENSE` in this directory for the original copyright and terms. + +## Content scope + +Output this skill produces that gets committed or shared with the team must follow the *Content scope for public artifacts* rule in [`commits.md`](../claude-rules/commits.md): no local paths, no private repo names, no personal tooling references. diff --git a/arch-design/SKILL.md b/arch-design/SKILL.md index 90b58cf..744b8d0 100644 --- a/arch-design/SKILL.md +++ b/arch-design/SKILL.md @@ -243,3 +243,7 @@ After the brief is Accepted: - `arch-decide` — record each Open Decision as an ADR under `docs/adr/` - `arch-document` — expand into a full arc42-structured document under `docs/architecture/` with C4 diagrams - `arch-evaluate` — once code exists, audit it against this brief + +## Content scope + +Output this skill produces that gets committed or shared with the team must follow the *Content scope for public artifacts* rule in [`commits.md`](../claude-rules/commits.md): no local paths, no private repo names, no personal tooling references. diff --git a/arch-document/SKILL.md b/arch-document/SKILL.md index 0690038..24a3720 100644 --- a/arch-document/SKILL.md +++ b/arch-document/SKILL.md @@ -311,3 +311,7 @@ arc42 is a living document. Re-run `arch-document` when: - A scenario's behavior or SLO changes → section 6 or 10 Commit each regeneration. The document's Git history is part of the architecture record. + +## Content scope + +Output this skill produces that gets committed or shared with the team must follow the *Content scope for public artifacts* rule in [`commits.md`](../claude-rules/commits.md): no local paths, no private repo names, no personal tooling references. diff --git a/brainstorm/SKILL.md b/brainstorm/SKILL.md index 1b9ad08..b47523f 100644 --- a/brainstorm/SKILL.md +++ b/brainstorm/SKILL.md @@ -189,3 +189,7 @@ Before declaring the design accepted: - **Validate in chunks.** 200-300 words, then check. - **YAGNI ruthlessly.** Remove anything not justified by the problem statement. - **Back up when needed.** Revising early beats committing to wrong. + +## Content scope + +Output this skill produces that gets committed or shared with the team must follow the *Content scope for public artifacts* rule in [`commits.md`](../claude-rules/commits.md): no local paths, no private repo names, no personal tooling references. diff --git a/claude-rules/commits.md b/claude-rules/commits.md index 7fcd4ba..876677d 100644 --- a/claude-rules/commits.md +++ b/claude-rules/commits.md @@ -98,15 +98,30 @@ project. Don't mention: Rule of thumb: if a teammate couldn't find the referenced thing without the user's help, don't reference it. -Structure shipped-fix descriptions in this order, using the headings -verbatim: +Different artifact types carry different content. Don't duplicate. + +**Linear ticket bodies:** two sections, in order. 1. **Problem** — what's wrong, with enough detail that a teammate can recognize the same failure mode in their own work. -2. **Fix** — what changed. +2. **Fix** — what changed (or what's proposed). + +The causal "why" and the test verification belong in the PR, not the +ticket. Linear's GitHub integration auto-cross-links once the PR body +includes the `Linear:` line, so the ticket reader reaches the PR +without needing a body-level link. + +**PR descriptions:** four sections, in order. Same first two as the +ticket, plus: + 3. **Why this fixes it** — causal link, one or two sentences. -4. **How it was tested** — skip for proposals, specs, or discussions. - Required for shipped fixes. +4. **How it was tested** — skip for proposals, specs, or discussions; + required for shipped fixes. + +The PR is the technical artifact. It carries the detail. + +**PR review comments** are conversational and don't follow this +structure — they follow the Voice and Focus rules above. Verbose preambles, motivational language, and context unrelated to the problem belong out. Same conciseness pressure as commit-message bodies. diff --git a/claude-rules/testing.md b/claude-rules/testing.md index b91b76c..02c6ce0 100644 --- a/claude-rules/testing.md +++ b/claude-rules/testing.md @@ -275,3 +275,7 @@ If you catch yourself thinking any of these, stop and write the test. - Non-deterministic tests (random without seed, network in unit tests) - Testing framework behavior instead of your code - Ignoring or skipping failing tests without a tracking issue + +## Content scope + +Test code, fixtures, docstrings, and comments are checked into the repo and visible to the team. They must follow the *Content scope for public artifacts* rule in [`commits.md`](commits.md): no local paths, no private repo names, no personal tooling references. diff --git a/codify/SKILL.md b/codify/SKILL.md index 082b974..4a0b5e6 100644 --- a/codify/SKILL.md +++ b/codify/SKILL.md @@ -190,3 +190,7 @@ The grow-and-refine / evidence-backed approach draws on Agentic Context Engineer - **Avoiding context collapse** — resist the temptation to rewrite old entries into smoother prose; specificity is the value This skill implements the Curation phase. Reflection and Generation happen in the main conversation. + +## Content scope + +Output this skill produces that gets committed or shared with the team must follow the *Content scope for public artifacts* rule in [`commits.md`](../claude-rules/commits.md): no local paths, no private repo names, no personal tooling references. diff --git a/respond-to-review/SKILL.md b/respond-to-review/SKILL.md index c1cc996..3508fa5 100644 --- a/respond-to-review/SKILL.md +++ b/respond-to-review/SKILL.md @@ -48,3 +48,7 @@ For each review comment, before implementing anything: - Summarize what was implemented, what was deferred, and what needs discussion - Link any follow-up issues created for out-of-scope suggestions + +## Content scope + +Output this skill produces that gets committed or shared with the team must follow the *Content scope for public artifacts* rule in [`commits.md`](../claude-rules/commits.md): no local paths, no private repo names, no personal tooling references. diff --git a/review-code/SKILL.md b/review-code/SKILL.md index f01094c..1bb2bde 100644 --- a/review-code/SKILL.md +++ b/review-code/SKILL.md @@ -347,3 +347,7 @@ None. - **Important** → fix, or deliberately defer with an ADR (run `/arch-decide`) - **Minor** → follow-up issues or a cleanup PR - **Intent-vs-Delivery gaps** → either file tickets for the missing pieces or update the plan to reflect reality + +## Content scope + +Output this skill produces that gets committed or shared with the team must follow the *Content scope for public artifacts* rule in [`commits.md`](../claude-rules/commits.md): no local paths, no private repo names, no personal tooling references. |
