Commit Graph

100 Commits

Author SHA1 Message Date
fireshaper 63192f9129 Step 15.5: sim: stranding and emergency fuel
CI / check (push) Has been cancelled Details
The no-strand rule now asks whether the ship could leave the
destination on a full tank where fuel is sold, or on what is left
after the leg where it isn't. Emergency fuel is offered to an idle
ship that can't reach anywhere when the player can't afford the
shortfall: the cheapest leg's fuel at 2.5x the local price.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-10 01:37:05 -04:00
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 c627bb9954 Step 15.3: content: fuel
CI / check (push) Successful in 5m43s Details
Ships get a tank capacity and a burn rate instead of range and fuel
cost; locations get a fixed fuel price and a sellsFuel flag instead of
the launch cost multiplier. A leg burns burn rate x the economic
distance of (distance / origin factor), and reach is a full tank's
worth. Tanks are sized so every reach answer is unchanged.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-10 01:05:13 -04:00
fireshaper 0a1ca1d3ea Step 15.2: sim: static positions and distances
CI / check (push) Successful in 5m44s Details
Positions, distances, range checks, trip times, fuel and the no-strand
rule no longer take a time argument; the 48-hour no-strand margin goes
with it. Tests now check that a route's pay, trip time and fuel are the
same whenever it is offered or flown.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-10 00:54:57 -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 30aa4cd5bd Step 14.10: export and import save
CI / check (push) Successful in 7m40s Details
Export save turns the whole save into one code (gzip + base64url
behind a DEADHEAD1. prefix) to copy or share as a file; Import save
takes a pasted code or a file, migrates and validates it, and replaces
the company after confirmation. A bad code is refused and changes
nothing. These replace the backup code. Debug info now gives the save
id, save version and storage type.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-09 20:48:57 -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 e3829bb8a1 Developer tools for pilots, ships and discovery
CI / check (push) Successful in 7m29s Details
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-08 21:47:08 -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 9b45a239a5 Step 11.2: offline shell behaviour
CI / check (push) Successful in 6m11s Details
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-05 18:13:31 -04:00
fireshaper f78b488baa Step 10M.4: deal modal lists the Clipper and the veteran
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-05 11:57:45 -04:00
fireshaper 979a1ad1a8 Step 10M.2: goals for a Market purchase and a Priority delivery
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-05 11:43:38 -04:00
fireshaper b8ff9ba47a Step 10M.1: veteran skill and deal loan from content
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-05 11:34:23 -04:00
fireshaper 264a933703 Step 10L.10: Lighter and Clipper art
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-05 02:04:41 -04:00
fireshaper 05e7fbc535 Step 10L.9: stranding reason in the dispatch sheet and deadhead picker
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-05 01:57:12 -04:00
fireshaper 0658c9984d Step 10L.8: map reachability per origin
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-05 01:52:44 -04:00
fireshaper 750ce54b7d Step 10L.7: Market shows roles and reach
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-05 01:48:09 -04:00
fireshaper 8d8df71ba9 Step 10L.5: upgrade caps for the new lineup
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-05 01:38:50 -04:00
fireshaper c15b5ef74e Step 10K.11: developer tools in non-production builds
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-05 00:05:58 -04:00
fireshaper 5030341eb7 Step 10K.10: About section with version, build and debug info
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-05 00:00:37 -04:00
fireshaper 106d44d384 Step 10K.9: backup and restore screens
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-04 23:49:55 -04:00
fireshaper 29653e2fdc Step 10K.7: rename and start-over flows in Settings
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-04 23:36:35 -04:00
fireshaper bc29c515eb Step 10K.4: reset map view and show tips again
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-04 23:21:39 -04:00
fireshaper 621eecb737 Fix the header on phones: credits and clock no longer overlap
CI / check (push) Successful in 4m37s Details
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-04 23:17:41 -04:00
fireshaper 754242dde6 Step 10K.3: clock, countdown and reduced-motion settings applied everywhere
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-04 23:11:34 -04:00
fireshaper 74cc29c8e3 Step 10K.2: settings screen behind a header gear
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-04 23:01:02 -04:00
fireshaper c73c9a4116 Step 10K.1: device preferences store
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-04 22:57:11 -04:00
fireshaper f042555502 Step 10J.6: pilot share in the dispatch sheet and delivery summaries
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-04 22:23:17 -04:00
fireshaper 8cafa50027 Step 10J.5: the veteran in the deal modal and on the Pilots screen
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-04 22:14:16 -04:00
fireshaper 9eae5ae64d Step 10J.4: the veteran pilot comes with the deal
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-04 21:42:43 -04:00
fireshaper 8acc81bc10 Step 10J.3: goal 4 becomes flying a contract with the veteran
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-04 21:35:20 -04:00
fireshaper cb54165c90 Step 10J.2: profit-share pilot pay in resolution
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-04 21:28:56 -04:00
fireshaper 3bf8bc4eaa Step 10I.8: shop news in the away summary and on HQ
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-04 19:43:13 -04:00
fireshaper b5f2801076 Step 10I.7: effective ship stats across the client
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-04 19:38:51 -04:00
fireshaper e205194758 Step 10I.6: upgrade shop on the Fleet screen
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-04 19:34:31 -04:00
fireshaper c352936a09 Step 10I.4: upgrade tables, API ship fields and the start upgrade route
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-04 19:25:42 -04:00
fireshaper e924defb79 Step 10H.3: announce new contracts and tag them New
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-04 18:06:02 -04:00
fireshaper 66425753c4 Step 10G.10: delivery summaries name the good, mass and shipper
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-04 17:21:52 -04:00
fireshaper e96cd6ab2b Step 10G.9: Priority trip vs window in the dispatch sheet
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-04 17:20:17 -04:00
fireshaper 8945972372 Step 10G.8: contract cards headline the good, with class, Priority and too-slow chips
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-04 17:17:21 -04:00
fireshaper 5be66372d7 Step 10G.6: goods in API summaries, too-slow code and backfill migration
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-04 17:12:51 -04:00
fireshaper 13f5b04ffb Step 10G.2: contracts carry goods, shippers and Priority fields
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-04 16:59:00 -04:00
fireshaper 540690590c Logbook: show deadheads as an empty flight with fuel, not +0 cr
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-04 12:36:15 -04:00
fireshaper bd2d2df14d Step 10F.1: highlight jobs too heavy for your ships
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-04 12:15:04 -04:00
fireshaper 81e71e8436 Config: 10-minute board period and 10-hour rest
CI / check (push) Successful in 4m25s Details
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-04 00:13:49 -04:00
fireshaper 1daed1d251 Step 10E.3: HUD header, icon navigation and attention badges
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-03 22:32:38 -04:00
fireshaper 526ca138fc Step 10E.2: UI kit
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-03 22:27:36 -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