Repository navigation
Conversation
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## master #3928 +/- ##
===========================================
+ Coverage 50.96% 87.79% +36.83%
===========================================
Files 242 258 +16
Lines 14527 15950 +1423
Branches 2334 2621 +287
===========================================
+ Hits 7403 14003 +6600
+ Misses 6501 1280 -5221
- Partials 623 667 +44 ☔ View full report in Codecov by Harness. 🚀 New features to boost your workflow:
|
This was referenced Oct 14, 2026
Open
Add 2036 to the US time_period options and to the v2 catalog's METADATA_TIME_PERIODS, and update the canonical SPM contract doc's horizon. This must ship with the PolicyEngine bundle whose SPM forecast covers 2036; until then a 2036 request fails with SPM_YEAR_UNAVAILABLE. Co-Authored-By: Claude Opus 5.5 (1M context) <[email protected]> Claude-Session: https://claude.ai/code/session_01LqCGPgxDukji8Bhs57c5rH
test_country_spm.py runs against the installed bundle. Once the bundle carries spm-calculator 1.1.0, 2036 is inside the forecast, so the unavailable-year and outside-artifact cases move to 2037, which is outside both the current and the 2036 forecast. Co-Authored-By: Claude Opus 5.5 (1M context) <[email protected]>
DTrim99
force-pushed
the
us-2036-economy-year
branch
from
October 26, 2026 19:14
b242eb4 to
a9907ba
Compare
This branch was previously deployed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Fixes #3927
Summary
policyengine_api/country.py: addsdict(name=2036, label="2036")to the UStime_periodoptions. The app's year picker, date ranges and budget-window starts all read this list. The UK is unchanged (2024–2030).policyengine_api/data/v2/catalog/extraction.py:METADATA_TIME_PERIODS["us"]becomesrange(2036, 2021, -1).docs/canonical-spm.md: the artifact horizon becomes 2022–2036.Draft until the bundle with a 2036 SPM forecast is ready.
SPM_YEAR_UNAVAILABLE.Budget windows already allow end years through 2099 (
BUDGET_WINDOW_MAX_END_YEAR). The worker reads its year boundary from the installed SPM provider. Neither needs a change here.The SPM tests that use 2036 as an unavailable year (
test_spm_settings.py,test_spm_year_worker_polling.py,test_budget_window_cache.py) run on mocked forecasts withyears=(2022, 2035). They don't depend on the installed artifact, so they're unchanged.test_country_spm.pydoes run against the installed bundle, so its year outside the forecast moves from 2036 to 2037. 2037 is outside both the current and the 2036 forecast, so those tests pass before and after the bundle bump.Rebased onto
masteron 2026-10-26. The 2036 entry now usesmaster's dict-literal style incountry.py.Testing
ruff formatandruff checkare clean on the changed files.GET /us/metadatalists 2036."2036"in its SPM receipt.budget_window:2027:10completes.SPM_YEAR_UNAVAILABLE.🤖 Generated with Claude Code
https://claude.ai/code/session_01LqCGPgxDukji8Bhs57c5rH