Lint Fix Loop
Iteratively fix linting errors until the codebase is clean.
Philosophy: Fix errors properly, don't suppress them. Understand why the rule exists.
The Job
- •Run lint command to see all errors
- •Fix ONE error at a time
- •Run lint again to verify fix didn't break anything
- •Repeat until zero errors
Iteration Flow
code
┌─────────────────────────────────────────────────┐ │ 1. Run lint command │ │ 2. If zero errors → COMPLETE │ │ 3. Pick ONE error to fix │ │ 4. Understand why the rule exists │ │ 5. Fix the error properly │ │ 6. Run lint again to verify │ │ 7. Loop back to step 1 │ └─────────────────────────────────────────────────┘
Fix Priority
Fix errors in this order:
- •Type errors - These often cause other errors
- •Import errors - Missing/wrong imports
- •Unused variables - Dead code
- •Style errors - Formatting, naming
- •Complexity warnings - Refactoring needed
Fixing Guidelines
DO:
- •Understand why the lint rule exists
- •Fix the root cause
- •Check if the fix is consistent with codebase patterns
- •Run tests after fixing
DON'T:
- •Add
// eslint-disablecomments (except for rare valid cases) - •Suppress errors without understanding them
- •Make changes that break functionality
Stop Condition
When lint command returns zero errors:
- •Output:
<promise>COMPLETE</promise>
If stuck on an error:
- •Note why in progress.txt
- •If it's a false positive, document and disable with comment
- •If truly blocked, output:
<promise>BLOCKED</promise>
Example Usage
User: "Fix all lint errors"
The skill will:
- •Run lint command
- •Fix errors one by one
- •Report when all errors are fixed
Checklist Per Iteration
- • Ran lint command
- • Identified ONE error to fix
- • Understood why the rule exists
- • Fixed the error properly (not suppressed)
- • Verified fix with another lint run
- • Verified tests still pass