bib,pfs: restore sup:*_PFS_NPRM / file:rvu / year tags wiped from rule items 2KVJ2HKX and 5ITGVDJV #625

Closed
opened 2026-08-17 14:57:49 +00:00 by kert · 1 comment
Owner

Data-repair companion to #624 (do #624 first or the next comment-farm run re-wipes the repair).

The 2026-08-14 upserts destroyed the curated registration tags on both PFS NPRM rule items. Restore to the sets dev/scripts/fetch_nprm_addenda.py CONFIGS registers:

  • 2KVJ2HKX (CY2026 NPRM, CMS-1832-P): += sup:2026_PFS_NPRM, file:rvu, year:2026
  • 5ITGVDJV (CY2027 NPRM, CMS-1848-P): += sup:2027_PFS_NPRM, file:rvu, year:2027

Repair mechanism: re-run the existing idempotent registration (fetch_nprm_addenda.py --year {2026,2027} --register — attach guard added in P36 prevents duplicate attachments; add_tag is INSERT OR IGNORE), rather than ad-hoc SQL.

Acceptance: bib.store.list_items(tag='sup:2027_PFS_NPRM') and ...2026... each return exactly one item; pfs.nprm._addendum_b_path(year) resolves for both years.

Data-repair companion to #624 (do #624 first or the next comment-farm run re-wipes the repair). The 2026-08-14 upserts destroyed the curated registration tags on both PFS NPRM rule items. Restore to the sets `dev/scripts/fetch_nprm_addenda.py` `CONFIGS` registers: - `2KVJ2HKX` (CY2026 NPRM, CMS-1832-P): += `sup:2026_PFS_NPRM`, `file:rvu`, `year:2026` - `5ITGVDJV` (CY2027 NPRM, CMS-1848-P): += `sup:2027_PFS_NPRM`, `file:rvu`, `year:2027` Repair mechanism: re-run the existing idempotent registration (`fetch_nprm_addenda.py --year {2026,2027} --register` — attach guard added in P36 prevents duplicate attachments; `add_tag` is INSERT OR IGNORE), rather than ad-hoc SQL. Acceptance: `bib.store.list_items(tag='sup:2027_PFS_NPRM')` and `...2026...` each return exactly one item; `pfs.nprm._addendum_b_path(year)` resolves for both years.
kert added this to the P38: Zotero Rule Sync — upsert tag merge, tag repair, nightly rules scope milestone 2026-08-17 14:57:49 +00:00
kert added the datapfsbib labels 2026-08-17 14:57:49 +00:00
Author
Owner

Repaired and verified (2026-08-17):

  • Re-ran fetch_nprm_addenda.py --year 2026 --register and --year 2027 --register — both hit the attach guard (SKIP attach, keys R9KFV2ZG / BIEQHVTM), tags re-applied idempotently.
  • 2KVJ2HKX tags now: module:pfs, source:federal-register, year:2025, year:2026, file:rvu, rule:0938-av50, cms-rule:CMS-1832-P, reg-docket:CMS-2025-0304, sup:2026_PFS_NPRM
  • 5ITGVDJV tags now: module:pfs, source:federal-register, year:2026, file:rvu, rule:0938-av82, sup:2027_PFS_NPRM, year:2027, cms-rule:CMS-1848-P, reg-docket:CMS-2026-2377
  • store.list_items(tag='sup:<year>_PFS_NPRM') returns exactly the right item for both years; pfs.nprm._discover_addendum_b resolves a real xlsx for both (2027 needed the #628 storage_path repair first).
  • Wiper simulation on a copy of bib.sqlite: re-ran the comment-farm-style store.upsert (same URL, canonical FR tag set) against the fixed code from #624 — sup:2027_PFS_NPRM and file:rvu survive.

Note: repair ran with the #624 fix present in the live-mounted working tree, so the mail-poller loop cannot re-wipe it.

Repaired and verified (2026-08-17): - Re-ran `fetch_nprm_addenda.py --year 2026 --register` and `--year 2027 --register` — both hit the attach guard (`SKIP attach`, keys R9KFV2ZG / BIEQHVTM), tags re-applied idempotently. - `2KVJ2HKX` tags now: `module:pfs, source:federal-register, year:2025, year:2026, file:rvu, rule:0938-av50, cms-rule:CMS-1832-P, reg-docket:CMS-2025-0304, sup:2026_PFS_NPRM` - `5ITGVDJV` tags now: `module:pfs, source:federal-register, year:2026, file:rvu, rule:0938-av82, sup:2027_PFS_NPRM, year:2027, cms-rule:CMS-1848-P, reg-docket:CMS-2026-2377` - `store.list_items(tag='sup:<year>_PFS_NPRM')` returns exactly the right item for both years; `pfs.nprm._discover_addendum_b` resolves a real xlsx for both (2027 needed the #628 storage_path repair first). - Wiper simulation on a copy of bib.sqlite: re-ran the comment-farm-style `store.upsert` (same URL, canonical FR tag set) against the fixed code from #624 — `sup:2027_PFS_NPRM` and `file:rvu` **survive**. Note: repair ran with the #624 fix present in the live-mounted working tree, so the mail-poller loop cannot re-wipe it.
kert closed this issue 2026-08-17 15:09:34 +00:00
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: homelab/stack#625