Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Universal childcare entitlement #1010

Open
wants to merge 15 commits into
base: master
Choose a base branch
from
Open

Conversation

vahid-ahmadi
Copy link
Collaborator

@vahid-ahmadi vahid-ahmadi commented Jan 17, 2025

Overview

This PR implements the 15-hour universal free childcare scheme calculation in PolicyEngine UK. The scheme provides government contributions towards childcare costs for eligible families. (Documentation link)

Key Features

  • 15-hour of free childcare program
  • Output type: yearly hours (0 or 570) for each child

Fixes #1009
Based on Fixes #1006

@vahid-ahmadi vahid-ahmadi changed the title 15-hour universal free childcare Universal childcare entitlement Jan 23, 2025
@nikhilwoodruff
Copy link
Collaborator

Looks good to me on the entitlement part- though we still need to estimate the value of this subsidy, but we can separate that into a different PR. Bit of a mystery why the tests are failing here on tests that aren't affected by this.

@MaxGhenis MaxGhenis marked this pull request as draft February 3, 2025 20:35
@vahid-ahmadi vahid-ahmadi removed the request for review from PavelMakarchuk February 11, 2025 13:12
Copy link
Collaborator

@nikhilwoodruff nikhilwoodruff left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Just the above changes, all else looks good to me!

@vahid-ahmadi vahid-ahmadi marked this pull request as ready for review February 14, 2025 13:05
unit = "hour"

def formula(person, period, parameters):
# Get parameters with the correct path
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
# Get parameters with the correct path


# Get the funding rate from parameters
p = parameters(period).gov.dwp.universal_childcare_entitlement
rate = p.funding_rate
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Use p. directly to indicate it's a parameter

Suggested change
rate = p.funding_rate
return hours * p.funding_rate

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

since these are person-level variables that don't depend on attributes of other household members, please simplify the unit tests to operate at the person level. some of these could still provide value as integration tests though

- title: House of Commons Library
href: https://commonslibrary.parliament.uk/research-briefings/cbp-8052/
values:
2015-01-01: 5.88
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

What about other ages?

The national average hourly funding rates for local authorities in 2024/25 are:

Three and four-year-olds: £5.88 per hour. The rate has fallen by 3% in real terms (when adjusted for inflation) since 2017/18 (in 2024/25 prices).
Two-year-olds: £8.28 per hour. The rate has increased by 21% in real terms since 2017/18 and by 35% since 2023/24.
Children under two: £11.22 per hour.

from policyengine_uk.model_api import *


class universal_childcare_entitlement(Variable):
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

should we limit to england?

amount_unit: hour
label: universal childcare entitlement hours
reference:
- title: Childcare (Early Years Provision Free of Charge) (Extended Entitlement) Regulations 2016 - Regulation 35(3)
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

can you point more specifically? 570 is is in 35(1), i see the third birthday in (3) but not (quickly scanning) the compulsory school age part

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Add universal childcare entitlement Add extended childcare entitlement
3 participants