Reduce Max Lines Per Function
Target threshold: $ARGUMENTS lines per function
If no argument provided, prompt the user for a target.
Step 1: Gather Requirements
-
Read current config from eslint thresholds (eslint.thresholds.json or similar)
-
Run lint with the new threshold to find violations: bun run lint 2>&1 | grep "max-lines-per-function"
-
Note for each violation:
-
File path and line number
-
Function name
-
Current line count
If no violations at $ARGUMENTS, report success and exit.
Step 2: Compile Brief and Delegate
Compile the gathered information into a structured brief:
Reduce max lines per function threshold to $ARGUMENTS.
Functions exceeding threshold (ordered by line count):
- [file:function] (lines: X, target: $ARGUMENTS) - Line Y
- ...
Configuration change: eslint.thresholds.json, maxLinesPerFunction to $ARGUMENTS
Refactoring strategies: extract functions, early returns, extract conditions, use lookup tables, consolidate logic
Verification: bun run lint 2>&1 | grep "max-lines-per-function" | wc -l → Expected: 0
Invoke /plan-execute with this brief to create the implementation plan.