Skip to content

Decide prior law after a bounded change to an uprated amount: freezes resume from the frozen amount #2430

Open

Description

@MaxGhenis

After a bounded dated change to an amount uprated from an index (benefit rates, the Plan 2 student loan threshold, the NICs lower earnings limit and the like), policyengine-uk returns to the path the amount would have taken without the change (#2305). That matches a temporary modification. It doesn't match a freeze, and freezes are the more common Budget measure for these amounts.

Freezes resume from the frozen amount.

Temporary modifications revert. The 2020 UC uplift, SI 2020/371 reg 3 (verified), had UC Regulations 2013 reg 36 "read as if" higher amounts were substituted "only for the remainder of the tax year beginning with 6th April 2020". That left the underlying amount, which the uprating orders kept raising.

Effect on Budget CI.

  • With today's rule, a reform freezing a benefit for two years scores savings only for those two years. Under statute, the lower path persists.
  • The review's probes: extending the Plan 2 freeze to 2032-33 gives 2033 the unfrozen path's £32,230.27, and freezing the LEL to 2029-30 jumps it back to £139.63 in 2030.

A dated reform cannot say which legal form a measure takes. This is a methodology call under cos d1344 (delegated to the Budget CI workstreams):

  • choose the default for uprated amounts. Resuming from the changed amount matches freezes, s150's uprating of "the sums" and the model's own files;
  • provide a way to express the other form, for example a temporary-modification marker, or stated values after the change.

The contract's bounded_change_on_uprated_benefit and uc_award_follows_the_standard_allowance cases (policyengine.py) encode today's reading, so they would change with it.

Found by the independent review of #2423, which decided the call for thresholds indexed from their own previous year only.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions