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
105 commits sit in this repo's top risk tercile, which is 33% of the 317scored. 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.4 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 deps-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 | d68ba34bAdd support for button, light, sensor and switch | Erik | 5y ago | +1.6K -109 | 100%Elevated | more lines added than baseline |
| 2 | 55dadb94Add type annotations (#106) | Erik Montnemery | 5y ago | +752 -500 | 100%Elevated | more lines added than baseline |
| 3 | 72486b3dRefactor | Erik | 6y ago | +245 -189 | 99%Elevated | more lines added than baseline |
| 4 | 4ac56f28Add files | Erik | 6y ago | +456 -1 | 99%Elevated | more lines added than baseline |
| 5 | f02d19e5Add support for shutters (#49) | Erik Montnemery | 5y ago | +225 -0 | 98%Elevated | more lines added than baseline |
| 6 | 98d0a6dcRefactor discovery code | Erik | 6y ago | +215 -38 | 98%Elevated | more lines added than baseline |
| 7 | 0b7f2722Add status sensor | Erik | 5y ago | +216 -1 | 98%Elevated | more lines added than baseline |
| 8 | 35c8ea26Update light support, adapt to latest Tasmota | Erik | 5y ago | +180 -150 | 98%Elevated | more lines added than baseline |
| 9 | ec0d05f7Add unit constants (#36) | Erik Montnemery | 5y ago | +136 -30 | 97%Elevated | more lines added than baseline |
| 10 | 15fde2dcAdd button.py | Erik | 5y ago | +155 -0 | 97%Elevated | more lines added than baseline |
| 11 | f4bac376Add device status (#53) | Erik Montnemery | 5y ago | +164 -0 | 97%Elevated | more lines added than baseline |
| 12 | 184350a1Initial commit | Erik Montnemery | 6y ago | +151 -0 | 97%Elevated | more lines added than baseline |
| 13 | ec232a62Drop the use of attrs in favor of dataclass (#235) | Erik Montnemery | 3y ago | +114 -128 | 96%Elevated | more lines added than baseline |
| 14 | 34d42c7bAdd camera support (#336) | anishsane | 1y ago | +113 -0 | 96%Elevated | more lines added than baseline |
| 15 | 9b58d436Add support for fans (#46) | Erik Montnemery | 5y ago | +139 -1 | 96%Elevated | more lines added than baseline |
| 16 | a0045d3disort | Erik | 5y ago | +72 -89 | 95%Elevated | more lines added than baseline |
| 17 | 2b89013cSort sensor constants (#250) | Erik Montnemery | 2y ago | +70 -70 | 95%Elevated | more lines added than baseline |
| 18 | 67958200Support light fade_fixed_duration (SetOption117) (#64) | Erik Montnemery | 5y ago | +72 -54 | 94%Elevated | more lines added than baseline |
| 19 | 8e648b3cImprove status sensors (#38) | Erik Montnemery | 5y ago | +71 -34 | 94%Elevated | more lines added than baseline |
| 20 | e087bddfRefactor status sensor (#22) | Erik Montnemery | 5y ago | +76 -73 | 94%Elevated | more lines added than baseline |
| 21 | c224832eRefactor | Erik | 6y ago | +71 -61 | 94%Elevated | more lines added than baseline |
| 22 | abe53777Rename some sensor constants (#301) | Erik Montnemery | 2y ago | +61 -61 | 93%Elevated | more lines added than baseline |
| 23 | 6bdb166aSupport shutter tilt (#153) | Erik Montnemery | 4y ago | +69 -2 | 93%Elevated | more lines added than baseline |
| 24 | 04158b6dAdapt to changed mqtt.async_publish in HA core 2021.12 (#122) | Erik Montnemery | 4y ago | +45 -45 | 92%Elevated | more lines added than baseline |
| 25 | ca0d5538Adjust buttons and switches to new Tasmota (#28) | Erik Montnemery | 5y ago | +46 -31 | 92%Elevated | more lines added than baseline |
| 26 | 7bf7b99bEnable mypy in CI (#239) | Erik Montnemery | 3y ago | +63 -17 | 92%Elevated | more lines added than baseline |
| 27 | 026c0e46Add additional Tasmota sensors and units (#149) | Theo Arends | 4y ago | +37 -0 | 92%Elevated | more lines added than baseline |
| 28 | 33e4e0ebAdd additional status sensors (#27) | Erik Montnemery | 5y ago | +49 -5 | 91%Elevated | more lines added than baseline |
| 29 | 64bee2d4Add additional status sensors (#24) | Federico Leoni | 5y ago | +50 -6 | 91%Elevated | more lines added than baseline |
| 30 | 5f9f184cImprove sensors | Erik | 5y ago | +38 -15 | 91%Elevated | more lines added than baseline |
| 31 | 3f621d78Enable a couple of pylint plugins (#241) | Erik Montnemery | 3y ago | +40 -39 | 90%Elevated | more lines added than baseline |
| 32 | 4dc41113Updated status sensors (#29) | Federico Leoni | 5y ago | +35 -27 | 90%Elevated | more lines added than baseline |
| 33 | f0902776Use MAC for device identification | Erik | 6y ago | +37 -38 | 90%Elevated | more lines added than baseline |
| 34 | 301d603eImprove transitions (#51) | Erik Montnemery | 5y ago | +37 -4 | 89%Elevated | more lines added than baseline |
| 35 | 28b34b8aFormat code inside f-strings (#344) | Erik Montnemery | 1y ago | +29 -27 | 89%Elevated | more lines added than baseline |
| 36 | 7faef7c3Enable rudimentary support for deep sleep (#277) | Erik Montnemery | 2y ago | +29 -1 | 89%Elevated | more lines added than baseline |
| 37 | 40865323Add support for indexed and nested sensors | Erik | 5y ago | +33 -20 | 89%Elevated | more lines added than baseline |
| 38 | fb2a53b1Improve support for RGBW lights (#92) | Erik Montnemery | 5y ago | +27 -5 | 88%Elevated | more lines added than baseline |
| 39 | a478c548Don't require setoption59 for light and relay (#18) | Erik Montnemery | 5y ago | +23 -2 | 88%Elevated | more lines added than baseline |
| 40 | 5354e197Detect sensors with numeric discovery value (#298) | Erik Montnemery | 2y ago | +24 -2 | 87%Elevated | more lines added than baseline |
| 41 | de9ab999Correct sensor quantity (#252) | Erik Montnemery | 2y ago | +28 -4 | 87%Elevated | more lines added than baseline |
| 42 | 1d6f1601Add a battery sensor to battery powered devices (#234) | stefanbode | 3y ago | +20 -1 | 87%Elevated | more lines added than baseline |
| 43 | 2e6504d7Flake, black | Erik | 5y ago | +25 -3 | 87%Elevated | more lines added than baseline |
| 44 | 093a2f74Deduplicate poll_status and set_on_state_callback | Erik | 5y ago | +18 -45 | 86%Elevated | more lines added than baseline |
| 45 | 1a7085ebAdd mqtt.py | Erik | 6y ago | +23 -0 | 86%Elevated | more lines added than baseline |
| 46 | 5cd8b8e1Bump black from 23.11.0 to 24.4.2 (#297) | dependabot[bot] | 2y ago | +21 -4 | 85%Elevated | more scattered than baseline |
| 47 | 53b6f9cdCorrect indexed sensors with last_reset (#121) | Erik Montnemery | 4y ago | +23 -9 | 85%Elevated | more lines added than baseline |
| 48 | 14194933Support lights with Setoption20 enabled (#19) | Erik Montnemery | 5y ago | +27 -2 | 85%Elevated | more lines added than baseline |
| 49 | 30b3ff46Add pylintrc | Erik | 6y ago | +20 -0 | 85%Elevated | more lines added than baseline |
| 50 | 53e54b0dAdd release drafter workflow | Erik | 6y ago | +19 -0 | 85%Elevated | more lines added 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 200 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/hatasmota has 327 commits in its history from 12 contributors, the first of them Sep 2, 2020. No file in the repository changed in the last 90 days. Every commit is scored for change risk from its size, spread and the history of the files it touches.