Skip to content

Implement Singapore tax-benefit system#5

Open
PavelMakarchuk wants to merge 4 commits intomainfrom
implement-sg-tax-benefit-system
Open

Implement Singapore tax-benefit system#5
PavelMakarchuk wants to merge 4 commits intomainfrom
implement-sg-tax-benefit-system

Conversation

@PavelMakarchuk
Copy link

Summary

  • Implement Singapore's personal income tax with 13 progressive brackets (0-24%), 10+ relief types (earned income, CPF, spouse, child, parent, NSman, SRS, course fees, life insurance, donations), PIT rebates, and non-resident tax handling
  • Add CPF contribution calculations with 5 age bands (employee + employer rates) and 2024-2025 rate updates per official CPF schedule
  • Add social benefit calculations: Workfare Income Supplement (WIS), Silver Support Scheme, GST Voucher cash, CDC vouchers
  • Add property tax calculations for owner-occupied (8 progressive brackets) and non-owner-occupied (4 brackets) properties
  • Add Skills Development Levy (SDL) calculation
  • Total: 59 variables, ~100 parameter files, 29 YAML tests — all sourced from .gov.sg primary sources

Key components

  • Parameters: gov/iras/ (income tax, property tax, GST, stamp duty), gov/cpf/ (contributions, WIS, Silver Support), gov/mof/ (GSTV, CDC), gov/mom/ (SDL)
  • Variables: Input variables (demographics, income, housing, family), formula variables (income tax chain, CPF, benefits)
  • Tests: YAML tests covering income tax (5 cases + 3 integration), CPF contributions (6 age bands), WIS (4 cases), Silver Support (2 cases), GSTV (4 cases), property tax (3 cases)

Primary sources

Test plan

  • All 29 YAML tests pass
  • System loads 59 variables successfully
  • End-to-end simulation verified with manual calculations
  • Code formatted with black (79 char line limit)
  • CI checks pass

🤖 Generated with Claude Code

…al benefits

Add comprehensive implementation covering:
- Personal income tax with 13 progressive brackets (0-24%) and 10+ relief types
- CPF contributions with 5 age bands and 2024-2025 rate updates
- Workfare Income Supplement (WIS) eligibility and benefit calculations
- Silver Support Scheme eligibility and payment calculations
- GST Voucher cash, CDC vouchers, and property tax calculations
- Skills Development Levy (SDL) calculation
- 59 variables and ~100 parameter files sourced from .gov.sg primary sources
- 29 YAML tests covering all calculation chains

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@PavelMakarchuk PavelMakarchuk marked this pull request as ready for review February 25, 2026 23:00
PavelMakarchuk and others added 3 commits February 25, 2026 18:26
…ring

- Add buyer's stamp duty (BSD) with 6 progressive brackets
- Add additional buyer's stamp duty (ABSD) with 7 buyer profile categories
- Add GST calculation on taxable consumption
- Add GST Voucher U-Save rebates with HDB flat-type tiering
- Add ComCare Long-Term Assistance with household-size-based amounts
- Enhance Silver Support with HDB flat-type and income-based tiering
- Add immigration status and buyer profile enums
- Add 21 new tests covering all new calculation chains and edge cases

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- Fix CPF above-55-to-60 rates: employee 15.5%/17%, employer 15.5%/15.5% (2024/2025)
- Fix CPF above-60-to-65 rates: employee 11.5%, employer 12% for 2025
- Add working mother's child relief (WMCR) with fixed amounts ($8k/$10k/$12k)
- Add grandparent caregiver relief ($3,000)
- Add handicapped sibling relief ($5,500 per sibling)
- Wire all 3 new reliefs into total_personal_reliefs
- Add income per capita ceiling check to Silver Support eligibility
- Add disability age exemption to WIS eligibility
- Add 7 new tests for reliefs, WIS disability, and Silver Support income ceiling

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- Add GST Voucher MediSave top-up with age bands and AV tiering (9 params + 6 tests)
- Add GST Voucher S&CC rebate with HDB flat-type-based months (6 params + 5 tests)
- Add parenthood tax rebate capped at tax after PIT rebate
- Add CPF cash top-up relief for family members
- Wire PTR into income tax calculation chain
- Add GAPS.md tracking all known missing programs and needed adjustments

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
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.

1 participant