eyetrajectoriespy 0.12.0¶
Final version — published and production-verified
0.12.0 promotes the feature-frozen and production-observed 0.12.0rc1 scientific/API surface without changing estimator behavior, numerical methods, analytical defaults, dependencies, or public APIs.
Qualification boundary¶
The final version was qualified under the literal package identity 0.12.0. The immutable RC performance envelope remains retained under validation/performance/PERFORMANCE_ENVELOPE-0.12.0rc1.json; it was not renamed or reused as final evidence. Fresh package-wide and sparse-MFPCA performance runs, the complete pull-request matrix, protected-main merge, and the complete exact-main matrix all passed before publication was armed.
Final-version evidence¶
Fresh package-wide performance qualification passed under literal package identity 0.12.0 in GitHub Actions run 36914769585 from source commit eabb28029184c44190d1f3630d3d61df37bd3601. Raw artifact 11189676740 has digest sha256:823b2473006096ccf51eec83ec8da8056bb54e2d8d142ea0a354debe4a320f43, and the generated measurements are committed as the canonical final-version PERFORMANCE_ENVELOPE.json.
Fresh sparse-MFPCA/joint-PACE final qualification also passed on repaired PR-head ancestry in run 36915348933. The repeated sparse-MFPCA performance artifact 11188599088 has digest sha256:8f890bc7dcfe76d63093d14567e6c3b3da9ea75f30d2f64801efc58ffc712f38; its embedded environment records eyetrajectoriespy==0.12.0, Python 3.12.14, source commit 8f12122fbfe5aff0b4fdfda1b9d527285beefe05, zero score failures across all three declared workloads, and no release speed threshold. The paired observation-process stress job also passed in the same workflow run.
Final exact-version qualification PR #138 then merged as protected-main commit 4469971885104524e7ceb62f05d63f470f838b80. The complete post-merge exact-main qualification matrix finished 14/14 workflow groups green. On that exact commit:
- sparse-MFPCA final qualification run
36917712173passed both the repeated sparse-MFPCA performance-envelope job and the public observation-process stress job, including their evidence-contract verification and retained artifacts; - sparse-MFPCA comparator-sensitivity run
36917712051passed both the native two-stage sensitivity and the exact external mGSFPCA comparator path; - package-wide performance qualification run
36917712042passed; - release-readiness run
36917712021passed; and - the full package/test workflow run
36917711911passed package construction and Ubuntu/macOS/Windows × Python 3.11–3.13.
These exact-main results satisfied the final-version qualification prerequisite for the separate governance-only publication-arming change.
RC installed-artifact evidence carried forward¶
Exact protected-main commit 0250fdb8113d51d024c199f552c50079ea97e84a reinstalled production-PyPI 0.12.0rc1 on Python 3.11, 3.12, and 3.13 and exercised the public sparse-MFPCA/joint-PACE chain outside the checkout. Deep run 36911103234 retained evidence artifact 11186552786 (sha256:de1b531fc2a6a5c2836ee3fc1a70df898f7a7e3ecfdad75c3e022300216d24d8), including 36/36 successful joint-PACE scores and a portable sparse-MFPCA snapshot with no nonportable fields.
Production publication¶
Governance-only PR #139 armed GitHub and production-PyPI release readiness only after final exact-main qualification. Its protected-main merge commit 5f17019a2e346c5d6073d8c213a7798c89a5d529 then passed the required exact-main governance checks and became the sole production-release authority.
Production release workflow #16 (36934655797) completed successfully from that exact commit on 1 October 2026. The workflow built the wheel and sdist once, passed production governance and unpublished-version preflight, created annotated tag and GitHub Release v0.12.0, verified release checksums, published the exact distributions to production PyPI through OIDC Trusted Publishing, generated digital attestations, and passed a fresh production-PyPI installation smoke test on the first visibility attempt.
The annotated tag v0.12.0 resolves to exact commit 5f17019a2e346c5d6073d8c213a7798c89a5d529. Published GitHub Release assets are:
eyetrajectoriespy-0.12.0-py3-none-any.whl—sha256:0c2a528a4fa11ec1a3556556e657c6bff7742f552224fee8cac805c87c55ea74;eyetrajectoriespy-0.12.0.tar.gz—sha256:f59dc133381e82681b17d4c3417efa7f46f3ac0fdcd16959551e833ba2f4285a;SHA256SUMS—sha256:b99e849f026e4b9a53a888149104874c7e7d893e444f581b184c00a703de0708.
The retained workflow artifact release-dist is artifact 11197248188 with digest sha256:f62b284a6c67a23844729d2958d99d3a216ac5a7ea168cf36eaffb610c78ed2b.
The production verification job installed exact eyetrajectoriespy==0.12.0 from PyPI with --no-cache-dir on CPython 3.12.14 and completed scripts/release_smoke_test.py --expected-version 0.12.0 successfully.
Post-publication governance¶
After successful immutable publication, GitHub and production-PyPI readiness are jointly disarmed again. Ordinary pushes and merges remain non-publishing, and any future release must begin a new reviewed version/readiness cycle. No estimator, scientific API, numerical method, analytical default, dependency, test threshold, comparator methodology, workflow, or performance methodology is changed by this post-publication closeout.