Commit Graph

15 Commits

Author SHA1 Message Date
Jordan Ritter 1e70dae975 chore: widen lefthook format glob and add ruff for Python
Pre-commit lint-fix now covers json, md, css, yml, yaml, html, vue, py
in addition to js/ts. Adds ruff format for Python files. Local
formatting coverage now matches CI.
2026-05-13 22:55:11 -07:00
Jordan Ritter ff4bb27945 fix(showcase): integration fixes — lefthook glob, feature-registry, fixture validator, constraints, test snapshots 2026-04-24 21:24:26 -07:00
Tyler Slaton 0189a33da0 chore: exclude docs/** from pre-commit lint-fix hook
A docs-only commit expanded {staged_files} to a docs/** path; oxlint
silently processed 0 files (both configs ignore docs/**) and then
oxfmt exited 2 with "Expected at least one target file", blocking the
commit. Adding an exclude entry in lefthook.yml lets the existing
empty-{staged_files} guard skip the hook cleanly.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-04-22 17:31:03 -07:00
Jordan Ritter 78a4a6d0a6 chore(repo): root workspace config + top-level showcase docs
Bump pnpm-lock / package.json / pnpm-workspace / lefthook.yml for the
showcase-ops branch, add FRONTEND-STRATEGY / TESTING / QA-COVERAGE /
INTEGRATION-CHECKLIST top-level showcase docs + aimock README, refresh
showcase/.gitignore + showcase/shared/constraints.yaml.
2026-04-22 10:50:09 -07:00
Alem Tuzlak fb7463becd fix(hooks): move check-binaries to standalone script + scope test runner to packages/**
The inline check-binaries hook broke on Windows Git Bash because lefthook invoked
it via sh.exe -c with the multi-line YAML script as a single argument, and the
nested quotes inside (`echo "$STAGED" | grep -iE '...'`) got mangled during
Windows command-line argument escaping. Move it to scripts/hooks/check-binaries.sh
so lefthook just invokes bash against a file, avoiding the escaping issue.

Also scope the root test script (and test:coverage) to --projects=packages/**,
mirroring check:packages. The previous unscoped nx run-many -t test triggered
showcase starter generation tests that fail on leftover state from prior runs;
these aren't relevant to the pre-commit gate, which is about verifying shipped
packages.
2026-04-17 12:55:00 +02:00
Alem Tuzlak 79ce60c580 chore: migrate from eslint+prettier to oxlint+oxfmt
Replace eslint and prettier with oxlint and oxfmt for faster linting
and formatting across the monorepo. Remove all eslint and prettier
configs, dependencies, and related packages. Add .oxlintrc.json and
.oxfmtrc.json for the new tooling. Update CI workflows and lefthook
hooks accordingly. Reformat codebase with oxfmt.

https://claude.ai/code/session_01GMkSf29p78HuMR1mbXn8He
2026-04-02 16:39:05 +02:00
Jordan Ritter ea8f906fea fix: add lefthook pre-commit check for binary artifacts
Mirrors the CI workflow check locally — catches binary extensions,
build directories, dSYM directories, and files over 1 MB at commit
time instead of waiting for CI.
2026-03-06 09:28:36 -08:00
Alem Tuzlak 27f33308ed fix: only run sync-lockfile hook when package.json changes
Add glob filter to the sync-lockfile pre-commit command so it only
triggers when a package.json file is staged. Previously it ran on every
commit, causing unnecessary lockfile diffs that conflicted with main.
2026-03-03 14:51:42 +01:00
Alem Tuzlak 1c960a739f feat: revert to parallel 2026-03-02 16:41:23 +01:00
Alem Tuzlak c67005c070 fix: re-order execution and switch to piped 2026-03-02 16:24:48 +01:00
Alem Tuzlak d008c5a13c fix: merge nx workflows 2026-03-02 16:09:55 +01:00
Alem Tuzlak 420f01bbae fix: add tags for easy local overrides 2026-03-02 15:56:37 +01:00
Alem Tuzlak 36f2d0d55c chore: fix output 2026-03-02 14:59:16 +01:00
Alem Tuzlak e8e6fe0d05 chore: fix lefthook 2026-03-02 14:52:15 +01:00
Alem Tuzlak f25f182ff1 chore: migrate from husky to lefthook and fix angular tests
- Replace husky with lefthook for git hooks management
- Pre-commit runs lint --fix, format, test, and check:packages in parallel
  with auto-staging of fixes via stage_fixed
- Commit-msg runs commitlint
- Add dependsOn ^build to test target in nx.json so dependencies are
  built before tests run
- Upgrade @analogjs/vite-plugin-angular and @analogjs/vitest-angular
  from ^1.20.2 to ^2.2.3 for vite 7 compatibility
- Add pnpm packageExtensions to declare missing vite peer dependency
  on @analogjs/vite-plugin-angular
- Fix lint issues: let -> const in agent and react packages
- Disable nx TUI in pre-commit hooks via NX_TUI env var
2026-02-24 15:17:21 +01:00