Point the Overtime fixtures comment at the real solver: GAMES-NEW.md Appendix A
and its TypeScript port in server/src/engines/defuse.ts, not the missing
tools/reference/overtime_solver.py.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
2026-10-14 08:48:20 +02:00
co-authored by Claude Opus 5.5
parent 6669be11e5
commit db2653c1ab
6 changed files with 11 additions and 11 deletions
+1 -1
View File
@@ -1,6 +1,6 @@
{ {
"name": "@two-keys/client", "name": "@two-keys/client",
"version": "1.2.0", "version": "1.2.1",
"private": true, "private": true,
"type": "module", "type": "module",
"scripts": { "scripts": {
+2 -2
View File
@@ -252,8 +252,8 @@ manual: |
| 2 | Yellow | Green | Blue | Red | | 2 | Yellow | Green | Blue | Red |
# ---------- Solver fixtures (MUST pass as unit tests) ---------- # ---------- Solver fixtures (MUST pass as unit tests) ----------
# Generated from the reference solver in tools/reference/overtime_solver.py, which implements # Generated from the reference solver (GAMES-NEW.md, Appendix A), which implements the manual
# the manual above exactly. Port that solver to TypeScript in server/src/engines/defuse.ts. # above exactly. Its TypeScript port is the `overtime` ruleset in server/src/engines/defuse.ts.
fixtures: fixtures:
wires: wires:
- {"serial": "TK4L82", "batteries": 1, "indicators": {"lit": [], "unlit": []}, "wires": ["red", "blue", "yellow"], "expect": {"type": "cut", "index": 2}} - {"serial": "TK4L82", "batteries": 1, "indicators": {"lit": [], "unlit": []}, "wires": ["red", "blue", "yellow"], "expect": {"type": "cut", "index": 2}}
+5 -5
View File
@@ -1,12 +1,12 @@
{ {
"name": "two-keys", "name": "two-keys",
"version": "1.2.0", "version": "1.2.1",
"lockfileVersion": 3, "lockfileVersion": 3,
"requires": true, "requires": true,
"packages": { "packages": {
"": { "": {
"name": "two-keys", "name": "two-keys",
"version": "1.2.0", "version": "1.2.1",
"workspaces": [ "workspaces": [
"shared", "shared",
"server", "server",
@@ -23,7 +23,7 @@
}, },
"client": { "client": {
"name": "@two-keys/client", "name": "@two-keys/client",
"version": "1.2.0", "version": "1.2.1",
"dependencies": { "dependencies": {
"@two-keys/shared": "*", "@two-keys/shared": "*",
"framer-motion": "^11.11.0", "framer-motion": "^11.11.0",
@@ -6847,7 +6847,7 @@
}, },
"server": { "server": {
"name": "@two-keys/server", "name": "@two-keys/server",
"version": "1.2.0", "version": "1.2.1",
"dependencies": { "dependencies": {
"@two-keys/shared": "*", "@two-keys/shared": "*",
"express": "^4.21.0", "express": "^4.21.0",
@@ -7332,7 +7332,7 @@
}, },
"shared": { "shared": {
"name": "@two-keys/shared", "name": "@two-keys/shared",
"version": "1.2.0", "version": "1.2.1",
"devDependencies": { "devDependencies": {
"vitest": "^2.1.0" "vitest": "^2.1.0"
} }
+1 -1
View File
@@ -1,7 +1,7 @@
{ {
"name": "two-keys", "name": "two-keys",
"private": true, "private": true,
"version": "1.2.0", "version": "1.2.1",
"description": "Co-op mystery games for couples", "description": "Co-op mystery games for couples",
"workspaces": [ "workspaces": [
"shared", "shared",
+1 -1
View File
@@ -1,6 +1,6 @@
{ {
"name": "@two-keys/server", "name": "@two-keys/server",
"version": "1.2.0", "version": "1.2.1",
"private": true, "private": true,
"type": "module", "type": "module",
"scripts": { "scripts": {
+1 -1
View File
@@ -1,6 +1,6 @@
{ {
"name": "@two-keys/shared", "name": "@two-keys/shared",
"version": "1.2.0", "version": "1.2.1",
"private": true, "private": true,
"type": "module", "type": "module",
"main": "./src/index.ts", "main": "./src/index.ts",