chore: make contributor tooling work; fix drifted docs (#648)

- mypy.ini parses again (multi-line exclude and inline value comments made
  mypy reject the file); the mypy pre-commit hook is manual-only until the
  ~500 existing errors in src/ are paid down, and CONTRIBUTING says so
- .gitignore: ignore all of config/ except the templates (ytm_auth.json and
  others weren't ignored)
- .gitattributes: LF for .sh and .service
- claude-code-review: skip fork PRs, which have no secrets
- check_system_compatibility.sh: 3.13 supported, <3.10 an error
- docs/scripts drift: emulator guide, README API Metrics, route count,
  docs index, scripts README; pyflakes nits in dev scripts

Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
Chuck
2026-09-28 08:26:55 -04:00
committed by GitHub
co-authored by Claude Opus 5.5
parent 76f5d8a336
commit aeaeaa4e94
21 changed files with 68 additions and 47 deletions
+6
View File
@@ -37,6 +37,11 @@ repos:
types: [python]
pass_filenames: false
# Manual only: src/ still has ~500 type errors, so running this on every
# commit would block every contributor. Run it with
# pre-commit run mypy --hook-stage manual
# and don't add new errors in the files you touch. mypy.ini's `files = src`
# is what gives it a target, since pass_filenames is off.
- repo: https://github.com/pre-commit/mirrors-mypy
rev: v1.8.0
hooks:
@@ -45,6 +50,7 @@ repos:
args: [--ignore-missing-imports, --no-error-summary]
pass_filenames: false
files: ^src/
stages: [manual]
- repo: https://github.com/PyCQA/bandit
rev: 1.8.3