Commit graph Aetheria/tests
Author SHA1 Message Date
Meta Vens
cfba303afa Test: gear draw assertion back to Assert.Contains
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-17 16:23:48 +02:00
Meta Vens
16eef88455 Test: gear draw failure names the weights
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-17 16:22:40 +02:00
Meta Vens
51fc64de31 Tests: Pirates allegiance count is the other factions' count, not 12; gear draw seeds spread by a hash
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-17 16:22:01 +02:00
Meta Vens
1191aa1423 Test: a minor power's own allegiance names every faction but the Pirates
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-17 16:02:14 +02:00
Meta Vens
f54dada786 Tests: minor powers are ordinary factions, command idempotence and conflict, Pirates top-up, shipped minor-powers rows
These fail until the catalog commit lands.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-17 15:59:01 +02:00
Meta Vens
7dddcc4727 Merge eureka/aetheria-gravity-floater-fixtures-wells (floater-fixtures-wells, head d6380ca8)
Origin branch lagged at c631e09f; merged the closed head d6380ca8 from the shared object store (branch hands/ag4-floater-fix, unpushed).

Spec aetheria-gravity:cut_spec:cut-floater-fixtures-wells.r1; report h1; Soul s1 holds.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-17 15:03:43 +02:00
Meta Vens
1349953500 Shape.SetLine writes through the indexer so it invalidates the caches; footprint tests pin refusal Position and a wide shape
Builds: yes (Shared-only; verified on Yggdrasil in the report).

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-17 14:33:41 +02:00
Meta Vens
b3eb6b0c37 Floater fixtures: planets placed where the field changes under the floaters; probe removed
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-17 13:56:32 +02:00
Meta Vens
b708d51617 probe (temporary) 2026-10-17 13:54:38 +02:00
Meta Vens
be198593cc Floater fixtures: orbits and planets live in the run store, so the fixtures open one
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-17 13:53:09 +02:00
Meta Vens
d76b27673a HullFootprint: the one footprint cell reading and edit rule (grow, trim, refuse last cell), with tests
Not yet built or run (verify job at the end).

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-17 13:49:45 +02:00
Meta Vens
e4f19df15e Shape caches: behavioural tests (CenterOfMass and AllCoordinates stale after an edit; Resize fill kept)
Builds; ShapeCacheTests.CenterOfMassFollowsACellCleared and ResizeRecountsEveryCoordinateRead fail at this commit by design (fixed in the next).

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-17 13:48:17 +02:00
Meta Vens
c631e09fe8 Floater fixtures: the grab-point test and the wiring verify run over a moving well
PickupTests builds the zone over a sun and a planet on a rail, asserts the field differs between the ship's point and the item's and between start and end of the run, and checks each grab event at the zone time it was published. DrawnPoseWiringVerify gets a sun and a planet near the pickup and mine, requires the field under each to move with the drawn time, and checks the pickup's y as well as the mine's. Not compiled or run yet.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-17 13:47:52 +02:00
Meta Vens
1d4aa626aa RigBrandTests: Belt is built in its own pinned arena, not eight seeds that may hold no belt
Merge fix: the children-within-reach generator leaves 37 of 90 arenas with no belt, so
Belt.Stage threw under seeds 7919*k. Builds.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-17 12:18:26 +02:00
Meta Vens
6fe7f7cecb Merge eureka/aetheria-gravity-children-within-reach (children-within-reach, head cf242106)
Merged into master f937662d. No textual conflicts (auto-merged: ActionGameManager.cs,
Belt.cs, LockOn.cs, RunStartTests.cs, ScenarioTests.cs, AetherDb/Program.cs).
GameData/Aetheria.cc untouched by the merge.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-17 11:52:44 +02:00
Meta Vens
cf242106fa Tests: every turret on a read side clears the base body by its extent and reach
The 0.8 tail-extent mutant survived the stop checks alone: it places turrets inside the
distance, which only a placed turret's own clearance shows.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-17 09:30:03 +02:00
Meta Vens
a54707d1d8 Tests: drop the tail diagnostics
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-17 09:10:25 +02:00
Meta Vens
c345b303de Tests: tail test leaves out stations whose base family holds a belt
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-17 09:09:03 +02:00
Meta Vens
f881a3bdfe Tests: tail test reads stations whose turrets do not wrap the ring
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-17 09:07:54 +02:00
Meta Vens
7db87cfa88 Tests: the entrance fallback reads its root's extent from the bodies alone; tail diagnostics
The zone's well tree counts the station's own rail in its root's family, so the extent is rebuilt
from the generated bodies. Carries a temporary DIAG line in ATurretTailStopsAtItsBaseBody.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-17 09:02:51 +02:00
Meta Vens
c39a73ca12 Tests: belts fill their slots, five placement rules pinned by forced fixtures
BeltsFillTheirSlots (midpoint, slot bound, no zero-width belt, width distribution printed),
ANarrowAuthoredBeltKeepsItsWidth, ASoleRootRingSitsAtThreeEighthsOfItsRadius,
ARingMembersChildrenStayWithinAFifthOfTheChord, ATurretTailStopsAtItsBaseBody and
ATutorialEntranceWithNoCandidateOrbitsItsBodyRootOutsideItsExtent. Not yet run.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-17 09:00:21 +02:00
Meta Vens
ac5cbcc51b EW 3 fix: a contact is hostile on the observer's own permission, with tests for trespass through Zone.Update
Entity.IsHostileTo read other.PresencePermitted in its claimed-owner term where the spec and map S2
say the observer's own, so a trespasser never held the owner's patrol hostile. Tests: the trespasser
(player or not) holds the patrol hostile and its guns are not safed, a permitted neutral does not,
a ship tracked in open space turns hostile on entering the Critical area through ticks (pins the
per-tick stance refresh), and a third party does not treat a trespasser as hostile (pins the owner gate).

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-17 08:10:29 +02:00
Meta Vens
cbb4526070 EW 3 tests: a live quiet subject's reveal stays in the book, so the belief ends by age, not by the book dropping
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-17 07:32:45 +02:00
Meta Vens
5a7ab7944b EW 3 tests: add the Forbid helper the previous commit referenced (8a779b3a does not build)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-17 07:10:54 +02:00
Meta Vens
1ddd1bef31 EW 3 tests: reciprocity test comment no longer names the deleted recursive branch
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-17 07:05:45 +02:00
Meta Vens
8a779b3aa8 EW 3 tests: forbid by direct PresencePermitted (Update re-derives the security level); listed-once after a tick
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-17 07:04:46 +02:00
Meta Vens
49423b61fe EW 3: allegiance is the observer's belief; telemetry with the track, grudges from acts, one stance writer
Cuts WatchForGrudge, PerceivedStanceOf, the recursive IsHostileTo and the inline compare-and-write; adds _telemetry (ReceiveTelemetry at track entry), Provoke (Track paint, committed shot), RefreshStance, BelievesTrespassing. Not yet verified: unbuilt, tests unrun.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-17 06:45:51 +02:00
Meta Vens
1f83d0743b Tests: folding takes the lightest family
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-17 06:08:02 +02:00
Meta Vens
4d6c307d0c StationPlacementTests: each generated galaxy has its own directory
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-17 06:07:09 +02:00
Meta Vens
b305c66c6c Tests: belts keep a spacing from their neighbours; story turrets at 3, 5 and 9; a station never sits on a binary's bodyless node
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-17 05:56:58 +02:00
Meta Vens
f5329e50a2 RestoredHullsTests: the entrance throw is reached by a single-root zone (several roots give the station a root to orbit)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-17 05:55:53 +02:00
Meta Vens
c727141a2f Scenarios: Belt and Lock On take the seeds that hold their conditions under the new placement
Belt: seed 86 (484 rocks, scanned over seeds 1-90). Lock On: seed 1 (the staged hostile settles below the detection threshold).

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-17 05:40:34 +02:00
Meta Vens
3ef0ac21eb RunStartTests: the belt race takes the first arena that has a belt
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-17 05:31:08 +02:00
Meta Vens
513d0c4393 Place: ring merge decided on the heavy member's final mass; a bodyless node keeps a cusp as the one body it would become; tests follow
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-17 05:25:26 +02:00
Meta Vens
c3d7d077e6 Tests: compile fix
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-17 05:22:57 +02:00
Meta Vens
ed9f9930dd Place: a sole root's ring also folds when it cannot keep its heavy member outside the Roche margin; the entrance station falls back to the heaviest root of childless roots; tests follow
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-17 05:21:11 +02:00
Meta Vens
0dc7e4bae3 Tests: compile fixes (does not isolate a build until this commit)
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-17 05:13:03 +02:00
Meta Vens
2409eed0dc Tests: children within reach, subzone isolation, station and turret clearance
ChildrenWithinReachTests reads the production generator's zones (seeds 1-6)
through the Zone and checks each Place rule; SubzonesAreIsolated prints its
pair and orbit counts. StationPlacementTests: a station's source is a body (the
tutorial root-node fallback excepted), turrets clear their base's extent, no
station or turret sits on an unrelated body over 64 instants. Not yet run.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-17 05:12:17 +02:00
Meta Vens
e83f9a2ed1 Merge eureka/aetheria-release-minimap-asteroids-setting (cut-cut-minimap-asteroids-setting r1, h1) into master
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-17 04:58:22 +02:00
Meta Vens
84337de569 ZoneGenerator.Place owns every generated distance, fold and belt width
PlanetSafetyRadius, ChildDistanceMinimum/Maximum, ExpandSolar's distance series
and the window filters are deleted. Place (ported from replace.py, root window
from rootReach per root-window-floor) lays children inside-out, folds the
lightest family while the outermost overflows, stretches to the window, merges
rings that cannot keep their heavy member outside its Roche margin and sets
belt half widths. Stations pick well-bearing, sibling-clear off-ring bodies;
the tutorial entrance falls back to an orbit round a root node; turrets stop a
side when within the base body's extent. GenerateZone/GenerateArena take
PlanetSettings. Not yet built.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-17 04:55:57 +02:00
Meta Vens
781607763e WellTree: SubzoneReach is one public static; the strengthless-orbit mean rule is deleted
The nearest-anchor rule (Reach x distance to the nearest other root) moves to
WellTree.SubzoneReach(anchors, root) so the generator spells it once; the
instance method returns max(it, floor). PullAround no longer gives a
strengthless orbit on a ring a period of its own (binaries-orbited-from-afar);
its test goes with it.

Builds.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-17 04:55:48 +02:00
Meta Vens
d7f30ed165 Merge eureka/aetheria-release-faction-play-1 (cut-faction-play-1 r3, h6) into master
Catalog GameData/Aetheria.cc regenerated by replaying doctrine-catalog apply on the merged catalog, not taken from either branch.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-17 04:50:24 +02:00
Meta Vens
6179846249 Merge eureka/aetheria-release-product-lines-weapons (cut-product-lines-weapons r5, h4) into master
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-17 04:48:14 +02:00
Meta Vens
1bb17feabc OldPlayerSettingsLoad: write the old key 2 as 0.25f
The previous commit changed only the assertion; the hand-written array still
wrote the default 1f, which loads the same with key 2 dropped. Builds; not yet run.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-17 04:40:48 +02:00
Meta Vens
dc0b1e2cfe OldPlayerSettingsLoad: old key 2 carries a non-default value
A default 1f would load the same with key 2 dropped, so the test could not
fail when the old array lost it. Builds; not yet run.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-17 04:37:13 +02:00
Meta Vens
b70372963a Delete the minimap asteroids setting; minimap belts always draw
Ruling minimap-asteroids-setting-deleted. PlayerGraphicsSettings key 1 stays
retired so old saves load; OldPlayerSettingsLoad now writes the old 3-element
array by hand. MapPresenterSmoke asserts a belt draws with the map screen
closed. Not built or tested yet.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-17 04:36:13 +02:00
Meta Vens
0f2fc859de ConsumableAiTests: the following agent leaves combat before it is set to follow
The agent starts in combat; two zone ticks with nothing sensed return it to patrol, as the patrol test does.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-17 04:03:08 +02:00
Meta Vens
199f1b1b94 ConsumableAiTests: the following agent clears the Ship's VisibleEnemies
The previous commit does not build: VisibleEnemies is on the Ship, not the Agent.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-17 03:51:43 +02:00
Meta Vens
09a7f18985 Merge eureka/aetheria-gravity-well-law (cut well-law; Soul verdicts s1-s4)
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
2026-10-17 03:49:59 +02:00
Meta Vens
843acb5341 faction-play-1: pin the vent in FollowState, pins to 10%, drop the dead LockAlarm
Combat.cs loses its unused LockAlarm constant. ConsumableAiTests gains a following agent that vents. FlightTests adds
follow-velocity, pull and compliance-entry cases a tenth either side of their thresholds and a hail member that is
nearest only with z halved.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-17 03:49:37 +02:00