Every commit scored for change-risk against this repo's own history, so 'elevated' means elevated here rather than on some global curve.
Needs review
37 commits sit in this repo's top risk tercile, which is 34% of the 110scored. The cut is drawn against this codebase's own history rather than a global curve, so a quiet repo still fills its top band, and here it starts at 6.7 out of 10. What pushes a commit up is size and spread together: a large change confined to one area scores below a smaller one scattered across a dozen files.
Commit categories over time, read off the subject line. Fixes carry the accent because that is the series this chart exists to show.
Began feature-led, now leaning chore.
Ranked by change-risk, highest first. Priority is a tercile of this repo's own distribution, so a quiet repo still fills its top band.
| # | Commit | Author | When | Lines | Risk | Top driver |
|---|---|---|---|---|---|---|
| 1 | f74ec008initial working state | Fabian Seitz | 3mo ago | +3.8K -2 | 100%Elevated | more lines added than baseline |
| 2 | 9b552b66chore: sync CI/CD workflows and scripts from ha-db_infoscreen | Fabian Seitz | 1mo ago | +1.6K -236 | 99%Elevated | more lines added than baseline |
| 3 | 3dd262e6feat: implement DMARC/DKIM/SPF binary sensors, DNS proxy switches, cache ratio, and top threat countries | Fabian Seitz | 4w ago | +592 -30 | 98%Elevated | more lines added than baseline |
| 4 | 18fcfcb8fix: stabilize config flow and complete translations for new switches | Fabian Seitz | 3mo ago | +339 -229 | 97%Elevated | more lines added than baseline |
| 5 | 4cbf346achore: add comprehensive documentation site and deploy workflow | Fabian Seitz | 1mo ago | +370 -5 | 95%Elevated | more lines added than baseline |
| 6 | 491792defeat: Options flow & full translations | Fabian Seitz | 3mo ago | +305 -34 | 95%Elevated | more lines added than baseline |
| 7 | fcff9066feat: Add devices for Cloudflare Pages sensors, correct some small errors. | PineappleEmperor | 2mo ago | +288 -73 | 94%Elevated | more lines added than baseline |
| 8 | 5c1fc335chore: improve issue templates with integration-specific fields and my-ha links | Fabian Seitz | 1mo ago | +176 -69 | 93%Elevated | more lines added than baseline |
| 9 | 8a0cde84feat: permission check on config flow steps | Fabian Seitz | 3mo ago | +235 -58 | 93%Elevated | more lines added than baseline |
| 10 | cbfd6411chore: unify workflows and update issue templates with assignees and labels [skip ci] | Fabian Seitz | 1mo ago | +139 -71 | 91%Elevated | more lines added than baseline |
| 11 | e3d18210chore: add automated template updater and clean privacy sensitive fields | Fabian Seitz | 1mo ago | +140 -1 | 90%Elevated | more lines added than baseline |
| 12 | 02504aeachore: fix typing, linting and formatting issues across integration | Fabian Seitz | 3mo ago | +137 -58 | 90%Elevated | more lines added than baseline |
| 13 | 3c00e615feat: add tunnel status enum sensor and disable it by default | Fabian Seitz | 4w ago | +141 -14 | 89%Elevated | more lines added than baseline |
| 14 | 23e8133dfeat: add waf custom rule switches | Fabian Seitz | 3mo ago | +153 -1 | 88%Elevated | more lines added than baseline |
| 15 | 319c4577mypy linter fixes | Fabian Seitz | 3mo ago | +80 -78 | 87%Elevated | more lines added than baseline |
| 16 | 2e1bbae4style: auto-fix and format with Ruff [skip ci] | FaserF | 1mo ago | +86 -44 | 85%Elevated | more lines added than baseline |
| 17 | f0bc9d80feat: add zero trust gateway policy switches | Fabian Seitz | 3mo ago | +140 -11 | 85%Elevated | more lines added than baseline |
| 18 | c219277dfeat: add cloudflare email routing switches | Fabian Seitz | 3mo ago | +130 -1 | 84%Elevated | more lines added than baseline |
| 19 | 62e36717feat: add registrar domain expiration sensors | Fabian Seitz | 3mo ago | +122 -2 | 83%Elevated | more lines added than baseline |
| 20 | c5eba57eCI linter fixes | Fabian Seitz | 1w ago | +73 -71 | 82%Elevated | more lines added than baseline |
| 21 | 4fca2a8ffeat: add cloudflare pages support | Fabian Seitz | 3mo ago | +102 -7 | 82%Elevated | more lines added than baseline |
| 22 | 8d918909Update release.yml | Fabian Seitz | 4w ago | +71 -49 | 80%Elevated | more lines added than baseline |
| 23 | 4bb73cdcchore: update template automations to dynamically track service versions | Fabian Seitz | 1mo ago | +69 -7 | 80%Elevated | more lines added than baseline |
| 24 | 4d46df5dfeat: add cache rule switches | Fabian Seitz | 3mo ago | +100 -2 | 80%Elevated | more lines added than baseline |
| 25 | a649f6c4CI linter fixes | Fabian Seitz | 1w ago | +80 -48 | 76%Elevated | more lines added than baseline |
| 26 | 1758295cfeat: improve state attributes for binary sensors & cache ratio, and rename threat countries to singular | Fabian Seitz | 4w ago | +93 -11 | 76%Elevated | more lines added than baseline |
| 27 | 267892c1feat: add load balancer pool health binary sensors | Fabian Seitz | 3mo ago | +102 -2 | 76%Elevated | more lines added than baseline |
| 28 | bfbc7ed3feat: add edge certificate expiration tracking | Fabian Seitz | 3mo ago | +94 -2 | 76%Elevated | more lines added than baseline |
| 29 | bd7d2fc3feat: add api rate limit monitoring sensors | Fabian Seitz | 3mo ago | +79 -3 | 73%Elevated | more lines added than baseline |
| 30 | 5793e96ffeat: add domain registrar auto-renew switches | Fabian Seitz | 3mo ago | +104 -1 | 73%Elevated | more lines added than baseline |
| 31 | 98a6f70ffeat: add cloudflare images usage stats sensors | Fabian Seitz | 3mo ago | +88 -1 | 73%Elevated | more lines added than baseline |
| 32 | 0437a41echore: restore original customized issue templates [skip ci] | Fabian Seitz | 1mo ago | +45 -162 | 70%Elevated | more lines added than baseline |
| 33 | 61fb9420style: auto-fix and format with Ruff [skip ci] | FaserF | 1mo ago | +48 -24 | 70%Elevated | more lines added than baseline |
| 34 | 06d09af6feat: respect enable_ddns configuration flag | Fabian Seitz | 3mo ago | +56 -10 | 70%Elevated | more lines added than baseline |
| 35 | f8e59a93chore: sync release workflow tag-fetching and contributor attribution script updates | Fabian Seitz | 1mo ago | +45 -14 | 69%Elevated | more lines added than baseline |
| 36 | 64f7e5bdstyle: auto-fix and format with Ruff [skip ci] | FaserF | 1w ago | +48 -26 | 68%Elevated | more lines added than baseline |
| 37 | c66cc1e6feat: add brotli, hotlink protection and early hints switches | Fabian Seitz | 3mo ago | +49 -1 | 67%Elevated | more lines added than baseline |
| 38 | 38227b56fix: add some sensor icons and try to fix the cert expiry sensor. | PineappleEmperor | 2mo ago | +37 -12 | 66%Typical | more lines added than baseline |
| 39 | 9f40abaafeat: slightly modify sensors to produce shorter states and add longer values in attributes. | PineappleEmperor | 2mo ago | +33 -26 | 65%Typical | more lines added than baseline |
| 40 | c6a5f204style: auto-fix and format with Ruff [skip ci] | FaserF | 4w ago | +27 -10 | 64%Typical | more lines added than baseline |
| 41 | 8417b118style: auto-fix and format with Ruff [skip ci] | FaserF | 4w ago | +23 -9 | 63%Typical | more lines added than baseline |
| 42 | 728c2e56ci: optimize CI triggers and add structured changelog generator | Fabian Seitz | 1w ago | +20 -3 | 61%Typical | more lines added than baseline |
| 43 | 0163cabedocs: update required api token scopes in readme | Fabian Seitz | 3mo ago | +19 -10 | 61%Typical | more lines added than baseline |
| 44 | 11cb60b7mypy linter fixes | Fabian Seitz | 3mo ago | +16 -16 | 61%Typical | more lines added than baseline |
| 45 | d1f40577style: auto-fix and format with Ruff [skip ci] | FaserF | 1mo ago | +16 -10 | 60%Typical | more lines added than baseline |
| 46 | d418dd3bfeat: add ipv6, rocket loader and websockets switches | Fabian Seitz | 3mo ago | +19 -1 | 59%Typical | more lines added than baseline |
| 47 | e50d6c3afix: fetch account_id directly from accounts endpoint | Fabian Seitz | 3mo ago | +17 -0 | 58%Typical | more lines added than baseline |
| 48 | 1319aa32chore: fix CI linter issues and format code | Fabian Seitz | 1mo ago | +14 -4 | 57%Typical | more lines added than baseline |
| 49 | c210c067chore: sync CI/CD workflows and scripts from ha-db_infoscreen | Fabian Seitz | 1mo ago | +10 -9 | 56%Typical | more scattered than baseline |
| 50 | b31cf776fix(workflow): add bump_level input option back to release.yml [skip ci] | Fabian Seitz | 1mo ago | +10 -0 | 55%Typical | more focused than baseline |
Two views of the same model: where the cuts fall, and what commit shape lands you above them.
Every scored commit, binned on the raw 0 to 10 score rather than the percentile. Percentile ranks are uniform by construction, so that axis has no shape to draw. The dashed lines are the tercile cuts behind each row's priority pill.
The 110 most recent commits, on their own recency sample rather than the feed above: that defaults to risk-sorted, so reusing it would plot only the top tercile and call it the spread. Big and scattered is what the model penalises. Click a dot to open it.
FaserF/ha-cloudflare has 119 commits in its history from 6 contributors, the first of them Apr 28, 2026. In the last 90 days 21 files were touched, 81 times in total, most often sensor.py. Every commit is scored for change risk from its size, spread and the history of the files it touches.