Case Study: FastAPI¶
Repository: fastapi/fastapi Stats: 1,118 files, 4,554 functions Drift Score: 0.690 (HIGH) | Time: 2.3s
Scope note
These numbers reflect a full-clone analysis (all branches and test files included). The Comparisons page uses a src/-only shallow-clone scope, which reports 664 files, score 0.624, and 13.1 s for the same repository.
Key Findings¶
499 Near-Duplicate Test Functions (MDS 0.85)¶
FastAPI's test suite contains hundreds of structurally identical test functions that differ only in the model name: test_read_items(), test_read_users(), test_read_events() share identical assertion structures.
This is the classic "mutant duplicate" pattern — code that was likely copied and minimally adapted rather than abstracted into a parameterized test fixture.
4 Error-Handling Patterns in Route Modules (PFS)¶
The Pattern Fragmentation Signal found 4 distinct approaches to error handling across route modules — try/except with re-raise, bare except with logging, HTTPException wrapping, and direct return.
Interpretation¶
Even well-maintained frameworks accumulate structural debt at scale. These findings don't indicate bugs — they indicate inconsistency that makes the codebase harder to modify safely.
Recommendation: Parameterized test fixtures (@pytest.mark.parametrize) could reduce the test duplication. A shared error-handling utility could unify the route patterns.