docs: breadcrumb accuracy — Manager/Salaried bundle pushed (4c25011), deploy pending

Flip parked-work.md + CLAUDE.md from "paused, not pushed" to "pushed to
origin/ai-dev d7015b9..4c25011, Flatlogic VM deploy pending (migrate +
collectstatic + restart-last)". Prevents a fresh session reading stale
"not pushed" status.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
Konrad du Plessis 2026-05-16 23:50:13 +02:00
parent 4c250110e2
commit 80d96d7c91
2 changed files with 52 additions and 36 deletions

View File

@ -3,14 +3,21 @@
## What's mid-flight — read this first ## What's mid-flight — read this first
**Parked / deferred work:** see `docs/plans/parked-work.md`. **Parked / deferred work:** see `docs/plans/parked-work.md`.
**Production status (15 May 2026):** ✅ fully caught up. Production **Production status (16 May 2026):** ⚠ **`origin/ai-dev` is AHEAD of
is deployed at `origin/ai-dev` HEAD `1d224bc` — SiteReport + production — deploy pending.** A 36-commit bundle was pushed to
Absences feature, all UX polish, team filters, the 18-finding `origin/ai-dev` (HEAD now **`4c25011`**) on Konrad's go-ahead:
dashboard/report number audit, and template-comment fixes are all Manager/Salaried Pay + the pay-type filter + the Salary auto-scope
LIVE. Nothing pending deploy. (Deploy-ordering lesson from this picker + the Pay Salary dashboard quick action. **Production
day is captured in the "DEPLOY ORDERING" bullet of the (`https://foxlog.flatlogic.app/`) is still on the OLD code** — the
Flatlogic/AppWizzy Deployment section — restart must come AFTER Flatlogic VM deploy has NOT run yet. **Deploy needs migrate
the code is pulled, because `DEBUG=False` caches templates.) (`0016_worker_pay_type`, `0017_alter_payrolladjustment_type`) AND
collectstatic (`static/css/custom.css` changed) with restart LAST**
(DEBUG=False template-cache rule — see the "DEPLOY ORDERING" bullet
in the Flatlogic/AppWizzy Deployment section). Exact ordered steps:
the "Pushed to origin/ai-dev" section in `docs/plans/parked-work.md`.
Once deployed + verified on prod, flip this back to "✅ fully caught
up at `4c25011`". Previous prod-confirmed HEAD was `1d224bc`
(SiteReport + Absences + UX polish + 18-finding audit).
**🧊 Backburner — do NOT start in `ai-dev`:** Phase A.2 (manual **🧊 Backburner — do NOT start in `ai-dev`:** Phase A.2 (manual
JournalEntry UI) and Phase B (Letterly inbound webhook) are JournalEntry UI) and Phase B (Letterly inbound webhook) are

View File

@ -35,21 +35,33 @@ collectstatic — pure template + view change.
--- ---
## ⏸ Paused — implemented locally, awaiting Konrad's verification (not pushed) ## 🚀 Pushed to origin/ai-dev — pending Flatlogic deploy + prod verification
### Manager / Salaried Pay ### Manager / Salaried Pay (+ pay-type filter + Salary auto-scope + Pay Salary quick action)
**Status:** Brainstormed + designed + planned + **fully **Status:** Brainstormed + designed + planned + **fully
implemented** (Tasks 1-7), each task two-stage code-reviewed, implemented**, every task two-stage code-reviewed. **PUSHED to
execution complete but **HARD STOPPED before push** pending `origin/ai-dev` on 16 May 2026 on Konrad's explicit "push" go-ahead**
Konrad's manual local verification (Konrad's call, 15 May 2026). — the full **36-commit bundle** `d7015b9..4c25011` (origin/ai-dev
Design doc `docs/plans/2026-05-15-manager-salaried-pay-design.md` HEAD is now `4c25011`). This is the original Manager/Salaried feature
(local commit `325c59d`), plan (Tasks 1-7) PLUS three stacked refinements built + reviewed the same
`docs/plans/2026-05-15-manager-salaried-pay-plan.md` (local commit day: the display-only pay-type filter, the Salary auto-scope picker,
`4dadb7c`). **The design + plan + all 7 implementation/polish and the Pay Salary dashboard quick action. **209/209 tests green
commits are local-only on `ai-dev`, NOT pushed to origin** — Konrad locally.** Design/plan docs: `2026-05-15-manager-salaried-pay-*`,
wants nothing reaching the working app until he's verified it `2026-05-16-managers-paytype-filter-*`,
locally. **201/201 tests green locally.** `2026-05-16-salary-autoscope-picker-*`,
`2026-05-16-pay-salary-quick-action-*` (all under `docs/plans/`).
**⚠ NOT yet deployed to production.** The push reached
`origin/ai-dev` (GitHub) only. The Flatlogic VM still needs the
ordered deploy (DEBUG=False template-cache rule applies):
(1) `git fetch github ai-dev && git reset --hard github/ai-dev`,
(2) `git push gitea ai-dev`, (3) `python3 manage.py migrate`
(applies `0016_worker_pay_type` + `0017_alter_payrolladjustment_type`),
(4) `python3 manage.py collectstatic --noinput` (`static/css/custom.css`
changed — `--badge-salary-*`), (5) `sudo systemctl restart
django-dev.service` **LAST**, (6) confirm `git log` shows `4c25011`
then restart again if the restart preceded the pull.
**What it does:** Lets a manager / salaried worker be paid a fixed **What it does:** Lets a manager / salaried worker be paid a fixed
monthly amount without ever logging attendance. A new monthly amount without ever logging attendance. A new
@ -64,38 +76,35 @@ daily labour cost, so all existing money math is provably unchanged.
"Manager / Salaried" is a Path-A display-only label (model stays "Manager / Salaried" is a Path-A display-only label (model stays
`Worker`). Migrations `0016_worker_pay_type`, `0017_alter_payrolladjustment_type`. `Worker`). Migrations `0016_worker_pay_type`, `0017_alter_payrolladjustment_type`.
**To resume:** Konrad runs the manual verification checklist **To resume:** the push is done; the remaining step is the **Flatlogic
("Verification (manual, local — Konrad) — HARD STOP before any VM deploy** (ordered steps in the Status block above — migrate +
push", section in collectstatic + restart-last). After Gemini/Konrad deploys, verify on
`docs/plans/2026-05-15-manager-salaried-pay-design.md`) on a local `https://foxlog.flatlogic.app/` using the manual checklists in the four
instance, then **explicitly approves a push**. Only after that design docs, then update this file's "Production status" + the CLAUDE.md
explicit approval does anything get pushed to `origin/ai-dev`. No "What's mid-flight" breadcrumb to "fully caught up at `4c25011`". No
code changes pending — implementation is complete; this is purely a code changes pending — implementation is complete and reviewed.
human verify-then-approve gate.
Now also includes a display-only pay-type filter (design Now also includes a display-only pay-type filter (design
`docs/plans/2026-05-16-managers-paytype-filter-design.md`, plan `docs/plans/2026-05-16-managers-paytype-filter-design.md`, plan
`docs/plans/2026-05-16-managers-paytype-filter-plan.md`): a `docs/plans/2026-05-16-managers-paytype-filter-plan.md`): a
`/workers/?pay_type=fixed` filter + dropdown and a "Managers only" `/workers/?pay_type=fixed` filter + dropdown and a "Managers only"
client-side toggle on the Add-Adjustment modal picker. Same HARD client-side toggle on the Add-Adjustment modal picker. Shipped in
STOP — all of it is un-pushed until Konrad's local verification; the 36-commit push `d7015b9..4c25011`.
it ships bundled with the rest of the paused Manager/Salaried work
in one push, his call.
Also now: setting the Add-Adjustment **type = Salary** auto-scopes Also now: setting the Add-Adjustment **type = Salary** auto-scopes
the picker — pay-type filter → "Managers only", daily rows hidden, the picker — pay-type filter → "Managers only", daily rows hidden,
and any selected daily worker auto-unticked (UI guard so a `Salary` and any selected daily worker auto-unticked (UI guard so a `Salary`
can never silently target a daily worker). Design can never silently target a daily worker). Design
`docs/plans/2026-05-16-salary-autoscope-picker-design.md`, plan `docs/plans/2026-05-16-salary-autoscope-picker-design.md`, plan
`docs/plans/2026-05-16-salary-autoscope-picker-plan.md`. Same HARD `docs/plans/2026-05-16-salary-autoscope-picker-plan.md`. Shipped in
STOP — bundled into the one push on Konrad's say-so. the 36-commit push `d7015b9..4c25011`.
Also now: a home-dashboard admin Quick Actions tile **"Pay Salary"** Also now: a home-dashboard admin Quick Actions tile **"Pay Salary"**
deep-links `/payroll/?action=pay-salary` and auto-opens the existing deep-links `/payroll/?action=pay-salary` and auto-opens the existing
Pay Salary modal (param stripped after; no re-pop on refresh). Design Pay Salary modal (param stripped after; no re-pop on refresh). Design
`docs/plans/2026-05-16-pay-salary-quick-action-design.md`, plan `docs/plans/2026-05-16-pay-salary-quick-action-design.md`, plan
`docs/plans/2026-05-16-pay-salary-quick-action-plan.md`. Same HARD `docs/plans/2026-05-16-pay-salary-quick-action-plan.md`. Shipped in
STOP — bundled into the one push on Konrad's say-so. the 36-commit push `d7015b9..4c25011`.
#### Follow-ups from code review (parked, out of scope for this feature) #### Follow-ups from code review (parked, out of scope for this feature)