-
Notifications
You must be signed in to change notification settings - Fork 0
Description
What
The rie_heating.json URDB-format gas tariff for Rhode Island Energy's Residential Heating rate (Rate 12) contains volumetric rates that are ~28–32% too high. The tariff fetch pipeline summed both the heating-season distribution charge ($0.5933/therm, Nov–Apr) and the non-heating-season distribution charge ($0.5317/therm, May–Oct) into every rate period, when in reality only one applies in any given month.
The rie_nonheating.json (Rate 10) is unaffected — its CSV has only a single (non-seasonal) distribution charge row.
Why
This caused all modeled gas bills for heating-rate buildings to be inflated by roughly $0.53–$0.59/therm — approximately $480–$530/year for a gas-heated home consuming ~900 therms/year. The error was discovered during RI rate design analysis (batch ri_20250318c_r1-16). A manual one-time fix was applied to rate_design/hp_rates/ri/config/tariffs/gas/rie_heating.json in the rate-design-platform repo, but the root cause lives in the tariff fetch pipeline: the script that converts Rate Acuity CSVs into URDB JSON apparently sums all rows labelled distribution charge without respecting the season column qualifier.
How
- In
fetch_gas_tariffs_rateacuity.py(or whatever helper builds the URDB period rates from the CSV rows), identify wheredistribution chargerows are aggregated into volumetric rate periods. - Add logic to detect rows with a non-empty
seasoncolumn (e.g.11/01 - 04/30vs05/01 - 10/31) and map them to separate URDB rate periods rather than summing across both seasonal variants. - The corrected
rie_heating.jsonshould have 4 periods matching these month groupings and rates (derived from therie_heating.csvsource):
| Period | Months | Correct rate |
|---|---|---|
| 0 | Jan–Mar (heating, summer adj) | $0.063686/kWh |
| 1 | Apr (heating, spring adj) | $0.065945/kWh |
| 2 | May–Oct (non-heating) | $0.063843/kWh |
| 3 | Nov–Dec (heating, winter gcr/adj) | $0.058560/kWh |
- Verify the regenerated JSON matches the manually corrected file in
rate-design-platform. - Add a regression check: after fetching, assert that no URDB rate period incorporates more than one seasonal distribution charge row.
Deliverables
- PR to
tariff_fetchfixing the CSV → URDB JSON aggregation to respect seasonal distribution charge row qualifiers - Regenerated
rie_heating.jsonthat matches the manually corrected version - Test or assertion guarding against this class of double-counting in future fetches