mega-plant/lib
Dave 5634c067c4 feat(running): the year to date AND the live month on the running-cost pages
The client asked for two things on the running-cost pages: drop the two prose
notes, and show the year-to-date figure next to the total for the current month.

- /running loses the "Shown to Jan, Feb..." and "A re-cut of costs..."
  paragraphs. The tiles carry the year and the month instead.
- /running shows "Nov so far" beside "YTD running cost", and the "made of"
  line is printed for the month as well as for the year, so the month's total
  is explained on the page and not only in the grid.
- The cards follow the income cards: YTD spend | Nov so far side by side from
  md, the month on its own line below md, and the sparkline yields its width
  below xl so the vehicle NAME is never truncated to pay for a decorative
  trend. Below sm the name wraps instead of being cut short.
- /running/insurance shows the premium in force this month, and its
  year-to-date figure now stops at the months that have happened. December is
  a rate on file, not money spent, so including it made this page a full year
  while the Overview showed eleven months - the same cost kind reading as two
  different numbers on two screens.
- /running/financing shows "Committed for Nov" beside a new year-to-date
  instalment figure.

One rule, three screens. elapsedMonths() in lib/income-month.ts counts the
months that have happened and is the same clock the income pages use, and
financeByAsset() / fleetFinanceByMonth() in lib/running-costs.ts are the only
finance rule the Overview and the financing register both read. The Overview's
insurance and finance year-to-date figures now equal the insurance and
financing pages' figures exactly.

lib/running-month.test.ts asserts it, including the insurance cross-check
between the register and the Overview.

A settled agreement still contributes nothing to any month - the instalments
TLB06 was paying in January-October are not in the Overview's finance figure.
The client confirmed the financing is correct as it stands, so that is left
alone and recorded in AGENTS.md rather than quietly changed.
2026-11-05 01:42:23 +02:00
..
auth-policy.test.ts feat: add user access and improve plant dashboard 2026-10-06 04:02:08 +02:00
auth-policy.ts Cash float card, Office role + Slips tab, job card PDF, manual close/delete 2026-10-22 15:09:57 +02:00
auth-service.test.ts feat: add user access and improve plant dashboard 2026-10-06 04:02:08 +02:00
auth-service.ts Job cards oil path, Fuel tab diesel-only, Mechanic role, Plant Register QR column 2026-10-22 13:44:01 +02:00
auth.ts feat(clock): add standalone employee clock PWA 2026-10-21 06:39:15 +02:00
cash-float-server.ts Cash float card, Office role + Slips tab, job card PDF, manual close/delete 2026-10-22 15:09:57 +02:00
cash-float.test.ts Cash float card, Office role + Slips tab, job card PDF, manual close/delete 2026-10-22 15:09:57 +02:00
cash-float.ts Cash float card, Office role + Slips tab, job card PDF, manual close/delete 2026-10-22 15:09:57 +02:00
chart-profit.ts Income: hide stood-down machines, with an active/inactive filter 2026-10-03 18:40:32 +02:00
clock-access.test.ts Cash float card, Office role + Slips tab, job card PDF, manual close/delete 2026-10-22 15:09:57 +02:00
clock-access.ts Cash float card, Office role + Slips tab, job card PDF, manual close/delete 2026-10-22 15:09:57 +02:00
clock-api.ts Clock app: vehicle-QR diesel book-out with meter photo; user access levels 2026-10-22 12:25:15 +02:00
clock-badge.ts feat(clock): add standalone employee clock PWA 2026-10-21 06:39:15 +02:00
clock-display.ts feat(clock): add standalone employee clock PWA 2026-10-21 06:39:15 +02:00
clock-lock.test.ts feat(clock): add standalone employee clock PWA 2026-10-21 06:39:15 +02:00
clock-lock.ts feat(clock): add standalone employee clock PWA 2026-10-21 06:39:15 +02:00
clock-origin.ts feat(clock): add standalone employee clock PWA 2026-10-21 06:39:15 +02:00
clock-pwa.test.ts feat(clock): add standalone employee clock PWA 2026-10-21 06:39:15 +02:00
clock-pwa.ts feat(clock): add standalone employee clock PWA 2026-10-21 06:39:15 +02:00
clock-request.test.ts feat(clock): add standalone employee clock PWA 2026-10-21 06:39:15 +02:00
clock-request.ts feat(clock): add standalone employee clock PWA 2026-10-21 06:39:15 +02:00
clock-rules.ts Add Workforce pages, Plant Clock tab bar and oil & diesel book-out 2026-10-22 11:39:18 +02:00
clock-store.ts Add Workforce pages, Plant Clock tab bar and oil & diesel book-out 2026-10-22 11:39:18 +02:00
clock.test.ts Add Workforce pages, Plant Clock tab bar and oil & diesel book-out 2026-10-22 11:39:18 +02:00
clock.ts Add Workforce pages, Plant Clock tab bar and oil & diesel book-out 2026-10-22 11:39:18 +02:00
cost-code.ts Add Running Costs sub-pages: insurance, financing, purchases, oil, operators, mechanics 2026-10-09 01:06:27 +02:00
data.ts feat(plant): vehicle site history from Fuel Logs 2026-11-05 00:18:24 +02:00
financing.ts Add Running Costs sub-pages: insurance, financing, purchases, oil, operators, mechanics 2026-10-09 01:06:27 +02:00
income-month.test.ts feat(income): posted income per site, and the LIVE month on the overview 2026-11-05 00:19:06 +02:00
income-month.ts feat(running): the year to date AND the live month on the running-cost pages 2026-11-05 01:42:23 +02:00
insurance-rate-policy.json Add Running Costs sub-pages: insurance, financing, purchases, oil, operators, mechanics 2026-10-09 01:06:27 +02:00
insurance-rate-policy.ts Add Running Costs sub-pages: insurance, financing, purchases, oil, operators, mechanics 2026-10-09 01:06:27 +02:00
insurance.ts Add Running Costs sub-pages: insurance, financing, purchases, oil, operators, mechanics 2026-10-09 01:06:27 +02:00
intake-retry.test.ts feat: add user access and improve plant dashboard 2026-10-06 04:02:08 +02:00
intake-retry.ts feat: add user access and improve plant dashboard 2026-10-06 04:02:08 +02:00
invoice-booking-policy.json Invoices: line-item extraction, booking to plant items, VAT-inclusive income 2026-10-01 15:59:30 +02:00
invoice-booking-route.test.ts feat(income): posted income per site, and the LIVE month on the overview 2026-11-05 00:19:06 +02:00
invoice-booking.ts Invoices: line-item extraction, booking to plant items, VAT-inclusive income 2026-10-01 15:59:30 +02:00
invoice-parser.test.ts Test: a site typed without its space is deliberately NOT folded 2026-10-08 19:06:30 +02:00
invoice-parser.ts Invoices: one line per charge, and fold an abbreviated site 2026-10-06 11:25:10 +02:00
invoice-party-policy.json Split the invoice register into Internal and External Invoices 2026-10-08 11:49:48 +02:00
invoice-party.test.ts Split the invoice register into Internal and External Invoices 2026-10-08 11:49:48 +02:00
invoice-party.ts Split the invoice register into Internal and External Invoices 2026-10-08 11:49:48 +02:00
invoice-register.test.ts feat(income): posted income per site, and the LIVE month on the overview 2026-11-05 00:19:06 +02:00
invoice-register.ts feat(income): posted income per site, and the LIVE month on the overview 2026-11-05 00:19:06 +02:00
invoice-revalidate.ts feat(income): posted income per site, and the LIVE month on the overview 2026-11-05 00:19:06 +02:00
invoice-routes.ts Split the invoice register into Internal and External Invoices 2026-10-08 11:49:48 +02:00
job-card-pdf.ts Cash float card, Office role + Slips tab, job card PDF, manual close/delete 2026-10-22 15:09:57 +02:00
job-cards.ts Add Job Cards (vehicle-QR start/finish) and retire Operators/Mechanics pages 2026-10-22 12:54:59 +02:00
mechanics.ts Add Running Costs sub-pages: insurance, financing, purchases, oil, operators, mechanics 2026-10-09 01:06:27 +02:00
oil-log.ts Add Workforce pages, Plant Clock tab bar and oil & diesel book-out 2026-10-22 11:39:18 +02:00
oil.ts Add Workforce pages, Plant Clock tab bar and oil & diesel book-out 2026-10-22 11:39:18 +02:00
pb.ts Round 4: regressions fixed + mobile standard 2026-09-12 12:05:43 +02:00
plant-location-policy.json feat: add user access and improve plant dashboard 2026-10-06 04:02:08 +02:00
plant-map.test.ts feat: add user access and improve plant dashboard 2026-10-06 04:02:08 +02:00
plant-map.ts feat(plant): vehicle site history from Fuel Logs 2026-11-05 00:18:24 +02:00
plant-site-history.test.ts feat(plant): vehicle site history from Fuel Logs 2026-11-05 00:18:24 +02:00
plant-site-history.ts feat(plant): vehicle site history from Fuel Logs 2026-11-05 00:18:24 +02:00
plant-site-import.test.ts feat(plant): vehicle site history from Fuel Logs 2026-11-05 00:18:24 +02:00
plant-site-import.ts feat(plant): vehicle site history from Fuel Logs 2026-11-05 00:18:24 +02:00
plant-site-policy.json feat(plant): vehicle site history from Fuel Logs 2026-11-05 00:18:24 +02:00
profit.test.ts Mega Plant dashboard — fix & harden (Parts 0-5) 2026-09-12 09:35:48 +02:00
profit.ts Mega Plant dashboard — fix & harden (Parts 0-5) 2026-09-12 09:35:48 +02:00
purchase-booking.ts Fold purchase orders into the Running Costs Overview, with incl/excl totals 2026-10-09 12:10:13 +02:00
purchase-invoice-amount.test.ts Purchase invoices: price an invoice that has no amount 2026-11-04 18:06:02 +02:00
purchase-invoice-amount.ts Purchase invoices: price an invoice that has no amount 2026-11-04 18:06:02 +02:00
purchase-invoice-status.ts Suppliers: replace the menu entry with the new page, flag over-invoiced POs, audited invoice amount corrections 2026-10-29 20:49:05 +02:00
purchase-parser.ts Purchase invoices, Suppliers 2 with payments, multi-page PO parsing 2026-10-29 20:29:08 +02:00
qr-pdf.ts Add Workforce pages, Plant Clock tab bar and oil & diesel book-out 2026-10-22 11:39:18 +02:00
qr.ts Add Running Costs sub-pages: insurance, financing, purchases, oil, operators, mechanics 2026-10-09 01:06:27 +02:00
require-full.ts Add Suppliers list; book purchase orders and petty-cash slips against it 2026-10-22 15:43:57 +02:00
rows.test.ts Invoices: line-item extraction, booking to plant items, VAT-inclusive income 2026-10-01 15:59:30 +02:00
rows.ts feat(running): the year to date AND the live month on the running-cost pages 2026-11-05 01:42:23 +02:00
running-costs.ts feat(running): the year to date AND the live month on the running-cost pages 2026-11-05 01:42:23 +02:00
running-month.test.ts feat(running): the year to date AND the live month on the running-cost pages 2026-11-05 01:42:23 +02:00
server-data.ts Add Running Costs sub-pages: insurance, financing, purchases, oil, operators, mechanics 2026-10-09 01:06:27 +02:00
shrink-image.ts Cash float card, Office role + Slips tab, job card PDF, manual close/delete 2026-10-22 15:09:57 +02:00
site-income.test.ts feat(income): posted income per site, and the LIVE month on the overview 2026-11-05 00:19:06 +02:00
site-income.ts feat(income): posted income per site, and the LIVE month on the overview 2026-11-05 00:19:06 +02:00
sites.test.ts Give external invoices a supplier name; keep them off the sites page 2026-10-08 12:04:42 +02:00
sites.ts Give external invoices a supplier name; keep them off the sites page 2026-10-08 12:04:42 +02:00
stock-out.ts Job cards oil path, Fuel tab diesel-only, Mechanic role, Plant Register QR column 2026-10-22 13:44:01 +02:00
supplier-server.ts Add Suppliers list; book purchase orders and petty-cash slips against it 2026-10-22 15:43:57 +02:00
supplier-spend.ts Suppliers: replace the menu entry with the new page, flag over-invoiced POs, audited invoice amount corrections 2026-10-29 20:49:05 +02:00
supplier.test.ts Add Suppliers list; book purchase orders and petty-cash slips against it 2026-10-22 15:43:57 +02:00
supplier.ts Add Suppliers list; book purchase orders and petty-cash slips against it 2026-10-22 15:43:57 +02:00
utils.ts Mega Plant dashboard — fix & harden (Parts 0-5) 2026-09-12 09:35:48 +02:00
workforce-store.ts Add Workforce pages, Plant Clock tab bar and oil & diesel book-out 2026-10-22 11:39:18 +02:00
workforce.test.ts Add Workforce pages, Plant Clock tab bar and oil & diesel book-out 2026-10-22 11:39:18 +02:00
workforce.ts Add Workforce pages, Plant Clock tab bar and oil & diesel book-out 2026-10-22 11:39:18 +02:00