Trust distribution checks
| Install distribution | Python import | Command |
|---|---|---|
solomons-sword |
louisgoldberg |
solomons-sword |
Project name Solomon's Sword. Distribution solomons-sword, import package louisgoldberg, command solomons-sword.
Trust distribution allocation, Section 100A / 99B risk evaluation, and Division 6 ITAA 1936 review helpers for Australian trusts.
Package lifecycle: published. Install solomons-sword from PyPI.
The australian-accounting repository contains the maintained source. The
solomons-sword distribution and command match the project identity. The
louisgoldberg import package remains unchanged, so internal Python imports do
not need a rename.
Release: v0.1.3.
Named for the judgement of Solomon, where the threat of dividing the child in proportion is what reveals who the true claimant is. Division 6 allocates trust income by proportionate entitlement following Bamford; Section 100A asks who actually ended up with the benefit. The name is a tribute only.
Not advice
Nothing this engine produces is tax, legal or financial advice, an assessment or a determination. Outputs are review aids: confirm every allocation, zone and exemption against the current law, the trust deed and the entity's facts before acting, and leave lodgment decisions with a registered practitioner. Where the model does not implement a rule it refuses the input rather than returning a number it cannot stand behind.
Command output carries the beneficiary name you supply, because a workpaper line item is unusable without it. Treat that output as client data: write it to the firm's approved secure location, never to a path inside a repository.
Full boundary statement: DISCLAIMER.md.
What it checks
- Division 6 Proportionate Allocation (Commissioner of Taxation v Bamford [2010] HCA 10): Calculates present entitlement proportions and allocates s 95(1) ITAA 1936 taxable net income and the franking credits that ride with it. Specifically streamed capital gains and franked dividends are refused, not allocated: the Division 6E carve-out with Subdivision 115-C (including s 115-220) and Subdivision 207-B is not implemented, so a proportionate answer would be wrong. Non-resident beneficiaries (s 98(2A)/(3)), nil income of the trust estate and no presently entitled beneficiary (s 99 / s 99A) are refused for the same reason.
- Section 100A Reimbursement Agreement Matrix: Classifies supplied facts against ATO PCG 2022/2 as Green, Red, or outside those zones. The final guideline has white, green and red; the draft blue zone did not survive. White zone (income years ending before 1 July 2014) is out of scope because the function does not take an income year.
- Section 99B Foreign Trust Receipt Assessment: Computes assessable amounts under s 99B(1) after corpus exemptions (s 99B(2)(a)) and prior-taxed income.
- Trust Resolution 30 June Schedule Verifier: Checks timing, deed-power and percentage-completeness facts the caller supplies.
Quickstart
Installation
pip install solomons-sword
CLI Usage
# Evaluate Section 100A risk zone
solomons-sword s100a-check --beneficiary "Adult Child" --amount 40000 --adult-child --retained-by-parents
# Assess Section 99B receipt from foreign trust with corpus deduction
solomons-sword s99b-check --beneficiary "Jane Doe" --gross 150000 --corpus 50000
Statutory sources and tests
All allocation and threshold algorithms use exact decimal.Decimal calculations to prevent rounding discrepancies in trust tax schedules.
| Statutory Domain | Primary Authority | What the code actually does |
|---|---|---|
| Proportionate Entitlement | ITAA 1936 s 95, s 97 (Commissioner of Taxation v Bamford [2010] HCA 10) | Beneficiary Share = (Accounting Entitlement / Total Accounting Income) * s95 Net Income. |
| Section 100A Risk Matrix | ITAA 1936 s 100A, ATO PCG 2022/2 | Returns GREEN, RED or OUTSIDE_GREEN from the supplied flags. It does not decide the white zone. |
| Foreign Trust Distributions | ITAA 1936 s 99B(1), s 99B(2)(a) | Subtracts settled corpus and previously taxed income prior to assessable inclusion. |
| Trust Resolution Timing | Caller-supplied deed and execution facts | Refuses incomplete percentages and missing deed facts. This is not a substitute for current ATO guidance. |
Automated Test Suite
- Run the suite:
pytest tests/ - The suite covers proportionate streaming, Section 100A zones the engine implements, Section 99B corpus deductions, and resolution gates. Do not treat a badge as a live coverage certificate.
Licence
MIT License. Created by Ryan Duguid.
Metadata
Release files for solomons-sword 0.1.5
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| solomons_sword-0.1.5.tar.gz | 68.6 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| solomons_sword-0.1.5-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 84.8 kB
Release files / solomons_sword-0.1.5.tar.gz
| Download URL | solomons_sword-0.1.5.tar.gz |
|---|---|
| Size | 68.6 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
62c770b03825582123bcc456c34b507ccd020702962638311055f995df82c23d
|
|
BLAKE2b-256 checksum How to use checksums |
e6ece651de5210f22cedfc24eee17597797c95b31cc7fa1b70d08d5e6f9e96fe
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Sep 11, 2026.
Transparency logRelease files / solomons_sword-0.1.5-py3-none-any.whl
| Download URL | solomons_sword-0.1.5-py3-none-any.whl |
|---|---|
| Size | 16.2 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
b7944399ece60d4e0c9ab6173e89b013a75382ce24eb052df955b81a7f6d58b9
|
|
BLAKE2b-256 checksum How to use checksums |
eb59fcbab33114b663fd4ab04d403a7e51b788dd0cc5aedb5dd95165fc1bec7d
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Sep 11, 2026.
Transparency log