Serve the v2 parameter tree one level at a time from a tree written with each catalog version
メンテナーはふだん 2 日以内に返信
評価
- 難易度
- 5/5
- 見積もり時間
- 1週間以上
- 初心者へのやさしさ
- 25/100
調査の方向性
Start by reading the v2 /parameters/children route and the catalog version publishing path; the issue does not name their files or tests. Trace how parameter nodes and bracket schedules are represented, then identify where catalog rows are written and read. Done means an indexed read serves one ordered level, bracket schedules appear as nodes with labelled brackets, and reform filtering and child counts match the requested rules.
索引モデルが issue の本文から書いたものです。
説明
The app's newer workspace (v3) is moving from the Public API's /{country}/metadata to the v2 metadata routes, and it browses its parameter tree one level at a time through /v2/parameters/children. That route cannot serve it today:
- It is slow. It finds a level's children by scanning every parameter and node name under the path on each request. Measured in production on 2026-10-21, a level takes 2.7–6.1 s.
- Bracket schedules are wrong. Brackets such as
gov.hmrc.income_tax.rates.uk[0]are listed beside their parent's real groups, under their raw names. The schedule itself (uk) is missing, or is listed with no children. - It cannot show only what a reform can change. v3's tree keeps only parameters whose economy or household flag is set, and leaves out
taxsimandgov.abolitions. The route has no way to apply those rules.
What should change
- Publishing a catalog version writes each node's direct children, in order, to a table. Each row holds the child's label, its child counts, and whether a reform can change it.
- A bracket schedule is one node whose children are its brackets, labelled "Bracket 1", "Bracket 2" and so on.
- The route reads one level with one indexed read. On request, it lists only what a reform can change, sorted by label, with child counts to match.
Paths, parameter IDs and values stay the same. v3 does not use the route until it moves to the v2 routes.
- 主要言語
- Python
- スター
- 18
- フォーク
- 33
- 平均マージ
- 2日 13時間
- マージ済み PR(30日)
- 56
環境構築
- Dockerfile・Docker Compose ファイルなし
- プルリクエストのテンプレートあり
- コントリビューションガイドを読む
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
PolicyEngine/policyengine-api のほかの issue
-
難易度 2/5 1〜3時間 初心者へのやさしさ 76/100
PolicyEngine/policyengine-api#4037 ·
メンテナーはふだん 2 日以内に返信
-
難易度 1/5 1〜3時間 初心者へのやさしさ 88/100
PolicyEngine/policyengine-api#3911 ·
メンテナーはふだん 2 日以内に返信
-
難易度 1/5 1時間未満 初心者へのやさしさ 82/100
PolicyEngine/policyengine-api#3910 ·
メンテナーはふだん 2 日以内に返信
-
Serve economy reports on the v2 routes and save v2 report and simulation IDs対応中かも このイシューにリンクされたプルリクエストがオープン中、またはマージ済みです。 オープン
難易度 5/5 1週間以上 初心者へのやさしさ 35/100
PolicyEngine/policyengine-api#4107 ·
メンテナーはふだん 2 日以内に返信
-
Drop the unused x and y columns from API v2's UK area impact tables対応中かも @anth-volk が 1 日前に担当しました。 オープン
難易度 2/5 1〜3時間 初心者へのやさしさ 35/100
PolicyEngine/policyengine-api#4102 ·
メンテナーはふだん 2 日以内に返信
PolicyEngine/policyengine-api の issue をすべて見る
似ている issue
-
factory
難易度 2/5 1〜3時間 初心者へのやさしさ 78/100
Arize-ai/phoenix#17420 · コメント 1 件 · リアクション 1 件 ·
メンテナーはふだん 1 日以内に返信
-
bug
難易度 2/5 1〜3時間 初心者へのやさしさ 84/100
FireDynamics/LEDSmokeAnalysis#176 ·
メンテナーはふだん 1 日以内に返信
-
PC
難易度 2/5 1〜3時間 初心者へのやさしさ 74/100
メンテナーはふだん 1 日以内に返信
-
dependencies
難易度 2/5 1〜3時間 初心者へのやさしさ 68/100
dlt-contrib/dlt-filesystem#51 ·
メンテナーはふだん 1 日以内に返信
-
難易度 2/5 1〜3時間 初心者へのやさしさ 68/100
メンテナーはふだん 1 日以内に返信