Skip to content

[ADC-689] Prove source-wheel public API parity - #636

Draft
wolf75222 wants to merge 3 commits into
masterfrom
codex/adc689-public-api-parity-20260730
Draft

[ADC-689] Prove source-wheel public API parity#636
wolf75222 wants to merge 3 commits into
masterfrom
codex/adc689-public-api-parity-20260730

Conversation

@wolf75222

@wolf75222 wolf75222 commented Jul 30, 2026

Copy link
Copy Markdown
Owner

What

  • add scripts/prove_public_api_parity.py, an executable fail-closed comparison between the current source checkout and one exact release wheel;
  • compare every *.py, *.pyi, and py.typed byte, then import both package trees in isolated interpreters and compare canonical public API/typing snapshots;
  • prove the exact root __all__, explicit Case, repeated-Model qualified handles, pure authoring/validate/inspect, and absence of _pops loading and replaced root names;
  • run the proof against the downloaded wheel before publication and retain its JSON evidence.

2026-08-02 integration refresh

This stacked base now contains an explicit merge of current master at de3f6b56. The two original thematic ADC-689 commits remain intact; there was no squash, rebase, amend, or semantic fallback.

Why

The existing architecture test only exercised whichever PoPS package pytest imported. It did not explicitly compare the source checkout with the wheel payload or prove that inline Python typing files were packaged byte-identically.

Validation

  • original branch gate: 16 ADC-689/public-import tests passed;
  • Ruff, Pyright, docs, and git diff --check passed on the original source-wheel slice;
  • the refreshed stacked head in PR [ADC-689] Prove parity of the installed public API #655 now passes the combined targeted matrix (38 tests) after integrating this base.

Deliberate limits

The unit proof uses a synthetic wheel copied from the exact source tree. The real macOS arm64/cp312 release workflow runs the same proof against the produced wheel. Installed-distribution identity and binding to release preflight live in stacked PR #655. No native build or release wheel was produced locally.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant