Releases: ryanduguid/payday-super-checker
Release list
v0.1.2 - experimental prerelease
v0.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.
v0.1.1 - experimental prerelease
v0.1.1 - experimental prerelease
Release classification: experimental prerelease
Here, prerelease is the GitHub Release classification. The Python package
version is 0.1.1, 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
- Refreshed the implementation against the legislation and official material
current on 15 August 2026, including final LCR 2026/1, LCR 2026/2 and LCR
2026/3. LCR 2026/D1 remains draft. - Made the July 2026 transition, statutory contribution allocation and item 4
deadline extension fail closed when the supplied records do not establish the
facts. Material uncertainty is attention-drivingUNKNOWNwith no exposure
figure. - Required an actual subsequent non-out-of-cycle payment for the out-of-cycle
pathway, as required by F2026L00784. - Corrected the whole-of-jurisdiction holiday boundary and made post-horizon
funded, unfunded and stale-prepayment outcomes fail closed. - Clarified that regulations 11 and 12, qualifying earnings, termination
treatment and the maximum contribution base remain operator inputs or review
boundaries rather than decisions made by the tool. - Retained experimental labels on SG-charge estimates and removed language that
could imply a settled liability or compliance result.
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.1^{}' | cut -f1)
test "${#tag_sha}" -eq 40
sha256sum --check SHA256SUMS
gh release verify-asset v0.1.1 \
payday_super_checker-0.1.1-py3-none-any.whl \
--repo ryanduguid/payday-super-checker
gh attestation verify payday_super_checker-0.1.1-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.yml
gh attestation verify payday_super_checker-0.1.1-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.yml \
--predicate-type https://spdx.dev/Document/v2.3The release workflow does not publish to PyPI. Install only the wheel you have
verified, preferably in an isolated environment.
Known review boundaries
- 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.
v0.1.0
First tagged release of the payday-super checker.
Reads payroll or clearing-house CSVs and checks each contribution against the payday-super deadline that applies from 1 July 2026: fund receipt by the end of the seventh business day after the qualifying-earnings day. Flags late and unpaid contributions and estimates SG-charge exposure with every assumption stated in the output.
- Python 3.10+, standard library only at runtime
- Importers for Xero, MYOB and Employment Hero export shapes; all vendor column profiles ship
"verified": falsebecause no vendor publishes its header list - National business-day calendar built from state and territory public holidays
- 406 tests; CI on Ubuntu 3.10/3.13, Windows 3.12 and a packaging job
Install from source: pip install .