pf_app/ui/src
Paul Trowbridge c6ef350283 Type a slice's values before filtering the ledger with them
A slice carries every value as a string -- built from filters the grid
reports, and shaped to survive JSON on the way to the API. Perspective
matches on type, and a string '2027' against an integer column is not a
filter that matches nothing, it is a filter that is dropped.

So the pivot's own season filter never reached the ledger: with the grid
scoped to sseas_e = 2027 the ledger totalled 956,485.13 against a cell
reading 921,225.71, the difference being eleven rows of a baseline segment
whose shipments fall in the next season. Only dates were being coerced, and
only because someone had hit this before with them.

Values are now typed against the loaded table's schema rather than against
col_meta's role, which is the thing that actually decides the match. The
server side was already right -- Postgres casts the literal -- and returns
921,225.71 for the same slice.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-09-18 08:33:34 -04:00
..
assets Scaffold React/Vite/Tailwind UI with 3-step Setup → Baseline → Forecast flow 2026-04-25 16:28:45 -04:00
components Make a slice mean what it says, and say what cannot move 2026-09-18 00:17:25 -04:00
views Type a slice's values before filtering the ledger with them 2026-09-18 08:33:34 -04:00
App.css Scaffold React/Vite/Tailwind UI with 3-step Setup → Baseline → Forecast flow 2026-04-25 16:28:45 -04:00
App.jsx Stop loading the whole version twice on every page load 2026-09-16 22:42:38 -04:00
auth.jsx Put the app behind a login 2026-09-14 22:20:25 -04:00
index.css Fix period col dropdown dark mode: custom dropdown with theme-aware colors 2026-06-13 00:48:25 -04:00
main.jsx Set row depth through ViewConfig instead of restoring it after every rebuild 2026-09-17 03:05:36 -04:00
theme.jsx Add light/dark mode with theme toggle 2026-04-25 23:29:25 -04:00