Skip to content

Wealth variable renaming and codebook changes - #546

Open
LiangShi369 wants to merge 3 commits into
simpaths:developfrom
LiangShi369:LiangS-wealth-variable-renaming
Open

LiangShi369 wants to merge 3 commits into
simpaths:developfrom
LiangShi369:LiangS-wealth-variable-renaming

Conversation

@LiangShi369

Copy link
Copy Markdown
Contributor

This PR updates the codebook, and changes seven wealth-module variables so they become compatible with our naming rules. From my understanding, the variable inlcudions rule for our code books is such that:

Include substantive person- or benefit-unit-level economic states, including beginning-of-period stocks and economically meaningful predetermined attributes, together with realised economic outcomes. Make their timing explicit. Document lagged versions alongside the base variable unless a separate entry is needed. Exclude calculation intermediates, technical states and diagnostics, population summaries and event-ledger fields.

Renamed following variales and added them into the code book:

Previous Java name Current Java name Declaring class
contRateOPEe wealthPensOpEeContRate Person, PrivatePension
contRateOPEr wealthPensOpErContRate Person, PrivatePension
contRatePP wealthPensPpContRate Person, PrivatePension
memberOP wealthPensOpMemberFlag PrivatePension
memberPP wealthPensPpMemberFlag PrivatePension
isPensioner wealthPensAccessFlag PrivatePension
lumpSumPayment wealthPensLumpSumYear PrivatePension

I also added 11 new codebook entries:

Variable Java class
wealthNonPensValue Person.java
wealthNonPensValueL1 Person.java
wealthPensAccessFlag PrivatePension.java
wealthPensLumpSumYear PrivatePension.java
wealthPensOpEeContRate Person.java
wealthPensOpErContRate Person.java
wealthPensOpMemberFlag PrivatePension.java
wealthPensPpContRate Person.java
wealthPensPpMemberFlag PrivatePension.java
wealthPensValue Person.java
wealthUnsecuredDebtHighValue BenefitUnit.java

Revised 12 codebook entries following our recent wealth-module updates in the develop branch:

| Variable | Java class
|---|---|---|
| wealthMortgageDebtValue | BenefitUnit.java |
| wealthPensValue | BenefitUnit.java |
| wealthPrptyFlag | BenefitUnit.java |
| wealthPrptyValue | BenefitUnit.java |
| wealthTotValue | BenefitUnit.java |
| xDiscConsumptionAnnual | BenefitUnit.java |
| xEquivYear | Person.java |
| yInvestAnnual | BenefitUnit.java |
| yPensionAnnual | BenefitUnit.java |
| yPensPersGrossMonth | Person.java |
| yPensPersGrossMonthL1 | Person.java |
| yPensPersGrossMonthL2 | Person.java |

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

🔵 Needs a closer look

The supplied Java changes have no identified blockers, but the stated codebook revisions were not supplied and remain unverified.

No open issues 🎉

What changed in this PR

This PR standardizes seven wealth-module variable names and updates their callers, supporting the stated codebook alignment while preserving legacy population-data compatibility.

Changes:

  • Renames pension contribution rates, membership flags, access status, and lump-sum fields and accessors.
  • Preserves legacy database column names and adds a read/write compatibility test.
  • Updates pension and inheritance tests to use the renamed methods.
File Description
src/​test/​java/​simpaths/​model/​person/​PrivatePensionTest.java Updates pension tests to use renamed accessors.
src/​test/​java/​simpaths/​model/​PensionContributionCompatibilityTest.java Adds legacy-column read/write compatibility coverage.
src/​test/​java/​simpaths/​model/​InheritanceModuleTest.java Updates pension-access test setup.
src/​main/​java/​simpaths/​model/​person/​PrivatePension.java Renames pension fields and accessors throughout.
src/​main/​java/​simpaths/​model/​Person.java Propagates renames while retaining legacy column mappings.
src/​main/​java/​simpaths/​model/​InheritanceModule.java Uses the renamed pension-access flag.
src/​main/​java/​simpaths/​model/​BenefitUnit.java Uses renamed contribution-rate accessors.
src/​main/​java/​simpaths/​data/​statistics/​WealthValidationStats.java Updates contribution-rate reads.
src/​main/​java/​simpaths/​data/​Parameters.java Adds a comment explaining stable legacy input names.

Review effort: Balanced

This branch has not been deployed

No deployments
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.

2 participants