pf_app/lib
Paul Trowbridge 2337951b65 Store every log entry's segment and bucket instead of deriving them
pf_segment and pf_bucket were resolved at read time through a chain of
fallbacks (label, tag, note, the version's unlabeled_load; the version's
adjustment defaults), repeated in /agg, the /data cursor and the decorate
proc, so nothing but the pivot could say what bucket a row was in.

Now they are written onto pf.log when the entry is created: a load's
label is required and its bucket defaults to the label; an adjustment is
stamped with the version's adjustment_segment/adjustment_bucket, else
the built-ins. Reads become l.label / l.bucket. A log_named CHECK
guarantees both are present, and 01_schema.sql backfills existing
entries with the old read-time rule so no displayed name changes.

The Baseline page's "Fallback names" become "Defaults for new
adjustments"; unlabeled_load is no longer read.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-09-24 22:35:49 -04:00
..
auth.js Scope what an account can see and change to its territory 2026-09-18 11:14:03 -04:00
sql_generator.js Store every log entry's segment and bucket instead of deriving them 2026-09-24 22:35:49 -04:00
utils.js Read source columns from pg_catalog, not information_schema 2026-09-18 16:12:05 -04:00