[flake8]
max-line-length = 100
extend-select = B
extend-ignore =
    # whitespace before ':' — conflicts with black
    E203,
    # line break before binary operator — conflicts with black
    W503
exclude =
    .venv,
    .git,
    __pycache__,
    dist,
    build
per-file-ignores =
    # Bandit S-rules are noisy in tests (assert, subprocess, etc.) — mute them.
    tests/*:S101,S108,S404,S603
    # subprocess with constant args in manifest.py — false positives for S603, S607
    experiments/scripts_eval/manifest.py:S404,S603,S607
