repowisepipecat-ai/pipecat

pipecat-ai / pipecat

pythonmain7edf725335.0K linessynced 7h ago

Code health

7.3out of 10Good

This codebase scores 7.3 out of 10 for code health, which we rate good. It also scores maintainability 8.0 and static performance 9.9 out of 10. The three are scored separately and never blended into one number. Risk is concentrated, as it usually is: 340 of 1,792 files are git hotspots, and they average 6.1 — which is where the fixes pay off most.

Do next

4 suggested

4 things worth doing in the week to Oct 19, the last indexed commit, 1 of them now.

Now

  • High

    Clean up what this week's commits left: 4 serious findings in 4 files

    3 commits in the last 7 days added or worsened them, and they are still open. Start with src/pipecat/evals/judge.py.

    serious findings
    4
    critical
    0
    files
    4

Worth planning

  • Start breaking up _process_context (CCN 46, 163 lines): first lift lines 906-939

    src/pipecat/services/google/llm.py:906

    _process_context nests deeply; easier to read and change once split, which also removes a duplicate; function changed in 26 commits; its file is imported by 42 files, changed 32 times in 90 days.

    gain
    up to +1.0 health on this file(inferred)
    finding
    Nested complexity
    size
    CCN 46, 163 lines, nests 6 deep
    severity
    high
    worth a check
  • Start breaking up _process_context (CCN 53, 165 lines): first lift lines 510-550

    src/pipecat/services/aws/llm.py:510

    _process_context is long and branchy; easier to read and change once split, which also removes a duplicate; function changed in 31 commits; its file is imported by 15 files, changed 19 times in 90 days.

    gain
    up to +0.8 health on this file(inferred)
    finding
    Brain method
    size
    CCN 53, 165 lines, nests 4 deep
    severity
    critical
    worth a check
  • Start breaking up ask_project_questions (CCN 65, 412 lines): first lift lines 484-637

    src/pipecat/cli/prompts/questions.py:484

    ask_project_questions is long and branchy; easier to read and change once split, which also removes a duplicate; function changed in 6 commits; its file is imported by 8 files, changed 1 time in 90 days.

    gain
    up to +1.0 health on this file(inferred)
    finding
    Brain method
    size
    CCN 65, 412 lines, nests 4 deep
    severity
    critical
    worth a check

Improve what Repowise can see

  • Add a test coverage report

    Without one, Repowise cannot tell tested code from untested code, so every test-related action says “unknown”.

    line coverage
    Unknown, no report
Lines of code
335.0K

Recent activity

All commits

Everything we found

4,267 open
  • python94%
  • typescript4%
  • javascript1%
  • shell<1%
  • makefile<1%

Explore this codebase