make lint was Python-only (PY_SRC never included flowsint-app) —
frontend prettier/eslint lived solely in flowsint-app's own yarn
scripts, disconnected from the repo's single lint entry point. Both
are 0-errors clean today (eslint's ~130 findings are all warnings),
same bar the Python side is already held to, so added as blocking
rather than a separate opt-in step. CONTRIBUTING.md updated to match.
Split by Python vs frontend, matches exactly what CI actually gates
(make lint/typecheck, tsc/eslint/prettier/vitest/build) so it doesn't
drift into its own source of truth. Also notes what the lint-staged
pre-commit hook already covers (ruff, prettier) vs what's still manual
(mypy, eslint, tests), and why the mypy/eslint ratchets exist.
README's Poetry mention was stale (repo uses uv) — fixed in passing,
and pointed its Contributing section at the new file instead of
duplicating instructions.