Problem
prettier-plugin-sh is already an installed dependency in the root package.json, but *.sh files are absent from the lint-staged glob, so the plugin is paid for (install size, config) but never actually applied to any shell script in the repo.
Proposal
- Add
*.sh (and any other shell-script extensions used, e.g. files without extension under src/*/) to the lint-staged configuration in root package.json so prettier with prettier-plugin-sh formats them on commit.
- Run a one-time repo-wide format pass once the config is in place so existing scripts aren't all flagged as diffs on next touch.
- Cross-check formatting rules against ShellCheck (see the separate "Add ShellCheck linting to CI" issue) to make sure the two tools don't fight each other (e.g. brace/quoting style).
Where this lives / sync note
This is a root-level tooling config change (package.json, .prettierrc/lint-staged config) — it governs the monorepo's own pre-commit hooks (which this repo dogfoods via its own githooks feature). It doesn't need to propagate into the split repos itself, but any shell files it reformats inside src/<feature>/ will flow through split-monorepo.yml as normal.
Acceptance criteria
Problem
prettier-plugin-shis already an installed dependency in the rootpackage.json, but*.shfiles are absent from thelint-stagedglob, so the plugin is paid for (install size, config) but never actually applied to any shell script in the repo.Proposal
*.sh(and any other shell-script extensions used, e.g. files without extension undersrc/*/) to thelint-stagedconfiguration in rootpackage.jsonsoprettierwithprettier-plugin-shformats them on commit.Where this lives / sync note
This is a root-level tooling config change (
package.json,.prettierrc/lint-stagedconfig) — it governs the monorepo's own pre-commit hooks (which this repo dogfoods via its owngithooksfeature). It doesn't need to propagate into the split repos itself, but any shell files it reformats insidesrc/<feature>/will flow throughsplit-monorepo.ymlas normal.Acceptance criteria
*.shfiles are covered bylint-staged/prettier on commit.