Skip to content

Fable5: Codebase never passed its own lint/style gates (black, isort, F824) #21

Description

@etiennechabert

Problem

Even with the workflow infrastructure repaired (#20), the lint-and-test check cannot pass because the codebase never satisfied its own gates:

  1. flake8 blocking step: 24 × F824global X declared in functions that only read or mutate X in place (e.g. global all_meeting_segments where only .append() is called) but never rebind it. F82 is in the workflow's blocking --select list, so this alone fails the job.
  2. black --check --line-length=120: 4 files would be reformatted (app.py, config.py, monitor_memory.py, verify_gpu.py) — the repo was never black-formatted.
  3. isort --check-only --profile black: 3 files fail.

Fix

  • Remove the never-assigned names from the 12 global statements (behavior-neutral: global is only required for rebinding).
  • One-time black + isort pass with the CI's exact flags.
  • Care points verified by hand: the order-sensitive transformers torchcodec monkeypatch in app.py still executes after the transformers imports and before any pipeline is built; isort does not move app.py's deliberate mid-file import blocks across statements.

Done as a dedicated PR (merging before the bug-fix PR #16) so functional changes stay reviewable and sit on top of formatted code.

Status

Fixed in PR #17.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions