Aetheria/tests
Repository files (latest commit first)
Filename Latest commit message Latest commit date
Meta Vens f879527158 Zone: every writer of what the belt tasks read settles them first
Soul's F5 and F6. The asteroid-belt tasks read the clock, the orbits and each
belt's damage and respawn state. Update advanced the clock before waiting on
last tick's tasks (Soul measured 242k transforms placed for the next tick in
576 of 3000 ticks), MineAsteroid wrote damage and respawn state under a
running task, CreateOrbit and AddOrbit wrote the orbits, and a task that threw
stayed in the list, so Wait rethrew it on every tick after.

SettleBelts waits for the tasks and clears the list even when one failed; Update
settles before it advances the clock, and MineAsteroid, CreateOrbit and
AddOrbit settle before they write.

Tests: over 3000 ticks every asteroid of a belt is placed for the time of the
tick that started its task; mining every asteroid of a belt, chipping and
breaking each four times a tick for 1000 ticks, never races the task; a task
that fails surfaces once and later ticks run clean.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-09-30 20:46:31 +02:00
..
Aetheria.Shared.Tests Zone: every writer of what the belt tasks read settles them first 2026-09-30 20:46:31 +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