ESLint 10 drops the legacy eslintrc format, so migrate to flat config.
- Replace .eslintrc.json and .eslintignore with eslint.config.js
- Remove eslint-plugin-github (incompatible with eslint 10; its internal
config only provided 3 DOM rules unused by this project)
- Update @typescript-eslint/* to 8.57.2 and eslint-plugin-jest to 29.x
- Add globals package for environment globals in flat config