Files with the highest combination of change frequency and waste ratio. These are candidates for refactoring or closer review.
Cumulative contribution over time. Watch developers race as positions shift month by month.
Commit activity distribution by hour and day of week across all contributors in this repository.
Repository
cloudflare-docs
Cloudflare’s documentation
Average Developer Performance (ETV)
Year-by-year Trend:+397%Performance has many faces. Navigara breaks down the effort to visualize what parts of codebase has been changed and where energy flowed. Our Architect AI can break the performance even further into particular components and patterns.
Breakdown of file changes over time. Play the timeline to see how change types evolved across periods.
Monthly overview of bugs introduced and fixed, based on symbol-level commit analysis. Fixes show whether the original author fixed their own bug (self-fix) or someone else did (cross-fix).
Bug attribution uses symbol-level matching from commit history. For each fix commit, we look at the changed symbols (functions, classes, methods) and trace backwards to find who last modified that symbol in a non-fix commit. This person is the probable bug introducer. The algorithm only works when commits have symbol-level data from the Navigara analysis engine — the coverage rate shows what percentage of fix commits had this data available.
The current metrics model has a semantic inversion: when developer A creates a feature with a bug, they receive grow (positive). When developer B fixes that bug, they receive waste (negative). The bug creator is rewarded while the fixer is penalized. Bug attribution addresses this by explicitly tracking who introduced bugs and who fixed them, providing a more accurate picture of code quality contributions.
Currently computed client-side from commit data. Ideal server-side endpoint:
POST /v1/repositories/{repositoryId}/bug-attributions
Content-Type: application/json
Request:
{
"startTime": "2025-01-01T00:00:00Z",
"endTime": "2025-12-31T23:59:59Z"
}
Response:
{
"totalBugsAttributed": 42,
"selfFixRate": 35,
"coverageRate": 78,
"attributions": [
{
"filePath": "src/lib/auth.ts",
"symbol": "validateToken",
"introducer": { "name": "Alice", "email": "alice@co.com", "commitSha": "abc123" },
"fixer": { "name": "Bob", "email": "bob@co.com", "commitSha": "def456" },
"fixedAt": "2025-06-15T10:30:00Z",
"isSelfFix": false
}
]
}Reclassifies engineering effort based on bug attribution. Commits that introduced bugs are retrospectively counted as poor investments.
Investment Quality reclassifies engineering effort based on bug attribution data. Commits identified as buggy origins (those that introduced bugs later fixed by someone) have their grow and maintenance time moved into the Wasted Time category. Their waste (fix commits) remains counted as productive. All other commits retain their standard classification: grow is productive, maintenance is maintenance, and waste (fixes) is productive.
The standard model classifies commits as Growth, Maintenance, or Fixes. Investment Quality adds a quality lens: a commit that introduced a bug is retrospectively counted as a poor investment — the engineering time spent on it was wasted because it ultimately required additional fix work. Fix commits (Fixes in the standard model) are reframed as productive, because fixing bugs is valuable work.
Currently computed client-side from commit and bug attribution data. Ideal server-side endpoint:
POST /v1/organizations/{orgId}/investment-quality
Content-Type: application/json
Request:
{
"startTime": "2025-01-01T00:00:00Z",
"endTime": "2025-12-31T23:59:59Z",
"bucketSize": "BUCKET_SIZE_MONTH",
"groupBy": ["repository_id" | "deliverer_email"]
}
Response:
{
"productivePct": 74,
"maintenancePct": 18,
"wastedPct": 8,
"buckets": [
{
"bucketStart": "2025-01-01T00:00:00Z",
"productive": 4.2,
"maintenance": 1.8,
"wasted": 0.6
}
]
}Latest analyzed commits in this repository.
| Hash | Message | Author | Effort |
|---|---|---|---|
| bbc9edd | authorization capitalization (#29498) | Patricia Santa Ana | maint |
| 68e3aea | [Email security] Reorder dispositions (#29494) | Maddy | maint |
| bf27de2 | fallthrough field update (#29489) | Patricia Santa Ana | – |
| 470e63d | chore: cache-assets (#29487) | Mohamed Hassan | maint |
| 2cbaaee | [chore] remove unused script (#29490) | Kody Jackson | – |
| d5829bb | [wrangler] Add local wrangler commands for Workflows (#29447) | Olga Silva | maint |
| c24590a | [Turnstile] ELI5 (#29298) | Patricia Santa Ana | maint |
| f534fb4 | [Workers] Add RFC 9440 mTLS fields to request.cf.tlsClientAuth docs and changelog (#29401) | Matt Bullock | maint |
| be1d6d7 | Update collect-pcaps.mdx (#28851) | nottermann-cf | maint |
| 8ce61e0 | Add changelog for Internal DNS open beta release (#29480) | Hannes | maint |
authorization capitalization (#29498)
[Email security] Reorder dispositions (#29494)
fallthrough field update (#29489)
chore: cache-assets (#29487)
[chore] remove unused script (#29490)
[wrangler] Add local wrangler commands for Workflows (#29447)
[Turnstile] ELI5 (#29298)
[Workers] Add RFC 9440 mTLS fields to request.cf.tlsClientAuth docs and changelog (#29401)
Update collect-pcaps.mdx (#28851)
Add changelog for Internal DNS open beta release (#29480)
Average context complexity and engagement score of file changes over time. Higher complexity means more intricate changes; higher impact means broader effect on the codebase.
Contributors ranked by total performance (ETV) from analyzed commits.
| # | |||||
|---|---|---|---|---|---|
| 1 | Pedro Sousa399 commits | 24.1 | 0.3 | 23.6 | 0.2 |
| 2 | ranbel301 commits | 19.9 | 1.8 | 18.1 | 0 |
| 3 | marciocloudflare271 commits | 16.8 | 0.9 | 15.9 | 0 |
| 4 | Jun Lee230 commits | 16.7 | 0.7 | 16 | 0.1 |
| 5 | Kody Jackson415 commits | 14.8 | 3.1 | 10.7 | 1 |
| 6 | Kian232 commits | 14.4 | 5.6 | 8.4 | 0.4 |
| 7 | Rebecca Tamachiro189 commits | 13.3 | 1.1 | 12.2 | 0 |
| 8 | Patricia Santa Ana207 commits | 12.7 | 0.6 | 12 | 0 |
| 9 | angelampcosta225 commits | 10.7 | 0.1 | 10.6 | 0 |
| 10 | Maddy265 commits | 8.8 | 0.3 | 8.5 | 0 |
| 11 | Denise Peña145 commits | 8.5 | 0.4 | 8 | 0 |
| 12 | Max Phillips187 commits | 8.2 | 0.5 | 7.6 | 0 |
| 13 | Kate Tungusova183 commits | 6.5 | 0.5 | 6 | 0 |
| 14 | Greg Brimble39 commits | 4.9 | 0.7 | 4.1 | 0 |
| 15 | ToriLindsay115 commits | 4.3 | 0 | 4.3 | 0 |
| 16 | Anni Wang47 commits | 4.2 | 0.5 | 3.7 | 0 |
| 17 | Kathy179 commits | 4.1 | 0 | 4.1 | 0 |
| 18 | Matt Silverlock84 commits | 4 | 0.9 | 3 | 0 |
| 19 | Thomas Gauvin97 commits | 3.5 | 0.4 | 3.1 | 0 |
| 20 | emily-shen48 commits | 3.4 | 0.1 | 3.3 | 0 |
| 21 | Piotr Idzik57 commits | 2.8 | 0 | 2.8 | 0 |
| 22 | Naresh9 commits | 2.5 | 0.3 | 2.2 | 0 |
| 23 | Phillip Jones24 commits | 2.5 | 0.6 | 1.8 | 0 |
| 24 | Nic112 commits | 2.2 | 0 | 2.2 | 0 |
| 25 | MC36 commits | 2.2 | 0.6 | 1 | 0.6 |
| 26 | Mike Nomitch31 commits | 2.1 | 0.1 | 1.9 | 0.1 |
| 27 | daisyfaithauma65 commits | 2 | 0.2 | 1.8 | 0 |
| 28 | cd rubin24 commits | 1.9 | 0.7 | 1.2 | 0 |
| 29 | dinasaur40439 commits | 1.8 | 0.1 | 1.8 | 0 |
| 30 | Sunil Pai22 commits | 1.8 | 0.2 | 1.5 | 0.1 |
| 31 | Caley Burton13 commits | 1.7 | 0 | 1.7 | 0 |
| 32 | Nikita Cano35 commits | 1.6 | 0.2 | 1.4 | 0 |
| 33 | Marc Selwan13 commits | 1.4 | 0.1 | 1.3 | 0 |
| 34 | Celso Martinho16 commits | 1.4 | 0.4 | 1 | 0 |
| 35 | korinne15 commits | 1.4 | 0.1 | 1.3 | 0 |
| 36 | Brendan Irvine-Broque0 commits | 1.3 | 0.1 | 1.2 | 0 |
| 37 | Cameron Whiteside11 commits | 1.3 | 0 | 1.3 | 0 |
| 38 | whoiskatrin24 commits | 1.3 | 0 | 1.3 | 0 |
| 39 | nenizera151 commits | 1.2 | 0 | 1.2 | 0 |
| 40 | vs-mg50 commits | 1.1 | 0 | 1.1 | 0 |
| 41 | Nevi Shah21 commits | 1.1 | 0 | 1.1 | 0 |
| 42 | mia30339 commits | 1.1 | 0.1 | 1 | 0 |
| 43 | fb133734 commits | 1.1 | 0 | 1.1 | 0 |
| 44 | André Jesus19 commits | 1.1 | 0.1 | 1 | 0 |
| 45 | jason-cf20 commits | 1 | 0.1 | 0.9 | 0 |
| 46 | Dario Piotrowicz37 commits | 0.9 | 0 | 0.9 | 0 |
| 47 | joslyn-cf26 commits | 0.9 | 0 | 0.9 | 0 |
| 48 | simon-says41 commits | 0.9 | 0 | 0.9 | 0 |
| 49 | yomna-shousha22 commits | 0.9 | 0.1 | 0.8 | 0 |
| 50 | James Opstad12 commits | 0.9 | 0 | 0.9 | 0 |
| 51 | Rohan Mukherjee14 commits | 0.8 | 0.1 | 0.7 | 0 |
| 52 | alexmoraru737 commits | 0.8 | 0 | 0.8 | 0 |
| 53 | James M Snell0 commits | 0.8 | 0 | 0.8 | 0 |
| 54 | Matt ‘TK’ Taylor17 commits | 0.8 | 0 | 0.7 | 0 |
| 55 | Palash18 commits | 0.7 | 0.2 | 0.5 | 0 |
| 56 | Taylor Smith18 commits | 0.7 | 0 | 0.7 | 0 |
| 57 | Gabriel Massadas7 commits | 0.7 | 0.4 | 0.3 | 0 |
| 58 | Dominik Picheta19 commits | 0.7 | 0 | 0.7 | 0 |
| 59 | Ann Ming Samborski18 commits | 0.6 | 0 | 0.6 | 0 |
| 60 | Matt Bullock25 commits | 0.6 | 0 | 0.6 | 0 |
| 61 | Harshil Agrawal16 commits | 0.6 | 0 | 0.6 | 0 |
| 62 | Somhairle MacLeòid22 commits | 0.5 | 0 | 0.5 | 0 |
| 63 | Victor Berchet22 commits | 0.5 | 0 | 0.5 | 0 |
| 64 | Renan Dincer20 commits | 0.5 | 0.1 | 0.5 | 0 |
| 65 | db-cloudflare15 commits | 0.5 | 0 | 0.5 | 0 |
| 66 | Sahidya16 commits | 0.5 | 0 | 0.5 | 0 |
| 67 | Ankur Aggarwal16 commits | 0.5 | 0 | 0.5 | 0 |
| 68 | kennyj4229 commits | 0.5 | 0 | 0.5 | 0 |
| 69 | Pete Bacon Darwin20 commits | 0.5 | 0 | 0.5 | 0 |
| 70 | ay-cf24 commits | 0.4 | 0 | 0.4 | 0 |
| 71 | Edmund Hung15 commits | 0.4 | 0 | 0.4 | 0 |
| 72 | WillTaylorDev15 commits | 0.4 | 0 | 0.4 | 0 |
| 73 | Josh Howard0 commits | 0.4 | 0 | 0.4 | 0 |
| 74 | Matt11 commits | 0.4 | 0 | 0.4 | 0 |
| 75 | Vy Ton15 commits | 0.4 | 0 | 0.4 | 0 |
| 76 | Daniel Walsh0 commits | 0.4 | 0.1 | 0.2 | 0 |
| 77 | Thomas Desmond13 commits | 0.4 | 0 | 0.4 | 0 |
| 78 | Chris Martinelli22 commits | 0.4 | 0 | 0.4 | 0 |
| 79 | zeinjaber13 commits | 0.4 | 0 | 0.4 | 0 |
| 80 | Musa Jundi9 commits | 0.3 | 0 | 0.3 | 0 |
| 81 | Nuno Pereira4 commits | 0.3 | 0.1 | 0.2 | 0 |
| 82 | Matt Kane4 commits | 0.3 | 0 | 0.3 | 0 |
| 83 | Nikita Sharma7 commits | 0.3 | 0 | 0.3 | 0 |
| 84 | Ben5 commits | 0.3 | 0 | 0.3 | 0 |
| 85 | Olga Silva15 commits | 0.3 | 0 | 0.3 | 0 |
| 86 | deathbyknowledge1 commits | 0.3 | 0 | 0.3 | 0 |
| 87 | cloudflare-noelle9 commits | 0.2 | 0 | 0.2 | 0 |
| 88 | Kenton Varda5 commits | 0.2 | 0 | 0.2 | 0 |
| 89 | Christopher Meng9 commits | 0.2 | 0 | 0.2 | 0 |
| 90 | Yagiz Nizipli6 commits | 0.2 | 0 | 0.2 | 0 |
| 91 | Hood Chatham10 commits | 0.2 | 0 | 0.1 | 0.1 |
| 92 | Gregory Anders6 commits | 0.2 | 0 | 0.2 | 0 |
| 93 | Haley C.12 commits | 0.2 | 0 | 0.1 | 0.1 |
| 94 | Caio Nogueira5 commits | 0.2 | 0 | 0.2 | 0 |
| 95 | lrapoport-cf6 commits | 0.2 | 0 | 0.2 | 0 |
| 96 | Kevin Jain3 commits | 0.2 | 0.1 | 0.1 | 0 |
| 97 | Ketan Gupta4 commits | 0.2 | 0 | 0.2 | 0 |
| 98 | Lambros Petrou4 commits | 0.1 | 0 | 0.1 | 0 |
| 99 | Guy Bedford3 commits | 0.1 | 0 | 0.1 | 0 |
| 100 | Alex Robinson6 commits | 0.1 | 0 | 0.1 | 0 |
| 101 | Harris Hancock4 commits | 0.1 | 0 | 0.1 | 0 |
| 102 | Felix Hanau7 commits | 0.1 | 0 | 0.1 | 0 |
| 103 | Nicholas Paun0 commits | 0.1 | 0 | 0.1 | 0 |
| 104 | tewaro1 commits | 0.1 | 0 | 0.1 | 0 |