Hacktoberfest 2026: le issue che i maintainer hanno segnato per ottobre, aperte e adatte ai principianti. Sfoglia le issue Hacktoberfest

Remove transitional cache access after country migrations

Aperta
#602 0 commenti 0 reazioni 0 assegnatari Vedi su GitHub

I maintainer di solito rispondono entro 2 giorni

Nessuno ha ancora preso questa issue.

  • #603 di @anth-volk — chiusa senza merge

Valutazione

Difficoltà
5/5
Tempo stimato
Più di una settimana
Idoneità per principianti
35/100
Tipo di issue
Refactoring
Chiarezza
Abbastanza chiara
Stato di attività
Attiva
Stack tecnologico
python
Ambito
backend

Direzione di ricerca

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.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Descrizione

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.

Lingua principale
Python
Stelle
22
Fork
30
Merge medio
2g 21h
PR unite (30g)
24

Preparare l'ambiente

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di PolicyEngine/policyengine-core

Tutte le issue di PolicyEngine/policyengine-core

Issue simili

Altre issue su Python

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.