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
14 commits sit in this repo's top risk tercile, which is 33% of the 43scored. 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 5.6 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 other-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 | 40628458Initial commit | ltpk | 2mo ago | +3.9K -0 | 99%Elevated | large diff (many lines added) |
| 2 | 0d7a0c24Fix CI build: record all platform bindings in lockfile | ltpk | 1mo ago | +793 -572 | 97%Elevated | large diff (many lines added) |
| 3 | f511f772Upgrade to React 19, MUI v9, Vite 8, TypeScript 6 | ltpk | 1mo ago | +543 -1.3K | 94%Elevated | large diff (many lines added) |
| 4 | f60ada23Migrate to bun lockfile; add pre-commit hooks | ltpk | 1mo ago | +404 -2.0K | 91%Elevated | large diff (many lines added) |
| 5 | beec7822Redesign UI: mobile support, MUI default styling, 72h search window cap | ltpk | 2mo ago | +193 -256 | 91%Elevated | large diff (many lines added) |
| 6 | b803ba36Add dark mode with system detection and manual toggle | ltpk | 2mo ago | +183 -137 | 87%Elevated | large diff (many lines added) |
| 7 | a218e478Make optimizer time-aware, add charge-now notification, fix chart/cache edges | ltpk | 2mo ago | +104 -23 | 84%Elevated | large diff (many lines added) |
| 8 | 94c1c45cAdd charge-by deadline, refresh button, SOC warning, and UX polish | ltpk | 2mo ago | +101 -23 | 84%Elevated | large diff (many lines added) |
| 9 | d658198aImprove refresh resilience, chart rendering, and accessibility | ltpk | 2mo ago | +68 -29 | 80%Elevated | large diff (many lines added) |
| 10 | 9b39a39cAdd Dependabot config for weekly dependency updates | ltpk | 1mo ago | +35 -0 | 77%Elevated | large diff (many lines added) |
| 11 | df3f7ddaFix charge-by day ambiguity and HourList label overlap | ltpk | 2mo ago | +41 -26 | 77%Elevated | large diff (many lines added) |
| 12 | afff9566docs: document bun.lock, typecheck, and pre-commit hook in README | ltpk | 1mo ago | +26 -23 | 73%Elevated | large diff (many lines added) |
| 13 | e64f8da3Add kWh needed, solar coverage %, and solar savings to metrics | ltpk | 1mo ago | +29 -6 | 70%Elevated | large diff (many lines added) |
| 14 | f3b3cb60Add error boundary to surface runtime crashes | ltpk | 2mo ago | +22 -2 | 70%Elevated | large diff (many lines added) |
| 15 | f59c55bdAnchor cheapest-hours bars to absolute scale with color tiers | ltpk | 1mo ago | +26 -11 | 65%Typical | large diff (many lines added) |
| 16 | b8ecd2d4Add estimated charging completion time to metrics | ltpk | 1mo ago | +27 -8 | 65%Typical | large diff (many lines added) |
| 17 | c6b546c9Mark current hour and show delta-vs-cheapest in hour list | ltpk | 1mo ago | +28 -15 | 62%Typical | large diff (many lines added) |
| 18 | a691b05cAdd links to data sources and GitHub repo in header | ltpk | 2mo ago | +15 -1 | 59%Typical | large diff (many lines added) |
| 19 | 06dfab60Animate settings sidebar open/close with MUI Collapse | ltpk | 2mo ago | +14 -11 | 56%Typical | large diff (many lines added) |
| 20 | bc19bb26Add transfer fee line to price chart | ltpk | 2mo ago | +14 -4 | 56%Typical | large diff (many lines added) |
| 21 | 24f2cc69Consolidate metric boxes into Charge plan + Est. cost + Solar now | ltpk | 1mo ago | +18 -16 | 52%Typical | large diff (many lines added) |
| 22 | 6494beaeUpdate CLAUDE.md and README to reflect recent changes | ltpk | 2mo ago | +13 -10 | 50%Typical | large diff (many lines added) |
| 23 | b8637b9edeps-dev: bump lint-staged from 16.4.0 to 17.0.7 | dependabot[bot] | 1mo ago | +8 -10 | 48%Typical | small diff |
| 24 | 81c91855Update docs to reflect Bun replacing npm | ltpk | 2mo ago | +7 -7 | 45%Typical | small diff |
| 25 | 236edf3fShow average c/kWh for optimal period under Est. cost | ltpk | 2mo ago | +9 -3 | 43%Typical | spans multiple subsystems |
| 26 | 436847a3Fix toolbar overflow on small mobile screens | ltpk | 2mo ago | +6 -4 | 41%Typical | small diff |
| 27 | ef6461f0Document rtk token-saving proxy in CLAUDE.md | ltpk | 1mo ago | +5 -0 | 37%Typical | small diff |
| 28 | 87aed03fFix mobile layout shift on horizontal swipe | ltpk | 2mo ago | +5 -2 | 37%Typical | small diff |
| 29 | 2d304900ci: bump Pages actions to Node 24 versions | ltpk | 1mo ago | +4 -4 | 31%Below typical | small diff |
| 30 | 73aed39bShow Solar now box only when solar is enabled | ltpk | 1mo ago | +5 -6 | 31%Below typical | small diff |
| 31 | fc5c27cfFix mobile sidebar horizontal scroll and square settings button | ltpk | 2mo ago | +4 -3 | 31%Below typical | small diff |
| 32 | 54f966ffMove solar covers/saves into Charge plan box, slim Solar now to output | ltpk | 1mo ago | +4 -3 | 26%Below typical | small diff |
| 33 | 0f25bd1eSwitch CI from Node/npm to Bun | ltpk | 2mo ago | +3 -6 | 26%Below typical | small diff |
| 34 | a728d59fFix spot-hinta.fi price unit: convert EUR/kWh to c/kWh | ltpk | 2mo ago | +3 -3 | 22%Below typical | small diff |
| 35 | c5b04e7eRegister LineController and BarController for Chart.js production build | ltpk | 2mo ago | +2 -2 | 20%Below typical | small diff |
| 36 | cf888dcaDocument lockfile/Rolldown CI gotcha and Dependabot in CLAUDE.md | ltpk | 1mo ago | +2 -0 | 15%Below typical | small diff |
| 37 | 5a9ad9b6Emphasize selected window in chart with green highlight | ltpk | 2mo ago | +2 -2 | 15%Below typical | small diff |
| 38 | 6e9b0b88Bump params localStorage key to v5 to reset defaults | ltpk | 2mo ago | +2 -2 | 15%Below typical | small diff |
| 39 | cda57ba4Step SOC target slider by 10% increments | ltpk | 2mo ago | +1 -1 | 7%Below typical | small diff |
| 40 | 27b1984dRevert settings button to outlined/contained toggle | ltpk | 2mo ago | +1 -1 | 7%Below typical | small diff |
| 41 | 706c82c3Make settings button always contained on mobile | ltpk | 2mo ago | +1 -1 | 7%Below typical | small diff |
| 42 | de4b011eDisable solar integration by default | ltpk | 2mo ago | +1 -1 | 7%Below typical | small diff |
| 43 | b66e5288Clarify rtk hook compound-command handling in CLAUDE.md | ltpk | 1mo ago | +1 -1 | 1%Below typical | small diff |
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 43 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.
Repowise tracks change history across 13 files in ltpk/charging-optimizer. In the last 90 days 13 files were touched, 88 times in total, most often App.tsx. Every commit is scored for change risk from its size, spread and the history of the files it touches.