Repository navigation
chore(reconciliation): retire vpp's reconciliation/ — moved to views_frames_reconcile (#62) - #63
Merged
Merged
Conversation
…frames_reconcile (#62) Forecast reconciliation shipped as the views_frames_reconcile sibling in views-frames v1.7.0 (Epic 11 / views-frames#131, ADR-023), and the sole consumer — views-models reconciler_factory.py (ADR-014 composition root) — was repointed to it in views-models PR #202 (C1). vpp was only ever a way-station (epic #31); FAO delivery does not use reconciliation, so its copy is retired here (release -> repoint -> delete). Deletes the package (6 modules), its 6 tests, the 2 frozen parity fixtures + 2 generator scripts, and the ReconciliationModule CIC; replaces the migration notes with a pointer to the new home. No unguarded importer of views_postprocessing.reconciliation remains in any repo (verified on origin/development; views-models/views-frames keep guarded pytest.importorskip tests that skip when the package is absent). Closes #62, #31. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This was referenced Jun 26, 2026
Closed
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.
What & why
Forecast reconciliation has completed its migration out of views-postprocessing. It now lives as the
views_frames_reconcilesibling in the views-frames mono-wheel (Epic 11 / views-platform/views-frames#131, ADR-023), shipped in v1.7.0 (on PyPI). vpp was only ever a way-station (epic #31); FAO delivery — vpp's actual job — does not use reconciliation.This is the delete leg of the disciplined
release → repoint → deletecutover:views_frames_reconcile.reconciler_factory.py(ADR-014 composition root), now importsfrom views_frames_reconcile import ReconciliationModule(C1 — Repoint reconciler_factory to views_frames_reconcile (Epic 11 cutover) views-models#191, PR S6 (#187) — detect coordinate-registry drift; existence is not reachability #202, merged).Deletion-safety (verified on
origin/development)A full cross-repo sweep finds no unguarded importer of
views_postprocessing.reconciliationin any repo. The only remaining references are guardedpytest.importorskip("views_postprocessing.reconciliation")tests (views-models ×2, views-frames ×1) that skip when the package is absent — they do not fail.What this removes
views_postprocessing/reconciliation/(6 modules).tests/test_reconciliation_*.py, the 2 frozen.npzparity fixtures, and the 2 generator scripts.docs/CICs/ReconciliationModule.mdcontract.docs/reconciliation_migration.md→ replaced with a short pointer to the new home.Kept (deliberately — unrelated to reconciliation):
views_postprocessing/unfao/frames.pyandtests/test_views_frames_conformance.py(the views-frames conformance adapter for FAO delivery).Verification
ruff check .— clean.PYTHONPATH=. pytest -q— 74 passed, 43 xfailed, 0 failures.Net: 18 files, −1280 lines. vpp gets lighter and screams its real job (partner delivery).
Closes #62. Closes #31.
🤖 Generated with Claude Code