From a8fd5f863b88b97934d7374d3531b86e4ec1905e Mon Sep 17 00:00:00 2001 From: ryoppippi <1560508+ryoppippi@users.noreply.github.com> Date: Mon, 5 Jan 2026 16:24:35 +0000 Subject: [PATCH 1/2] chore(lefthook): add lockfile integrity and dependency change checks - Add lockfile-sync-check: verify package.json/pnpm-workspace.yaml changes are reflected in pnpm-lock.yaml using --frozen-lockfile - Add lint-all-on-lockfile-change: run full lint when lockfile changes - Add test-all-on-lockfile-change: run full test suite when lockfile changes These checks ensure dependency changes are properly validated before push. --- lefthook.yaml | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/lefthook.yaml b/lefthook.yaml index 572cc04..4719e96 100644 --- a/lefthook.yaml +++ b/lefthook.yaml @@ -20,3 +20,12 @@ pre-push: jobs: - name: knip run: pnpm run lint:knip + - name: lockfile-sync-check + glob: '{package.json,pnpm-workspace.yaml}' + run: pnpm install --lockfile-only --frozen-lockfile + - name: lint-all-on-lockfile-change + glob: 'pnpm-lock.yaml' + run: pnpm lint + - name: test-all-on-lockfile-change + glob: 'pnpm-lock.yaml' + run: pnpm test From d65855f59d824886dd660cff60dbb46454a4c5ab Mon Sep 17 00:00:00 2001 From: ryoppippi <1560508+ryoppippi@users.noreply.github.com> Date: Mon, 5 Jan 2026 16:25:24 +0000 Subject: [PATCH 2/2] fix(lefthook): match all package.json files in monorepo Use **/package.json glob pattern to catch changes in workspace packages. --- lefthook.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lefthook.yaml b/lefthook.yaml index 4719e96..78a0318 100644 --- a/lefthook.yaml +++ b/lefthook.yaml @@ -21,7 +21,7 @@ pre-push: - name: knip run: pnpm run lint:knip - name: lockfile-sync-check - glob: '{package.json,pnpm-workspace.yaml}' + glob: '{**/package.json,pnpm-workspace.yaml}' run: pnpm install --lockfile-only --frozen-lockfile - name: lint-all-on-lockfile-change glob: 'pnpm-lock.yaml'