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
62 commits sit in this repo's top risk tercile, which is 33% of the 186scored. 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 2.8 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.
Consistently chore-driven across its history.
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 | b5da1a45Initial working state | Fabian Seitz | 3mo ago | +3.5K -2 | 100%Elevated | more lines added than baseline |
| 2 | e33f02a0fix: hacs release zip file & improved release workflow | Fabian Seitz | 1mo ago | +1.2K -221 | 99%Elevated | more lines added than baseline |
| 3 | e2386954fixed sensor data fetching & firmware update entity | Fabian Seitz | 3mo ago | +735 -275 | 99%Elevated | more lines added than baseline |
| 4 | a685fbaechore: sync CI/CD workflows and scripts from ha-db_infoscreen | Fabian Seitz | 1mo ago | +384 -24 | 98%Elevated | more lines added than baseline |
| 5 | ae797f8cchore: fix CI linter issues and format code | Fabian Seitz | 1mo ago | +485 -87 | 98%Elevated | more lines added than baseline |
| 6 | 228ef973feat: events, system report and raw data service | Fabian Seitz | 3mo ago | +180 -12 | 97%Elevated | more lines added than baseline |
| 7 | fc075d94fix: optional feature to log out after data fetching #59 | Fabian Seitz | 3w ago | +256 -14 | 96%Elevated | more lines added than baseline |
| 8 | 5a901426chore: improve issue templates with integration-specific fields and my-ha links | Fabian Seitz | 1mo ago | +147 -68 | 96%Elevated | more lines added than baseline |
| 9 | 7592a7d2linter fixes | Fabian Seitz | 3mo ago | +147 -67 | 95%Elevated | more lines added than baseline |
| 10 | 1d51e5d6chore: add automated template updater and clean privacy sensitive fields | Fabian Seitz | 1mo ago | +140 -1 | 95%Elevated | more lines added than baseline |
| 11 | 2f665b34feat: Add Wi-Fi QR Code Image entities for Main and Guest networks | Fabian Seitz | 3mo ago | +227 -2 | 95%Elevated | more lines added than baseline |
| 12 | c35a1e67feat: Call history #12 | Fabian Seitz | 1mo ago | +165 -87 | 94%Elevated | more lines added than baseline |
| 13 | e0f11179add issue templates for GitHub | Fabian Seitz | 3mo ago | +114 -0 | 94%Elevated | more lines added than baseline |
| 14 | e1e007cafeat: implement reconfigure flow for config entry | Fabian Seitz | 1mo ago | +88 -3 | 93%Elevated | more lines added than baseline |
| 15 | 0346c3bbUpdate release.yml | Fabian Seitz | 4w ago | +71 -48 | 92%Elevated | more lines added than baseline |
| 16 | 044c7d80chore: update integration version placeholder logic and make steps/expected optional | Fabian Seitz | 1mo ago | +78 -46 | 91%Elevated | more lines added than baseline |
| 17 | ca743452chore: update template automations to dynamically track service versions | Fabian Seitz | 1mo ago | +69 -7 | 91%Elevated | more lines added than baseline |
| 18 | be6d8960fix: missing public IP #23 | Fabian Seitz | 1mo ago | +90 -51 | 91%Elevated | more lines added than baseline |
| 19 | 27195bebmypy linter fixes | Fabian Seitz | 3mo ago | +42 -37 | 90%Elevated | more lines added than baseline |
| 20 | 31e446ccimproved data fetching | Fabian Seitz | 3mo ago | +44 -51 | 90%Elevated | more lines added than baseline |
| 21 | f21a49d6chore: sync release workflow tag-fetching and contributor attribution script updates | Fabian Seitz | 1mo ago | +45 -14 | 89%Elevated | more lines added than baseline |
| 22 | 795432a9mypy linter fixes for python 3.14 | Fabian Seitz | 3mo ago | +35 -29 | 89%Elevated | more lines added than baseline |
| 23 | 9161c07dfeat: optional feature to log out after data fetching #59 | Fabian Seitz | 3w ago | +47 -9 | 88%Elevated | more lines added than baseline |
| 24 | c8ee2f33ci: optimize CI triggers and add structured changelog generator | Fabian Seitz | 1w ago | +33 -24 | 87%Elevated | more lines added than baseline |
| 25 | d05ae551add new device tracker attributes | Fabian Seitz | 3mo ago | +28 -1 | 87%Elevated | more lines added than baseline |
| 26 | 569ab5f8fix: Simplify image platform to prevent potential setup hang | Fabian Seitz | 3mo ago | +27 -50 | 86%Elevated | more lines added than baseline |
| 27 | 62234314feat: option to disable device tracker | Fabian Seitz | 3mo ago | +24 -5 | 86%Elevated | more lines added than baseline |
| 28 | 8863803bworkflow fix | Fabian Seitz | 3mo ago | +31 -0 | 86%Elevated | more lines added than baseline |
| 29 | b69fea12Workflow fix | Fabian Seitz | 3mo ago | +32 -1 | 85%Elevated | more lines added than baseline |
| 30 | de938f49small state fixes | Fabian Seitz | 3mo ago | +19 -12 | 84%Elevated | more lines added than baseline |
| 31 | e1628d96fix units of up/downstreams on newer models #10 | Fabian Seitz | 3mo ago | +28 -8 | 84%Elevated | more lines added than baseline |
| 32 | 926ee6f4chore: unify workflows, scripts, and configs | Fabian Seitz | 1mo ago | +20 -0 | 83%Elevated | more lines added than baseline |
| 33 | 0a8e46eafix(docs): add download badge and support section to README | github-actions[bot] | 1mo ago | +18 -1 | 83%Elevated | more lines added than baseline |
| 34 | 574ea1a7chore(deps): pin dependencies (#27) | renovate[bot] | 2mo ago | +16 -16 | 82%Elevated | more lines added than baseline |
| 35 | 99262818CI linter fixes | Fabian Seitz | 3mo ago | +14 -20 | 81%Elevated | more lines added than baseline |
| 36 | 99348ac9linter fixes | Fabian Seitz | 3mo ago | +18 -7 | 81%Elevated | more lines added than baseline |
| 37 | 93bcac98chore: optimize template updates with robust regex patterns | Fabian Seitz | 1mo ago | +14 -6 | 80%Elevated | more lines added than baseline |
| 38 | 700cbad9chore: trigger auto release [bump-version] | Fabian Seitz | 1mo ago | +13 -3 | 80%Elevated | more lines added than baseline |
| 39 | 3798648efix: combine nested if statements to fix SIM102 ruff error | FaserF | 1mo ago | +11 -8 | 79%Elevated | more focused than baseline |
| 40 | 4ebf0892hassfest CI fixes | Fabian Seitz | 3mo ago | +12 -11 | 79%Elevated | more focused than baseline |
| 41 | ae062b79mypy linter fixes | Fabian Seitz | 3mo ago | +12 -2 | 79%Elevated | more lines added than baseline |
| 42 | a5d71904chore: fix ruff linting errors | Fabian Seitz | 1mo ago | +11 -18 | 78%Elevated | more scattered than baseline |
| 43 | 0111d86dchore(deps): pin dependencies (#39) | renovate[bot] | 1mo ago | +13 -13 | 77%Elevated | more lines added than baseline |
| 44 | 7ca581d3fix(workflow): add bump_level input option back to release.yml [skip ci] | Fabian Seitz | 1mo ago | +10 -0 | 77%Elevated | more focused than baseline |
| 45 | 00169172chore(deps): update actions/checkout action to v7.0.1 (#62) | renovate[bot] | 3w ago | +8 -8 | 75%Elevated | fewer lines added than baseline |
| 46 | 659b6fd6style: auto-fix and format with Ruff [skip ci] | FaserF | 1mo ago | +8 -1 | 75%Elevated | fewer lines added than baseline |
| 47 | dfd17e82chore: optimize template updates with robust regex patterns | Fabian Seitz | 1mo ago | +9 -4 | 75%Elevated | fewer lines added than baseline |
| 48 | 82bf22b0test: Update mocks in conftest.py to support image platform tests | Fabian Seitz | 3mo ago | +9 -1 | 75%Elevated | fewer lines added than baseline |
| 49 | c5466f2cstyle: auto-fix and format with Ruff [skip ci] | FaserF | 1mo ago | +7 -7 | 74%Elevated | fewer lines added than baseline |
| 50 | bad040f2style: Fix ruff linting and formatting issues | Fabian Seitz | 3mo ago | +9 -11 | 74%Elevated | more scattered 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 186 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-speedport has 195 commits in its history from 5 contributors, the first of them Apr 25, 2026. In the last 90 days 14 files were touched, 56 times in total, most often update_templates.py. Every commit is scored for change risk from its size, spread and the history of the files it touches.