docs: capture dashboard/report audit pass landing

CLAUDE.md breadcrumb: '6 subsequent commits' → '13 subsequent
commits' with a one-paragraph summary of what's pending pull +
restart on production. Points at parked-work.md for the full
commit table.

parked-work.md:
- 'Pending pull-and-restart' table: added 18c75b2 (calendar
  month) and the 2e6b78d→c02edce audit-pass range as a single
  collapsed entry.
- 'Recently shipped' grew a detailed entry for the 18-finding
  audit pass at the top.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
Konrad du Plessis 2026-05-15 02:15:53 +02:00
parent c02edce0b9
commit 652168fe88
2 changed files with 26 additions and 5 deletions

View File

@ -7,13 +7,17 @@
`0014_add_absence`, `0015_absence_project` are deployed; `/history/`
is no longer crashing on the production VM. The Worker Absences
feature shipped on 14 May 2026 (commits `bf6f0a5``27fe05e` on
`ai-dev`). **6 subsequent commits** of UX polish + cleanup
(team-filter bug fix, dropdown stacking fix, team filter on
`/workers/` and `/history/`, day-name in payroll modal, 7 small
code-review polish items) are on `ai-dev` HEAD but not yet on
`ai-dev`). **13 subsequent commits** of UX polish + cleanup +
dashboard/report number audit (team filters, dropdown stacking fix,
day-name in payroll modal, calendar-month math, outstanding totals
aligned, `Project.name` dedupe, `timezone.localdate()`,
`_company_cost_velocity` SQL-aggregated, signed adjustment amounts,
hero-card scope sublines) are on `ai-dev` HEAD but not yet on
production — needs a `git pull` + `sudo systemctl restart
django-dev.service` whenever convenient (no migrations or
collectstatic required for any of them).
collectstatic required for any of them). See
`docs/plans/parked-work.md` "Pending pull-and-restart" table for
the full commit list.
Phase A.2 (manual JournalEntry UI) and Phase B (Letterly inbound
webhook) from the Site Work Logging design are parked pending Q5 / Q7

View File

@ -25,6 +25,8 @@ that are NOT yet on production:
| `398a5b2` | Adds a Team filter to `/history/` (and CSV export) |
| `70fa085` | Shows day name in Work Log Payroll modal header ("Friday, 15 May 2026") |
| `d1d3e15` | 7 absence-feature polish follow-ups (dead code removal, N+1 fixes, DRY helpers, WCAG icon contrast) |
| `18c75b2` | Dashboard "Paid This Month" now actually uses calendar month (was 60-day rolling) |
| `2e6b78d``c02edce` | Dashboard + report numbers audit fixes — 18 findings, 6 commits: outstanding-total alignment, project-name dedupe, timezone.localdate(), off-by-one date windows, dead context removal, SQL-aggregate cost velocity, clearer labels, signed adjustment amounts, daily_rate documentation |
**To deploy these:**
- No migrations needed (pure template + view changes; no schema changes).
@ -103,6 +105,21 @@ From Q9, Q4 of the Site Work Logging brainstorm:
## Recently shipped (for context, so a fresh session knows what just landed)
- **Dashboard + report numbers audit** (commits `18c75b2``c02edce`,
15 May 2026): Konrad spotted that the home dashboard's "Paid This
Month" actually showed the last 60 days. A thorough audit found
17 more issues across the home dashboard, payroll dashboard, and
report. All 18 fixed in 7 commits: calendar-month math, outstanding
totals aligned between dashboards, `Project.name` dedupe (was
silently merging same-named projects), `timezone.localdate()`
replacing `timezone.now().date()` (SAST drift fix), off-by-one
on "last 7 / 60 days" windows, dead `year_projects`/`year_teams`
context removed, `_company_cost_velocity` rewritten as single SQL
aggregate, signed/coloured adjustment amounts on report tables
(Bonus vs Deduction now visually distinct), "Outstanding Now"
hero card subline now shows scope when filters active, dual
daily_rate code paths documented in CLAUDE.md. 160 → 173 tests
(+13 regression).
- **Absence-feature polish pass** (commit `d1d3e15`, 15 May 2026):
Seven small cleanups in one focused commit. (1) Deleted unused
`AbsenceQuickForm` (Round C made it obsolete). (2) Extracted