Repository navigation
Bring GOVERNANCE.md Sentences to 25 Words or Fewer - #3551
Conversation
Bring every sentence in "Foundational Principles", "Durable Knowledge and Self-Improvement", "Repository Boundaries and Write Safety", and "Representative Data in Agent-Authored Text" to 25 words or fewer, keeping each rule's meaning unchanged. Refs #3531 Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Bring every sentence from "Git and Commit Rules" through "Documentation Style Conventions" to 25 words or fewer, keeping each rule's meaning unchanged. Reword one count the first commit introduced, per the incidental-counts rule. Refs #3531 Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Bring every sentence in "Verification Discipline" to 25 words or fewer, keeping each rule's meaning unchanged. Refs #3531 Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Bring every sentence in "Design Before Code", "Trust Boundaries and Hardening Effort", "PR Review Etiquette", and "Communicating with the User" to 25 words or fewer, keeping each rule's meaning unchanged. Two sentences in "PR Review Etiquette" stay as they are, since .github/copilot-instructions.md carries them verbatim. Refs #3531 Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Bring every sentence in "Workflow YAML Conventions" to 25 words or fewer, keeping each rule's meaning unchanged. Refs #3531 Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Bring every sentence from "Running the Linters Locally" through "Repository Layout" to 25 words or fewer, keeping each rule's meaning unchanged. Refs #3531 Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Refresh the include regions in agent-conduct, fleet-code-review, and session-handoff, and their generated copies, from the shortened GOVERNANCE.md sections. Refs #3531 Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Name the referent where a split left a pronoun pointing at the wrong sentence, restore each dropped "because" link, put back the restrictions two rewrites widened, and drop an incidental count. The skills including the touched sections are regenerated. Refs #3531 Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Put back the restriction on an unrecorded cause, keep the citation carve-out scoped to the URL it names, and rejoin each detached second reason to its "because". The skills including the touched sections are regenerated. Refs #3531 Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
|
Important
This repository does not receive automatic reviews because it has fewer than 10 stars.
|
|
A recorded local strict-review pass covers head |
There was a problem hiding this comment.
🟡 Changes recommended
An active P2 nit remains in .agents/skills/agent-conduct/SKILL.md because the plural subject “Two Profiles” is paired with the incorrect singular verb “states.”
1 open issue
What changed in this PR
This pull request shortens overlong sentences in GOVERNANCE.md to 25 words or fewer while preserving meaning, then regenerates the affected skill distributions and source digests.
Changes:
- Restructures governance guidance across verification, communication, design, hardening, and durable-knowledge sections.
- Regenerates the authored, GitHub, and Claude skill copies.
- Refreshes Claude source digests for the updated skills.
- Two nit-level review comments remain in the canonical
agent-conductskill source.
| File | Description |
|---|---|
.github/skills/session-handoff/SKILL.md |
Regenerated GitHub session-handoff skill distribution. |
.github/skills/fleet-code-review/SKILL.md |
Regenerated GitHub fleet-code-review skill distribution. |
.github/skills/agent-conduct/SKILL.md |
Regenerated GitHub agent-conduct skill distribution. |
.claude-plugin/fleet-skills/skills/session-handoff/SKILL.md |
Regenerated Claude session-handoff skill distribution. |
.claude-plugin/fleet-skills/skills/fleet-code-review/SKILL.md |
Regenerated Claude fleet-code-review skill distribution. |
.claude-plugin/fleet-skills/skills/agent-conduct/SKILL.md |
Regenerated Claude agent-conduct skill distribution. |
.claude-plugin/fleet-skills/.source-digests/session-handoff |
Updated session-handoff source digest. |
.claude-plugin/fleet-skills/.source-digests/fleet-code-review |
Updated fleet-code-review source digest. |
.claude-plugin/fleet-skills/.source-digests/agent-conduct |
Updated agent-conduct source digest. |
.agents/skills/session-handoff/SKILL.md |
Updated canonical session-handoff skill source. |
.agents/skills/fleet-code-review/SKILL.md |
Updated canonical fleet-code-review skill source. |
.agents/skills/agent-conduct/SKILL.md |
Updated canonical agent-conduct skill source; contains the two recorded nit-level comments. |
Review effort: Lite
Refs #3531 Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
|
A recorded local strict-review pass covers head |
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## develop #3551 +/- ##
========================================
Coverage 81.50% 81.50%
========================================
Files 26 26
Lines 9065 9065
========================================
Hits 7388 7388
Misses 1677 1677
Flags with carried forward coverage won't be shown. Click here to find out more. ☔ View full report in Codecov by Harness. 🚀 New features to boost your workflow:
|
…irectories, and GOVERNANCE.md Sentence Length (#3553) ## Summary Promotes `develop` to `main`, carrying round 2 of the resync-issue burndown: - #3546: the paragraph under `AGENTS.md`'s tier table and the `spec/model-tiers.json` note no longer claim a no-model dispatch runs at the session's own model. The `highest` bullet is the one statement of that rule. Three skills are regenerated. - #3547: `AUDIT.md`, `RESYNC.md` section 4 and the `carried.hubonly.absent` assertion now name all three hub-only exclusions. They are the baseline, the paths a `trees` entry covers, and the repo-owned trees. - #3549: `python-codestyle` `profiles.md` and `CODESTYLE.md` state that a profile belongs to a declared directory. Each deliverable takes one build-profile directory, lint-only Python may sit beside the component it serves, and only a split by purpose alone is forbidden. - #3551: every `GOVERNANCE.md` sentence is 25 words or fewer, except two in "PR Review Etiquette" that other carried files copy. This is the first slice of the #3531 cleanup, so it does not close that issue. - #3555: promotion fix for Copilot's finding on this pull request. `profiles.md` says an undeclared root is gated only where it tracks a root `pyproject.toml`. Every carried `GOVERNANCE.md` section changes wording here, so each fleet repository's verbatim copy differs from the hub until its next resync. Fixes #3537 Fixes #3543 Fixes #3492 🤖 Generated with [Claude Code](https://claude.com/claude-code)
) ## Summary Audits every sentence that #3551 (`GOVERNANCE.md`, squash `444ec63e`) and #3559 (`AGENTS.md` and `.github/copilot-instructions.md`, squash `eb35070d`) split or rewrote. Each new sentence was compared with its original. The splits listed below had lost or changed meaning, and each is repaired here. Every repaired sentence stays within the 25-word cap. The `agent-conduct` and `session-handoff` include regions are regenerated from the new `GOVERNANCE.md` text. No other skill's region changes. ## Repairs Each line reads sweep text -> repaired text. ### Reason left on only one half of a split - `GOVERNANCE.md` "Verification Discipline", canonical content: the manifest-owned tree, the byte-for-byte compare, and the drift on the next fidelity check stood as bare facts. -> "That is because the tree is manifest-owned, and the copy is compared...", then "It is also because a local edit there is drift...". - Same bullet: "It would otherwise reach a carrier..." -> "It is also because such a unit would otherwise reach a carrier...". - `GOVERNANCE.md` "Communicating with the User", blocked work: "The one line still waiting on the user is the easiest in it to skim past." -> "It is also because the one line still waiting on the user is the easiest in a summary to skim past." - Same section, parked queue: "Closing such an issue just to clear the queue discards..." -> "It is also because closing such an issue...". - `GOVERNANCE.md` "Workflow YAML Conventions", action pinning: "Dependabot still bumps SHA pins..." -> "It is also because Dependabot still bumps SHA pins...". - `GOVERNANCE.md` "Running the Linters Locally", pre-push hook: "Those describe the same content only sometimes." -> rejoined to its "That is because" sentence with ", and those describe...". - Same section, excludes: "The gate refuses one rather than reporting..." -> "Skipping them also matters because the gate refuses one...". ### A "so" consequence left on only one half - `GOVERNANCE.md` "Hub-Hosted Tooling": "A tool taking its target as an argument runs anywhere..." -> "Likewise, a tool taking its target...". - `GOVERNANCE.md` "Running the Linters Locally", pre-push hook: "The prose layer above stays the agent-agnostic one..." -> "The prose layer above therefore stays...". ### A condition no longer reaching every clause it covered - `GOVERNANCE.md` "Verification Discipline", locating checks: "Read that file whole where it exists..." -> "In that case, read that file whole...". - `GOVERNANCE.md` "Repository Details": "The fix is to sharpen the declared source..." read as the fix for any drift. -> "The fix there is to sharpen...". ### A pronoun or "that" losing its antecedent - `GOVERNANCE.md` "Verification Discipline", canonical content: "It adds a bounded slice..." -> "That work also covers a bounded slice...". - `AGENTS.md` "Session Scope": "That section states the account whole..." now followed a different sentence. -> "That `GOVERNANCE.md` section states the account whole...". ### An example list turned into a closed definition - `GOVERNANCE.md` "Character Set": "Its tiers are never legitimate, ..., and developer-typed Unicode." The skill has four tiers, and developer-typed Unicode stays regardless of tier. -> "That tier system covers what is never legitimate, ...", then "It also covers a fixed set of emoji callout markers and developer-typed Unicode." ### A restriction widened - `.github/copilot-instructions.md` "Disproved Claims": "A reason not to check is strictly worse than proving the claim a second time." generalized to any reason. -> "That outcome is strictly worse...". ## Verification - `python3 scripts/prose_lint.py --check sentence-length` on `GOVERNANCE.md`, `AGENTS.md`, and `.github/copilot-instructions.md`: exit 0 each. - `uv run --no-project --script scripts/build_dist.py --check`: current. - `python3 scripts/prose_lint.py . --diff origin/develop` and the whole-tree `--check` block from `OPERATIONS.md` "Local Verification": exit 0. - `scripts/repo_gate.py`, `spec/validate.py`, and `canonical_review.py status`: clean. - `unittest discover -s tests`: 3081 tests, OK (7 skipped). ## Local Review Two recorded `local-strict-review` passes at the `frontier` tier, each checking every hunk against its pre-sweep original. The first raised 2 `introduced` findings. The Character Set repair had an unclear "It" and a list with no noun, and the excludes repair had an "It" with no antecedent. Both are fixed in the second commit. The second pass raised none. Refs #3531 🤖 Generated with [Claude Code](https://claude.com/claude-code) --------- Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>

Summary
First slice of the sentence-length cleanup. Every over-cap sentence in
GOVERNANCE.mdis split or restructured to 25 words or fewer, with its meaning unchanged. The skills that includeGOVERNANCE.mdsections are regenerated from the new text.python3 scripts/prose_lint.py --check sentence-length GOVERNANCE.mdgoes from 306 hits to 2..github/copilot-instructions.mdcarries both sentences verbatim, and that file is outside this change, so they stay as they are until both copies move together.scripts/build_dist.py, and--checkis clean. The "Incidental Counts" include in comment-and-doc-style needed no change.Commits go section by section so each diff stays reviewable.
Verification
prose_lint.pydefault rules onGOVERNANCE.md: clean. The opt-insentence-splitcount is the same as ondevelop.uv run --no-project --script scripts/build_dist.py --check: current.python -m unittest discover -s tests: 3072 tests, OK.spec/validate.py,repo_gate.py,canonical_review.py status, and the whole-tree prose block fromOPERATIONS.md"Local Verification": clean.Local Review
Three recorded
local-strict-reviewpasses. The first raised 14 findings, and the second raised 6. Eachintroducedfinding, a pronoun or reason a split had loosened, is fixed in the two follow-up commits. The third pass raised none. Onestylefinding is declined: some bold lead-ins changed punctuation or moved a period inside the bold. None is a heading or anchor, and nothing outside the include regions quotes them.fleet-code-review"Review the Change" item 5 omits pure preferences.Refs #3531
🤖 Generated with Claude Code