Files
flowsint/.github
dextmorgn 2fc60276ba ci: wire lint/typecheck/pre-commit gates that existed but never ran
flake8/mypy/eslint were configured (or, for eslint, declared) but no CI
job and no pre-commit hook ever executed them — black/isort/flake8 had
no line-length agreement either (flake8 defaulted to 79, black to 88).

- .flake8: align max-line-length with black, ignore black-conflicting
  codes, carve out the one file with an intentional wildcard-export API
- Makefile: `make lint` (black/isort/flake8, blocking — repo is clean),
  `make typecheck` (mypy, ratcheted to files the branch touched — ~2200
  pre-existing errors workspace-wide, not fixed blindly in one pass)
- .github/workflows/lint.yml: runs the above in CI, plus the frontend
  equivalents (prettier/eslint blocking where clean, eslint/tsc
  ratcheted where not)
- .github/workflows/tests.yml: add the vitest job that never existed
- flowsint-app/.eslintrc.cjs: parser was declared but never installed
  (yarn lint threw immediately) — install @typescript-eslint/*, add
  react-hooks/recommended; no-explicit-any set to warn (real backlog,
  not fixed blindly)
- lint-staged + husky pre-commit: mirrors the CI checks that are
  actually clean today (black/isort/flake8, prettier). eslint is left
  out of pre-commit on purpose — its backlog would block unrelated
  commits; it stays a CI-only ratchet until paid down.
2026-08-25 09:33:32 +02:00
..