pf_app/routes
Paul Trowbridge 94af6a5f13 Let a recode shift its dates, as clone does
date_offset moves the put-back leg of a recode while the negative leg
stays put, so a shifted recode is a timing move (pull forward, push
out); with a shift, set may be empty. Period dimensions on the moved
rows are re-derived from pf.dim_period against the shifted date, except
where the date is null, where the existing label is kept. No shift, no
derivation: a plain recode is unchanged.

The Recode form gets the same "Shift dates" field as Clone, blank by
default and cleared after each post.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-09-24 23:03:03 -04:00
..
auth.js Read territory at login, and survive having none 2026-09-18 11:52:00 -04:00
layouts.js Make a pivot layout a thing people own and publish 2026-09-19 14:20:04 -04:00
log.js Store every log entry's segment and bucket instead of deriving them 2026-09-24 22:35:49 -04:00
operations.js Let a recode shift its dates, as clone does 2026-09-24 23:03:03 -04:00
plans.js Put the forecasts in the nav, and lock the admin pages down 2026-09-23 01:57:24 -04:00
sources.js Put the forecasts in the nav, and lock the admin pages down 2026-09-23 01:57:24 -04:00
tables.js Put the forecasts in the nav, and lock the admin pages down 2026-09-23 01:57:24 -04:00
versions.js Put the forecasts in the nav, and lock the admin pages down 2026-09-23 01:57:24 -04:00