Skip to content

[Tech-debt] ESLint globally disables no-explicit-any and no-unused-vars — masks type debt #747

Description

@RUKAYAT-CODER

Overview

.eslintrc.json sets @typescript-eslint/no-explicit-any: off and @typescript-eslint/no-unused-vars: off. Silencing these two rules project-wide hides hundreds of implicit any types and dead variables that accumulate over time, making the codebase progressively harder to refactor safely.

Specifications

Features:

  • no-explicit-any is enforced at warn level, allowing incremental remediation
  • no-unused-vars is enforced at error level

Tasks:

  • Change @typescript-eslint/no-explicit-any from off to warn in .eslintrc.json
  • Change @typescript-eslint/no-unused-vars from off to error
  • Run eslint --max-warnings=0 and fix all newly surfaced issues
  • Add a format policy for intentional suppressions to CONTRIBUTING.md

Impacted Files:

  • .eslintrc.json
  • Many source files

Acceptance Criteria

  • eslint --max-warnings=0 passes across the entire codebase
  • No blanket /* eslint-disable */ comments are added to work around the rules
  • At least no-unused-vars is enforced at error level

Metadata

Metadata

Assignees

Labels

Stellar WaveIssues in the Stellar wave programtech-debtTechnical debt cleanup

Type

No type
No fields configured for issues without a type.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions