Skip to content

Update structures for UC implementation - #519

Closed
andrewbaxter439 wants to merge 223 commits into
developfrom
uc-merge
Closed

Update structures for UC implementation#519
andrewbaxter439 wants to merge 223 commits into
developfrom
uc-merge

Conversation

@andrewbaxter439

Copy link
Copy Markdown
Collaborator

What

  • This should only bring in the structural changes for UC
  • This includes mechanisms for labour supply module updates
  • But shouldn't change the standard processing

Why

  • These things should be compatible with normal runs but can allow further UC work to stay in sync with develop branch amendments

andrewbaxter439 and others added 30 commits March 12, 2025 09:49
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
@andrewbaxter439

Copy link
Copy Markdown
Collaborator Author

@copilot can you analyse the files changed in this PR and summarise the main changes. Aim to categorise into structural changes, implementation changes, secondary changes etc.

Copilot AI commented Sep 1, 2026

Copy link
Copy Markdown

@copilot can you analyse the files changed in this PR and summarise the main changes. Aim to categorise into structural changes, implementation changes, secondary changes etc.

Main categories from the PR:

1) Structural changes (framework/plumbing for UC scenarios)

  • Added multiple UC scenario config files under /config (e.g. uc_full, uc_no_direct, uc_no_lsu, uc_static_*, uc_test, plus lba_test).
  • Extended model parameter surface in Parameters/SimPathsModel/SimPathsMultiRun for UC toggles and scenario control (e.g. uc_direct_effects, flagSuppressUCTakeup, scenario labels, persist-country-year control).
  • Tax donor matching infrastructure expanded to include UC take-up as a match feature (IKeyFunction, KeyFunction*, new KeyFunction5, MatchFeature.UCTakeUp, donor parser/table wiring).

2) Implementation changes (runtime behaviour/code paths)

  • Labour supply update path switched to UC-aware method in LabourMarket (updateLabourSupplyAndIncomeWithUniversalCredit).
  • TaxEvaluation and DonorTaxImputation now carry UC take-up into matching and expose UC / legacy-benefit amounts separately.
  • DonorTaxUnitPolicy and donor entities now store/read UC and legacy-benefit amounts/flags.
  • Person and BenefitUnit include substantial additions for UC/LB status handling and related regressors/indicators used by labour supply logic.
  • SimPathsCollector / SimPathsObserver extended with new outputs/plots (including benefits tracking and expanded health-stat export structure).

3) Secondary/supporting changes

  • Test/build support: added mockito-inline in pom.xml.
  • Test updates: ParametersTest, PersonTest, integration test tagging, and new expected integration outputs (EmploymentStatistics2, HealthStatistics2/3/4) plus updated test reg_eq5d.xlsx input.
  • Input/data updates: added EUROMODpolicySchedule_UC.xlsx, updated reg_eq5d.xlsx, and replaced many training donor files (uk_2011_stduk_2026_std).
  • Repo hygiene: .gitignore expanded heavily for input variants; .idea/.gitignore added.

If useful, I can also provide a second pass that separates “likely intended UC-structure changes” vs “potentially incidental/noise changes” (e.g. IDE/ignore/data churn).

@andrewbaxter439

Copy link
Copy Markdown
Collaborator Author

Hi @amorison - it's getting there, but frustratingly failing at the start of the first test run with a trace-free error warning that this.labWageFullTimeHrly is null. Can't track where in the revised code it's inducing this failure from the develop branch to the uc-merge change. Feel free to have a look and see if we can make headway with it tomorrow. I'll be working on some other things during the day. I can't get it to show all edited files here yet, but I'm hoping we can trim this one down to a few changes. Can already see form copilot quick review that there's a good few things we can ditch which can be added back in later on if they're needed. Apologies that it's not the finished product yet!

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.

4 participants