Skip to content

[Enhancement]: make lint reports thousands of flake8 errors #275

@longdafeng

Description

@longdafeng

Description

Description

Running make lint (which runs flake8 src tests) reports ~3,970+ lint errors across the codebase, causing the lint target to fail.

Steps to Reproduce

  1. Clone the repository and enter the project directory.
  2. Run: make lint
  3. Observe flake8 output and non-zero exit code.

Error Summary

Code Description Approx. Count
E501 Line too long (> 79 characters) ~3,544
F401 Module imported but unused ~155
F841 Local variable assigned but never used several
F601 Dictionary key repeated with different values 2 (e.g. src/powermem/agent/agent.py)
F541 f-string is missing placeholders several
W293 Blank line contains whitespace several

Errors affect both src/ and tests/ (unit, integration, e2e, regression).

Sample of Errors (first 120 lines)

flake8 src tests
src/powermem/__init__.py:4:80: E501 line too long (112 > 79 characters)
src/powermem/__init__.py:24:1: F401 '.core.memory._auto_convert_config' imported but unused
src/powermem/__init__.py:74:80: E501 line too long (86 > 79 characters)
src/powermem/__init__.py:80:80: E501 line too long (143 > 79 characters)
...
src/powermem/agent/agent.py:10:1: F401 'datetime.datetime' imported but unused
src/powermem/agent/agent.py:11:1: F401 'typing.Union' imported but unused
src/powermem/agent/agent.py:13:1: F401 '..agent.types.AccessPermission' imported but unused
...
src/powermem/agent/agent.py:296:13: F601 dictionary key 'default_scope' repeated with different values
src/powermem/agent/agent.py:326:13: F601 dictionary key 'default_scope' repeated with different values
...
src/powermem/agent/components/scope_controller.py:396:13: F841 local variable 'memory_data' is assigned to but never used
src/powermem/agent/components/scope_controller.py:598:1: W293 blank line contains whitespace
...

(Full output is ~3,973 lines; run make lint 2>&1 | tee lint-errors.txt to capture it.)

Suggested Next Steps

  • Consider relaxing E501 in setup.cfg / .flake8 (e.g. max-line-length = 88) to align with Black, and/or run black + isort to fix formatting, then re-enforce line length if desired.
  • Remove unused imports (F401) and unused variables (F841).
  • Fix duplicate dict keys (F601) and f-strings without placeholders (F541).
  • Trim trailing whitespace on blank lines (W293).

Environment

  • Linter: flake8 (via make lint in Makefile line 63).
  • Scope: src and tests directories.

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type
No fields configured for issues without a type.

Projects

Status

Todo

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions