Skip to content

Releases: ryanduguid/payday-super-checker

v0.1.2 - experimental prerelease

Pre-release

Choose a tag to compare

@github-actions github-actions released this 23 Aug 22:17
Immutable release. Only release title and notes can be modified.
cf45858

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_date on 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 .csv files 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.yml

Known 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

Pre-release

Choose a tag to compare

@github-actions github-actions released this 14 Aug 18:45
Immutable release. Only release title and notes can be modified.

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-driving UNKNOWN with 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.3

The 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

v0.1.0 Pre-release
Pre-release

Choose a tag to compare

@ryanduguid ryanduguid released this 11 Aug 06:57
Immutable release. Only release title and notes can be modified.

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": false because 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 .