Commit Graph

  • 804e286af7 docs: production-status phrasing absorbs doc-only drift between origin and prod ai-dev Konrad du Plessis 2026-06-12 22:36:22 +02:00
  • 4f5f1bbe13 docs: audit bundle deployed & verified — close breadcrumbs, park leftovers, record gitea-auth break + autosave-diff rule Konrad du Plessis 2026-06-12 22:35:51 +02:00
  • abfae69606 fix: keep Flatlogic's internal preview domain in ALLOWED_HOSTS Konrad du Plessis 2026-06-12 22:27:08 +02:00
  • e3e5bdeb78 docs: audit bundle pushed to origin — breadcrumb now tracks the pending prod deploy Konrad du Plessis 2026-06-12 21:23:23 +02:00
  • 2d3cc43984 fix: run_dev.bat works from any launch directory (cd to its own folder first) Konrad du Plessis 2026-06-12 19:03:09 +02:00
  • 94b6ec08e1 docs: audit-fix breadcrumb (HARD STOP), resolve stale SiteReport push status, fix views.py size Konrad du Plessis 2026-06-12 18:07:20 +02:00
  • 921bdb6b73 chore: money-handling + template hygiene (audit items 11-16) Konrad du Plessis 2026-06-12 18:04:01 +02:00
  • 541b8973c7 perf: kill per-row queries on the History tab and Batch Pay preview Konrad du Plessis 2026-06-12 17:58:56 +02:00
  • 25910b2861 fix: worker batch report 'Total Paid' was inflated by the work-log join (+ kill its N+1s) Konrad du Plessis 2026-06-12 17:56:39 +02:00
  • f0f3938621 fix: worker report views survive stale/typo'd ?project= and ?team= params Konrad du Plessis 2026-06-12 17:50:48 +02:00
  • 4d029dd6e5 fix: cap attendance date range at 31 days (year-typo flood guard) Konrad du Plessis 2026-06-12 17:47:27 +02:00
  • 81753695a1 fix: refuse payments where deductions exceed earnings (no negative PayrollRecords) Konrad du Plessis 2026-06-12 17:45:39 +02:00
  • 7ce3bfb232 fix: Batch Pay modal — filters no longer silently re-tick unticked workers; surface server errors Konrad du Plessis 2026-06-12 17:42:39 +02:00
  • cfc78b72ad fix: email failure after payment no longer shows a 500 to interactive callers Konrad du Plessis 2026-06-12 17:41:20 +02:00
  • 14ab8d0f76 docs: capture 27-29 May incident lessons (two-tier env precedence, --insecure, SSH access) + gitignore .claude.local.md Konrad du Plessis 2026-06-12 17:36:45 +02:00
  • 663b7d98ba docs: park 2 Manager/Salaried follow-ups (Spark Receipt payslip verify + monthly_salary display) Konrad du Plessis 2026-05-17 06:25:25 +02:00
  • e71109d27e docs: scrub SiteReport from CLAUDE.md + park rebuild (capture doc) Konrad du Plessis 2026-05-17 02:11:37 +02:00
  • 120f21d645 polish: fix stale attendance_log comment + idiomatic WorkLog.objects.all() (SiteReport removal cleanup) Konrad du Plessis 2026-05-17 02:06:32 +02:00
  • 7f5e4c9c50 feat!: remove SiteReport / Log Today's Work feature (model, code, UI, tests) Konrad du Plessis 2026-05-17 01:52:19 +02:00
  • 15d9132fb2 docs: fix stale AbsenceAttendanceShortcutTests docstring (no Site Report flow) Konrad du Plessis 2026-05-17 01:43:27 +02:00
  • f9b190a26d refactor: revert post-attendance flow to redirect-home (SiteReport removal step 1) Konrad du Plessis 2026-05-17 01:35:14 +02:00
  • a502bac8ec docs: TDD plan for SiteReport removal (3 tasks, HARD STOP) Konrad du Plessis 2026-05-17 01:27:40 +02:00
  • 777c7c6dcc docs: SiteReport removal design + future-rebuild capture doc Konrad du Plessis 2026-05-17 01:23:09 +02:00
  • aaca0b36d3 docs: production caught up & verified (Manager/Salaried bundle live) Konrad du Plessis 2026-05-17 01:21:22 +02:00
  • 80d96d7c91 docs: breadcrumb accuracy — Manager/Salaried bundle pushed (4c25011), deploy pending Konrad du Plessis 2026-05-16 23:50:13 +02:00
  • 4c250110e2 docs: note Pay Salary quick action (rides paused bundle) Konrad du Plessis 2026-05-16 23:06:25 +02:00
  • 9ab0c68243 feat: Pay Salary quick action on home dashboard (deep-link to modal) Konrad du Plessis 2026-05-16 22:58:10 +02:00
  • 56c10ab938 docs: TDD plan for Pay Salary quick action (2 tasks, HARD STOP) Konrad du Plessis 2026-05-16 22:54:30 +02:00
  • fb19655a1d docs: design for Pay Salary dashboard quick action Konrad du Plessis 2026-05-16 22:52:58 +02:00
  • b397cdf46c docs: note Salary auto-scope picker (rides paused bundle) Konrad du Plessis 2026-05-16 22:31:28 +02:00
  • bf3b63fc6b docs: clarify no synthetic change-event needed in Salary sync block Konrad du Plessis 2026-05-16 22:27:26 +02:00
  • 31ee9e2e3c feat: type=Salary auto-scopes Add-Adjustment picker to managers Konrad du Plessis 2026-05-16 22:20:46 +02:00
  • 0c705129f6 docs: TDD plan for Salary auto-scope picker (2 tasks, HARD STOP) Konrad du Plessis 2026-05-16 22:14:06 +02:00
  • 8f443faebc docs: design for Salary auto-scope picker (filter + auto-untick) Konrad du Plessis 2026-05-16 22:12:03 +02:00
  • 0d77d7228d docs: note managers pay-type filter (rides with paused Manager/Salaried) Konrad du Plessis 2026-05-16 14:05:34 +02:00
  • 18ec393c0a fix: reset Add-Adjustment pay-type filter on every modal open Konrad du Plessis 2026-05-16 14:01:34 +02:00
  • 3a18ea008a feat: 'Managers only' client-side filter on Add-Adjustment picker Konrad du Plessis 2026-05-16 13:55:41 +02:00
  • fb8952a323 feat: pay-type dropdown on /workers/ filter row Konrad du Plessis 2026-05-16 13:49:04 +02:00
  • d949a01550 refine: document ?pay_type= param + add unknown-value regression test Konrad du Plessis 2026-05-16 13:45:24 +02:00
  • a442658430 feat: ?pay_type= filter on /workers/ (managers/daily, display-only) Konrad du Plessis 2026-05-16 13:40:40 +02:00
  • 45871225e1 docs: TDD plan for Managers pay-type filter (4 tasks, HARD STOP) Konrad du Plessis 2026-05-16 13:17:39 +02:00
  • 4aac2c1cf2 docs: design for Managers pay-type filter (Approach A, display-only) Konrad du Plessis 2026-05-16 13:13:30 +02:00
  • 4d06b83e30 docs: correct Salary verification step (manual amount entry, not auto-filled) Konrad du Plessis 2026-05-15 22:00:26 +02:00
  • 61e1f1492c docs: document Manager/Salaried pay; park feature pending Konrad local verify + 2 follow-ups Konrad du Plessis 2026-05-15 21:45:12 +02:00
  • 268a050397 polish: Salary multi-adjustment payslip-layout guard test; tighten list test; a11y badge contrast Konrad du Plessis 2026-05-15 21:34:12 +02:00
  • 862766f9b5 feat: pay_type UI (form/list/detail), Salary modal+entry, badge, clean Salary payslip Konrad du Plessis 2026-05-15 21:14:27 +02:00
  • d6f12e7dd1 polish: document team-filter Salary scoping; stricter report regression assertion Konrad du Plessis 2026-05-15 20:52:30 +02:00
  • 65b10e74ec feat: per-project Management/Salaried Cost report line + regression & netting guards Konrad du Plessis 2026-05-15 20:35:11 +02:00
  • 255ec82cef feat: add_adjustment Salary branch (project-required, pay-now/pending) Konrad du Plessis 2026-05-15 20:15:30 +02:00
  • 86b0cb9dd6 test: strengthen Task 4 absence-exclusion tests (parity + behavioral POST guard) Konrad du Plessis 2026-05-15 20:05:15 +02:00
  • 5fa3efcf64 feat: exclude fixed-salary managers from absence pickers Konrad du Plessis 2026-05-15 19:55:42 +02:00
  • 0f45d64eea fix: close inline team-map manager-exclusion gap + add cost-rate exclusion test Konrad du Plessis 2026-05-15 19:46:34 +02:00
  • 65df9f817e feat: exclude fixed-salary managers from attendance pickers Konrad du Plessis 2026-05-15 19:36:33 +02:00
  • 482f88bb10 fix: add missing 0017 AlterField migration for Salary choice; correct plan premise Konrad du Plessis 2026-05-15 19:28:58 +02:00
  • b3a8147a60 feat: register 'Salary' PayrollAdjustment type as additive Konrad du Plessis 2026-05-15 19:20:04 +02:00
  • 3c471691f3 feat: add Worker.pay_type discriminator + is_salaried property Konrad du Plessis 2026-05-15 19:08:39 +02:00
  • 4dadb7cf23 docs: add Manager / Salaried Pay implementation plan (8 TDD tasks) Konrad du Plessis 2026-05-15 19:03:26 +02:00
  • 325c59d4a1 docs: add Manager / Salaried Pay design (Approach A, approved) Konrad du Plessis 2026-05-15 18:57:53 +02:00
  • 9713b89ede docs: park post-attendance-flow-v2 (designed+planned, execution paused) Konrad du Plessis 2026-05-15 13:11:15 +02:00
  • 29c36bede7 docs: post-attendance flow v2 implementation plan Konrad du Plessis 2026-05-15 13:05:48 +02:00
  • 110545b11e docs: post-attendance flow v2 design Konrad du Plessis 2026-05-15 13:02:18 +02:00
  • d7015b9210 docs: move journal/voice work to explicit backburner track Konrad du Plessis 2026-05-15 11:53:04 +02:00
  • 5162db966a docs: production fully deployed at 1d224bc + capture deploy-ordering lesson Konrad du Plessis 2026-05-15 11:29:26 +02:00
  • 1d224bc01b fix(templates): convert 8 broken multi-line {# #} comments + clarify cryptic sublines Konrad du Plessis 2026-05-15 08:23:20 +02:00
  • 652168fe88 docs: capture dashboard/report audit pass landing Konrad du Plessis 2026-05-15 02:15:53 +02:00
  • c02edce0b9 docs(CLAUDE.md): daily_rate semantics + dual-code-path note Konrad du Plessis 2026-05-15 02:11:19 +02:00
  • 8f81e5ab94 refactor(report): signed adjustment amounts + filter-attribution caveat Konrad du Plessis 2026-05-15 02:10:36 +02:00
  • 4186603bcb ux(report,dashboard): clearer labels for paid/outstanding/avg Konrad du Plessis 2026-05-15 02:04:55 +02:00
  • 3ef6db71c9 refactor(report): drop dead year_projects context + SQL cost velocity Konrad du Plessis 2026-05-15 02:01:48 +02:00
  • e797a71b94 fix(dashboard,report): timezone.localdate + off-by-one date windows Konrad du Plessis 2026-05-15 01:59:12 +02:00
  • 2e6b78d28a fix(dashboard): align outstanding totals + project-name dedupe Konrad du Plessis 2026-05-15 01:55:49 +02:00
  • 18c75b2bce fix(dashboard): 'Paid This Month' actually uses calendar month Konrad du Plessis 2026-05-15 01:46:47 +02:00
  • 9bd0e8541d docs: capture absence polish-pass landing + refresh deploy counter Konrad du Plessis 2026-05-15 01:11:13 +02:00
  • d1d3e15444 chore(absences): 7 polish follow-ups from code review Konrad du Plessis 2026-05-15 01:09:44 +02:00
  • 70fa085886 ux(history): show day name in Work Log Payroll modal header Konrad du Plessis 2026-05-15 00:57:38 +02:00
  • bde6f24bb1 docs: refresh CLAUDE.md + parked-work for 15 May session wins Konrad du Plessis 2026-05-15 00:50:47 +02:00
  • 398a5b21ab feat(history): add Team filter to /history/ page (and CSV export) Konrad du Plessis 2026-05-15 00:47:15 +02:00
  • 4b57cffb77 feat(workers): add team filter to /workers/ page Konrad du Plessis 2026-05-15 00:34:35 +02:00
  • 02c6d4da74 fix(absences): lift filter card stacking context so Reasons dropdown wins Konrad du Plessis 2026-05-15 00:25:51 +02:00
  • 4368e53d95 fix(absences): team filter reads worker ID from <input> value, not data-attr Konrad du Plessis 2026-05-15 00:08:09 +02:00
  • 7d4d7b1f8b docs: park the production deploy step + rotate parked-work queue Konrad du Plessis 2026-05-14 23:43:32 +02:00
  • 27fe05e3b6 fix(absences): dropdown z-index + clearer Confirm Absences copy Konrad du Plessis 2026-05-14 23:32:45 +02:00
  • a6cf766394 fix(absences): pre-push polish — admin sync + bulk-delete cascade + supervisor menu Konrad du Plessis 2026-05-14 23:04:12 +02:00
  • 9345dacfbf feat(absences): worker detail tab + dashboard alert + CLAUDE.md (Round D) Konrad du Plessis 2026-05-14 22:35:15 +02:00
  • 8c749f3f52 feat(absences): 'Submit + Log Absences' button on attendance form Konrad du Plessis 2026-05-14 22:17:41 +02:00
  • 32972276b5 feat(absences): add optional project FK on Absence Konrad du Plessis 2026-05-14 22:03:04 +02:00
  • 2ae9f34058 feat(absences): team filter + multi-reason filter + dashboard quick action Konrad du Plessis 2026-05-14 21:44:47 +02:00
  • ea94c46cb6 fix(absences): multi-line {# #} comments rendering as text + add Resources menu entry Konrad du Plessis 2026-05-14 21:13:53 +02:00
  • 37268801a1 feat(absences): list + edit + delete + CSV export Konrad du Plessis 2026-05-14 20:39:14 +02:00
  • b5833f675d feat(absences): log + confirm views + templates + URLs Konrad du Plessis 2026-05-14 20:14:19 +02:00
  • 8f2d3e9dfe feat(absences): AbsenceLogForm + AbsenceQuickForm + AbsenceEditForm Konrad du Plessis 2026-05-14 19:53:24 +02:00
  • 90c0e57659 feat(absences): _absence_user_queryset + _sync_absence_payroll_adjustment Konrad du Plessis 2026-05-14 19:32:42 +02:00
  • bf6f0a5c74 feat(absences): Absence model + migration + admin registration Konrad du Plessis 2026-05-14 19:22:06 +02:00
  • f146af0e35 docs(absences): task-by-task implementation plan Konrad du Plessis 2026-05-14 19:04:43 +02:00
  • 08f312f6e3 docs(absences): worker-absence-records feature design Konrad du Plessis 2026-05-14 18:14:43 +02:00
  • 69c81a4092 docs: add parked-work index for session handoffs Konrad du Plessis 2026-05-14 17:30:29 +02:00
  • 864ae722c4 feat(site-report): structured site progress logging — Phase A.1 Konrad du Plessis 2026-04-27 02:29:33 +02:00
  • 3da039b74e Revert "feat(webhooks): outbound payslip webhook → Make.com / Zapier / n8n" Konrad du Plessis 2026-04-24 13:03:12 +02:00
  • a52d841c00 feat(webhooks): outbound payslip webhook → Make.com / Zapier / n8n Konrad du Plessis 2026-04-24 12:39:01 +02:00
  • 6c6ade9a45 ux(ui): pastel soft-fill payroll action buttons Konrad du Plessis 2026-04-24 11:10:14 +02:00