Aetheria/tests
Repository files (latest commit first)
Filename Latest commit message Latest commit date
Meta Vens c2e7a2166f Cut 12.3 fix batch: F1 angled-bearing parity, F2 spread-lane behaviour
F1: no existing test through Fire commits at a non-axis bearing.
DirectHitAtAnAngledBearingMatchesAnIndependentModel checks every cell's
armour, every item's durability and the hull's own total against an
independent double-precision ray/box model (ported from the Soul probe that
verified this cut's arithmetic to 14,984/15,000 shots), at 45 degrees, a
shallow angle and a bearing with |bx| > |by|.
DiagonalDirectHitReachesEveryCornerCellInOrderThroughFireCommitApply pins the
spec's own diagonal case (Probe1's corner-crossing lane) through the full
Fire -> Commit -> Apply path rather than a direct Lane call: the lane reaches
(0,0), then (1,1), then (2,2), in that order (a bearing this close to 45
degrees also admits the diagonal's row/column neighbours, so the walked lane
is usually five cells, not three -- the spec only requires the three corner
cells present and in order, the same standard the existing direct-Lane test
already pins).

F2 (operator ruling, 2026-09-25: spread lanes should diffuse sideways rather
than double up): three behavioural tests, deliberately not asserting the
spacing value itself (operator: "test behavior, not shape").
NoCellIsStruckByTwoLanesAtAnAngledBearing fires at 45 degrees and at a bearing
with |bx| > |by|, spread 2, heavy uniform armour, and checks no cell fires
ArmorDamage twice. MirrorImageShotsProduceStatisticallyMirroredDamage compares
300 hits at a bearing against 300 at its mirror image, and asserts the
per-cell damage totals are mirrored within tolerance.
FootprintWidensAtAnAngledBearingComparedToAxisAligned compares the lateral
span of hit cells for the same spread at 45 degrees against axis-aligned, and
asserts the angled footprint is wider.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-09-25 12:08:29 +02:00
..
Aetheria.Shared.Tests Cut 12.3 fix batch: F1 angled-bearing parity, F2 spread-lane behaviour 2026-09-25 12:08:29 +02:00
mutation_tests_addressables_cut.py Un-clobber the item-provenance mutation harness; own file for this cut 2026-09-18 05:07:23 +02:00
mutation_tests_shield_panel_cut1.py Add the Cut 1 batchmode probe and its mutation harness 2026-09-18 06:08:24 +02:00
mutation_tests_shield_panel_cut2.py Fix ShieldManager's missing-envelope fallback regression 2026-09-18 06:45:07 +02:00
mutation_tests_shield_panel_cut3.py Add the Cut 3 batchmode probe and its mutation harness 2026-09-18 13:51:44 +02:00