The rollups — month, then week
Total 970h 54m (970.91 h) across 90 days — but this is time BRACKETED BY COMMITS, not time at the keyboard. Floor-biased: it under-counts, never inflates. A derivation ⊢, not a measurement ⊨.
The work across the summer
September 2026
W3671.66h
August 2026
W3146.07h
W3260.86h
W3380.42h
W3456.06h
W3598.36h
W3671.66h
July 2026
W2779.74h
W2879.52h
W2988.54h
W3061.18h
W3146.07h
June 2026
W2361.93h
W2443.61h
W2584.78h
W2658.17h
W2779.74h
Each cell is an ISO week; height/shade tracks hours worked (busiest week = fullest). A dashed, dimmed cell is a week shared with the neighbouring month — that is where the week sits across the month boundary.
By month
| Month | Worked | Hours | Days | Sessions | Commits |
|---|---|---|---|---|---|
| September 2026 | 55h 25m | 55.42 | 4 | 166 | 5,451 |
| August 2026 | 330h 29m | 330.49 | 28 | 1,096 | 34,132 |
| July 2026 | 316h 56m | 316.94 | 28 | 1,038 | 24,239 |
| June 2026 | 268h 03m | 268.06 | 30 | 653 | 7,389 |
| Total | 970h 54m | 970.91 | 90 | 2,953 | 71,211 |
By week (ISO)
| Week | Worked | Hours | Days | Sessions | Commits |
|---|---|---|---|---|---|
| 2026-W36 (Aug 31–Sep 6) | 71h 39m | 71.66 | 5 | 224 | 7,415 |
| 2026-W35 (Aug 24–30) | 98h 21m | 98.35 | 7 | 377 | 11,771 |
| 2026-W34 (Aug 17–23) | 56h 04m | 56.07 | 7 | 140 | 5,174 |
| 2026-W33 (Aug 10–16) | 80h 24m | 80.41 | 7 | 262 | 7,501 |
| 2026-W32 (Aug 3–9) | 60h 51m | 60.85 | 4 | 188 | 5,726 |
| 2026-W31 (Jul 27–Aug 2) | 46h 04m | 46.07 | 5 | 160 | 4,631 |
| 2026-W30 (Jul 20–26) | 61h 10m | 61.18 | 6 | 224 | 6,499 |
| 2026-W29 (Jul 13–19) | 88h 32m | 88.54 | 7 | 252 | 6,428 |
| 2026-W28 (Jul 6–12) | 79h 31m | 79.52 | 7 | 264 | 5,432 |
| 2026-W27 (Jun 29–Jul 5) | 79h 44m | 79.74 | 7 | 251 | 3,882 |
| 2026-W26 (Jun 22–28) | 58h 10m | 58.17 | 7 | 119 | 1,637 |
| 2026-W25 (Jun 15–21) | 84h 47m | 84.78 | 7 | 197 | 2,420 |
| 2026-W24 (Jun 8–14) | 43h 36m | 43.61 | 7 | 122 | 1,349 |
| 2026-W23 (Jun 1–7) | 61h 55m | 61.93 | 7 | 173 | 1,346 |