Core principles
- Preserve historical compatibility with
daily_parse_data/*.csv.
- Prefer additive schema changes over breaking ones.
- Validate outputs after each substantive change.
- Keep implementations small and observable.
Change safety checklist
Before finalizing any change:
- confirm expected files still exist (
scrape_swing_planit.R, daily_parse_data/, dashboard or site files)
- verify no accidental destructive operations on historical data
- document assumptions for inferred metrics (especially editions)
- ensure naming consistency (
snake_case for derived datasets)
Data compatibility policy
- Do not rename or remove existing raw snapshot columns without explicit request.
- If a new canonical field is introduced, keep legacy field available during transition.
- Prefer deriving new analytics in separate transformed datasets rather than mutating raw history.