Hacktoberfest 2026:メンテナが10月に向けて印を付けた、オープンで初心者向けの issue。 Hacktoberfest の issue を見る

Remove transitional cache access after country migrations

オープン
#602 コメント 0 件 リアクション 0 件 担当者 0 名 GitHub で見る

メンテナーはふだん 2 日以内に返信

まだ誰も着手していません。

  • #603 @anth-volk による — マージされずにクローズ

評価

難易度
5/5
見積もり時間
1週間以上
初心者へのやさしさ
35/100
issue の種類
リファクタリング
明瞭さ
おおむね明確
活発さ
活発
技術スタック
python
領域
backend

調査の方向性

Start with draft PR #603 and the preparatory Core work in #599, tracked by #598, to identify the cache adapters, recovery paths, and compatibility mechanisms in scope; the issue names no files or tests. Read the country migrations in PolicyEngine/policyengine-us#9980 and PolicyEngine/policyengine-uk#2176, then validate against their released packages after all stated prerequisites are met. Done means the compatibility mechanisms are removed, replacements and the break are documented, and the required unit and migrated-path tests pass.

索引モデルが issue の本文から書いたものです。

説明

Purpose

Remove transitional Core cache access after the public ownership APIs and their
guarantees have shipped and both country packages have migrated.

Implementation: draft #603. Keep it dependent on the releases below; creating
the draft does not satisfy the merge prerequisites.

This is the last stage of a three-stage, four-PR sequence:

  1. Preparatory Core: #599, tracked by #598.
  2. Country migrations: PolicyEngine/policyengine-us#9980 and
    PolicyEngine/policyengine-uk#2176.
  3. This Core cleanup, in a separate dependent draft PR.

Prerequisites before merge

  • Publish the preparatory Core release.
  • Update both country minimum Core dependencies and lockfiles to that release.
  • Validate, merge, and publish both country migrations.
  • Validate this cleanup against those released country packages.

Source-checkout tests can support development before release, but do not satisfy
released-package validation. Do not invent future package version numbers.

Scope

  • Remove dictionary/set assignment adapters and recovery from legacy cache fields.
  • Expose read-only cache observations, with mutations through typed operations.
  • Reject removed writes instead of silently creating unused shadow attributes.
  • Remove Core's remaining dependence on those compatibility mechanisms.
  • Document supported replacements and the intentional compatibility break.
  • Add at least 40 meaningful unit cases per production commit and test migrated
    country paths without the removed mechanisms.

Preserve immutable entry sharing, authoritative supplied inputs, independent
branch snapshots, explicit policy sharing, revision-based invalidation, public
constructors, and public eager/lazy parameter configuration.

Phase 7 model-definition separation and persistent cache redesign are excluded.

主要言語
Python
スター
22
フォーク
30
平均マージ
2日 21時間
マージ済み PR(30日)
24

環境構築

はじめの一歩

  1. issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
  2. 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
  3. リポジトリをフォークし、ブランチを切って変更します。
  4. issue 番号を参照したプルリクエストを送ります。

PolicyEngine/policyengine-core のほかの issue

PolicyEngine/policyengine-core の issue をすべて見る

似ている issue

Python の issue をもっと見る

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。