Skip to content

Conversation

@deshartman
Copy link
Contributor

Summary

Adds comprehensive ESLint configuration to proactively catch common code quality issues that GitHub Copilot flags during PR reviews.

This is a preventive measure inspired by issues caught in #546, where Copilot identified several code quality concerns including type safety issues, promise handling, and unused variables during the ngrok migration review.

Changes

  • Added ESLint with TypeScript support at the root level
  • Configured rules to catch:
    • Implicit any types and unsafe type operations
    • Floating promises and misused promises
    • Unused variables (with underscore prefix exception)
    • Jest best practices
  • Added lenient rules for test files where stricter typing is less critical
  • Integrated ESLint into lint-staged for automatic checking on commit
  • Added npm run lint and npm run lint:fix scripts

Configuration Highlights

  • Uses @typescript-eslint parser with type-aware linting
  • Configured for monorepo structure with TypeScript projects
  • Warnings for type safety issues (not errors, since any is sometimes needed)
  • Errors for promise handling issues
  • Separate, more lenient rules for test files

Testing

  • All existing tests pass
  • ESLint runs successfully on the codebase
  • Pre-commit hook integration verified

References

🤖 Generated with Claude Code

Adds comprehensive ESLint setup to proactively catch common code quality
issues flagged by GitHub Copilot during PR reviews, including:

- Implicit any types and unsafe type operations
- Floating promises and misused promises
- Unused variables
- Jest best practices

The configuration is tuned for this TypeScript monorepo and includes
lenient rules for test files where stricter typing is less critical.

This change helps prevent issues like those caught in twilio-labs#546 where Copilot
identified type safety and promise handling concerns.

Co-Authored-By: Claude <[email protected]>
@changeset-bot
Copy link

changeset-bot bot commented Jan 22, 2026

🦋 Changeset detected

Latest commit: 001fdda

The changes in this PR will be included in the next version bump.

This PR includes changesets to release 0 packages

When changesets are added to this PR, you'll see the packages that this PR includes changesets for and the associated semver types

Not sure what this means? Click here to learn what changesets are.

Click here if you're a maintainer who wants to add another changeset to this PR

Add empty changeset to satisfy changeset-bot. This is a dev-tooling
change that doesn't require version bumps.

Co-Authored-By: Claude <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant