v0.1.2 - experimental prerelease
Pre-releasev0.1.2 - experimental prerelease
Release classification: experimental prerelease
Here, prerelease is the GitHub Release classification. The Python package
version is 0.1.2, and the workflow does not publish it to PyPI.
This version is an experimental review aid. Output is not a compliance determination,
an ATO assessment or professional advice. A qualified human must reconcile the source
records, decide the legal and payroll classifications, and approve any payment,
disclosure, lodgment or accounting action.
What changed since v0.1.1
- Hardened the money paths: gate
remitted_dateon Beam payment status, refuse
offset-bearing timestamps, and exit 2 on remittance-only files until an
operator confirms the statutory allocation. - Split the assess and join modules and tightened the verify CI gates.
- Added the practitioner review pack (report generation with constrained output
paths: resolved.csvfiles only). - Refreshed GIC rates to include the September 2026 quarter and clarified the
national payday calendar documentation. - Hardened source-archive extraction on older Python releases, Actions
permissions, Dependabot configuration and job timeouts. - Added repository visuals, llms.txt, project URLs, editorconfig, CODEOWNERS,
mailmap, citation and regulatory disclaimer; retired the CharlesHenryWickens
codename from user-facing docs. - Documentation corrections so every claim matches the repository.
Release artefacts and verification
The release workflow builds the wheel and sdist twice from the exact tagged Git
tree in the same locked release job and refuses publication unless the bytes
match. This is a same-job repeatability check, not a cross-platform or
future-toolchain byte-identity claim. It also publishes deterministic UTC/LF
source archives, a deterministic SPDX 2.3 runtime SBOM, the reviewed notes and a
sorted SHA256SUMS file. GitHub build-provenance attestations cover every
uploaded artefact, with a separate SBOM attestation for the wheel.
After downloading the files, verify them before installation:
tag_sha=$(git ls-remote \
https://github.com/ryanduguid/payday-super-checker.git \
'refs/tags/v0.1.2^{}' | cut -f1)
test "${#tag_sha}" -eq 40
sha256sum --check SHA256SUMS
gh release verify-asset v0.1.2 \
payday_super_checker-0.1.2-py3-none-any.whl \
--repo ryanduguid/payday-super-checker
gh attestation verify payday_super_checker-0.1.2-py3-none-any.whl \
--repo ryanduguid/payday-super-checker \
--source-digest "$tag_sha" \
--source-ref refs/heads/main \
--signer-workflow \
ryanduguid/payday-super-checker/.github/workflows/release.ymlKnown review boundaries
Unchanged from v0.1.1:
- The bundled official holiday horizon ends on 31 August 2027.
- The importer cannot infer fund-receipt order or SG-charge assessment facts;
its statutory-allocation confirmation records an operator reconciliation. - Fund receipt and allocation evidence are required before item 4 can extend a
deadline. - Raw-pay classification, regulations 11 and 12, LCR 2026/D1 matters, cumulative
maximum-contribution-base calculations, choice loading, late-payment penalty
and post-assessment GIC remain outside the automated result. - The ATO determines the final charge and applies the assessment-level rounding
rule. Monetary output here remains an experimental estimate.