Commit Graph

26 Commits

Author SHA1 Message Date
fireshaper 276cdbe611 Step 15.4: sim: tank, burn, and refuel
CI / check (push) Has been cancelled Details
Ships carry fuel: a leg burns from the tank at departure (no credits),
dispatch needs the fuel on board (not-enough-fuel), a leg's fuel cost
is fuel burned x the tank's average price, and Auto top-up refills on
landing with what the credits cover. The save gains tank fields (save
version 2, migration fills every tank). Market ships arrive full; the
deal's ships come with a quarter tank to keep the balance targets.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-10 01:32:09 -04:00
fireshaper d6bca5b1a2 Step 15.1: content: fixed positions
CI / check (push) Successful in 7m40s Details
Locations get fixed polar coordinates (the Moon as an offset from
Earth) and astronomy-engine is removed, so positions now come from
content. Ranges move into CR-015's reach bands for the fixed distances,
and the Lighter's price drops to 36,000 to keep the balance targets.
Date-sampled tests become yes/no.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-10 00:43:09 -04:00
fireshaper 0125af2086 Step 14.11: retire the server
CI / check (push) Successful in 6m6s Details
Removes apps/server (Fastify, Drizzle, pg-boss, Better Auth), the
development Postgres, the backup code routes, the web HTTP client and
the CI database service. Deployment is static hosting with Caddy. A
Playwright test checks that the production build loads only its own
files.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-09 23:50:05 -04:00
fireshaper f53ed1657b Step 14.9: local notifications
CI / check (push) Successful in 7m46s Details
The engine derives the notification schedule from the save after every
saved change (arrivals, rest ending, upgrades; same-minute events
combined) and replaces the platform's schedule. Capacitor
LocalNotifications on iOS/Android, a no-op on the web. Permission is
asked after the deal; Settings has an On/Off toggle.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-09 20:35:15 -04:00
fireshaper 4c165b9b16 Step 14.7: the client runs the game on the device
CI / check (push) Has been cancelled Details
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-09 20:25:00 -04:00
fireshaper b100e8664b Step 14.3: save storage with rotating backups
CI / check (push) Has been cancelled Details
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-09 19:16:39 -04:00
fireshaper 6cdffa2a43 Step 14.1: engine package and device clock
CI / check (push) Has been cancelled Details
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-09 19:11:20 -04:00
fireshaper 5c9534036f Step 13.1: containerize the server
CI / check (push) Has been cancelled Details
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-06 17:41:14 -04:00
fireshaper c02126c908 Step 12.1: balance simulation, economic distance and reachable first contact
CI / check (push) Successful in 6m17s Details
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-05 19:16:32 -04:00
fireshaper feb84aecaa Step 11.1: installable PWA
CI / check (push) Successful in 6m11s Details
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-05 17:53:56 -04:00
fireshaper 45eafb2503 Step 10E.1: fonts, theme tokens and space backdrop
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-03 22:24:29 -04:00
fireshaper f239f452e7 Step 10C.2: generate optimized map art with sharp
CI / check (push) Successful in 3m26s Details
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-03 19:07:40 -04:00
fireshaper 29290de478 Step 10.1: add PixiJS system map
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-03 07:06:55 -04:00
fireshaper acf550c901 Step 8.1: add Vite + React client shell
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-03 01:50:26 -04:00
fireshaper 9847a7ae18 Step 7.1: add pg-boss job queue
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-03 01:34:21 -04:00
fireshaper 768c893130 Step 5.5: add guest accounts
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-02 21:45:12 -04:00
fireshaper 5754b7ca25 Step 5.3: add database schema and migrations
CI / check (push) Successful in 1m9s Details
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-02 21:38:30 -04:00
fireshaper af849feea7 Step 5.1: add Fastify skeleton
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-02 21:35:06 -04:00
fireshaper f95acd06ba Step 4.1: define API data shapes
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-02 20:50:48 -04:00
fireshaper f33a9155cc Step 3.18: define sim public API and add coverage
CI / check (push) Successful in 38s Details
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-02 18:51:49 -04:00
fireshaper 301c0934e1 Step 3.3: add location positions
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-02 18:41:39 -04:00
fireshaper f44789878e Step 3.1: add game clock conversion
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-02 18:40:19 -04:00
fireshaper 8ff2df976e Step 2.1: define content schemas
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-02 17:41:05 -04:00
fireshaper 0b49a325c5 Step 1.3: add Vitest test runner
Root config runs each workspace package as a Vitest project. Adds a
trivial passing test in packages/sim.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-02 17:29:56 -04:00
fireshaper afa8eb7b8f Step 1.2: add ESLint and Prettier
Shared root config. sim and content forbid Math.random, Date.now and
argument-less new Date() to keep them pure.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-02 17:29:26 -04:00
fireshaper 66308e7cdc Step 1.1: create pnpm monorepo
pnpm workspace with apps/web, apps/server, packages/sim, packages/schema
and packages/content, each extending a strict tsconfig.base.json.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-02 17:28:27 -04:00