Skip to content

chore: sync .claude extension template to dev-env#102 - #8

Merged
twistedmelonman merged 1 commit into
mainfrom
claude/chore-lint-debt-719a49fd
Sep 9, 2026
Merged

chore: sync .claude extension template to dev-env#102#8
twistedmelonman merged 1 commit into
mainfrom
claude/chore-lint-debt-719a49fd

Conversation

@twistedmelonman

Copy link
Copy Markdown
Member

What was broken

This repo failed standards-check on shellcheck only.

The shellcheck findings were not this repo's code

Every shellcheck finding was in .claude/hooks/extensions/example.sh.disabled
— a copied template that is never executed (the .disabled suffix is what
stops the global hook sourcing it). The findings (SC2155, SC2329, SC2312) were
already fixed upstream in smartwatermelon/dev-env#102.

Provenance verified, not assumed: this file's md5 matches dev-env at
404218c exactly — the revision immediately before that fix. So this is a
pure forward update to an already-reviewed, already-merged file, not an edit
someone made locally.

Verification

$ bash standards/run-standards.sh --repo <this repo>
RUNNER_EXIT=0   # zero ::error lines from all six linters

The same runner was run before the fix as a known-bad control and
reproduced these exact findings.

Wider finding

Six fleet repos carry this identical stale template, and repo-template does
too — so every new repo is born failing standards-check. There is no
propagation mechanism for .claude/; that root cause is
smartwatermelon/dev-env#62.

Scope

Wave 3 of the fleet standards-check rollout, round 2. Round 1 (four repos)
merged green earlier today.

https://claude.ai/code/session_01UaPoEix1iED8ENCZCa12jy

Wave 3 of the standards-check rollout. This repo failed shellcheck on a
single file: .claude/hooks/extensions/example.sh.disabled, a copied
template that is never executed (the .disabled suffix is what keeps the
global hook from sourcing it).

The findings were SC2155, SC2329, and SC2312 in that template — all
already fixed upstream in smartwatermelon/dev-env#102. The copy here is
byte-identical to dev-env at 404218c, the revision immediately before
that fix, so this is a pure forward update to a file that was already
reviewed and merged there, not a local edit.

Provenance was verified rather than assumed: the md5 of this file matches
exactly one revision in dev-env's history for that path.

Verified with the CI runner rather than the linter alone:
run-standards.sh --repo <this repo> now exits 0 with no errors from any
of the six linters.

Six fleet repos carry the same stale copy, and repo-template does too, so
new repos are born failing standards-check. There is no propagation
mechanism for .claude/; that root cause is smartwatermelon/dev-env#62.

Claude-Session: https://claude.ai/code/session_01UaPoEix1iED8ENCZCa12jy
@claude

This comment has been minimized.

@claude

claude Bot commented Sep 9, 2026

Copy link
Copy Markdown

This is an example/template shell hook (disabled by default). The changes improve documentation and fix shell scripting issues:

  • Split variable declarations from assignments (shell best practice)
  • Fixed check_todo_comments() regex: original used PCRE lookahead syntax unsupported by standard grep; new two-pass approach works correctly
  • Refactored main() to use explicit environment-variable gating with safe defaults (all checks OFF by default)
  • Improved documentation about enabling checks

No impact on production or the skill artifact (SKILL.md).

VERDICT: PASS

@twistedmelonman
twistedmelonman merged commit f4522af into main Sep 9, 2026
5 checks passed
@twistedmelonman
twistedmelonman deleted the claude/chore-lint-debt-719a49fd branch September 9, 2026 19:56
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.

1 participant