moira

Moira Experimental Validation

Version: 2.0 Date: 2026-03-23 Runtime target: Python 3.14

This document covers Moira subsystems that are experimental, modernized, or not normally validated against a single canonical astrology package. In this layer, the validation standard is a mix of:

The goal is truthfulness, not false symmetry with the core astronomy and astrology validation docs.


1. Status Table

Domain Validation basis Status
Sovereign fixed-star positions sovereign catalog/schema/search tests in tests/unit/test_stars_sovereign_catalog.py, identity tests in tests/integration/test_stars_sovereign_identity.py, Swiss audit in tests/integration/test_stars_external_reference.py, and SOFA/ERFA audit in tests/integration/test_stars_erfa_reference.py Validated
Stellar quality mapping boundary and vessel tests in the sovereign star suite; no external oracle exists for the interpretive mapping itself Validated
Variable stars catalog integrity, phase arithmetic, light-curve behavior, extremum helpers in tests/unit/test_variable_stars.py, plus external ephemeris spot checks for Algol (AAVSO VSX), Delta Cephei, and Eta Aquilae (GCVS) in tests/integration/test_variable_stars_external_reference.py Validated
Extended physical bodies Horizons / kernel-backed fixture suites for TNOs, centaurs, asteroids, and selected minor bodies Validated
Galactic transforms and reference points invariant tests in tests/unit/test_experimental_validation.py plus Astropy/ERFA oracle audit in tests/integration/test_galactic_oracle_reference.py Validated
Uranian bodies / Transpluto locked formulas and range checks in tests/unit/test_experimental_validation.py Validated
Astrocartography dedicated geometry and wrapper suite in tests/unit/test_astrocartography.py plus validated planetary positions Validated
Local space dedicated spherical-astronomy and wrapper suite in tests/unit/test_local_space.py plus validated topocentric positions Validated
Longevity doctrine tables and scoring logic in tests/unit/test_experimental_validation.py Validated
Timelords doctrine and structural invariants in tests/unit/test_experimental_validation.py and tests/unit/test_timelords.py Validated
Gauquelin sectors canonical diurnal-arc logic in tests/unit/test_experimental_validation.py Validated
Arabic lunar mansions (Manazil) equal-station arithmetic and boundary tests in tests/unit/test_experimental_validation.py Validated
Varga divisions explicit geometric-division doctrine tests in tests/unit/test_varga.py plus public-surface coverage Validated
Synastry composites midpoint and reference-place composite behavior in tests/unit/test_synastry.py Validated
Sothic cycle doctrine, policy, and profile structure in tests/unit/test_sothic.py Validated
Multiple star systems dedicated unit suite for catalog lookup, orbital behavior, resolvability, magnitudes, wrappers, and public surface, plus Sirius AB orbit spot checks against a published yearly ephemeris in tests/integration/test_multiple_stars_external_reference.py Validated

2. Validation Philosophy

Experimental subsystems do not all admit the same kind of truth claim.

Moira should not claim stronger validation than the subsystem actually has.


3. Sovereign Star and Stellar Extensions

3.1 Sovereign fixed-star positions

Current state:

External reference coverage:

Status: Validated

Measured residuals:

What this means:

3.2 Stellar quality mapping

This layer is interpretive rather than astronomical, but it remains explicitly bounded by unit coverage in the sovereign star suite.

Covered:

Status: Validated

What this does not mean:

3.3 Variable stars

Validated in tests/unit/test_variable_stars.py and tests/integration/test_variable_stars_external_reference.py.

What is covered:

Status: Validated

External comparison numbers:

Observed agreement in the external suite:

3.4 Multiple star systems

Validated in tests/unit/test_multiple_stars.py and tests/integration/test_multiple_stars_external_reference.py.

Covered:

Status: Validated

Truth basis:

Representative computed values from the current validated corpus:

Observed agreement in the validation suite:


4. Extended Physical Bodies

This area is much stronger than the previous version of this document implied.

Validated areas include curated fixture-based coverage for:

These validations are grounded in the same Horizons / kernel-based astronomy work used elsewhere in the repo.

Status: Validated


5. Galactic and Uranian Layers

5.1 Galactic transforms

Validated in tests/unit/test_experimental_validation.py and tests/integration/test_galactic_oracle_reference.py.

Covered:

Status: Validated

Measured residuals:

Important scope note:

5.2 Uranian bodies and Transpluto

Validated in tests/unit/test_experimental_validation.py.

Covered:

Status: Validated

This is still a model-defined subsystem. Differences from other Uranian packages are treated as model differences unless Moira violates its own stated formula basis.


6. Derived Geometric Techniques

6.1 Astrocartography

astrocartography.py derives line geometry from already validated planet positions, and now has its own dedicated validation surface in tests/unit/test_astrocartography.py.

Covered:

Status: Validated

Important scope note:

6.2 Local space

local_space.py derives azimuth/altitude outputs from validated topocentric positions and now has its own dedicated validation surface in tests/unit/test_local_space.py.

Covered:

Status: Validated


7. Traditional-Experimental Boundary Techniques

7.1 Longevity

Validated in tests/unit/test_experimental_validation.py.

Covered:

Status: Validated

7.2 Timelords

Validated across tests/unit/test_experimental_validation.py and tests/unit/test_timelords.py.

Covered:

Status: Validated

7.3 Gauquelin sectors

Validated in tests/unit/test_experimental_validation.py.

Covered:

Status: Validated

7.4 Arabic lunar mansions

Validated in tests/unit/test_experimental_validation.py.

Covered:

Status: Validated

7.5 Varga divisions

varga.py explicitly implements the standard geometric-division model, not the full set of sign-specific Parasari special rules used by some Jyotish software. The correct validation target is therefore the geometric doctrine the module actually declares.

Validated in:

Covered:

Status: Validated

Important scope note:

7.6 Synastry composites

The previous status here was too weak.

tests/unit/test_synastry.py already validates:

Status: Validated


8. Sothic Cycle

tests/unit/test_sothic.py provides a real validation surface for the Sothic subsystem.

Covered:

Status: Validated

This remains a doctrine/model subsystem rather than a mainstream external software-comparison subsystem.


9. Remaining Work

The main experimental items that still need more validation are:

  1. Sovereign fixed-star positions The core oracle path now exists via SOFA/ERFA and offline Swiss fixtures. Remaining work is narrower: broaden the published-anchor corpus beyond the current star set if a richer external published reference set is desired.

  2. Optional external spot checks Astrocartography and local space are now geometry-validated internally, but software-to-software spot checks would still be useful as supplemental corroboration if a clean declared reference is available.

These are the real remaining gaps. Everything else listed as validated above already has a concrete test surface in the repo.


10. Practical Reading

Interpret the status labels strictly: