fix(bash-format): cover the gitignored option in setup skill and README, correct 0.8.5 changelog - #5251
Conversation
…README and evals The setup skill still called the enabled toggle the only tunable and never reported bash_format_lint_gitignored, so a user asking why an edit to a gitignored file was not formatted got no answer. check now reports both option values and adds a gitignored-files INFO item, apply covers both keys, the README lists both options and the gitignored skip, and a new eval pins the answer. The skip-notice cadence is stated once in the README and the skill, matching the README wording. Refs #4671 Refs #4612 Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01EugXnFddtpHcY5gTuyEirB
…in ships Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01EugXnFddtpHcY5gTuyEirB
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01EugXnFddtpHcY5gTuyEirB
|
PR body contract — issue linkage This PR body conforms to the issue-linkage contract. Nothing to do. |
README Requirements and the setup skill's check name Node.js on PATH, since every hook row launches through node hooks/exec-bash.mjs. The 0.7.60, 0.7.61, 0.8.2 and 0.8.5 entries become one-line shared launcher/library syncs, and the 0.8.5 entry links the follow-up issue #5286 for remaining probe coverage. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01EugXnFddtpHcY5gTuyEirB
|
Claude finished @kyle-sexton's task in 40s —— View job Security review complete
No security issues found. This PR touches only documentation and configuration for the
No hook scripts ( Checked the instruction-surface-deletion lens specifically against the SKILL.md consolidation (repeated "once per session and agent, renewed every eighth skip" notices collapsed into one header line) and the CHANGELOG rewording: both restate/compress existing content without removing any enforced guardrail, so neither qualifies as a finding under the instruction exception register. |
Codex Review SummaryThis comment shows the latest Codex review activity on this pull request.
ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings. |
|
Claude finished @kyle-sexton's task in 2m 21s —— View job Claude finished the code review
SummaryReviewed all 5 changed files (
I did not independently re-run the verification commands listed in the PR body ( Finding (posted inline)
Everything else — the |
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: d2bd09951f
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
…be apply as guidance Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01EugXnFddtpHcY5gTuyEirB
|
Claude finished @kyle-sexton's task in 38s —— View job Security review complete
No security issues found. All 5 changed files are documentation/config, no executable code paths change:
No hook scripts ( Instruction-surface-deletion check: Confirms the same conclusion the prior review reached on an earlier commit ( |
|
Claude finished @kyle-sexton's task in 1m 4s —— View job Claude finished the code review
SummaryThis
I re-reviewed the full diff against
No new correctness or maintainability issues found in this pass. This is a documentation/changelog-only change (no hooks, workflows, or executable code touched), so there's nothing further for this lane to flag. |
|
Claude finished @kyle-sexton's task in 57s —— View job Security review complete
No security issues found. All 5 changed files are documentation/config; no executable code path changes:
No hook scripts ( Instruction-surface-deletion check (
Not a finding. |
|
Claude finished @kyle-sexton's task in 36s —— View job Claude finished the code review
SummaryHEAD This lane already reviewed Per the skip gate in |
Refs: #4671
Refs: #4612
Refs: #4240
Summary
Audit findings for
bash-format(three, all confirmed on main): the setup skill and README did not cover thebash_format_lint_gitignoredoption, the skill and README described the missing-tool notice differently, and the 0.8.5 CHANGELOG entry claimed a session-start probe,prerequisites.jsonand a model-invocable check that this plugin does not ship.Fix
skills/setup/SKILL.md: Purpose names both options;checkstep 7 reports both effective values and explains that a gitignored edit is skipped unlessbash_format_lint_gitignoredis true; the silent-skip explanation covers the gitignored skip;applycan set either key. The notice wording now matches the README ("once per session and agent, renewed every eighth skip").README.md: Behavior bullet for the gitignored skip, both options in the Configuration text and table, the repeated notice clause stated once.skills/setup/evals/evals.json: eval 1 uses the README wording; a new eval asks why an edit to.work/scratch.shwas not formatted.CHANGELOG.md: the 0.8.5 entry is a one-line shared-sync note that says bash-format ships no probe orprerequisites.jsonand links hooks: prerequisites.json, session-start probe and check skill for the remaining binary-probing format plugins #5286. This PR edits a released entry; the 0.8.6 entry names the same edit ("CHANGELOG: corrected the 0.8.5 entry, which claimed a session-start probe andprerequisites.jsonthis plugin does not ship").README.mdRequirements andskills/setup/SKILL.mdcheckname Node.js onPATH(cross-group request from hook-launcher, F12): every hook row launches throughnode hooks/exec-bash.mjs. Anoderow joins the check's pre-computed probes, the check steps are renumbered, and eval 1 expects a missingnodeto be a FAIL.CHANGELOG.md: the 0.7.60, 0.7.61, 0.8.2 and 0.8.5 entries describe shared launcher/library code this plugin never calls or whose flags its rows do not pass, so each is one line: "Shared launcher/library sync; no change to this plugin's behavior" (hook-launcher request, F36). Headings and dates are unchanged. The 0.8.6 entry names these edits alongside the 0.8.5 correction. The 0.8.5 entry now links hooks: prerequisites.json, session-start probe and check skill for the remaining binary-probing format plugins #5286 for the remaining probe coverage (biome-format request). 0.8.4 is a genuine README change and stays.Verification
bash scripts/check-changelog-parity.sh --check --check-order: passbash scripts/check-changelog-parity.sh --check-preserved origin/main: pass (87 headings preserved)bash scripts/check-changelog-parity.test.sh: 86 pass, 0 failbash scripts/validate-plugins.sh: all manifests and the catalog validatedbash plugins/bash-format/hooks/bash-format.test.sh: 58 pass, 0 failpython3 scripts/sync-plugin-options-docs.py --check: up to datebash scripts/check-changed-skills.sh origin/main: setup skill pass, 0 errors, 0 warningsbash scripts/check-skill-portability.sh origin/main: no unexcused coupling tokensRelated
.work/audit/REPORT.md, finding groupplugin-bash-format(skill-body-drift, contradiction, changelog-integrity).hooks/exec-bash.mjs(check-hook-exec-form: no gate-legal way to name Git Bash on Windows, which blocks every bash exec-form row #3708) and the gitleaks composite (gitleaks scans every branch, so one false positive on any branch turns hygiene red on every PR #3599) belong to other groups.probe-prerequisite.shandprerequisites.jsonare deliberately not added until the owner answers hooks: missing external tools are not surfaced to the user; add a model-invocable fleet-wide prerequisites check (no auto-install) #4240 Q1.🤖 Generated with Claude Code
https://claude.ai/code/session_01EugXnFddtpHcY5gTuyEirB