feat: v0.12.0 — contracts → packages: load/fly/abandon gameplay (ATR 72-600 capacity 6, manual flight to any airport, time-scaled abandon penalty 15–60%), one-time DB migration preserving wallet/clock; new endpoints /api/packages/:id/load|abandon + /api/planes/:planeId/fly

This commit is contained in:
2026-09-18 11:02:56 +00:00
parent 0208673da7
commit ab2e9fa54a
49 changed files with 2424 additions and 1409 deletions
+5 -9
View File
@@ -1,10 +1,6 @@
import { defineConfig } from '@playwright/test';
// Browsers run on the shared remote Playwright server (Docker, 192.168.1.4:3000);
// the app under test is always the prod build behind Traefik (docker compose).
// NOTE: never point this at a local `next dev` — Turbopack's HMR WS fails for
// non-loopback clients and the page renders blank; a second instance also splits state.
const remoteRunner = process.env.E2E_REMOTE === '1';
const remoteRunner = true;
if (!process.env.PW_TEST_CONNECT_WS_ENDPOINT) {
process.env.PW_TEST_CONNECT_WS_ENDPOINT = 'ws://192.168.1.4:3000/';
@@ -15,7 +11,7 @@ export default defineConfig({
// Serial execution: e2e/state.spec.ts restarts the compose container mid-run,
// which would break any map test running concurrently in another worker.
workers: 1,
timeout: 30_000,
timeout: 300_000,
retries: 1,
use: {
baseURL: process.env.E2E_BASE_URL ?? 'https://flight.dev.kkhost.pl',
@@ -25,8 +21,8 @@ export default defineConfig({
? undefined
: {
command: 'docker compose up -d --build',
url: 'https://flight.dev.kkhost.pl/api/airports',
url: 'https://flight.dev.kkhost.pl',
reuseExistingServer: true,
timeout: 300_000,
timeout: 600_000,
},
});
});