-
Notifications
You must be signed in to change notification settings - Fork 0
Reproducing and Verifying
The package is designed to be rerun and checked. These instructions target the published v1.0.0 release.
From the repository root:
python -m pip install -e ".[dev]"The dev extra installs pytest, matplotlib, and the pinned CoolProp dependency used by the
complete test suite.
pytest -q
# Expected at v1.0.0: 259 passed, 3 xfailedThe three xfail results are intentional placeholders for the not-yet-implemented
disk-integrated albedo model, pinned to NotImplementedError; they are not test failures.
python verify_suite.py
# Expected final line: All assertions pass.
python companion/verify_ai1.py
# Paper two: AI1 design-point arithmetic
python verify_paper3.py
# Expected final line: All paper-3 assertions pass.verify_paper3.py is deliberately pinned to orbital-thermal==1.0.0. It recomputes the
view-factor decomposition, three equilibrium balances, beta-angle table, dense-grid
monotonicity checks, and transient-bias rows.
There is also an independent Wolfram Language suite:
verify_suite.wl
Open it in Mathematica or Wolfram Engine and evaluate blocks W1–W9 in order.
The vendored McCalip model under external_models/ is SHA-256-pinned in PINS.json,
regenerated semantically with Node, and attested against the upstream GitHub source.
Published/oracle expected values are not edited to make tests pass.
For ordinary package testing, the frozen oracle is sufficient. To reproduce the strict CI oracle check, install the CI-pinned Node version (24.14.0) and run the repository's oracle-verifier workflow with:
ORACLE_REQUIRE_EXTERNAL=1 pytest -qOn Windows PowerShell:
$env:ORACLE_REQUIRE_EXTERNAL = "1"
pytest -q| Quantity | Value |
|---|---|
| AI1 primary operating point | 337.1 K |
| McCalip replicated default equilibrium | 335.749538 K |
| Exact edge-on view factor (per face, 550 km) | 0.257773 |
| Exact-VF default equilibrium | 342.099222 K |
| Headline correction (coded → exact) | +6.349684 K |
| — model-form geometry contribution | +5.766313 K |
| — floating-point branch contribution | +0.583371 K |
| Orbit-average sink (nadir, 550 km, β = 0°) | 250.99 K |
A push expands to five CI runs/checks:
- test matrix on Python 3.10, 3.11, and 3.12;
- strict oracle-freeze verification;
- wheel and license verification.
The package passed eight remediation rounds plus a final adversarial technical-review pass, with independent computer-algebra verification, and was closed at v1.0.0.