ci: enforce declared Python package compatibility - #259
seonghobae wants to merge 17 commits into
Conversation
Move declared Python package compatibility into canonical Foundation ownership. Keep CPython 3.14 as the primary quality lane, add exact-head CPython 3.12/3.13 package compatibility on ubuntu-24.04, discover package contracts from pyproject metadata without package-name switchboards, retain package-owned 100% statement/branch coverage, and bind the compatibility test toolchain with reviewed hashes. Implements the source repair for #258 without closing it before protected integration.
|
Warning Review limit reachedNext included review available in 57 minutes. View limit detailsLimit details: You’ve used the included review currently available. You've used all free OSS reviews for now. Wait for the free limit to reset to keep reviewing this public repository. Review configuration: ⚙️ Run configurationConfiguration used: Organization UI Review profile: CHILL Plan: Advanced Run ID: 📒 Files selected for processing (5)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
Distinguish a valid unsupported requires-python constraint from parser or metadata failure. Missing, blank, malformed, or invalid specifier metadata now fails the compatibility job instead of being converted into a package skip. Add executable Foundation hygiene coverage, update traceability, and reseal the exact Foundation workflow bytes.
|
Fresh central owner correction for the current CodeQL RCA: |
|
Fresh adopter canary from #98 after ordinary protected-parent reconciliation: #98 exact |
|
Fresh central CodeQL owner-path correction for current dependency metadata: the #259 body still references This changes no Orgmetra source and does not transfer central predecessor GREEN. #259 remains exact |
|
Fresh central-owner authority update: protected |
Ready / Proposed admission receipt
Ready removes the circular review-admission block only. Fresh exact-head terminal Security/CodeQL evidence and qualifying independent approval remain merge gates. No manual rerun, no-op churn, self-approval, review dismissal, status synthesis, gate weakening, or administrator bypass was used. |
|
Exact-head Ready-admission repair Audited head Current substantive blocker evidence:
Queued/pending/in-progress Checks are not blockers and were not treated as failures. This PR is being returned to Draft/Proposed so review admission does not imply readiness while the recorded blocker remains. Preserve the branch and complete the causal source/review/topology repair on a new non-force commit; then re-fetch this exact head's Checks and reviews before restoring Ready. No merge, close, bypass, review dismissal, synthetic status/approval, manual rerun, force push, or destructive rebase is authorized by this receipt. |
|
Exact-log RCA for current head
Keep Draft until the canonical .github dispatch path and dependency-graph evidence boundary are repaired and a new exact-head run proves terminal results. No manual rerun was issued. |
Finding
Protected
develop@eb9757f8649aaad026a9865508d9aad50c1a7a4fconsolidated repository-owned quality into Foundation CI, while merged Python packages already declare support below the primary CPython 3.14 runtime. Structured Interview Plan #40 is the concrete adopter: it declaresrequires-python = ">=3.12"and historically exercised 3.12/3.13/3.14. Deleting its retired package-local workflow without replacement evidence would weaken the declared runtime contract.Earlier heads repaired four distinct defects: metadata/parser failure being reclassified as an unsupported-package skip; patch-sensitive PEP 440 evaluation against fabricated
major.minor.0; owned packages escaping acceptance whensrc/ortests/disappeared; and a second compatibility matrix job that violated the protected one-job Foundation admission contract. Exact headf529086c...produced the real queue-shape RED in Foundation run34050838082.Exact head
79e8757515673144b68687517360cf493e93ccb8then produced Foundation GREEN in run34053906336: the singleRepository qualityjob passed exact checkout, runner-image proof, Foundation validation, dependency hygiene, primary package/service/PostgreSQL contracts, Python 3.12 compatibility, Python 3.13 compatibility, and clean-checkout proof.That GREEN exposed one remaining provenance finding on review:
.github/requirements/foundation-compatibility-test.txtwas hash-locked per dependency but its complete file bytes were not bound by the canonical manifest inventory. A reviewed compatibility dependency set could therefore change without changing the manifest unless a tracked artifact bound it.Current repair
Current successor
f1f152b0838e11cba1cf583706eb0983d56af373keeps the same one-job compatibility behavior and adds a fail-closed provenance check before compatibility installation:.github/workflows/foundation-ci.ymlremains exactly onequalityjob onubuntu-24.04;cebb36181e8ac995a36d73a02a45094a204ff5adb3cbcdc0c9eccff309ac6aab;--require-hashes --no-deps --only-binary=:all:;The final Foundation workflow is resealed in
manifest.jsonas SHA-25627fd3f2a69181e6a31b49ab2a3d394bfc8dca2b8ef5e9ce39324273f7962773d, 11,708 bytes, 251 lines. A manual manifest transcription error on an unrelated migration digest in intermediate commit581e1a3f...was immediately detected by exact diff review and corrected in normal fast-forward successordd89898a...; comparison against79e875...after correction shows only the intended Foundation workflow and its manifest entry changed. No migration source was modified.Traceability is synchronized at the current head and records the successful
34053906336predecessor evidence plus the provenance repair rationale.Exact-current-head authority — 2026-09-12
f1f152b0838e11cba1cf583706eb0983d56af373;develop@eb9757f8649aaad026a9865508d9aad50c1a7a4f;34057542130: terminal SUCCESS;34057542122: terminal SUCCESS;34057542151: terminal FAILURE only independency-review. Exact-head checkout/verification succeeded; sibling scanners completed, but central owner.github#810still records the fail-closed public non-fork dependency-comparison availability/configuration incident. This is incomplete authoritative security evidence, not an Orgmetra source vulnerability and not permission for a local substitute or gate weakening;34057542155: terminal FAILURE on this exact immutable head. Historical compatibility consumers failed at current-head verdict enforcement before their downstream dispatch path could complete. The central authority has advanced: protected.github/mainis nowfb17ef556f94f673234aa557254ae52779e9a7b0; canonical producer/consumer successor.github#2040is exact85522306949bada2b5939608dc911f6374125f1b, 150 ahead / 0 behind, open · Draft · mergeable after ordinary reconciliation; and its protected-handler bootstrap prerequisite.github#2106is exact24bb6591ab7df23558cb793b4af60c567ff9da97, 24 ahead / 0 behind the same protected main, open · Draft · mergeable. #2106 current-head Runtime Quality/SAST/Python Security/Security are GREEN while CodeQL remains terminal non-passing with both language dispatches successful and verdict pending; independent approval is absent. This is still a central bootstrap/settlement cycle, not an Orgmetra leaf finding. Therefore no ci: enforce declared Python package compatibility #259 rerun, synthetic verdict, no-op churn, or product-repository workflow copy is justified until the central protected-handler prerequisite and canonical successor integrate normally and current-head evidence converges;APPROVEDreview. Live organization ruleset18156473still requires one approving review while naming no reviewer/code-owner/last-push authority..github#772owns that solo-maintainer governance deadlock; self/model approval and routine administrator bypass remain forbidden.Scope boundary
The HTTP services declare Python 3.11 support. This PR does not claim that service-runtime compatibility; #260 remains the separate successor after #258/#259 is normally integrated.
Owner dependencies and acceptance
Ready / Proposed admits the unchanged exact head to independent review. Terminal authoritative central Security/CodeQL evidence and a qualifying independent approval remain mandatory merge gates. Do not self-approve, use routine administrator bypass, manufacture a status, weaken a gate, create a no-op retrigger, or copy central workflow source into Orgmetra.
After protected integration, #40 and #42 can non-force adopt the canonical Foundation capability without restoring package-local workflow ownership.