idle fleet slows world clock to real time instead of freezing (ISS-128)
CI / build + unit + e2e (pull_request) Successful in 10m32s
CI / build + unit + e2e (pull_request) Successful in 10m32s
This commit is contained in:
+7
-6
@@ -98,9 +98,10 @@ async function setHealth(page: Page, planeId: string, fields: Record<string, unk
|
||||
expect(res.status()).toBe(200);
|
||||
}
|
||||
|
||||
// Idle-pause (ISS-117) freezes a fully grounded fleet — put the starter in repair so the clock
|
||||
// advances for tests that need it. The €1.5k repair cost is why the expiry test captures its
|
||||
// cash/rep baseline AFTER deactivateWorld; deactivateWorld restores full health and no gate afterwards.
|
||||
// A fully grounded fleet only advances at the idle real-time rate (ISS-128) — put the starter in
|
||||
// repair so the clock runs at FULL scale for tests that need fast-forwarding. The €1.5k repair cost
|
||||
// is why the expiry test captures its cash/rep baseline AFTER deactivateWorld; deactivateWorld
|
||||
// restores full health and no gate afterwards.
|
||||
async function activateWorld(page: Page): Promise<void> {
|
||||
await setHealth(page, 'plane-starter', { health: 50 });
|
||||
expect((await page.request.post('/api/planes/plane-starter/repair')).status()).toBe(200);
|
||||
@@ -343,9 +344,9 @@ test('expired packages deliver and abandon with no reward and no penalty', async
|
||||
expect(res.ok()).toBeTruthy();
|
||||
}
|
||||
|
||||
// Idle-pause (ISS-117): a fully grounded fleet freezes the clock, so expirePackages never runs —
|
||||
// put the starter in repair for the expiry window only. The €1.5k repair cost is why the cash/rep
|
||||
// baseline below is captured AFTER deactivateWorld, not before it.
|
||||
// A fully grounded fleet only advances at the idle real-time rate (ISS-128) — put the starter in
|
||||
// repair for the expiry window so scale 1000 can fast-forward past both deadlines quickly. The €1.5k
|
||||
// repair cost is why the cash/rep baseline below is captured AFTER deactivateWorld, not before it.
|
||||
await activateWorld(page);
|
||||
try {
|
||||
// Fast-forward past both deadlines — the tick flips loaded → expired (slot kept).
|
||||
|
||||
Reference in New Issue
Block a user