mega-plant/app/api
Dave 1429c8087b feat(plant): vehicle site history from Fuel Logs
/plant and /plant/map import Fuel Logs CSVs by exact QR and show each
vehicle's current and previous distinct site with the dates they were
observed.

- plant_site_observations is durable, QR-keyed history. It is never wiped
  and a previous site is never manufactured.
- An older or repeated snapshot must not move a vehicle backwards; untimed
  conflicting sites on one day are held for review.
- A manual site change shares the same history and the same lock.
- Current/previous metadata and the sticker QR are captured BEFORE the asset
  rows are deleted in the seed, so a re-seed cannot wipe them. Explicit
  empty values are preserved too: clearing a site is a deliberate manual
  observation, not permission to restore an old sheet value.
- Imports change location metadata only. They never touch income, cost or
  fuel measurements.
- A new named site is created only for a matched Plant vehicle. Missing
  coordinates mean "awaiting a pin", never a headquarters fallback.

Owner-confirmed 2026-11-04: TLB06's QR is 1089, not the old meter reading
4704. lib/plant-site-policy.json holds the confirmed aliases (Equestria
Bastion Job -> Equestria 215, Cosmo City / Lion Park -> Cosmo City); no
other identity is guessed.
2026-11-05 00:18:24 +02:00
..
assets/[id] feat(plant): vehicle site history from Fuel Logs 2026-11-05 00:18:24 +02:00
auth/logout
cash-float Add Suppliers list; book purchase orders and petty-cash slips against it 2026-10-22 15:43:57 +02:00
clock Add Suppliers list; book purchase orders and petty-cash slips against it 2026-10-22 15:43:57 +02:00
financing/[id] Add Running Costs sub-pages: insurance, financing, purchases, oil, operators, mechanics 2026-10-09 01:06:27 +02:00
health
invoice-lines/[id] Split the invoice register into Internal and External Invoices 2026-10-08 11:49:48 +02:00
invoices Attach the uploaded PDF to the invoice it creates 2026-10-08 21:45:42 +02:00
job-cards/[id] Add Suppliers list; book purchase orders and petty-cash slips against it 2026-10-22 15:43:57 +02:00
mechanics Add Job Cards (vehicle-QR start/finish) and retire Operators/Mechanics pages 2026-10-22 12:54:59 +02:00
oils Clock app: vehicle-QR diesel book-out with meter photo; user access levels 2026-10-22 12:25:15 +02:00
operators Add Job Cards (vehicle-QR start/finish) and retire Operators/Mechanics pages 2026-10-22 12:54:59 +02:00
plant/site-import feat(plant): vehicle site history from Fuel Logs 2026-11-05 00:18:24 +02:00
purchases Purchase invoices: price an invoice that has no amount 2026-11-04 18:06:02 +02:00
sites/[id]
supplier-payments Purchase invoices, Suppliers 2 with payments, multi-page PO parsing 2026-10-29 20:29:08 +02:00
suppliers Suppliers: double-click name to set terms; Edit mode gates deletes and invoice corrections 2026-10-29 20:54:34 +02:00