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

Projects

Status

Todo

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions