Part A — Round 3 regressions: - A.1: verify-cost-reconciliation.mjs now loads .env.local, wraps in try/catch, exits 1 on any failure - A.2: Vehicle Costs restored Santam — back to R 14,996.31 (matches row-by-row sum) - A.3: incl<excl / VAT math / VAT>20% now FATAL — seed exits 2 with full report (4 anomalies on Charl-CCS + Buildsmart) - A.4: Reconciliation target R 694,962.93 with both deltas itemised (Personnel +R19,800, Santam -R5,322.44, unexplained R 0.00) - A.5: 'Lines' view uses actual lines (recharts LineChart), no fills; fills only in 'Cost stack' Part B — Mobile standard: - B.1: header wraps to 2 rows on mobile; YTD badge cards stack; page-wide overflow eliminated on /income, /charts, /overheads, /running, /expenses - B.2: IncomeView card row layout stacked — name gets its own line on mobile, never truncated to single char - B.3: Plant type filter is a <select> dropdown below lg (was 18 pills wrapping to 13 rows); same for sort on /income and /running - B.4: Plant table first column sticky; -webkit-overflow-scrolling: touch; tables scroll inside their own container - B.5: All buttons/links use min-h-[44px] tap targets; text below 12px is bumped where it matters - B.6: Charts legend wraps below title; chart min-height h-44 → h-52 on mobile - B.7: paddingTop env(safe-area-inset-top) on sticky header for notch/home indicator clearance AGENTS.md created with the standing mobile checklist rule.
39 lines
810 B
Text
39 lines
810 B
Text
# Reinstalled inside the image by `npm ci`
|
|
node_modules
|
|
|
|
# Build output — must not leak into the image or it poisons the fresh build
|
|
.next
|
|
.next-build
|
|
out
|
|
dist
|
|
|
|
# Secrets. Runtime config comes from Coolify's environment variables.
|
|
.env
|
|
.env.local
|
|
.env.*.local
|
|
|
|
# Generated by next-pwa during the Docker build; a stale copy from a local
|
|
# dev run would be baked in over the fresh one.
|
|
public/sw.js
|
|
public/sw.js.map
|
|
public/workbox-*.js
|
|
public/workbox-*.js.map
|
|
public/swe-worker-*.js
|
|
|
|
# Source workbook + extracted JSON. Only used by `npm run seed`, which is a
|
|
# local one-off against PocketBase — not something the container does. ~2MB.
|
|
data/source
|
|
|
|
# Local tooling and docs
|
|
.git
|
|
.gitignore
|
|
.vscode
|
|
.mavis
|
|
.superpowers
|
|
*.log
|
|
.DS_Store
|
|
HANDOFF-PROMPT*.md
|
|
README.md
|
|
COOLIFY.md
|
|
tsconfig.tsbuildinfo
|
|
test-pb.mjs
|