SirStone
  • Joined on 2025-05-04
SirStone commented on issue SirStone/SirRoboGarage#128 2026-08-30 11:50:55 +02:00
Implement server lifecycle manager (lazy singleton)

Dependency addition

Blocks: #130 (runBattle orchestrator), #134 (BattleRunner process lifecycle). Server must be running before either can operate.

SirStone commented on issue SirStone/SirRoboGarage#127 2026-08-30 11:50:54 +02:00
Define BattleResult type and server output parser

Dependency correction

Blocked by: #133 (not "nothing" as originally stated). The parser cannot be implemented until #133 defines the structured stdout output format from BattleRunner.java.

SirStone commented on issue SirStone/SirRoboGarage#126 2026-08-30 11:50:53 +02:00
Wayfinder: Shared integration test framework for garages

Dependency update

Implementation is tracked in child tickets #127–#134 (not #127–#132 as originally stated). #133 and #134 were added during spec grilling to cover Java-side modifications and…

SirStone commented on issue SirStone/SirRoboGarage#134 2026-08-30 11:46:18 +02:00
Implement BattleRunner Java process lifecycle in Nim framework

Spec addition from grilling

  • BattleRunner process completion timeout: 30s after battle should have ended.
  • Use defer for process cleanup.
  • Detect hung process via stdout inactivity…
SirStone commented on issue SirStone/SirRoboGarage#133 2026-08-30 11:46:17 +02:00
Modify BattleRunner.java to connect to external server and emit structured output

Spec addition from grilling

The structured stdout format is the contract between Java and Nim. Recommend JSON-lines, one JSON object per event:

  • {"event":"ready"} — server connected -…
SirStone commented on issue SirStone/SirRoboGarage#132 2026-08-30 11:46:14 +02:00
Write framework usage guide

Spec additions from grilling

  • Document that this is a local development tool (no CI support planned).
  • Document nim c compilation requirement (not nimble build).
  • Include troubleshooti…
SirStone commented on issue SirStone/SirRoboGarage#130 2026-08-30 11:46:12 +02:00
Implement runBattle() orchestrator

Spec additions from grilling

  • runBattle() must use defer blocks to clean up bot processes and BattleRunner process on any exception.
  • Overall timeout: 120s hard ceiling per…
SirStone commented on issue SirStone/SirRoboGarage#129 2026-08-30 11:46:11 +02:00
Implement bot compiler and launcher

Spec additions from grilling

  • Use nim c directly, NOT nimble build (nimble swallows compiler output, making errors hard to diagnose).
  • Compilation timeout: 30s per bot.
  • Must handle…
SirStone commented on issue SirStone/SirRoboGarage#128 2026-08-30 11:46:09 +02:00
Implement server lifecycle manager (lazy singleton)

Spec additions from grilling

  • Server startup timeout: 15s default. If server doesn't print ready signal within this, raise error.
  • Use addExitProc to kill server process on program…
SirStone commented on issue SirStone/SirRoboGarage#126 2026-08-30 11:46:07 +02:00
Wayfinder: Shared integration test framework for garages

Grilling resolutions (from spec review)

Resolved

  • Port wiring: BattleRunner handles bot-to-server connection internally. Nim framework only needs to pass server URL to the modified…
SirStone opened issue SirStone/SirRoboGarage#134 2026-08-30 11:38:46 +02:00
Implement BattleRunner Java process lifecycle in Nim framework
SirStone opened issue SirStone/SirRoboGarage#133 2026-08-30 11:38:43 +02:00
Modify BattleRunner.java to connect to external server and emit structured output
SirStone opened issue SirStone/SirRoboGarage#132 2026-08-30 10:22:10 +02:00
Write framework usage guide
SirStone opened issue SirStone/SirRoboGarage#131 2026-08-30 10:22:08 +02:00
Create example integration test in one garage
SirStone opened issue SirStone/SirRoboGarage#130 2026-08-30 10:22:06 +02:00
Implement runBattle() orchestrator
SirStone opened issue SirStone/SirRoboGarage#129 2026-08-30 10:22:04 +02:00
Implement bot compiler and launcher
SirStone opened issue SirStone/SirRoboGarage#128 2026-08-30 10:22:03 +02:00
Implement server lifecycle manager (lazy singleton)
SirStone opened issue SirStone/SirRoboGarage#127 2026-08-30 10:22:01 +02:00
Define BattleResult type and server output parser
SirStone opened issue SirStone/SirRoboGarage#126 2026-08-30 10:21:57 +02:00
Wayfinder: Shared integration test framework for garages
SirStone commented on issue SirStone/SirRoboGarage#125 2026-08-29 20:17:46 +02:00
GMM-based GA warm-starting from battle history

Implemented in commit a730a9e

Summary: Added GMM-based GA warm-starting from battle history. initPopulationSeeded now seeds PopSize/4 individuals from historical enemy movement patterns…