kamilkrzywda
ca590c7b53
test(e2e): pin NEXT TURN full-width and no-overlap with the active-tasks strip ( #52 )
2026-10-06 12:51:11 +00:00
kamilkrzywda
bb44530649
fix(ui): move NEXT TURN into the right pane — full width, no longer overlapped ( #52 )
2026-10-06 12:51:11 +00:00
kamilkrzywda
311eb5c713
Merge pull request 'feat: map spread limit — random 1-4 legs + loop-closing routes ( #51 , v0.13.0)' ( #53 ) from feat/map-spread-limit into master
CI / build + unit + e2e (push) Successful in 3m15s
v0.13.0
2026-10-06 14:40:01 +02:00
kamilkrzywda
d20037762d
chore: bump to v0.13.0 — #51 map spread limit + loop-closing routes
CI / build + unit + e2e (pull_request) Successful in 3m15s
2026-10-06 12:18:38 +00:00
kamilkrzywda
ab22a7e68b
save/e2e: #51 — wire generateRing attach into resolveJumpTask + spread-limit e2e
...
- resolveJumpTask: build existingEdgeKeys from all jump routes (both
endpoints in the save's system set), pass all systems except the
target as attachCandidates, insert closing routes for each attach.
- save.test.ts: jump test now expects 1–4 fresh systems (was pinned
to exactly 4); A/B snapshot test stays green (both paths share the
same resolveJumpTask code).
- e2e/helpers.ts: update stale comment ('4 fresh neighbours' →
'1–4 new systems').
- e2e/smoke.spec.ts: new test verifying 1–4 mints, all undiscovered,
each routed to the target, and BFS connectivity of the full graph.
2026-10-06 12:18:33 +00:00
kamilkrzywda
90de8818f8
world: #51 — ringEdges small-n fix + generateRing seeded 1–4 legs with attach
...
- ringEdges: n=0 → [], n=1 → [[0,1]], n=2 → [[0,1],[0,2],[1,2]];
n≥3 wheel is byte-identical to the legacy output.
- generateRing: new params attachCandidates, existingEdgeKeys, anchorId;
legCount is seeded-random in [EXPAND_MIN, EXPAND_MAX] (1–4);
each leg may attach a known system (closing a loop) with prob ATTACH_PROB
instead of minting; frontier guarantee converts the last-drawn attach
to a mint when all legs attached.
- RingRegion gains attaches: number[] (candidate indices attached).
- Remove the EXPAND_RING constant (replaced by EXPAND_MIN/EXPAND_MAX).
2026-10-06 12:18:27 +00:00
kamilkrzywda
a593cd04cd
Merge pull request 'feat: trait outcome effects — FINDS HIDDEN THINGS + TALKS TO ANYONE ( #43 , v0.12.0)' ( #50 ) from feat/trait-outcome-effects into master
CI / build + unit + e2e (push) Successful in 3m11s
v0.12.0
2026-10-04 23:24:30 +02:00
kamilkrzywda
352ef31625
test(game): pin RECRUIT_CHANCE_BASE === CREW_CHANCE so the no-trait recruit path can't silently diverge ( #43 )
CI / build + unit + e2e (pull_request) Successful in 3m3s
2026-10-04 21:20:27 +00:00
kamilkrzywda
9af7d21d93
chore(release): v0.12.0 — trait outcome effects ( #43 )
2026-10-04 21:04:46 +00:00
kamilkrzywda
7d5a561882
docs: trait outcome effects implementation plan ( #43 )
2026-10-04 21:04:28 +00:00
kamilkrzywda
39920b3e05
feat(game): trait outcome effects — extra haul item + recruit chance ( #43 )
2026-10-04 21:04:24 +00:00
kamilkrzywda
92c2c26047
Merge pull request 'feat: skill progression & specialisation ( #45 , v0.11.0)' ( #49 ) from feat/skill-progression into master
CI / build + unit + e2e (push) Successful in 3m2s
v0.11.0
2026-10-04 05:52:27 +02:00
kamilkrzywda
b8a998dcbb
chore(release): v0.11.0 — skill progression & specialisation ( #45 )
CI / build + unit + e2e (pull_request) Successful in 2m52s
2026-10-04 03:49:06 +00:00
kamilkrzywda
1a36160392
feat(ui): skill levels + titles on CREW tab and team-builder ( #45 )
CI / build + unit + e2e (pull_request) Successful in 3m7s
2026-10-04 03:22:51 +00:00
kamilkrzywda
9d1a8e9d89
fix(game): grantXp event fires only on level transition, not while at-band ( #45 )
CI / build + unit + e2e (pull_request) Successful in 3m8s
2026-10-04 02:50:47 +00:00
kamilkrzywda
f3751b4747
feat(game): skill XP on task completion + power bands in duration ( #45 )
CI / build + unit + e2e (pull_request) Successful in 2m48s
2026-10-04 02:34:56 +00:00
kamilkrzywda
5bc411cb76
fix(db): consistent starting xp in crew_skills seeder ( #45 )
2026-10-04 02:19:36 +00:00
kamilkrzywda
7f2121a717
feat(game): skills.ts — XP, levels, power bands, titles ( #45 )
CI / build + unit + e2e (pull_request) Successful in 2m53s
2026-10-04 01:33:05 +00:00
kamilkrzywda
449d4b9895
feat(db): crew_skills table + role-based starting levels — schema v8 ( #45 )
CI / build + unit + e2e (pull_request) Successful in 2m48s
2026-10-04 00:56:30 +00:00
kamilkrzywda
678cd48a94
Merge pull request 'fix: hydration-safe banner clock ( #44 , v0.10.1)' ( #47 ) from fix/hydration-jump-dispatch into master
CI / build + unit + e2e (push) Successful in 3m32s
v0.10.1
2026-10-04 01:52:28 +02:00
kamilkrzywda
e792c8a06c
fix(ui): team builder — coalesce the queued-jump block to null so an empty queue no longer disables JUMP dispatch ( #44 )
CI / build + unit + e2e (pull_request) Successful in 2m38s
2026-10-03 23:42:32 +00:00
kamilkrzywda
8f018a6ee9
chore(release): v0.10.1 — hydration-safe banner clock ( #44 )
CI / build + unit + e2e (pull_request) Failing after 33m24s
2026-10-03 18:36:40 +00:00
kamilkrzywda
f1633eb518
fix(ui): hydration-safe banner clock — no build-time clock in the prerendered banner ( #44 , v0.10.1)
2026-10-03 18:36:19 +00:00
kamilkrzywda
1993623548
docs(agents): next.js agent rules block (added by next dev)
2026-10-03 18:36:15 +00:00
kamilkrzywda
9020a773e1
Merge pull request 'feat: crew-driven actions — queue + tick engine, NEXT TURN, team builder, task strip ( #44 , v0.10.0)' ( #46 ) from feat/crew-driven-actions into master
CI / build + unit + e2e (push) Failing after 33m2s
CI / build + unit + e2e (pull_request) Failing after 32m56s
v0.10.0
2026-10-03 03:07:42 +02:00
kamilkrzywda
bf5ac8c8a8
chore(release): v0.10.0 — crew-driven actions engine ( #44 )
CI / build + unit + e2e (pull_request) Failing after 33m9s
2026-10-03 00:57:43 +00:00
kamilkrzywda
babae7c392
docs: approved crew-driven-actions spec + implementation plan ( #44 )
2026-10-03 00:57:11 +00:00
kamilkrzywda
a0307e4ccd
fix(e2e): task-10 review fixes — Nth tick, retry-safe preambles, queue-DTO shape ( #44 )
CI / build + unit + e2e (pull_request) Failing after 34m10s
2026-10-03 00:35:10 +00:00
kamilkrzywda
1ddb8ad469
test(e2e): rework the suite to the queue + NEXT TURN model ( #44 )
2026-10-03 00:05:18 +00:00
kamilkrzywda
b51bde3c25
test(e2e): rework the existing action tests to the queue + NEXT TURN model (2/3) ( #44 )
2026-10-02 23:45:11 +00:00
kamilkrzywda
53cf1bdacc
test(e2e): rework shared helpers + state spec to the queue + NEXT TURN model (1/3) ( #44 )
2026-10-02 23:11:37 +00:00
kamilkrzywda
f1b5645e9d
feat(ui): active-tasks strip bottom-left — active first, pending dimmed ( #44 )
2026-10-02 21:02:37 +00:00
kamilkrzywda
1cabea7972
fix(ui): team builder lead rule mirrors the route busy check (helper-on-PENDING is not a valid lead) ( #44 )
2026-10-02 20:55:26 +00:00
kamilkrzywda
a199b64348
feat(ui): team builder — lead + helpers with live duration preview, wired into the action panels ( #44 )
2026-10-02 20:34:14 +00:00
kamilkrzywda
07c1508999
feat(ui): NEXT TURN button (bottom-right) + turn counter; empty queue is a free skip ( #44 )
2026-10-02 20:04:38 +00:00
kamilkrzywda
1084f4e099
fix(api): guard task-queue name resolution against corrupted rows ( #44 )
2026-10-02 19:58:40 +00:00
kamilkrzywda
84d1aa8122
feat(api): world/system/crew snapshots expose the active + pending task queue ( #44 )
2026-10-02 19:42:19 +00:00
kamilkrzywda
178de6e4fb
feat(api): POST /api/turn ticks the queue one turn; an empty queue is a free skip ( #44 )
2026-10-02 19:12:51 +00:00
kamilkrzywda
03b8b661f6
feat(api): ship + research endpoints queue tasks with lead + helpers; mission accept is instant and free ( #44 )
CI / build + unit + e2e (pull_request) Failing after 3m58s
2026-10-02 18:36:14 +00:00
kamilkrzywda
4e312d054f
feat(api): jump + explore endpoints queue tasks with lead + helpers instead of resolving instantly ( #44 )
2026-10-02 15:47:31 +00:00
kamilkrzywda
d7faf739a9
feat(game): tickTurn + runTurn — the turn tick: decrement, resolve, FIFO auto-start, one turn per call ( #44 )
2026-10-02 14:30:49 +00:00
kamilkrzywda
bbcd77c41b
feat(game): per-type resolvers — jump/explore/ship/research effect extraction for task resolution ( #44 )
2026-10-02 13:55:32 +00:00
kamilkrzywda
d4491e082e
feat(game): queueTask — queue-time validation, cost deduction, ACTIVE/PENDING row ( #44 )
2026-10-02 13:25:25 +00:00
kamilkrzywda
6c51c3cec8
feat(game): tasks table + schema v7 backfill, admin registry ( #44 )
2026-10-02 13:08:53 +00:00
kamilkrzywda
f52a59c5fc
feat(game): crew-costs balance module + computeDuration duration model ( #44 )
2026-10-02 12:58:57 +00:00
kamilkrzywda
2a8cb4da06
Merge pull request 'v0.9.12 — admin button + direct DB table CRUD, no auth for now ( #38 )' ( #42 ) from admin-db-crud into master
CI / build + unit + e2e (push) Successful in 2m41s
v0.9.12
2026-09-29 23:53:45 +02:00
kamilkrzywda
0d2370850f
feat(admin): DB CRUD panel + /api/admin endpoints ( #38 )
...
CI / build + unit + e2e (pull_request) Successful in 3m47s
- ADMIN button in the mission-control header opens a table picker + row grid with add/edit/delete (components/admin-panel.tsx), deliberately unauthenticated by explicit request
- /api/admin/tables and /api/admin/tables/{name}/rows driven off a name→table registry built from lib/db/schema.ts (lib/db/admin.ts) — no per-table code; 404 unknown table, 400 malformed payload, 409 constraint violation
- OpenAPI spec updated for all four admin operations + Admin* schemas
- unit: lib/db/admin.test.ts (registry, CRUD round-trips, composite PKs, error mapping); e2e: read-only admin.spec.ts
2026-09-29 21:48:15 +00:00
kamilkrzywda
be11aac356
Merge pull request 'v0.9.11 — fix #35 e2e spec (tab restore + strict mode), test-only' ( #41 ) from fix-navai-e2e into master
CI / build + unit + e2e (push) Successful in 2m42s
v0.9.11
2026-09-29 17:44:09 +02:00
kamilkrzywda
fdc5624b0c
fix(e2e): make the #35 NAV AI spec survive tab restore and multi-match sublabels
CI / build + unit + e2e (pull_request) Successful in 3m7s
2026-09-29 15:37:45 +00:00
kamilkrzywda
ff4ced9d71
Merge pull request 'v0.9.11 — NAVIGATION AI unlocks two-hop jumps ( #35 )' ( #40 ) from navigation-ai into master
CI / build + unit + e2e (push) Failing after 2m40s
2026-09-29 16:57:43 +02:00