diff --git a/.clue/id-ledger.yaml b/.clue/id-ledger.yaml index 843b482..5dc5cef 100644 --- a/.clue/id-ledger.yaml +++ b/.clue/id-ledger.yaml @@ -166,6 +166,12 @@ events: - {id: AN-015, kind: numeric, state: live, prefix: AN, component: "15"} - {id: FIO-005, kind: numeric, state: reserved, prefix: FIO, component: "5"} - {id: FIO-005, kind: numeric, state: live, prefix: FIO, component: "5"} + - {id: CH-017, kind: numeric, state: reserved, prefix: CH, component: "17"} + - {id: TASKS-010, kind: numeric, state: reserved, prefix: TASKS, component: "10"} + - {id: OQ-008, kind: numeric, state: reserved, prefix: OQ, component: "8"} + - {id: CH-017, kind: numeric, state: live, prefix: CH, component: "17"} + - {id: TASKS-010, kind: numeric, state: live, prefix: TASKS, component: "10"} + - {id: OQ-008, kind: numeric, state: live, prefix: OQ, component: "8"} high-water: - {id: ADR-002, kind: numeric, state: reserved, prefix: ADR, component: "2"} - {id: AN-014, kind: numeric, state: reserved, prefix: AN, component: "14"} diff --git a/changes/CH-017-complete-m006-parity-sweep/open-questions.md b/changes/CH-017-complete-m006-parity-sweep/open-questions.md new file mode 100644 index 0000000..cd76cb3 --- /dev/null +++ b/changes/CH-017-complete-m006-parity-sweep/open-questions.md @@ -0,0 +1,11 @@ +--- +id: OQ-008 +type: open-question +status: active +links: [CH-017] +title: CH-017 open questions +--- + +# Open questions + +No blocking question is known at proposal time. Any question that would change the accepted comparison shape, collection boundary, repair obligation, or evidence interpretation will be recorded here and paused for human resolution before implementation continues. diff --git a/changes/CH-017-complete-m006-parity-sweep/proposal.md b/changes/CH-017-complete-m006-parity-sweep/proposal.md new file mode 100644 index 0000000..efe8ca1 --- /dev/null +++ b/changes/CH-017-complete-m006-parity-sweep/proposal.md @@ -0,0 +1,15 @@ +--- +id: CH-017 +type: change +status: open +links: [P-001, CH-016] +title: Continue the all-division versioned parity campaign +--- + +# Proposal + +The merged CH-016 checkpoint established the fixed melee comparison, completed official team coverage, and added diagnosis and containment for the first melee error clusters, but M-006 remains open. The tracked registry still contains unresolved cases and does not yet establish complete parity across the discoverable roborumble and melee collections. + +This change continues from that accepted checkpoint. It will run the remaining official-parameter cases with the read-only collection intact, diagnose every unresolved outcome, implement bridge-owned repairs where the evidence supports them, and append focused retests with complete artifact manifests. It will update the permanent plan, CAP-005 evidence/design bookkeeping, generated registry report, and changelog only to the extent the resulting registry proves those claims. + +The change proceeds under classic Robocode as the behavioural reference, PDR-003's append-only registry rules, and PDR-004's pinned melee opponent pool. It does not rewrite or replace prior observations or collection jars. diff --git a/changes/CH-017-complete-m006-parity-sweep/tasks.md b/changes/CH-017-complete-m006-parity-sweep/tasks.md new file mode 100644 index 0000000..354a590 --- /dev/null +++ b/changes/CH-017-complete-m006-parity-sweep/tasks.md @@ -0,0 +1,17 @@ +--- +id: TASKS-010 +type: tasks +status: open +links: [CH-017] +title: CH-017 implementation tasks +--- + +# Tasks + +- [x] Confirm the post-CH-016 registry frontier, discoverable collection, official parameters, pinned melee pool, and available engine artifacts; serves `SCORE-006`. +- [x] Correct normal checkpoint synchronization to append only subjects completed in the current invocation, and add regression evidence preventing replay of accumulated progress; serves `HARN-001` and `SCORE-006`. +- [ ] Run the remaining official-parameter roborumble and melee subjects in bounded checkpoints, preserving every completed observation and its artifact manifest in the tracked registry; serves `SCORE-001` and `SCORE-006`. +- [ ] Diagnose every unresolved bridge-versus-classic error, completion, hang, or confirmed score gap, including opponent-contaminated melee outcomes, and record each diagnosis without rewriting earlier evidence; serves `SCORE-001`. +- [ ] Implement and verify each bridge-owned repair supported by the diagnoses, including the classic five-open-stream limit and legacy team-message serialization failure shape where still applicable; serves `SCORE-001`. +- [ ] Run a focused retest for every named repair or record the external blocker, then sync the retest observations and generated report; serves `SCORE-001`. +- [ ] Update the permanent plan, CAP-005 evidence/design bookkeeping, generated indexes, and user-facing changelog to reflect only what the completed registry proves; serves `P-001#M-006`, `SCORE-001`, and `SCORE-006`. diff --git a/compat-test/README.md b/compat-test/README.md index 1b6aaf8..507c210 100644 --- a/compat-test/README.md +++ b/compat-test/README.md @@ -31,7 +31,8 @@ the failure. JDK; override with `--rc-java` or `COMPAT_RC_JAVA`. The Tank Royale side is unaffected. - Robot collection at `C:\Code\LiteRumble robots` with `roborumble`, `meleerumble`, `teamrumble` subdirectories of `.jar` files. -- Classic Robocode installation at `C:\robocode` (1.10.3 tested). +- Classic Robocode installation at `C:\robocode`; LiteRumble currently accepts client versions + 1.10.3, 1.11.0, and 1.11.1, and the harness records and validates the installed version. - Built artifacts (all present after building the respective repos): - Tank Royale runner fat jar: `C:\Code\tank-royale\runner\examples\lib\robocode-tankroyale-runner.jar` - Bridge adapter: `robocode-api\build\libs\robocode-api-0.5.0.jar` (this repo, `gradlew :robocode-api:build`) diff --git a/compat-test/RcBattleWorker.java b/compat-test/RcBattleWorker.java index 2059098..2ee5cf5 100644 --- a/compat-test/RcBattleWorker.java +++ b/compat-test/RcBattleWorker.java @@ -344,11 +344,13 @@ static String write(Object value) { private static void writeValue(StringBuilder sb, Object value) { if (value == null) { sb.append("null"); - } else if (value instanceof String s) { + } else if (value instanceof String) { + String s = (String) value; sb.append('"').append(escape(s)).append('"'); } else if (value instanceof Number || value instanceof Boolean) { sb.append(value); - } else if (value instanceof Map map) { + } else if (value instanceof Map) { + Map map = (Map) value; sb.append('{'); boolean first = true; for (Map.Entry e : map.entrySet()) { @@ -358,7 +360,8 @@ private static void writeValue(StringBuilder sb, Object value) { writeValue(sb, e.getValue()); } sb.append('}'); - } else if (value instanceof Iterable it) { + } else if (value instanceof Iterable) { + Iterable it = (Iterable) value; sb.append('['); boolean first = true; for (Object o : it) { @@ -377,21 +380,21 @@ private static String escape(String s) { for (int i = 0; i < s.length(); i++) { char c = s.charAt(i); switch (c) { - case '"' -> sb.append("\\\""); - case '\\' -> sb.append("\\\\"); - case '\n' -> sb.append("\\n"); - case '\r' -> sb.append("\\r"); - case '\t' -> sb.append("\\t"); - case '\b' -> sb.append("\\b"); - case '\f' -> sb.append("\\f"); - default -> { + case '"': sb.append("\\\""); break; + case '\\': sb.append("\\\\"); break; + case '\n': sb.append("\\n"); break; + case '\r': sb.append("\\r"); break; + case '\t': sb.append("\\t"); break; + case '\b': sb.append("\\b"); break; + case '\f': sb.append("\\f"); break; + default: if (c < 0x20) { sb.append(String.format("\\u%04x", (int) c)); } else { sb.append(c); } + break; } - } } return sb.toString(); } diff --git a/compat-test/TrBattleWorker.java b/compat-test/TrBattleWorker.java index f681463..6ec2706 100644 --- a/compat-test/TrBattleWorker.java +++ b/compat-test/TrBattleWorker.java @@ -269,11 +269,13 @@ static String write(Object value) { private static void writeValue(StringBuilder sb, Object value) { if (value == null) { sb.append("null"); - } else if (value instanceof String s) { + } else if (value instanceof String) { + String s = (String) value; sb.append('"').append(escape(s)).append('"'); } else if (value instanceof Number || value instanceof Boolean) { sb.append(value); - } else if (value instanceof Map map) { + } else if (value instanceof Map) { + Map map = (Map) value; sb.append('{'); boolean first = true; for (Map.Entry e : map.entrySet()) { @@ -283,7 +285,8 @@ private static void writeValue(StringBuilder sb, Object value) { writeValue(sb, e.getValue()); } sb.append('}'); - } else if (value instanceof Iterable it) { + } else if (value instanceof Iterable) { + Iterable it = (Iterable) value; sb.append('['); boolean first = true; for (Object o : it) { @@ -302,21 +305,21 @@ private static String escape(String s) { for (int i = 0; i < s.length(); i++) { char c = s.charAt(i); switch (c) { - case '"' -> sb.append("\\\""); - case '\\' -> sb.append("\\\\"); - case '\n' -> sb.append("\\n"); - case '\r' -> sb.append("\\r"); - case '\t' -> sb.append("\\t"); - case '\b' -> sb.append("\\b"); - case '\f' -> sb.append("\\f"); - default -> { + case '"': sb.append("\\\""); break; + case '\\': sb.append("\\\\"); break; + case '\n': sb.append("\\n"); break; + case '\r': sb.append("\\r"); break; + case '\t': sb.append("\\t"); break; + case '\b': sb.append("\\b"); break; + case '\f': sb.append("\\f"); break; + default: if (c < 0x20) { sb.append(String.format("\\u%04x", (int) c)); } else { sb.append(c); } + break; } - } } return sb.toString(); } diff --git a/compat-test/compat_test.py b/compat-test/compat_test.py index 90091e7..3c87d3e 100644 --- a/compat-test/compat_test.py +++ b/compat-test/compat_test.py @@ -110,6 +110,11 @@ def local_bot_api_jar(): ) RC_JAVA_MAX_FEATURE = 23 # the last release that still allowed a SecurityManager +# LiteRumble currently accepts these classic Robocode client versions. Keep this +# list aligned with robo-code/literumble/structures.py; the collection is ranked +# by the classic client, so an unrecognised install must not create evidence. +LITERUMBLE_ALLOWED_ROBOCODE_CLIENTS = ("1.10.3", "1.11.0", "1.11.1") + STATE_FILE = BASE_DIR / "test_progress.json" REPORT_FILE = BASE_DIR / "compatibility_report.md" ERRORS_DIR = BASE_DIR / "errors" @@ -305,6 +310,49 @@ def resolve_rc_java(opts): return best[1] if best else None +def resolve_robocode_version(robocode_home): + """Return the classic Robocode release installed at *robocode_home*. + + The release notes are the authoritative version marker in a normal install. + A uniquely versioned engine library is a fallback for stripped-down installs. + """ + root = Path(robocode_home) + versions_file = root / "versions.md" + try: + text = versions_file.read_text(encoding="utf-8") + except (OSError, UnicodeError): + text = "" + match = re.search(r"(?m)^## Version\s+([^\s(]+)", text) + if match: + return match.group(1) + + versions = set() + for jar in (root / "libs").glob("robocode.*-*.jar"): + match = re.search(r"-(\d+(?:\.\d+)+)\.jar$", jar.name) + if match: + versions.add(match.group(1)) + return next(iter(versions)) if len(versions) == 1 else None + + +def robocode_version_error(robocode_home, version=None): + """Return a friendly validation error, or None for a LiteRumble client.""" + version = version or resolve_robocode_version(robocode_home) + if version is None: + return (f"classic Robocode version could not be determined at {robocode_home}; " + "refusing to create unpinned LiteRumble evidence") + if version not in LITERUMBLE_ALLOWED_ROBOCODE_CLIENTS: + allowed = ", ".join(LITERUMBLE_ALLOWED_ROBOCODE_CLIENTS) + return (f"classic Robocode {version} is not in LiteRumble's allowed client list " + f"({allowed}); use one of those versions for comparable evidence") + return None + + +def validate_robocode_version(opts): + """Resolve and validate the classic client, retaining it on the options object.""" + opts.robocode_version = resolve_robocode_version(opts.robocode_home) + return robocode_version_error(opts.robocode_home, opts.robocode_version) + + def kill_process_tree(proc: subprocess.Popen): """Kills a process and all of its children (bot JVMs, embedded server, booter).""" if proc.poll() is not None: @@ -457,6 +505,8 @@ def attach_error_signatures(result): def registry_manifest(opts): """Pins the artifacts that produced a registry observation.""" manifest = { + "robocode_version": getattr(opts, "robocode_version", None) + or resolve_robocode_version(opts.robocode_home), "bridge_commit": subprocess.run( ["git", "rev-parse", "HEAD"], cwd=BASE_DIR.parent, capture_output=True, text=True, check=False).stdout.strip() or None, @@ -694,8 +744,19 @@ def team_member_dirs(team_dir: Path): """Returns the generated sibling directories named by a team boot entry.""" config = team_dir / f"{team_dir.name}.json" try: - data = json.loads(config.read_text(encoding="utf-8")) - except (OSError, json.JSONDecodeError): + text = config.read_text(encoding="utf-8") + except UnicodeDecodeError: + # Legacy robot metadata can contain Windows-1252 author names even though the + # wrapper's JSON structure and member names are otherwise ordinary text. + try: + text = config.read_text(encoding="cp1252") + except (OSError, UnicodeError): + return [] + except OSError: + return [] + try: + data = json.loads(text) + except json.JSONDecodeError: return [] members = data.get("teamMembers") if not isinstance(members, list): @@ -1107,6 +1168,9 @@ def check_prerequisites(opts): ]: if not Path(path).exists(): problems.append(f" - {label} not found: {path}") + version_error = validate_robocode_version(opts) + if version_error: + problems.append(f" - {version_error}") if shutil.which("java") is None: problems.append(" - 'java' not found on PATH (JDK 17+ required)") if "meleerumble" in opts.collections: @@ -1792,6 +1856,10 @@ def main(): return 0 if opts.sync_registry: + version_error = validate_robocode_version(opts) + if version_error: + print(version_error, file=sys.stderr) + return 2 added = sync_parity_registry(state, opts) print(f"Parity registry synchronized: {added} observation(s) added.") return 0 @@ -1823,6 +1891,7 @@ def main(): f"{len(todo)} to test.") tested = 0 + checkpoint_state = {"robots": {}} session_started = time.time() try: for collection, jar in todo: @@ -1866,6 +1935,7 @@ def main(): } if retest: state["robots"][key]["retest"] = retest + checkpoint_state["robots"][key] = state["robots"][key] save_state(state) regenerate_report(state) tested += 1 @@ -1903,6 +1973,7 @@ def main(): } if retest: state["robots"][key]["retest"] = retest + checkpoint_state["robots"][key] = state["robots"][key] save_state(state) regenerate_report(state) tested += 1 @@ -1917,12 +1988,12 @@ def main(): print("\nInterrupted — progress saved. Re-run to resume.", file=sys.stderr) save_state(state) regenerate_report(state) - sync_parity_registry(state, opts) + sync_parity_registry(checkpoint_state, opts) return 130 save_state(state) regenerate_report(state) - sync_parity_registry(state, opts) + sync_parity_registry(checkpoint_state, opts) elapsed_min = (time.time() - session_started) / 60 print(f"\nDone. Tested {tested} robots in {elapsed_min:.1f} min. " f"Report: {REPORT_FILE}") diff --git a/compat-test/parity-registry.json b/compat-test/parity-registry.json index 2a88295..d290d3a 100644 --- a/compat-test/parity-registry.json +++ b/compat-test/parity-registry.json @@ -36158,7 +36158,7 @@ "key": "roborumble/AD.CodaFirst_1.1.jar", "kind": "robot" }, - "latest_observation": "c64fb0b475ea6e81", + "latest_observation": "bf7472d00df944d2", "observations": [ { "classic": { @@ -36235,6 +36235,157 @@ ], "skipped": null } + }, + { + "classic": { + "elapsed": 2.2, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 12689.0, + "scores": [ + 6300.0, + 6389.0 + ], + "selected": "AD.CodaFirst 1.1" + }, + "completed_at": "2026-09-11T18:00:52Z", + "confirmation": null, + "delta_pct": -46.2, + "id": "68ede0a0db58b593", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "AD.CodaFirst 1.1", + "division": "roborumble", + "jar": "AD.CodaFirst_1.1.jar", + "jar_sha256": "140825976d19ac8cbbf3a92040a9bc8568acb15933f6888cd0adce705497421f", + "key": "roborumble/AD.CodaFirst_1.1.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (score)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 18.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 6830.0, + "scores": [ + 3488.0, + 3342.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 2.3, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 12758.0, + "scores": [ + 6388.0, + 6370.0 + ], + "selected": "AD.CodaFirst 1.1" + }, + "completed_at": "2026-09-12T21:24:19Z", + "confirmation": null, + "delta_pct": -46.3, + "id": "bf7472d00df944d2", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } + }, + "bridge_commit": "9972f00ecfe4a85b707d655e40baa95525fa03f2", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "abcfd80eebf9804684b203c00aec674c99ff7105", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "AD.CodaFirst 1.1", + "division": "roborumble", + "jar": "AD.CodaFirst_1.1.jar", + "jar_sha256": "140825976d19ac8cbbf3a92040a9bc8568acb15933f6888cd0adce705497421f", + "key": "roborumble/AD.CodaFirst_1.1.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (score)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 18.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 6849.0, + "scores": [ + 3505.0, + 3344.0 + ], + "skipped": null + } } ], "status": "score-review" @@ -36249,7 +36400,7 @@ "key": "roborumble/AIR.iRobot_1.0.jar", "kind": "robot" }, - "latest_observation": "30ccf919e98128fe", + "latest_observation": "8cdfe3039b4b63e0", "observations": [ { "classic": { @@ -36327,9 +36478,160 @@ "scores": [], "skipped": null } + }, + { + "classic": { + "elapsed": 2.6, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 4733.0, + "scores": [ + 2458.0, + 2275.0 + ], + "selected": "AIR.iRobot 1.0" + }, + "completed_at": "2026-09-11T18:10:46Z", + "confirmation": null, + "delta_pct": -61.9, + "id": "10d5827207b88f2a", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "AIR.iRobot 1.0", + "division": "roborumble", + "jar": "AIR.iRobot_1.0.jar", + "jar_sha256": "b0843906e321f787ca4da9f79bdd645f2e8524a69a98056e89350a9efed076af", + "key": "roborumble/AIR.iRobot_1.0.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (score)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 20.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 1802.0, + "scores": [ + 964.0, + 838.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 2.8, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 4912.0, + "scores": [ + 2986.0, + 1926.0 + ], + "selected": "AIR.iRobot 1.0" + }, + "completed_at": "2026-09-12T21:28:44Z", + "confirmation": null, + "delta_pct": -23.4, + "id": "8cdfe3039b4b63e0", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } + }, + "bridge_commit": "9972f00ecfe4a85b707d655e40baa95525fa03f2", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "abcfd80eebf9804684b203c00aec674c99ff7105", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "AIR.iRobot 1.0", + "division": "roborumble", + "jar": "AIR.iRobot_1.0.jar", + "jar_sha256": "b0843906e321f787ca4da9f79bdd645f2e8524a69a98056e89350a9efed076af", + "key": "roborumble/AIR.iRobot_1.0.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 20.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 3762.0, + "scores": [ + 2214.0, + 1548.0 + ], + "skipped": null + } } ], - "status": "FAIL (TR)" + "status": "PASS" }, "roborumble/And.BasicSurfer_FF1.6.jar": { "diagnosis_events": [], @@ -36341,7 +36643,7 @@ "key": "roborumble/And.BasicSurfer_FF1.6.jar", "kind": "robot" }, - "latest_observation": "e10ba12633f28ccf", + "latest_observation": "25437532193e134b", "observations": [ { "classic": { @@ -36418,6 +36720,81 @@ ], "skipped": null } + }, + { + "classic": { + "elapsed": 3.1, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 4093.0, + "scores": [ + 2009.0, + 2084.0 + ], + "selected": "And.BasicSurfer FF1.6" + }, + "completed_at": "2026-09-11T18:17:29Z", + "confirmation": null, + "delta_pct": 2.2, + "id": "25437532193e134b", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "And.BasicSurfer FF1.6", + "division": "roborumble", + "jar": "And.BasicSurfer_FF1.6.jar", + "jar_sha256": "ff0393de6bfab609d13bd37c562ff5d2736e7b186ebfd65039ac1cde3546b1f9", + "key": "roborumble/And.BasicSurfer_FF1.6.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 26.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 4185.0, + "scores": [ + 2291.0, + 1894.0 + ], + "skipped": null + } } ], "status": "PASS" @@ -36432,7 +36809,7 @@ "key": "roborumble/ArchAlpha.ArchimedesAlpha_1.0.jar", "kind": "robot" }, - "latest_observation": "8ee700d1da5ca3de", + "latest_observation": "0ecc7f5a72c1dac2", "observations": [ { "classic": { @@ -36509,6 +36886,81 @@ ], "skipped": null } + }, + { + "classic": { + "elapsed": 3.1, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 0.0, + "scores": [ + 0.0, + 0.0 + ], + "selected": "ArchAlpha.ArchimedesAlpha 1.0" + }, + "completed_at": "2026-09-11T18:27:51Z", + "confirmation": null, + "delta_pct": null, + "id": "0ecc7f5a72c1dac2", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "ArchAlpha.ArchimedesAlpha 1.0", + "division": "roborumble", + "jar": "ArchAlpha.ArchimedesAlpha_1.0.jar", + "jar_sha256": "dcb4cdb1a904ba42b0747af1b29c660fe5fd01c225f4f079875cc07499b36554", + "key": "roborumble/ArchAlpha.ArchimedesAlpha_1.0.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (no score)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 32.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 0.0, + "scores": [ + 0.0, + 0.0 + ], + "skipped": null + } } ], "status": "DISCREPANCY (no score)" @@ -36523,7 +36975,7 @@ "key": "roborumble/CharlieN.Omega.Omega_1.03.jar", "kind": "robot" }, - "latest_observation": "23e880a8344ee3d9", + "latest_observation": "6c16b6ead3897593", "observations": [ { "classic": { @@ -36600,69 +37052,51 @@ ], "skipped": null } - } - ], - "status": "PASS" - }, - "roborumble/a.FreyaOS_1.0.jar": { - "diagnosis_events": [], - "identity": { - "classic_selected": "a.FreyaOS 1.0", - "division": "roborumble", - "jar": "a.FreyaOS_1.0.jar", - "jar_sha256": "76223355e093db18e286f0660a56ffe097eb1d5549215c31cc60bddf946602b4", - "key": "roborumble/a.FreyaOS_1.0.jar", - "kind": "robot" - }, - "latest_observation": "250efa0576cb1c56", - "observations": [ + }, { "classic": { - "elapsed": 8.3, + "elapsed": 2.9, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 6065.0, + "score": 5343.0, "scores": [ - 2950.0, - 3115.0 + 2478.0, + 2865.0 ], - "selected": "a.FreyaOS 1.0" + "selected": "CharlieN.Omega.Omega 1.03" }, - "completed_at": "2026-09-08T20:07:12Z", - "delta_pct": -8.3, - "id": "a90b9e5e44b1a73b", + "completed_at": "2026-09-11T20:11:34Z", + "confirmation": null, + "delta_pct": 7.6, + "id": "6c16b6ead3897593", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -36670,76 +37104,89 @@ "width": 800 }, "source_identity": { - "classic_selected": "a.FreyaOS 1.0", + "classic_selected": "CharlieN.Omega.Omega 1.03", "division": "roborumble", - "jar": "a.FreyaOS_1.0.jar", - "jar_sha256": "76223355e093db18e286f0660a56ffe097eb1d5549215c31cc60bddf946602b4", - "key": "roborumble/a.FreyaOS_1.0.jar", + "jar": "CharlieN.Omega.Omega_1.03.jar", + "jar_sha256": "fc785490d5488702362baf9d7ed4a1e49d3b35e56054c64deab067d69423b8a7", + "key": "roborumble/CharlieN.Omega.Omega_1.03.jar", "kind": "robot" }, "status": "PASS", "tank_royale": { - "elapsed": 26.0, + "bridge_only_signatures": null, + "elapsed": 20.0, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 5563.0, + "score": 5747.0, "scores": [ - 3052.0, - 2511.0 + 3268.0, + 2479.0 ], "skipped": null } - }, + } + ], + "status": "PASS" + }, + "roborumble/DM.Capriite_3.7.2.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "DM.Capriite 3.7.2", + "division": "roborumble", + "jar": "DM.Capriite_3.7.2.jar", + "jar_sha256": "7d9484ac66b7e0b23cf3864ee9bd5f4ade630790204a3f8f26bfe4d671d7fac9", + "key": "roborumble/DM.Capriite_3.7.2.jar", + "kind": "robot" + }, + "latest_observation": "63eec6535e7bcdb8", + "observations": [ { "classic": { - "elapsed": 3.1, + "elapsed": 2.8, "error_count": 0, "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 6664.0, + "score": 7283.0, "scores": [ - 3194.0, - 3470.0 + 3454.0, + 3829.0 ], - "selected": "a.FreyaOS 1.0" + "selected": "DM.Capriite 3.7.2" }, - "completed_at": "2026-09-09T17:57:52Z", - "delta_pct": -27.4, - "id": "250efa0576cb1c56", + "completed_at": "2026-09-11T21:07:04Z", + "confirmation": null, + "delta_pct": -16.1, + "id": "63eec6535e7bcdb8", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "7c7e232a37beaac0f3aa1c7760c0a66ab41480b3", + "official_parameters": true, + "tank_royale_commit": "a553d8069e3f67e8711f0a3e976c339f389faec8", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -36747,92 +37194,89 @@ "width": 800 }, "source_identity": { - "classic_selected": "a.FreyaOS 1.0", + "classic_selected": "DM.Capriite 3.7.2", "division": "roborumble", - "jar": "a.FreyaOS_1.0.jar", - "jar_sha256": "76223355e093db18e286f0660a56ffe097eb1d5549215c31cc60bddf946602b4", - "key": "roborumble/a.FreyaOS_1.0.jar", + "jar": "DM.Capriite_3.7.2.jar", + "jar_sha256": "7d9484ac66b7e0b23cf3864ee9bd5f4ade630790204a3f8f26bfe4d671d7fac9", + "key": "roborumble/DM.Capriite_3.7.2.jar", "kind": "robot" }, - "status": "DISCREPANCY (score)", + "status": "PASS", "tank_royale": { "bridge_only_signatures": null, - "elapsed": 28.0, + "elapsed": 20.0, "error_count": 0, "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 4836.0, + "score": 6114.0, "scores": [ - 2463.0, - 2373.0 + 3159.0, + 2955.0 ], "skipped": null } } ], - "status": "score-review" + "status": "PASS" }, - "roborumble/aaa.r.ScalarR_0.005h.053.jar": { + "roborumble/DM.Chicken_4.0.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "aaa.r.ScalarR 0.005h.053", + "classic_selected": "DM.Chicken 4.0", "division": "roborumble", - "jar": "aaa.r.ScalarR_0.005h.053.jar", - "jar_sha256": "60fef68d968790732c85b20d885e1ca9e99c5ba245e43c1a167f9f3b8956c055", - "key": "roborumble/aaa.r.ScalarR_0.005h.053.jar", + "jar": "DM.Chicken_4.0.jar", + "jar_sha256": "7c87fd26cff5ac4aa315ef19dfe2427ee6e01761b45c9181ebc192983558a955", + "key": "roborumble/DM.Chicken_4.0.jar", "kind": "robot" }, - "latest_observation": "789ba80b28f3224a", + "latest_observation": "f98b80f045eaa5ba", "observations": [ { "classic": { - "elapsed": 104.0, + "elapsed": 2.9, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 4202.0, + "score": 7801.0, "scores": [ - 1871.0, - 2331.0 + 3694.0, + 4107.0 ], - "selected": "aaa.r.ScalarR 0.005h.053" + "selected": "DM.Chicken 4.0" }, - "completed_at": "2026-09-08T20:09:10Z", - "delta_pct": 216.0, - "id": "789ba80b28f3224a", + "completed_at": "2026-09-11T21:07:46Z", + "confirmation": null, + "delta_pct": -100.0, + "id": "f98b80f045eaa5ba", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "7c7e232a37beaac0f3aa1c7760c0a66ab41480b3", + "official_parameters": true, + "tank_royale_commit": "a553d8069e3f67e8711f0a3e976c339f389faec8", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -36840,24 +37284,26 @@ "width": 800 }, "source_identity": { - "classic_selected": "aaa.r.ScalarR 0.005h.053", + "classic_selected": "DM.Chicken 4.0", "division": "roborumble", - "jar": "aaa.r.ScalarR_0.005h.053.jar", - "jar_sha256": "60fef68d968790732c85b20d885e1ca9e99c5ba245e43c1a167f9f3b8956c055", - "key": "roborumble/aaa.r.ScalarR_0.005h.053.jar", + "jar": "DM.Chicken_4.0.jar", + "jar_sha256": "7c87fd26cff5ac4aa315ef19dfe2427ee6e01761b45c9181ebc192983558a955", + "key": "roborumble/DM.Chicken_4.0.jar", "kind": "robot" }, "status": "DISCREPANCY (score)", "tank_royale": { - "elapsed": 14.1, + "bridge_only_signatures": null, + "elapsed": 38.0, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 13278.0, + "score": 0.0, "scores": [ - 7349.0, - 5929.0 + 0.0, + 0.0 ], "skipped": null } @@ -36865,65 +37311,62 @@ ], "status": "score-review" }, - "roborumble/ab.DengerousRoBatra_1.3.jar": { + "roborumble/DM.Mijit_.3.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "ab.DengerousRoBatra 1.3", + "classic_selected": "DM.Mijit .3", "division": "roborumble", - "jar": "ab.DengerousRoBatra_1.3.jar", - "jar_sha256": "62d46305baa7ded6cbbe763b1614d41c1ff2dd2d9992c028cfbf1a26c228530f", - "key": "roborumble/ab.DengerousRoBatra_1.3.jar", + "jar": "DM.Mijit_.3.jar", + "jar_sha256": "7340c3a1b751cc33f2323f13cfb1e5c499a25e23d682e7aa77f5b99538146f9d", + "key": "roborumble/DM.Mijit_.3.jar", "kind": "robot" }, - "latest_observation": "b9f7cc9d84668eb6", + "latest_observation": "25e2318cd74f0417", "observations": [ { "classic": { - "elapsed": 2.8, + "elapsed": 3.3, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 5727.0, + "score": 6094.0, "scores": [ - 2778.0, - 2949.0 + 2871.0, + 3223.0 ], - "selected": "ab.DengerousRoBatra 1.3" + "selected": "DM.Mijit .3" }, - "completed_at": "2026-09-08T20:09:35Z", - "delta_pct": -12.6, - "id": "b9f7cc9d84668eb6", + "completed_at": "2026-09-11T21:08:17Z", + "confirmation": null, + "delta_pct": -41.7, + "id": "25e2318cd74f0417", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "7c7e232a37beaac0f3aa1c7760c0a66ab41480b3", + "official_parameters": true, + "tank_royale_commit": "a553d8069e3f67e8711f0a3e976c339f389faec8", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -36931,191 +37374,89 @@ "width": 800 }, "source_identity": { - "classic_selected": "ab.DengerousRoBatra 1.3", + "classic_selected": "DM.Mijit .3", "division": "roborumble", - "jar": "ab.DengerousRoBatra_1.3.jar", - "jar_sha256": "62d46305baa7ded6cbbe763b1614d41c1ff2dd2d9992c028cfbf1a26c228530f", - "key": "roborumble/ab.DengerousRoBatra_1.3.jar", + "jar": "DM.Mijit_.3.jar", + "jar_sha256": "7340c3a1b751cc33f2323f13cfb1e5c499a25e23d682e7aa77f5b99538146f9d", + "key": "roborumble/DM.Mijit_.3.jar", "kind": "robot" }, - "status": "PASS", + "status": "DISCREPANCY (score)", "tank_royale": { - "elapsed": 22.0, + "bridge_only_signatures": null, + "elapsed": 28.0, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 5005.0, + "score": 3553.0, "scores": [ - 2593.0, - 2412.0 + 1902.0, + 1651.0 ], "skipped": null } } ], - "status": "PASS" + "status": "score-review" }, - "roborumble/abud.ThirdRobo_1.0.jar": { + "roborumble/DTF.Kludgy_1.2b.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "abud.ThirdRobo 1.0", + "classic_selected": "DTF.Kludgy 1.2b", "division": "roborumble", - "jar": "abud.ThirdRobo_1.0.jar", - "jar_sha256": "124b7067cca1b407845176fd26ad2388aab1ad20085b34bd5561539515272a16", - "key": "roborumble/abud.ThirdRobo_1.0.jar", + "jar": "DTF.Kludgy_1.2b.jar", + "jar_sha256": "f93004781b1b7a3352aab39817ef75761693d1a5041d562e5c6506395bd67e91", + "key": "roborumble/DTF.Kludgy_1.2b.jar", "kind": "robot" }, - "latest_observation": "b6434f799b62dbb9", + "latest_observation": "a020ea383408d5e2", "observations": [ { "classic": { - "elapsed": 6.2, - "error_count": 328, - "errors": [ - "java.io.NotSerializableException: abud.EnemyInfo", - "java.io.NotSerializableException: abud.EnemyInfo", - "java.io.NotSerializableException: abud.EnemyInfo", - "java.io.NotSerializableException: abud.EnemyInfo", - "java.io.NotSerializableException: abud.EnemyInfo", - "java.io.NotSerializableException: abud.EnemyInfo", - "java.io.NotSerializableException: abud.EnemyInfo", - "java.io.NotSerializableException: abud.EnemyInfo", - "java.io.NotSerializableException: abud.EnemyInfo", - "java.io.NotSerializableException: abud.EnemyInfo", - "java.io.NotSerializableException: abud.EnemyInfo", - "java.io.NotSerializableException: abud.EnemyInfo", - "java.io.NotSerializableException: abud.EnemyInfo", - "java.io.NotSerializableException: abud.EnemyInfo", - "java.io.NotSerializableException: abud.EnemyInfo", - "java.io.NotSerializableException: abud.EnemyInfo", - "java.io.NotSerializableException: abud.EnemyInfo", - "java.io.NotSerializableException: abud.EnemyInfo", - "java.io.NotSerializableException: abud.EnemyInfo", - "java.io.NotSerializableException: abud.EnemyInfo", - "java.io.NotSerializableException: abud.EnemyInfo", - "java.io.NotSerializableException: abud.EnemyInfo", - "java.io.NotSerializableException: abud.EnemyInfo", - "java.io.NotSerializableException: abud.EnemyInfo", - "java.io.NotSerializableException: abud.EnemyInfo", - "java.io.NotSerializableException: abud.EnemyInfo", - "java.io.NotSerializableException: abud.EnemyInfo", - "java.io.NotSerializableException: abud.EnemyInfo", - "java.io.NotSerializableException: abud.EnemyInfo", - "java.io.NotSerializableException: abud.EnemyInfo", - "java.io.NotSerializableException: abud.EnemyInfo", - "java.io.NotSerializableException: abud.EnemyInfo", - "java.io.NotSerializableException: abud.EnemyInfo", - "java.io.NotSerializableException: abud.EnemyInfo", - "java.io.NotSerializableException: abud.EnemyInfo", - "java.io.NotSerializableException: abud.EnemyInfo", - "java.io.NotSerializableException: abud.EnemyInfo", - "java.io.NotSerializableException: abud.EnemyInfo", - "java.io.NotSerializableException: abud.EnemyInfo", - "java.io.NotSerializableException: abud.EnemyInfo", - "java.io.NotSerializableException: abud.EnemyInfo", - "java.io.NotSerializableException: abud.EnemyInfo", - "java.io.NotSerializableException: abud.EnemyInfo", - "java.io.NotSerializableException: abud.EnemyInfo", - "java.io.NotSerializableException: abud.EnemyInfo", - "java.io.NotSerializableException: abud.EnemyInfo", - "java.io.NotSerializableException: abud.EnemyInfo", - "java.io.NotSerializableException: abud.EnemyInfo", - "java.io.NotSerializableException: abud.EnemyInfo", - "java.io.NotSerializableException: abud.EnemyInfo", - "java.io.NotSerializableException: abud.EnemyInfo", - "java.io.NotSerializableException: abud.EnemyInfo", - "java.io.NotSerializableException: abud.EnemyInfo", - "java.io.NotSerializableException: abud.EnemyInfo", - "java.io.NotSerializableException: abud.EnemyInfo", - "java.io.NotSerializableException: abud.EnemyInfo", - "java.io.NotSerializableException: abud.EnemyInfo", - "java.io.NotSerializableException: abud.EnemyInfo", - "java.io.NotSerializableException: abud.EnemyInfo", - "java.io.NotSerializableException: abud.EnemyInfo", - "java.io.NotSerializableException: abud.EnemyInfo", - "java.io.NotSerializableException: abud.EnemyInfo", - "java.io.NotSerializableException: abud.EnemyInfo", - "java.io.NotSerializableException: abud.EnemyInfo", - "java.io.NotSerializableException: abud.EnemyInfo", - "java.io.NotSerializableException: abud.EnemyInfo", - "java.io.NotSerializableException: abud.EnemyInfo", - "java.io.NotSerializableException: abud.EnemyInfo", - "java.io.NotSerializableException: abud.EnemyInfo", - "java.io.NotSerializableException: abud.EnemyInfo", - "java.io.NotSerializableException: abud.EnemyInfo", - "java.io.NotSerializableException: abud.EnemyInfo", - "java.io.NotSerializableException: abud.EnemyInfo", - "java.io.NotSerializableException: abud.EnemyInfo", - "java.io.NotSerializableException: abud.EnemyInfo", - "java.io.NotSerializableException: abud.EnemyInfo", - "java.io.NotSerializableException: abud.EnemyInfo", - "java.io.NotSerializableException: abud.EnemyInfo", - "java.io.NotSerializableException: abud.EnemyInfo", - "java.io.NotSerializableException: abud.EnemyInfo", - "java.io.NotSerializableException: abud.EnemyInfo", - "java.io.NotSerializableException: abud.EnemyInfo", - "java.io.NotSerializableException: abud.EnemyInfo", - "java.io.NotSerializableException: abud.EnemyInfo", - "java.io.NotSerializableException: abud.EnemyInfo", - "java.io.NotSerializableException: abud.EnemyInfo", - "java.io.NotSerializableException: abud.EnemyInfo", - "java.io.NotSerializableException: abud.EnemyInfo", - "java.io.NotSerializableException: abud.EnemyInfo", - "java.io.NotSerializableException: abud.EnemyInfo", - "java.io.NotSerializableException: abud.EnemyInfo", - "java.io.NotSerializableException: abud.EnemyInfo", - "java.io.NotSerializableException: abud.EnemyInfo", - "java.io.NotSerializableException: abud.EnemyInfo", - "java.io.NotSerializableException: abud.EnemyInfo", - "java.io.NotSerializableException: abud.EnemyInfo", - "java.io.NotSerializableException: abud.EnemyInfo", - "java.io.NotSerializableException: abud.EnemyInfo", - "java.io.NotSerializableException: abud.EnemyInfo", - "java.io.NotSerializableException: abud.EnemyInfo" - ], - "has_log": true, + "elapsed": 3.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, "ok": true, - "score": 6152.0, + "score": 6539.0, "scores": [ - 2879.0, - 3273.0 + 3675.0, + 2864.0 ], - "selected": "abud.ThirdRobo 1.0" + "selected": "DTF.Kludgy 1.2b" }, - "completed_at": "2026-09-08T20:09:46Z", - "delta_pct": null, - "id": "b6434f799b62dbb9", + "completed_at": "2026-09-12T11:00:08Z", + "confirmation": null, + "delta_pct": -9.2, + "id": "a020ea383408d5e2", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "94fdbe31e2b9c6d6a022c43becbd0bd861f86c19", + "official_parameters": true, + "tank_royale_commit": "a553d8069e3f67e8711f0a3e976c339f389faec8", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -37123,170 +37464,89 @@ "width": 800 }, "source_identity": { - "classic_selected": "abud.ThirdRobo 1.0", + "classic_selected": "DTF.Kludgy 1.2b", "division": "roborumble", - "jar": "abud.ThirdRobo_1.0.jar", - "jar_sha256": "124b7067cca1b407845176fd26ad2388aab1ad20085b34bd5561539515272a16", - "key": "roborumble/abud.ThirdRobo_1.0.jar", + "jar": "DTF.Kludgy_1.2b.jar", + "jar_sha256": "f93004781b1b7a3352aab39817ef75761693d1a5041d562e5c6506395bd67e91", + "key": "roborumble/DTF.Kludgy_1.2b.jar", "kind": "robot" }, - "status": "FAIL (TR)", + "status": "PASS", "tank_royale": { - "elapsed": 4.2, - "error_count": 82, - "errors": [ - "HARNESS: worker produced no result (exit code -1)", - "dev.robocode.tankroyale.botapi.BotException: Could not serialize team message: abud.EnemyInfo", - "dev.robocode.tankroyale.botapi.BotException: Could not serialize team message: abud.EnemyInfo", - "dev.robocode.tankroyale.botapi.BotException: Could not serialize team message: abud.EnemyInfo", - "dev.robocode.tankroyale.botapi.BotException: Could not serialize team message: abud.EnemyInfo", - "dev.robocode.tankroyale.botapi.BotException: Could not serialize team message: abud.EnemyInfo", - "dev.robocode.tankroyale.botapi.BotException: Could not serialize team message: abud.EnemyInfo", - "dev.robocode.tankroyale.botapi.BotException: Could not serialize team message: abud.EnemyInfo", - "dev.robocode.tankroyale.botapi.BotException: Could not serialize team message: abud.EnemyInfo", - "dev.robocode.tankroyale.botapi.BotException: Could not serialize team message: abud.EnemyInfo", - "dev.robocode.tankroyale.botapi.BotException: Could not serialize team message: abud.EnemyInfo", - "dev.robocode.tankroyale.botapi.BotException: Could not serialize team message: abud.EnemyInfo", - "dev.robocode.tankroyale.botapi.BotException: Could not serialize team message: abud.EnemyInfo", - "dev.robocode.tankroyale.botapi.BotException: Could not serialize team message: abud.EnemyInfo", - "dev.robocode.tankroyale.botapi.BotException: Could not serialize team message: abud.EnemyInfo", - "dev.robocode.tankroyale.botapi.BotException: Could not serialize team message: abud.EnemyInfo", - "dev.robocode.tankroyale.botapi.BotException: Could not serialize team message: abud.EnemyInfo", - "dev.robocode.tankroyale.botapi.BotException: Could not serialize team message: abud.EnemyInfo", - "dev.robocode.tankroyale.botapi.BotException: Could not serialize team message: abud.EnemyInfo", - "dev.robocode.tankroyale.botapi.BotException: Could not serialize team message: abud.EnemyInfo", - "dev.robocode.tankroyale.botapi.BotException: Could not serialize team message: abud.EnemyInfo", - "dev.robocode.tankroyale.botapi.BotException: Could not serialize team message: abud.EnemyInfo", - "dev.robocode.tankroyale.botapi.BotException: Could not serialize team message: abud.EnemyInfo", - "dev.robocode.tankroyale.botapi.BotException: Could not serialize team message: abud.EnemyInfo", - "dev.robocode.tankroyale.botapi.BotException: Could not serialize team message: abud.EnemyInfo", - "dev.robocode.tankroyale.botapi.BotException: Could not serialize team message: abud.EnemyInfo", - "dev.robocode.tankroyale.botapi.BotException: Could not serialize team message: abud.EnemyInfo", - "dev.robocode.tankroyale.botapi.BotException: Could not serialize team message: abud.EnemyInfo", - "dev.robocode.tankroyale.botapi.BotException: Could not serialize team message: abud.EnemyInfo", - "dev.robocode.tankroyale.botapi.BotException: Could not serialize team message: abud.EnemyInfo", - "dev.robocode.tankroyale.botapi.BotException: Could not serialize team message: abud.EnemyInfo", - "dev.robocode.tankroyale.botapi.BotException: Could not serialize team message: abud.EnemyInfo", - "dev.robocode.tankroyale.botapi.BotException: Could not serialize team message: abud.EnemyInfo", - "dev.robocode.tankroyale.botapi.BotException: Could not serialize team message: abud.EnemyInfo", - "dev.robocode.tankroyale.botapi.BotException: Could not serialize team message: abud.EnemyInfo", - "dev.robocode.tankroyale.botapi.BotException: Could not serialize team message: abud.EnemyInfo", - "dev.robocode.tankroyale.botapi.BotException: Could not serialize team message: abud.EnemyInfo", - "dev.robocode.tankroyale.botapi.BotException: Could not serialize team message: abud.EnemyInfo", - "dev.robocode.tankroyale.botapi.BotException: Could not serialize team message: abud.EnemyInfo", - "dev.robocode.tankroyale.botapi.BotException: Could not serialize team message: abud.EnemyInfo", - "dev.robocode.tankroyale.botapi.BotException: Could not serialize team message: abud.EnemyInfo", - "dev.robocode.tankroyale.botapi.BotException: Could not serialize team message: abud.EnemyInfo", - "dev.robocode.tankroyale.botapi.BotException: Could not serialize team message: abud.EnemyInfo", - "dev.robocode.tankroyale.botapi.BotException: Could not serialize team message: abud.EnemyInfo", - "dev.robocode.tankroyale.botapi.BotException: Could not serialize team message: abud.EnemyInfo", - "dev.robocode.tankroyale.botapi.BotException: Could not serialize team message: abud.EnemyInfo", - "dev.robocode.tankroyale.botapi.BotException: Could not serialize team message: abud.EnemyInfo", - "dev.robocode.tankroyale.botapi.BotException: Could not serialize team message: abud.EnemyInfo", - "dev.robocode.tankroyale.botapi.BotException: Could not serialize team message: abud.EnemyInfo", - "dev.robocode.tankroyale.botapi.BotException: Could not serialize team message: abud.EnemyInfo", - "dev.robocode.tankroyale.botapi.BotException: Could not serialize team message: abud.EnemyInfo", - "dev.robocode.tankroyale.botapi.BotException: Could not serialize team message: abud.EnemyInfo", - "dev.robocode.tankroyale.botapi.BotException: Could not serialize team message: abud.EnemyInfo", - "dev.robocode.tankroyale.botapi.BotException: Could not serialize team message: abud.EnemyInfo", - "dev.robocode.tankroyale.botapi.BotException: Could not serialize team message: abud.EnemyInfo", - "dev.robocode.tankroyale.botapi.BotException: Could not serialize team message: abud.EnemyInfo", - "dev.robocode.tankroyale.botapi.BotException: Could not serialize team message: abud.EnemyInfo", - "dev.robocode.tankroyale.botapi.BotException: Could not serialize team message: abud.EnemyInfo", - "dev.robocode.tankroyale.botapi.BotException: Could not serialize team message: abud.EnemyInfo", - "dev.robocode.tankroyale.botapi.BotException: Could not serialize team message: abud.EnemyInfo", - "dev.robocode.tankroyale.botapi.BotException: Could not serialize team message: abud.EnemyInfo", - "dev.robocode.tankroyale.botapi.BotException: Could not serialize team message: abud.EnemyInfo", - "dev.robocode.tankroyale.botapi.BotException: Could not serialize team message: abud.EnemyInfo", - "dev.robocode.tankroyale.botapi.BotException: Could not serialize team message: abud.EnemyInfo", - "dev.robocode.tankroyale.botapi.BotException: Could not serialize team message: abud.EnemyInfo", - "dev.robocode.tankroyale.botapi.BotException: Could not serialize team message: abud.EnemyInfo", - "dev.robocode.tankroyale.botapi.BotException: Could not serialize team message: abud.EnemyInfo", - "dev.robocode.tankroyale.botapi.BotException: Could not serialize team message: abud.EnemyInfo", - "dev.robocode.tankroyale.botapi.BotException: Could not serialize team message: abud.EnemyInfo", - "dev.robocode.tankroyale.botapi.BotException: Could not serialize team message: abud.EnemyInfo", - "dev.robocode.tankroyale.botapi.BotException: Could not serialize team message: abud.EnemyInfo", - "dev.robocode.tankroyale.botapi.BotException: Could not serialize team message: abud.EnemyInfo", - "dev.robocode.tankroyale.botapi.BotException: Could not serialize team message: abud.EnemyInfo", - "dev.robocode.tankroyale.botapi.BotException: Could not serialize team message: abud.EnemyInfo", - "dev.robocode.tankroyale.botapi.BotException: Could not serialize team message: abud.EnemyInfo", - "dev.robocode.tankroyale.botapi.BotException: Could not serialize team message: abud.EnemyInfo", - "dev.robocode.tankroyale.botapi.BotException: Could not serialize team message: abud.EnemyInfo", - "dev.robocode.tankroyale.botapi.BotException: Could not serialize team message: abud.EnemyInfo", - "dev.robocode.tankroyale.botapi.BotException: Could not serialize team message: abud.EnemyInfo", - "dev.robocode.tankroyale.botapi.BotException: Could not serialize team message: abud.EnemyInfo", - "dev.robocode.tankroyale.botapi.BotException: Could not serialize team message: abud.EnemyInfo", - "dev.robocode.tankroyale.botapi.BotException: Could not serialize team message: abud.EnemyInfo" + "bridge_only_signatures": null, + "elapsed": 18.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5938.0, + "scores": [ + 3600.0, + 2338.0 ], - "has_log": true, - "ok": false, - "score": null, - "scores": [], "skipped": null } } ], - "status": "FAIL (TR)" + "status": "PASS" }, - "roborumble/acid.Bl4ck_1.0.jar": { + "roborumble/EBBU.Sim2_1.02.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "acid.Bl4ck 1.0", + "classic_selected": "EBBU.Sim2 1.02", "division": "roborumble", - "jar": "acid.Bl4ck_1.0.jar", - "jar_sha256": "50cca7b205a1a20119a7b0d3810f54e6ce0a0c985612da73c161fcdc5bbbd5fd", - "key": "roborumble/acid.Bl4ck_1.0.jar", + "jar": "EBBU.Sim2_1.02.jar", + "jar_sha256": "116ea3dea899b2cc289efafa466316df071151ba4c17361a25cde6b702e66c3d", + "key": "roborumble/EBBU.Sim2_1.02.jar", "kind": "robot" }, - "latest_observation": "7bbc287f8bfe56e4", + "latest_observation": "82308feb917d2c0a", "observations": [ { "classic": { - "elapsed": 2.9, + "elapsed": 2.3, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 6723.0, + "score": 7081.0, "scores": [ - 3340.0, - 3383.0 + 3547.0, + 3534.0 ], - "selected": "acid.Bl4ck 1.0" + "selected": "EBBU.Sim2 1.02" }, - "completed_at": "2026-09-08T20:10:15Z", - "delta_pct": -44.7, - "id": "7bbc287f8bfe56e4", + "completed_at": "2026-09-12T11:05:30Z", + "confirmation": null, + "delta_pct": -79.9, + "id": "82308feb917d2c0a", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "94fdbe31e2b9c6d6a022c43becbd0bd861f86c19", + "official_parameters": true, + "tank_royale_commit": "a553d8069e3f67e8711f0a3e976c339f389faec8", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -37294,24 +37554,26 @@ "width": 800 }, "source_identity": { - "classic_selected": "acid.Bl4ck 1.0", + "classic_selected": "EBBU.Sim2 1.02", "division": "roborumble", - "jar": "acid.Bl4ck_1.0.jar", - "jar_sha256": "50cca7b205a1a20119a7b0d3810f54e6ce0a0c985612da73c161fcdc5bbbd5fd", - "key": "roborumble/acid.Bl4ck_1.0.jar", + "jar": "EBBU.Sim2_1.02.jar", + "jar_sha256": "116ea3dea899b2cc289efafa466316df071151ba4c17361a25cde6b702e66c3d", + "key": "roborumble/EBBU.Sim2_1.02.jar", "kind": "robot" }, "status": "DISCREPANCY (score)", "tank_royale": { - "elapsed": 26.0, + "bridge_only_signatures": null, + "elapsed": 32.0, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 3717.0, + "score": 1422.0, "scores": [ - 2005.0, - 1712.0 + 802.0, + 620.0 ], "skipped": null } @@ -37319,65 +37581,62 @@ ], "status": "score-review" }, - "roborumble/acid.Null_1.0.jar": { + "roborumble/EE.LittleBig_1.0.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "acid.Null 1.0", + "classic_selected": "EE.LittleBig 1.0", "division": "roborumble", - "jar": "acid.Null_1.0.jar", - "jar_sha256": "66547223ee9a81b17dc19f612f5ec2fe6745fcacee1823d5d88c61cd08c76f04", - "key": "roborumble/acid.Null_1.0.jar", + "jar": "EE.LittleBig_1.0.jar", + "jar_sha256": "89ea5fe0b50a1f906ef5440293004c29ec88ae771811d8a3c031cfe9afa32a3b", + "key": "roborumble/EE.LittleBig_1.0.jar", "kind": "robot" }, - "latest_observation": "590ef3a4eaca28e3", + "latest_observation": "dd65d66b59ff8acb", "observations": [ { "classic": { - "elapsed": 3.2, + "elapsed": 2.4, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 1809.0, + "score": 4611.0, "scores": [ - 539.0, - 1270.0 + 2028.0, + 2583.0 ], - "selected": "acid.Null 1.0" + "selected": "EE.LittleBig 1.0" }, - "completed_at": "2026-09-08T20:10:47Z", - "delta_pct": 38.5, - "id": "590ef3a4eaca28e3", + "completed_at": "2026-09-12T11:07:18Z", + "confirmation": null, + "delta_pct": 148.6, + "id": "dd65d66b59ff8acb", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "df9075aba6f73e3faf265d798bae394c4d8dc85d", + "official_parameters": true, + "tank_royale_commit": "a553d8069e3f67e8711f0a3e976c339f389faec8", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -37385,24 +37644,26 @@ "width": 800 }, "source_identity": { - "classic_selected": "acid.Null 1.0", + "classic_selected": "EE.LittleBig 1.0", "division": "roborumble", - "jar": "acid.Null_1.0.jar", - "jar_sha256": "66547223ee9a81b17dc19f612f5ec2fe6745fcacee1823d5d88c61cd08c76f04", - "key": "roborumble/acid.Null_1.0.jar", + "jar": "EE.LittleBig_1.0.jar", + "jar_sha256": "89ea5fe0b50a1f906ef5440293004c29ec88ae771811d8a3c031cfe9afa32a3b", + "key": "roborumble/EE.LittleBig_1.0.jar", "kind": "robot" }, "status": "DISCREPANCY (score)", "tank_royale": { - "elapsed": 28.0, + "bridge_only_signatures": null, + "elapsed": 14.0, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 2506.0, + "score": 11464.0, "scores": [ - 1482.0, - 1024.0 + 5934.0, + 5530.0 ], "skipped": null } @@ -37410,65 +37671,62 @@ ], "status": "score-review" }, - "roborumble/acid.Syzygy_1.0.4.jar": { + "roborumble/EFD.AdvancedEFD_0.4.5a.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "acid.Syzygy 1.0.4", + "classic_selected": "EFD.AdvancedEFD 0.4.5a", "division": "roborumble", - "jar": "acid.Syzygy_1.0.4.jar", - "jar_sha256": "a7336d30e377b013c9beaa6b4afabf93d3b8a83224d344beb7428e0361c4aa97", - "key": "roborumble/acid.Syzygy_1.0.4.jar", + "jar": "EFD.AdvancedEFD_0.4.5a.jar", + "jar_sha256": "7567e2854f0c07c7d5bd6852eecc9fe34a77a5c0b5a9b6e625f3ba1a6e51a3f3", + "key": "roborumble/EFD.AdvancedEFD_0.4.5a.jar", "kind": "robot" }, - "latest_observation": "e0d888daca1f0456", + "latest_observation": "595afba07d52e536", "observations": [ { "classic": { - "elapsed": 3.1, + "elapsed": 4.0, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 6558.0, + "score": 6190.0, "scores": [ - 3265.0, - 3293.0 + 3090.0, + 3100.0 ], - "selected": "acid.Syzygy 1.0.4" + "selected": "EFD.AdvancedEFD 0.4.5a" }, - "completed_at": "2026-09-08T20:11:18Z", - "delta_pct": -46.4, - "id": "e0d888daca1f0456", + "completed_at": "2026-09-12T11:18:48Z", + "confirmation": null, + "delta_pct": 0.6, + "id": "595afba07d52e536", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "df9075aba6f73e3faf265d798bae394c4d8dc85d", + "official_parameters": true, + "tank_royale_commit": "a553d8069e3f67e8711f0a3e976c339f389faec8", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -37476,90 +37734,89 @@ "width": 800 }, "source_identity": { - "classic_selected": "acid.Syzygy 1.0.4", + "classic_selected": "EFD.AdvancedEFD 0.4.5a", "division": "roborumble", - "jar": "acid.Syzygy_1.0.4.jar", - "jar_sha256": "a7336d30e377b013c9beaa6b4afabf93d3b8a83224d344beb7428e0361c4aa97", - "key": "roborumble/acid.Syzygy_1.0.4.jar", + "jar": "EFD.AdvancedEFD_0.4.5a.jar", + "jar_sha256": "7567e2854f0c07c7d5bd6852eecc9fe34a77a5c0b5a9b6e625f3ba1a6e51a3f3", + "key": "roborumble/EFD.AdvancedEFD_0.4.5a.jar", "kind": "robot" }, - "status": "DISCREPANCY (score)", + "status": "PASS", "tank_royale": { - "elapsed": 28.1, + "bridge_only_signatures": null, + "elapsed": 20.0, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 3518.0, + "score": 6227.0, "scores": [ - 2229.0, - 1289.0 + 3565.0, + 2662.0 ], "skipped": null } } ], - "status": "score-review" + "status": "PASS" }, - "roborumble/ad.Quest_0.10.jar": { + "roborumble/EH.Fusion_0.32.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "ad.Quest 0.10", + "classic_selected": "EH.Fusion 0.32", "division": "roborumble", - "jar": "ad.Quest_0.10.jar", - "jar_sha256": "7121f3447f5a2ee15fb6a8efbdecb35c5732def3307427f5c747990b2b2d8969", - "key": "roborumble/ad.Quest_0.10.jar", + "jar": "EH.Fusion_0.32.jar", + "jar_sha256": "988d1ac2f81d32bc6e37059181f522e396419f76b2ca76e929f69a9a219d56eb", + "key": "roborumble/EH.Fusion_0.32.jar", "kind": "robot" }, - "latest_observation": "90b87fb62a5d8769", + "latest_observation": "96dd484b2b911c5d", "observations": [ { "classic": { - "elapsed": 2.7, + "elapsed": 2.2, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 5349.0, + "score": 9398.0, "scores": [ - 2596.0, - 2753.0 + 4920.0, + 4478.0 ], - "selected": "ad.Quest 0.10" + "selected": "EH.Fusion 0.32" }, - "completed_at": "2026-09-08T20:12:40Z", - "delta_pct": -13.9, - "id": "90b87fb62a5d8769", + "completed_at": "2026-09-12T11:19:02Z", + "confirmation": null, + "delta_pct": 38.0, + "id": "96dd484b2b911c5d", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "df9075aba6f73e3faf265d798bae394c4d8dc85d", + "official_parameters": true, + "tank_royale_commit": "a553d8069e3f67e8711f0a3e976c339f389faec8", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -37567,90 +37824,89 @@ "width": 800 }, "source_identity": { - "classic_selected": "ad.Quest 0.10", + "classic_selected": "EH.Fusion 0.32", "division": "roborumble", - "jar": "ad.Quest_0.10.jar", - "jar_sha256": "7121f3447f5a2ee15fb6a8efbdecb35c5732def3307427f5c747990b2b2d8969", - "key": "roborumble/ad.Quest_0.10.jar", + "jar": "EH.Fusion_0.32.jar", + "jar_sha256": "988d1ac2f81d32bc6e37059181f522e396419f76b2ca76e929f69a9a219d56eb", + "key": "roborumble/EH.Fusion_0.32.jar", "kind": "robot" }, - "status": "PASS", + "status": "DISCREPANCY (score)", "tank_royale": { - "elapsed": 20.0, + "bridge_only_signatures": null, + "elapsed": 12.0, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 4605.0, + "score": 12969.0, "scores": [ - 2380.0, - 2225.0 + 6785.0, + 6184.0 ], "skipped": null } } ], - "status": "PASS" + "status": "score-review" }, - "roborumble/ad.last.Bottom_1.0.jar": { + "roborumble/EH.Pegasus_0.113.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "ad.last.Bottom 1.0", + "classic_selected": "EH.Pegasus 0.113", "division": "roborumble", - "jar": "ad.last.Bottom_1.0.jar", - "jar_sha256": "8ae6c84241634e3f1b2f550ff6bf50b603dd8f19c23f67e06df6c2328a0820bf", - "key": "roborumble/ad.last.Bottom_1.0.jar", + "jar": "EH.Pegasus_0.113.jar", + "jar_sha256": "aafb4166cc2891a04a4d2fb201bbda172d6f00c89c687666402557329f982446", + "key": "roborumble/EH.Pegasus_0.113.jar", "kind": "robot" }, - "latest_observation": "536581d29ac8b51f", + "latest_observation": "2696bc59852c8d21", "observations": [ { "classic": { - "elapsed": 3.6, + "elapsed": 2.6, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 305.0, + "score": 14455.0, "scores": [ - 242.0, - 63.0 + 7269.0, + 7186.0 ], - "selected": "ad.last.Bottom 1.0" + "selected": "EH.Pegasus 0.113" }, - "completed_at": "2026-09-08T20:12:17Z", - "delta_pct": -98.0, - "id": "536581d29ac8b51f", + "completed_at": "2026-09-12T11:21:02Z", + "confirmation": null, + "delta_pct": -13.1, + "id": "2696bc59852c8d21", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "df9075aba6f73e3faf265d798bae394c4d8dc85d", + "official_parameters": true, + "tank_royale_commit": "a553d8069e3f67e8711f0a3e976c339f389faec8", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -37658,90 +37914,89 @@ "width": 800 }, "source_identity": { - "classic_selected": "ad.last.Bottom 1.0", + "classic_selected": "EH.Pegasus 0.113", "division": "roborumble", - "jar": "ad.last.Bottom_1.0.jar", - "jar_sha256": "8ae6c84241634e3f1b2f550ff6bf50b603dd8f19c23f67e06df6c2328a0820bf", - "key": "roborumble/ad.last.Bottom_1.0.jar", + "jar": "EH.Pegasus_0.113.jar", + "jar_sha256": "aafb4166cc2891a04a4d2fb201bbda172d6f00c89c687666402557329f982446", + "key": "roborumble/EH.Pegasus_0.113.jar", "kind": "robot" }, - "status": "DISCREPANCY (score)", + "status": "PASS", "tank_royale": { - "elapsed": 34.0, + "bridge_only_signatures": null, + "elapsed": 20.0, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 6.0, + "score": 12565.0, "scores": [ - 3.0, - 3.0 + 6656.0, + 5909.0 ], "skipped": null } } ], - "status": "score-review" + "status": "PASS" }, - "roborumble/adt.Ar1_2.1.jar": { + "roborumble/EH.kms.LightningStorm_0.11B.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "adt.Ar1 2.1", + "classic_selected": "EH.kms.LightningStorm 0.11B", "division": "roborumble", - "jar": "adt.Ar1_2.1.jar", - "jar_sha256": "37857b3fe3d082f121da8dd8ca81a5ea58edcab65fad3c552d71dfa65f58b14e", - "key": "roborumble/adt.Ar1_2.1.jar", + "jar": "EH.kms.LightningStorm_0.11B.jar", + "jar_sha256": "bd8bc1df5964a2653e289723e45bd0d9516c6196cc7fab8b365f9828023ce405", + "key": "roborumble/EH.kms.LightningStorm_0.11B.jar", "kind": "robot" }, - "latest_observation": "a7544fcb7a16e1cc", + "latest_observation": "1ef751e58aaba9b3", "observations": [ { "classic": { - "elapsed": 2.9, + "elapsed": 3.4, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 3562.0, + "score": 6189.0, "scores": [ - 1770.0, - 1792.0 + 3341.0, + 2848.0 ], - "selected": "adt.Ar1 2.1" + "selected": "EH.kms.LightningStorm 0.11B" }, - "completed_at": "2026-09-08T20:13:05Z", - "delta_pct": -6.2, - "id": "a7544fcb7a16e1cc", + "completed_at": "2026-09-12T11:19:28Z", + "confirmation": null, + "delta_pct": -6.0, + "id": "1ef751e58aaba9b3", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "df9075aba6f73e3faf265d798bae394c4d8dc85d", + "official_parameters": true, + "tank_royale_commit": "a553d8069e3f67e8711f0a3e976c339f389faec8", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -37749,24 +38004,26 @@ "width": 800 }, "source_identity": { - "classic_selected": "adt.Ar1 2.1", + "classic_selected": "EH.kms.LightningStorm 0.11B", "division": "roborumble", - "jar": "adt.Ar1_2.1.jar", - "jar_sha256": "37857b3fe3d082f121da8dd8ca81a5ea58edcab65fad3c552d71dfa65f58b14e", - "key": "roborumble/adt.Ar1_2.1.jar", + "jar": "EH.kms.LightningStorm_0.11B.jar", + "jar_sha256": "bd8bc1df5964a2653e289723e45bd0d9516c6196cc7fab8b365f9828023ce405", + "key": "roborumble/EH.kms.LightningStorm_0.11B.jar", "kind": "robot" }, "status": "PASS", "tank_royale": { + "bridge_only_signatures": null, "elapsed": 22.0, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 3341.0, + "score": 5820.0, "scores": [ - 1793.0, - 1548.0 + 2955.0, + 2865.0 ], "skipped": null } @@ -37774,65 +38031,62 @@ ], "status": "PASS" }, - "roborumble/adt.Ar2_1.0.jar": { + "roborumble/EH.mini.Panther_0.2.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "adt.Ar2 1.0", + "classic_selected": "EH.mini.Panther 0.2", "division": "roborumble", - "jar": "adt.Ar2_1.0.jar", - "jar_sha256": "2adf54760aefa12c1e79667c064a9529b85aed2218e8a7457c335fb91153394e", - "key": "roborumble/adt.Ar2_1.0.jar", + "jar": "EH.mini.Panther_0.2.jar", + "jar_sha256": "7313826c136e79fd79dc03bea8ded69ac2831541cc9c39d71f96b5040f742990", + "key": "roborumble/EH.mini.Panther_0.2.jar", "kind": "robot" }, - "latest_observation": "f8dc415d3174e2bd", + "latest_observation": "871fe99089163f17", "observations": [ { "classic": { - "elapsed": 2.5, + "elapsed": 3.7, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 6761.0, + "score": 4499.0, "scores": [ - 3088.0, - 3673.0 + 2747.0, + 1752.0 ], - "selected": "adt.Ar2 1.0" + "selected": "EH.mini.Panther 0.2" }, - "completed_at": "2026-09-08T20:13:24Z", - "delta_pct": -23.5, - "id": "f8dc415d3174e2bd", + "completed_at": "2026-09-12T11:20:20Z", + "confirmation": null, + "delta_pct": -18.4, + "id": "871fe99089163f17", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "df9075aba6f73e3faf265d798bae394c4d8dc85d", + "official_parameters": true, + "tank_royale_commit": "a553d8069e3f67e8711f0a3e976c339f389faec8", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -37840,24 +38094,26 @@ "width": 800 }, "source_identity": { - "classic_selected": "adt.Ar2 1.0", + "classic_selected": "EH.mini.Panther 0.2", "division": "roborumble", - "jar": "adt.Ar2_1.0.jar", - "jar_sha256": "2adf54760aefa12c1e79667c064a9529b85aed2218e8a7457c335fb91153394e", - "key": "roborumble/adt.Ar2_1.0.jar", + "jar": "EH.mini.Panther_0.2.jar", + "jar_sha256": "7313826c136e79fd79dc03bea8ded69ac2831541cc9c39d71f96b5040f742990", + "key": "roborumble/EH.mini.Panther_0.2.jar", "kind": "robot" }, "status": "PASS", "tank_royale": { - "elapsed": 16.0, + "bridge_only_signatures": null, + "elapsed": 48.0, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 5169.0, + "score": 3671.0, "scores": [ - 2932.0, - 2237.0 + 2132.0, + 1539.0 ], "skipped": null } @@ -37865,65 +38121,62 @@ ], "status": "PASS" }, - "roborumble/aetos.AetosFirstBot_1.0.jar": { + "roborumble/EH.nano.NightBird_M.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "aetos.AetosFirstBot 1.0", + "classic_selected": "EH.nano.NightBird M", "division": "roborumble", - "jar": "aetos.AetosFirstBot_1.0.jar", - "jar_sha256": "b07790002d150956d9c859100b63581fbf720807de75ea51d10d2355c23552dd", - "key": "roborumble/aetos.AetosFirstBot_1.0.jar", + "jar": "EH.nano.NightBird_M.jar", + "jar_sha256": "69ef0a490f5df3cd526b739c63cc884d7c7143deb361c31c4266c63b7fcc92fe", + "key": "roborumble/EH.nano.NightBird_M.jar", "kind": "robot" }, - "latest_observation": "adf8a34914ae5ddc", + "latest_observation": "c796f14f9487fcd6", "observations": [ { "classic": { "elapsed": 2.4, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 14150.0, + "score": 7561.0, "scores": [ - 7308.0, - 6842.0 + 3860.0, + 3701.0 ], - "selected": "aetos.AetosFirstBot 1.0" + "selected": "EH.nano.NightBird M" }, - "completed_at": "2026-09-08T20:13:40Z", - "delta_pct": -1.3, - "id": "adf8a34914ae5ddc", + "completed_at": "2026-09-12T11:20:39Z", + "confirmation": null, + "delta_pct": -24.2, + "id": "c796f14f9487fcd6", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "df9075aba6f73e3faf265d798bae394c4d8dc85d", + "official_parameters": true, + "tank_royale_commit": "a553d8069e3f67e8711f0a3e976c339f389faec8", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -37931,24 +38184,26 @@ "width": 800 }, "source_identity": { - "classic_selected": "aetos.AetosFirstBot 1.0", + "classic_selected": "EH.nano.NightBird M", "division": "roborumble", - "jar": "aetos.AetosFirstBot_1.0.jar", - "jar_sha256": "b07790002d150956d9c859100b63581fbf720807de75ea51d10d2355c23552dd", - "key": "roborumble/aetos.AetosFirstBot_1.0.jar", + "jar": "EH.nano.NightBird_M.jar", + "jar_sha256": "69ef0a490f5df3cd526b739c63cc884d7c7143deb361c31c4266c63b7fcc92fe", + "key": "roborumble/EH.nano.NightBird_M.jar", "kind": "robot" }, "status": "PASS", "tank_royale": { - "elapsed": 14.0, + "bridge_only_signatures": null, + "elapsed": 16.0, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 13969.0, + "score": 5734.0, "scores": [ - 7098.0, - 6871.0 + 3474.0, + 2260.0 ], "skipped": null } @@ -37956,65 +38211,61 @@ ], "status": "PASS" }, - "roborumble/ag.Gir_0.99.jar": { + "roborumble/Ex.Survival_3.7.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "ag.Gir 0.99", + "classic_selected": null, "division": "roborumble", - "jar": "ag.Gir_0.99.jar", - "jar_sha256": "35a4cbabb1c433b6a4e54977741e90195fa95332d7afcce0c7ffe9c8af1ce32d", - "key": "roborumble/ag.Gir_0.99.jar", + "jar": "Ex.Survival_3.7.jar", + "jar_sha256": "126904b7ad8ba07bafca9d58a003d68a985222ebda348b0bc47a39061868696a", + "key": "roborumble/Ex.Survival_3.7.jar", "kind": "robot" }, - "latest_observation": "6a92a7c896d886ac", + "latest_observation": "2221f19d53cb555a", "observations": [ { "classic": { - "elapsed": 8.9, - "error_count": 0, - "errors": [], - "has_log": false, - "ok": true, - "score": 3737.0, - "scores": [ - 2018.0, - 1719.0 + "elapsed": 0.3, + "error_count": 1, + "error_signatures": [], + "errors": [ + "HARNESS: worker produced no result (exit code 1)" ], - "selected": "ag.Gir 0.99" + "has_log": true, + "ok": false, + "score": null, + "scores": [], + "selected": null }, - "completed_at": "2026-09-08T20:14:00Z", + "completed_at": "2026-09-12T12:25:17Z", + "confirmation": null, "delta_pct": null, - "id": "6a92a7c896d886ac", + "id": "2221f19d53cb555a", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "36549f1196eb837f3109ffb1910f0601de2e4277", + "official_parameters": true, + "tank_royale_commit": "a553d8069e3f67e8711f0a3e976c339f389faec8", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -38022,58 +38273,21 @@ "width": 800 }, "source_identity": { - "classic_selected": "ag.Gir 0.99", + "classic_selected": null, "division": "roborumble", - "jar": "ag.Gir_0.99.jar", - "jar_sha256": "35a4cbabb1c433b6a4e54977741e90195fa95332d7afcce0c7ffe9c8af1ce32d", - "key": "roborumble/ag.Gir_0.99.jar", + "jar": "Ex.Survival_3.7.jar", + "jar_sha256": "126904b7ad8ba07bafca9d58a003d68a985222ebda348b0bc47a39061868696a", + "key": "roborumble/Ex.Survival_3.7.jar", "kind": "robot" }, - "status": "FAIL (TR)", + "status": "MATCHED (failure)", "tank_royale": { - "elapsed": 10.1, - "error_count": 40, + "bridge_only_signatures": null, + "elapsed": 0.3, + "error_count": 1, + "error_signatures": [], "errors": [ - "HARNESS: worker produced no result (exit code -1)", - "java.lang.ArrayIndexOutOfBoundsException: Array index out of range: 0", - "java.lang.ArrayIndexOutOfBoundsException: Array index out of range: 0", - "IOException trying to write: java.io.IOException: You have reached your filesystem quota of: 200000 bytes.", - "Exception trying to write: java.io.IOException: You have reached your filesystem quota of: 200000 bytes.", - "Exception reading 1_robotstats.stt: java.io.EOFException", - "IOException trying to write: java.io.IOException: You have reached your filesystem quota of: 200000 bytes.", - "Exception reading 1_girstats.stt: java.io.EOFException", - "IOException trying to write: java.io.IOException: You have reached your filesystem quota of: 200000 bytes.", - "Exception trying to write: java.io.IOException: You have reached your filesystem quota of: 200000 bytes.", - "IOException trying to write: java.io.IOException: You have reached your filesystem quota of: 200000 bytes.", - "Exception reading 1_robotstats.stt: java.io.EOFException", - "IOException trying to write: java.io.IOException: You have reached your filesystem quota of: 200000 bytes.", - "Exception trying to write: java.io.IOException: You have reached your filesystem quota of: 200000 bytes.", - "Exception reading 1_move.fct: java.io.EOFException", - "Exception reading 1_robotstats.stt: java.io.EOFException", - "Exception reading 1_move.fct: java.io.EOFException", - "Exception reading 1_girstats.stt: java.io.EOFException", - "Exception reading 1_girstats.stt: java.io.EOFException", - "IOException trying to write: java.io.IOException: You have reached your filesystem quota of: 200000 bytes.", - "java.lang.ArrayIndexOutOfBoundsException: Array index out of range: 0", - "IOException trying to write: java.io.IOException: You have reached your filesystem quota of: 200000 bytes.", - "Exception trying to write: java.io.IOException: You have reached your filesystem quota of: 200000 bytes.", - "IOException trying to write: java.io.IOException: You have reached your filesystem quota of: 200000 bytes.", - "Exception reading 2_robotstats.stt: java.io.EOFException", - "Exception reading 2_girstats.stt: java.io.EOFException", - "Exception reading 2_girstats.stt: java.io.EOFException", - "IOException trying to write: java.io.IOException: You have reached your filesystem quota of: 200000 bytes.", - "Exception reading 2_girstats.stt: java.io.EOFException", - "IOException trying to write: java.io.IOException: You have reached your filesystem quota of: 200000 bytes.", - "Exception trying to write: java.io.IOException: You have reached your filesystem quota of: 200000 bytes.", - "IOException trying to write: java.io.IOException: You have reached your filesystem quota of: 200000 bytes.", - "Exception reading 2_robotstats.stt: java.io.EOFException", - "IOException trying to write: java.io.IOException: You have reached your filesystem quota of: 200000 bytes.", - "Exception trying to write: java.io.IOException: You have reached your filesystem quota of: 200000 bytes.", - "Exception reading 2_robotstats.stt: java.io.EOFException", - "Exception reading 2_move.fct: java.io.EOFException", - "Exception reading 2_girstats.stt: java.io.EOFException", - "Exception reading 2_girstats.stt: java.io.EOFException", - "IOException trying to write: java.io.IOException: You have reached your filesystem quota of: 200000 bytes." + "HARNESS: worker produced no result (exit code 1)" ], "has_log": true, "ok": false, @@ -38083,67 +38297,63 @@ } } ], - "status": "FAIL (TR)" + "status": "MATCHED (failure)" }, - "roborumble/agd.Mooserwirt2_2.7.jar": { + "roborumble/FatalFlaw.FatalFlaw_1.0.5.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "agd.Mooserwirt2 2.7", + "classic_selected": null, "division": "roborumble", - "jar": "agd.Mooserwirt2_2.7.jar", - "jar_sha256": "377e6a4c674d0436ee7d3cf8e29c2581fc37e55238e6fefef86394c55a35b556", - "key": "roborumble/agd.Mooserwirt2_2.7.jar", + "jar": "FatalFlaw.FatalFlaw_1.0.5.jar", + "jar_sha256": "82e52a5611243132c7927d7377689ea20583304ccd47c9d775fcb3af7016212f", + "key": "roborumble/FatalFlaw.FatalFlaw_1.0.5.jar", "kind": "robot" }, - "latest_observation": "ff9a91c9aed410ac", + "latest_observation": "eb875409279d0776", "observations": [ { "classic": { - "elapsed": 6.5, - "error_count": 0, - "errors": [], - "has_log": false, - "ok": true, - "score": 6393.0, - "scores": [ - 3276.0, - 3117.0 + "elapsed": 0.3, + "error_count": 1, + "error_signatures": [], + "errors": [ + "HARNESS: worker produced no result (exit code 1)" ], - "selected": "agd.Mooserwirt2 2.7" + "has_log": true, + "ok": false, + "score": null, + "scores": [], + "selected": null }, - "completed_at": "2026-09-08T20:14:30Z", - "delta_pct": 93.5, - "id": "ff9a91c9aed410ac", + "completed_at": "2026-09-12T12:25:23Z", + "confirmation": null, + "delta_pct": null, + "id": "eb875409279d0776", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "36549f1196eb837f3109ffb1910f0601de2e4277", + "official_parameters": true, + "tank_royale_commit": "a553d8069e3f67e8711f0a3e976c339f389faec8", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -38151,90 +38361,175 @@ "width": 800 }, "source_identity": { - "classic_selected": "agd.Mooserwirt2 2.7", + "classic_selected": null, "division": "roborumble", - "jar": "agd.Mooserwirt2_2.7.jar", - "jar_sha256": "377e6a4c674d0436ee7d3cf8e29c2581fc37e55238e6fefef86394c55a35b556", - "key": "roborumble/agd.Mooserwirt2_2.7.jar", + "jar": "FatalFlaw.FatalFlaw_1.0.5.jar", + "jar_sha256": "82e52a5611243132c7927d7377689ea20583304ccd47c9d775fcb3af7016212f", + "key": "roborumble/FatalFlaw.FatalFlaw_1.0.5.jar", "kind": "robot" }, - "status": "DISCREPANCY (score)", + "status": "MATCHED (failure)", "tank_royale": { - "elapsed": 24.0, - "error_count": 0, - "errors": [], - "has_log": false, - "ok": true, - "score": 12372.0, - "scores": [ - 6196.0, - 6176.0 + "bridge_only_signatures": null, + "elapsed": 0.3, + "error_count": 1, + "error_signatures": [], + "errors": [ + "HARNESS: worker produced no result (exit code 1)" ], + "has_log": true, + "ok": false, + "score": null, + "scores": [], "skipped": null } } ], - "status": "score-review" + "status": "MATCHED (failure)" }, - "roborumble/agrach.Dalek_1.0.jar": { + "roborumble/Fenix.FenixTrack_1.0.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "agrach.Dalek 1.0", + "classic_selected": null, "division": "roborumble", - "jar": "agrach.Dalek_1.0.jar", - "jar_sha256": "1b594bd828661ec7fbeb11aba73bccf7567d16e78a9ff21114a1f430c7152836", - "key": "roborumble/agrach.Dalek_1.0.jar", + "jar": "Fenix.FenixTrack_1.0.jar", + "jar_sha256": "4911b22dec326c2d67b09407511ab97254a98a8c79da752ff826abe4b0521aea", + "key": "roborumble/Fenix.FenixTrack_1.0.jar", "kind": "robot" }, - "latest_observation": "ba3220036d56b733", + "latest_observation": "b58617e0e3214317", "observations": [ { "classic": { - "elapsed": 3.0, - "error_count": 0, - "errors": [], - "has_log": false, - "ok": true, - "score": 3775.0, - "scores": [ - 1420.0, - 2355.0 + "elapsed": 0.3, + "error_count": 1, + "error_signatures": [], + "errors": [ + "HARNESS: worker produced no result (exit code 1)" ], - "selected": "agrach.Dalek 1.0" + "has_log": true, + "ok": false, + "score": null, + "scores": [], + "selected": null }, - "completed_at": "2026-09-08T20:14:56Z", - "delta_pct": 65.3, - "id": "ba3220036d56b733", + "completed_at": "2026-09-12T12:25:25Z", + "confirmation": null, + "delta_pct": null, + "id": "b58617e0e3214317", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "bridge_commit": "36549f1196eb837f3109ffb1910f0601de2e4277", "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "tank_royale_commit": "a553d8069e3f67e8711f0a3e976c339f389faec8", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": null, + "division": "roborumble", + "jar": "Fenix.FenixTrack_1.0.jar", + "jar_sha256": "4911b22dec326c2d67b09407511ab97254a98a8c79da752ff826abe4b0521aea", + "key": "roborumble/Fenix.FenixTrack_1.0.jar", + "kind": "robot" + }, + "status": "MATCHED (failure)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 0.3, + "error_count": 1, + "error_signatures": [], + "errors": [ + "HARNESS: worker produced no result (exit code 1)" + ], + "has_log": true, + "ok": false, + "score": null, + "scores": [], + "skipped": null + } + } + ], + "status": "MATCHED (failure)" + }, + "roborumble/Gecko.ultimateGeckoBot_1.0.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": null, + "division": "roborumble", + "jar": "Gecko.ultimateGeckoBot_1.0.jar", + "jar_sha256": "4806f8229635619f279d0e9e709465f51e7b5d56c5c5212bdca319e6abd8ab8a", + "key": "roborumble/Gecko.ultimateGeckoBot_1.0.jar", + "kind": "robot" + }, + "latest_observation": "fc62b9d07f77cb43", + "observations": [ + { + "classic": { + "elapsed": 0.3, + "error_count": 1, + "error_signatures": [], + "errors": [ + "HARNESS: worker produced no result (exit code 1)" + ], + "has_log": true, + "ok": false, + "score": null, + "scores": [], + "selected": null + }, + "completed_at": "2026-09-12T12:26:08Z", + "confirmation": null, + "delta_pct": null, + "id": "fc62b9d07f77cb43", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "7f69420cb5157bc945ae58f4130e0a550cfabb22", + "official_parameters": true, + "tank_royale_commit": "a553d8069e3f67e8711f0a3e976c339f389faec8", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -38242,90 +38537,88 @@ "width": 800 }, "source_identity": { - "classic_selected": "agrach.Dalek 1.0", + "classic_selected": null, "division": "roborumble", - "jar": "agrach.Dalek_1.0.jar", - "jar_sha256": "1b594bd828661ec7fbeb11aba73bccf7567d16e78a9ff21114a1f430c7152836", - "key": "roborumble/agrach.Dalek_1.0.jar", + "jar": "Gecko.ultimateGeckoBot_1.0.jar", + "jar_sha256": "4806f8229635619f279d0e9e709465f51e7b5d56c5c5212bdca319e6abd8ab8a", + "key": "roborumble/Gecko.ultimateGeckoBot_1.0.jar", "kind": "robot" }, - "status": "DISCREPANCY (score)", + "status": "MATCHED (failure)", "tank_royale": { - "elapsed": 22.2, - "error_count": 0, - "errors": [], - "has_log": false, - "ok": true, - "score": 6240.0, - "scores": [ - 3411.0, - 2829.0 + "bridge_only_signatures": null, + "elapsed": 0.3, + "error_count": 1, + "error_signatures": [], + "errors": [ + "HARNESS: worker produced no result (exit code 1)" ], + "has_log": true, + "ok": false, + "score": null, + "scores": [], "skipped": null } } ], - "status": "score-review" + "status": "MATCHED (failure)" }, - "roborumble/agrach.MicroDalek_1.0.jar": { + "roborumble/Grystrion.RandomTrackerNOREV_1.0.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "agrach.MicroDalek 1.0", + "classic_selected": "Grystrion.RandomTrackerNOREV 1.0", "division": "roborumble", - "jar": "agrach.MicroDalek_1.0.jar", - "jar_sha256": "f0830bebf9d2d5be6388b696e437fc369f2e68f3255f56332a24f0b40f81b979", - "key": "roborumble/agrach.MicroDalek_1.0.jar", + "jar": "Grystrion.RandomTrackerNOREV_1.0.jar", + "jar_sha256": "d60f5b48a2def5c439757387637014db8044a99b4679e0471b4041854944dab3", + "key": "roborumble/Grystrion.RandomTrackerNOREV_1.0.jar", "kind": "robot" }, - "latest_observation": "530461a54d8b1dad", + "latest_observation": "a633af2142797af3", "observations": [ { "classic": { - "elapsed": 2.7, + "elapsed": 41.9, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 5316.0, + "score": 0.0, "scores": [ - 3041.0, - 2275.0 + 0.0, + 0.0 ], - "selected": "agrach.MicroDalek 1.0" + "selected": "Grystrion.RandomTrackerNOREV 1.0" }, - "completed_at": "2026-09-08T20:15:21Z", - "delta_pct": -23.1, - "id": "530461a54d8b1dad", + "completed_at": "2026-09-12T12:54:43Z", + "confirmation": null, + "delta_pct": null, + "id": "a633af2142797af3", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "975ed11a8fa5482146838f0a66158ca83039c548", + "official_parameters": true, + "tank_royale_commit": "a553d8069e3f67e8711f0a3e976c339f389faec8", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -38333,90 +38626,89 @@ "width": 800 }, "source_identity": { - "classic_selected": "agrach.MicroDalek 1.0", + "classic_selected": "Grystrion.RandomTrackerNOREV 1.0", "division": "roborumble", - "jar": "agrach.MicroDalek_1.0.jar", - "jar_sha256": "f0830bebf9d2d5be6388b696e437fc369f2e68f3255f56332a24f0b40f81b979", - "key": "roborumble/agrach.MicroDalek_1.0.jar", + "jar": "Grystrion.RandomTrackerNOREV_1.0.jar", + "jar_sha256": "d60f5b48a2def5c439757387637014db8044a99b4679e0471b4041854944dab3", + "key": "roborumble/Grystrion.RandomTrackerNOREV_1.0.jar", "kind": "robot" }, - "status": "PASS", + "status": "DISCREPANCY (no score)", "tank_royale": { - "elapsed": 22.0, + "bridge_only_signatures": null, + "elapsed": 12.0, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 4086.0, + "score": 5877.0, "scores": [ - 2220.0, - 1866.0 + 2963.0, + 2914.0 ], "skipped": null } } ], - "status": "PASS" + "status": "DISCREPANCY (no score)" }, - "roborumble/agrach.RobotSlayer_1.0.jar": { + "roborumble/Grystrion.TrackerWO_1.0.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "agrach.RobotSlayer 1.0", + "classic_selected": "Grystrion.TrackerWO 1.0", "division": "roborumble", - "jar": "agrach.RobotSlayer_1.0.jar", - "jar_sha256": "7710708e2d15c46fe622ea196065c3fa78c785a8ba0ab3afe5587de3d1072ff9", - "key": "roborumble/agrach.RobotSlayer_1.0.jar", + "jar": "Grystrion.TrackerWO_1.0.jar", + "jar_sha256": "b371a104375e94e4c8db29515528481779b1dba303b8042715c168a25a395416", + "key": "roborumble/Grystrion.TrackerWO_1.0.jar", "kind": "robot" }, - "latest_observation": "8f77756a222c2ed6", + "latest_observation": "ac36cf3c058f2c58", "observations": [ { "classic": { - "elapsed": 3.0, + "elapsed": 41.9, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 3120.0, + "score": 0.0, "scores": [ - 1448.0, - 1672.0 + 0.0, + 0.0 ], - "selected": "agrach.RobotSlayer 1.0" + "selected": "Grystrion.TrackerWO 1.0" }, - "completed_at": "2026-09-08T20:15:48Z", - "delta_pct": 34.9, - "id": "8f77756a222c2ed6", + "completed_at": "2026-09-12T12:55:44Z", + "confirmation": null, + "delta_pct": null, + "id": "ac36cf3c058f2c58", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "975ed11a8fa5482146838f0a66158ca83039c548", + "official_parameters": true, + "tank_royale_commit": "a553d8069e3f67e8711f0a3e976c339f389faec8", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -38424,90 +38716,89 @@ "width": 800 }, "source_identity": { - "classic_selected": "agrach.RobotSlayer 1.0", + "classic_selected": "Grystrion.TrackerWO 1.0", "division": "roborumble", - "jar": "agrach.RobotSlayer_1.0.jar", - "jar_sha256": "7710708e2d15c46fe622ea196065c3fa78c785a8ba0ab3afe5587de3d1072ff9", - "key": "roborumble/agrach.RobotSlayer_1.0.jar", + "jar": "Grystrion.TrackerWO_1.0.jar", + "jar_sha256": "b371a104375e94e4c8db29515528481779b1dba303b8042715c168a25a395416", + "key": "roborumble/Grystrion.TrackerWO_1.0.jar", "kind": "robot" }, - "status": "DISCREPANCY (score)", + "status": "DISCREPANCY (no score)", "tank_royale": { - "elapsed": 24.0, + "bridge_only_signatures": null, + "elapsed": 18.0, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 4209.0, + "score": 5022.0, "scores": [ - 2147.0, - 2062.0 + 2722.0, + 2300.0 ], "skipped": null } } ], - "status": "score-review" + "status": "DISCREPANCY (no score)" }, - "roborumble/ags.Glacier_0.3.2.jar": { + "roborumble/Heal.TekitokaBot_1.0.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "ags.Glacier 0.3.2", + "classic_selected": "Heal.TekitokaBot 1.0", "division": "roborumble", - "jar": "ags.Glacier_0.3.2.jar", - "jar_sha256": "2d8c919e37b033113b5377aac90c2ac1641a44fd31367c98190c2466be90a151", - "key": "roborumble/ags.Glacier_0.3.2.jar", + "jar": "Heal.TekitokaBot_1.0.jar", + "jar_sha256": "16215c6afd526f753492bc8fa0952081b1cdb309c68d9f6e3e5e08dcd397b5a5", + "key": "roborumble/Heal.TekitokaBot_1.0.jar", "kind": "robot" }, - "latest_observation": "60be2730fb1d2100", + "latest_observation": "0c9e5c177bf4e9f4", "observations": [ { "classic": { - "elapsed": 15.0, + "elapsed": 2.5, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 5275.0, + "score": 4722.0, "scores": [ - 2766.0, - 2509.0 + 1956.0, + 2766.0 ], - "selected": "ags.Glacier 0.3.2" + "selected": "Heal.TekitokaBot 1.0" }, - "completed_at": "2026-09-08T20:16:24Z", - "delta_pct": -35.8, - "id": "60be2730fb1d2100", + "completed_at": "2026-09-12T15:22:52Z", + "confirmation": null, + "delta_pct": -9.8, + "id": "0c9e5c177bf4e9f4", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "5939e54be425d8aca0dd5e69f96538773a8fdc8a", + "official_parameters": true, + "tank_royale_commit": "c3cb68981528224e01ffdabef4f0673f3d504681", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -38515,90 +38806,89 @@ "width": 800 }, "source_identity": { - "classic_selected": "ags.Glacier 0.3.2", + "classic_selected": "Heal.TekitokaBot 1.0", "division": "roborumble", - "jar": "ags.Glacier_0.3.2.jar", - "jar_sha256": "2d8c919e37b033113b5377aac90c2ac1641a44fd31367c98190c2466be90a151", - "key": "roborumble/ags.Glacier_0.3.2.jar", + "jar": "Heal.TekitokaBot_1.0.jar", + "jar_sha256": "16215c6afd526f753492bc8fa0952081b1cdb309c68d9f6e3e5e08dcd397b5a5", + "key": "roborumble/Heal.TekitokaBot_1.0.jar", "kind": "robot" }, - "status": "DISCREPANCY (score)", + "status": "PASS", "tank_royale": { - "elapsed": 20.0, + "bridge_only_signatures": null, + "elapsed": 18.0, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 3386.0, + "score": 4261.0, "scores": [ - 1867.0, - 1519.0 + 2444.0, + 1817.0 ], "skipped": null } } ], - "status": "score-review" + "status": "PASS" }, - "roborumble/ags.Midboss_1q.fast.jar": { + "roborumble/ICS4U1.Patrick_White_Schrodinger_1.1.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "ags.Midboss 1q.fast", + "classic_selected": "ICS4U1.Patrick_White_Schrodinger 1.1", "division": "roborumble", - "jar": "ags.Midboss_1q.fast.jar", - "jar_sha256": "803ebb0582eb77b476fe649cf8875bbf95df2ebd92fcf7853077aa7b583a4045", - "key": "roborumble/ags.Midboss_1q.fast.jar", + "jar": "ICS4U1.Patrick_White_Schrodinger_1.1.jar", + "jar_sha256": "d165f08d99277b6d844db84586e5294d2218801cf65605048d1d9ba4acb80c57", + "key": "roborumble/ICS4U1.Patrick_White_Schrodinger_1.1.jar", "kind": "robot" }, - "latest_observation": "7effb7a405de90e7", + "latest_observation": "1bff846ea433bb4d", "observations": [ { "classic": { - "elapsed": 9.8, + "elapsed": 2.7, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 5495.0, + "score": 7191.0, "scores": [ - 2997.0, - 2498.0 + 3994.0, + 3197.0 ], - "selected": "ags.Midboss 1q.fast" + "selected": "ICS4U1.Patrick_White_Schrodinger 1.1" }, - "completed_at": "2026-09-08T20:17:34Z", - "delta_pct": -6.8, - "id": "7effb7a405de90e7", + "completed_at": "2026-09-12T15:27:14Z", + "confirmation": null, + "delta_pct": -10.0, + "id": "1bff846ea433bb4d", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "5939e54be425d8aca0dd5e69f96538773a8fdc8a", + "official_parameters": true, + "tank_royale_commit": "c3cb68981528224e01ffdabef4f0673f3d504681", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -38606,24 +38896,26 @@ "width": 800 }, "source_identity": { - "classic_selected": "ags.Midboss 1q.fast", + "classic_selected": "ICS4U1.Patrick_White_Schrodinger 1.1", "division": "roborumble", - "jar": "ags.Midboss_1q.fast.jar", - "jar_sha256": "803ebb0582eb77b476fe649cf8875bbf95df2ebd92fcf7853077aa7b583a4045", - "key": "roborumble/ags.Midboss_1q.fast.jar", + "jar": "ICS4U1.Patrick_White_Schrodinger_1.1.jar", + "jar_sha256": "d165f08d99277b6d844db84586e5294d2218801cf65605048d1d9ba4acb80c57", + "key": "roborumble/ICS4U1.Patrick_White_Schrodinger_1.1.jar", "kind": "robot" }, "status": "PASS", "tank_royale": { - "elapsed": 24.0, + "bridge_only_signatures": null, + "elapsed": 16.5, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 5121.0, + "score": 6469.0, "scores": [ - 2593.0, - 2528.0 + 4026.0, + 2443.0 ], "skipped": null } @@ -38631,65 +38923,63 @@ ], "status": "PASS" }, - "roborumble/ags.micro.Carpet_1.1.jar": { + "roborumble/KiraNL.Cataris_1.0.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "ags.micro.Carpet 1.1", + "classic_selected": "KiraNL.Cataris 1.0", "division": "roborumble", - "jar": "ags.micro.Carpet_1.1.jar", - "jar_sha256": "d7d22013f45d03d1d2131ebfbf63fedf29cae8f95bf7683eb8075a29569adc9e", - "key": "roborumble/ags.micro.Carpet_1.1.jar", + "jar": "KiraNL.Cataris_1.0.jar", + "jar_sha256": "7eef580e30229435b07733125dab569246324d34c3e731ce466871a11a6fec05", + "key": "roborumble/KiraNL.Cataris_1.0.jar", "kind": "robot" }, - "latest_observation": "a5199bebb61593c0", + "latest_observation": "bbdc8fb327126f89", "observations": [ { "classic": { - "elapsed": 8.1, + "elapsed": 3.4, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 5715.0, + "score": 5623.0, "scores": [ - 3482.0, - 2233.0 + 3126.0, + 2497.0 ], - "selected": "ags.micro.Carpet 1.1" + "selected": "KiraNL.Cataris 1.0" }, - "completed_at": "2026-09-08T20:17:00Z", - "delta_pct": -12.4, - "id": "a5199bebb61593c0", + "completed_at": "2026-09-12T21:58:24Z", + "confirmation": null, + "delta_pct": -11.5, + "id": "bbdc8fb327126f89", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "aafcebc48b5e283eae36becdfb120e2b66a9a6d5", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -38697,24 +38987,26 @@ "width": 800 }, "source_identity": { - "classic_selected": "ags.micro.Carpet 1.1", + "classic_selected": "KiraNL.Cataris 1.0", "division": "roborumble", - "jar": "ags.micro.Carpet_1.1.jar", - "jar_sha256": "d7d22013f45d03d1d2131ebfbf63fedf29cae8f95bf7683eb8075a29569adc9e", - "key": "roborumble/ags.micro.Carpet_1.1.jar", + "jar": "KiraNL.Cataris_1.0.jar", + "jar_sha256": "7eef580e30229435b07733125dab569246324d34c3e731ce466871a11a6fec05", + "key": "roborumble/KiraNL.Cataris_1.0.jar", "kind": "robot" }, "status": "PASS", "tank_royale": { - "elapsed": 28.0, + "bridge_only_signatures": null, + "elapsed": 18.0, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 5006.0, + "score": 4974.0, "scores": [ - 2752.0, - 2254.0 + 2593.0, + 2381.0 ], "skipped": null } @@ -38722,65 +39014,63 @@ ], "status": "PASS" }, - "roborumble/ags.polished.PolishedRuby_1.jar": { + "roborumble/KiraNL.ChupaLite_0.4.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "ags.polished.PolishedRuby 1", + "classic_selected": "KiraNL.ChupaLite 0.4", "division": "roborumble", - "jar": "ags.polished.PolishedRuby_1.jar", - "jar_sha256": "66674145d1a973e3d1b5079f97a991485a890c843f47ee5c0caff9fb9b0fbfcf", - "key": "roborumble/ags.polished.PolishedRuby_1.jar", + "jar": "KiraNL.ChupaLite_0.4.jar", + "jar_sha256": "dca709264a88af2fcf4fa03f2d57165085e68dd2869b46192301058c318b942e", + "key": "roborumble/KiraNL.ChupaLite_0.4.jar", "kind": "robot" }, - "latest_observation": "fc49d718cc3c93ac", + "latest_observation": "ff15b24175432af1", "observations": [ { "classic": { - "elapsed": 3.9, + "elapsed": 4.0, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 12189.0, + "score": 5721.0, "scores": [ - 6340.0, - 5849.0 + 2778.0, + 2943.0 ], - "selected": "ags.polished.PolishedRuby 1" + "selected": "KiraNL.ChupaLite 0.4" }, - "completed_at": "2026-09-08T20:17:58Z", - "delta_pct": -80.9, - "id": "fc49d718cc3c93ac", + "completed_at": "2026-09-12T21:59:10Z", + "confirmation": null, + "delta_pct": 0.6, + "id": "ff15b24175432af1", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "aafcebc48b5e283eae36becdfb120e2b66a9a6d5", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -38788,90 +39078,90 @@ "width": 800 }, "source_identity": { - "classic_selected": "ags.polished.PolishedRuby 1", + "classic_selected": "KiraNL.ChupaLite 0.4", "division": "roborumble", - "jar": "ags.polished.PolishedRuby_1.jar", - "jar_sha256": "66674145d1a973e3d1b5079f97a991485a890c843f47ee5c0caff9fb9b0fbfcf", - "key": "roborumble/ags.polished.PolishedRuby_1.jar", + "jar": "KiraNL.ChupaLite_0.4.jar", + "jar_sha256": "dca709264a88af2fcf4fa03f2d57165085e68dd2869b46192301058c318b942e", + "key": "roborumble/KiraNL.ChupaLite_0.4.jar", "kind": "robot" }, - "status": "DISCREPANCY (score)", + "status": "PASS", "tank_royale": { - "elapsed": 20.1, + "bridge_only_signatures": null, + "elapsed": 18.0, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 2330.0, + "score": 5755.0, "scores": [ - 1481.0, - 849.0 + 2951.0, + 2804.0 ], "skipped": null } } ], - "status": "score-review" + "status": "PASS" }, - "roborumble/ags.rougedc.RougeDC_willow.jar": { + "roborumble/KiraNL.Chupacabra_0.5.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "ags.rougedc.RougeDC willow", + "classic_selected": "KiraNL.Chupacabra 0.5", "division": "roborumble", - "jar": "ags.rougedc.RougeDC_willow.jar", - "jar_sha256": "2aee27ddd085c75f61943240e090e018c9e69f658cd4afed508430910a41d2ab", - "key": "roborumble/ags.rougedc.RougeDC_willow.jar", + "jar": "KiraNL.Chupacabra_0.5.jar", + "jar_sha256": "a954b8d0d4e2899b9235229119a02c5debed1992cc67f974913fcafaef72b8fa", + "key": "roborumble/KiraNL.Chupacabra_0.5.jar", "kind": "robot" }, - "latest_observation": "c007d142eae29d0a", + "latest_observation": "73beffa0841e520e", "observations": [ { "classic": { - "elapsed": 10.5, + "elapsed": 3.4, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 5658.0, + "score": 5674.0, "scores": [ - 2458.0, - 3200.0 + 3091.0, + 2583.0 ], - "selected": "ags.rougedc.RougeDC willow" + "selected": "KiraNL.Chupacabra 0.5" }, - "completed_at": "2026-09-08T20:18:29Z", - "delta_pct": -5.2, - "id": "c007d142eae29d0a", + "completed_at": "2026-09-12T21:58:48Z", + "confirmation": null, + "delta_pct": -1.1, + "id": "73beffa0841e520e", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "aafcebc48b5e283eae36becdfb120e2b66a9a6d5", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -38879,24 +39169,26 @@ "width": 800 }, "source_identity": { - "classic_selected": "ags.rougedc.RougeDC willow", + "classic_selected": "KiraNL.Chupacabra 0.5", "division": "roborumble", - "jar": "ags.rougedc.RougeDC_willow.jar", - "jar_sha256": "2aee27ddd085c75f61943240e090e018c9e69f658cd4afed508430910a41d2ab", - "key": "roborumble/ags.rougedc.RougeDC_willow.jar", + "jar": "KiraNL.Chupacabra_0.5.jar", + "jar_sha256": "a954b8d0d4e2899b9235229119a02c5debed1992cc67f974913fcafaef72b8fa", + "key": "roborumble/KiraNL.Chupacabra_0.5.jar", "kind": "robot" }, "status": "PASS", "tank_royale": { - "elapsed": 20.1, + "bridge_only_signatures": null, + "elapsed": 20.0, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 5365.0, + "score": 5609.0, "scores": [ - 2786.0, - 2579.0 + 3190.0, + 2419.0 ], "skipped": null } @@ -38904,65 +39196,63 @@ ], "status": "PASS" }, - "roborumble/ahf.Acero_1.0.jar": { + "roborumble/KiraNL.SpaceKees_0.1.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "ahf.Acero 1.0", + "classic_selected": "KiraNL.SpaceKees 0.1", "division": "roborumble", - "jar": "ahf.Acero_1.0.jar", - "jar_sha256": "5208b0efb272a5f43a85b11f70f05f0c550b5f2860b7e38d41d4f43a487a0fda", - "key": "roborumble/ahf.Acero_1.0.jar", + "jar": "KiraNL.SpaceKees_0.1.jar", + "jar_sha256": "87d2258c97ecc42cf827be4ff36221a9a0a2d34758d7c881eff935cf531cdfe8", + "key": "roborumble/KiraNL.SpaceKees_0.1.jar", "kind": "robot" }, - "latest_observation": "9a49d2334b9adb0e", + "latest_observation": "51a7d06b9bd85bee", "observations": [ { "classic": { - "elapsed": 2.6, + "elapsed": 3.0, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 4651.0, + "score": 8483.0, "scores": [ - 2335.0, - 2316.0 + 3877.0, + 4606.0 ], - "selected": "ahf.Acero 1.0" + "selected": "KiraNL.SpaceKees 0.1" }, - "completed_at": "2026-09-08T20:18:52Z", - "delta_pct": -12.6, - "id": "9a49d2334b9adb0e", + "completed_at": "2026-09-12T21:59:27Z", + "confirmation": null, + "delta_pct": -2.5, + "id": "51a7d06b9bd85bee", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "aafcebc48b5e283eae36becdfb120e2b66a9a6d5", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -38970,24 +39260,26 @@ "width": 800 }, "source_identity": { - "classic_selected": "ahf.Acero 1.0", + "classic_selected": "KiraNL.SpaceKees 0.1", "division": "roborumble", - "jar": "ahf.Acero_1.0.jar", - "jar_sha256": "5208b0efb272a5f43a85b11f70f05f0c550b5f2860b7e38d41d4f43a487a0fda", - "key": "roborumble/ahf.Acero_1.0.jar", + "jar": "KiraNL.SpaceKees_0.1.jar", + "jar_sha256": "87d2258c97ecc42cf827be4ff36221a9a0a2d34758d7c881eff935cf531cdfe8", + "key": "roborumble/KiraNL.SpaceKees_0.1.jar", "kind": "robot" }, "status": "PASS", "tank_royale": { - "elapsed": 20.0, + "bridge_only_signatures": null, + "elapsed": 14.0, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 4067.0, + "score": 8271.0, "scores": [ - 2155.0, - 1912.0 + 4874.0, + 3397.0 ], "skipped": null } @@ -38995,65 +39287,63 @@ ], "status": "PASS" }, - "roborumble/ahf.NanoAndrew_.4.jar": { + "roborumble/Krabb.fe4r.Fe4r_0.4.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "ahf.NanoAndrew .4", + "classic_selected": "Krabb.fe4r.Fe4r 0.4", "division": "roborumble", - "jar": "ahf.NanoAndrew_.4.jar", - "jar_sha256": "667ad546b341badd93276d9de63623cf8ddd42918f46a2a04b23dbe114bacf2d", - "key": "roborumble/ahf.NanoAndrew_.4.jar", + "jar": "Krabb.fe4r.Fe4r_0.4.jar", + "jar_sha256": "9f79e5b0fcb27d5409c2e3da54e3dc463a9681ecec2ac3d1e1c0280fbb339ce9", + "key": "roborumble/Krabb.fe4r.Fe4r_0.4.jar", "kind": "robot" }, - "latest_observation": "06a1568606c64145", + "latest_observation": "974a69b8c7986c2a", "observations": [ { "classic": { - "elapsed": 2.5, + "elapsed": 4.1, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 6409.0, + "score": 5870.0, "scores": [ - 3626.0, - 2783.0 + 3195.0, + 2675.0 ], - "selected": "ahf.NanoAndrew .4" + "selected": "Krabb.fe4r.Fe4r 0.4" }, - "completed_at": "2026-09-08T20:19:25Z", - "delta_pct": -58.4, - "id": "06a1568606c64145", + "completed_at": "2026-09-12T22:03:26Z", + "confirmation": null, + "delta_pct": -3.3, + "id": "974a69b8c7986c2a", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "07f66a1a2edceb2ac5f9350254c039775e045ebd", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -39061,90 +39351,90 @@ "width": 800 }, "source_identity": { - "classic_selected": "ahf.NanoAndrew .4", + "classic_selected": "Krabb.fe4r.Fe4r 0.4", "division": "roborumble", - "jar": "ahf.NanoAndrew_.4.jar", - "jar_sha256": "667ad546b341badd93276d9de63623cf8ddd42918f46a2a04b23dbe114bacf2d", - "key": "roborumble/ahf.NanoAndrew_.4.jar", + "jar": "Krabb.fe4r.Fe4r_0.4.jar", + "jar_sha256": "9f79e5b0fcb27d5409c2e3da54e3dc463a9681ecec2ac3d1e1c0280fbb339ce9", + "key": "roborumble/Krabb.fe4r.Fe4r_0.4.jar", "kind": "robot" }, - "status": "DISCREPANCY (score)", + "status": "PASS", "tank_royale": { - "elapsed": 30.0, + "bridge_only_signatures": null, + "elapsed": 18.0, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 2667.0, + "score": 5677.0, "scores": [ - 1399.0, - 1268.0 + 3152.0, + 2525.0 ], "skipped": null } } ], - "status": "score-review" + "status": "PASS" }, - "roborumble/ahf.r2d2.R2d2_0.86.jar": { + "roborumble/Krabb.krabby.Krabby_1.18b.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "ahf.r2d2.R2d2 0.86", + "classic_selected": "Krabb.krabby.Krabby 1.18b", "division": "roborumble", - "jar": "ahf.r2d2.R2d2_0.86.jar", - "jar_sha256": "cdd8e80b980375b1ed59df8fe5a361207c9d3ee32c6e0d81f936e000c2b1b9f2", - "key": "roborumble/ahf.r2d2.R2d2_0.86.jar", + "jar": "Krabb.krabby.Krabby_1.18b.jar", + "jar_sha256": "cb765a9c2aed02cf2c55d05017f9abb52fd66f511bb4783f232d4ad6e58abf88", + "key": "roborumble/Krabb.krabby.Krabby_1.18b.jar", "kind": "robot" }, - "latest_observation": "b8a0807ea26810cb", + "latest_observation": "1f6ea5fdbb0c8d06", "observations": [ { "classic": { - "elapsed": 2.6, + "elapsed": 2.8, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 5997.0, + "score": 4732.0, "scores": [ - 2680.0, - 3317.0 + 2501.0, + 2231.0 ], - "selected": "ahf.r2d2.R2d2 0.86" + "selected": "Krabb.krabby.Krabby 1.18b" }, - "completed_at": "2026-09-08T20:19:48Z", - "delta_pct": -45.3, - "id": "b8a0807ea26810cb", + "completed_at": "2026-09-12T22:03:48Z", + "confirmation": null, + "delta_pct": -1.6, + "id": "1f6ea5fdbb0c8d06", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "07f66a1a2edceb2ac5f9350254c039775e045ebd", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -39152,90 +39442,90 @@ "width": 800 }, "source_identity": { - "classic_selected": "ahf.r2d2.R2d2 0.86", + "classic_selected": "Krabb.krabby.Krabby 1.18b", "division": "roborumble", - "jar": "ahf.r2d2.R2d2_0.86.jar", - "jar_sha256": "cdd8e80b980375b1ed59df8fe5a361207c9d3ee32c6e0d81f936e000c2b1b9f2", - "key": "roborumble/ahf.r2d2.R2d2_0.86.jar", + "jar": "Krabb.krabby.Krabby_1.18b.jar", + "jar_sha256": "cb765a9c2aed02cf2c55d05017f9abb52fd66f511bb4783f232d4ad6e58abf88", + "key": "roborumble/Krabb.krabby.Krabby_1.18b.jar", "kind": "robot" }, - "status": "DISCREPANCY (score)", + "status": "PASS", "tank_royale": { - "elapsed": 20.0, + "bridge_only_signatures": null, + "elapsed": 18.0, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 3283.0, + "score": 4654.0, "scores": [ - 1764.0, - 1519.0 + 2433.0, + 2221.0 ], "skipped": null } } ], - "status": "score-review" + "status": "PASS" }, - "roborumble/ahr.ice.Ice_1.0.jar": { + "roborumble/Krabb.sliNk.Garm_0.9u.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "ahr.ice.Ice 1.0", + "classic_selected": "Krabb.sliNk.Garm 0.9u", "division": "roborumble", - "jar": "ahr.ice.Ice_1.0.jar", - "jar_sha256": "419d2945138fc27ba706a168f2ef666a1b40905e98b08ccc62312f2de15ef242", - "key": "roborumble/ahr.ice.Ice_1.0.jar", + "jar": "Krabb.sliNk.Garm_0.9u.jar", + "jar_sha256": "c895d29c6c2b83c9441a643deca71f43405cb9907a2d4393832a84305967fe2d", + "key": "roborumble/Krabb.sliNk.Garm_0.9u.jar", "kind": "robot" }, - "latest_observation": "230fd620dc49add2", + "latest_observation": "a51bebcb193de7f9", "observations": [ { "classic": { - "elapsed": 4.5, + "elapsed": 6.6, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 8381.0, + "score": 4705.0, "scores": [ - 3636.0, - 4745.0 + 2337.0, + 2368.0 ], - "selected": "ahr.ice.Ice 1.0" + "selected": "Krabb.sliNk.Garm 0.9u" }, - "completed_at": "2026-09-08T20:20:07Z", - "delta_pct": -4.8, - "id": "230fd620dc49add2", + "completed_at": "2026-09-12T22:04:01Z", + "confirmation": null, + "delta_pct": null, + "id": "a51bebcb193de7f9", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "07f66a1a2edceb2ac5f9350254c039775e045ebd", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -39243,90 +39533,102 @@ "width": 800 }, "source_identity": { - "classic_selected": "ahr.ice.Ice 1.0", + "classic_selected": "Krabb.sliNk.Garm 0.9u", "division": "roborumble", - "jar": "ahr.ice.Ice_1.0.jar", - "jar_sha256": "419d2945138fc27ba706a168f2ef666a1b40905e98b08ccc62312f2de15ef242", - "key": "roborumble/ahr.ice.Ice_1.0.jar", + "jar": "Krabb.sliNk.Garm_0.9u.jar", + "jar_sha256": "c895d29c6c2b83c9441a643deca71f43405cb9907a2d4393832a84305967fe2d", + "key": "roborumble/Krabb.sliNk.Garm_0.9u.jar", "kind": "robot" }, - "status": "PASS", + "status": "DISCREPANCY (outcome)", "tank_royale": { - "elapsed": 14.0, - "error_count": 0, - "errors": [], - "has_log": false, - "ok": true, - "score": 7976.0, - "scores": [ - 4504.0, - 3472.0 + "bridge_only_signatures": [ + [ + "java.lang.NoClassDefFoundError", + "unknown" + ] + ], + "elapsed": 6.2, + "error_count": 4, + "error_signatures": [ + { + "exception": "java.lang.NoClassDefFoundError", + "origin": "unknown" + } + ], + "errors": [ + "HARNESS: worker produced no result (exit code -1)", + "java.lang.NoClassDefFoundError: Could not initialize class java.lang.StackTraceElement$HashedModules", + "Exception in thread \"Thread-1\" java.lang.NoClassDefFoundError: Could not initialize class java.lang.StackTraceElement$HashedModules", + "Exception: java.lang.NoClassDefFoundError thrown from the UncaughtExceptionHandler in thread \"Thread-1\"" ], + "has_log": true, + "ok": false, + "score": null, + "scores": [], "skipped": null } } ], - "status": "PASS" + "status": "DISCREPANCY (outcome)" }, - "roborumble/ak.Fermat_2.0.jar": { + "roborumble/Legend.Biogon_1.5.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "ak.Fermat 2.0", + "classic_selected": "Legend.Biogon 1.5", "division": "roborumble", - "jar": "ak.Fermat_2.0.jar", - "jar_sha256": "814688bbe0f93cf5cc6a6be42ab0e69ad0259c54cba8547b20ddb4b1bd7107b3", - "key": "roborumble/ak.Fermat_2.0.jar", + "jar": "Legend.Biogon_1.5.jar", + "jar_sha256": "a2ccc028eb52f7d2237c4b792216af326e6d8808cf07064d2da9672b88bcf0a5", + "key": "roborumble/Legend.Biogon_1.5.jar", "kind": "robot" }, - "latest_observation": "2e184f3d97965168", + "latest_observation": "182b54a548d2d2a1", "observations": [ { "classic": { - "elapsed": 9.2, + "elapsed": 2.7, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 4980.0, + "score": 6477.0, "scores": [ - 1884.0, - 3096.0 + 3536.0, + 2941.0 ], - "selected": "ak.Fermat 2.0" + "selected": "Legend.Biogon 1.5" }, - "completed_at": "2026-09-08T20:20:45Z", - "delta_pct": -25.1, - "id": "2e184f3d97965168", + "completed_at": "2026-09-12T22:09:35Z", + "confirmation": null, + "delta_pct": 1.8, + "id": "182b54a548d2d2a1", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "07f66a1a2edceb2ac5f9350254c039775e045ebd", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -39334,90 +39636,90 @@ "width": 800 }, "source_identity": { - "classic_selected": "ak.Fermat 2.0", + "classic_selected": "Legend.Biogon 1.5", "division": "roborumble", - "jar": "ak.Fermat_2.0.jar", - "jar_sha256": "814688bbe0f93cf5cc6a6be42ab0e69ad0259c54cba8547b20ddb4b1bd7107b3", - "key": "roborumble/ak.Fermat_2.0.jar", + "jar": "Legend.Biogon_1.5.jar", + "jar_sha256": "a2ccc028eb52f7d2237c4b792216af326e6d8808cf07064d2da9672b88bcf0a5", + "key": "roborumble/Legend.Biogon_1.5.jar", "kind": "robot" }, - "status": "DISCREPANCY (score)", + "status": "PASS", "tank_royale": { - "elapsed": 20.0, + "bridge_only_signatures": null, + "elapsed": 18.0, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 3728.0, + "score": 6593.0, "scores": [ - 2493.0, - 1235.0 + 3734.0, + 2859.0 ], "skipped": null } } ], - "status": "score-review" + "status": "PASS" }, - "roborumble/alex.Diabolo5_1.1.jar": { + "roborumble/Legend.BoulderZY_1.4.9.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "alex.Diabolo5 1.1", + "classic_selected": "Legend.BoulderZY 1.4.9", "division": "roborumble", - "jar": "alex.Diabolo5_1.1.jar", - "jar_sha256": "cc1530acd1e1ec159e4dde664d7ea82601b7b69ac93a0a081725f877391e6496", - "key": "roborumble/alex.Diabolo5_1.1.jar", + "jar": "Legend.BoulderZY_1.4.9.jar", + "jar_sha256": "654d2c5159f345819e1bac5053b6c7b0631f3f6b233120cf374e5563dc0a2d03", + "key": "roborumble/Legend.BoulderZY_1.4.9.jar", "kind": "robot" }, - "latest_observation": "9571152abf9a4117", + "latest_observation": "2bb7dd7a316d3f30", "observations": [ { "classic": { - "elapsed": 2.4, + "elapsed": 3.1, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 6507.0, + "score": 4744.0, "scores": [ - 3251.0, - 3256.0 + 2386.0, + 2358.0 ], - "selected": "alex.Diabolo5 1.1" + "selected": "Legend.BoulderZY 1.4.9" }, - "completed_at": "2026-09-08T20:21:02Z", - "delta_pct": -3.4, - "id": "9571152abf9a4117", + "completed_at": "2026-09-12T22:10:05Z", + "confirmation": null, + "delta_pct": 3.2, + "id": "2bb7dd7a316d3f30", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "07f66a1a2edceb2ac5f9350254c039775e045ebd", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -39425,24 +39727,26 @@ "width": 800 }, "source_identity": { - "classic_selected": "alex.Diabolo5 1.1", + "classic_selected": "Legend.BoulderZY 1.4.9", "division": "roborumble", - "jar": "alex.Diabolo5_1.1.jar", - "jar_sha256": "cc1530acd1e1ec159e4dde664d7ea82601b7b69ac93a0a081725f877391e6496", - "key": "roborumble/alex.Diabolo5_1.1.jar", + "jar": "Legend.BoulderZY_1.4.9.jar", + "jar_sha256": "654d2c5159f345819e1bac5053b6c7b0631f3f6b233120cf374e5563dc0a2d03", + "key": "roborumble/Legend.BoulderZY_1.4.9.jar", "kind": "robot" }, "status": "PASS", "tank_royale": { - "elapsed": 14.0, + "bridge_only_signatures": null, + "elapsed": 26.0, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 6288.0, + "score": 4896.0, "scores": [ - 3151.0, - 3137.0 + 3310.0, + 1586.0 ], "skipped": null } @@ -39450,65 +39754,63 @@ ], "status": "PASS" }, - "roborumble/alk.lap.LoudAndProud_2.23.jar": { + "roborumble/Legend.Qetro_1.6.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "alk.lap.LoudAndProud 2.23", + "classic_selected": "Legend.Qetro 1.6", "division": "roborumble", - "jar": "alk.lap.LoudAndProud_2.23.jar", - "jar_sha256": "17efb1d5344e72a8d6a5028db163d1727b131b8b9b2cb146e801df88cc1b945b", - "key": "roborumble/alk.lap.LoudAndProud_2.23.jar", + "jar": "Legend.Qetro_1.6.jar", + "jar_sha256": "eb31a188abf9582606fb7045bf4d796bb8a04abbec31f0171916e6e7e8f32422", + "key": "roborumble/Legend.Qetro_1.6.jar", "kind": "robot" }, - "latest_observation": "b7150fa0f8305e61", + "latest_observation": "198ccdef7a8da62a", "observations": [ { "classic": { - "elapsed": 5.4, + "elapsed": 2.8, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 4818.0, + "score": 850.0, "scores": [ - 2531.0, - 2287.0 + 251.0, + 599.0 ], - "selected": "alk.lap.LoudAndProud 2.23" + "selected": "Legend.Qetro 1.6" }, - "completed_at": "2026-09-08T20:21:28Z", - "delta_pct": -10.3, - "id": "b7150fa0f8305e61", + "completed_at": "2026-09-12T22:10:50Z", + "confirmation": null, + "delta_pct": 435.4, + "id": "198ccdef7a8da62a", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "3bcf7518cd5a07d1296e256ea4e102f9e3eabe38", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -39516,90 +39818,90 @@ "width": 800 }, "source_identity": { - "classic_selected": "alk.lap.LoudAndProud 2.23", + "classic_selected": "Legend.Qetro 1.6", "division": "roborumble", - "jar": "alk.lap.LoudAndProud_2.23.jar", - "jar_sha256": "17efb1d5344e72a8d6a5028db163d1727b131b8b9b2cb146e801df88cc1b945b", - "key": "roborumble/alk.lap.LoudAndProud_2.23.jar", + "jar": "Legend.Qetro_1.6.jar", + "jar_sha256": "eb31a188abf9582606fb7045bf4d796bb8a04abbec31f0171916e6e7e8f32422", + "key": "roborumble/Legend.Qetro_1.6.jar", "kind": "robot" }, - "status": "PASS", + "status": "DISCREPANCY (score)", "tank_royale": { - "elapsed": 20.0, + "bridge_only_signatures": null, + "elapsed": 18.0, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 4321.0, + "score": 4551.0, "scores": [ - 2551.0, - 1770.0 + 2468.0, + 2083.0 ], "skipped": null } } ], - "status": "PASS" + "status": "score-review" }, - "roborumble/am.Miedzix_3.0.jar": { + "roborumble/Legend.X_FireFly_1.3.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "am.Miedzix 3.0", + "classic_selected": "Legend.X_FireFly 1.3", "division": "roborumble", - "jar": "am.Miedzix_3.0.jar", - "jar_sha256": "eaebae0baf5108909282e2e018424089c946d6cf91938a01185df48783fa097f", - "key": "roborumble/am.Miedzix_3.0.jar", + "jar": "Legend.X_FireFly_1.3.jar", + "jar_sha256": "3c1a949e4da455f0170f970bc087db5c1e33ee5999f6175f4973ce616475d7ab", + "key": "roborumble/Legend.X_FireFly_1.3.jar", "kind": "robot" }, - "latest_observation": "95ffe43ca9a2cd04", + "latest_observation": "fdefe32978cfaead", "observations": [ { "classic": { "elapsed": 2.6, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 9444.0, + "score": 6932.0, "scores": [ - 4768.0, - 4676.0 + 2985.0, + 3947.0 ], - "selected": "am.Miedzix 3.0" + "selected": "Legend.X_FireFly 1.3" }, - "completed_at": "2026-09-08T20:21:43Z", - "delta_pct": 8.6, - "id": "95ffe43ca9a2cd04", + "completed_at": "2026-09-12T22:11:13Z", + "confirmation": null, + "delta_pct": -11.9, + "id": "fdefe32978cfaead", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "3bcf7518cd5a07d1296e256ea4e102f9e3eabe38", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -39607,24 +39909,26 @@ "width": 800 }, "source_identity": { - "classic_selected": "am.Miedzix 3.0", + "classic_selected": "Legend.X_FireFly 1.3", "division": "roborumble", - "jar": "am.Miedzix_3.0.jar", - "jar_sha256": "eaebae0baf5108909282e2e018424089c946d6cf91938a01185df48783fa097f", - "key": "roborumble/am.Miedzix_3.0.jar", + "jar": "Legend.X_FireFly_1.3.jar", + "jar_sha256": "3c1a949e4da455f0170f970bc087db5c1e33ee5999f6175f4973ce616475d7ab", + "key": "roborumble/Legend.X_FireFly_1.3.jar", "kind": "robot" }, "status": "PASS", "tank_royale": { - "elapsed": 12.0, + "bridge_only_signatures": null, + "elapsed": 20.0, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 10259.0, + "score": 6110.0, "scores": [ - 5202.0, - 5057.0 + 3301.0, + 2809.0 ], "skipped": null } @@ -39632,65 +39936,63 @@ ], "status": "PASS" }, - "roborumble/amarok.Rookie_1.1.jar": { + "roborumble/Lo_Ian.Gandalf_V4_4.0.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "amarok.Rookie 1.1", + "classic_selected": "Lo_Ian.Gandalf_V4 4.0", "division": "roborumble", - "jar": "amarok.Rookie_1.1.jar", - "jar_sha256": "34cf928378f574c9d6eba50911a39c636f8a7605c310be52839fd1bd4d667e39", - "key": "roborumble/amarok.Rookie_1.1.jar", + "jar": "Lo_Ian.Gandalf_V4_4.0.jar", + "jar_sha256": "9b7a888722bb3d6f6ecdb0b9714b64a6cb7496fb9f00e297680943de82c752d2", + "key": "roborumble/Lo_Ian.Gandalf_V4_4.0.jar", "kind": "robot" }, - "latest_observation": "4358feef92af528c", + "latest_observation": "8890f7a46ab1884b", "observations": [ { "classic": { - "elapsed": 2.7, + "elapsed": 2.5, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 5044.0, + "score": 7966.0, "scores": [ - 2811.0, - 2233.0 + 3595.0, + 4371.0 ], - "selected": "amarok.Rookie 1.1" + "selected": "Lo_Ian.Gandalf_V4 4.0" }, - "completed_at": "2026-09-08T20:22:06Z", - "delta_pct": -11.6, - "id": "4358feef92af528c", + "completed_at": "2026-09-12T22:13:09Z", + "confirmation": null, + "delta_pct": -23.1, + "id": "8890f7a46ab1884b", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "3bcf7518cd5a07d1296e256ea4e102f9e3eabe38", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -39698,24 +40000,26 @@ "width": 800 }, "source_identity": { - "classic_selected": "amarok.Rookie 1.1", + "classic_selected": "Lo_Ian.Gandalf_V4 4.0", "division": "roborumble", - "jar": "amarok.Rookie_1.1.jar", - "jar_sha256": "34cf928378f574c9d6eba50911a39c636f8a7605c310be52839fd1bd4d667e39", - "key": "roborumble/amarok.Rookie_1.1.jar", + "jar": "Lo_Ian.Gandalf_V4_4.0.jar", + "jar_sha256": "9b7a888722bb3d6f6ecdb0b9714b64a6cb7496fb9f00e297680943de82c752d2", + "key": "roborumble/Lo_Ian.Gandalf_V4_4.0.jar", "kind": "robot" }, "status": "PASS", "tank_royale": { + "bridge_only_signatures": null, "elapsed": 20.0, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 4459.0, + "score": 6124.0, "scores": [ - 2242.0, - 2217.0 + 3691.0, + 2433.0 ], "skipped": null } @@ -39723,65 +40027,63 @@ ], "status": "PASS" }, - "roborumble/amc.ROBv202_1.01.jar": { + "roborumble/McS.Spanky_test_0.1a.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "amc.ROBv202 1.01", + "classic_selected": "McS.Spanky_test 0.1a", "division": "roborumble", - "jar": "amc.ROBv202_1.01.jar", - "jar_sha256": "eeeefad3aaac8d19b0ce5d7a3d3af5b4808fefbaf71523c6ecd43834150ee6be", - "key": "roborumble/amc.ROBv202_1.01.jar", + "jar": "McS.Spanky_test_0.1a.jar", + "jar_sha256": "de3c5ea13a4fd84f5148ef75263cf441f6f41f0fc0cd57d11437dd79e29fda15", + "key": "roborumble/McS.Spanky_test_0.1a.jar", "kind": "robot" }, - "latest_observation": "7af3d80d2aa0cb8e", + "latest_observation": "97acd28e075752eb", "observations": [ { "classic": { - "elapsed": 4.0, + "elapsed": 4.6, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 2517.0, + "score": 5832.0, "scores": [ - 1470.0, - 1047.0 + 3263.0, + 2569.0 ], - "selected": "amc.ROBv202 1.01" + "selected": "McS.Spanky_test 0.1a" }, - "completed_at": "2026-09-08T20:22:38Z", - "delta_pct": -8.8, - "id": "7af3d80d2aa0cb8e", + "completed_at": "2026-09-12T22:36:26Z", + "confirmation": null, + "delta_pct": -34.6, + "id": "97acd28e075752eb", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "bridge_commit": "d177578b2a187aa1dbe524ffbb02f362b0241cfc", "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" - }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -39789,90 +40091,90 @@ "width": 800 }, "source_identity": { - "classic_selected": "amc.ROBv202 1.01", + "classic_selected": "McS.Spanky_test 0.1a", "division": "roborumble", - "jar": "amc.ROBv202_1.01.jar", - "jar_sha256": "eeeefad3aaac8d19b0ce5d7a3d3af5b4808fefbaf71523c6ecd43834150ee6be", - "key": "roborumble/amc.ROBv202_1.01.jar", + "jar": "McS.Spanky_test_0.1a.jar", + "jar_sha256": "de3c5ea13a4fd84f5148ef75263cf441f6f41f0fc0cd57d11437dd79e29fda15", + "key": "roborumble/McS.Spanky_test_0.1a.jar", "kind": "robot" }, - "status": "PASS", + "status": "DISCREPANCY (score)", "tank_royale": { - "elapsed": 28.0, + "bridge_only_signatures": null, + "elapsed": 32.0, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 2295.0, + "score": 3815.0, "scores": [ - 1227.0, - 1068.0 + 2011.0, + 1804.0 ], "skipped": null } } ], - "status": "PASS" + "status": "score-review" }, - "roborumble/amc.ROBv203_1.0.jar": { + "roborumble/NDH.GuessFactor_1.0.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "amc.ROBv203 1.0", + "classic_selected": "NDH.GuessFactor 1.0", "division": "roborumble", - "jar": "amc.ROBv203_1.0.jar", - "jar_sha256": "1bb9b1b15f09c382abba7ee7043a81277dda0cb68bcd058b92f02fa0abda3bdd", - "key": "roborumble/amc.ROBv203_1.0.jar", + "jar": "NDH.GuessFactor_1.0.jar", + "jar_sha256": "a8a80b8313128e2a9c5b291e12b2664e98d8470c3ddd0426c6bd8b29a8845059", + "key": "roborumble/NDH.GuessFactor_1.0.jar", "kind": "robot" }, - "latest_observation": "5b13343a09625cb7", + "latest_observation": "db031b6a71c48044", "observations": [ { "classic": { - "elapsed": 2.5, + "elapsed": 2.3, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 8230.0, + "score": 6585.0, "scores": [ - 3968.0, - 4262.0 + 3188.0, + 3397.0 ], - "selected": "amc.ROBv203 1.0" + "selected": "NDH.GuessFactor 1.0" }, - "completed_at": "2026-09-08T20:22:57Z", - "delta_pct": -1.9, - "id": "5b13343a09625cb7", + "completed_at": "2026-09-12T23:02:22Z", + "confirmation": null, + "delta_pct": -20.1, + "id": "db031b6a71c48044", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "eb9dd703d38041effb1c16d683502c797f9f95eb", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -39880,24 +40182,26 @@ "width": 800 }, "source_identity": { - "classic_selected": "amc.ROBv203 1.0", + "classic_selected": "NDH.GuessFactor 1.0", "division": "roborumble", - "jar": "amc.ROBv203_1.0.jar", - "jar_sha256": "1bb9b1b15f09c382abba7ee7043a81277dda0cb68bcd058b92f02fa0abda3bdd", - "key": "roborumble/amc.ROBv203_1.0.jar", + "jar": "NDH.GuessFactor_1.0.jar", + "jar_sha256": "a8a80b8313128e2a9c5b291e12b2664e98d8470c3ddd0426c6bd8b29a8845059", + "key": "roborumble/NDH.GuessFactor_1.0.jar", "kind": "robot" }, "status": "PASS", "tank_royale": { - "elapsed": 16.0, + "bridge_only_signatures": null, + "elapsed": 18.0, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 8073.0, + "score": 5259.0, "scores": [ - 4630.0, - 3443.0 + 2661.0, + 2598.0 ], "skipped": null } @@ -39905,65 +40209,63 @@ ], "status": "PASS" }, - "roborumble/amc.ROBv300_1.1.jar": { + "roborumble/NG.LegatusLegionis_1.2.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "amc.ROBv300 1.1", + "classic_selected": "NG.LegatusLegionis 1.2", "division": "roborumble", - "jar": "amc.ROBv300_1.1.jar", - "jar_sha256": "6db4ed03047d5efd9e8de254be8f68d9e3417a875c591e974514ff055d390920", - "key": "roborumble/amc.ROBv300_1.1.jar", + "jar": "NG.LegatusLegionis_1.2.jar", + "jar_sha256": "86f8c5f642010108433a6ec7705bb3c2faa29555aeef41e160e2159d49998cb4", + "key": "roborumble/NG.LegatusLegionis_1.2.jar", "kind": "robot" }, - "latest_observation": "f9df3a01abc1f04f", + "latest_observation": "e7e8907e9e62c644", "observations": [ { "classic": { - "elapsed": 3.2, + "elapsed": 2.6, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 2648.0, + "score": 5904.0, "scores": [ - 1072.0, - 1576.0 + 2582.0, + 3322.0 ], - "selected": "amc.ROBv300 1.1" + "selected": "NG.LegatusLegionis 1.2" }, - "completed_at": "2026-09-08T20:23:24Z", - "delta_pct": 67.9, - "id": "f9df3a01abc1f04f", + "completed_at": "2026-09-12T23:04:51Z", + "confirmation": null, + "delta_pct": -18.0, + "id": "e7e8907e9e62c644", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "eb9dd703d38041effb1c16d683502c797f9f95eb", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -39971,90 +40273,90 @@ "width": 800 }, "source_identity": { - "classic_selected": "amc.ROBv300 1.1", + "classic_selected": "NG.LegatusLegionis 1.2", "division": "roborumble", - "jar": "amc.ROBv300_1.1.jar", - "jar_sha256": "6db4ed03047d5efd9e8de254be8f68d9e3417a875c591e974514ff055d390920", - "key": "roborumble/amc.ROBv300_1.1.jar", + "jar": "NG.LegatusLegionis_1.2.jar", + "jar_sha256": "86f8c5f642010108433a6ec7705bb3c2faa29555aeef41e160e2159d49998cb4", + "key": "roborumble/NG.LegatusLegionis_1.2.jar", "kind": "robot" }, - "status": "DISCREPANCY (score)", + "status": "PASS", "tank_royale": { - "elapsed": 24.1, + "bridge_only_signatures": null, + "elapsed": 20.0, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 4445.0, + "score": 4841.0, "scores": [ - 2309.0, - 2136.0 + 3059.0, + 1782.0 ], "skipped": null } } ], - "status": "score-review" + "status": "PASS" }, - "roborumble/amc.ROBv301_1.1.jar": { + "roborumble/Noran.BitchingElk_0.054.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "amc.ROBv301 1.1", + "classic_selected": "Noran.BitchingElk 0.054", "division": "roborumble", - "jar": "amc.ROBv301_1.1.jar", - "jar_sha256": "0f5ce30be90a631bbca672094046847e552d2b2370af3ec73b3d9ed8c737798f", - "key": "roborumble/amc.ROBv301_1.1.jar", + "jar": "Noran.BitchingElk_0.054.jar", + "jar_sha256": "a69eafb2a2f74431f8eb174e28dc2035270b2f741cdcd9e431a66d016d2770e7", + "key": "roborumble/Noran.BitchingElk_0.054.jar", "kind": "robot" }, - "latest_observation": "8f84ca57fd472f5b", + "latest_observation": "9d8e0d7d6484cf4e", "observations": [ { "classic": { - "elapsed": 3.8, + "elapsed": 5.2, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 4436.0, + "score": 5324.0, "scores": [ - 1954.0, - 2482.0 + 3028.0, + 2296.0 ], - "selected": "amc.ROBv301 1.1" + "selected": "Noran.BitchingElk 0.054" }, - "completed_at": "2026-09-08T20:23:53Z", - "delta_pct": 70.0, - "id": "8f84ca57fd472f5b", + "completed_at": "2026-09-12T23:07:17Z", + "confirmation": null, + "delta_pct": -68.1, + "id": "9d8e0d7d6484cf4e", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "eb9dd703d38041effb1c16d683502c797f9f95eb", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -40062,24 +40364,26 @@ "width": 800 }, "source_identity": { - "classic_selected": "amc.ROBv301 1.1", + "classic_selected": "Noran.BitchingElk 0.054", "division": "roborumble", - "jar": "amc.ROBv301_1.1.jar", - "jar_sha256": "0f5ce30be90a631bbca672094046847e552d2b2370af3ec73b3d9ed8c737798f", - "key": "roborumble/amc.ROBv301_1.1.jar", + "jar": "Noran.BitchingElk_0.054.jar", + "jar_sha256": "a69eafb2a2f74431f8eb174e28dc2035270b2f741cdcd9e431a66d016d2770e7", + "key": "roborumble/Noran.BitchingElk_0.054.jar", "kind": "robot" }, "status": "DISCREPANCY (score)", "tank_royale": { - "elapsed": 24.1, + "bridge_only_signatures": null, + "elapsed": 34.0, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 7541.0, + "score": 1700.0, "scores": [ - 3782.0, - 3759.0 + 1092.0, + 608.0 ], "skipped": null } @@ -40087,35 +40391,35 @@ ], "status": "score-review" }, - "roborumble/amc.ROBv400_1.0.jar": { + "roborumble/a.FreyaOS_1.0.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "amc.ROBv400 1.0", + "classic_selected": "a.FreyaOS 1.0", "division": "roborumble", - "jar": "amc.ROBv400_1.0.jar", - "jar_sha256": "ed8d81415f6cc852706df58f162e484cb4dc68882357c4e2f5875f5908eafa86", - "key": "roborumble/amc.ROBv400_1.0.jar", + "jar": "a.FreyaOS_1.0.jar", + "jar_sha256": "76223355e093db18e286f0660a56ffe097eb1d5549215c31cc60bddf946602b4", + "key": "roborumble/a.FreyaOS_1.0.jar", "kind": "robot" }, - "latest_observation": "09be55e2c9b7d445", + "latest_observation": "9e1e7bb327ea3434", "observations": [ { "classic": { - "elapsed": 4.0, + "elapsed": 8.3, "error_count": 0, "errors": [], "has_log": false, "ok": true, - "score": 4053.0, + "score": 6065.0, "scores": [ - 2092.0, - 1961.0 + 2950.0, + 3115.0 ], - "selected": "amc.ROBv400 1.0" + "selected": "a.FreyaOS 1.0" }, - "completed_at": "2026-09-08T20:24:19Z", - "delta_pct": 78.2, - "id": "09be55e2c9b7d445", + "completed_at": "2026-09-08T20:07:12Z", + "delta_pct": -8.3, + "id": "a90b9e5e44b1a73b", "manifest": { "artifacts": { "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", @@ -40153,161 +40457,46 @@ "width": 800 }, "source_identity": { - "classic_selected": "amc.ROBv400 1.0", + "classic_selected": "a.FreyaOS 1.0", "division": "roborumble", - "jar": "amc.ROBv400_1.0.jar", - "jar_sha256": "ed8d81415f6cc852706df58f162e484cb4dc68882357c4e2f5875f5908eafa86", - "key": "roborumble/amc.ROBv400_1.0.jar", + "jar": "a.FreyaOS_1.0.jar", + "jar_sha256": "76223355e093db18e286f0660a56ffe097eb1d5549215c31cc60bddf946602b4", + "key": "roborumble/a.FreyaOS_1.0.jar", "kind": "robot" }, - "status": "DISCREPANCY (score)", + "status": "PASS", "tank_royale": { - "elapsed": 22.0, + "elapsed": 26.0, "error_count": 0, "errors": [], "has_log": false, "ok": true, - "score": 7223.0, + "score": 5563.0, "scores": [ - 3849.0, - 3374.0 + 3052.0, + 2511.0 ], "skipped": null } - } - ], - "status": "score-review" - }, - "roborumble/amk.ChumbaMini_0.2.jar": { - "diagnosis_events": [], - "identity": { - "classic_selected": "amk.ChumbaMini 0.2", - "division": "roborumble", - "jar": "amk.ChumbaMini_0.2.jar", - "jar_sha256": "5770270c23f9223e4df93f5455fcf461ecd30309fc318f3d53cbbdf93e133d6b", - "key": "roborumble/amk.ChumbaMini_0.2.jar", - "kind": "robot" - }, - "latest_observation": "a2683415dda92a08", - "observations": [ + }, { "classic": { - "elapsed": 3.0, - "error_count": 100, - "errors": [ - "SYSTEM: java.lang.SecurityException occurred on robocode.DeathEvent", - "java.lang.SecurityException: You may only have 5 streams open at a time.", - "SYSTEM: java.lang.SecurityException occurred on robocode.DeathEvent", - "java.lang.SecurityException: You may only have 5 streams open at a time.", - "SYSTEM: java.lang.SecurityException occurred on robocode.WinEvent", - "java.lang.SecurityException: You may only have 5 streams open at a time.", - "SYSTEM: java.lang.SecurityException occurred on robocode.DeathEvent", - "java.lang.SecurityException: You may only have 5 streams open at a time.", - "SYSTEM: java.lang.SecurityException occurred on robocode.DeathEvent", - "java.lang.SecurityException: You may only have 5 streams open at a time.", - "SYSTEM: java.lang.SecurityException occurred on robocode.WinEvent", - "java.lang.SecurityException: You may only have 5 streams open at a time.", - "SYSTEM: java.lang.SecurityException occurred on robocode.WinEvent", - "java.lang.SecurityException: You may only have 5 streams open at a time.", - "SYSTEM: java.lang.SecurityException occurred on robocode.WinEvent", - "java.lang.SecurityException: You may only have 5 streams open at a time.", - "SYSTEM: java.lang.SecurityException occurred on robocode.DeathEvent", - "java.lang.SecurityException: You may only have 5 streams open at a time.", - "SYSTEM: java.lang.SecurityException occurred on robocode.DeathEvent", - "java.lang.SecurityException: You may only have 5 streams open at a time.", - "SYSTEM: java.lang.SecurityException occurred on robocode.WinEvent", - "java.lang.SecurityException: You may only have 5 streams open at a time.", - "SYSTEM: java.lang.SecurityException occurred on robocode.WinEvent", - "java.lang.SecurityException: You may only have 5 streams open at a time.", - "SYSTEM: java.lang.SecurityException occurred on robocode.WinEvent", - "java.lang.SecurityException: You may only have 5 streams open at a time.", - "SYSTEM: java.lang.SecurityException occurred on robocode.WinEvent", - "java.lang.SecurityException: You may only have 5 streams open at a time.", - "SYSTEM: java.lang.SecurityException occurred on robocode.DeathEvent", - "java.lang.SecurityException: You may only have 5 streams open at a time.", - "SYSTEM: java.lang.SecurityException occurred on robocode.WinEvent", - "java.lang.SecurityException: You may only have 5 streams open at a time.", - "SYSTEM: java.lang.SecurityException occurred on robocode.DeathEvent", - "java.lang.SecurityException: You may only have 5 streams open at a time.", - "SYSTEM: java.lang.SecurityException occurred on robocode.DeathEvent", - "java.lang.SecurityException: You may only have 5 streams open at a time.", - "SYSTEM: java.lang.SecurityException occurred on robocode.DeathEvent", - "java.lang.SecurityException: You may only have 5 streams open at a time.", - "SYSTEM: java.lang.SecurityException occurred on robocode.DeathEvent", - "java.lang.SecurityException: You may only have 5 streams open at a time.", - "SYSTEM: java.lang.SecurityException occurred on robocode.DeathEvent", - "java.lang.SecurityException: You may only have 5 streams open at a time.", - "SYSTEM: java.lang.SecurityException occurred on robocode.DeathEvent", - "java.lang.SecurityException: You may only have 5 streams open at a time.", - "SYSTEM: java.lang.SecurityException occurred on robocode.WinEvent", - "java.lang.SecurityException: You may only have 5 streams open at a time.", - "SYSTEM: java.lang.SecurityException occurred on robocode.DeathEvent", - "java.lang.SecurityException: You may only have 5 streams open at a time.", - "SYSTEM: java.lang.SecurityException occurred on robocode.WinEvent", - "java.lang.SecurityException: You may only have 5 streams open at a time.", - "SYSTEM: java.lang.SecurityException occurred on robocode.WinEvent", - "java.lang.SecurityException: You may only have 5 streams open at a time.", - "SYSTEM: java.lang.SecurityException occurred on robocode.WinEvent", - "java.lang.SecurityException: You may only have 5 streams open at a time.", - "SYSTEM: java.lang.SecurityException occurred on robocode.DeathEvent", - "java.lang.SecurityException: You may only have 5 streams open at a time.", - "SYSTEM: java.lang.SecurityException occurred on robocode.WinEvent", - "java.lang.SecurityException: You may only have 5 streams open at a time.", - "SYSTEM: java.lang.SecurityException occurred on robocode.WinEvent", - "java.lang.SecurityException: You may only have 5 streams open at a time.", - "SYSTEM: java.lang.SecurityException occurred on robocode.WinEvent", - "java.lang.SecurityException: You may only have 5 streams open at a time.", - "SYSTEM: java.lang.SecurityException occurred on robocode.DeathEvent", - "java.lang.SecurityException: You may only have 5 streams open at a time.", - "SYSTEM: java.lang.SecurityException occurred on robocode.DeathEvent", - "java.lang.SecurityException: You may only have 5 streams open at a time.", - "SYSTEM: java.lang.SecurityException occurred on robocode.WinEvent", - "java.lang.SecurityException: You may only have 5 streams open at a time.", - "SYSTEM: java.lang.SecurityException occurred on robocode.WinEvent", - "java.lang.SecurityException: You may only have 5 streams open at a time.", - "SYSTEM: java.lang.SecurityException occurred on robocode.DeathEvent", - "java.lang.SecurityException: You may only have 5 streams open at a time.", - "SYSTEM: java.lang.SecurityException occurred on robocode.WinEvent", - "java.lang.SecurityException: You may only have 5 streams open at a time.", - "SYSTEM: java.lang.SecurityException occurred on robocode.DeathEvent", - "java.lang.SecurityException: You may only have 5 streams open at a time.", - "SYSTEM: java.lang.SecurityException occurred on robocode.WinEvent", - "java.lang.SecurityException: You may only have 5 streams open at a time.", - "SYSTEM: java.lang.SecurityException occurred on robocode.DeathEvent", - "java.lang.SecurityException: You may only have 5 streams open at a time.", - "SYSTEM: java.lang.SecurityException occurred on robocode.WinEvent", - "java.lang.SecurityException: You may only have 5 streams open at a time.", - "SYSTEM: java.lang.SecurityException occurred on robocode.WinEvent", - "java.lang.SecurityException: You may only have 5 streams open at a time.", - "SYSTEM: java.lang.SecurityException occurred on robocode.WinEvent", - "java.lang.SecurityException: You may only have 5 streams open at a time.", - "SYSTEM: java.lang.SecurityException occurred on robocode.WinEvent", - "java.lang.SecurityException: You may only have 5 streams open at a time.", - "SYSTEM: java.lang.SecurityException occurred on robocode.WinEvent", - "java.lang.SecurityException: You may only have 5 streams open at a time.", - "SYSTEM: java.lang.SecurityException occurred on robocode.WinEvent", - "java.lang.SecurityException: You may only have 5 streams open at a time.", - "SYSTEM: java.lang.SecurityException occurred on robocode.WinEvent", - "java.lang.SecurityException: You may only have 5 streams open at a time.", - "SYSTEM: java.lang.SecurityException occurred on robocode.DeathEvent", - "java.lang.SecurityException: You may only have 5 streams open at a time.", - "SYSTEM: java.lang.SecurityException occurred on robocode.WinEvent", - "java.lang.SecurityException: You may only have 5 streams open at a time.", - "SYSTEM: java.lang.SecurityException occurred on robocode.DeathEvent", - "java.lang.SecurityException: You may only have 5 streams open at a time." - ], - "has_log": true, + "elapsed": 3.1, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, "ok": true, - "score": 5187.0, + "score": 6664.0, "scores": [ - 2322.0, - 2865.0 + 3194.0, + 3470.0 ], - "selected": "amk.ChumbaMini 0.2" + "selected": "a.FreyaOS 1.0" }, - "completed_at": "2026-09-08T20:24:36Z", - "delta_pct": 12.6, - "id": "a2683415dda92a08", + "completed_at": "2026-09-09T17:57:52Z", + "delta_pct": -27.4, + "id": "250efa0576cb1c56", "manifest": { "artifacts": { "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", @@ -40345,90 +40534,74 @@ "width": 800 }, "source_identity": { - "classic_selected": "amk.ChumbaMini 0.2", + "classic_selected": "a.FreyaOS 1.0", "division": "roborumble", - "jar": "amk.ChumbaMini_0.2.jar", - "jar_sha256": "5770270c23f9223e4df93f5455fcf461ecd30309fc318f3d53cbbdf93e133d6b", - "key": "roborumble/amk.ChumbaMini_0.2.jar", + "jar": "a.FreyaOS_1.0.jar", + "jar_sha256": "76223355e093db18e286f0660a56ffe097eb1d5549215c31cc60bddf946602b4", + "key": "roborumble/a.FreyaOS_1.0.jar", "kind": "robot" }, - "status": "PASS", + "status": "DISCREPANCY (score)", "tank_royale": { - "elapsed": 14.0, + "bridge_only_signatures": null, + "elapsed": 28.0, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 5843.0, + "score": 4836.0, "scores": [ - 3157.0, - 2686.0 + 2463.0, + 2373.0 ], "skipped": null } - } - ], - "status": "PASS" - }, - "roborumble/amk.ChumbaWumba_0.3.jar": { - "diagnosis_events": [], - "identity": { - "classic_selected": "amk.ChumbaWumba 0.3", - "division": "roborumble", - "jar": "amk.ChumbaWumba_0.3.jar", - "jar_sha256": "f7594cdfa02419ae112013ec923387736a89840712162020ecb899e39d6127e9", - "key": "roborumble/amk.ChumbaWumba_0.3.jar", - "kind": "robot" - }, - "latest_observation": "945bce04cca29751", - "observations": [ + }, { "classic": { - "elapsed": 2.7, + "elapsed": 4.4, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 5213.0, + "score": 5886.0, "scores": [ - 2618.0, - 2595.0 + 2449.0, + 3437.0 ], - "selected": "amk.ChumbaWumba 0.3" + "selected": "a.FreyaOS 1.0" }, - "completed_at": "2026-09-08T20:24:55Z", - "delta_pct": -5.4, - "id": "945bce04cca29751", + "completed_at": "2026-09-11T17:53:52Z", + "confirmation": null, + "delta_pct": -18.0, + "id": "9e1e7bb327ea3434", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -40436,24 +40609,26 @@ "width": 800 }, "source_identity": { - "classic_selected": "amk.ChumbaWumba 0.3", + "classic_selected": "a.FreyaOS 1.0", "division": "roborumble", - "jar": "amk.ChumbaWumba_0.3.jar", - "jar_sha256": "f7594cdfa02419ae112013ec923387736a89840712162020ecb899e39d6127e9", - "key": "roborumble/amk.ChumbaWumba_0.3.jar", + "jar": "a.FreyaOS_1.0.jar", + "jar_sha256": "76223355e093db18e286f0660a56ffe097eb1d5549215c31cc60bddf946602b4", + "key": "roborumble/a.FreyaOS_1.0.jar", "kind": "robot" }, "status": "PASS", "tank_royale": { - "elapsed": 16.0, + "bridge_only_signatures": null, + "elapsed": 36.1, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 4933.0, + "score": 4827.0, "scores": [ - 2953.0, - 1980.0 + 2565.0, + 2262.0 ], "skipped": null } @@ -40461,35 +40636,35 @@ ], "status": "PASS" }, - "roborumble/amk.Punbot.Punbot_0.01.jar": { + "roborumble/aaa.r.ScalarR_0.005h.053.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "amk.Punbot.Punbot 0.01", + "classic_selected": "aaa.r.ScalarR 0.005h.053", "division": "roborumble", - "jar": "amk.Punbot.Punbot_0.01.jar", - "jar_sha256": "44e10755757c7cb523ad7f6a746f5524f6a054fe7d047528da8330829284b389", - "key": "roborumble/amk.Punbot.Punbot_0.01.jar", + "jar": "aaa.r.ScalarR_0.005h.053.jar", + "jar_sha256": "60fef68d968790732c85b20d885e1ca9e99c5ba245e43c1a167f9f3b8956c055", + "key": "roborumble/aaa.r.ScalarR_0.005h.053.jar", "kind": "robot" }, - "latest_observation": "5cb33aff96c3e759", + "latest_observation": "7c97630f120460e2", "observations": [ { "classic": { - "elapsed": 2.6, + "elapsed": 104.0, "error_count": 0, "errors": [], "has_log": false, "ok": true, - "score": 5777.0, + "score": 4202.0, "scores": [ - 2448.0, - 3329.0 + 1871.0, + 2331.0 ], - "selected": "amk.Punbot.Punbot 0.01" + "selected": "aaa.r.ScalarR 0.005h.053" }, - "completed_at": "2026-09-08T20:25:31Z", - "delta_pct": 1.1, - "id": "5cb33aff96c3e759", + "completed_at": "2026-09-08T20:09:10Z", + "delta_pct": 216.0, + "id": "789ba80b28f3224a", "manifest": { "artifacts": { "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", @@ -40527,90 +40702,72 @@ "width": 800 }, "source_identity": { - "classic_selected": "amk.Punbot.Punbot 0.01", + "classic_selected": "aaa.r.ScalarR 0.005h.053", "division": "roborumble", - "jar": "amk.Punbot.Punbot_0.01.jar", - "jar_sha256": "44e10755757c7cb523ad7f6a746f5524f6a054fe7d047528da8330829284b389", - "key": "roborumble/amk.Punbot.Punbot_0.01.jar", + "jar": "aaa.r.ScalarR_0.005h.053.jar", + "jar_sha256": "60fef68d968790732c85b20d885e1ca9e99c5ba245e43c1a167f9f3b8956c055", + "key": "roborumble/aaa.r.ScalarR_0.005h.053.jar", "kind": "robot" }, - "status": "PASS", + "status": "DISCREPANCY (score)", "tank_royale": { - "elapsed": 16.0, + "elapsed": 14.1, "error_count": 0, "errors": [], "has_log": false, "ok": true, - "score": 5841.0, + "score": 13278.0, "scores": [ - 3152.0, - 2689.0 + 7349.0, + 5929.0 ], "skipped": null } - } - ], - "status": "PASS" - }, - "roborumble/amk.ShizzleStiX.ShizzleStiX_0.6.jar": { - "diagnosis_events": [], - "identity": { - "classic_selected": "amk.ShizzleStiX.ShizzleStiX 0.6", - "division": "roborumble", - "jar": "amk.ShizzleStiX.ShizzleStiX_0.6.jar", - "jar_sha256": "3e93e50b7380b8b2f98ab1c30911bc56a98c6eb27ccb5125d1aa8cbbc5987850", - "key": "roborumble/amk.ShizzleStiX.ShizzleStiX_0.6.jar", - "kind": "robot" - }, - "latest_observation": "fcb8486e2c29e9dc", - "observations": [ + }, { "classic": { - "elapsed": 2.4, + "elapsed": 92.9, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 6365.0, + "score": 4206.0, "scores": [ - 3091.0, - 3274.0 + 1830.0, + 2376.0 ], - "selected": "amk.ShizzleStiX.ShizzleStiX 0.6" + "selected": "aaa.r.ScalarR 0.005h.053" }, - "completed_at": "2026-09-08T20:25:48Z", - "delta_pct": 0.5, - "id": "fcb8486e2c29e9dc", + "completed_at": "2026-09-11T17:57:11Z", + "confirmation": null, + "delta_pct": 190.7, + "id": "039e536841d5a2cf", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -40618,90 +40775,75 @@ "width": 800 }, "source_identity": { - "classic_selected": "amk.ShizzleStiX.ShizzleStiX 0.6", + "classic_selected": "aaa.r.ScalarR 0.005h.053", "division": "roborumble", - "jar": "amk.ShizzleStiX.ShizzleStiX_0.6.jar", - "jar_sha256": "3e93e50b7380b8b2f98ab1c30911bc56a98c6eb27ccb5125d1aa8cbbc5987850", - "key": "roborumble/amk.ShizzleStiX.ShizzleStiX_0.6.jar", + "jar": "aaa.r.ScalarR_0.005h.053.jar", + "jar_sha256": "60fef68d968790732c85b20d885e1ca9e99c5ba245e43c1a167f9f3b8956c055", + "key": "roborumble/aaa.r.ScalarR_0.005h.053.jar", "kind": "robot" }, - "status": "PASS", + "status": "DISCREPANCY (score)", "tank_royale": { - "elapsed": 14.0, + "bridge_only_signatures": null, + "elapsed": 105.3, "error_count": 0, + "error_signatures": [], "errors": [], - "has_log": false, + "has_log": true, "ok": true, - "score": 6399.0, + "score": 12228.0, "scores": [ - 3401.0, - 2998.0 + 6488.0, + 5740.0 ], "skipped": null } - } - ], - "status": "PASS" - }, - "roborumble/amk.jointstrike.JointStrike_0.2.jar": { - "diagnosis_events": [], - "identity": { - "classic_selected": "amk.jointstrike.JointStrike 0.2", - "division": "roborumble", - "jar": "amk.jointstrike.JointStrike_0.2.jar", - "jar_sha256": "3f45fd832f7bb6b6ceb3841c1ab108583ba11b49ba06cbde2f8e61637dc28297", - "key": "roborumble/amk.jointstrike.JointStrike_0.2.jar", - "kind": "robot" - }, - "latest_observation": "5c6c92d169d651d3", - "observations": [ + }, { "classic": { - "elapsed": 2.5, + "elapsed": 94.0, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 7614.0, + "score": 4232.0, "scores": [ - 3922.0, - 3692.0 + 1960.0, + 2272.0 ], - "selected": "amk.jointstrike.JointStrike 0.2" + "selected": "aaa.r.ScalarR 0.005h.053" }, - "completed_at": "2026-09-08T20:25:12Z", - "delta_pct": -17.6, - "id": "5c6c92d169d651d3", + "completed_at": "2026-09-12T21:21:22Z", + "confirmation": null, + "delta_pct": 91.4, + "id": "7c97630f120460e2", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "9972f00ecfe4a85b707d655e40baa95525fa03f2", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "abcfd80eebf9804684b203c00aec674c99ff7105", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -40709,60 +40851,62 @@ "width": 800 }, "source_identity": { - "classic_selected": "amk.jointstrike.JointStrike 0.2", + "classic_selected": "aaa.r.ScalarR 0.005h.053", "division": "roborumble", - "jar": "amk.jointstrike.JointStrike_0.2.jar", - "jar_sha256": "3f45fd832f7bb6b6ceb3841c1ab108583ba11b49ba06cbde2f8e61637dc28297", - "key": "roborumble/amk.jointstrike.JointStrike_0.2.jar", + "jar": "aaa.r.ScalarR_0.005h.053.jar", + "jar_sha256": "60fef68d968790732c85b20d885e1ca9e99c5ba245e43c1a167f9f3b8956c055", + "key": "roborumble/aaa.r.ScalarR_0.005h.053.jar", "kind": "robot" }, - "status": "PASS", + "status": "DISCREPANCY (score)", "tank_royale": { - "elapsed": 14.0, + "bridge_only_signatures": null, + "elapsed": 447.9, "error_count": 0, + "error_signatures": [], "errors": [], - "has_log": false, + "has_log": true, "ok": true, - "score": 6274.0, + "score": 8100.0, "scores": [ - 3212.0, - 3062.0 + 5598.0, + 2502.0 ], "skipped": null } } ], - "status": "PASS" + "status": "score-review" }, - "roborumble/amk.superstrike.SuperStrike_0.3.jar": { + "roborumble/ab.DengerousRoBatra_1.3.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "amk.superstrike.SuperStrike 0.3", + "classic_selected": "ab.DengerousRoBatra 1.3", "division": "roborumble", - "jar": "amk.superstrike.SuperStrike_0.3.jar", - "jar_sha256": "ef146a488f92e25b5f8f957831fd715bb6a6b2b1f8cf72ffa05bad505c34c79b", - "key": "roborumble/amk.superstrike.SuperStrike_0.3.jar", + "jar": "ab.DengerousRoBatra_1.3.jar", + "jar_sha256": "62d46305baa7ded6cbbe763b1614d41c1ff2dd2d9992c028cfbf1a26c228530f", + "key": "roborumble/ab.DengerousRoBatra_1.3.jar", "kind": "robot" }, - "latest_observation": "54ea093325f72804", + "latest_observation": "b308807f77b31226", "observations": [ { "classic": { - "elapsed": 2.6, + "elapsed": 2.8, "error_count": 0, "errors": [], "has_log": false, "ok": true, - "score": 7839.0, + "score": 5727.0, "scores": [ - 4140.0, - 3699.0 + 2778.0, + 2949.0 ], - "selected": "amk.superstrike.SuperStrike 0.3" + "selected": "ab.DengerousRoBatra 1.3" }, - "completed_at": "2026-09-08T20:26:09Z", - "delta_pct": -57.0, - "id": "54ea093325f72804", + "completed_at": "2026-09-08T20:09:35Z", + "delta_pct": -12.6, + "id": "b9f7cc9d84668eb6", "manifest": { "artifacts": { "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", @@ -40800,90 +40944,72 @@ "width": 800 }, "source_identity": { - "classic_selected": "amk.superstrike.SuperStrike 0.3", + "classic_selected": "ab.DengerousRoBatra 1.3", "division": "roborumble", - "jar": "amk.superstrike.SuperStrike_0.3.jar", - "jar_sha256": "ef146a488f92e25b5f8f957831fd715bb6a6b2b1f8cf72ffa05bad505c34c79b", - "key": "roborumble/amk.superstrike.SuperStrike_0.3.jar", + "jar": "ab.DengerousRoBatra_1.3.jar", + "jar_sha256": "62d46305baa7ded6cbbe763b1614d41c1ff2dd2d9992c028cfbf1a26c228530f", + "key": "roborumble/ab.DengerousRoBatra_1.3.jar", "kind": "robot" }, - "status": "DISCREPANCY (score)", + "status": "PASS", "tank_royale": { - "elapsed": 18.0, + "elapsed": 22.0, "error_count": 0, "errors": [], "has_log": false, "ok": true, - "score": 3368.0, + "score": 5005.0, "scores": [ - 2340.0, - 1028.0 + 2593.0, + 2412.0 ], "skipped": null } - } - ], - "status": "score-review" - }, - "roborumble/ao.T100_0.9.jar": { - "diagnosis_events": [], - "identity": { - "classic_selected": "ao.T100 0.9", - "division": "roborumble", - "jar": "ao.T100_0.9.jar", - "jar_sha256": "05273a2b787354f59695eeb17a4a8de330ed34d75d805aa17d91a7b756efaae0", - "key": "roborumble/ao.T100_0.9.jar", - "kind": "robot" - }, - "latest_observation": "4ae1803915fa8384", - "observations": [ + }, { "classic": { - "elapsed": 4.0, + "elapsed": 2.8, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 7797.0, + "score": 5884.0, "scores": [ - 3914.0, - 3883.0 + 3296.0, + 2588.0 ], - "selected": "ao.T100 0.9" + "selected": "ab.DengerousRoBatra 1.3" }, - "completed_at": "2026-09-08T20:28:16Z", - "delta_pct": -51.0, - "id": "4ae1803915fa8384", + "completed_at": "2026-09-11T17:57:36Z", + "confirmation": null, + "delta_pct": -9.8, + "id": "b308807f77b31226", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -40891,60 +41017,163 @@ "width": 800 }, "source_identity": { - "classic_selected": "ao.T100 0.9", + "classic_selected": "ab.DengerousRoBatra 1.3", "division": "roborumble", - "jar": "ao.T100_0.9.jar", - "jar_sha256": "05273a2b787354f59695eeb17a4a8de330ed34d75d805aa17d91a7b756efaae0", - "key": "roborumble/ao.T100_0.9.jar", + "jar": "ab.DengerousRoBatra_1.3.jar", + "jar_sha256": "62d46305baa7ded6cbbe763b1614d41c1ff2dd2d9992c028cfbf1a26c228530f", + "key": "roborumble/ab.DengerousRoBatra_1.3.jar", "kind": "robot" }, - "status": "DISCREPANCY (score)", + "status": "PASS", "tank_royale": { - "elapsed": 96.1, + "bridge_only_signatures": null, + "elapsed": 22.0, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 3822.0, + "score": 5310.0, "scores": [ - 2016.0, - 1806.0 + 2958.0, + 2352.0 ], "skipped": null } } ], - "status": "score-review" + "status": "PASS" }, - "roborumble/ap.Frederick_1.1.jar": { + "roborumble/abud.ThirdRobo_1.0.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "ap.Frederick 1.1", + "classic_selected": "abud.ThirdRobo 1.0", "division": "roborumble", - "jar": "ap.Frederick_1.1.jar", - "jar_sha256": "d7f1709e4ea064f0662f383c339f57390977292fdd921933adc36e305a375899", - "key": "roborumble/ap.Frederick_1.1.jar", + "jar": "abud.ThirdRobo_1.0.jar", + "jar_sha256": "124b7067cca1b407845176fd26ad2388aab1ad20085b34bd5561539515272a16", + "key": "roborumble/abud.ThirdRobo_1.0.jar", "kind": "robot" }, - "latest_observation": "df6c7329f8f52c4e", + "latest_observation": "04f683a09f60d02c", "observations": [ { "classic": { - "elapsed": 4.4, - "error_count": 0, - "errors": [], - "has_log": false, + "elapsed": 6.2, + "error_count": 328, + "errors": [ + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo" + ], + "has_log": true, "ok": true, - "score": 120.0, + "score": 6152.0, "scores": [ - 120.0, - 0.0 + 2879.0, + 3273.0 ], - "selected": "ap.Frederick 1.1" + "selected": "abud.ThirdRobo 1.0" }, - "completed_at": "2026-09-08T20:28:55Z", - "delta_pct": 4.2, - "id": "df6c7329f8f52c4e", + "completed_at": "2026-09-08T20:09:46Z", + "delta_pct": null, + "id": "b6434f799b62dbb9", "manifest": { "artifacts": { "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", @@ -40982,90 +41211,61268 @@ "width": 800 }, "source_identity": { - "classic_selected": "ap.Frederick 1.1", + "classic_selected": "abud.ThirdRobo 1.0", "division": "roborumble", - "jar": "ap.Frederick_1.1.jar", - "jar_sha256": "d7f1709e4ea064f0662f383c339f57390977292fdd921933adc36e305a375899", - "key": "roborumble/ap.Frederick_1.1.jar", + "jar": "abud.ThirdRobo_1.0.jar", + "jar_sha256": "124b7067cca1b407845176fd26ad2388aab1ad20085b34bd5561539515272a16", + "key": "roborumble/abud.ThirdRobo_1.0.jar", "kind": "robot" }, - "status": "PASS", + "status": "FAIL (TR)", "tank_royale": { - "elapsed": 34.0, - "error_count": 0, - "errors": [], - "has_log": false, - "ok": true, - "score": 125.0, - "scores": [ - 124.0, - 1.0 - ], - "skipped": null + "elapsed": 4.2, + "error_count": 82, + "errors": [ + "HARNESS: worker produced no result (exit code -1)", + "dev.robocode.tankroyale.botapi.BotException: Could not serialize team message: abud.EnemyInfo", + "dev.robocode.tankroyale.botapi.BotException: Could not serialize team message: abud.EnemyInfo", + "dev.robocode.tankroyale.botapi.BotException: Could not serialize team message: abud.EnemyInfo", + "dev.robocode.tankroyale.botapi.BotException: Could not serialize team message: abud.EnemyInfo", + "dev.robocode.tankroyale.botapi.BotException: Could not serialize team message: abud.EnemyInfo", + "dev.robocode.tankroyale.botapi.BotException: Could not serialize team message: abud.EnemyInfo", + "dev.robocode.tankroyale.botapi.BotException: Could not serialize team message: abud.EnemyInfo", + "dev.robocode.tankroyale.botapi.BotException: Could not serialize team message: abud.EnemyInfo", + "dev.robocode.tankroyale.botapi.BotException: Could not serialize team message: abud.EnemyInfo", + "dev.robocode.tankroyale.botapi.BotException: Could not serialize team message: abud.EnemyInfo", + "dev.robocode.tankroyale.botapi.BotException: Could not serialize team message: abud.EnemyInfo", + "dev.robocode.tankroyale.botapi.BotException: Could not serialize team message: abud.EnemyInfo", + "dev.robocode.tankroyale.botapi.BotException: Could not serialize team message: abud.EnemyInfo", + "dev.robocode.tankroyale.botapi.BotException: Could not serialize team message: abud.EnemyInfo", + "dev.robocode.tankroyale.botapi.BotException: Could not serialize team message: abud.EnemyInfo", + "dev.robocode.tankroyale.botapi.BotException: Could not serialize team message: abud.EnemyInfo", + "dev.robocode.tankroyale.botapi.BotException: Could not serialize team message: abud.EnemyInfo", + "dev.robocode.tankroyale.botapi.BotException: Could not serialize team message: abud.EnemyInfo", + "dev.robocode.tankroyale.botapi.BotException: Could not serialize team message: abud.EnemyInfo", + "dev.robocode.tankroyale.botapi.BotException: Could not serialize team message: abud.EnemyInfo", + "dev.robocode.tankroyale.botapi.BotException: Could not serialize team message: abud.EnemyInfo", + "dev.robocode.tankroyale.botapi.BotException: Could not serialize team message: abud.EnemyInfo", + "dev.robocode.tankroyale.botapi.BotException: Could not serialize team message: abud.EnemyInfo", + "dev.robocode.tankroyale.botapi.BotException: Could not serialize team message: abud.EnemyInfo", + "dev.robocode.tankroyale.botapi.BotException: Could not serialize team message: abud.EnemyInfo", + "dev.robocode.tankroyale.botapi.BotException: Could not serialize team message: abud.EnemyInfo", + "dev.robocode.tankroyale.botapi.BotException: Could not serialize team message: abud.EnemyInfo", + "dev.robocode.tankroyale.botapi.BotException: Could not serialize team message: abud.EnemyInfo", + "dev.robocode.tankroyale.botapi.BotException: Could not serialize team message: abud.EnemyInfo", + "dev.robocode.tankroyale.botapi.BotException: Could not serialize team message: abud.EnemyInfo", + "dev.robocode.tankroyale.botapi.BotException: Could not serialize team message: abud.EnemyInfo", + "dev.robocode.tankroyale.botapi.BotException: Could not serialize team message: abud.EnemyInfo", + "dev.robocode.tankroyale.botapi.BotException: Could not serialize team message: abud.EnemyInfo", + "dev.robocode.tankroyale.botapi.BotException: Could not serialize team message: abud.EnemyInfo", + "dev.robocode.tankroyale.botapi.BotException: Could not serialize team message: abud.EnemyInfo", + "dev.robocode.tankroyale.botapi.BotException: Could not serialize team message: abud.EnemyInfo", + "dev.robocode.tankroyale.botapi.BotException: Could not serialize team message: abud.EnemyInfo", + "dev.robocode.tankroyale.botapi.BotException: Could not serialize team message: abud.EnemyInfo", + "dev.robocode.tankroyale.botapi.BotException: Could not serialize team message: abud.EnemyInfo", + "dev.robocode.tankroyale.botapi.BotException: Could not serialize team message: abud.EnemyInfo", + "dev.robocode.tankroyale.botapi.BotException: Could not serialize team message: abud.EnemyInfo", + "dev.robocode.tankroyale.botapi.BotException: Could not serialize team message: abud.EnemyInfo", + "dev.robocode.tankroyale.botapi.BotException: Could not serialize team message: abud.EnemyInfo", + "dev.robocode.tankroyale.botapi.BotException: Could not serialize team message: abud.EnemyInfo", + "dev.robocode.tankroyale.botapi.BotException: Could not serialize team message: abud.EnemyInfo", + "dev.robocode.tankroyale.botapi.BotException: Could not serialize team message: abud.EnemyInfo", + "dev.robocode.tankroyale.botapi.BotException: Could not serialize team message: abud.EnemyInfo", + "dev.robocode.tankroyale.botapi.BotException: Could not serialize team message: abud.EnemyInfo", + "dev.robocode.tankroyale.botapi.BotException: Could not serialize team message: abud.EnemyInfo", + "dev.robocode.tankroyale.botapi.BotException: Could not serialize team message: abud.EnemyInfo", + "dev.robocode.tankroyale.botapi.BotException: Could not serialize team message: abud.EnemyInfo", + "dev.robocode.tankroyale.botapi.BotException: Could not serialize team message: abud.EnemyInfo", + "dev.robocode.tankroyale.botapi.BotException: Could not serialize team message: abud.EnemyInfo", + "dev.robocode.tankroyale.botapi.BotException: Could not serialize team message: abud.EnemyInfo", + "dev.robocode.tankroyale.botapi.BotException: Could not serialize team message: abud.EnemyInfo", + "dev.robocode.tankroyale.botapi.BotException: Could not serialize team message: abud.EnemyInfo", + "dev.robocode.tankroyale.botapi.BotException: Could not serialize team message: abud.EnemyInfo", + "dev.robocode.tankroyale.botapi.BotException: Could not serialize team message: abud.EnemyInfo", + "dev.robocode.tankroyale.botapi.BotException: Could not serialize team message: abud.EnemyInfo", + "dev.robocode.tankroyale.botapi.BotException: Could not serialize team message: abud.EnemyInfo", + "dev.robocode.tankroyale.botapi.BotException: Could not serialize team message: abud.EnemyInfo", + "dev.robocode.tankroyale.botapi.BotException: Could not serialize team message: abud.EnemyInfo", + "dev.robocode.tankroyale.botapi.BotException: Could not serialize team message: abud.EnemyInfo", + "dev.robocode.tankroyale.botapi.BotException: Could not serialize team message: abud.EnemyInfo", + "dev.robocode.tankroyale.botapi.BotException: Could not serialize team message: abud.EnemyInfo", + "dev.robocode.tankroyale.botapi.BotException: Could not serialize team message: abud.EnemyInfo", + "dev.robocode.tankroyale.botapi.BotException: Could not serialize team message: abud.EnemyInfo", + "dev.robocode.tankroyale.botapi.BotException: Could not serialize team message: abud.EnemyInfo", + "dev.robocode.tankroyale.botapi.BotException: Could not serialize team message: abud.EnemyInfo", + "dev.robocode.tankroyale.botapi.BotException: Could not serialize team message: abud.EnemyInfo", + "dev.robocode.tankroyale.botapi.BotException: Could not serialize team message: abud.EnemyInfo", + "dev.robocode.tankroyale.botapi.BotException: Could not serialize team message: abud.EnemyInfo", + "dev.robocode.tankroyale.botapi.BotException: Could not serialize team message: abud.EnemyInfo", + "dev.robocode.tankroyale.botapi.BotException: Could not serialize team message: abud.EnemyInfo", + "dev.robocode.tankroyale.botapi.BotException: Could not serialize team message: abud.EnemyInfo", + "dev.robocode.tankroyale.botapi.BotException: Could not serialize team message: abud.EnemyInfo", + "dev.robocode.tankroyale.botapi.BotException: Could not serialize team message: abud.EnemyInfo", + "dev.robocode.tankroyale.botapi.BotException: Could not serialize team message: abud.EnemyInfo", + "dev.robocode.tankroyale.botapi.BotException: Could not serialize team message: abud.EnemyInfo", + "dev.robocode.tankroyale.botapi.BotException: Could not serialize team message: abud.EnemyInfo", + "dev.robocode.tankroyale.botapi.BotException: Could not serialize team message: abud.EnemyInfo" + ], + "has_log": true, + "ok": false, + "score": null, + "scores": [], + "skipped": null + } + }, + { + "classic": { + "elapsed": 5.2, + "error_count": 326, + "error_signatures": [ + { + "exception": "java.io.NotSerializableException", + "origin": "abud.ThirdRobo.onScannedRobot" + }, + { + "exception": "java.io.NotSerializableException", + "origin": "unknown" + } + ], + "errors": [ + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo" + ], + "has_log": true, + "ok": true, + "score": 6078.0, + "scores": [ + 2775.0, + 3303.0 + ], + "selected": "abud.ThirdRobo 1.0" + }, + "completed_at": "2026-09-11T17:58:56Z", + "confirmation": null, + "delta_pct": -36.5, + "id": "1b3b1abfcafc8924", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "abud.ThirdRobo 1.0", + "division": "roborumble", + "jar": "abud.ThirdRobo_1.0.jar", + "jar_sha256": "124b7067cca1b407845176fd26ad2388aab1ad20085b34bd5561539515272a16", + "key": "roborumble/abud.ThirdRobo_1.0.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (score)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 54.3, + "error_count": 14551, + "error_signatures": [ + { + "exception": "java.io.NotSerializableException", + "origin": "unknown" + } + ], + "errors": [ + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo" + ], + "has_log": true, + "ok": true, + "score": 3859.0, + "scores": [ + 2004.0, + 1855.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 5.2, + "error_count": 328, + "error_signatures": [ + { + "exception": "java.io.NotSerializableException", + "origin": "abud.ThirdRobo.onScannedRobot" + }, + { + "exception": "java.io.NotSerializableException", + "origin": "unknown" + } + ], + "errors": [ + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo" + ], + "has_log": true, + "ok": true, + "score": 5975.0, + "scores": [ + 3164.0, + 2811.0 + ], + "selected": "abud.ThirdRobo 1.0" + }, + "completed_at": "2026-09-12T21:23:00Z", + "confirmation": null, + "delta_pct": -41.3, + "id": "04f683a09f60d02c", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } + }, + "bridge_commit": "9972f00ecfe4a85b707d655e40baa95525fa03f2", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "abcfd80eebf9804684b203c00aec674c99ff7105", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "abud.ThirdRobo 1.0", + "division": "roborumble", + "jar": "abud.ThirdRobo_1.0.jar", + "jar_sha256": "124b7067cca1b407845176fd26ad2388aab1ad20085b34bd5561539515272a16", + "key": "roborumble/abud.ThirdRobo_1.0.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (score)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 58.3, + "error_count": 16785, + "error_signatures": [ + { + "exception": "java.io.NotSerializableException", + "origin": "unknown" + } + ], + "errors": [ + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo", + "java.io.NotSerializableException: abud.EnemyInfo" + ], + "has_log": true, + "ok": true, + "score": 3510.0, + "scores": [ + 1884.0, + 1626.0 + ], + "skipped": null + } + } + ], + "status": "score-review" + }, + "roborumble/acid.Bl4ck_1.0.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "acid.Bl4ck 1.0", + "division": "roborumble", + "jar": "acid.Bl4ck_1.0.jar", + "jar_sha256": "50cca7b205a1a20119a7b0d3810f54e6ce0a0c985612da73c161fcdc5bbbd5fd", + "key": "roborumble/acid.Bl4ck_1.0.jar", + "kind": "robot" + }, + "latest_observation": "910983132c52aca1", + "observations": [ + { + "classic": { + "elapsed": 2.9, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 6723.0, + "scores": [ + 3340.0, + 3383.0 + ], + "selected": "acid.Bl4ck 1.0" + }, + "completed_at": "2026-09-08T20:10:15Z", + "delta_pct": -44.7, + "id": "7bbc287f8bfe56e4", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "acid.Bl4ck 1.0", + "division": "roborumble", + "jar": "acid.Bl4ck_1.0.jar", + "jar_sha256": "50cca7b205a1a20119a7b0d3810f54e6ce0a0c985612da73c161fcdc5bbbd5fd", + "key": "roborumble/acid.Bl4ck_1.0.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (score)", + "tank_royale": { + "elapsed": 26.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 3717.0, + "scores": [ + 2005.0, + 1712.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 2.8, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 6342.0, + "scores": [ + 3390.0, + 2952.0 + ], + "selected": "acid.Bl4ck 1.0" + }, + "completed_at": "2026-09-11T17:59:29Z", + "confirmation": null, + "delta_pct": -43.1, + "id": "31b751ff94a78f8b", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "acid.Bl4ck 1.0", + "division": "roborumble", + "jar": "acid.Bl4ck_1.0.jar", + "jar_sha256": "50cca7b205a1a20119a7b0d3810f54e6ce0a0c985612da73c161fcdc5bbbd5fd", + "key": "roborumble/acid.Bl4ck_1.0.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (score)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 30.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 3606.0, + "scores": [ + 2410.0, + 1196.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 2.8, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 6044.0, + "scores": [ + 2766.0, + 3278.0 + ], + "selected": "acid.Bl4ck 1.0" + }, + "completed_at": "2026-09-12T21:23:29Z", + "confirmation": null, + "delta_pct": -35.6, + "id": "910983132c52aca1", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } + }, + "bridge_commit": "9972f00ecfe4a85b707d655e40baa95525fa03f2", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "abcfd80eebf9804684b203c00aec674c99ff7105", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "acid.Bl4ck 1.0", + "division": "roborumble", + "jar": "acid.Bl4ck_1.0.jar", + "jar_sha256": "50cca7b205a1a20119a7b0d3810f54e6ce0a0c985612da73c161fcdc5bbbd5fd", + "key": "roborumble/acid.Bl4ck_1.0.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (score)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 26.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 3890.0, + "scores": [ + 2411.0, + 1479.0 + ], + "skipped": null + } + } + ], + "status": "score-review" + }, + "roborumble/acid.Null_1.0.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "acid.Null 1.0", + "division": "roborumble", + "jar": "acid.Null_1.0.jar", + "jar_sha256": "66547223ee9a81b17dc19f612f5ec2fe6745fcacee1823d5d88c61cd08c76f04", + "key": "roborumble/acid.Null_1.0.jar", + "kind": "robot" + }, + "latest_observation": "6653b72b8099b103", + "observations": [ + { + "classic": { + "elapsed": 3.2, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 1809.0, + "scores": [ + 539.0, + 1270.0 + ], + "selected": "acid.Null 1.0" + }, + "completed_at": "2026-09-08T20:10:47Z", + "delta_pct": 38.5, + "id": "590ef3a4eaca28e3", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "acid.Null 1.0", + "division": "roborumble", + "jar": "acid.Null_1.0.jar", + "jar_sha256": "66547223ee9a81b17dc19f612f5ec2fe6745fcacee1823d5d88c61cd08c76f04", + "key": "roborumble/acid.Null_1.0.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (score)", + "tank_royale": { + "elapsed": 28.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 2506.0, + "scores": [ + 1482.0, + 1024.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 3.1, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 2203.0, + "scores": [ + 897.0, + 1306.0 + ], + "selected": "acid.Null 1.0" + }, + "completed_at": "2026-09-11T18:00:00Z", + "confirmation": null, + "delta_pct": 19.2, + "id": "6653b72b8099b103", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "acid.Null 1.0", + "division": "roborumble", + "jar": "acid.Null_1.0.jar", + "jar_sha256": "66547223ee9a81b17dc19f612f5ec2fe6745fcacee1823d5d88c61cd08c76f04", + "key": "roborumble/acid.Null_1.0.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 28.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 2627.0, + "scores": [ + 1433.0, + 1194.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/acid.Syzygy_1.0.4.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "acid.Syzygy 1.0.4", + "division": "roborumble", + "jar": "acid.Syzygy_1.0.4.jar", + "jar_sha256": "a7336d30e377b013c9beaa6b4afabf93d3b8a83224d344beb7428e0361c4aa97", + "key": "roborumble/acid.Syzygy_1.0.4.jar", + "kind": "robot" + }, + "latest_observation": "08ce0a239cfd1fe9", + "observations": [ + { + "classic": { + "elapsed": 3.1, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 6558.0, + "scores": [ + 3265.0, + 3293.0 + ], + "selected": "acid.Syzygy 1.0.4" + }, + "completed_at": "2026-09-08T20:11:18Z", + "delta_pct": -46.4, + "id": "e0d888daca1f0456", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "acid.Syzygy 1.0.4", + "division": "roborumble", + "jar": "acid.Syzygy_1.0.4.jar", + "jar_sha256": "a7336d30e377b013c9beaa6b4afabf93d3b8a83224d344beb7428e0361c4aa97", + "key": "roborumble/acid.Syzygy_1.0.4.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (score)", + "tank_royale": { + "elapsed": 28.1, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 3518.0, + "scores": [ + 2229.0, + 1289.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 3.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 6244.0, + "scores": [ + 2393.0, + 3851.0 + ], + "selected": "acid.Syzygy 1.0.4" + }, + "completed_at": "2026-09-11T18:00:32Z", + "confirmation": null, + "delta_pct": -40.0, + "id": "f582ec553cdc51c0", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "acid.Syzygy 1.0.4", + "division": "roborumble", + "jar": "acid.Syzygy_1.0.4.jar", + "jar_sha256": "a7336d30e377b013c9beaa6b4afabf93d3b8a83224d344beb7428e0361c4aa97", + "key": "roborumble/acid.Syzygy_1.0.4.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (score)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 28.1, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 3747.0, + "scores": [ + 1910.0, + 1837.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 3.3, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5824.0, + "scores": [ + 2568.0, + 3256.0 + ], + "selected": "acid.Syzygy 1.0.4" + }, + "completed_at": "2026-09-12T21:23:59Z", + "confirmation": null, + "delta_pct": -39.8, + "id": "08ce0a239cfd1fe9", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } + }, + "bridge_commit": "9972f00ecfe4a85b707d655e40baa95525fa03f2", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "abcfd80eebf9804684b203c00aec674c99ff7105", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "acid.Syzygy 1.0.4", + "division": "roborumble", + "jar": "acid.Syzygy_1.0.4.jar", + "jar_sha256": "a7336d30e377b013c9beaa6b4afabf93d3b8a83224d344beb7428e0361c4aa97", + "key": "roborumble/acid.Syzygy_1.0.4.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (score)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 26.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 3507.0, + "scores": [ + 1978.0, + 1529.0 + ], + "skipped": null + } + } + ], + "status": "score-review" + }, + "roborumble/ad.Quest_0.10.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "ad.Quest 0.10", + "division": "roborumble", + "jar": "ad.Quest_0.10.jar", + "jar_sha256": "7121f3447f5a2ee15fb6a8efbdecb35c5732def3307427f5c747990b2b2d8969", + "key": "roborumble/ad.Quest_0.10.jar", + "kind": "robot" + }, + "latest_observation": "ed5607f735d17e3f", + "observations": [ + { + "classic": { + "elapsed": 2.7, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 5349.0, + "scores": [ + 2596.0, + 2753.0 + ], + "selected": "ad.Quest 0.10" + }, + "completed_at": "2026-09-08T20:12:40Z", + "delta_pct": -13.9, + "id": "90b87fb62a5d8769", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "ad.Quest 0.10", + "division": "roborumble", + "jar": "ad.Quest_0.10.jar", + "jar_sha256": "7121f3447f5a2ee15fb6a8efbdecb35c5732def3307427f5c747990b2b2d8969", + "key": "roborumble/ad.Quest_0.10.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "elapsed": 20.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 4605.0, + "scores": [ + 2380.0, + 2225.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 2.8, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 4944.0, + "scores": [ + 2452.0, + 2492.0 + ], + "selected": "ad.Quest 0.10" + }, + "completed_at": "2026-09-11T18:01:55Z", + "confirmation": null, + "delta_pct": -3.0, + "id": "ed5607f735d17e3f", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "ad.Quest 0.10", + "division": "roborumble", + "jar": "ad.Quest_0.10.jar", + "jar_sha256": "7121f3447f5a2ee15fb6a8efbdecb35c5732def3307427f5c747990b2b2d8969", + "key": "roborumble/ad.Quest_0.10.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 22.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 4794.0, + "scores": [ + 2520.0, + 2274.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/ad.last.Bottom_1.0.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "ad.last.Bottom 1.0", + "division": "roborumble", + "jar": "ad.last.Bottom_1.0.jar", + "jar_sha256": "8ae6c84241634e3f1b2f550ff6bf50b603dd8f19c23f67e06df6c2328a0820bf", + "key": "roborumble/ad.last.Bottom_1.0.jar", + "kind": "robot" + }, + "latest_observation": "e5b74746ffa765be", + "observations": [ + { + "classic": { + "elapsed": 3.6, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 305.0, + "scores": [ + 242.0, + 63.0 + ], + "selected": "ad.last.Bottom 1.0" + }, + "completed_at": "2026-09-08T20:12:17Z", + "delta_pct": -98.0, + "id": "536581d29ac8b51f", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "ad.last.Bottom 1.0", + "division": "roborumble", + "jar": "ad.last.Bottom_1.0.jar", + "jar_sha256": "8ae6c84241634e3f1b2f550ff6bf50b603dd8f19c23f67e06df6c2328a0820bf", + "key": "roborumble/ad.last.Bottom_1.0.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (score)", + "tank_royale": { + "elapsed": 34.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 6.0, + "scores": [ + 3.0, + 3.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 3.4, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 125.0, + "scores": [ + 63.0, + 62.0 + ], + "selected": "ad.last.Bottom 1.0" + }, + "completed_at": "2026-09-11T18:01:30Z", + "confirmation": null, + "delta_pct": 4.0, + "id": "e5b74746ffa765be", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "ad.last.Bottom 1.0", + "division": "roborumble", + "jar": "ad.last.Bottom_1.0.jar", + "jar_sha256": "8ae6c84241634e3f1b2f550ff6bf50b603dd8f19c23f67e06df6c2328a0820bf", + "key": "roborumble/ad.last.Bottom_1.0.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 34.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 130.0, + "scores": [ + 65.0, + 65.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/adt.Ar1_2.1.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "adt.Ar1 2.1", + "division": "roborumble", + "jar": "adt.Ar1_2.1.jar", + "jar_sha256": "37857b3fe3d082f121da8dd8ca81a5ea58edcab65fad3c552d71dfa65f58b14e", + "key": "roborumble/adt.Ar1_2.1.jar", + "kind": "robot" + }, + "latest_observation": "dc30e55fda4f71f3", + "observations": [ + { + "classic": { + "elapsed": 2.9, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 3562.0, + "scores": [ + 1770.0, + 1792.0 + ], + "selected": "adt.Ar1 2.1" + }, + "completed_at": "2026-09-08T20:13:05Z", + "delta_pct": -6.2, + "id": "a7544fcb7a16e1cc", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "adt.Ar1 2.1", + "division": "roborumble", + "jar": "adt.Ar1_2.1.jar", + "jar_sha256": "37857b3fe3d082f121da8dd8ca81a5ea58edcab65fad3c552d71dfa65f58b14e", + "key": "roborumble/adt.Ar1_2.1.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "elapsed": 22.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 3341.0, + "scores": [ + 1793.0, + 1548.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 3.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 3904.0, + "scores": [ + 1797.0, + 2107.0 + ], + "selected": "adt.Ar1 2.1" + }, + "completed_at": "2026-09-11T18:02:24Z", + "confirmation": null, + "delta_pct": -0.8, + "id": "dc30e55fda4f71f3", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "adt.Ar1 2.1", + "division": "roborumble", + "jar": "adt.Ar1_2.1.jar", + "jar_sha256": "37857b3fe3d082f121da8dd8ca81a5ea58edcab65fad3c552d71dfa65f58b14e", + "key": "roborumble/adt.Ar1_2.1.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 26.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 3872.0, + "scores": [ + 2137.0, + 1735.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/adt.Ar2_1.0.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "adt.Ar2 1.0", + "division": "roborumble", + "jar": "adt.Ar2_1.0.jar", + "jar_sha256": "2adf54760aefa12c1e79667c064a9529b85aed2218e8a7457c335fb91153394e", + "key": "roborumble/adt.Ar2_1.0.jar", + "kind": "robot" + }, + "latest_observation": "50bd0c5dc7d1d237", + "observations": [ + { + "classic": { + "elapsed": 2.5, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 6761.0, + "scores": [ + 3088.0, + 3673.0 + ], + "selected": "adt.Ar2 1.0" + }, + "completed_at": "2026-09-08T20:13:24Z", + "delta_pct": -23.5, + "id": "f8dc415d3174e2bd", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "adt.Ar2 1.0", + "division": "roborumble", + "jar": "adt.Ar2_1.0.jar", + "jar_sha256": "2adf54760aefa12c1e79667c064a9529b85aed2218e8a7457c335fb91153394e", + "key": "roborumble/adt.Ar2_1.0.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "elapsed": 16.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 5169.0, + "scores": [ + 2932.0, + 2237.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 2.5, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 6621.0, + "scores": [ + 3769.0, + 2852.0 + ], + "selected": "adt.Ar2 1.0" + }, + "completed_at": "2026-09-11T18:02:45Z", + "confirmation": null, + "delta_pct": -23.7, + "id": "50bd0c5dc7d1d237", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "adt.Ar2 1.0", + "division": "roborumble", + "jar": "adt.Ar2_1.0.jar", + "jar_sha256": "2adf54760aefa12c1e79667c064a9529b85aed2218e8a7457c335fb91153394e", + "key": "roborumble/adt.Ar2_1.0.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 18.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5054.0, + "scores": [ + 2609.0, + 2445.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/aetos.AetosFirstBot_1.0.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "aetos.AetosFirstBot 1.0", + "division": "roborumble", + "jar": "aetos.AetosFirstBot_1.0.jar", + "jar_sha256": "b07790002d150956d9c859100b63581fbf720807de75ea51d10d2355c23552dd", + "key": "roborumble/aetos.AetosFirstBot_1.0.jar", + "kind": "robot" + }, + "latest_observation": "fb18442d99e5c6e3", + "observations": [ + { + "classic": { + "elapsed": 2.4, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 14150.0, + "scores": [ + 7308.0, + 6842.0 + ], + "selected": "aetos.AetosFirstBot 1.0" + }, + "completed_at": "2026-09-08T20:13:40Z", + "delta_pct": -1.3, + "id": "adf8a34914ae5ddc", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "aetos.AetosFirstBot 1.0", + "division": "roborumble", + "jar": "aetos.AetosFirstBot_1.0.jar", + "jar_sha256": "b07790002d150956d9c859100b63581fbf720807de75ea51d10d2355c23552dd", + "key": "roborumble/aetos.AetosFirstBot_1.0.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "elapsed": 14.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 13969.0, + "scores": [ + 7098.0, + 6871.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 2.4, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 14077.0, + "scores": [ + 7044.0, + 7033.0 + ], + "selected": "aetos.AetosFirstBot 1.0" + }, + "completed_at": "2026-09-11T18:03:06Z", + "confirmation": null, + "delta_pct": -3.3, + "id": "fb18442d99e5c6e3", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "aetos.AetosFirstBot 1.0", + "division": "roborumble", + "jar": "aetos.AetosFirstBot_1.0.jar", + "jar_sha256": "b07790002d150956d9c859100b63581fbf720807de75ea51d10d2355c23552dd", + "key": "roborumble/aetos.AetosFirstBot_1.0.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 18.1, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 13608.0, + "scores": [ + 7042.0, + 6566.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/ag.Gir_0.99.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "ag.Gir 0.99", + "division": "roborumble", + "jar": "ag.Gir_0.99.jar", + "jar_sha256": "35a4cbabb1c433b6a4e54977741e90195fa95332d7afcce0c7ffe9c8af1ce32d", + "key": "roborumble/ag.Gir_0.99.jar", + "kind": "robot" + }, + "latest_observation": "ecd7eb3ba841c2bb", + "observations": [ + { + "classic": { + "elapsed": 8.9, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 3737.0, + "scores": [ + 2018.0, + 1719.0 + ], + "selected": "ag.Gir 0.99" + }, + "completed_at": "2026-09-08T20:14:00Z", + "delta_pct": null, + "id": "6a92a7c896d886ac", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "ag.Gir 0.99", + "division": "roborumble", + "jar": "ag.Gir_0.99.jar", + "jar_sha256": "35a4cbabb1c433b6a4e54977741e90195fa95332d7afcce0c7ffe9c8af1ce32d", + "key": "roborumble/ag.Gir_0.99.jar", + "kind": "robot" + }, + "status": "FAIL (TR)", + "tank_royale": { + "elapsed": 10.1, + "error_count": 40, + "errors": [ + "HARNESS: worker produced no result (exit code -1)", + "java.lang.ArrayIndexOutOfBoundsException: Array index out of range: 0", + "java.lang.ArrayIndexOutOfBoundsException: Array index out of range: 0", + "IOException trying to write: java.io.IOException: You have reached your filesystem quota of: 200000 bytes.", + "Exception trying to write: java.io.IOException: You have reached your filesystem quota of: 200000 bytes.", + "Exception reading 1_robotstats.stt: java.io.EOFException", + "IOException trying to write: java.io.IOException: You have reached your filesystem quota of: 200000 bytes.", + "Exception reading 1_girstats.stt: java.io.EOFException", + "IOException trying to write: java.io.IOException: You have reached your filesystem quota of: 200000 bytes.", + "Exception trying to write: java.io.IOException: You have reached your filesystem quota of: 200000 bytes.", + "IOException trying to write: java.io.IOException: You have reached your filesystem quota of: 200000 bytes.", + "Exception reading 1_robotstats.stt: java.io.EOFException", + "IOException trying to write: java.io.IOException: You have reached your filesystem quota of: 200000 bytes.", + "Exception trying to write: java.io.IOException: You have reached your filesystem quota of: 200000 bytes.", + "Exception reading 1_move.fct: java.io.EOFException", + "Exception reading 1_robotstats.stt: java.io.EOFException", + "Exception reading 1_move.fct: java.io.EOFException", + "Exception reading 1_girstats.stt: java.io.EOFException", + "Exception reading 1_girstats.stt: java.io.EOFException", + "IOException trying to write: java.io.IOException: You have reached your filesystem quota of: 200000 bytes.", + "java.lang.ArrayIndexOutOfBoundsException: Array index out of range: 0", + "IOException trying to write: java.io.IOException: You have reached your filesystem quota of: 200000 bytes.", + "Exception trying to write: java.io.IOException: You have reached your filesystem quota of: 200000 bytes.", + "IOException trying to write: java.io.IOException: You have reached your filesystem quota of: 200000 bytes.", + "Exception reading 2_robotstats.stt: java.io.EOFException", + "Exception reading 2_girstats.stt: java.io.EOFException", + "Exception reading 2_girstats.stt: java.io.EOFException", + "IOException trying to write: java.io.IOException: You have reached your filesystem quota of: 200000 bytes.", + "Exception reading 2_girstats.stt: java.io.EOFException", + "IOException trying to write: java.io.IOException: You have reached your filesystem quota of: 200000 bytes.", + "Exception trying to write: java.io.IOException: You have reached your filesystem quota of: 200000 bytes.", + "IOException trying to write: java.io.IOException: You have reached your filesystem quota of: 200000 bytes.", + "Exception reading 2_robotstats.stt: java.io.EOFException", + "IOException trying to write: java.io.IOException: You have reached your filesystem quota of: 200000 bytes.", + "Exception trying to write: java.io.IOException: You have reached your filesystem quota of: 200000 bytes.", + "Exception reading 2_robotstats.stt: java.io.EOFException", + "Exception reading 2_move.fct: java.io.EOFException", + "Exception reading 2_girstats.stt: java.io.EOFException", + "Exception reading 2_girstats.stt: java.io.EOFException", + "IOException trying to write: java.io.IOException: You have reached your filesystem quota of: 200000 bytes." + ], + "has_log": true, + "ok": false, + "score": null, + "scores": [], + "skipped": null + } + }, + { + "classic": { + "elapsed": 11.6, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5246.0, + "scores": [ + 2570.0, + 2676.0 + ], + "selected": "ag.Gir 0.99" + }, + "completed_at": "2026-09-11T18:03:32Z", + "confirmation": null, + "delta_pct": null, + "id": "593a497dbed9a870", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "ag.Gir 0.99", + "division": "roborumble", + "jar": "ag.Gir_0.99.jar", + "jar_sha256": "35a4cbabb1c433b6a4e54977741e90195fa95332d7afcce0c7ffe9c8af1ce32d", + "key": "roborumble/ag.Gir_0.99.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (outcome)", + "tank_royale": { + "bridge_only_signatures": [ + [ + "java.io.EOFException", + "unknown" + ], + [ + "java.io.IOException", + "unknown" + ], + [ + "java.lang.ArrayIndexOutOfBoundsException", + "ag.movement.Movement.readMoveFactors" + ] + ], + "elapsed": 14.1, + "error_count": 40, + "error_signatures": [ + { + "exception": "java.io.EOFException", + "origin": "ag.movement.Movement.readMoveFactors" + }, + { + "exception": "java.io.EOFException", + "origin": "unknown" + }, + { + "exception": "java.io.IOException", + "origin": "ag.movement.Movement.readMoveFactors" + }, + { + "exception": "java.io.IOException", + "origin": "unknown" + }, + { + "exception": "java.lang.ArrayIndexOutOfBoundsException", + "origin": "ag.movement.Movement.readMoveFactors" + } + ], + "errors": [ + "HARNESS: worker produced no result (exit code -1)", + "java.lang.ArrayIndexOutOfBoundsException: Array index out of range: 0", + "IOException trying to write: java.io.IOException: You have reached your filesystem quota of: 200000 bytes.", + "Exception trying to write: java.io.IOException: You have reached your filesystem quota of: 200000 bytes.", + "IOException trying to write: java.io.IOException: You have reached your filesystem quota of: 200000 bytes.", + "Exception reading 1_robotstats.stt: java.io.EOFException", + "Exception reading 1_girstats.stt: java.io.EOFException", + "Exception reading 1_girstats.stt: java.io.EOFException", + "IOException trying to write: java.io.IOException: You have reached your filesystem quota of: 200000 bytes.", + "Exception reading 1_girstats.stt: java.io.EOFException", + "IOException trying to write: java.io.IOException: You have reached your filesystem quota of: 200000 bytes.", + "Exception trying to write: java.io.IOException: You have reached your filesystem quota of: 200000 bytes.", + "IOException trying to write: java.io.IOException: You have reached your filesystem quota of: 200000 bytes.", + "Exception reading 1_robotstats.stt: java.io.EOFException", + "IOException trying to write: java.io.IOException: You have reached your filesystem quota of: 200000 bytes.", + "Exception trying to write: java.io.IOException: You have reached your filesystem quota of: 200000 bytes.", + "Exception reading 1_robotstats.stt: java.io.EOFException", + "Exception reading 1_move.fct: java.io.EOFException", + "Exception reading 1_girstats.stt: java.io.EOFException", + "Exception reading 1_girstats.stt: java.io.EOFException", + "IOException trying to write: java.io.IOException: You have reached your filesystem quota of: 200000 bytes.", + "java.lang.ArrayIndexOutOfBoundsException: Array index out of range: 0", + "java.lang.ArrayIndexOutOfBoundsException: Array index out of range: 0", + "IOException trying to write: java.io.IOException: You have reached your filesystem quota of: 200000 bytes.", + "Exception trying to write: java.io.IOException: You have reached your filesystem quota of: 200000 bytes.", + "Exception reading 2_robotstats.stt: java.io.EOFException", + "IOException trying to write: java.io.IOException: You have reached your filesystem quota of: 200000 bytes.", + "Exception reading 2_girstats.stt: java.io.EOFException", + "IOException trying to write: java.io.IOException: You have reached your filesystem quota of: 200000 bytes.", + "Exception trying to write: java.io.IOException: You have reached your filesystem quota of: 200000 bytes.", + "IOException trying to write: java.io.IOException: You have reached your filesystem quota of: 200000 bytes.", + "Exception reading 2_robotstats.stt: java.io.EOFException", + "IOException trying to write: java.io.IOException: You have reached your filesystem quota of: 200000 bytes.", + "Exception trying to write: java.io.IOException: You have reached your filesystem quota of: 200000 bytes.", + "Exception reading 2_move.fct: java.io.EOFException", + "Exception reading 2_robotstats.stt: java.io.EOFException", + "Exception reading 2_move.fct: java.io.EOFException", + "Exception reading 2_girstats.stt: java.io.EOFException", + "Exception reading 2_girstats.stt: java.io.EOFException", + "IOException trying to write: java.io.IOException: You have reached your filesystem quota of: 200000 bytes." + ], + "has_log": true, + "ok": false, + "score": null, + "scores": [], + "skipped": null + } + }, + { + "classic": { + "elapsed": 9.2, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 3745.0, + "scores": [ + 2140.0, + 1605.0 + ], + "selected": "ag.Gir 0.99" + }, + "completed_at": "2026-09-12T21:24:43Z", + "confirmation": null, + "delta_pct": null, + "id": "ecd7eb3ba841c2bb", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } + }, + "bridge_commit": "9972f00ecfe4a85b707d655e40baa95525fa03f2", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "abcfd80eebf9804684b203c00aec674c99ff7105", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "ag.Gir 0.99", + "division": "roborumble", + "jar": "ag.Gir_0.99.jar", + "jar_sha256": "35a4cbabb1c433b6a4e54977741e90195fa95332d7afcce0c7ffe9c8af1ce32d", + "key": "roborumble/ag.Gir_0.99.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (outcome)", + "tank_royale": { + "bridge_only_signatures": [ + [ + "java.io.EOFException", + "unknown" + ], + [ + "java.io.IOException", + "unknown" + ], + [ + "java.lang.ArrayIndexOutOfBoundsException", + "ag.movement.Movement.readMoveFactors" + ] + ], + "elapsed": 14.2, + "error_count": 43, + "error_signatures": [ + { + "exception": "java.io.EOFException", + "origin": "ag.movement.Movement.readMoveFactors" + }, + { + "exception": "java.io.EOFException", + "origin": "unknown" + }, + { + "exception": "java.io.IOException", + "origin": "ag.movement.Movement.readMoveFactors" + }, + { + "exception": "java.io.IOException", + "origin": "unknown" + }, + { + "exception": "java.lang.ArrayIndexOutOfBoundsException", + "origin": "ag.movement.Movement.readMoveFactors" + } + ], + "errors": [ + "HARNESS: worker produced no result (exit code -1)", + "java.lang.ArrayIndexOutOfBoundsException: Array index out of range: 0", + "java.lang.ArrayIndexOutOfBoundsException: Array index out of range: 0", + "java.lang.ArrayIndexOutOfBoundsException: Array index out of range: 0", + "IOException trying to write: java.io.IOException: You have reached your filesystem quota of: 200000 bytes.", + "Exception trying to write: java.io.IOException: You have reached your filesystem quota of: 200000 bytes.", + "IOException trying to write: java.io.IOException: You have reached your filesystem quota of: 200000 bytes.", + "IOException trying to write: java.io.IOException: You have reached your filesystem quota of: 200000 bytes.", + "Exception trying to write: java.io.IOException: You have reached your filesystem quota of: 200000 bytes.", + "Exception reading 2_robotstats.stt: java.io.EOFException", + "Exception reading 2_move.fct: java.io.EOFException", + "Exception reading 2_girstats.stt: java.io.EOFException", + "Exception reading 2_girstats.stt: java.io.EOFException", + "IOException trying to write: java.io.IOException: You have reached your filesystem quota of: 200000 bytes.", + "Exception trying to write: java.io.IOException: You have reached your filesystem quota of: 200000 bytes.", + "IOException trying to write: java.io.IOException: You have reached your filesystem quota of: 200000 bytes.", + "Exception reading 2_robotstats.stt: java.io.EOFException", + "IOException trying to write: java.io.IOException: You have reached your filesystem quota of: 200000 bytes.", + "Exception trying to write: java.io.IOException: You have reached your filesystem quota of: 200000 bytes.", + "Exception reading 2_move.fct: java.io.EOFException", + "Exception reading 2_robotstats.stt: java.io.EOFException", + "Exception reading 2_move.fct: java.io.EOFException", + "Exception reading 2_girstats.stt: java.io.EOFException", + "java.lang.ArrayIndexOutOfBoundsException: Array index out of range: 0", + "java.lang.ArrayIndexOutOfBoundsException: Array index out of range: 0", + "java.lang.ArrayIndexOutOfBoundsException: Array index out of range: 0", + "Exception trying to write: java.io.IOException: You have reached your filesystem quota of: 200000 bytes.", + "Exception trying to write: java.io.IOException: You have reached your filesystem quota of: 200000 bytes.", + "IOException trying to write: java.io.IOException: You have reached your filesystem quota of: 200000 bytes.", + "IOException trying to write: java.io.IOException: You have reached your filesystem quota of: 200000 bytes.", + "Exception trying to write: java.io.IOException: You have reached your filesystem quota of: 200000 bytes.", + "Exception reading 1_move.fct: java.io.EOFException", + "Exception reading 1_robotstats.stt: java.io.EOFException", + "Exception reading 1_move.fct: java.io.EOFException", + "IOException trying to write: java.io.IOException: You have reached your filesystem quota of: 200000 bytes.", + "Exception trying to write: java.io.IOException: You have reached your filesystem quota of: 200000 bytes.", + "IOException trying to write: java.io.IOException: You have reached your filesystem quota of: 200000 bytes.", + "Exception reading 1_robotstats.stt: java.io.EOFException", + "IOException trying to write: java.io.IOException: You have reached your filesystem quota of: 200000 bytes.", + "Exception trying to write: java.io.IOException: You have reached your filesystem quota of: 200000 bytes.", + "Exception reading 1_robotstats.stt: java.io.EOFException", + "Exception reading 1_move.fct: java.io.EOFException", + "Exception reading 1_girstats.stt: java.io.EOFException" + ], + "has_log": true, + "ok": false, + "score": null, + "scores": [], + "skipped": null + } + } + ], + "status": "DISCREPANCY (outcome)" + }, + "roborumble/agd.Mooserwirt2_2.7.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "agd.Mooserwirt2 2.7", + "division": "roborumble", + "jar": "agd.Mooserwirt2_2.7.jar", + "jar_sha256": "377e6a4c674d0436ee7d3cf8e29c2581fc37e55238e6fefef86394c55a35b556", + "key": "roborumble/agd.Mooserwirt2_2.7.jar", + "kind": "robot" + }, + "latest_observation": "128d97164f6ee2be", + "observations": [ + { + "classic": { + "elapsed": 6.5, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 6393.0, + "scores": [ + 3276.0, + 3117.0 + ], + "selected": "agd.Mooserwirt2 2.7" + }, + "completed_at": "2026-09-08T20:14:30Z", + "delta_pct": 93.5, + "id": "ff9a91c9aed410ac", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "agd.Mooserwirt2 2.7", + "division": "roborumble", + "jar": "agd.Mooserwirt2_2.7.jar", + "jar_sha256": "377e6a4c674d0436ee7d3cf8e29c2581fc37e55238e6fefef86394c55a35b556", + "key": "roborumble/agd.Mooserwirt2_2.7.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (score)", + "tank_royale": { + "elapsed": 24.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 12372.0, + "scores": [ + 6196.0, + 6176.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 7.5, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5437.0, + "scores": [ + 3150.0, + 2287.0 + ], + "selected": "agd.Mooserwirt2 2.7" + }, + "completed_at": "2026-09-11T18:04:02Z", + "confirmation": null, + "delta_pct": null, + "id": "cf2e1c1cef071cde", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "agd.Mooserwirt2 2.7", + "division": "roborumble", + "jar": "agd.Mooserwirt2_2.7.jar", + "jar_sha256": "377e6a4c674d0436ee7d3cf8e29c2581fc37e55238e6fefef86394c55a35b556", + "key": "roborumble/agd.Mooserwirt2_2.7.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (outcome)", + "tank_royale": { + "bridge_only_signatures": [ + [ + "java.io.IOException", + "unknown" + ] + ], + "elapsed": 22.1, + "error_count": 2, + "error_signatures": [ + { + "exception": "java.io.IOException", + "origin": "unknown" + } + ], + "errors": [ + "HARNESS: worker produced no result (exit code -1)", + "java.io.IOException: You have reached your filesystem quota of: 200000 bytes." + ], + "has_log": true, + "ok": false, + "score": null, + "scores": [], + "skipped": null + } + }, + { + "classic": { + "elapsed": 6.6, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 6198.0, + "scores": [ + 3343.0, + 2855.0 + ], + "selected": "agd.Mooserwirt2 2.7" + }, + "completed_at": "2026-09-12T21:25:12Z", + "confirmation": null, + "delta_pct": 96.6, + "id": "128d97164f6ee2be", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } + }, + "bridge_commit": "9972f00ecfe4a85b707d655e40baa95525fa03f2", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "abcfd80eebf9804684b203c00aec674c99ff7105", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "agd.Mooserwirt2 2.7", + "division": "roborumble", + "jar": "agd.Mooserwirt2_2.7.jar", + "jar_sha256": "377e6a4c674d0436ee7d3cf8e29c2581fc37e55238e6fefef86394c55a35b556", + "key": "roborumble/agd.Mooserwirt2_2.7.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (score)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 22.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 12183.0, + "scores": [ + 6199.0, + 5984.0 + ], + "skipped": null + } + } + ], + "status": "score-review" + }, + "roborumble/agrach.Dalek_1.0.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "agrach.Dalek 1.0", + "division": "roborumble", + "jar": "agrach.Dalek_1.0.jar", + "jar_sha256": "1b594bd828661ec7fbeb11aba73bccf7567d16e78a9ff21114a1f430c7152836", + "key": "roborumble/agrach.Dalek_1.0.jar", + "kind": "robot" + }, + "latest_observation": "201099c1c6bc733e", + "observations": [ + { + "classic": { + "elapsed": 3.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 3775.0, + "scores": [ + 1420.0, + 2355.0 + ], + "selected": "agrach.Dalek 1.0" + }, + "completed_at": "2026-09-08T20:14:56Z", + "delta_pct": 65.3, + "id": "ba3220036d56b733", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "agrach.Dalek 1.0", + "division": "roborumble", + "jar": "agrach.Dalek_1.0.jar", + "jar_sha256": "1b594bd828661ec7fbeb11aba73bccf7567d16e78a9ff21114a1f430c7152836", + "key": "roborumble/agrach.Dalek_1.0.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (score)", + "tank_royale": { + "elapsed": 22.2, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 6240.0, + "scores": [ + 3411.0, + 2829.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 3.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 2911.0, + "scores": [ + 1527.0, + 1384.0 + ], + "selected": "agrach.Dalek 1.0" + }, + "completed_at": "2026-09-11T18:04:25Z", + "confirmation": null, + "delta_pct": 109.8, + "id": "19bffe67df19faf9", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "agrach.Dalek 1.0", + "division": "roborumble", + "jar": "agrach.Dalek_1.0.jar", + "jar_sha256": "1b594bd828661ec7fbeb11aba73bccf7567d16e78a9ff21114a1f430c7152836", + "key": "roborumble/agrach.Dalek_1.0.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (score)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 20.2, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 6106.0, + "scores": [ + 3146.0, + 2960.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 2.9, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 3894.0, + "scores": [ + 1929.0, + 1965.0 + ], + "selected": "agrach.Dalek 1.0" + }, + "completed_at": "2026-09-12T21:25:40Z", + "confirmation": null, + "delta_pct": 48.2, + "id": "201099c1c6bc733e", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } + }, + "bridge_commit": "9972f00ecfe4a85b707d655e40baa95525fa03f2", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "abcfd80eebf9804684b203c00aec674c99ff7105", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "agrach.Dalek 1.0", + "division": "roborumble", + "jar": "agrach.Dalek_1.0.jar", + "jar_sha256": "1b594bd828661ec7fbeb11aba73bccf7567d16e78a9ff21114a1f430c7152836", + "key": "roborumble/agrach.Dalek_1.0.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (score)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 24.2, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5769.0, + "scores": [ + 3093.0, + 2676.0 + ], + "skipped": null + } + } + ], + "status": "score-review" + }, + "roborumble/agrach.MicroDalek_1.0.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "agrach.MicroDalek 1.0", + "division": "roborumble", + "jar": "agrach.MicroDalek_1.0.jar", + "jar_sha256": "f0830bebf9d2d5be6388b696e437fc369f2e68f3255f56332a24f0b40f81b979", + "key": "roborumble/agrach.MicroDalek_1.0.jar", + "kind": "robot" + }, + "latest_observation": "3406205b8980f6c5", + "observations": [ + { + "classic": { + "elapsed": 2.7, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 5316.0, + "scores": [ + 3041.0, + 2275.0 + ], + "selected": "agrach.MicroDalek 1.0" + }, + "completed_at": "2026-09-08T20:15:21Z", + "delta_pct": -23.1, + "id": "530461a54d8b1dad", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "agrach.MicroDalek 1.0", + "division": "roborumble", + "jar": "agrach.MicroDalek_1.0.jar", + "jar_sha256": "f0830bebf9d2d5be6388b696e437fc369f2e68f3255f56332a24f0b40f81b979", + "key": "roborumble/agrach.MicroDalek_1.0.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "elapsed": 22.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 4086.0, + "scores": [ + 2220.0, + 1866.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 2.8, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5096.0, + "scores": [ + 2948.0, + 2148.0 + ], + "selected": "agrach.MicroDalek 1.0" + }, + "completed_at": "2026-09-11T18:04:50Z", + "confirmation": null, + "delta_pct": 5.4, + "id": "3406205b8980f6c5", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "agrach.MicroDalek 1.0", + "division": "roborumble", + "jar": "agrach.MicroDalek_1.0.jar", + "jar_sha256": "f0830bebf9d2d5be6388b696e437fc369f2e68f3255f56332a24f0b40f81b979", + "key": "roborumble/agrach.MicroDalek_1.0.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 22.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5370.0, + "scores": [ + 2714.0, + 2656.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/agrach.RobotSlayer_1.0.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "agrach.RobotSlayer 1.0", + "division": "roborumble", + "jar": "agrach.RobotSlayer_1.0.jar", + "jar_sha256": "7710708e2d15c46fe622ea196065c3fa78c785a8ba0ab3afe5587de3d1072ff9", + "key": "roborumble/agrach.RobotSlayer_1.0.jar", + "kind": "robot" + }, + "latest_observation": "91a43d1a02bcfa21", + "observations": [ + { + "classic": { + "elapsed": 3.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 3120.0, + "scores": [ + 1448.0, + 1672.0 + ], + "selected": "agrach.RobotSlayer 1.0" + }, + "completed_at": "2026-09-08T20:15:48Z", + "delta_pct": 34.9, + "id": "8f77756a222c2ed6", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "agrach.RobotSlayer 1.0", + "division": "roborumble", + "jar": "agrach.RobotSlayer_1.0.jar", + "jar_sha256": "7710708e2d15c46fe622ea196065c3fa78c785a8ba0ab3afe5587de3d1072ff9", + "key": "roborumble/agrach.RobotSlayer_1.0.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (score)", + "tank_royale": { + "elapsed": 24.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 4209.0, + "scores": [ + 2147.0, + 2062.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 3.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 3288.0, + "scores": [ + 1459.0, + 1829.0 + ], + "selected": "agrach.RobotSlayer 1.0" + }, + "completed_at": "2026-09-11T18:05:18Z", + "confirmation": null, + "delta_pct": 13.8, + "id": "91a43d1a02bcfa21", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "agrach.RobotSlayer 1.0", + "division": "roborumble", + "jar": "agrach.RobotSlayer_1.0.jar", + "jar_sha256": "7710708e2d15c46fe622ea196065c3fa78c785a8ba0ab3afe5587de3d1072ff9", + "key": "roborumble/agrach.RobotSlayer_1.0.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 24.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 3741.0, + "scores": [ + 2252.0, + 1489.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/ags.Glacier_0.3.2.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "ags.Glacier 0.3.2", + "division": "roborumble", + "jar": "ags.Glacier_0.3.2.jar", + "jar_sha256": "2d8c919e37b033113b5377aac90c2ac1641a44fd31367c98190c2466be90a151", + "key": "roborumble/ags.Glacier_0.3.2.jar", + "kind": "robot" + }, + "latest_observation": "679d3bc94e9ff5e4", + "observations": [ + { + "classic": { + "elapsed": 15.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 5275.0, + "scores": [ + 2766.0, + 2509.0 + ], + "selected": "ags.Glacier 0.3.2" + }, + "completed_at": "2026-09-08T20:16:24Z", + "delta_pct": -35.8, + "id": "60be2730fb1d2100", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "ags.Glacier 0.3.2", + "division": "roborumble", + "jar": "ags.Glacier_0.3.2.jar", + "jar_sha256": "2d8c919e37b033113b5377aac90c2ac1641a44fd31367c98190c2466be90a151", + "key": "roborumble/ags.Glacier_0.3.2.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (score)", + "tank_royale": { + "elapsed": 20.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 3386.0, + "scores": [ + 1867.0, + 1519.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 14.9, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5302.0, + "scores": [ + 3088.0, + 2214.0 + ], + "selected": "ags.Glacier 0.3.2" + }, + "completed_at": "2026-09-11T18:05:53Z", + "confirmation": null, + "delta_pct": -31.1, + "id": "38d8cc643b90b24f", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "ags.Glacier 0.3.2", + "division": "roborumble", + "jar": "ags.Glacier_0.3.2.jar", + "jar_sha256": "2d8c919e37b033113b5377aac90c2ac1641a44fd31367c98190c2466be90a151", + "key": "roborumble/ags.Glacier_0.3.2.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (score)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 20.1, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 3652.0, + "scores": [ + 1960.0, + 1692.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 16.2, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5419.0, + "scores": [ + 2806.0, + 2613.0 + ], + "selected": "ags.Glacier 0.3.2" + }, + "completed_at": "2026-09-12T21:26:18Z", + "confirmation": null, + "delta_pct": -27.5, + "id": "679d3bc94e9ff5e4", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } + }, + "bridge_commit": "9972f00ecfe4a85b707d655e40baa95525fa03f2", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "abcfd80eebf9804684b203c00aec674c99ff7105", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "ags.Glacier 0.3.2", + "division": "roborumble", + "jar": "ags.Glacier_0.3.2.jar", + "jar_sha256": "2d8c919e37b033113b5377aac90c2ac1641a44fd31367c98190c2466be90a151", + "key": "roborumble/ags.Glacier_0.3.2.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (score)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 22.1, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 3931.0, + "scores": [ + 2024.0, + 1907.0 + ], + "skipped": null + } + } + ], + "status": "score-review" + }, + "roborumble/ags.Midboss_1q.fast.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "ags.Midboss 1q.fast", + "division": "roborumble", + "jar": "ags.Midboss_1q.fast.jar", + "jar_sha256": "803ebb0582eb77b476fe649cf8875bbf95df2ebd92fcf7853077aa7b583a4045", + "key": "roborumble/ags.Midboss_1q.fast.jar", + "kind": "robot" + }, + "latest_observation": "8fbe6c98e30835c0", + "observations": [ + { + "classic": { + "elapsed": 9.8, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 5495.0, + "scores": [ + 2997.0, + 2498.0 + ], + "selected": "ags.Midboss 1q.fast" + }, + "completed_at": "2026-09-08T20:17:34Z", + "delta_pct": -6.8, + "id": "7effb7a405de90e7", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "ags.Midboss 1q.fast", + "division": "roborumble", + "jar": "ags.Midboss_1q.fast.jar", + "jar_sha256": "803ebb0582eb77b476fe649cf8875bbf95df2ebd92fcf7853077aa7b583a4045", + "key": "roborumble/ags.Midboss_1q.fast.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "elapsed": 24.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 5121.0, + "scores": [ + 2593.0, + 2528.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 10.8, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5478.0, + "scores": [ + 3214.0, + 2264.0 + ], + "selected": "ags.Midboss 1q.fast" + }, + "completed_at": "2026-09-11T18:07:11Z", + "confirmation": null, + "delta_pct": -4.6, + "id": "8fbe6c98e30835c0", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "ags.Midboss 1q.fast", + "division": "roborumble", + "jar": "ags.Midboss_1q.fast.jar", + "jar_sha256": "803ebb0582eb77b476fe649cf8875bbf95df2ebd92fcf7853077aa7b583a4045", + "key": "roborumble/ags.Midboss_1q.fast.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 22.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5227.0, + "scores": [ + 2826.0, + 2401.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/ags.micro.Carpet_1.1.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "ags.micro.Carpet 1.1", + "division": "roborumble", + "jar": "ags.micro.Carpet_1.1.jar", + "jar_sha256": "d7d22013f45d03d1d2131ebfbf63fedf29cae8f95bf7683eb8075a29569adc9e", + "key": "roborumble/ags.micro.Carpet_1.1.jar", + "kind": "robot" + }, + "latest_observation": "6558fc42dc0997e7", + "observations": [ + { + "classic": { + "elapsed": 8.1, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 5715.0, + "scores": [ + 3482.0, + 2233.0 + ], + "selected": "ags.micro.Carpet 1.1" + }, + "completed_at": "2026-09-08T20:17:00Z", + "delta_pct": -12.4, + "id": "a5199bebb61593c0", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "ags.micro.Carpet 1.1", + "division": "roborumble", + "jar": "ags.micro.Carpet_1.1.jar", + "jar_sha256": "d7d22013f45d03d1d2131ebfbf63fedf29cae8f95bf7683eb8075a29569adc9e", + "key": "roborumble/ags.micro.Carpet_1.1.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "elapsed": 28.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 5006.0, + "scores": [ + 2752.0, + 2254.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 12.5, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 4658.0, + "scores": [ + 2979.0, + 1679.0 + ], + "selected": "ags.micro.Carpet 1.1" + }, + "completed_at": "2026-09-11T18:06:38Z", + "confirmation": null, + "delta_pct": -4.1, + "id": "6558fc42dc0997e7", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "ags.micro.Carpet 1.1", + "division": "roborumble", + "jar": "ags.micro.Carpet_1.1.jar", + "jar_sha256": "d7d22013f45d03d1d2131ebfbf63fedf29cae8f95bf7683eb8075a29569adc9e", + "key": "roborumble/ags.micro.Carpet_1.1.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 32.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 4465.0, + "scores": [ + 2451.0, + 2014.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/ags.polished.PolishedRuby_1.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "ags.polished.PolishedRuby 1", + "division": "roborumble", + "jar": "ags.polished.PolishedRuby_1.jar", + "jar_sha256": "66674145d1a973e3d1b5079f97a991485a890c843f47ee5c0caff9fb9b0fbfcf", + "key": "roborumble/ags.polished.PolishedRuby_1.jar", + "kind": "robot" + }, + "latest_observation": "412e0d67086ec9c7", + "observations": [ + { + "classic": { + "elapsed": 3.9, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 12189.0, + "scores": [ + 6340.0, + 5849.0 + ], + "selected": "ags.polished.PolishedRuby 1" + }, + "completed_at": "2026-09-08T20:17:58Z", + "delta_pct": -80.9, + "id": "fc49d718cc3c93ac", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "ags.polished.PolishedRuby 1", + "division": "roborumble", + "jar": "ags.polished.PolishedRuby_1.jar", + "jar_sha256": "66674145d1a973e3d1b5079f97a991485a890c843f47ee5c0caff9fb9b0fbfcf", + "key": "roborumble/ags.polished.PolishedRuby_1.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (score)", + "tank_royale": { + "elapsed": 20.1, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 2330.0, + "scores": [ + 1481.0, + 849.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 4.5, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 11751.0, + "scores": [ + 6014.0, + 5737.0 + ], + "selected": "ags.polished.PolishedRuby 1" + }, + "completed_at": "2026-09-11T18:07:38Z", + "confirmation": null, + "delta_pct": -80.7, + "id": "a8e50430d40f0af0", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "ags.polished.PolishedRuby 1", + "division": "roborumble", + "jar": "ags.polished.PolishedRuby_1.jar", + "jar_sha256": "66674145d1a973e3d1b5079f97a991485a890c843f47ee5c0caff9fb9b0fbfcf", + "key": "roborumble/ags.polished.PolishedRuby_1.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (score)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 22.1, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 2271.0, + "scores": [ + 1266.0, + 1005.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 4.1, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 11576.0, + "scores": [ + 5415.0, + 6161.0 + ], + "selected": "ags.polished.PolishedRuby 1" + }, + "completed_at": "2026-09-12T21:26:47Z", + "confirmation": null, + "delta_pct": -81.6, + "id": "412e0d67086ec9c7", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } + }, + "bridge_commit": "9972f00ecfe4a85b707d655e40baa95525fa03f2", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "abcfd80eebf9804684b203c00aec674c99ff7105", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "ags.polished.PolishedRuby 1", + "division": "roborumble", + "jar": "ags.polished.PolishedRuby_1.jar", + "jar_sha256": "66674145d1a973e3d1b5079f97a991485a890c843f47ee5c0caff9fb9b0fbfcf", + "key": "roborumble/ags.polished.PolishedRuby_1.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (score)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 24.1, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 2135.0, + "scores": [ + 1295.0, + 840.0 + ], + "skipped": null + } + } + ], + "status": "score-review" + }, + "roborumble/ags.rougedc.RougeDC_willow.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "ags.rougedc.RougeDC willow", + "division": "roborumble", + "jar": "ags.rougedc.RougeDC_willow.jar", + "jar_sha256": "2aee27ddd085c75f61943240e090e018c9e69f658cd4afed508430910a41d2ab", + "key": "roborumble/ags.rougedc.RougeDC_willow.jar", + "kind": "robot" + }, + "latest_observation": "253d1be0c6457917", + "observations": [ + { + "classic": { + "elapsed": 10.5, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 5658.0, + "scores": [ + 2458.0, + 3200.0 + ], + "selected": "ags.rougedc.RougeDC willow" + }, + "completed_at": "2026-09-08T20:18:29Z", + "delta_pct": -5.2, + "id": "c007d142eae29d0a", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "ags.rougedc.RougeDC willow", + "division": "roborumble", + "jar": "ags.rougedc.RougeDC_willow.jar", + "jar_sha256": "2aee27ddd085c75f61943240e090e018c9e69f658cd4afed508430910a41d2ab", + "key": "roborumble/ags.rougedc.RougeDC_willow.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "elapsed": 20.1, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 5365.0, + "scores": [ + 2786.0, + 2579.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 9.6, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5882.0, + "scores": [ + 2943.0, + 2939.0 + ], + "selected": "ags.rougedc.RougeDC willow" + }, + "completed_at": "2026-09-11T18:08:04Z", + "confirmation": null, + "delta_pct": 41.2, + "id": "699dab8d79201329", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "ags.rougedc.RougeDC willow", + "division": "roborumble", + "jar": "ags.rougedc.RougeDC_willow.jar", + "jar_sha256": "2aee27ddd085c75f61943240e090e018c9e69f658cd4afed508430910a41d2ab", + "key": "roborumble/ags.rougedc.RougeDC_willow.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (score)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 16.1, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 8308.0, + "scores": [ + 4486.0, + 3822.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 11.4, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5471.0, + "scores": [ + 1952.0, + 3519.0 + ], + "selected": "ags.rougedc.RougeDC willow" + }, + "completed_at": "2026-09-12T21:27:19Z", + "confirmation": null, + "delta_pct": 37.9, + "id": "253d1be0c6457917", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } + }, + "bridge_commit": "9972f00ecfe4a85b707d655e40baa95525fa03f2", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "abcfd80eebf9804684b203c00aec674c99ff7105", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "ags.rougedc.RougeDC willow", + "division": "roborumble", + "jar": "ags.rougedc.RougeDC_willow.jar", + "jar_sha256": "2aee27ddd085c75f61943240e090e018c9e69f658cd4afed508430910a41d2ab", + "key": "roborumble/ags.rougedc.RougeDC_willow.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (score)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 20.1, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 7543.0, + "scores": [ + 3844.0, + 3699.0 + ], + "skipped": null + } + } + ], + "status": "score-review" + }, + "roborumble/ahf.Acero_1.0.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "ahf.Acero 1.0", + "division": "roborumble", + "jar": "ahf.Acero_1.0.jar", + "jar_sha256": "5208b0efb272a5f43a85b11f70f05f0c550b5f2860b7e38d41d4f43a487a0fda", + "key": "roborumble/ahf.Acero_1.0.jar", + "kind": "robot" + }, + "latest_observation": "80165f95df2a985d", + "observations": [ + { + "classic": { + "elapsed": 2.6, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 4651.0, + "scores": [ + 2335.0, + 2316.0 + ], + "selected": "ahf.Acero 1.0" + }, + "completed_at": "2026-09-08T20:18:52Z", + "delta_pct": -12.6, + "id": "9a49d2334b9adb0e", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "ahf.Acero 1.0", + "division": "roborumble", + "jar": "ahf.Acero_1.0.jar", + "jar_sha256": "5208b0efb272a5f43a85b11f70f05f0c550b5f2860b7e38d41d4f43a487a0fda", + "key": "roborumble/ahf.Acero_1.0.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "elapsed": 20.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 4067.0, + "scores": [ + 2155.0, + 1912.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 2.5, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 4543.0, + "scores": [ + 2170.0, + 2373.0 + ], + "selected": "ahf.Acero 1.0" + }, + "completed_at": "2026-09-11T18:08:25Z", + "confirmation": null, + "delta_pct": -5.0, + "id": "80165f95df2a985d", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "ahf.Acero 1.0", + "division": "roborumble", + "jar": "ahf.Acero_1.0.jar", + "jar_sha256": "5208b0efb272a5f43a85b11f70f05f0c550b5f2860b7e38d41d4f43a487a0fda", + "key": "roborumble/ahf.Acero_1.0.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 18.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 4315.0, + "scores": [ + 2170.0, + 2145.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/ahf.NanoAndrew_.4.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "ahf.NanoAndrew .4", + "division": "roborumble", + "jar": "ahf.NanoAndrew_.4.jar", + "jar_sha256": "667ad546b341badd93276d9de63623cf8ddd42918f46a2a04b23dbe114bacf2d", + "key": "roborumble/ahf.NanoAndrew_.4.jar", + "kind": "robot" + }, + "latest_observation": "adf532334e8a79d3", + "observations": [ + { + "classic": { + "elapsed": 2.5, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 6409.0, + "scores": [ + 3626.0, + 2783.0 + ], + "selected": "ahf.NanoAndrew .4" + }, + "completed_at": "2026-09-08T20:19:25Z", + "delta_pct": -58.4, + "id": "06a1568606c64145", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "ahf.NanoAndrew .4", + "division": "roborumble", + "jar": "ahf.NanoAndrew_.4.jar", + "jar_sha256": "667ad546b341badd93276d9de63623cf8ddd42918f46a2a04b23dbe114bacf2d", + "key": "roborumble/ahf.NanoAndrew_.4.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (score)", + "tank_royale": { + "elapsed": 30.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 2667.0, + "scores": [ + 1399.0, + 1268.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 2.5, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5810.0, + "scores": [ + 2937.0, + 2873.0 + ], + "selected": "ahf.NanoAndrew .4" + }, + "completed_at": "2026-09-11T18:08:56Z", + "confirmation": null, + "delta_pct": -56.0, + "id": "f9332cb26c628258", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "ahf.NanoAndrew .4", + "division": "roborumble", + "jar": "ahf.NanoAndrew_.4.jar", + "jar_sha256": "667ad546b341badd93276d9de63623cf8ddd42918f46a2a04b23dbe114bacf2d", + "key": "roborumble/ahf.NanoAndrew_.4.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (score)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 28.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 2556.0, + "scores": [ + 1317.0, + 1239.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 2.7, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 6705.0, + "scores": [ + 3195.0, + 3510.0 + ], + "selected": "ahf.NanoAndrew .4" + }, + "completed_at": "2026-09-12T21:27:56Z", + "confirmation": null, + "delta_pct": -62.5, + "id": "adf532334e8a79d3", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } + }, + "bridge_commit": "9972f00ecfe4a85b707d655e40baa95525fa03f2", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "abcfd80eebf9804684b203c00aec674c99ff7105", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "ahf.NanoAndrew .4", + "division": "roborumble", + "jar": "ahf.NanoAndrew_.4.jar", + "jar_sha256": "667ad546b341badd93276d9de63623cf8ddd42918f46a2a04b23dbe114bacf2d", + "key": "roborumble/ahf.NanoAndrew_.4.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (score)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 34.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 2514.0, + "scores": [ + 1470.0, + 1044.0 + ], + "skipped": null + } + } + ], + "status": "score-review" + }, + "roborumble/ahf.r2d2.R2d2_0.86.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "ahf.r2d2.R2d2 0.86", + "division": "roborumble", + "jar": "ahf.r2d2.R2d2_0.86.jar", + "jar_sha256": "cdd8e80b980375b1ed59df8fe5a361207c9d3ee32c6e0d81f936e000c2b1b9f2", + "key": "roborumble/ahf.r2d2.R2d2_0.86.jar", + "kind": "robot" + }, + "latest_observation": "1638eff4fd8ee776", + "observations": [ + { + "classic": { + "elapsed": 2.6, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 5997.0, + "scores": [ + 2680.0, + 3317.0 + ], + "selected": "ahf.r2d2.R2d2 0.86" + }, + "completed_at": "2026-09-08T20:19:48Z", + "delta_pct": -45.3, + "id": "b8a0807ea26810cb", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "ahf.r2d2.R2d2 0.86", + "division": "roborumble", + "jar": "ahf.r2d2.R2d2_0.86.jar", + "jar_sha256": "cdd8e80b980375b1ed59df8fe5a361207c9d3ee32c6e0d81f936e000c2b1b9f2", + "key": "roborumble/ahf.r2d2.R2d2_0.86.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (score)", + "tank_royale": { + "elapsed": 20.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 3283.0, + "scores": [ + 1764.0, + 1519.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 2.6, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5880.0, + "scores": [ + 3022.0, + 2858.0 + ], + "selected": "ahf.r2d2.R2d2 0.86" + }, + "completed_at": "2026-09-11T18:10:04Z", + "confirmation": null, + "delta_pct": -42.0, + "id": "f91a110e1b07b0f1", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "ahf.r2d2.R2d2 0.86", + "division": "roborumble", + "jar": "ahf.r2d2.R2d2_0.86.jar", + "jar_sha256": "cdd8e80b980375b1ed59df8fe5a361207c9d3ee32c6e0d81f936e000c2b1b9f2", + "key": "roborumble/ahf.r2d2.R2d2_0.86.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (score)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 20.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 3410.0, + "scores": [ + 1946.0, + 1464.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 2.8, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 6341.0, + "scores": [ + 3378.0, + 2963.0 + ], + "selected": "ahf.r2d2.R2d2 0.86" + }, + "completed_at": "2026-09-12T21:28:21Z", + "confirmation": null, + "delta_pct": -50.7, + "id": "1638eff4fd8ee776", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } + }, + "bridge_commit": "9972f00ecfe4a85b707d655e40baa95525fa03f2", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "abcfd80eebf9804684b203c00aec674c99ff7105", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "ahf.r2d2.R2d2 0.86", + "division": "roborumble", + "jar": "ahf.r2d2.R2d2_0.86.jar", + "jar_sha256": "cdd8e80b980375b1ed59df8fe5a361207c9d3ee32c6e0d81f936e000c2b1b9f2", + "key": "roborumble/ahf.r2d2.R2d2_0.86.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (score)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 22.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 3126.0, + "scores": [ + 1779.0, + 1347.0 + ], + "skipped": null + } + } + ], + "status": "score-review" + }, + "roborumble/ahr.ice.Ice_1.0.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "ahr.ice.Ice 1.0", + "division": "roborumble", + "jar": "ahr.ice.Ice_1.0.jar", + "jar_sha256": "419d2945138fc27ba706a168f2ef666a1b40905e98b08ccc62312f2de15ef242", + "key": "roborumble/ahr.ice.Ice_1.0.jar", + "kind": "robot" + }, + "latest_observation": "3a76f56e636e4829", + "observations": [ + { + "classic": { + "elapsed": 4.5, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 8381.0, + "scores": [ + 3636.0, + 4745.0 + ], + "selected": "ahr.ice.Ice 1.0" + }, + "completed_at": "2026-09-08T20:20:07Z", + "delta_pct": -4.8, + "id": "230fd620dc49add2", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "ahr.ice.Ice 1.0", + "division": "roborumble", + "jar": "ahr.ice.Ice_1.0.jar", + "jar_sha256": "419d2945138fc27ba706a168f2ef666a1b40905e98b08ccc62312f2de15ef242", + "key": "roborumble/ahr.ice.Ice_1.0.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "elapsed": 14.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 7976.0, + "scores": [ + 4504.0, + 3472.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 4.4, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 8659.0, + "scores": [ + 4156.0, + 4503.0 + ], + "selected": "ahr.ice.Ice 1.0" + }, + "completed_at": "2026-09-11T18:10:23Z", + "confirmation": null, + "delta_pct": -4.8, + "id": "3a76f56e636e4829", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "ahr.ice.Ice 1.0", + "division": "roborumble", + "jar": "ahr.ice.Ice_1.0.jar", + "jar_sha256": "419d2945138fc27ba706a168f2ef666a1b40905e98b08ccc62312f2de15ef242", + "key": "roborumble/ahr.ice.Ice_1.0.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 14.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 8240.0, + "scores": [ + 4359.0, + 3881.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/ak.Fermat_2.0.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "ak.Fermat 2.0", + "division": "roborumble", + "jar": "ak.Fermat_2.0.jar", + "jar_sha256": "814688bbe0f93cf5cc6a6be42ab0e69ad0259c54cba8547b20ddb4b1bd7107b3", + "key": "roborumble/ak.Fermat_2.0.jar", + "kind": "robot" + }, + "latest_observation": "f0cf3c6272820446", + "observations": [ + { + "classic": { + "elapsed": 9.2, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 4980.0, + "scores": [ + 1884.0, + 3096.0 + ], + "selected": "ak.Fermat 2.0" + }, + "completed_at": "2026-09-08T20:20:45Z", + "delta_pct": -25.1, + "id": "2e184f3d97965168", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "ak.Fermat 2.0", + "division": "roborumble", + "jar": "ak.Fermat_2.0.jar", + "jar_sha256": "814688bbe0f93cf5cc6a6be42ab0e69ad0259c54cba8547b20ddb4b1bd7107b3", + "key": "roborumble/ak.Fermat_2.0.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (score)", + "tank_royale": { + "elapsed": 20.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 3728.0, + "scores": [ + 2493.0, + 1235.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 8.2, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5168.0, + "scores": [ + 2497.0, + 2671.0 + ], + "selected": "ak.Fermat 2.0" + }, + "completed_at": "2026-09-11T18:11:04Z", + "confirmation": null, + "delta_pct": null, + "id": "f0cf3c6272820446", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "ak.Fermat 2.0", + "division": "roborumble", + "jar": "ak.Fermat_2.0.jar", + "jar_sha256": "814688bbe0f93cf5cc6a6be42ab0e69ad0259c54cba8547b20ddb4b1bd7107b3", + "key": "roborumble/ak.Fermat_2.0.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (outcome)", + "tank_royale": { + "bridge_only_signatures": [ + [ + "java.lang.SecurityException", + "ak.Fermat.writeOneOnOneData" + ] + ], + "elapsed": 10.1, + "error_count": 13, + "error_signatures": [ + { + "exception": "java.lang.SecurityException", + "origin": "ak.Fermat.writeOneOnOneData" + } + ], + "errors": [ + "HARNESS: worker produced no result (exit code -1)", + "java.lang.SecurityException: You may only have 5 streams open at a time.", + "java.lang.SecurityException: You may only have 5 streams open at a time.", + "java.lang.SecurityException: You may only have 5 streams open at a time.", + "java.lang.SecurityException: You may only have 5 streams open at a time.", + "java.lang.SecurityException: You may only have 5 streams open at a time.", + "java.lang.SecurityException: You may only have 5 streams open at a time.", + "java.lang.SecurityException: You may only have 5 streams open at a time.", + "java.lang.SecurityException: You may only have 5 streams open at a time.", + "java.lang.SecurityException: You may only have 5 streams open at a time.", + "java.lang.SecurityException: You may only have 5 streams open at a time.", + "java.lang.SecurityException: You may only have 5 streams open at a time.", + "java.lang.SecurityException: You may only have 5 streams open at a time." + ], + "has_log": true, + "ok": false, + "score": null, + "scores": [], + "skipped": null + } + } + ], + "status": "DISCREPANCY (outcome)" + }, + "roborumble/alex.Diabolo5_1.1.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "alex.Diabolo5 1.1", + "division": "roborumble", + "jar": "alex.Diabolo5_1.1.jar", + "jar_sha256": "cc1530acd1e1ec159e4dde664d7ea82601b7b69ac93a0a081725f877391e6496", + "key": "roborumble/alex.Diabolo5_1.1.jar", + "kind": "robot" + }, + "latest_observation": "bf426b80c7e5c3f8", + "observations": [ + { + "classic": { + "elapsed": 2.4, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 6507.0, + "scores": [ + 3251.0, + 3256.0 + ], + "selected": "alex.Diabolo5 1.1" + }, + "completed_at": "2026-09-08T20:21:02Z", + "delta_pct": -3.4, + "id": "9571152abf9a4117", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "alex.Diabolo5 1.1", + "division": "roborumble", + "jar": "alex.Diabolo5_1.1.jar", + "jar_sha256": "cc1530acd1e1ec159e4dde664d7ea82601b7b69ac93a0a081725f877391e6496", + "key": "roborumble/alex.Diabolo5_1.1.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "elapsed": 14.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 6288.0, + "scores": [ + 3151.0, + 3137.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 2.4, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 6776.0, + "scores": [ + 3520.0, + 3256.0 + ], + "selected": "alex.Diabolo5 1.1" + }, + "completed_at": "2026-09-11T18:11:21Z", + "confirmation": null, + "delta_pct": -13.4, + "id": "bf426b80c7e5c3f8", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "alex.Diabolo5 1.1", + "division": "roborumble", + "jar": "alex.Diabolo5_1.1.jar", + "jar_sha256": "cc1530acd1e1ec159e4dde664d7ea82601b7b69ac93a0a081725f877391e6496", + "key": "roborumble/alex.Diabolo5_1.1.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 14.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5866.0, + "scores": [ + 3094.0, + 2772.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/alk.lap.LoudAndProud_2.23.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "alk.lap.LoudAndProud 2.23", + "division": "roborumble", + "jar": "alk.lap.LoudAndProud_2.23.jar", + "jar_sha256": "17efb1d5344e72a8d6a5028db163d1727b131b8b9b2cb146e801df88cc1b945b", + "key": "roborumble/alk.lap.LoudAndProud_2.23.jar", + "kind": "robot" + }, + "latest_observation": "c36eb610f9e6a0d7", + "observations": [ + { + "classic": { + "elapsed": 5.4, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 4818.0, + "scores": [ + 2531.0, + 2287.0 + ], + "selected": "alk.lap.LoudAndProud 2.23" + }, + "completed_at": "2026-09-08T20:21:28Z", + "delta_pct": -10.3, + "id": "b7150fa0f8305e61", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "alk.lap.LoudAndProud 2.23", + "division": "roborumble", + "jar": "alk.lap.LoudAndProud_2.23.jar", + "jar_sha256": "17efb1d5344e72a8d6a5028db163d1727b131b8b9b2cb146e801df88cc1b945b", + "key": "roborumble/alk.lap.LoudAndProud_2.23.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "elapsed": 20.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 4321.0, + "scores": [ + 2551.0, + 1770.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 5.1, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5515.0, + "scores": [ + 3071.0, + 2444.0 + ], + "selected": "alk.lap.LoudAndProud 2.23" + }, + "completed_at": "2026-09-11T18:11:46Z", + "confirmation": null, + "delta_pct": -12.4, + "id": "c36eb610f9e6a0d7", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "alk.lap.LoudAndProud 2.23", + "division": "roborumble", + "jar": "alk.lap.LoudAndProud_2.23.jar", + "jar_sha256": "17efb1d5344e72a8d6a5028db163d1727b131b8b9b2cb146e801df88cc1b945b", + "key": "roborumble/alk.lap.LoudAndProud_2.23.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 20.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 4830.0, + "scores": [ + 2954.0, + 1876.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/am.Miedzix_3.0.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "am.Miedzix 3.0", + "division": "roborumble", + "jar": "am.Miedzix_3.0.jar", + "jar_sha256": "eaebae0baf5108909282e2e018424089c946d6cf91938a01185df48783fa097f", + "key": "roborumble/am.Miedzix_3.0.jar", + "kind": "robot" + }, + "latest_observation": "32356b3362a6a0a9", + "observations": [ + { + "classic": { + "elapsed": 2.6, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 9444.0, + "scores": [ + 4768.0, + 4676.0 + ], + "selected": "am.Miedzix 3.0" + }, + "completed_at": "2026-09-08T20:21:43Z", + "delta_pct": 8.6, + "id": "95ffe43ca9a2cd04", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "am.Miedzix 3.0", + "division": "roborumble", + "jar": "am.Miedzix_3.0.jar", + "jar_sha256": "eaebae0baf5108909282e2e018424089c946d6cf91938a01185df48783fa097f", + "key": "roborumble/am.Miedzix_3.0.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "elapsed": 12.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 10259.0, + "scores": [ + 5202.0, + 5057.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 2.6, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 9203.0, + "scores": [ + 4281.0, + 4922.0 + ], + "selected": "am.Miedzix 3.0" + }, + "completed_at": "2026-09-11T18:12:03Z", + "confirmation": null, + "delta_pct": 18.6, + "id": "32356b3362a6a0a9", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "am.Miedzix 3.0", + "division": "roborumble", + "jar": "am.Miedzix_3.0.jar", + "jar_sha256": "eaebae0baf5108909282e2e018424089c946d6cf91938a01185df48783fa097f", + "key": "roborumble/am.Miedzix_3.0.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 14.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 10919.0, + "scores": [ + 5573.0, + 5346.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/amarok.Rookie_1.1.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "amarok.Rookie 1.1", + "division": "roborumble", + "jar": "amarok.Rookie_1.1.jar", + "jar_sha256": "34cf928378f574c9d6eba50911a39c636f8a7605c310be52839fd1bd4d667e39", + "key": "roborumble/amarok.Rookie_1.1.jar", + "kind": "robot" + }, + "latest_observation": "c094847b79433e8f", + "observations": [ + { + "classic": { + "elapsed": 2.7, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 5044.0, + "scores": [ + 2811.0, + 2233.0 + ], + "selected": "amarok.Rookie 1.1" + }, + "completed_at": "2026-09-08T20:22:06Z", + "delta_pct": -11.6, + "id": "4358feef92af528c", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "amarok.Rookie 1.1", + "division": "roborumble", + "jar": "amarok.Rookie_1.1.jar", + "jar_sha256": "34cf928378f574c9d6eba50911a39c636f8a7605c310be52839fd1bd4d667e39", + "key": "roborumble/amarok.Rookie_1.1.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "elapsed": 20.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 4459.0, + "scores": [ + 2242.0, + 2217.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 2.8, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5352.0, + "scores": [ + 2562.0, + 2790.0 + ], + "selected": "amarok.Rookie 1.1" + }, + "completed_at": "2026-09-11T18:12:29Z", + "confirmation": null, + "delta_pct": -10.8, + "id": "c094847b79433e8f", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "amarok.Rookie 1.1", + "division": "roborumble", + "jar": "amarok.Rookie_1.1.jar", + "jar_sha256": "34cf928378f574c9d6eba50911a39c636f8a7605c310be52839fd1bd4d667e39", + "key": "roborumble/amarok.Rookie_1.1.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 22.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 4772.0, + "scores": [ + 2683.0, + 2089.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/amc.ROBv202_1.01.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "amc.ROBv202 1.01", + "division": "roborumble", + "jar": "amc.ROBv202_1.01.jar", + "jar_sha256": "eeeefad3aaac8d19b0ce5d7a3d3af5b4808fefbaf71523c6ecd43834150ee6be", + "key": "roborumble/amc.ROBv202_1.01.jar", + "kind": "robot" + }, + "latest_observation": "39aea9433cd721c8", + "observations": [ + { + "classic": { + "elapsed": 4.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 2517.0, + "scores": [ + 1470.0, + 1047.0 + ], + "selected": "amc.ROBv202 1.01" + }, + "completed_at": "2026-09-08T20:22:38Z", + "delta_pct": -8.8, + "id": "7af3d80d2aa0cb8e", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "amc.ROBv202 1.01", + "division": "roborumble", + "jar": "amc.ROBv202_1.01.jar", + "jar_sha256": "eeeefad3aaac8d19b0ce5d7a3d3af5b4808fefbaf71523c6ecd43834150ee6be", + "key": "roborumble/amc.ROBv202_1.01.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "elapsed": 28.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 2295.0, + "scores": [ + 1227.0, + 1068.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 4.3, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 2125.0, + "scores": [ + 1272.0, + 853.0 + ], + "selected": "amc.ROBv202 1.01" + }, + "completed_at": "2026-09-11T18:12:59Z", + "confirmation": null, + "delta_pct": 9.4, + "id": "39aea9433cd721c8", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "amc.ROBv202 1.01", + "division": "roborumble", + "jar": "amc.ROBv202_1.01.jar", + "jar_sha256": "eeeefad3aaac8d19b0ce5d7a3d3af5b4808fefbaf71523c6ecd43834150ee6be", + "key": "roborumble/amc.ROBv202_1.01.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 26.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 2324.0, + "scores": [ + 1307.0, + 1017.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/amc.ROBv203_1.0.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "amc.ROBv203 1.0", + "division": "roborumble", + "jar": "amc.ROBv203_1.0.jar", + "jar_sha256": "1bb9b1b15f09c382abba7ee7043a81277dda0cb68bcd058b92f02fa0abda3bdd", + "key": "roborumble/amc.ROBv203_1.0.jar", + "kind": "robot" + }, + "latest_observation": "2cc236c1d03f3e06", + "observations": [ + { + "classic": { + "elapsed": 2.5, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 8230.0, + "scores": [ + 3968.0, + 4262.0 + ], + "selected": "amc.ROBv203 1.0" + }, + "completed_at": "2026-09-08T20:22:57Z", + "delta_pct": -1.9, + "id": "5b13343a09625cb7", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "amc.ROBv203 1.0", + "division": "roborumble", + "jar": "amc.ROBv203_1.0.jar", + "jar_sha256": "1bb9b1b15f09c382abba7ee7043a81277dda0cb68bcd058b92f02fa0abda3bdd", + "key": "roborumble/amc.ROBv203_1.0.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "elapsed": 16.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 8073.0, + "scores": [ + 4630.0, + 3443.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 2.4, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 9200.0, + "scores": [ + 4518.0, + 4682.0 + ], + "selected": "amc.ROBv203 1.0" + }, + "completed_at": "2026-09-11T18:13:20Z", + "confirmation": null, + "delta_pct": -18.2, + "id": "2cc236c1d03f3e06", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "amc.ROBv203 1.0", + "division": "roborumble", + "jar": "amc.ROBv203_1.0.jar", + "jar_sha256": "1bb9b1b15f09c382abba7ee7043a81277dda0cb68bcd058b92f02fa0abda3bdd", + "key": "roborumble/amc.ROBv203_1.0.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 18.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 7522.0, + "scores": [ + 3867.0, + 3655.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/amc.ROBv300_1.1.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "amc.ROBv300 1.1", + "division": "roborumble", + "jar": "amc.ROBv300_1.1.jar", + "jar_sha256": "6db4ed03047d5efd9e8de254be8f68d9e3417a875c591e974514ff055d390920", + "key": "roborumble/amc.ROBv300_1.1.jar", + "kind": "robot" + }, + "latest_observation": "f9495f2dbd71e8f7", + "observations": [ + { + "classic": { + "elapsed": 3.2, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 2648.0, + "scores": [ + 1072.0, + 1576.0 + ], + "selected": "amc.ROBv300 1.1" + }, + "completed_at": "2026-09-08T20:23:24Z", + "delta_pct": 67.9, + "id": "f9df3a01abc1f04f", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "amc.ROBv300 1.1", + "division": "roborumble", + "jar": "amc.ROBv300_1.1.jar", + "jar_sha256": "6db4ed03047d5efd9e8de254be8f68d9e3417a875c591e974514ff055d390920", + "key": "roborumble/amc.ROBv300_1.1.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (score)", + "tank_royale": { + "elapsed": 24.1, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 4445.0, + "scores": [ + 2309.0, + 2136.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 3.1, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 3070.0, + "scores": [ + 1416.0, + 1654.0 + ], + "selected": "amc.ROBv300 1.1" + }, + "completed_at": "2026-09-11T18:13:53Z", + "confirmation": null, + "delta_pct": 30.5, + "id": "f9495f2dbd71e8f7", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "amc.ROBv300 1.1", + "division": "roborumble", + "jar": "amc.ROBv300_1.1.jar", + "jar_sha256": "6db4ed03047d5efd9e8de254be8f68d9e3417a875c591e974514ff055d390920", + "key": "roborumble/amc.ROBv300_1.1.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (score)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 30.1, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 4006.0, + "scores": [ + 2103.0, + 1903.0 + ], + "skipped": null + } + } + ], + "status": "score-review" + }, + "roborumble/amc.ROBv301_1.1.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "amc.ROBv301 1.1", + "division": "roborumble", + "jar": "amc.ROBv301_1.1.jar", + "jar_sha256": "0f5ce30be90a631bbca672094046847e552d2b2370af3ec73b3d9ed8c737798f", + "key": "roborumble/amc.ROBv301_1.1.jar", + "kind": "robot" + }, + "latest_observation": "17337652ea3548fe", + "observations": [ + { + "classic": { + "elapsed": 3.8, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 4436.0, + "scores": [ + 1954.0, + 2482.0 + ], + "selected": "amc.ROBv301 1.1" + }, + "completed_at": "2026-09-08T20:23:53Z", + "delta_pct": 70.0, + "id": "8f84ca57fd472f5b", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "amc.ROBv301 1.1", + "division": "roborumble", + "jar": "amc.ROBv301_1.1.jar", + "jar_sha256": "0f5ce30be90a631bbca672094046847e552d2b2370af3ec73b3d9ed8c737798f", + "key": "roborumble/amc.ROBv301_1.1.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (score)", + "tank_royale": { + "elapsed": 24.1, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 7541.0, + "scores": [ + 3782.0, + 3759.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 3.6, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 4073.0, + "scores": [ + 1820.0, + 2253.0 + ], + "selected": "amc.ROBv301 1.1" + }, + "completed_at": "2026-09-11T18:14:25Z", + "confirmation": null, + "delta_pct": 99.0, + "id": "17337652ea3548fe", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "amc.ROBv301 1.1", + "division": "roborumble", + "jar": "amc.ROBv301_1.1.jar", + "jar_sha256": "0f5ce30be90a631bbca672094046847e552d2b2370af3ec73b3d9ed8c737798f", + "key": "roborumble/amc.ROBv301_1.1.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (score)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 28.1, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 8107.0, + "scores": [ + 4405.0, + 3702.0 + ], + "skipped": null + } + } + ], + "status": "score-review" + }, + "roborumble/amc.ROBv400_1.0.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "amc.ROBv400 1.0", + "division": "roborumble", + "jar": "amc.ROBv400_1.0.jar", + "jar_sha256": "ed8d81415f6cc852706df58f162e484cb4dc68882357c4e2f5875f5908eafa86", + "key": "roborumble/amc.ROBv400_1.0.jar", + "kind": "robot" + }, + "latest_observation": "045a5862fdac8d8a", + "observations": [ + { + "classic": { + "elapsed": 4.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 4053.0, + "scores": [ + 2092.0, + 1961.0 + ], + "selected": "amc.ROBv400 1.0" + }, + "completed_at": "2026-09-08T20:24:19Z", + "delta_pct": 78.2, + "id": "09be55e2c9b7d445", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "amc.ROBv400 1.0", + "division": "roborumble", + "jar": "amc.ROBv400_1.0.jar", + "jar_sha256": "ed8d81415f6cc852706df58f162e484cb4dc68882357c4e2f5875f5908eafa86", + "key": "roborumble/amc.ROBv400_1.0.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (score)", + "tank_royale": { + "elapsed": 22.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 7223.0, + "scores": [ + 3849.0, + 3374.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 4.3, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 3151.0, + "scores": [ + 1494.0, + 1657.0 + ], + "selected": "amc.ROBv400 1.0" + }, + "completed_at": "2026-09-11T18:14:54Z", + "confirmation": null, + "delta_pct": 139.7, + "id": "045a5862fdac8d8a", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "amc.ROBv400 1.0", + "division": "roborumble", + "jar": "amc.ROBv400_1.0.jar", + "jar_sha256": "ed8d81415f6cc852706df58f162e484cb4dc68882357c4e2f5875f5908eafa86", + "key": "roborumble/amc.ROBv400_1.0.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (score)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 24.1, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 7554.0, + "scores": [ + 4220.0, + 3334.0 + ], + "skipped": null + } + } + ], + "status": "score-review" + }, + "roborumble/amk.ChumbaMini_0.2.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "amk.ChumbaMini 0.2", + "division": "roborumble", + "jar": "amk.ChumbaMini_0.2.jar", + "jar_sha256": "5770270c23f9223e4df93f5455fcf461ecd30309fc318f3d53cbbdf93e133d6b", + "key": "roborumble/amk.ChumbaMini_0.2.jar", + "kind": "robot" + }, + "latest_observation": "05156dda8b04e557", + "observations": [ + { + "classic": { + "elapsed": 3.0, + "error_count": 100, + "errors": [ + "SYSTEM: java.lang.SecurityException occurred on robocode.DeathEvent", + "java.lang.SecurityException: You may only have 5 streams open at a time.", + "SYSTEM: java.lang.SecurityException occurred on robocode.DeathEvent", + "java.lang.SecurityException: You may only have 5 streams open at a time.", + "SYSTEM: java.lang.SecurityException occurred on robocode.WinEvent", + "java.lang.SecurityException: You may only have 5 streams open at a time.", + "SYSTEM: java.lang.SecurityException occurred on robocode.DeathEvent", + "java.lang.SecurityException: You may only have 5 streams open at a time.", + "SYSTEM: java.lang.SecurityException occurred on robocode.DeathEvent", + "java.lang.SecurityException: You may only have 5 streams open at a time.", + "SYSTEM: java.lang.SecurityException occurred on robocode.WinEvent", + "java.lang.SecurityException: You may only have 5 streams open at a time.", + "SYSTEM: java.lang.SecurityException occurred on robocode.WinEvent", + "java.lang.SecurityException: You may only have 5 streams open at a time.", + "SYSTEM: java.lang.SecurityException occurred on robocode.WinEvent", + "java.lang.SecurityException: You may only have 5 streams open at a time.", + "SYSTEM: java.lang.SecurityException occurred on robocode.DeathEvent", + "java.lang.SecurityException: You may only have 5 streams open at a time.", + "SYSTEM: java.lang.SecurityException occurred on robocode.DeathEvent", + "java.lang.SecurityException: You may only have 5 streams open at a time.", + "SYSTEM: java.lang.SecurityException occurred on robocode.WinEvent", + "java.lang.SecurityException: You may only have 5 streams open at a time.", + "SYSTEM: java.lang.SecurityException occurred on robocode.WinEvent", + "java.lang.SecurityException: You may only have 5 streams open at a time.", + "SYSTEM: java.lang.SecurityException occurred on robocode.WinEvent", + "java.lang.SecurityException: You may only have 5 streams open at a time.", + "SYSTEM: java.lang.SecurityException occurred on robocode.WinEvent", + "java.lang.SecurityException: You may only have 5 streams open at a time.", + "SYSTEM: java.lang.SecurityException occurred on robocode.DeathEvent", + "java.lang.SecurityException: You may only have 5 streams open at a time.", + "SYSTEM: java.lang.SecurityException occurred on robocode.WinEvent", + "java.lang.SecurityException: You may only have 5 streams open at a time.", + "SYSTEM: java.lang.SecurityException occurred on robocode.DeathEvent", + "java.lang.SecurityException: You may only have 5 streams open at a time.", + "SYSTEM: java.lang.SecurityException occurred on robocode.DeathEvent", + "java.lang.SecurityException: You may only have 5 streams open at a time.", + "SYSTEM: java.lang.SecurityException occurred on robocode.DeathEvent", + "java.lang.SecurityException: You may only have 5 streams open at a time.", + "SYSTEM: java.lang.SecurityException occurred on robocode.DeathEvent", + "java.lang.SecurityException: You may only have 5 streams open at a time.", + "SYSTEM: java.lang.SecurityException occurred on robocode.DeathEvent", + "java.lang.SecurityException: You may only have 5 streams open at a time.", + "SYSTEM: java.lang.SecurityException occurred on robocode.DeathEvent", + "java.lang.SecurityException: You may only have 5 streams open at a time.", + "SYSTEM: java.lang.SecurityException occurred on robocode.WinEvent", + "java.lang.SecurityException: You may only have 5 streams open at a time.", + "SYSTEM: java.lang.SecurityException occurred on robocode.DeathEvent", + "java.lang.SecurityException: You may only have 5 streams open at a time.", + "SYSTEM: java.lang.SecurityException occurred on robocode.WinEvent", + "java.lang.SecurityException: You may only have 5 streams open at a time.", + "SYSTEM: java.lang.SecurityException occurred on robocode.WinEvent", + "java.lang.SecurityException: You may only have 5 streams open at a time.", + "SYSTEM: java.lang.SecurityException occurred on robocode.WinEvent", + "java.lang.SecurityException: You may only have 5 streams open at a time.", + "SYSTEM: java.lang.SecurityException occurred on robocode.DeathEvent", + "java.lang.SecurityException: You may only have 5 streams open at a time.", + "SYSTEM: java.lang.SecurityException occurred on robocode.WinEvent", + "java.lang.SecurityException: You may only have 5 streams open at a time.", + "SYSTEM: java.lang.SecurityException occurred on robocode.WinEvent", + "java.lang.SecurityException: You may only have 5 streams open at a time.", + "SYSTEM: java.lang.SecurityException occurred on robocode.WinEvent", + "java.lang.SecurityException: You may only have 5 streams open at a time.", + "SYSTEM: java.lang.SecurityException occurred on robocode.DeathEvent", + "java.lang.SecurityException: You may only have 5 streams open at a time.", + "SYSTEM: java.lang.SecurityException occurred on robocode.DeathEvent", + "java.lang.SecurityException: You may only have 5 streams open at a time.", + "SYSTEM: java.lang.SecurityException occurred on robocode.WinEvent", + "java.lang.SecurityException: You may only have 5 streams open at a time.", + "SYSTEM: java.lang.SecurityException occurred on robocode.WinEvent", + "java.lang.SecurityException: You may only have 5 streams open at a time.", + "SYSTEM: java.lang.SecurityException occurred on robocode.DeathEvent", + "java.lang.SecurityException: You may only have 5 streams open at a time.", + "SYSTEM: java.lang.SecurityException occurred on robocode.WinEvent", + "java.lang.SecurityException: You may only have 5 streams open at a time.", + "SYSTEM: java.lang.SecurityException occurred on robocode.DeathEvent", + "java.lang.SecurityException: You may only have 5 streams open at a time.", + "SYSTEM: java.lang.SecurityException occurred on robocode.WinEvent", + "java.lang.SecurityException: You may only have 5 streams open at a time.", + "SYSTEM: java.lang.SecurityException occurred on robocode.DeathEvent", + "java.lang.SecurityException: You may only have 5 streams open at a time.", + "SYSTEM: java.lang.SecurityException occurred on robocode.WinEvent", + "java.lang.SecurityException: You may only have 5 streams open at a time.", + "SYSTEM: java.lang.SecurityException occurred on robocode.WinEvent", + "java.lang.SecurityException: You may only have 5 streams open at a time.", + "SYSTEM: java.lang.SecurityException occurred on robocode.WinEvent", + "java.lang.SecurityException: You may only have 5 streams open at a time.", + "SYSTEM: java.lang.SecurityException occurred on robocode.WinEvent", + "java.lang.SecurityException: You may only have 5 streams open at a time.", + "SYSTEM: java.lang.SecurityException occurred on robocode.WinEvent", + "java.lang.SecurityException: You may only have 5 streams open at a time.", + "SYSTEM: java.lang.SecurityException occurred on robocode.WinEvent", + "java.lang.SecurityException: You may only have 5 streams open at a time.", + "SYSTEM: java.lang.SecurityException occurred on robocode.WinEvent", + "java.lang.SecurityException: You may only have 5 streams open at a time.", + "SYSTEM: java.lang.SecurityException occurred on robocode.DeathEvent", + "java.lang.SecurityException: You may only have 5 streams open at a time.", + "SYSTEM: java.lang.SecurityException occurred on robocode.WinEvent", + "java.lang.SecurityException: You may only have 5 streams open at a time.", + "SYSTEM: java.lang.SecurityException occurred on robocode.DeathEvent", + "java.lang.SecurityException: You may only have 5 streams open at a time." + ], + "has_log": true, + "ok": true, + "score": 5187.0, + "scores": [ + 2322.0, + 2865.0 + ], + "selected": "amk.ChumbaMini 0.2" + }, + "completed_at": "2026-09-08T20:24:36Z", + "delta_pct": 12.6, + "id": "a2683415dda92a08", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "amk.ChumbaMini 0.2", + "division": "roborumble", + "jar": "amk.ChumbaMini_0.2.jar", + "jar_sha256": "5770270c23f9223e4df93f5455fcf461ecd30309fc318f3d53cbbdf93e133d6b", + "key": "roborumble/amk.ChumbaMini_0.2.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "elapsed": 14.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 5843.0, + "scores": [ + 3157.0, + 2686.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 2.8, + "error_count": 98, + "error_signatures": [ + { + "exception": "java.lang.SecurityException", + "origin": "amk.ChumbaMini.saveData" + } + ], + "errors": [ + "SYSTEM: java.lang.SecurityException occurred on robocode.DeathEvent", + "java.lang.SecurityException: You may only have 5 streams open at a time.", + "SYSTEM: java.lang.SecurityException occurred on robocode.WinEvent", + "java.lang.SecurityException: You may only have 5 streams open at a time.", + "SYSTEM: java.lang.SecurityException occurred on robocode.DeathEvent", + "java.lang.SecurityException: You may only have 5 streams open at a time.", + "SYSTEM: java.lang.SecurityException occurred on robocode.DeathEvent", + "java.lang.SecurityException: You may only have 5 streams open at a time.", + "SYSTEM: java.lang.SecurityException occurred on robocode.DeathEvent", + "java.lang.SecurityException: You may only have 5 streams open at a time.", + "SYSTEM: java.lang.SecurityException occurred on robocode.WinEvent", + "java.lang.SecurityException: You may only have 5 streams open at a time.", + "SYSTEM: java.lang.SecurityException occurred on robocode.WinEvent", + "java.lang.SecurityException: You may only have 5 streams open at a time.", + "SYSTEM: java.lang.SecurityException occurred on robocode.DeathEvent", + "java.lang.SecurityException: You may only have 5 streams open at a time.", + "SYSTEM: java.lang.SecurityException occurred on robocode.WinEvent", + "java.lang.SecurityException: You may only have 5 streams open at a time.", + "SYSTEM: java.lang.SecurityException occurred on robocode.DeathEvent", + "java.lang.SecurityException: You may only have 5 streams open at a time.", + "SYSTEM: java.lang.SecurityException occurred on robocode.WinEvent", + "java.lang.SecurityException: You may only have 5 streams open at a time.", + "SYSTEM: java.lang.SecurityException occurred on robocode.WinEvent", + "java.lang.SecurityException: You may only have 5 streams open at a time.", + "SYSTEM: java.lang.SecurityException occurred on robocode.WinEvent", + "java.lang.SecurityException: You may only have 5 streams open at a time.", + "SYSTEM: java.lang.SecurityException occurred on robocode.DeathEvent", + "java.lang.SecurityException: You may only have 5 streams open at a time.", + "SYSTEM: java.lang.SecurityException occurred on robocode.DeathEvent", + "java.lang.SecurityException: You may only have 5 streams open at a time.", + "SYSTEM: java.lang.SecurityException occurred on robocode.DeathEvent", + "java.lang.SecurityException: You may only have 5 streams open at a time.", + "SYSTEM: java.lang.SecurityException occurred on robocode.DeathEvent", + "java.lang.SecurityException: You may only have 5 streams open at a time.", + "SYSTEM: java.lang.SecurityException occurred on robocode.WinEvent", + "java.lang.SecurityException: You may only have 5 streams open at a time.", + "SYSTEM: java.lang.SecurityException occurred on robocode.DeathEvent", + "java.lang.SecurityException: You may only have 5 streams open at a time.", + "SYSTEM: java.lang.SecurityException occurred on robocode.DeathEvent", + "java.lang.SecurityException: You may only have 5 streams open at a time.", + "SYSTEM: java.lang.SecurityException occurred on robocode.DeathEvent", + "java.lang.SecurityException: You may only have 5 streams open at a time.", + "SYSTEM: java.lang.SecurityException occurred on robocode.WinEvent", + "java.lang.SecurityException: You may only have 5 streams open at a time.", + "SYSTEM: java.lang.SecurityException occurred on robocode.WinEvent", + "java.lang.SecurityException: You may only have 5 streams open at a time.", + "SYSTEM: java.lang.SecurityException occurred on robocode.DeathEvent", + "java.lang.SecurityException: You may only have 5 streams open at a time.", + "SYSTEM: java.lang.SecurityException occurred on robocode.WinEvent", + "java.lang.SecurityException: You may only have 5 streams open at a time.", + "SYSTEM: java.lang.SecurityException occurred on robocode.DeathEvent", + "java.lang.SecurityException: You may only have 5 streams open at a time.", + "SYSTEM: java.lang.SecurityException occurred on robocode.WinEvent", + "java.lang.SecurityException: You may only have 5 streams open at a time.", + "SYSTEM: java.lang.SecurityException occurred on robocode.WinEvent", + "java.lang.SecurityException: You may only have 5 streams open at a time.", + "SYSTEM: java.lang.SecurityException occurred on robocode.WinEvent", + "java.lang.SecurityException: You may only have 5 streams open at a time.", + "SYSTEM: java.lang.SecurityException occurred on robocode.DeathEvent", + "java.lang.SecurityException: You may only have 5 streams open at a time.", + "SYSTEM: java.lang.SecurityException occurred on robocode.DeathEvent", + "java.lang.SecurityException: You may only have 5 streams open at a time.", + "SYSTEM: java.lang.SecurityException occurred on robocode.WinEvent", + "java.lang.SecurityException: You may only have 5 streams open at a time.", + "SYSTEM: java.lang.SecurityException occurred on robocode.DeathEvent", + "java.lang.SecurityException: You may only have 5 streams open at a time.", + "SYSTEM: java.lang.SecurityException occurred on robocode.WinEvent", + "java.lang.SecurityException: You may only have 5 streams open at a time.", + "SYSTEM: java.lang.SecurityException occurred on robocode.WinEvent", + "java.lang.SecurityException: You may only have 5 streams open at a time.", + "SYSTEM: java.lang.SecurityException occurred on robocode.DeathEvent", + "java.lang.SecurityException: You may only have 5 streams open at a time.", + "SYSTEM: java.lang.SecurityException occurred on robocode.DeathEvent", + "java.lang.SecurityException: You may only have 5 streams open at a time.", + "SYSTEM: java.lang.SecurityException occurred on robocode.WinEvent", + "java.lang.SecurityException: You may only have 5 streams open at a time.", + "SYSTEM: java.lang.SecurityException occurred on robocode.WinEvent", + "java.lang.SecurityException: You may only have 5 streams open at a time.", + "SYSTEM: java.lang.SecurityException occurred on robocode.WinEvent", + "java.lang.SecurityException: You may only have 5 streams open at a time.", + "SYSTEM: java.lang.SecurityException occurred on robocode.WinEvent", + "java.lang.SecurityException: You may only have 5 streams open at a time.", + "SYSTEM: java.lang.SecurityException occurred on robocode.DeathEvent", + "java.lang.SecurityException: You may only have 5 streams open at a time.", + "SYSTEM: java.lang.SecurityException occurred on robocode.WinEvent", + "java.lang.SecurityException: You may only have 5 streams open at a time.", + "SYSTEM: java.lang.SecurityException occurred on robocode.WinEvent", + "java.lang.SecurityException: You may only have 5 streams open at a time.", + "SYSTEM: java.lang.SecurityException occurred on robocode.WinEvent", + "java.lang.SecurityException: You may only have 5 streams open at a time.", + "SYSTEM: java.lang.SecurityException occurred on robocode.DeathEvent", + "java.lang.SecurityException: You may only have 5 streams open at a time.", + "SYSTEM: java.lang.SecurityException occurred on robocode.WinEvent", + "java.lang.SecurityException: You may only have 5 streams open at a time.", + "SYSTEM: java.lang.SecurityException occurred on robocode.WinEvent", + "java.lang.SecurityException: You may only have 5 streams open at a time.", + "SYSTEM: java.lang.SecurityException occurred on robocode.WinEvent", + "java.lang.SecurityException: You may only have 5 streams open at a time." + ], + "has_log": true, + "ok": true, + "score": 5536.0, + "scores": [ + 2695.0, + 2841.0 + ], + "selected": "amk.ChumbaMini 0.2" + }, + "completed_at": "2026-09-11T18:15:15Z", + "confirmation": null, + "delta_pct": -0.8, + "id": "05156dda8b04e557", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "amk.ChumbaMini 0.2", + "division": "roborumble", + "jar": "amk.ChumbaMini_0.2.jar", + "jar_sha256": "5770270c23f9223e4df93f5455fcf461ecd30309fc318f3d53cbbdf93e133d6b", + "key": "roborumble/amk.ChumbaMini_0.2.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 18.0, + "error_count": 66, + "error_signatures": [ + { + "exception": "java.lang.SecurityException", + "origin": "amk.ChumbaMini.saveData" + } + ], + "errors": [ + "java.lang.SecurityException: You may only have 5 streams open at a time.", + "java.lang.SecurityException: You may only have 5 streams open at a time.", + "java.lang.SecurityException: You may only have 5 streams open at a time.", + "java.lang.SecurityException: You may only have 5 streams open at a time.", + "java.lang.SecurityException: You may only have 5 streams open at a time.", + "java.lang.SecurityException: You may only have 5 streams open at a time.", + "java.lang.SecurityException: You may only have 5 streams open at a time.", + "java.lang.SecurityException: You may only have 5 streams open at a time.", + "java.lang.SecurityException: You may only have 5 streams open at a time.", + "java.lang.SecurityException: You may only have 5 streams open at a time.", + "java.lang.SecurityException: You may only have 5 streams open at a time.", + "java.lang.SecurityException: You may only have 5 streams open at a time.", + "java.lang.SecurityException: You may only have 5 streams open at a time.", + "java.lang.SecurityException: You may only have 5 streams open at a time.", + "java.lang.SecurityException: You may only have 5 streams open at a time.", + "java.lang.SecurityException: You may only have 5 streams open at a time.", + "java.lang.SecurityException: You may only have 5 streams open at a time.", + "java.lang.SecurityException: You may only have 5 streams open at a time.", + "java.lang.SecurityException: You may only have 5 streams open at a time.", + "java.lang.SecurityException: You may only have 5 streams open at a time.", + "java.lang.SecurityException: You may only have 5 streams open at a time.", + "java.lang.SecurityException: You may only have 5 streams open at a time.", + "java.lang.SecurityException: You may only have 5 streams open at a time.", + "java.lang.SecurityException: You may only have 5 streams open at a time.", + "java.lang.SecurityException: You may only have 5 streams open at a time.", + "java.lang.SecurityException: You may only have 5 streams open at a time.", + "java.lang.SecurityException: You may only have 5 streams open at a time.", + "java.lang.SecurityException: You may only have 5 streams open at a time.", + "java.lang.SecurityException: You may only have 5 streams open at a time.", + "java.lang.SecurityException: You may only have 5 streams open at a time.", + "java.lang.SecurityException: You may only have 5 streams open at a time.", + "java.lang.SecurityException: You may only have 5 streams open at a time.", + "java.lang.SecurityException: You may only have 5 streams open at a time.", + "java.lang.SecurityException: You may only have 5 streams open at a time.", + "java.lang.SecurityException: You may only have 5 streams open at a time.", + "java.lang.SecurityException: You may only have 5 streams open at a time.", + "java.lang.SecurityException: You may only have 5 streams open at a time.", + "java.lang.SecurityException: You may only have 5 streams open at a time.", + "java.lang.SecurityException: You may only have 5 streams open at a time.", + "java.lang.SecurityException: You may only have 5 streams open at a time.", + "java.lang.SecurityException: You may only have 5 streams open at a time.", + "java.lang.SecurityException: You may only have 5 streams open at a time.", + "java.lang.SecurityException: You may only have 5 streams open at a time.", + "java.lang.SecurityException: You may only have 5 streams open at a time.", + "java.lang.SecurityException: You may only have 5 streams open at a time.", + "java.lang.SecurityException: You may only have 5 streams open at a time.", + "java.lang.SecurityException: You may only have 5 streams open at a time.", + "java.lang.SecurityException: You may only have 5 streams open at a time.", + "java.lang.SecurityException: You may only have 5 streams open at a time.", + "java.lang.SecurityException: You may only have 5 streams open at a time.", + "java.lang.SecurityException: You may only have 5 streams open at a time.", + "java.lang.SecurityException: You may only have 5 streams open at a time.", + "java.lang.SecurityException: You may only have 5 streams open at a time.", + "java.lang.SecurityException: You may only have 5 streams open at a time.", + "java.lang.SecurityException: You may only have 5 streams open at a time.", + "java.lang.SecurityException: You may only have 5 streams open at a time.", + "java.lang.SecurityException: You may only have 5 streams open at a time.", + "java.lang.SecurityException: You may only have 5 streams open at a time.", + "java.lang.SecurityException: You may only have 5 streams open at a time.", + "java.lang.SecurityException: You may only have 5 streams open at a time.", + "java.lang.SecurityException: You may only have 5 streams open at a time.", + "java.lang.SecurityException: You may only have 5 streams open at a time.", + "java.lang.SecurityException: You may only have 5 streams open at a time.", + "java.lang.SecurityException: You may only have 5 streams open at a time.", + "java.lang.SecurityException: You may only have 5 streams open at a time.", + "java.lang.SecurityException: You may only have 5 streams open at a time." + ], + "has_log": true, + "ok": true, + "score": 5493.0, + "scores": [ + 3091.0, + 2402.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/amk.ChumbaWumba_0.3.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "amk.ChumbaWumba 0.3", + "division": "roborumble", + "jar": "amk.ChumbaWumba_0.3.jar", + "jar_sha256": "f7594cdfa02419ae112013ec923387736a89840712162020ecb899e39d6127e9", + "key": "roborumble/amk.ChumbaWumba_0.3.jar", + "kind": "robot" + }, + "latest_observation": "4bffd0fc5046055a", + "observations": [ + { + "classic": { + "elapsed": 2.7, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 5213.0, + "scores": [ + 2618.0, + 2595.0 + ], + "selected": "amk.ChumbaWumba 0.3" + }, + "completed_at": "2026-09-08T20:24:55Z", + "delta_pct": -5.4, + "id": "945bce04cca29751", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "amk.ChumbaWumba 0.3", + "division": "roborumble", + "jar": "amk.ChumbaWumba_0.3.jar", + "jar_sha256": "f7594cdfa02419ae112013ec923387736a89840712162020ecb899e39d6127e9", + "key": "roborumble/amk.ChumbaWumba_0.3.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "elapsed": 16.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 4933.0, + "scores": [ + 2953.0, + 1980.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 2.5, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5157.0, + "scores": [ + 2843.0, + 2314.0 + ], + "selected": "amk.ChumbaWumba 0.3" + }, + "completed_at": "2026-09-11T18:15:36Z", + "confirmation": null, + "delta_pct": -8.4, + "id": "4bffd0fc5046055a", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "amk.ChumbaWumba 0.3", + "division": "roborumble", + "jar": "amk.ChumbaWumba_0.3.jar", + "jar_sha256": "f7594cdfa02419ae112013ec923387736a89840712162020ecb899e39d6127e9", + "key": "roborumble/amk.ChumbaWumba_0.3.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 18.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 4722.0, + "scores": [ + 2970.0, + 1752.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/amk.Punbot.Punbot_0.01.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "amk.Punbot.Punbot 0.01", + "division": "roborumble", + "jar": "amk.Punbot.Punbot_0.01.jar", + "jar_sha256": "44e10755757c7cb523ad7f6a746f5524f6a054fe7d047528da8330829284b389", + "key": "roborumble/amk.Punbot.Punbot_0.01.jar", + "kind": "robot" + }, + "latest_observation": "5d74b515d19e7bd9", + "observations": [ + { + "classic": { + "elapsed": 2.6, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 5777.0, + "scores": [ + 2448.0, + 3329.0 + ], + "selected": "amk.Punbot.Punbot 0.01" + }, + "completed_at": "2026-09-08T20:25:31Z", + "delta_pct": 1.1, + "id": "5cb33aff96c3e759", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "amk.Punbot.Punbot 0.01", + "division": "roborumble", + "jar": "amk.Punbot.Punbot_0.01.jar", + "jar_sha256": "44e10755757c7cb523ad7f6a746f5524f6a054fe7d047528da8330829284b389", + "key": "roborumble/amk.Punbot.Punbot_0.01.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "elapsed": 16.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 5841.0, + "scores": [ + 3152.0, + 2689.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 2.7, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5593.0, + "scores": [ + 2197.0, + 3396.0 + ], + "selected": "amk.Punbot.Punbot 0.01" + }, + "completed_at": "2026-09-11T18:16:16Z", + "confirmation": null, + "delta_pct": -1.6, + "id": "5d74b515d19e7bd9", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "amk.Punbot.Punbot 0.01", + "division": "roborumble", + "jar": "amk.Punbot.Punbot_0.01.jar", + "jar_sha256": "44e10755757c7cb523ad7f6a746f5524f6a054fe7d047528da8330829284b389", + "key": "roborumble/amk.Punbot.Punbot_0.01.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 18.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5503.0, + "scores": [ + 3267.0, + 2236.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/amk.ShizzleStiX.ShizzleStiX_0.6.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "amk.ShizzleStiX.ShizzleStiX 0.6", + "division": "roborumble", + "jar": "amk.ShizzleStiX.ShizzleStiX_0.6.jar", + "jar_sha256": "3e93e50b7380b8b2f98ab1c30911bc56a98c6eb27ccb5125d1aa8cbbc5987850", + "key": "roborumble/amk.ShizzleStiX.ShizzleStiX_0.6.jar", + "kind": "robot" + }, + "latest_observation": "c618df752edf4a89", + "observations": [ + { + "classic": { + "elapsed": 2.4, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 6365.0, + "scores": [ + 3091.0, + 3274.0 + ], + "selected": "amk.ShizzleStiX.ShizzleStiX 0.6" + }, + "completed_at": "2026-09-08T20:25:48Z", + "delta_pct": 0.5, + "id": "fcb8486e2c29e9dc", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "amk.ShizzleStiX.ShizzleStiX 0.6", + "division": "roborumble", + "jar": "amk.ShizzleStiX.ShizzleStiX_0.6.jar", + "jar_sha256": "3e93e50b7380b8b2f98ab1c30911bc56a98c6eb27ccb5125d1aa8cbbc5987850", + "key": "roborumble/amk.ShizzleStiX.ShizzleStiX_0.6.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "elapsed": 14.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 6399.0, + "scores": [ + 3401.0, + 2998.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 2.5, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 6077.0, + "scores": [ + 3026.0, + 3051.0 + ], + "selected": "amk.ShizzleStiX.ShizzleStiX 0.6" + }, + "completed_at": "2026-09-11T18:16:35Z", + "confirmation": null, + "delta_pct": 4.2, + "id": "c618df752edf4a89", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "amk.ShizzleStiX.ShizzleStiX 0.6", + "division": "roborumble", + "jar": "amk.ShizzleStiX.ShizzleStiX_0.6.jar", + "jar_sha256": "3e93e50b7380b8b2f98ab1c30911bc56a98c6eb27ccb5125d1aa8cbbc5987850", + "key": "roborumble/amk.ShizzleStiX.ShizzleStiX_0.6.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 16.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 6335.0, + "scores": [ + 3253.0, + 3082.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/amk.jointstrike.JointStrike_0.2.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "amk.jointstrike.JointStrike 0.2", + "division": "roborumble", + "jar": "amk.jointstrike.JointStrike_0.2.jar", + "jar_sha256": "3f45fd832f7bb6b6ceb3841c1ab108583ba11b49ba06cbde2f8e61637dc28297", + "key": "roborumble/amk.jointstrike.JointStrike_0.2.jar", + "kind": "robot" + }, + "latest_observation": "921d60fa06a2d0d0", + "observations": [ + { + "classic": { + "elapsed": 2.5, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 7614.0, + "scores": [ + 3922.0, + 3692.0 + ], + "selected": "amk.jointstrike.JointStrike 0.2" + }, + "completed_at": "2026-09-08T20:25:12Z", + "delta_pct": -17.6, + "id": "5c6c92d169d651d3", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "amk.jointstrike.JointStrike 0.2", + "division": "roborumble", + "jar": "amk.jointstrike.JointStrike_0.2.jar", + "jar_sha256": "3f45fd832f7bb6b6ceb3841c1ab108583ba11b49ba06cbde2f8e61637dc28297", + "key": "roborumble/amk.jointstrike.JointStrike_0.2.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "elapsed": 14.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 6274.0, + "scores": [ + 3212.0, + 3062.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 2.4, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 7666.0, + "scores": [ + 4239.0, + 3427.0 + ], + "selected": "amk.jointstrike.JointStrike 0.2" + }, + "completed_at": "2026-09-11T18:15:55Z", + "confirmation": null, + "delta_pct": -22.1, + "id": "921d60fa06a2d0d0", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "amk.jointstrike.JointStrike 0.2", + "division": "roborumble", + "jar": "amk.jointstrike.JointStrike_0.2.jar", + "jar_sha256": "3f45fd832f7bb6b6ceb3841c1ab108583ba11b49ba06cbde2f8e61637dc28297", + "key": "roborumble/amk.jointstrike.JointStrike_0.2.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 16.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5970.0, + "scores": [ + 3231.0, + 2739.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/amk.superstrike.SuperStrike_0.3.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "amk.superstrike.SuperStrike 0.3", + "division": "roborumble", + "jar": "amk.superstrike.SuperStrike_0.3.jar", + "jar_sha256": "ef146a488f92e25b5f8f957831fd715bb6a6b2b1f8cf72ffa05bad505c34c79b", + "key": "roborumble/amk.superstrike.SuperStrike_0.3.jar", + "kind": "robot" + }, + "latest_observation": "3660875ea25882b0", + "observations": [ + { + "classic": { + "elapsed": 2.6, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 7839.0, + "scores": [ + 4140.0, + 3699.0 + ], + "selected": "amk.superstrike.SuperStrike 0.3" + }, + "completed_at": "2026-09-08T20:26:09Z", + "delta_pct": -57.0, + "id": "54ea093325f72804", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "amk.superstrike.SuperStrike 0.3", + "division": "roborumble", + "jar": "amk.superstrike.SuperStrike_0.3.jar", + "jar_sha256": "ef146a488f92e25b5f8f957831fd715bb6a6b2b1f8cf72ffa05bad505c34c79b", + "key": "roborumble/amk.superstrike.SuperStrike_0.3.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (score)", + "tank_royale": { + "elapsed": 18.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 3368.0, + "scores": [ + 2340.0, + 1028.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 2.5, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 7301.0, + "scores": [ + 3346.0, + 3955.0 + ], + "selected": "amk.superstrike.SuperStrike 0.3" + }, + "completed_at": "2026-09-11T18:16:59Z", + "confirmation": null, + "delta_pct": -52.1, + "id": "3660875ea25882b0", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "amk.superstrike.SuperStrike 0.3", + "division": "roborumble", + "jar": "amk.superstrike.SuperStrike_0.3.jar", + "jar_sha256": "ef146a488f92e25b5f8f957831fd715bb6a6b2b1f8cf72ffa05bad505c34c79b", + "key": "roborumble/amk.superstrike.SuperStrike_0.3.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (score)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 22.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 3496.0, + "scores": [ + 1901.0, + 1595.0 + ], + "skipped": null + } + } + ], + "status": "score-review" + }, + "roborumble/ao.T100_0.9.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "ao.T100 0.9", + "division": "roborumble", + "jar": "ao.T100_0.9.jar", + "jar_sha256": "05273a2b787354f59695eeb17a4a8de330ed34d75d805aa17d91a7b756efaae0", + "key": "roborumble/ao.T100_0.9.jar", + "kind": "robot" + }, + "latest_observation": "9ef95c63d40b94a3", + "observations": [ + { + "classic": { + "elapsed": 4.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 7797.0, + "scores": [ + 3914.0, + 3883.0 + ], + "selected": "ao.T100 0.9" + }, + "completed_at": "2026-09-08T20:28:16Z", + "delta_pct": -51.0, + "id": "4ae1803915fa8384", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "ao.T100 0.9", + "division": "roborumble", + "jar": "ao.T100_0.9.jar", + "jar_sha256": "05273a2b787354f59695eeb17a4a8de330ed34d75d805aa17d91a7b756efaae0", + "key": "roborumble/ao.T100_0.9.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (score)", + "tank_royale": { + "elapsed": 96.1, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 3822.0, + "scores": [ + 2016.0, + 1806.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 4.6, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 6819.0, + "scores": [ + 3168.0, + 3651.0 + ], + "selected": "ao.T100 0.9" + }, + "completed_at": "2026-09-11T18:19:16Z", + "confirmation": null, + "delta_pct": -38.0, + "id": "9ef95c63d40b94a3", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "ao.T100 0.9", + "division": "roborumble", + "jar": "ao.T100_0.9.jar", + "jar_sha256": "05273a2b787354f59695eeb17a4a8de330ed34d75d805aa17d91a7b756efaae0", + "key": "roborumble/ao.T100_0.9.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (score)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 102.1, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 4228.0, + "scores": [ + 2463.0, + 1765.0 + ], + "skipped": null + } + } + ], + "status": "score-review" + }, + "roborumble/ap.Frederick_1.1.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "ap.Frederick 1.1", + "division": "roborumble", + "jar": "ap.Frederick_1.1.jar", + "jar_sha256": "d7f1709e4ea064f0662f383c339f57390977292fdd921933adc36e305a375899", + "key": "roborumble/ap.Frederick_1.1.jar", + "kind": "robot" + }, + "latest_observation": "7b31b14ead78848b", + "observations": [ + { + "classic": { + "elapsed": 4.4, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 120.0, + "scores": [ + 120.0, + 0.0 + ], + "selected": "ap.Frederick 1.1" + }, + "completed_at": "2026-09-08T20:28:55Z", + "delta_pct": 4.2, + "id": "df6c7329f8f52c4e", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "ap.Frederick 1.1", + "division": "roborumble", + "jar": "ap.Frederick_1.1.jar", + "jar_sha256": "d7f1709e4ea064f0662f383c339f57390977292fdd921933adc36e305a375899", + "key": "roborumble/ap.Frederick_1.1.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "elapsed": 34.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 125.0, + "scores": [ + 124.0, + 1.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 4.2, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 1.0, + "scores": [ + 1.0, + 0.0 + ], + "selected": "ap.Frederick 1.1" + }, + "completed_at": "2026-09-11T18:19:56Z", + "confirmation": null, + "delta_pct": 13100.0, + "id": "7b31b14ead78848b", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "ap.Frederick 1.1", + "division": "roborumble", + "jar": "ap.Frederick_1.1.jar", + "jar_sha256": "d7f1709e4ea064f0662f383c339f57390977292fdd921933adc36e305a375899", + "key": "roborumble/ap.Frederick_1.1.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (score)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 36.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 132.0, + "scores": [ + 125.0, + 7.0 + ], + "skipped": null + } + } + ], + "status": "score-review" + }, + "roborumble/apc.Caan_1.0.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "apc.Caan 1.0", + "division": "roborumble", + "jar": "apc.Caan_1.0.jar", + "jar_sha256": "1cd29b8da786378b068170b3be45ce03620477218732e4b54e939165f33463b6", + "key": "roborumble/apc.Caan_1.0.jar", + "kind": "robot" + }, + "latest_observation": "aabd00fd8b967bed", + "observations": [ + { + "classic": { + "elapsed": 3.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 6154.0, + "scores": [ + 2535.0, + 3619.0 + ], + "selected": "apc.Caan 1.0" + }, + "completed_at": "2026-09-08T20:29:39Z", + "delta_pct": -1.1, + "id": "f844e4bc6aff7dc0", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "apc.Caan 1.0", + "division": "roborumble", + "jar": "apc.Caan_1.0.jar", + "jar_sha256": "1cd29b8da786378b068170b3be45ce03620477218732e4b54e939165f33463b6", + "key": "roborumble/apc.Caan_1.0.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "elapsed": 18.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 6084.0, + "scores": [ + 3257.0, + 2827.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 3.1, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5964.0, + "scores": [ + 2858.0, + 3106.0 + ], + "selected": "apc.Caan 1.0" + }, + "completed_at": "2026-09-11T18:20:41Z", + "confirmation": null, + "delta_pct": -2.1, + "id": "aabd00fd8b967bed", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "apc.Caan 1.0", + "division": "roborumble", + "jar": "apc.Caan_1.0.jar", + "jar_sha256": "1cd29b8da786378b068170b3be45ce03620477218732e4b54e939165f33463b6", + "key": "roborumble/apc.Caan_1.0.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 18.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5838.0, + "scores": [ + 3565.0, + 2273.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/apc.Colossus2_0.12.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "apc.Colossus2 0.12", + "division": "roborumble", + "jar": "apc.Colossus2_0.12.jar", + "jar_sha256": "b4dbfb04c20332efad6d132d89259a0218fb245dbc8d73a14e368d6dcc024db3", + "key": "roborumble/apc.Colossus2_0.12.jar", + "kind": "robot" + }, + "latest_observation": "17f553f342c848ba", + "observations": [ + { + "classic": { + "elapsed": 2.5, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 11750.0, + "scores": [ + 5594.0, + 6156.0 + ], + "selected": "apc.Colossus2 0.12" + }, + "completed_at": "2026-09-08T20:29:46Z", + "delta_pct": null, + "id": "6234b82cd630f7c9", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "apc.Colossus2 0.12", + "division": "roborumble", + "jar": "apc.Colossus2_0.12.jar", + "jar_sha256": "b4dbfb04c20332efad6d132d89259a0218fb245dbc8d73a14e368d6dcc024db3", + "key": "roborumble/apc.Colossus2_0.12.jar", + "kind": "robot" + }, + "status": "FAIL (TR)", + "tank_royale": { + "elapsed": 4.2, + "error_count": 160, + "errors": [ + "HARNESS: worker produced no result (exit code -1)", + "java.lang.ArrayIndexOutOfBoundsException: Index 20 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 21 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 22 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 23 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 24 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 25 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 26 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 27 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 28 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 29 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 30 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 31 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 32 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 33 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 34 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 35 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 36 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 37 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 38 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 39 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 40 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 41 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 42 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 43 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 44 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 45 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 46 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 47 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 48 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 49 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 50 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 51 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 52 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 53 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 54 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 55 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 56 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 57 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 58 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 59 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 60 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 61 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 62 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 63 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 64 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 65 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 66 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 67 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 68 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 69 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 70 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 71 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 72 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 20 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 21 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 22 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 23 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 24 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 25 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 26 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 27 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 28 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 29 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 30 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 31 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 32 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 33 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 34 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 35 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 36 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 37 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 38 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 39 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 40 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 41 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 42 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 43 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 44 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 45 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 46 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 47 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 48 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 49 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 50 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 51 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 52 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 53 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 54 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 55 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 56 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 57 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 58 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 59 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 60 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 61 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 62 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 63 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 64 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 65 out of bounds for length 20" + ], + "has_log": true, + "ok": false, + "score": null, + "scores": [], + "skipped": null + } + }, + { + "classic": { + "elapsed": 2.5, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 11647.0, + "scores": [ + 5439.0, + 6208.0 + ], + "selected": "apc.Colossus2 0.12" + }, + "completed_at": "2026-09-11T18:20:48Z", + "confirmation": null, + "delta_pct": null, + "id": "17f553f342c848ba", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "apc.Colossus2 0.12", + "division": "roborumble", + "jar": "apc.Colossus2_0.12.jar", + "jar_sha256": "b4dbfb04c20332efad6d132d89259a0218fb245dbc8d73a14e368d6dcc024db3", + "key": "roborumble/apc.Colossus2_0.12.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (outcome)", + "tank_royale": { + "bridge_only_signatures": [ + [ + "java.lang.ArrayIndexOutOfBoundsException", + "apc.Colossus2.onScannedRobot" + ] + ], + "elapsed": 4.1, + "error_count": 225, + "error_signatures": [ + { + "exception": "java.lang.ArrayIndexOutOfBoundsException", + "origin": "apc.Colossus2.onScannedRobot" + } + ], + "errors": [ + "HARNESS: worker produced no result (exit code -1)", + "java.lang.ArrayIndexOutOfBoundsException: Index 20 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 21 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 22 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 23 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 24 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 25 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 26 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 27 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 28 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 29 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 30 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 31 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 32 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 33 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 34 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 35 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 36 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 37 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 38 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 39 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 40 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 41 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 42 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 43 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 44 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 45 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 46 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 47 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 48 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 49 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 50 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 51 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 52 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 53 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 54 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 55 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 56 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 57 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 58 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 59 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 60 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 61 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 62 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 63 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 64 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 65 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 66 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 67 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 68 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 69 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 70 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 71 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 72 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 73 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 74 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 75 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 76 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 77 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 78 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 79 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 80 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 81 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 82 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 83 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 84 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 85 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 86 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 87 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 88 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 89 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 90 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 91 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 92 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 93 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 94 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 95 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 96 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 97 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 98 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 99 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 100 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 101 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 102 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 103 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 104 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 105 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 106 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 107 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 108 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 109 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 110 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 111 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 112 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 113 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 114 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 115 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 116 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 117 out of bounds for length 20", + "java.lang.ArrayIndexOutOfBoundsException: Index 118 out of bounds for length 20" + ], + "has_log": true, + "ok": false, + "score": null, + "scores": [], + "skipped": null + } + } + ], + "status": "DISCREPANCY (outcome)" + }, + "roborumble/apc.LeeroyJenkins2_1.0.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "apc.LeeroyJenkins2 1.0", + "division": "roborumble", + "jar": "apc.LeeroyJenkins2_1.0.jar", + "jar_sha256": "966e1947db52d724adaf02c233a17fdb172066c7fb9ab7a41741ba7eb5374a0d", + "key": "roborumble/apc.LeeroyJenkins2_1.0.jar", + "kind": "robot" + }, + "latest_observation": "e8c0fd36dc3876f7", + "observations": [ + { + "classic": { + "elapsed": 2.8, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 6444.0, + "scores": [ + 2482.0, + 3962.0 + ], + "selected": "apc.LeeroyJenkins2 1.0" + }, + "completed_at": "2026-09-08T20:31:46Z", + "delta_pct": -1.3, + "id": "c115dfcf1a4a4fdf", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "apc.LeeroyJenkins2 1.0", + "division": "roborumble", + "jar": "apc.LeeroyJenkins2_1.0.jar", + "jar_sha256": "966e1947db52d724adaf02c233a17fdb172066c7fb9ab7a41741ba7eb5374a0d", + "key": "roborumble/apc.LeeroyJenkins2_1.0.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "elapsed": 18.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 6361.0, + "scores": [ + 3284.0, + 3077.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 2.7, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 6709.0, + "scores": [ + 3635.0, + 3074.0 + ], + "selected": "apc.LeeroyJenkins2 1.0" + }, + "completed_at": "2026-09-11T18:21:29Z", + "confirmation": null, + "delta_pct": -6.1, + "id": "e8c0fd36dc3876f7", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "apc.LeeroyJenkins2 1.0", + "division": "roborumble", + "jar": "apc.LeeroyJenkins2_1.0.jar", + "jar_sha256": "966e1947db52d724adaf02c233a17fdb172066c7fb9ab7a41741ba7eb5374a0d", + "key": "roborumble/apc.LeeroyJenkins2_1.0.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 22.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 6301.0, + "scores": [ + 3379.0, + 2922.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/apc.botM_3.0.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "apc.botM 3.0", + "division": "roborumble", + "jar": "apc.botM_3.0.jar", + "jar_sha256": "9348a9b3c2e0f175bacf361dc3b20a0842f186c228564bcafd8b6d853d345d94", + "key": "roborumble/apc.botM_3.0.jar", + "kind": "robot" + }, + "latest_observation": "a47d3ba08bb6086f", + "observations": [ + { + "classic": { + "elapsed": 2.8, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 5572.0, + "scores": [ + 3017.0, + 2555.0 + ], + "selected": "apc.botM 3.0" + }, + "completed_at": "2026-09-08T20:29:18Z", + "delta_pct": 2.7, + "id": "4a1b06c7f3fd0456", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "apc.botM 3.0", + "division": "roborumble", + "jar": "apc.botM_3.0.jar", + "jar_sha256": "9348a9b3c2e0f175bacf361dc3b20a0842f186c228564bcafd8b6d853d345d94", + "key": "roborumble/apc.botM_3.0.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "elapsed": 20.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 5725.0, + "scores": [ + 3022.0, + 2703.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 2.9, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5387.0, + "scores": [ + 2760.0, + 2627.0 + ], + "selected": "apc.botM 3.0" + }, + "completed_at": "2026-09-11T18:20:19Z", + "confirmation": null, + "delta_pct": 2.4, + "id": "a47d3ba08bb6086f", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "apc.botM 3.0", + "division": "roborumble", + "jar": "apc.botM_3.0.jar", + "jar_sha256": "9348a9b3c2e0f175bacf361dc3b20a0842f186c228564bcafd8b6d853d345d94", + "key": "roborumble/apc.botM_3.0.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 20.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5517.0, + "scores": [ + 2930.0, + 2587.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/apollokidd.ApolloKidd_0.9.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "apollokidd.ApolloKidd 0.9", + "division": "roborumble", + "jar": "apollokidd.ApolloKidd_0.9.jar", + "jar_sha256": "e7153516f9b25d4d571e484022c7c9fc6ab19f036faeb46213764691c84e7390", + "key": "roborumble/apollokidd.ApolloKidd_0.9.jar", + "kind": "robot" + }, + "latest_observation": "5de5ad7ce505c6e1", + "observations": [ + { + "classic": { + "elapsed": 2.4, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 10425.0, + "scores": [ + 4744.0, + 5681.0 + ], + "selected": "apollokidd.ApolloKidd 0.9" + }, + "completed_at": "2026-09-08T20:32:13Z", + "delta_pct": 34.5, + "id": "b90a01cef8102d4f", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "apollokidd.ApolloKidd 0.9", + "division": "roborumble", + "jar": "apollokidd.ApolloKidd_0.9.jar", + "jar_sha256": "e7153516f9b25d4d571e484022c7c9fc6ab19f036faeb46213764691c84e7390", + "key": "roborumble/apollokidd.ApolloKidd_0.9.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (score)", + "tank_royale": { + "elapsed": 24.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 14020.0, + "scores": [ + 7164.0, + 6856.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 2.4, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 10782.0, + "scores": [ + 5310.0, + 5472.0 + ], + "selected": "apollokidd.ApolloKidd 0.9" + }, + "completed_at": "2026-09-11T18:21:57Z", + "confirmation": null, + "delta_pct": 30.9, + "id": "5de5ad7ce505c6e1", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "apollokidd.ApolloKidd 0.9", + "division": "roborumble", + "jar": "apollokidd.ApolloKidd_0.9.jar", + "jar_sha256": "e7153516f9b25d4d571e484022c7c9fc6ab19f036faeb46213764691c84e7390", + "key": "roborumble/apollokidd.ApolloKidd_0.9.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (score)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 26.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 14118.0, + "scores": [ + 7672.0, + 6446.0 + ], + "skipped": null + } + } + ], + "status": "score-review" + }, + "roborumble/apv.AspidReloaded_0.6.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "apv.AspidReloaded 0.6", + "division": "roborumble", + "jar": "apv.AspidReloaded_0.6.jar", + "jar_sha256": "9cbef59e538da1a8edb9d9dd38ac7970a9607232b6e663eeaae9899c4c3161b1", + "key": "roborumble/apv.AspidReloaded_0.6.jar", + "kind": "robot" + }, + "latest_observation": "688a0cfa64404e92", + "observations": [ + { + "classic": { + "elapsed": 2.7, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 5453.0, + "scores": [ + 2852.0, + 2601.0 + ], + "selected": "apv.AspidReloaded 0.6" + }, + "completed_at": "2026-09-08T20:32:53Z", + "delta_pct": -9.7, + "id": "22f23ec4b2359408", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "apv.AspidReloaded 0.6", + "division": "roborumble", + "jar": "apv.AspidReloaded_0.6.jar", + "jar_sha256": "9cbef59e538da1a8edb9d9dd38ac7970a9607232b6e663eeaae9899c4c3161b1", + "key": "roborumble/apv.AspidReloaded_0.6.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "elapsed": 16.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 4926.0, + "scores": [ + 2805.0, + 2121.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 2.6, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5952.0, + "scores": [ + 3280.0, + 2672.0 + ], + "selected": "apv.AspidReloaded 0.6" + }, + "completed_at": "2026-09-11T18:22:42Z", + "confirmation": null, + "delta_pct": -13.2, + "id": "688a0cfa64404e92", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "apv.AspidReloaded 0.6", + "division": "roborumble", + "jar": "apv.AspidReloaded_0.6.jar", + "jar_sha256": "9cbef59e538da1a8edb9d9dd38ac7970a9607232b6e663eeaae9899c4c3161b1", + "key": "roborumble/apv.AspidReloaded_0.6.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 18.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5169.0, + "scores": [ + 2636.0, + 2533.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/apv.Aspid_1.7.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "apv.Aspid 1.7", + "division": "roborumble", + "jar": "apv.Aspid_1.7.jar", + "jar_sha256": "4cf2bf08d8816f48106ef02f849e5afd7b52f46490902c8643d2d1c19853437d", + "key": "roborumble/apv.Aspid_1.7.jar", + "kind": "robot" + }, + "latest_observation": "77ebbfd405a05a87", + "observations": [ + { + "classic": { + "elapsed": 3.2, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 5475.0, + "scores": [ + 2444.0, + 3031.0 + ], + "selected": "apv.Aspid 1.7" + }, + "completed_at": "2026-09-08T20:32:34Z", + "delta_pct": -10.1, + "id": "f0bfd59e67a0674e", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "apv.Aspid 1.7", + "division": "roborumble", + "jar": "apv.Aspid_1.7.jar", + "jar_sha256": "4cf2bf08d8816f48106ef02f849e5afd7b52f46490902c8643d2d1c19853437d", + "key": "roborumble/apv.Aspid_1.7.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "elapsed": 18.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 4924.0, + "scores": [ + 2572.0, + 2352.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 3.2, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5859.0, + "scores": [ + 2787.0, + 3072.0 + ], + "selected": "apv.Aspid 1.7" + }, + "completed_at": "2026-09-11T18:22:21Z", + "confirmation": null, + "delta_pct": -8.5, + "id": "77ebbfd405a05a87", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "apv.Aspid 1.7", + "division": "roborumble", + "jar": "apv.Aspid_1.7.jar", + "jar_sha256": "4cf2bf08d8816f48106ef02f849e5afd7b52f46490902c8643d2d1c19853437d", + "key": "roborumble/apv.Aspid_1.7.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 20.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5360.0, + "scores": [ + 2779.0, + 2581.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/apv.LauLectrik_1.2.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "apv.LauLectrik 1.2", + "division": "roborumble", + "jar": "apv.LauLectrik_1.2.jar", + "jar_sha256": "b9268644ac0983cc1feaef4d7052c796ba74e0da321887bdaf37da70725ff822", + "key": "roborumble/apv.LauLectrik_1.2.jar", + "kind": "robot" + }, + "latest_observation": "2bc639b2fd4a5e1e", + "observations": [ + { + "classic": { + "elapsed": 3.2, + "error_count": 2, + "errors": [ + "java.io.FileNotFoundException: C:\\Code\\robocode-api-bridge\\compat-test\\work\\rc-robots\\.data\\apv\\LauLectrik.data\\apv.LauLectrik.zip (Den angivne fil blev ikke fundet)", + "java.io.FileNotFoundException: C:\\Code\\robocode-api-bridge\\compat-test\\work\\rc-robots\\.data\\apv\\LauLectrik.data\\apv.LauLectrik.zip (Den angivne fil blev ikke fundet)" + ], + "has_log": true, + "ok": true, + "score": 5751.0, + "scores": [ + 2852.0, + 2899.0 + ], + "selected": "apv.LauLectrik 1.2" + }, + "completed_at": "2026-09-08T20:33:13Z", + "delta_pct": 1.8, + "id": "379bc7ba025c9021", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "apv.LauLectrik 1.2", + "division": "roborumble", + "jar": "apv.LauLectrik_1.2.jar", + "jar_sha256": "b9268644ac0983cc1feaef4d7052c796ba74e0da321887bdaf37da70725ff822", + "key": "roborumble/apv.LauLectrik_1.2.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "elapsed": 16.0, + "error_count": 2, + "errors": [ + "java.io.FileNotFoundException: C:\\Code\\robocode-api-bridge\\compat-test\\work\\tr-bots\\apv.LauLectrik_1.2\\LauLectrik.data\\2.zip (Den angivne fil blev ikke fundet)", + "java.io.FileNotFoundException: C:\\Code\\robocode-api-bridge\\compat-test\\work\\tr-bots\\apv.LauLectrik_1.2-2\\LauLectrik.data\\1.zip (Den angivne fil blev ikke fundet)" + ], + "has_log": true, + "ok": true, + "score": 5853.0, + "scores": [ + 3459.0, + 2394.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 3.2, + "error_count": 2, + "error_signatures": [ + { + "exception": "java.io.FileNotFoundException", + "origin": "unknown" + } + ], + "errors": [ + "java.io.FileNotFoundException: C:\\Code\\robocode-api-bridge\\compat-test\\work\\rc-robots\\.data\\apv\\LauLectrik.data\\apv.LauLectrik.zip (Den angivne fil blev ikke fundet)", + "java.io.FileNotFoundException: C:\\Code\\robocode-api-bridge\\compat-test\\work\\rc-robots\\.data\\apv\\LauLectrik.data\\apv.LauLectrik.zip (Den angivne fil blev ikke fundet)" + ], + "has_log": true, + "ok": true, + "score": 5811.0, + "scores": [ + 3234.0, + 2577.0 + ], + "selected": "apv.LauLectrik 1.2" + }, + "completed_at": "2026-09-11T18:23:02Z", + "confirmation": null, + "delta_pct": -0.5, + "id": "2bc639b2fd4a5e1e", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "apv.LauLectrik 1.2", + "division": "roborumble", + "jar": "apv.LauLectrik_1.2.jar", + "jar_sha256": "b9268644ac0983cc1feaef4d7052c796ba74e0da321887bdaf37da70725ff822", + "key": "roborumble/apv.LauLectrik_1.2.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 16.0, + "error_count": 2, + "error_signatures": [ + { + "exception": "java.io.FileNotFoundException", + "origin": "unknown" + } + ], + "errors": [ + "java.io.FileNotFoundException: C:\\Code\\robocode-api-bridge\\compat-test\\work\\tr-bots\\apv.LauLectrik_1.2\\LauLectrik.data\\2.zip (Den angivne fil blev ikke fundet)", + "java.io.FileNotFoundException: C:\\Code\\robocode-api-bridge\\compat-test\\work\\tr-bots\\apv.LauLectrik_1.2-2\\LauLectrik.data\\1.zip (Den angivne fil blev ikke fundet)" + ], + "has_log": true, + "ok": true, + "score": 5784.0, + "scores": [ + 3023.0, + 2761.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/apv.MicroAspid_1.8.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "apv.MicroAspid 1.8", + "division": "roborumble", + "jar": "apv.MicroAspid_1.8.jar", + "jar_sha256": "2bbff478cfaca3f612e1bb707973c4a65a7be125ef016689f3cba9363f9147e6", + "key": "roborumble/apv.MicroAspid_1.8.jar", + "kind": "robot" + }, + "latest_observation": "dc28c73552e12030", + "observations": [ + { + "classic": { + "elapsed": 3.1, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 4316.0, + "scores": [ + 1971.0, + 2345.0 + ], + "selected": "apv.MicroAspid 1.8" + }, + "completed_at": "2026-09-08T20:33:36Z", + "delta_pct": -2.1, + "id": "683da02ff1de941a", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "apv.MicroAspid 1.8", + "division": "roborumble", + "jar": "apv.MicroAspid_1.8.jar", + "jar_sha256": "2bbff478cfaca3f612e1bb707973c4a65a7be125ef016689f3cba9363f9147e6", + "key": "roborumble/apv.MicroAspid_1.8.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "elapsed": 20.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 4224.0, + "scores": [ + 2166.0, + 2058.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 3.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 4563.0, + "scores": [ + 2448.0, + 2115.0 + ], + "selected": "apv.MicroAspid 1.8" + }, + "completed_at": "2026-09-11T18:23:25Z", + "confirmation": null, + "delta_pct": -11.9, + "id": "dc28c73552e12030", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "apv.MicroAspid 1.8", + "division": "roborumble", + "jar": "apv.MicroAspid_1.8.jar", + "jar_sha256": "2bbff478cfaca3f612e1bb707973c4a65a7be125ef016689f3cba9363f9147e6", + "key": "roborumble/apv.MicroAspid_1.8.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 20.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 4020.0, + "scores": [ + 2022.0, + 1998.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/apv.NanoLauLectrikTheCannibal_1.1.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "apv.NanoLauLectrikTheCannibal 1.1", + "division": "roborumble", + "jar": "apv.NanoLauLectrikTheCannibal_1.1.jar", + "jar_sha256": "de413e324848ddca35723cea47c4ed4e23c46b669d4fbfe97ceac6d2c93c1fc8", + "key": "roborumble/apv.NanoLauLectrikTheCannibal_1.1.jar", + "kind": "robot" + }, + "latest_observation": "d4d54a7f0c4cca1f", + "observations": [ + { + "classic": { + "elapsed": 2.2, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 13019.0, + "scores": [ + 6404.0, + 6615.0 + ], + "selected": "apv.NanoLauLectrikTheCannibal 1.1" + }, + "completed_at": "2026-09-08T20:34:11Z", + "delta_pct": -6.0, + "id": "15a460cbb677c889", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "apv.NanoLauLectrikTheCannibal 1.1", + "division": "roborumble", + "jar": "apv.NanoLauLectrikTheCannibal_1.1.jar", + "jar_sha256": "de413e324848ddca35723cea47c4ed4e23c46b669d4fbfe97ceac6d2c93c1fc8", + "key": "roborumble/apv.NanoLauLectrikTheCannibal_1.1.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "elapsed": 12.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 12236.0, + "scores": [ + 6201.0, + 6035.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 2.2, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 13135.0, + "scores": [ + 6580.0, + 6555.0 + ], + "selected": "apv.NanoLauLectrikTheCannibal 1.1" + }, + "completed_at": "2026-09-11T18:24:02Z", + "confirmation": null, + "delta_pct": -1.7, + "id": "d4d54a7f0c4cca1f", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "apv.NanoLauLectrikTheCannibal 1.1", + "division": "roborumble", + "jar": "apv.NanoLauLectrikTheCannibal_1.1.jar", + "jar_sha256": "de413e324848ddca35723cea47c4ed4e23c46b669d4fbfe97ceac6d2c93c1fc8", + "key": "roborumble/apv.NanoLauLectrikTheCannibal_1.1.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 12.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 12910.0, + "scores": [ + 6615.0, + 6295.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/apv.NanoLauLectrik_1.0.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "apv.NanoLauLectrik 1.0", + "division": "roborumble", + "jar": "apv.NanoLauLectrik_1.0.jar", + "jar_sha256": "4500794fdf2577950dd3981cdb314b4f750e1bfa66133dcdf546fa0203ee868d", + "key": "roborumble/apv.NanoLauLectrik_1.0.jar", + "kind": "robot" + }, + "latest_observation": "e99e4ba1fc2f5b9d", + "observations": [ + { + "classic": { + "elapsed": 3.9, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 5376.0, + "scores": [ + 2551.0, + 2825.0 + ], + "selected": "apv.NanoLauLectrik 1.0" + }, + "completed_at": "2026-09-08T20:33:57Z", + "delta_pct": -14.2, + "id": "1aa9b09bc500fd4b", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "apv.NanoLauLectrik 1.0", + "division": "roborumble", + "jar": "apv.NanoLauLectrik_1.0.jar", + "jar_sha256": "4500794fdf2577950dd3981cdb314b4f750e1bfa66133dcdf546fa0203ee868d", + "key": "roborumble/apv.NanoLauLectrik_1.0.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "elapsed": 16.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 4612.0, + "scores": [ + 2974.0, + 1638.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 3.9, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5309.0, + "scores": [ + 1961.0, + 3348.0 + ], + "selected": "apv.NanoLauLectrik 1.0" + }, + "completed_at": "2026-09-11T18:23:47Z", + "confirmation": null, + "delta_pct": -11.9, + "id": "e99e4ba1fc2f5b9d", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "apv.NanoLauLectrik 1.0", + "division": "roborumble", + "jar": "apv.NanoLauLectrik_1.0.jar", + "jar_sha256": "4500794fdf2577950dd3981cdb314b4f750e1bfa66133dcdf546fa0203ee868d", + "key": "roborumble/apv.NanoLauLectrik_1.0.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 18.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 4677.0, + "scores": [ + 2432.0, + 2245.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/apv.ScruchiPu_1.0.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "apv.ScruchiPu 1.0", + "division": "roborumble", + "jar": "apv.ScruchiPu_1.0.jar", + "jar_sha256": "dcefa76d1e2eb841349fe2dce3a84218c99c08dba3eb6ecc5a34b933e00096bc", + "key": "roborumble/apv.ScruchiPu_1.0.jar", + "kind": "robot" + }, + "latest_observation": "9d310b4632590234", + "observations": [ + { + "classic": { + "elapsed": 4.3, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 5327.0, + "scores": [ + 2914.0, + 2413.0 + ], + "selected": "apv.ScruchiPu 1.0" + }, + "completed_at": "2026-09-08T20:34:32Z", + "delta_pct": -12.5, + "id": "d749a519d41481d5", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "apv.ScruchiPu 1.0", + "division": "roborumble", + "jar": "apv.ScruchiPu_1.0.jar", + "jar_sha256": "dcefa76d1e2eb841349fe2dce3a84218c99c08dba3eb6ecc5a34b933e00096bc", + "key": "roborumble/apv.ScruchiPu_1.0.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "elapsed": 16.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 4661.0, + "scores": [ + 2585.0, + 2076.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 4.4, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5680.0, + "scores": [ + 3318.0, + 2362.0 + ], + "selected": "apv.ScruchiPu 1.0" + }, + "completed_at": "2026-09-11T18:24:25Z", + "confirmation": null, + "delta_pct": -15.6, + "id": "9d310b4632590234", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "apv.ScruchiPu 1.0", + "division": "roborumble", + "jar": "apv.ScruchiPu_1.0.jar", + "jar_sha256": "dcefa76d1e2eb841349fe2dce3a84218c99c08dba3eb6ecc5a34b933e00096bc", + "key": "roborumble/apv.ScruchiPu_1.0.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 18.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 4793.0, + "scores": [ + 2724.0, + 2069.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/apv.TheBrainPi_0.5fix.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "apv.TheBrainPi 0.5fix", + "division": "roborumble", + "jar": "apv.TheBrainPi_0.5fix.jar", + "jar_sha256": "6414ce843145505046bfdb9c4cba00b486ebdead9767c9d3d1fb3b245746746e", + "key": "roborumble/apv.TheBrainPi_0.5fix.jar", + "kind": "robot" + }, + "latest_observation": "08e656dab9c01ad6", + "observations": [ + { + "classic": { + "elapsed": 4.8, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 5321.0, + "scores": [ + 2586.0, + 2735.0 + ], + "selected": "apv.TheBrainPi 0.5fix" + }, + "completed_at": "2026-09-08T20:35:24Z", + "delta_pct": -4.0, + "id": "0b26bcefd7d92f4f", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "apv.TheBrainPi 0.5fix", + "division": "roborumble", + "jar": "apv.TheBrainPi_0.5fix.jar", + "jar_sha256": "6414ce843145505046bfdb9c4cba00b486ebdead9767c9d3d1fb3b245746746e", + "key": "roborumble/apv.TheBrainPi_0.5fix.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "elapsed": 16.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 5107.0, + "scores": [ + 2939.0, + 2168.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 4.8, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5753.0, + "scores": [ + 2892.0, + 2861.0 + ], + "selected": "apv.TheBrainPi 0.5fix" + }, + "completed_at": "2026-09-11T18:25:17Z", + "confirmation": null, + "delta_pct": -1.3, + "id": "08e656dab9c01ad6", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "apv.TheBrainPi 0.5fix", + "division": "roborumble", + "jar": "apv.TheBrainPi_0.5fix.jar", + "jar_sha256": "6414ce843145505046bfdb9c4cba00b486ebdead9767c9d3d1fb3b245746746e", + "key": "roborumble/apv.TheBrainPi_0.5fix.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 16.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5676.0, + "scores": [ + 3259.0, + 2417.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/apv.test.Virus_0.6.1.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "apv.test.Virus 0.6.1", + "division": "roborumble", + "jar": "apv.test.Virus_0.6.1.jar", + "jar_sha256": "d6ce0ae230281fd974d6326c1e80fe53714bdbe20a09511911e81efed040f798", + "key": "roborumble/apv.test.Virus_0.6.1.jar", + "kind": "robot" + }, + "latest_observation": "8f66f63fe3488646", + "observations": [ + { + "classic": { + "elapsed": 6.8, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 4347.0, + "scores": [ + 2153.0, + 2194.0 + ], + "selected": "apv.test.Virus 0.6.1" + }, + "completed_at": "2026-09-08T20:35:03Z", + "delta_pct": 3.5, + "id": "fb63ed9dcd64d83b", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "apv.test.Virus 0.6.1", + "division": "roborumble", + "jar": "apv.test.Virus_0.6.1.jar", + "jar_sha256": "d6ce0ae230281fd974d6326c1e80fe53714bdbe20a09511911e81efed040f798", + "key": "roborumble/apv.test.Virus_0.6.1.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "elapsed": 24.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 4498.0, + "scores": [ + 2685.0, + 1813.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 6.7, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 4395.0, + "scores": [ + 2481.0, + 1914.0 + ], + "selected": "apv.test.Virus 0.6.1" + }, + "completed_at": "2026-09-11T18:24:56Z", + "confirmation": null, + "delta_pct": 2.3, + "id": "8f66f63fe3488646", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "apv.test.Virus 0.6.1", + "division": "roborumble", + "jar": "apv.test.Virus_0.6.1.jar", + "jar_sha256": "d6ce0ae230281fd974d6326c1e80fe53714bdbe20a09511911e81efed040f798", + "key": "roborumble/apv.test.Virus_0.6.1.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 24.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 4497.0, + "scores": [ + 2458.0, + 2039.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/ar.QuantumChromodynamics_1.2.1.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "ar.QuantumChromodynamics 1.2.1", + "division": "roborumble", + "jar": "ar.QuantumChromodynamics_1.2.1.jar", + "jar_sha256": "fe5372baa66f5f4fe5c138baa674c7b38c4548e200b9cc878ae7a78a0d3d95d7", + "key": "roborumble/ar.QuantumChromodynamics_1.2.1.jar", + "kind": "robot" + }, + "latest_observation": "5a42afc5493f80c3", + "observations": [ + { + "classic": { + "elapsed": 2.5, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 5392.0, + "scores": [ + 2523.0, + 2869.0 + ], + "selected": "ar.QuantumChromodynamics 1.2.1" + }, + "completed_at": "2026-09-08T20:36:18Z", + "delta_pct": -5.3, + "id": "4ac5fb2477202c50", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "ar.QuantumChromodynamics 1.2.1", + "division": "roborumble", + "jar": "ar.QuantumChromodynamics_1.2.1.jar", + "jar_sha256": "fe5372baa66f5f4fe5c138baa674c7b38c4548e200b9cc878ae7a78a0d3d95d7", + "key": "roborumble/ar.QuantumChromodynamics_1.2.1.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "elapsed": 14.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 5106.0, + "scores": [ + 2925.0, + 2181.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 2.5, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5426.0, + "scores": [ + 2324.0, + 3102.0 + ], + "selected": "ar.QuantumChromodynamics 1.2.1" + }, + "completed_at": "2026-09-11T18:26:09Z", + "confirmation": null, + "delta_pct": -6.2, + "id": "5a42afc5493f80c3", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "ar.QuantumChromodynamics 1.2.1", + "division": "roborumble", + "jar": "ar.QuantumChromodynamics_1.2.1.jar", + "jar_sha256": "fe5372baa66f5f4fe5c138baa674c7b38c4548e200b9cc878ae7a78a0d3d95d7", + "key": "roborumble/ar.QuantumChromodynamics_1.2.1.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 18.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5087.0, + "scores": [ + 3113.0, + 1974.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/ar.TheoryOfEverything_1.2.1.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "ar.TheoryOfEverything 1.2.1", + "division": "roborumble", + "jar": "ar.TheoryOfEverything_1.2.1.jar", + "jar_sha256": "488629ee6595de0c24c69df967caa534dcc4359ace7708088dc544dfb98293b9", + "key": "roborumble/ar.TheoryOfEverything_1.2.1.jar", + "kind": "robot" + }, + "latest_observation": "dfa914ac6eb69f9a", + "observations": [ + { + "classic": { + "elapsed": 2.7, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 5861.0, + "scores": [ + 3122.0, + 2739.0 + ], + "selected": "ar.TheoryOfEverything 1.2.1" + }, + "completed_at": "2026-09-08T20:36:37Z", + "delta_pct": -6.5, + "id": "9ace621bf12f4172", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "ar.TheoryOfEverything 1.2.1", + "division": "roborumble", + "jar": "ar.TheoryOfEverything_1.2.1.jar", + "jar_sha256": "488629ee6595de0c24c69df967caa534dcc4359ace7708088dc544dfb98293b9", + "key": "roborumble/ar.TheoryOfEverything_1.2.1.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "elapsed": 16.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 5482.0, + "scores": [ + 2950.0, + 2532.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 2.5, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 6073.0, + "scores": [ + 3223.0, + 2850.0 + ], + "selected": "ar.TheoryOfEverything 1.2.1" + }, + "completed_at": "2026-09-11T18:26:30Z", + "confirmation": null, + "delta_pct": -6.8, + "id": "dfa914ac6eb69f9a", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "ar.TheoryOfEverything 1.2.1", + "division": "roborumble", + "jar": "ar.TheoryOfEverything_1.2.1.jar", + "jar_sha256": "488629ee6595de0c24c69df967caa534dcc4359ace7708088dc544dfb98293b9", + "key": "roborumble/ar.TheoryOfEverything_1.2.1.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 18.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5659.0, + "scores": [ + 3014.0, + 2645.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/ar.horizon.Horizon_1.2.2.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "ar.horizon.Horizon 1.2.2", + "division": "roborumble", + "jar": "ar.horizon.Horizon_1.2.2.jar", + "jar_sha256": "2d8dee69f687581106100d53b46cea3571ed70c88e9d8601b69c48f850c20a70", + "key": "roborumble/ar.horizon.Horizon_1.2.2.jar", + "kind": "robot" + }, + "latest_observation": "c2c7049ebf260676", + "observations": [ + { + "classic": { + "elapsed": 12.5, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 4866.0, + "scores": [ + 2623.0, + 2243.0 + ], + "selected": "ar.horizon.Horizon 1.2.2" + }, + "completed_at": "2026-09-08T20:36:01Z", + "delta_pct": -63.3, + "id": "97286a0cb62861a8", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "ar.horizon.Horizon 1.2.2", + "division": "roborumble", + "jar": "ar.horizon.Horizon_1.2.2.jar", + "jar_sha256": "2d8dee69f687581106100d53b46cea3571ed70c88e9d8601b69c48f850c20a70", + "key": "roborumble/ar.horizon.Horizon_1.2.2.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (score)", + "tank_royale": { + "elapsed": 24.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 1784.0, + "scores": [ + 1084.0, + 700.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 13.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 4582.0, + "scores": [ + 2259.0, + 2323.0 + ], + "selected": "ar.horizon.Horizon 1.2.2" + }, + "completed_at": "2026-09-11T18:25:48Z", + "confirmation": null, + "delta_pct": null, + "id": "c2c7049ebf260676", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "ar.horizon.Horizon 1.2.2", + "division": "roborumble", + "jar": "ar.horizon.Horizon_1.2.2.jar", + "jar_sha256": "2d8dee69f687581106100d53b46cea3571ed70c88e9d8601b69c48f850c20a70", + "key": "roborumble/ar.horizon.Horizon_1.2.2.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (outcome)", + "tank_royale": { + "bridge_only_signatures": [ + [ + "java.lang.NullPointerException", + "ar.horizon.components.movement.SolarWindMovement.addWave" + ] + ], + "elapsed": 18.1, + "error_count": 2, + "error_signatures": [ + { + "exception": "java.lang.NullPointerException", + "origin": "ar.horizon.components.movement.SolarWindMovement.addWave" + } + ], + "errors": [ + "HARNESS: worker produced no result (exit code -1)", + "java.lang.NullPointerException: Cannot invoke \"ar.horizon.util.RobotRecording.getRoundTime()\" because \"myPastRecording\" is null" + ], + "has_log": true, + "ok": false, + "score": null, + "scores": [], + "skipped": null + } + } + ], + "status": "DISCREPANCY (outcome)" + }, + "roborumble/ara.Shera_0.88.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "ara.Shera 0.88", + "division": "roborumble", + "jar": "ara.Shera_0.88.jar", + "jar_sha256": "9474b68598ae5e71010b835259467b6dc35427e2826ace23e484a6a11160a040", + "key": "roborumble/ara.Shera_0.88.jar", + "kind": "robot" + }, + "latest_observation": "e29ee3195aab9bde", + "observations": [ + { + "classic": { + "elapsed": 3.1, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 4900.0, + "scores": [ + 2860.0, + 2040.0 + ], + "selected": "ara.Shera 0.88" + }, + "completed_at": "2026-09-08T20:37:14Z", + "delta_pct": 13.7, + "id": "b32a6997ff56c9af", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "ara.Shera 0.88", + "division": "roborumble", + "jar": "ara.Shera_0.88.jar", + "jar_sha256": "9474b68598ae5e71010b835259467b6dc35427e2826ace23e484a6a11160a040", + "key": "roborumble/ara.Shera_0.88.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "elapsed": 34.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 5570.0, + "scores": [ + 2985.0, + 2585.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 3.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 4985.0, + "scores": [ + 2254.0, + 2731.0 + ], + "selected": "ara.Shera 0.88" + }, + "completed_at": "2026-09-11T18:27:15Z", + "confirmation": null, + "delta_pct": 0.0, + "id": "e29ee3195aab9bde", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "ara.Shera 0.88", + "division": "roborumble", + "jar": "ara.Shera_0.88.jar", + "jar_sha256": "9474b68598ae5e71010b835259467b6dc35427e2826ace23e484a6a11160a040", + "key": "roborumble/ara.Shera_0.88.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 42.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 4985.0, + "scores": [ + 2660.0, + 2325.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/areb.Union_1.06.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "areb.Union 1.06", + "division": "roborumble", + "jar": "areb.Union_1.06.jar", + "jar_sha256": "98ee4d7e04fbf9b6ae81c712f6e1b3090d76f1ba36ef84b80d16c82ddf830f1d", + "key": "roborumble/areb.Union_1.06.jar", + "kind": "robot" + }, + "latest_observation": "2f50bd8d2633f8ee", + "observations": [ + { + "classic": { + "elapsed": 4.2, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 5803.0, + "scores": [ + 3072.0, + 2731.0 + ], + "selected": "areb.Union 1.06" + }, + "completed_at": "2026-09-08T20:38:24Z", + "delta_pct": -16.2, + "id": "e533066dda10e17a", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "areb.Union 1.06", + "division": "roborumble", + "jar": "areb.Union_1.06.jar", + "jar_sha256": "98ee4d7e04fbf9b6ae81c712f6e1b3090d76f1ba36ef84b80d16c82ddf830f1d", + "key": "roborumble/areb.Union_1.06.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "elapsed": 32.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 4862.0, + "scores": [ + 2516.0, + 2346.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 4.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5955.0, + "scores": [ + 2925.0, + 3030.0 + ], + "selected": "areb.Union 1.06" + }, + "completed_at": "2026-09-11T18:28:31Z", + "confirmation": null, + "delta_pct": -17.6, + "id": "2f50bd8d2633f8ee", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "areb.Union 1.06", + "division": "roborumble", + "jar": "areb.Union_1.06.jar", + "jar_sha256": "98ee4d7e04fbf9b6ae81c712f6e1b3090d76f1ba36ef84b80d16c82ddf830f1d", + "key": "roborumble/areb.Union_1.06.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 36.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 4907.0, + "scores": [ + 2564.0, + 2343.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/arthord.KostyaTszyu_Beta2.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "arthord.KostyaTszyu Beta2", + "division": "roborumble", + "jar": "arthord.KostyaTszyu_Beta2.jar", + "jar_sha256": "c4aff289b00bc68748dde4f18aff699b9ef22eceeb1e529ea086be5a61cccc4d", + "key": "roborumble/arthord.KostyaTszyu_Beta2.jar", + "kind": "robot" + }, + "latest_observation": "7f550a50c453aa2f", + "observations": [ + { + "classic": { + "elapsed": 2.6, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 4899.0, + "scores": [ + 2615.0, + 2284.0 + ], + "selected": "arthord.KostyaTszyu Beta2" + }, + "completed_at": "2026-09-08T20:38:45Z", + "delta_pct": -33.0, + "id": "36f054afe6dfd556", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "arthord.KostyaTszyu Beta2", + "division": "roborumble", + "jar": "arthord.KostyaTszyu_Beta2.jar", + "jar_sha256": "c4aff289b00bc68748dde4f18aff699b9ef22eceeb1e529ea086be5a61cccc4d", + "key": "roborumble/arthord.KostyaTszyu_Beta2.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (score)", + "tank_royale": { + "elapsed": 18.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 3282.0, + "scores": [ + 2664.0, + 618.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 2.8, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 4448.0, + "scores": [ + 1948.0, + 2500.0 + ], + "selected": "arthord.KostyaTszyu Beta2" + }, + "completed_at": "2026-09-11T18:28:54Z", + "confirmation": null, + "delta_pct": -16.3, + "id": "7f550a50c453aa2f", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "arthord.KostyaTszyu Beta2", + "division": "roborumble", + "jar": "arthord.KostyaTszyu_Beta2.jar", + "jar_sha256": "c4aff289b00bc68748dde4f18aff699b9ef22eceeb1e529ea086be5a61cccc4d", + "key": "roborumble/arthord.KostyaTszyu_Beta2.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 20.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 3724.0, + "scores": [ + 1883.0, + 1841.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/arthord.NanoSatanMelee_Beta.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "arthord.NanoSatanMelee Beta", + "division": "roborumble", + "jar": "arthord.NanoSatanMelee_Beta.jar", + "jar_sha256": "a0737bc6d25f6b89618c119a6df62ae89a44d9a2a7d662056dddefdde04f37fe", + "key": "roborumble/arthord.NanoSatanMelee_Beta.jar", + "kind": "robot" + }, + "latest_observation": "30a57ba1dde53f1c", + "observations": [ + { + "classic": { + "elapsed": 2.5, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 6700.0, + "scores": [ + 3438.0, + 3262.0 + ], + "selected": "arthord.NanoSatanMelee Beta" + }, + "completed_at": "2026-09-08T20:39:55Z", + "delta_pct": 5.6, + "id": "aee831eb589eb863", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "arthord.NanoSatanMelee Beta", + "division": "roborumble", + "jar": "arthord.NanoSatanMelee_Beta.jar", + "jar_sha256": "a0737bc6d25f6b89618c119a6df62ae89a44d9a2a7d662056dddefdde04f37fe", + "key": "roborumble/arthord.NanoSatanMelee_Beta.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "elapsed": 14.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 7076.0, + "scores": [ + 3811.0, + 3265.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 2.4, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 6227.0, + "scores": [ + 3249.0, + 2978.0 + ], + "selected": "arthord.NanoSatanMelee Beta" + }, + "completed_at": "2026-09-11T18:30:13Z", + "confirmation": null, + "delta_pct": 14.1, + "id": "30a57ba1dde53f1c", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "arthord.NanoSatanMelee Beta", + "division": "roborumble", + "jar": "arthord.NanoSatanMelee_Beta.jar", + "jar_sha256": "a0737bc6d25f6b89618c119a6df62ae89a44d9a2a7d662056dddefdde04f37fe", + "key": "roborumble/arthord.NanoSatanMelee_Beta.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 16.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 7103.0, + "scores": [ + 3844.0, + 3259.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/arthord.NanoSatan_Mu.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "arthord.NanoSatan Mu", + "division": "roborumble", + "jar": "arthord.NanoSatan_Mu.jar", + "jar_sha256": "a4796a1447ea7a3d8268dff283375e5188089afb88d66a62e14de9346a32e5fb", + "key": "roborumble/arthord.NanoSatan_Mu.jar", + "kind": "robot" + }, + "latest_observation": "98d37c469c94e71c", + "observations": [ + { + "classic": { + "elapsed": 3.4, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 4802.0, + "scores": [ + 2054.0, + 2748.0 + ], + "selected": "arthord.NanoSatan Mu" + }, + "completed_at": "2026-09-08T20:39:38Z", + "delta_pct": -10.2, + "id": "cb4397fbdd3591a9", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "arthord.NanoSatan Mu", + "division": "roborumble", + "jar": "arthord.NanoSatan_Mu.jar", + "jar_sha256": "a4796a1447ea7a3d8268dff283375e5188089afb88d66a62e14de9346a32e5fb", + "key": "roborumble/arthord.NanoSatan_Mu.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "elapsed": 16.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 4310.0, + "scores": [ + 2214.0, + 2096.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 3.3, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5325.0, + "scores": [ + 2243.0, + 3082.0 + ], + "selected": "arthord.NanoSatan Mu" + }, + "completed_at": "2026-09-11T18:29:55Z", + "confirmation": null, + "delta_pct": -21.2, + "id": "98d37c469c94e71c", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "arthord.NanoSatan Mu", + "division": "roborumble", + "jar": "arthord.NanoSatan_Mu.jar", + "jar_sha256": "a4796a1447ea7a3d8268dff283375e5188089afb88d66a62e14de9346a32e5fb", + "key": "roborumble/arthord.NanoSatan_Mu.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 18.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 4196.0, + "scores": [ + 2275.0, + 1921.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/arthord.micro.Apoptygma_0.4.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "arthord.micro.Apoptygma 0.4", + "division": "roborumble", + "jar": "arthord.micro.Apoptygma_0.4.jar", + "jar_sha256": "d07f93659bb20a2980e452dad383dbe0e1333144918cabf313423bc19dba8509", + "key": "roborumble/arthord.micro.Apoptygma_0.4.jar", + "kind": "robot" + }, + "latest_observation": "fcb58e94a0c3caa6", + "observations": [ + { + "classic": { + "elapsed": 3.1, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 5399.0, + "scores": [ + 2673.0, + 2726.0 + ], + "selected": "arthord.micro.Apoptygma 0.4" + }, + "completed_at": "2026-09-08T20:39:02Z", + "delta_pct": -24.5, + "id": "3c369261b2915cd0", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "arthord.micro.Apoptygma 0.4", + "division": "roborumble", + "jar": "arthord.micro.Apoptygma_0.4.jar", + "jar_sha256": "d07f93659bb20a2980e452dad383dbe0e1333144918cabf313423bc19dba8509", + "key": "roborumble/arthord.micro.Apoptygma_0.4.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "elapsed": 14.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 4076.0, + "scores": [ + 2054.0, + 2022.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 3.1, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5164.0, + "scores": [ + 2751.0, + 2413.0 + ], + "selected": "arthord.micro.Apoptygma 0.4" + }, + "completed_at": "2026-09-11T18:29:13Z", + "confirmation": null, + "delta_pct": -17.4, + "id": "fcb58e94a0c3caa6", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "arthord.micro.Apoptygma 0.4", + "division": "roborumble", + "jar": "arthord.micro.Apoptygma_0.4.jar", + "jar_sha256": "d07f93659bb20a2980e452dad383dbe0e1333144918cabf313423bc19dba8509", + "key": "roborumble/arthord.micro.Apoptygma_0.4.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 16.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 4265.0, + "scores": [ + 2313.0, + 1952.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/arthord.micro.Muffin_0.6.1.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "arthord.micro.Muffin 0.6.1", + "division": "roborumble", + "jar": "arthord.micro.Muffin_0.6.1.jar", + "jar_sha256": "a5b7c2fe230839a0452e06b8036ef3ed5ebbe771c75a67a00e6d9f6ffe547c6c", + "key": "roborumble/arthord.micro.Muffin_0.6.1.jar", + "kind": "robot" + }, + "latest_observation": "8fb3298c3a00ca19", + "observations": [ + { + "classic": { + "elapsed": 3.8, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 5820.0, + "scores": [ + 2568.0, + 3252.0 + ], + "selected": "arthord.micro.Muffin 0.6.1" + }, + "completed_at": "2026-09-08T20:39:19Z", + "delta_pct": -63.2, + "id": "a7b360b5da35fac2", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "arthord.micro.Muffin 0.6.1", + "division": "roborumble", + "jar": "arthord.micro.Muffin_0.6.1.jar", + "jar_sha256": "a5b7c2fe230839a0452e06b8036ef3ed5ebbe771c75a67a00e6d9f6ffe547c6c", + "key": "roborumble/arthord.micro.Muffin_0.6.1.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (score)", + "tank_royale": { + "elapsed": 12.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 2140.0, + "scores": [ + 1415.0, + 725.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 3.5, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 6124.0, + "scores": [ + 2672.0, + 3452.0 + ], + "selected": "arthord.micro.Muffin 0.6.1" + }, + "completed_at": "2026-09-11T18:29:33Z", + "confirmation": null, + "delta_pct": -72.0, + "id": "8fb3298c3a00ca19", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "arthord.micro.Muffin 0.6.1", + "division": "roborumble", + "jar": "arthord.micro.Muffin_0.6.1.jar", + "jar_sha256": "a5b7c2fe230839a0452e06b8036ef3ed5ebbe771c75a67a00e6d9f6ffe547c6c", + "key": "roborumble/arthord.micro.Muffin_0.6.1.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (score)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 16.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 1716.0, + "scores": [ + 962.0, + 754.0 + ], + "skipped": null + } + } + ], + "status": "score-review" + }, + "roborumble/ary.Crisis_1.0.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "ary.Crisis 1.0", + "division": "roborumble", + "jar": "ary.Crisis_1.0.jar", + "jar_sha256": "ff0f375c270611bb30a788d6ea8d53c4237f0aef7e59138bdce5da97749b160e", + "key": "roborumble/ary.Crisis_1.0.jar", + "kind": "robot" + }, + "latest_observation": "49c18c2ef7546001", + "observations": [ + { + "classic": { + "elapsed": 3.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 5380.0, + "scores": [ + 2640.0, + 2740.0 + ], + "selected": "ary.Crisis 1.0" + }, + "completed_at": "2026-09-08T20:40:18Z", + "delta_pct": 0.7, + "id": "2728b67184ef42c0", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "ary.Crisis 1.0", + "division": "roborumble", + "jar": "ary.Crisis_1.0.jar", + "jar_sha256": "ff0f375c270611bb30a788d6ea8d53c4237f0aef7e59138bdce5da97749b160e", + "key": "roborumble/ary.Crisis_1.0.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "elapsed": 20.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 5417.0, + "scores": [ + 3008.0, + 2409.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 2.9, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5231.0, + "scores": [ + 2871.0, + 2360.0 + ], + "selected": "ary.Crisis 1.0" + }, + "completed_at": "2026-09-11T18:30:45Z", + "confirmation": null, + "delta_pct": -8.3, + "id": "49c18c2ef7546001", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "ary.Crisis 1.0", + "division": "roborumble", + "jar": "ary.Crisis_1.0.jar", + "jar_sha256": "ff0f375c270611bb30a788d6ea8d53c4237f0aef7e59138bdce5da97749b160e", + "key": "roborumble/ary.Crisis_1.0.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 28.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 4795.0, + "scores": [ + 2472.0, + 2323.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/ary.FourWD_1.3d.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "ary.FourWD 1.3d", + "division": "roborumble", + "jar": "ary.FourWD_1.3d.jar", + "jar_sha256": "bfe8768af3401df35cf4d4ec8e3e1d47d779cc5dfc284b212fda3153dbd21537", + "key": "roborumble/ary.FourWD_1.3d.jar", + "kind": "robot" + }, + "latest_observation": "7b2b652b5bb199c0", + "observations": [ + { + "classic": { + "elapsed": 2.9, + "error_count": 67, + "errors": [ + "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"pt\" is null", + "java.lang.NullPointerException", + "java.lang.NullPointerException", + "java.lang.NullPointerException", + "java.lang.NullPointerException", + "java.lang.NullPointerException", + "java.lang.NullPointerException", + "java.lang.NullPointerException", + "java.lang.NullPointerException", + "java.lang.NullPointerException", + "java.lang.NullPointerException", + "java.lang.NullPointerException", + "java.lang.NullPointerException", + "java.lang.NullPointerException", + "java.lang.NullPointerException", + "java.lang.NullPointerException", + "java.lang.NullPointerException", + "java.lang.NullPointerException", + "java.lang.NullPointerException", + "java.lang.NullPointerException", + "java.lang.NullPointerException", + "java.lang.NullPointerException", + "java.lang.NullPointerException", + "java.lang.NullPointerException", + "java.lang.NullPointerException", + "java.lang.NullPointerException", + "java.lang.NullPointerException", + "java.lang.NullPointerException", + "java.lang.NullPointerException", + "java.lang.NullPointerException", + "java.lang.NullPointerException", + "java.lang.NullPointerException", + "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"pt\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"pt\" is null", + "java.lang.NullPointerException", + "java.lang.NullPointerException", + "java.lang.NullPointerException", + "java.lang.NullPointerException", + "java.lang.NullPointerException", + "java.lang.NullPointerException", + "java.lang.NullPointerException", + "java.lang.NullPointerException", + "java.lang.NullPointerException", + "java.lang.NullPointerException", + "java.lang.NullPointerException", + "java.lang.NullPointerException", + "java.lang.NullPointerException", + "java.lang.NullPointerException", + "java.lang.NullPointerException", + "java.lang.NullPointerException", + "java.lang.NullPointerException", + "java.lang.NullPointerException", + "java.lang.NullPointerException", + "java.lang.NullPointerException", + "java.lang.NullPointerException", + "java.lang.NullPointerException", + "java.lang.NullPointerException", + "java.lang.NullPointerException", + "java.lang.NullPointerException", + "java.lang.NullPointerException", + "java.lang.NullPointerException", + "java.lang.NullPointerException", + "java.lang.NullPointerException", + "java.lang.NullPointerException", + "java.lang.NullPointerException", + "java.lang.NullPointerException", + "java.lang.NullPointerException" + ], + "has_log": true, + "ok": true, + "score": 5331.0, + "scores": [ + 2389.0, + 2942.0 + ], + "selected": "ary.FourWD 1.3d" + }, + "completed_at": "2026-09-08T20:40:43Z", + "delta_pct": -40.4, + "id": "10b51506f52cd1be", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "ary.FourWD 1.3d", + "division": "roborumble", + "jar": "ary.FourWD_1.3d.jar", + "jar_sha256": "bfe8768af3401df35cf4d4ec8e3e1d47d779cc5dfc284b212fda3153dbd21537", + "key": "roborumble/ary.FourWD_1.3d.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (score)", + "tank_royale": { + "elapsed": 22.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 3178.0, + "scores": [ + 1891.0, + 1287.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 3.0, + "error_count": 67, + "error_signatures": [ + { + "exception": "java.lang.NullPointerException", + "origin": "ary.FourWD.run" + }, + { + "exception": "java.lang.NullPointerException", + "origin": "unknown" + } + ], + "errors": [ + "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"pt\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"pt\" is null", + "java.lang.NullPointerException", + "java.lang.NullPointerException", + "java.lang.NullPointerException", + "java.lang.NullPointerException", + "java.lang.NullPointerException", + "java.lang.NullPointerException", + "java.lang.NullPointerException", + "java.lang.NullPointerException", + "java.lang.NullPointerException", + "java.lang.NullPointerException", + "java.lang.NullPointerException", + "java.lang.NullPointerException", + "java.lang.NullPointerException", + "java.lang.NullPointerException", + "java.lang.NullPointerException", + "java.lang.NullPointerException", + "java.lang.NullPointerException", + "java.lang.NullPointerException", + "java.lang.NullPointerException", + "java.lang.NullPointerException", + "java.lang.NullPointerException", + "java.lang.NullPointerException", + "java.lang.NullPointerException", + "java.lang.NullPointerException", + "java.lang.NullPointerException", + "java.lang.NullPointerException", + "java.lang.NullPointerException", + "java.lang.NullPointerException", + "java.lang.NullPointerException", + "java.lang.NullPointerException", + "java.lang.NullPointerException", + "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"pt\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"pt\" is null", + "java.lang.NullPointerException", + "java.lang.NullPointerException", + "java.lang.NullPointerException", + "java.lang.NullPointerException", + "java.lang.NullPointerException", + "java.lang.NullPointerException", + "java.lang.NullPointerException", + "java.lang.NullPointerException", + "java.lang.NullPointerException", + "java.lang.NullPointerException", + "java.lang.NullPointerException", + "java.lang.NullPointerException", + "java.lang.NullPointerException", + "java.lang.NullPointerException", + "java.lang.NullPointerException", + "java.lang.NullPointerException", + "java.lang.NullPointerException", + "java.lang.NullPointerException", + "java.lang.NullPointerException", + "java.lang.NullPointerException", + "java.lang.NullPointerException", + "java.lang.NullPointerException", + "java.lang.NullPointerException", + "java.lang.NullPointerException", + "java.lang.NullPointerException", + "java.lang.NullPointerException", + "java.lang.NullPointerException", + "java.lang.NullPointerException", + "java.lang.NullPointerException", + "java.lang.NullPointerException", + "java.lang.NullPointerException", + "java.lang.NullPointerException" + ], + "has_log": true, + "ok": true, + "score": 5390.0, + "scores": [ + 2458.0, + 2932.0 + ], + "selected": "ary.FourWD 1.3d" + }, + "completed_at": "2026-09-11T18:31:14Z", + "confirmation": null, + "delta_pct": -37.9, + "id": "7b2b652b5bb199c0", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "ary.FourWD 1.3d", + "division": "roborumble", + "jar": "ary.FourWD_1.3d.jar", + "jar_sha256": "bfe8768af3401df35cf4d4ec8e3e1d47d779cc5dfc284b212fda3153dbd21537", + "key": "roborumble/ary.FourWD_1.3d.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (errors)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 26.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 3348.0, + "scores": [ + 1761.0, + 1587.0 + ], + "skipped": null + } + } + ], + "status": "DISCREPANCY (errors)" + }, + "roborumble/ary.Help_1.0.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "ary.Help 1.0", + "division": "roborumble", + "jar": "ary.Help_1.0.jar", + "jar_sha256": "53b6ea8218bd5d68255505bee581a741a88511e58840a395b855ec8f69c2355d", + "key": "roborumble/ary.Help_1.0.jar", + "kind": "robot" + }, + "latest_observation": "3e13e72d5b4a27ae", + "observations": [ + { + "classic": { + "elapsed": 3.4, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 4834.0, + "scores": [ + 2430.0, + 2404.0 + ], + "selected": "ary.Help 1.0" + }, + "completed_at": "2026-09-08T20:41:13Z", + "delta_pct": -38.8, + "id": "a5fc6afd26a475b9", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "ary.Help 1.0", + "division": "roborumble", + "jar": "ary.Help_1.0.jar", + "jar_sha256": "53b6ea8218bd5d68255505bee581a741a88511e58840a395b855ec8f69c2355d", + "key": "roborumble/ary.Help_1.0.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (score)", + "tank_royale": { + "elapsed": 26.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 2960.0, + "scores": [ + 1618.0, + 1342.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 3.5, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5033.0, + "scores": [ + 2235.0, + 2798.0 + ], + "selected": "ary.Help 1.0" + }, + "completed_at": "2026-09-11T18:31:22Z", + "confirmation": null, + "delta_pct": null, + "id": "3e13e72d5b4a27ae", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "ary.Help 1.0", + "division": "roborumble", + "jar": "ary.Help_1.0.jar", + "jar_sha256": "53b6ea8218bd5d68255505bee581a741a88511e58840a395b855ec8f69c2355d", + "key": "roborumble/ary.Help_1.0.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (outcome)", + "tank_royale": { + "bridge_only_signatures": [ + [ + "java.lang.NullPointerException", + "ary.Help.onHitByBullet" + ] + ], + "elapsed": 4.1, + "error_count": 2, + "error_signatures": [ + { + "exception": "java.lang.NullPointerException", + "origin": "ary.Help.onHitByBullet" + } + ], + "errors": [ + "HARNESS: worker produced no result (exit code -1)", + "java.lang.NullPointerException: Cannot invoke \"ary.Help$Wave.distanceToPoint(java.awt.geom.Point2D$Double)\" because \"surfWave\" is null" + ], + "has_log": true, + "ok": false, + "score": null, + "scores": [], + "skipped": null + } + } + ], + "status": "DISCREPANCY (outcome)" + }, + "roborumble/ary.SMG_1.01.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "ary.SMG 1.01", + "division": "roborumble", + "jar": "ary.SMG_1.01.jar", + "jar_sha256": "036caac2e9d5aefaec139d97b677ac1ffc9e41af7f0f19c09431a781d3bd00f7", + "key": "roborumble/ary.SMG_1.01.jar", + "kind": "robot" + }, + "latest_observation": "65f473a89338e12c", + "observations": [ + { + "classic": { + "elapsed": 5.1, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 5205.0, + "scores": [ + 2298.0, + 2907.0 + ], + "selected": "ary.SMG 1.01" + }, + "completed_at": "2026-09-08T20:43:38Z", + "delta_pct": -63.2, + "id": "5df472261fca6166", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "ary.SMG 1.01", + "division": "roborumble", + "jar": "ary.SMG_1.01.jar", + "jar_sha256": "036caac2e9d5aefaec139d97b677ac1ffc9e41af7f0f19c09431a781d3bd00f7", + "key": "roborumble/ary.SMG_1.01.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (score)", + "tank_royale": { + "elapsed": 22.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 1918.0, + "scores": [ + 1058.0, + 860.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 4.8, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5396.0, + "scores": [ + 2257.0, + 3139.0 + ], + "selected": "ary.SMG 1.01" + }, + "completed_at": "2026-09-11T18:34:06Z", + "confirmation": null, + "delta_pct": -24.9, + "id": "65f473a89338e12c", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "ary.SMG 1.01", + "division": "roborumble", + "jar": "ary.SMG_1.01.jar", + "jar_sha256": "036caac2e9d5aefaec139d97b677ac1ffc9e41af7f0f19c09431a781d3bd00f7", + "key": "roborumble/ary.SMG_1.01.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 24.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 4052.0, + "scores": [ + 2193.0, + 1859.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/ary.micro.Weak_1.2.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "ary.micro.Weak 1.2", + "division": "roborumble", + "jar": "ary.micro.Weak_1.2.jar", + "jar_sha256": "0544bc89b923a2ff7c63dc5781c07703dc8c0053a78d5f4a058d3c49e0a03f33", + "key": "roborumble/ary.micro.Weak_1.2.jar", + "kind": "robot" + }, + "latest_observation": "d78349c330daf18b", + "observations": [ + { + "classic": { + "elapsed": 13.8, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 5205.0, + "scores": [ + 2473.0, + 2732.0 + ], + "selected": "ary.micro.Weak 1.2" + }, + "completed_at": "2026-09-08T20:42:01Z", + "delta_pct": -4.6, + "id": "371017386f1da182", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "ary.micro.Weak 1.2", + "division": "roborumble", + "jar": "ary.micro.Weak_1.2.jar", + "jar_sha256": "0544bc89b923a2ff7c63dc5781c07703dc8c0053a78d5f4a058d3c49e0a03f33", + "key": "roborumble/ary.micro.Weak_1.2.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "elapsed": 34.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 4965.0, + "scores": [ + 2509.0, + 2456.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 12.7, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5630.0, + "scores": [ + 2629.0, + 3001.0 + ], + "selected": "ary.micro.Weak 1.2" + }, + "completed_at": "2026-09-11T18:32:26Z", + "confirmation": null, + "delta_pct": -10.0, + "id": "d78349c330daf18b", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "ary.micro.Weak 1.2", + "division": "roborumble", + "jar": "ary.micro.Weak_1.2.jar", + "jar_sha256": "0544bc89b923a2ff7c63dc5781c07703dc8c0053a78d5f4a058d3c49e0a03f33", + "key": "roborumble/ary.micro.Weak_1.2.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 36.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5069.0, + "scores": [ + 2669.0, + 2400.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/ary.mini.Nimi_1.0.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "ary.mini.Nimi 1.0", + "division": "roborumble", + "jar": "ary.mini.Nimi_1.0.jar", + "jar_sha256": "36bee330a80f2f3914bf93c24b5a0df11ad64530f588b05c06a68fff920c1ed0", + "key": "roborumble/ary.mini.Nimi_1.0.jar", + "kind": "robot" + }, + "latest_observation": "4966fdf0a4ba6ee7", + "observations": [ + { + "classic": { + "elapsed": 3.1, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 5247.0, + "scores": [ + 2277.0, + 2970.0 + ], + "selected": "ary.mini.Nimi 1.0" + }, + "completed_at": "2026-09-08T20:42:33Z", + "delta_pct": -31.2, + "id": "e0d8d0f6f8806455", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "ary.mini.Nimi 1.0", + "division": "roborumble", + "jar": "ary.mini.Nimi_1.0.jar", + "jar_sha256": "36bee330a80f2f3914bf93c24b5a0df11ad64530f588b05c06a68fff920c1ed0", + "key": "roborumble/ary.mini.Nimi_1.0.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (score)", + "tank_royale": { + "elapsed": 28.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 3608.0, + "scores": [ + 1844.0, + 1764.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 3.1, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 4951.0, + "scores": [ + 2861.0, + 2090.0 + ], + "selected": "ary.mini.Nimi 1.0" + }, + "completed_at": "2026-09-11T18:32:59Z", + "confirmation": null, + "delta_pct": -21.9, + "id": "4966fdf0a4ba6ee7", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "ary.mini.Nimi 1.0", + "division": "roborumble", + "jar": "ary.mini.Nimi_1.0.jar", + "jar_sha256": "36bee330a80f2f3914bf93c24b5a0df11ad64530f588b05c06a68fff920c1ed0", + "key": "roborumble/ary.mini.Nimi_1.0.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 30.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 3865.0, + "scores": [ + 1976.0, + 1889.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/ary.nano.AceSurf_1.2.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "ary.nano.AceSurf 1.2", + "division": "roborumble", + "jar": "ary.nano.AceSurf_1.2.jar", + "jar_sha256": "2d693c09246861c6b044d534aa1b5b463f5eb869f00a88afd9f30a21472e7a1d", + "key": "roborumble/ary.nano.AceSurf_1.2.jar", + "kind": "robot" + }, + "latest_observation": "b559364dc3bed001", + "observations": [ + { + "classic": { + "elapsed": 2.7, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 2521.0, + "scores": [ + 1376.0, + 1145.0 + ], + "selected": "ary.nano.AceSurf 1.2" + }, + "completed_at": "2026-09-08T20:42:54Z", + "delta_pct": 38.1, + "id": "bd77f78dc4f9642f", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "ary.nano.AceSurf 1.2", + "division": "roborumble", + "jar": "ary.nano.AceSurf_1.2.jar", + "jar_sha256": "2d693c09246861c6b044d534aa1b5b463f5eb869f00a88afd9f30a21472e7a1d", + "key": "roborumble/ary.nano.AceSurf_1.2.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (score)", + "tank_royale": { + "elapsed": 18.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 3481.0, + "scores": [ + 1797.0, + 1684.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 2.7, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 2937.0, + "scores": [ + 1624.0, + 1313.0 + ], + "selected": "ary.nano.AceSurf 1.2" + }, + "completed_at": "2026-09-11T18:33:20Z", + "confirmation": null, + "delta_pct": 3.7, + "id": "b559364dc3bed001", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "ary.nano.AceSurf 1.2", + "division": "roborumble", + "jar": "ary.nano.AceSurf_1.2.jar", + "jar_sha256": "2d693c09246861c6b044d534aa1b5b463f5eb869f00a88afd9f30a21472e7a1d", + "key": "roborumble/ary.nano.AceSurf_1.2.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 18.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 3046.0, + "scores": [ + 1642.0, + 1404.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/ary.nano.ColorNanoP_1.1.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "ary.nano.ColorNanoP 1.1", + "division": "roborumble", + "jar": "ary.nano.ColorNanoP_1.1.jar", + "jar_sha256": "f1b339cda45f96f9c73a4a2ef286d7e6d6d837dcc92d140f5615b9b57421a3e8", + "key": "roborumble/ary.nano.ColorNanoP_1.1.jar", + "kind": "robot" + }, + "latest_observation": "4191bf3cb5bc4b66", + "observations": [ + { + "classic": { + "elapsed": 2.9, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 7699.0, + "scores": [ + 3670.0, + 4029.0 + ], + "selected": "ary.nano.ColorNanoP 1.1" + }, + "completed_at": "2026-09-08T20:43:11Z", + "delta_pct": -12.4, + "id": "7c40044d94ec9a01", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "ary.nano.ColorNanoP 1.1", + "division": "roborumble", + "jar": "ary.nano.ColorNanoP_1.1.jar", + "jar_sha256": "f1b339cda45f96f9c73a4a2ef286d7e6d6d837dcc92d140f5615b9b57421a3e8", + "key": "roborumble/ary.nano.ColorNanoP_1.1.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "elapsed": 14.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 6744.0, + "scores": [ + 3377.0, + 3367.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 2.8, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 7633.0, + "scores": [ + 3752.0, + 3881.0 + ], + "selected": "ary.nano.ColorNanoP 1.1" + }, + "completed_at": "2026-09-11T18:33:37Z", + "confirmation": null, + "delta_pct": -6.1, + "id": "4191bf3cb5bc4b66", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "ary.nano.ColorNanoP 1.1", + "division": "roborumble", + "jar": "ary.nano.ColorNanoP_1.1.jar", + "jar_sha256": "f1b339cda45f96f9c73a4a2ef286d7e6d6d837dcc92d140f5615b9b57421a3e8", + "key": "roborumble/ary.nano.ColorNanoP_1.1.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 14.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 7169.0, + "scores": [ + 4201.0, + 2968.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/as.xbots_1.0.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "as.xbots 1.0", + "division": "roborumble", + "jar": "as.xbots_1.0.jar", + "jar_sha256": "6adf1183af7ed3e4cccbaf35249fede5ffb8dc2101e49458106909cea95120cf", + "key": "roborumble/as.xbots_1.0.jar", + "kind": "robot" + }, + "latest_observation": "533a30f3b2272199", + "observations": [ + { + "classic": { + "elapsed": 2.1, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 10650.0, + "scores": [ + 5019.0, + 5631.0 + ], + "selected": "as.xbots 1.0" + }, + "completed_at": "2026-09-08T20:43:51Z", + "delta_pct": 54.8, + "id": "a84fbf62fb36b2a2", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "as.xbots 1.0", + "division": "roborumble", + "jar": "as.xbots_1.0.jar", + "jar_sha256": "6adf1183af7ed3e4cccbaf35249fede5ffb8dc2101e49458106909cea95120cf", + "key": "roborumble/as.xbots_1.0.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (score)", + "tank_royale": { + "elapsed": 10.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 16487.0, + "scores": [ + 8529.0, + 7958.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 2.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 10589.0, + "scores": [ + 5364.0, + 5225.0 + ], + "selected": "as.xbots 1.0" + }, + "completed_at": "2026-09-11T18:34:19Z", + "confirmation": null, + "delta_pct": 53.8, + "id": "533a30f3b2272199", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "as.xbots 1.0", + "division": "roborumble", + "jar": "as.xbots_1.0.jar", + "jar_sha256": "6adf1183af7ed3e4cccbaf35249fede5ffb8dc2101e49458106909cea95120cf", + "key": "roborumble/as.xbots_1.0.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (score)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 10.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 16285.0, + "scores": [ + 8303.0, + 7982.0 + ], + "skipped": null + } + } + ], + "status": "score-review" + }, + "roborumble/asd.Cthulhu_1.2.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "asd.Cthulhu 1.2", + "division": "roborumble", + "jar": "asd.Cthulhu_1.2.jar", + "jar_sha256": "63459d2c15c8c2227ad40c9fe6f89b51e934abffcc10d49837874199767c060e", + "key": "roborumble/asd.Cthulhu_1.2.jar", + "kind": "robot" + }, + "latest_observation": "1d42acb3db0ccb77", + "observations": [ + { + "classic": { + "elapsed": 32.3, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 6883.0, + "scores": [ + 3827.0, + 3056.0 + ], + "selected": "asd.Cthulhu 1.2" + }, + "completed_at": "2026-09-08T20:44:51Z", + "delta_pct": 2.3, + "id": "62a7416486d668ba", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "asd.Cthulhu 1.2", + "division": "roborumble", + "jar": "asd.Cthulhu_1.2.jar", + "jar_sha256": "63459d2c15c8c2227ad40c9fe6f89b51e934abffcc10d49837874199767c060e", + "key": "roborumble/asd.Cthulhu_1.2.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "elapsed": 28.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 7044.0, + "scores": [ + 3534.0, + 3510.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 32.6, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 7118.0, + "scores": [ + 3693.0, + 3425.0 + ], + "selected": "asd.Cthulhu 1.2" + }, + "completed_at": "2026-09-11T18:35:20Z", + "confirmation": null, + "delta_pct": -1.1, + "id": "1d42acb3db0ccb77", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "asd.Cthulhu 1.2", + "division": "roborumble", + "jar": "asd.Cthulhu_1.2.jar", + "jar_sha256": "63459d2c15c8c2227ad40c9fe6f89b51e934abffcc10d49837874199767c060e", + "key": "roborumble/asd.Cthulhu_1.2.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 28.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 7039.0, + "scores": [ + 3526.0, + 3513.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/asm.Statistas_0.1.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "asm.Statistas 0.1", + "division": "roborumble", + "jar": "asm.Statistas_0.1.jar", + "jar_sha256": "35553b2c09fcebec047f79582cc5a274d6bcd6d0034c1e5175d545281c76d0e4", + "key": "roborumble/asm.Statistas_0.1.jar", + "kind": "robot" + }, + "latest_observation": "352c974a6d94c789", + "observations": [ + { + "classic": { + "elapsed": 2.6, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 4972.0, + "scores": [ + 2714.0, + 2258.0 + ], + "selected": "asm.Statistas 0.1" + }, + "completed_at": "2026-09-08T20:45:10Z", + "delta_pct": -5.1, + "id": "1f68932ec9132d3a", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "asm.Statistas 0.1", + "division": "roborumble", + "jar": "asm.Statistas_0.1.jar", + "jar_sha256": "35553b2c09fcebec047f79582cc5a274d6bcd6d0034c1e5175d545281c76d0e4", + "key": "roborumble/asm.Statistas_0.1.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "elapsed": 16.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 4717.0, + "scores": [ + 2396.0, + 2321.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 2.6, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5027.0, + "scores": [ + 2188.0, + 2839.0 + ], + "selected": "asm.Statistas 0.1" + }, + "completed_at": "2026-09-11T18:35:41Z", + "confirmation": null, + "delta_pct": -9.8, + "id": "352c974a6d94c789", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "asm.Statistas 0.1", + "division": "roborumble", + "jar": "asm.Statistas_0.1.jar", + "jar_sha256": "35553b2c09fcebec047f79582cc5a274d6bcd6d0034c1e5175d545281c76d0e4", + "key": "roborumble/asm.Statistas_0.1.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 18.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 4532.0, + "scores": [ + 2500.0, + 2032.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/awl.Locutus_1.5.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "awl.Locutus 1.5", + "division": "roborumble", + "jar": "awl.Locutus_1.5.jar", + "jar_sha256": "c7f5c5cca58627f58db3c1590036255788fbaf333da16641ff0633c709ad0c2b", + "key": "roborumble/awl.Locutus_1.5.jar", + "kind": "robot" + }, + "latest_observation": "10f460339be51bf0", + "observations": [ + { + "classic": { + "elapsed": 2.7, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 6083.0, + "scores": [ + 2605.0, + 3478.0 + ], + "selected": "awl.Locutus 1.5" + }, + "completed_at": "2026-09-08T20:45:37Z", + "delta_pct": -16.0, + "id": "044a09527daed943", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "awl.Locutus 1.5", + "division": "roborumble", + "jar": "awl.Locutus_1.5.jar", + "jar_sha256": "c7f5c5cca58627f58db3c1590036255788fbaf333da16641ff0633c709ad0c2b", + "key": "roborumble/awl.Locutus_1.5.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "elapsed": 24.1, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 5107.0, + "scores": [ + 3156.0, + 1951.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 2.8, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5415.0, + "scores": [ + 2613.0, + 2802.0 + ], + "selected": "awl.Locutus 1.5" + }, + "completed_at": "2026-09-11T18:36:12Z", + "confirmation": null, + "delta_pct": 4.0, + "id": "10f460339be51bf0", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "awl.Locutus 1.5", + "division": "roborumble", + "jar": "awl.Locutus_1.5.jar", + "jar_sha256": "c7f5c5cca58627f58db3c1590036255788fbaf333da16641ff0633c709ad0c2b", + "key": "roborumble/awl.Locutus_1.5.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 28.2, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5633.0, + "scores": [ + 3131.0, + 2502.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/axeBots.HataMoto_3.09.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "axeBots.HataMoto 3.09", + "division": "roborumble", + "jar": "axeBots.HataMoto_3.09.jar", + "jar_sha256": "293a92846b40195a5de25c7379f72e0dcb08297f79d2b6fffd7d3a95b50afb2c", + "key": "roborumble/axeBots.HataMoto_3.09.jar", + "kind": "robot" + }, + "latest_observation": "f9cf536953c45a91", + "observations": [ + { + "classic": { + "elapsed": 5.9, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 4777.0, + "scores": [ + 1548.0, + 3229.0 + ], + "selected": "axeBots.HataMoto 3.09" + }, + "completed_at": "2026-09-08T20:46:16Z", + "delta_pct": 5.3, + "id": "f3c9ed411fa769b7", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "axeBots.HataMoto 3.09", + "division": "roborumble", + "jar": "axeBots.HataMoto_3.09.jar", + "jar_sha256": "293a92846b40195a5de25c7379f72e0dcb08297f79d2b6fffd7d3a95b50afb2c", + "key": "roborumble/axeBots.HataMoto_3.09.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "elapsed": 32.3, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 5029.0, + "scores": [ + 2525.0, + 2504.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 5.6, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5165.0, + "scores": [ + 2916.0, + 2249.0 + ], + "selected": "axeBots.HataMoto 3.09" + }, + "completed_at": "2026-09-11T18:36:56Z", + "confirmation": null, + "delta_pct": -4.5, + "id": "f9cf536953c45a91", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "axeBots.HataMoto 3.09", + "division": "roborumble", + "jar": "axeBots.HataMoto_3.09.jar", + "jar_sha256": "293a92846b40195a5de25c7379f72e0dcb08297f79d2b6fffd7d3a95b50afb2c", + "key": "roborumble/axeBots.HataMoto_3.09.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 38.4, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 4930.0, + "scores": [ + 2721.0, + 2209.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/axeBots.Musashi_2.18.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "axeBots.Musashi 2.18", + "division": "roborumble", + "jar": "axeBots.Musashi_2.18.jar", + "jar_sha256": "f7890ddc132b5ae0595e1faa65464e79628bb5dda7a64f5e20e74cb3ee9d8707", + "key": "roborumble/axeBots.Musashi_2.18.jar", + "kind": "robot" + }, + "latest_observation": "40e7f2ea2300c8f4", + "observations": [ + { + "classic": { + "elapsed": 3.9, + "error_count": 2, + "errors": [ + "IOException trying to read: java.lang.NullPointerException: name can't be null", + "IOException trying to read: java.lang.NullPointerException: name can't be null" + ], + "has_log": true, + "ok": true, + "score": 5575.0, + "scores": [ + 2545.0, + 3030.0 + ], + "selected": "axeBots.Musashi 2.18" + }, + "completed_at": "2026-09-08T20:46:48Z", + "delta_pct": -5.5, + "id": "d96c381e473a9e9f", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "axeBots.Musashi 2.18", + "division": "roborumble", + "jar": "axeBots.Musashi_2.18.jar", + "jar_sha256": "f7890ddc132b5ae0595e1faa65464e79628bb5dda7a64f5e20e74cb3ee9d8707", + "key": "roborumble/axeBots.Musashi_2.18.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "elapsed": 28.0, + "error_count": 2, + "errors": [ + "IOException trying to read: java.lang.NullPointerException: Cannot invoke \"java.io.File.isInvalid()\" because \"file\" is null", + "IOException trying to read: java.lang.NullPointerException: Cannot invoke \"java.io.File.isInvalid()\" because \"file\" is null" + ], + "has_log": true, + "ok": true, + "score": 5270.0, + "scores": [ + 2646.0, + 2624.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 4.8, + "error_count": 2, + "error_signatures": [ + { + "exception": "java.lang.NullPointerException", + "origin": "unknown" + } + ], + "errors": [ + "IOException trying to read: java.lang.NullPointerException: name can't be null", + "IOException trying to read: java.lang.NullPointerException: name can't be null" + ], + "has_log": true, + "ok": true, + "score": 5110.0, + "scores": [ + 2558.0, + 2552.0 + ], + "selected": "axeBots.Musashi 2.18" + }, + "completed_at": "2026-09-11T18:37:33Z", + "confirmation": null, + "delta_pct": -0.4, + "id": "40e7f2ea2300c8f4", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "axeBots.Musashi 2.18", + "division": "roborumble", + "jar": "axeBots.Musashi_2.18.jar", + "jar_sha256": "f7890ddc132b5ae0595e1faa65464e79628bb5dda7a64f5e20e74cb3ee9d8707", + "key": "roborumble/axeBots.Musashi_2.18.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 32.0, + "error_count": 2, + "error_signatures": [ + { + "exception": "java.lang.NullPointerException", + "origin": "unknown" + } + ], + "errors": [ + "IOException trying to read: java.lang.NullPointerException: Cannot invoke \"java.io.File.isInvalid()\" because \"file\" is null", + "IOException trying to read: java.lang.NullPointerException: Cannot invoke \"java.io.File.isInvalid()\" because \"file\" is null" + ], + "has_log": true, + "ok": true, + "score": 5092.0, + "scores": [ + 2648.0, + 2444.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/axeBots.Okami_1.04.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "axeBots.Okami 1.04", + "division": "roborumble", + "jar": "axeBots.Okami_1.04.jar", + "jar_sha256": "608f42ae73765a352e9034e41f36af721cd745835a19a20f8fe7e8bbe3be30fa", + "key": "roborumble/axeBots.Okami_1.04.jar", + "kind": "robot" + }, + "latest_observation": "cf091ab89a700f92", + "observations": [ + { + "classic": { + "elapsed": 5.0, + "error_count": 2, + "errors": [ + "IOException trying to read: java.lang.NullPointerException: name can't be null", + "IOException trying to read: java.lang.NullPointerException: name can't be null" + ], + "has_log": true, + "ok": true, + "score": 5383.0, + "scores": [ + 2856.0, + 2527.0 + ], + "selected": "axeBots.Okami 1.04" + }, + "completed_at": "2026-09-08T20:47:22Z", + "delta_pct": -7.1, + "id": "74bce683db58a4ec", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "axeBots.Okami 1.04", + "division": "roborumble", + "jar": "axeBots.Okami_1.04.jar", + "jar_sha256": "608f42ae73765a352e9034e41f36af721cd745835a19a20f8fe7e8bbe3be30fa", + "key": "roborumble/axeBots.Okami_1.04.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "elapsed": 28.2, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 4999.0, + "scores": [ + 3272.0, + 1727.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 4.8, + "error_count": 2, + "error_signatures": [ + { + "exception": "java.lang.NullPointerException", + "origin": "unknown" + } + ], + "errors": [ + "IOException trying to read: java.lang.NullPointerException: name can't be null", + "IOException trying to read: java.lang.NullPointerException: name can't be null" + ], + "has_log": true, + "ok": true, + "score": 5311.0, + "scores": [ + 2960.0, + 2351.0 + ], + "selected": "axeBots.Okami 1.04" + }, + "completed_at": "2026-09-11T18:38:03Z", + "confirmation": null, + "delta_pct": -4.4, + "id": "cf091ab89a700f92", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "axeBots.Okami 1.04", + "division": "roborumble", + "jar": "axeBots.Okami_1.04.jar", + "jar_sha256": "608f42ae73765a352e9034e41f36af721cd745835a19a20f8fe7e8bbe3be30fa", + "key": "roborumble/axeBots.Okami_1.04.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (errors)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 24.2, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5079.0, + "scores": [ + 2662.0, + 2417.0 + ], + "skipped": null + } + } + ], + "status": "DISCREPANCY (errors)" + }, + "roborumble/axeBots.SilverSurfer_2.53.33fix.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "axeBots.SilverSurfer 2.53.33fix", + "division": "roborumble", + "jar": "axeBots.SilverSurfer_2.53.33fix.jar", + "jar_sha256": "d0b3667a0a9c38bc0cfdb5c47d7b68a8b73194fd88be12d6bee64fcfddb86add", + "key": "roborumble/axeBots.SilverSurfer_2.53.33fix.jar", + "kind": "robot" + }, + "latest_observation": "38162854ee54a334", + "observations": [ + { + "classic": { + "elapsed": 6.3, + "error_count": 2, + "errors": [ + "IOException, trying to read: java.io.InterruptedIOException: File not Found:axeBots.SilverSurfer 2.53.33fix (2).gfs", + "IOException, trying to read: java.io.InterruptedIOException: File not Found:axeBots.SilverSurfer 2.53.33fix (1).gfs" + ], + "has_log": true, + "ok": true, + "score": 5487.0, + "scores": [ + 3158.0, + 2329.0 + ], + "selected": "axeBots.SilverSurfer 2.53.33fix" + }, + "completed_at": "2026-09-08T20:47:52Z", + "delta_pct": -3.4, + "id": "9b6fc48236f56191", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "axeBots.SilverSurfer 2.53.33fix", + "division": "roborumble", + "jar": "axeBots.SilverSurfer_2.53.33fix.jar", + "jar_sha256": "d0b3667a0a9c38bc0cfdb5c47d7b68a8b73194fd88be12d6bee64fcfddb86add", + "key": "roborumble/axeBots.SilverSurfer_2.53.33fix.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "elapsed": 24.0, + "error_count": 2, + "errors": [ + "IOException, trying to read: java.io.InterruptedIOException: File not Found:2.gfs", + "IOException, trying to read: java.io.InterruptedIOException: File not Found:1.gfs" + ], + "has_log": true, + "ok": true, + "score": 5298.0, + "scores": [ + 2951.0, + 2347.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 6.2, + "error_count": 2, + "error_signatures": [ + { + "exception": "java.io.InterruptedIOException", + "origin": "unknown" + } + ], + "errors": [ + "IOException, trying to read: java.io.InterruptedIOException: File not Found:axeBots.SilverSurfer 2.53.33fix (2).gfs", + "IOException, trying to read: java.io.InterruptedIOException: File not Found:axeBots.SilverSurfer 2.53.33fix (1).gfs" + ], + "has_log": true, + "ok": true, + "score": 5419.0, + "scores": [ + 2689.0, + 2730.0 + ], + "selected": "axeBots.SilverSurfer 2.53.33fix" + }, + "completed_at": "2026-09-11T18:38:35Z", + "confirmation": null, + "delta_pct": -3.2, + "id": "38162854ee54a334", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "axeBots.SilverSurfer 2.53.33fix", + "division": "roborumble", + "jar": "axeBots.SilverSurfer_2.53.33fix.jar", + "jar_sha256": "d0b3667a0a9c38bc0cfdb5c47d7b68a8b73194fd88be12d6bee64fcfddb86add", + "key": "roborumble/axeBots.SilverSurfer_2.53.33fix.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 26.0, + "error_count": 2, + "error_signatures": [ + { + "exception": "java.io.InterruptedIOException", + "origin": "unknown" + } + ], + "errors": [ + "IOException, trying to read: java.io.InterruptedIOException: File not Found:2.gfs", + "IOException, trying to read: java.io.InterruptedIOException: File not Found:1.gfs" + ], + "has_log": true, + "ok": true, + "score": 5245.0, + "scores": [ + 2799.0, + 2446.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/ayk.WallHugger_1.0.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "ayk.WallHugger 1.0", + "division": "roborumble", + "jar": "ayk.WallHugger_1.0.jar", + "jar_sha256": "6a5eb97de641d4c81e3456da75997dbe50aa072eacf0cc79db2d212899979470", + "key": "roborumble/ayk.WallHugger_1.0.jar", + "kind": "robot" + }, + "latest_observation": "630f1c58f42bbb9d", + "observations": [ + { + "classic": { + "elapsed": 2.4, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 10066.0, + "scores": [ + 4868.0, + 5198.0 + ], + "selected": "ayk.WallHugger 1.0" + }, + "completed_at": "2026-09-08T20:48:09Z", + "delta_pct": -22.2, + "id": "7d779898eaf34726", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "ayk.WallHugger 1.0", + "division": "roborumble", + "jar": "ayk.WallHugger_1.0.jar", + "jar_sha256": "6a5eb97de641d4c81e3456da75997dbe50aa072eacf0cc79db2d212899979470", + "key": "roborumble/ayk.WallHugger_1.0.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "elapsed": 14.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 7835.0, + "scores": [ + 4757.0, + 3078.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 2.4, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 10328.0, + "scores": [ + 5110.0, + 5218.0 + ], + "selected": "ayk.WallHugger 1.0" + }, + "completed_at": "2026-09-11T18:38:52Z", + "confirmation": null, + "delta_pct": -11.8, + "id": "630f1c58f42bbb9d", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "ayk.WallHugger 1.0", + "division": "roborumble", + "jar": "ayk.WallHugger_1.0.jar", + "jar_sha256": "6a5eb97de641d4c81e3456da75997dbe50aa072eacf0cc79db2d212899979470", + "key": "roborumble/ayk.WallHugger_1.0.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 14.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 9105.0, + "scores": [ + 4896.0, + 4209.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/az.Ololobot_0.2.4.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "az.Ololobot 0.2.4", + "division": "roborumble", + "jar": "az.Ololobot_0.2.4.jar", + "jar_sha256": "b6938411c048bde80bf0186892f03342e0c60dff05127052ed21932825765eb9", + "key": "roborumble/az.Ololobot_0.2.4.jar", + "kind": "robot" + }, + "latest_observation": "90ed0c87e0e6d487", + "observations": [ + { + "classic": { + "elapsed": 17.1, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 10091.0, + "scores": [ + 4636.0, + 5455.0 + ], + "selected": "az.Ololobot 0.2.4" + }, + "completed_at": "2026-09-08T20:48:31Z", + "delta_pct": null, + "id": "5cf402dd473c1227", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "az.Ololobot 0.2.4", + "division": "roborumble", + "jar": "az.Ololobot_0.2.4.jar", + "jar_sha256": "b6938411c048bde80bf0186892f03342e0c60dff05127052ed21932825765eb9", + "key": "roborumble/az.Ololobot_0.2.4.jar", + "kind": "robot" + }, + "status": "FAIL (TR)", + "tank_royale": { + "elapsed": 4.2, + "error_count": 189, + "errors": [ + "HARNESS: worker produced no result (exit code -1)", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5" + ], + "has_log": true, + "ok": false, + "score": null, + "scores": [], + "skipped": null + } + }, + { + "classic": { + "elapsed": 17.8, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 9982.0, + "scores": [ + 4512.0, + 5470.0 + ], + "selected": "az.Ololobot 0.2.4" + }, + "completed_at": "2026-09-11T18:39:15Z", + "confirmation": null, + "delta_pct": null, + "id": "90ed0c87e0e6d487", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "az.Ololobot 0.2.4", + "division": "roborumble", + "jar": "az.Ololobot_0.2.4.jar", + "jar_sha256": "b6938411c048bde80bf0186892f03342e0c60dff05127052ed21932825765eb9", + "key": "roborumble/az.Ololobot_0.2.4.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (outcome)", + "tank_royale": { + "bridge_only_signatures": [ + [ + "java.lang.ArrayIndexOutOfBoundsException", + "az.Ololobot.onScannedRobot" + ] + ], + "elapsed": 4.2, + "error_count": 139, + "error_signatures": [ + { + "exception": "java.lang.ArrayIndexOutOfBoundsException", + "origin": "az.Ololobot.onScannedRobot" + } + ], + "errors": [ + "HARNESS: worker produced no result (exit code -1)", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", + "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5" + ], + "has_log": true, + "ok": false, + "score": null, + "scores": [], + "skipped": null + } + } + ], + "status": "DISCREPANCY (outcome)" + }, + "roborumble/banshee.micro.Nexus6_0.3.0.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "banshee.micro.Nexus6 0.3.0", + "division": "roborumble", + "jar": "banshee.micro.Nexus6_0.3.0.jar", + "jar_sha256": "e4cb9d96e7487b927a54b89221c2ee262ce514759f3960670b9aa95ff6dbaecc", + "key": "roborumble/banshee.micro.Nexus6_0.3.0.jar", + "kind": "robot" + }, + "latest_observation": "adcebd2fb3e2312d", + "observations": [ + { + "classic": { + "elapsed": 2.5, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 6536.0, + "scores": [ + 2916.0, + 3620.0 + ], + "selected": "banshee.micro.Nexus6 0.3.0" + }, + "completed_at": "2026-09-08T20:48:47Z", + "delta_pct": -13.0, + "id": "0cf456b6f9cb9978", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "banshee.micro.Nexus6 0.3.0", + "division": "roborumble", + "jar": "banshee.micro.Nexus6_0.3.0.jar", + "jar_sha256": "e4cb9d96e7487b927a54b89221c2ee262ce514759f3960670b9aa95ff6dbaecc", + "key": "roborumble/banshee.micro.Nexus6_0.3.0.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "elapsed": 14.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 5689.0, + "scores": [ + 3295.0, + 2394.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 2.7, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 6694.0, + "scores": [ + 3093.0, + 3601.0 + ], + "selected": "banshee.micro.Nexus6 0.3.0" + }, + "completed_at": "2026-09-11T18:39:32Z", + "confirmation": null, + "delta_pct": -13.2, + "id": "adcebd2fb3e2312d", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "banshee.micro.Nexus6 0.3.0", + "division": "roborumble", + "jar": "banshee.micro.Nexus6_0.3.0.jar", + "jar_sha256": "e4cb9d96e7487b927a54b89221c2ee262ce514759f3960670b9aa95ff6dbaecc", + "key": "roborumble/banshee.micro.Nexus6_0.3.0.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 14.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5808.0, + "scores": [ + 3203.0, + 2605.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/banshee.mini.Nexus6_0.2.0.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "banshee.mini.Nexus6 0.2.0", + "division": "roborumble", + "jar": "banshee.mini.Nexus6_0.2.0.jar", + "jar_sha256": "2bb08e1c59e732361dcdee3df148534bc0dabd9d8f14147c4a583c04f1dc7a42", + "key": "roborumble/banshee.mini.Nexus6_0.2.0.jar", + "kind": "robot" + }, + "latest_observation": "0cf3d7725dede5d5", + "observations": [ + { + "classic": { + "elapsed": 3.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 5731.0, + "scores": [ + 3179.0, + 2552.0 + ], + "selected": "banshee.mini.Nexus6 0.2.0" + }, + "completed_at": "2026-09-08T20:49:13Z", + "delta_pct": 2.7, + "id": "d4cda9b611b80d04", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "banshee.mini.Nexus6 0.2.0", + "division": "roborumble", + "jar": "banshee.mini.Nexus6_0.2.0.jar", + "jar_sha256": "2bb08e1c59e732361dcdee3df148534bc0dabd9d8f14147c4a583c04f1dc7a42", + "key": "roborumble/banshee.mini.Nexus6_0.2.0.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "elapsed": 22.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 5883.0, + "scores": [ + 3324.0, + 2559.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 4.1, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5422.0, + "scores": [ + 2212.0, + 3210.0 + ], + "selected": "banshee.mini.Nexus6 0.2.0" + }, + "completed_at": "2026-09-11T18:40:02Z", + "confirmation": null, + "delta_pct": 9.1, + "id": "0cf3d7725dede5d5", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "banshee.mini.Nexus6 0.2.0", + "division": "roborumble", + "jar": "banshee.mini.Nexus6_0.2.0.jar", + "jar_sha256": "2bb08e1c59e732361dcdee3df148534bc0dabd9d8f14147c4a583c04f1dc7a42", + "key": "roborumble/banshee.mini.Nexus6_0.2.0.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 26.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5914.0, + "scores": [ + 2959.0, + 2955.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/barontrozo.BaronTrozo_1.7.6.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "barontrozo.BaronTrozo 1.7.6", + "division": "roborumble", + "jar": "barontrozo.BaronTrozo_1.7.6.jar", + "jar_sha256": "0031d364bd6cc01f74c537d9c88be09c53d7fd11999aa586480d010a77a37f3c", + "key": "roborumble/barontrozo.BaronTrozo_1.7.6.jar", + "kind": "robot" + }, + "latest_observation": "b2c5048162694f75", + "observations": [ + { + "classic": { + "elapsed": 5.3, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 5725.0, + "scores": [ + 2259.0, + 3466.0 + ], + "selected": "barontrozo.BaronTrozo 1.7.6" + }, + "completed_at": "2026-09-08T20:49:38Z", + "delta_pct": -9.3, + "id": "004179d3a54b0e5a", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "barontrozo.BaronTrozo 1.7.6", + "division": "roborumble", + "jar": "barontrozo.BaronTrozo_1.7.6.jar", + "jar_sha256": "0031d364bd6cc01f74c537d9c88be09c53d7fd11999aa586480d010a77a37f3c", + "key": "roborumble/barontrozo.BaronTrozo_1.7.6.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "elapsed": 20.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 5195.0, + "scores": [ + 2691.0, + 2504.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 6.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5878.0, + "scores": [ + 3242.0, + 2636.0 + ], + "selected": "barontrozo.BaronTrozo 1.7.6" + }, + "completed_at": "2026-09-11T18:40:35Z", + "confirmation": null, + "delta_pct": -9.5, + "id": "b2c5048162694f75", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "barontrozo.BaronTrozo 1.7.6", + "division": "roborumble", + "jar": "barontrozo.BaronTrozo_1.7.6.jar", + "jar_sha256": "0031d364bd6cc01f74c537d9c88be09c53d7fd11999aa586480d010a77a37f3c", + "key": "roborumble/barontrozo.BaronTrozo_1.7.6.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 26.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5317.0, + "scores": [ + 3192.0, + 2125.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/bayen.UbaMicro_1.4.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "bayen.UbaMicro 1.4", + "division": "roborumble", + "jar": "bayen.UbaMicro_1.4.jar", + "jar_sha256": "7691bd56732d5813079f65319f62a7bda392937bfe458528383fd2b89b1a7d11", + "key": "roborumble/bayen.UbaMicro_1.4.jar", + "kind": "robot" + }, + "latest_observation": "e3cdf960bfb9afc4", + "observations": [ + { + "classic": { + "elapsed": 2.5, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 5531.0, + "scores": [ + 2586.0, + 2945.0 + ], + "selected": "bayen.UbaMicro 1.4" + }, + "completed_at": "2026-09-08T20:51:01Z", + "delta_pct": -20.6, + "id": "26edca5dc7a5d68a", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "bayen.UbaMicro 1.4", + "division": "roborumble", + "jar": "bayen.UbaMicro_1.4.jar", + "jar_sha256": "7691bd56732d5813079f65319f62a7bda392937bfe458528383fd2b89b1a7d11", + "key": "roborumble/bayen.UbaMicro_1.4.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "elapsed": 18.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 4389.0, + "scores": [ + 2283.0, + 2106.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 2.4, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5374.0, + "scores": [ + 2400.0, + 2974.0 + ], + "selected": "bayen.UbaMicro 1.4" + }, + "completed_at": "2026-09-11T18:41:59Z", + "confirmation": null, + "delta_pct": -20.4, + "id": "e3cdf960bfb9afc4", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "bayen.UbaMicro 1.4", + "division": "roborumble", + "jar": "bayen.UbaMicro_1.4.jar", + "jar_sha256": "7691bd56732d5813079f65319f62a7bda392937bfe458528383fd2b89b1a7d11", + "key": "roborumble/bayen.UbaMicro_1.4.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 20.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 4280.0, + "scores": [ + 2586.0, + 1694.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/bayen.UbaRamLT_1.0.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "bayen.UbaRamLT 1.0", + "division": "roborumble", + "jar": "bayen.UbaRamLT_1.0.jar", + "jar_sha256": "604d19bdcfa6caa05964df927bb24e237e8f7aaa1fcbd7d13aea4e4d9b5e028b", + "key": "roborumble/bayen.UbaRamLT_1.0.jar", + "kind": "robot" + }, + "latest_observation": "34a30695ece53fb7", + "observations": [ + { + "classic": { + "elapsed": 2.2, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 10862.0, + "scores": [ + 5678.0, + 5184.0 + ], + "selected": "bayen.UbaRamLT 1.0" + }, + "completed_at": "2026-09-08T20:51:14Z", + "delta_pct": 29.8, + "id": "13b1bb4843e9815b", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "bayen.UbaRamLT 1.0", + "division": "roborumble", + "jar": "bayen.UbaRamLT_1.0.jar", + "jar_sha256": "604d19bdcfa6caa05964df927bb24e237e8f7aaa1fcbd7d13aea4e4d9b5e028b", + "key": "roborumble/bayen.UbaRamLT_1.0.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (score)", + "tank_royale": { + "elapsed": 10.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 14098.0, + "scores": [ + 7311.0, + 6787.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 2.1, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 10847.0, + "scores": [ + 5583.0, + 5264.0 + ], + "selected": "bayen.UbaRamLT 1.0" + }, + "completed_at": "2026-09-11T18:42:12Z", + "confirmation": null, + "delta_pct": 34.5, + "id": "34a30695ece53fb7", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "bayen.UbaRamLT 1.0", + "division": "roborumble", + "jar": "bayen.UbaRamLT_1.0.jar", + "jar_sha256": "604d19bdcfa6caa05964df927bb24e237e8f7aaa1fcbd7d13aea4e4d9b5e028b", + "key": "roborumble/bayen.UbaRamLT_1.0.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (score)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 10.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 14594.0, + "scores": [ + 7754.0, + 6840.0 + ], + "skipped": null + } + } + ], + "status": "score-review" + }, + "roborumble/bayen.nano.Squirrel_0.2.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "bayen.nano.Squirrel 0.2", + "division": "roborumble", + "jar": "bayen.nano.Squirrel_0.2.jar", + "jar_sha256": "5207b14349401cf529947785f203d80e0bd5d21c2e42672ef6585686caa74e7f", + "key": "roborumble/bayen.nano.Squirrel_0.2.jar", + "kind": "robot" + }, + "latest_observation": "2f9eb4f23c454774", + "observations": [ + { + "classic": { + "elapsed": 2.8, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 4209.0, + "scores": [ + 2194.0, + 2015.0 + ], + "selected": "bayen.nano.Squirrel 0.2" + }, + "completed_at": "2026-09-08T20:50:00Z", + "delta_pct": -19.4, + "id": "6fcfbf55b4d8ff5c", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "bayen.nano.Squirrel 0.2", + "division": "roborumble", + "jar": "bayen.nano.Squirrel_0.2.jar", + "jar_sha256": "5207b14349401cf529947785f203d80e0bd5d21c2e42672ef6585686caa74e7f", + "key": "roborumble/bayen.nano.Squirrel_0.2.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "elapsed": 18.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 3391.0, + "scores": [ + 2033.0, + 1358.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 2.6, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 4387.0, + "scores": [ + 2905.0, + 1482.0 + ], + "selected": "bayen.nano.Squirrel 0.2" + }, + "completed_at": "2026-09-11T18:40:56Z", + "confirmation": null, + "delta_pct": -17.9, + "id": "2f9eb4f23c454774", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "bayen.nano.Squirrel 0.2", + "division": "roborumble", + "jar": "bayen.nano.Squirrel_0.2.jar", + "jar_sha256": "5207b14349401cf529947785f203d80e0bd5d21c2e42672ef6585686caa74e7f", + "key": "roborumble/bayen.nano.Squirrel_0.2.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 18.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 3602.0, + "scores": [ + 2215.0, + 1387.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/bayen.nut.Squirrel_1.621.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "bayen.nut.Squirrel 1.621", + "division": "roborumble", + "jar": "bayen.nut.Squirrel_1.621.jar", + "jar_sha256": "a5a1b82535752ee271c91cdec18f433e21dcfe1efc46ed4001bed116eeca1f76", + "key": "roborumble/bayen.nut.Squirrel_1.621.jar", + "kind": "robot" + }, + "latest_observation": "5853982276128593", + "observations": [ + { + "classic": { + "elapsed": 4.4, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 5175.0, + "scores": [ + 2188.0, + 2987.0 + ], + "selected": "bayen.nut.Squirrel 1.621" + }, + "completed_at": "2026-09-08T20:50:40Z", + "delta_pct": -100.0, + "id": "517b1c7cec309414", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "bayen.nut.Squirrel 1.621", + "division": "roborumble", + "jar": "bayen.nut.Squirrel_1.621.jar", + "jar_sha256": "a5a1b82535752ee271c91cdec18f433e21dcfe1efc46ed4001bed116eeca1f76", + "key": "roborumble/bayen.nut.Squirrel_1.621.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (score)", + "tank_royale": { + "elapsed": 36.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 0.0, + "scores": [ + 0.0, + 0.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 4.3, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5361.0, + "scores": [ + 2834.0, + 2527.0 + ], + "selected": "bayen.nut.Squirrel 1.621" + }, + "completed_at": "2026-09-11T18:41:36Z", + "confirmation": null, + "delta_pct": -100.0, + "id": "5853982276128593", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "bayen.nut.Squirrel 1.621", + "division": "roborumble", + "jar": "bayen.nut.Squirrel_1.621.jar", + "jar_sha256": "a5a1b82535752ee271c91cdec18f433e21dcfe1efc46ed4001bed116eeca1f76", + "key": "roborumble/bayen.nut.Squirrel_1.621.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (score)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 36.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 0.0, + "scores": [ + 0.0, + 0.0 + ], + "skipped": null + } + } + ], + "status": "score-review" + }, + "roborumble/bbo.RamboT_0.3.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "bbo.RamboT 0.3", + "division": "roborumble", + "jar": "bbo.RamboT_0.3.jar", + "jar_sha256": "3c933f89750dfd882f03844f5fc83ae4bf36d5a6baca855251417b4a1457e6ed", + "key": "roborumble/bbo.RamboT_0.3.jar", + "kind": "robot" + }, + "latest_observation": "aca48d105b06bcde", + "observations": [ + { + "classic": { + "elapsed": 2.5, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 9366.0, + "scores": [ + 4626.0, + 4740.0 + ], + "selected": "bbo.RamboT 0.3" + }, + "completed_at": "2026-09-08T20:51:30Z", + "delta_pct": 22.4, + "id": "df99f8a1d6c00d7e", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "bbo.RamboT 0.3", + "division": "roborumble", + "jar": "bbo.RamboT_0.3.jar", + "jar_sha256": "3c933f89750dfd882f03844f5fc83ae4bf36d5a6baca855251417b4a1457e6ed", + "key": "roborumble/bbo.RamboT_0.3.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "elapsed": 14.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 11461.0, + "scores": [ + 6133.0, + 5328.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 2.4, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 9964.0, + "scores": [ + 4863.0, + 5101.0 + ], + "selected": "bbo.RamboT 0.3" + }, + "completed_at": "2026-09-11T18:42:24Z", + "confirmation": null, + "delta_pct": 42.8, + "id": "aca48d105b06bcde", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "bbo.RamboT 0.3", + "division": "roborumble", + "jar": "bbo.RamboT_0.3.jar", + "jar_sha256": "3c933f89750dfd882f03844f5fc83ae4bf36d5a6baca855251417b4a1457e6ed", + "key": "roborumble/bbo.RamboT_0.3.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (score)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 10.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 14225.0, + "scores": [ + 7538.0, + 6687.0 + ], + "skipped": null + } + } + ], + "status": "score-review" + }, + "roborumble/bbo.TheRoof_1.4.3.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "bbo.TheRoof 1.4.3", + "division": "roborumble", + "jar": "bbo.TheRoof_1.4.3.jar", + "jar_sha256": "0d3aac41de0b798e76e684b60756f8fb8318c5c5dcf890f26ecfb8bea6d01076", + "key": "roborumble/bbo.TheRoof_1.4.3.jar", + "kind": "robot" + }, + "latest_observation": "48c972a2d69181bf", + "observations": [ + { + "classic": { + "elapsed": 2.5, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 5240.0, + "scores": [ + 2321.0, + 2919.0 + ], + "selected": "bbo.TheRoof 1.4.3" + }, + "completed_at": "2026-09-08T20:51:47Z", + "delta_pct": 4.9, + "id": "39adaf77fb8fca87", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "bbo.TheRoof 1.4.3", + "division": "roborumble", + "jar": "bbo.TheRoof_1.4.3.jar", + "jar_sha256": "0d3aac41de0b798e76e684b60756f8fb8318c5c5dcf890f26ecfb8bea6d01076", + "key": "roborumble/bbo.TheRoof_1.4.3.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "elapsed": 14.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 5495.0, + "scores": [ + 2941.0, + 2554.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 2.4, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 4988.0, + "scores": [ + 2468.0, + 2520.0 + ], + "selected": "bbo.TheRoof 1.4.3" + }, + "completed_at": "2026-09-11T18:42:43Z", + "confirmation": null, + "delta_pct": -7.1, + "id": "48c972a2d69181bf", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "bbo.TheRoof 1.4.3", + "division": "roborumble", + "jar": "bbo.TheRoof_1.4.3.jar", + "jar_sha256": "0d3aac41de0b798e76e684b60756f8fb8318c5c5dcf890f26ecfb8bea6d01076", + "key": "roborumble/bbo.TheRoof_1.4.3.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 16.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 4634.0, + "scores": [ + 2333.0, + 2301.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/benhorner.PureAggression_0.2.6.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "benhorner.PureAggression 0.2.6", + "division": "roborumble", + "jar": "benhorner.PureAggression_0.2.6.jar", + "jar_sha256": "ff9129cad35f13a68dc008ab29e71e073ea28ff77fae33dba73846e4da0e041e", + "key": "roborumble/benhorner.PureAggression_0.2.6.jar", + "kind": "robot" + }, + "latest_observation": "cda71b473b262cf3", + "observations": [ + { + "classic": { + "elapsed": 2.5, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 11194.0, + "scores": [ + 5562.0, + 5632.0 + ], + "selected": "benhorner.PureAggression 0.2.6" + }, + "completed_at": "2026-09-08T20:51:58Z", + "delta_pct": 17.0, + "id": "ca5a8e78cc56d369", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "benhorner.PureAggression 0.2.6", + "division": "roborumble", + "jar": "benhorner.PureAggression_0.2.6.jar", + "jar_sha256": "ff9129cad35f13a68dc008ab29e71e073ea28ff77fae33dba73846e4da0e041e", + "key": "roborumble/benhorner.PureAggression_0.2.6.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "elapsed": 8.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 13099.0, + "scores": [ + 6661.0, + 6438.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 2.4, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 11015.0, + "scores": [ + 5029.0, + 5986.0 + ], + "selected": "benhorner.PureAggression 0.2.6" + }, + "completed_at": "2026-09-11T18:42:56Z", + "confirmation": null, + "delta_pct": 18.0, + "id": "cda71b473b262cf3", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "benhorner.PureAggression 0.2.6", + "division": "roborumble", + "jar": "benhorner.PureAggression_0.2.6.jar", + "jar_sha256": "ff9129cad35f13a68dc008ab29e71e073ea28ff77fae33dba73846e4da0e041e", + "key": "roborumble/benhorner.PureAggression_0.2.6.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 10.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 12999.0, + "scores": [ + 6612.0, + 6387.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/bigpete.Stewie_1.0.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "bigpete.Stewie 1.0", + "division": "roborumble", + "jar": "bigpete.Stewie_1.0.jar", + "jar_sha256": "743ecaf04844e35915d24a80533652a29adaaf9539955f2178df0ef6148c481d", + "key": "roborumble/bigpete.Stewie_1.0.jar", + "kind": "robot" + }, + "latest_observation": "8d781fc673893f81", + "observations": [ + { + "classic": { + "elapsed": 2.7, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 5593.0, + "scores": [ + 2575.0, + 3018.0 + ], + "selected": "bigpete.Stewie 1.0" + }, + "completed_at": "2026-09-08T20:52:39Z", + "delta_pct": -4.9, + "id": "e8b293a979c1c0b4", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "bigpete.Stewie 1.0", + "division": "roborumble", + "jar": "bigpete.Stewie_1.0.jar", + "jar_sha256": "743ecaf04844e35915d24a80533652a29adaaf9539955f2178df0ef6148c481d", + "key": "roborumble/bigpete.Stewie_1.0.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "elapsed": 18.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 5321.0, + "scores": [ + 2839.0, + 2482.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 2.7, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5471.0, + "scores": [ + 2664.0, + 2807.0 + ], + "selected": "bigpete.Stewie 1.0" + }, + "completed_at": "2026-09-11T18:43:35Z", + "confirmation": null, + "delta_pct": -6.4, + "id": "8d781fc673893f81", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "bigpete.Stewie 1.0", + "division": "roborumble", + "jar": "bigpete.Stewie_1.0.jar", + "jar_sha256": "743ecaf04844e35915d24a80533652a29adaaf9539955f2178df0ef6148c481d", + "key": "roborumble/bigpete.Stewie_1.0.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 22.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5121.0, + "scores": [ + 2700.0, + 2421.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/bing2.Melody_1.3.1.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "bing2.Melody 1.3.1", + "division": "roborumble", + "jar": "bing2.Melody_1.3.1.jar", + "jar_sha256": "3a63316b12e61f4810fdb73e18bb068fb5bc0a78f82a2c9865be1aa22611137a", + "key": "roborumble/bing2.Melody_1.3.1.jar", + "kind": "robot" + }, + "latest_observation": "5b3b35ee945403ba", + "observations": [ + { + "classic": { + "elapsed": 3.7, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 2848.0, + "scores": [ + 1643.0, + 1205.0 + ], + "selected": "bing2.Melody 1.3.1" + }, + "completed_at": "2026-09-08T20:52:59Z", + "delta_pct": 190.3, + "id": "6d5c62b55bd1282c", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "bing2.Melody 1.3.1", + "division": "roborumble", + "jar": "bing2.Melody_1.3.1.jar", + "jar_sha256": "3a63316b12e61f4810fdb73e18bb068fb5bc0a78f82a2c9865be1aa22611137a", + "key": "roborumble/bing2.Melody_1.3.1.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (score)", + "tank_royale": { + "elapsed": 16.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 8268.0, + "scores": [ + 4299.0, + 3969.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 3.7, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 3488.0, + "scores": [ + 1496.0, + 1992.0 + ], + "selected": "bing2.Melody 1.3.1" + }, + "completed_at": "2026-09-11T18:43:55Z", + "confirmation": null, + "delta_pct": 145.3, + "id": "5b3b35ee945403ba", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "bing2.Melody 1.3.1", + "division": "roborumble", + "jar": "bing2.Melody_1.3.1.jar", + "jar_sha256": "3a63316b12e61f4810fdb73e18bb068fb5bc0a78f82a2c9865be1aa22611137a", + "key": "roborumble/bing2.Melody_1.3.1.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (score)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 16.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 8556.0, + "scores": [ + 4335.0, + 4221.0 + ], + "skipped": null + } + } + ], + "status": "score-review" + }, + "roborumble/bjl.LoneDragon_0.5.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "bjl.LoneDragon 0.5", + "division": "roborumble", + "jar": "bjl.LoneDragon_0.5.jar", + "jar_sha256": "016175c3d3f7c0522eebac3154f93c65abe35cc57bbdaee04e606f8d023e1efe", + "key": "roborumble/bjl.LoneDragon_0.5.jar", + "kind": "robot" + }, + "latest_observation": "6c6d91b59c2d4dae", + "observations": [ + { + "classic": { + "elapsed": 7.3, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 5694.0, + "scores": [ + 2412.0, + 3282.0 + ], + "selected": "bjl.LoneDragon 0.5" + }, + "completed_at": "2026-09-08T20:54:27Z", + "delta_pct": 19.1, + "id": "b407ed4b3237d3e7", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "bjl.LoneDragon 0.5", + "division": "roborumble", + "jar": "bjl.LoneDragon_0.5.jar", + "jar_sha256": "016175c3d3f7c0522eebac3154f93c65abe35cc57bbdaee04e606f8d023e1efe", + "key": "roborumble/bjl.LoneDragon_0.5.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "elapsed": 80.1, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 6781.0, + "scores": [ + 3952.0, + 2829.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 11.6, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 6347.0, + "scores": [ + 3377.0, + 2970.0 + ], + "selected": "bjl.LoneDragon 0.5" + }, + "completed_at": "2026-09-11T18:44:21Z", + "confirmation": null, + "delta_pct": 9.6, + "id": "6c6d91b59c2d4dae", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "bjl.LoneDragon 0.5", + "division": "roborumble", + "jar": "bjl.LoneDragon_0.5.jar", + "jar_sha256": "016175c3d3f7c0522eebac3154f93c65abe35cc57bbdaee04e606f8d023e1efe", + "key": "roborumble/bjl.LoneDragon_0.5.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 14.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 6956.0, + "scores": [ + 3855.0, + 3101.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/bk.Shooter_1.0.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "bk.Shooter 1.0", + "division": "roborumble", + "jar": "bk.Shooter_1.0.jar", + "jar_sha256": "0dfe57a84edd868ba0517b270c817bfdc9765139b6517fe4c7868110cf9c0e16", + "key": "roborumble/bk.Shooter_1.0.jar", + "kind": "robot" + }, + "latest_observation": "81e101672cb7f9c8", + "observations": [ + { + "classic": { + "elapsed": 3.2, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 7416.0, + "scores": [ + 3476.0, + 3940.0 + ], + "selected": "bk.Shooter 1.0" + }, + "completed_at": "2026-09-08T20:54:58Z", + "delta_pct": -25.3, + "id": "17eb9124acd74e55", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "bk.Shooter 1.0", + "division": "roborumble", + "jar": "bk.Shooter_1.0.jar", + "jar_sha256": "0dfe57a84edd868ba0517b270c817bfdc9765139b6517fe4c7868110cf9c0e16", + "key": "roborumble/bk.Shooter_1.0.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (score)", + "tank_royale": { + "elapsed": 28.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 5541.0, + "scores": [ + 2915.0, + 2626.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 2.5, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 7454.0, + "scores": [ + 4048.0, + 3406.0 + ], + "selected": "bk.Shooter 1.0" + }, + "completed_at": "2026-09-11T18:44:52Z", + "confirmation": null, + "delta_pct": -26.6, + "id": "81e101672cb7f9c8", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "bk.Shooter 1.0", + "division": "roborumble", + "jar": "bk.Shooter_1.0.jar", + "jar_sha256": "0dfe57a84edd868ba0517b270c817bfdc9765139b6517fe4c7868110cf9c0e16", + "key": "roborumble/bk.Shooter_1.0.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (score)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 28.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5469.0, + "scores": [ + 3334.0, + 2135.0 + ], + "skipped": null + } + } + ], + "status": "score-review" + }, + "roborumble/blir.micro.blixi.Blixi_1.2.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "blir.micro.blixi.Blixi 1.2", + "division": "roborumble", + "jar": "blir.micro.blixi.Blixi_1.2.jar", + "jar_sha256": "939340a6e589c7bd36ea58fb12018f4f4ee512bbaf8264c0fee5d706e2d6325b", + "key": "roborumble/blir.micro.blixi.Blixi_1.2.jar", + "kind": "robot" + }, + "latest_observation": "6e0ffccdcd38fada", + "observations": [ + { + "classic": { + "elapsed": 5.2, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 6468.0, + "scores": [ + 1515.0, + 4953.0 + ], + "selected": "blir.micro.blixi.Blixi 1.2" + }, + "completed_at": "2026-09-08T20:55:40Z", + "delta_pct": -44.5, + "id": "32ac2de21087f5bd", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "blir.micro.blixi.Blixi 1.2", + "division": "roborumble", + "jar": "blir.micro.blixi.Blixi_1.2.jar", + "jar_sha256": "939340a6e589c7bd36ea58fb12018f4f4ee512bbaf8264c0fee5d706e2d6325b", + "key": "roborumble/blir.micro.blixi.Blixi_1.2.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (score)", + "tank_royale": { + "elapsed": 36.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 3589.0, + "scores": [ + 1820.0, + 1769.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 5.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 4455.0, + "scores": [ + 2514.0, + 1941.0 + ], + "selected": "blir.micro.blixi.Blixi 1.2" + }, + "completed_at": "2026-09-11T18:45:32Z", + "confirmation": null, + "delta_pct": -1.9, + "id": "6e0ffccdcd38fada", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "blir.micro.blixi.Blixi 1.2", + "division": "roborumble", + "jar": "blir.micro.blixi.Blixi_1.2.jar", + "jar_sha256": "939340a6e589c7bd36ea58fb12018f4f4ee512bbaf8264c0fee5d706e2d6325b", + "key": "roborumble/blir.micro.blixi.Blixi_1.2.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 34.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 4372.0, + "scores": [ + 2368.0, + 2004.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/blir.mini.oops.Splooshlu_2.0.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "blir.mini.oops.Splooshlu 2.0", + "division": "roborumble", + "jar": "blir.mini.oops.Splooshlu_2.0.jar", + "jar_sha256": "43d728428624085e09e6bd3fa34ae9ed864b4d056959c207b3daa20c0ad6e42b", + "key": "roborumble/blir.mini.oops.Splooshlu_2.0.jar", + "kind": "robot" + }, + "latest_observation": "1b2a4d6c4330ef36", + "observations": [ + { + "classic": { + "elapsed": 4.1, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 5726.0, + "scores": [ + 2882.0, + 2844.0 + ], + "selected": "blir.mini.oops.Splooshlu 2.0" + }, + "completed_at": "2026-09-08T20:56:40Z", + "delta_pct": -19.6, + "id": "9d2209ef822252f0", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "blir.mini.oops.Splooshlu 2.0", + "division": "roborumble", + "jar": "blir.mini.oops.Splooshlu_2.0.jar", + "jar_sha256": "43d728428624085e09e6bd3fa34ae9ed864b4d056959c207b3daa20c0ad6e42b", + "key": "roborumble/blir.mini.oops.Splooshlu_2.0.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "elapsed": 56.1, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 4604.0, + "scores": [ + 2341.0, + 2263.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 3.5, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5482.0, + "scores": [ + 3026.0, + 2456.0 + ], + "selected": "blir.mini.oops.Splooshlu 2.0" + }, + "completed_at": "2026-09-11T18:46:17Z", + "confirmation": null, + "delta_pct": -16.1, + "id": "1b2a4d6c4330ef36", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "blir.mini.oops.Splooshlu 2.0", + "division": "roborumble", + "jar": "blir.mini.oops.Splooshlu_2.0.jar", + "jar_sha256": "43d728428624085e09e6bd3fa34ae9ed864b4d056959c207b3daa20c0ad6e42b", + "key": "roborumble/blir.mini.oops.Splooshlu_2.0.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 42.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 4597.0, + "scores": [ + 2407.0, + 2190.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/blir.nano.Bruce_R1.0.0.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "blir.nano.Bruce R1.0.0", + "division": "roborumble", + "jar": "blir.nano.Bruce_R1.0.0.jar", + "jar_sha256": "380d1895fca7181874921c6b8735c9659ea3cb6e5d35d42799bab523dfdd1bae", + "key": "roborumble/blir.nano.Bruce_R1.0.0.jar", + "kind": "robot" + }, + "latest_observation": "1842fd1571b0c43b", + "observations": [ + { + "classic": { + "elapsed": 2.4, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 12737.0, + "scores": [ + 6532.0, + 6205.0 + ], + "selected": "blir.nano.Bruce R1.0.0" + }, + "completed_at": "2026-09-08T20:56:55Z", + "delta_pct": -3.5, + "id": "e98608d4efb99503", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "blir.nano.Bruce R1.0.0", + "division": "roborumble", + "jar": "blir.nano.Bruce_R1.0.0.jar", + "jar_sha256": "380d1895fca7181874921c6b8735c9659ea3cb6e5d35d42799bab523dfdd1bae", + "key": "roborumble/blir.nano.Bruce_R1.0.0.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "elapsed": 12.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 12287.0, + "scores": [ + 6420.0, + 5867.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 2.2, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 12629.0, + "scores": [ + 6405.0, + 6224.0 + ], + "selected": "blir.nano.Bruce R1.0.0" + }, + "completed_at": "2026-09-11T18:46:30Z", + "confirmation": null, + "delta_pct": 5.8, + "id": "1842fd1571b0c43b", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "blir.nano.Bruce R1.0.0", + "division": "roborumble", + "jar": "blir.nano.Bruce_R1.0.0.jar", + "jar_sha256": "380d1895fca7181874921c6b8735c9659ea3cb6e5d35d42799bab523dfdd1bae", + "key": "roborumble/blir.nano.Bruce_R1.0.0.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 10.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 13356.0, + "scores": [ + 6722.0, + 6634.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/blir.nano.Cabbage_R1.0.1.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "blir.nano.Cabbage R1.0.1", + "division": "roborumble", + "jar": "blir.nano.Cabbage_R1.0.1.jar", + "jar_sha256": "6048d93ca6c18440d2442930806a4edb783d6bc3e7b019f324fad7aebaccb222", + "key": "roborumble/blir.nano.Cabbage_R1.0.1.jar", + "kind": "robot" + }, + "latest_observation": "242021032b8974e3", + "observations": [ + { + "classic": { + "elapsed": 3.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 1399.0, + "scores": [ + 510.0, + 889.0 + ], + "selected": "blir.nano.Cabbage R1.0.1" + }, + "completed_at": "2026-09-08T20:57:18Z", + "delta_pct": 111.9, + "id": "14e36192003c6140", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "blir.nano.Cabbage R1.0.1", + "division": "roborumble", + "jar": "blir.nano.Cabbage_R1.0.1.jar", + "jar_sha256": "6048d93ca6c18440d2442930806a4edb783d6bc3e7b019f324fad7aebaccb222", + "key": "roborumble/blir.nano.Cabbage_R1.0.1.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (score)", + "tank_royale": { + "elapsed": 20.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 2965.0, + "scores": [ + 1677.0, + 1288.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 2.8, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 1441.0, + "scores": [ + 730.0, + 711.0 + ], + "selected": "blir.nano.Cabbage R1.0.1" + }, + "completed_at": "2026-09-11T18:46:53Z", + "confirmation": null, + "delta_pct": 84.3, + "id": "242021032b8974e3", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "blir.nano.Cabbage R1.0.1", + "division": "roborumble", + "jar": "blir.nano.Cabbage_R1.0.1.jar", + "jar_sha256": "6048d93ca6c18440d2442930806a4edb783d6bc3e7b019f324fad7aebaccb222", + "key": "roborumble/blir.nano.Cabbage_R1.0.1.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (score)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 20.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 2656.0, + "scores": [ + 1350.0, + 1306.0 + ], + "skipped": null + } + } + ], + "status": "score-review" + }, + "roborumble/blir.nano.inch.Inchworm_1.0.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "blir.nano.inch.Inchworm 1.0", + "division": "roborumble", + "jar": "blir.nano.inch.Inchworm_1.0.jar", + "jar_sha256": "168c6b33a9c90cd70b268369ed7aedb8773e1f04c3b99382fcd2cf98d5b49bd4", + "key": "roborumble/blir.nano.inch.Inchworm_1.0.jar", + "kind": "robot" + }, + "latest_observation": "7f8e4239129f32f8", + "observations": [ + { + "classic": { + "elapsed": 2.7, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 7657.0, + "scores": [ + 3538.0, + 4119.0 + ], + "selected": "blir.nano.inch.Inchworm 1.0" + }, + "completed_at": "2026-09-08T20:57:41Z", + "delta_pct": -20.5, + "id": "7bd4cdf08768932e", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "blir.nano.inch.Inchworm 1.0", + "division": "roborumble", + "jar": "blir.nano.inch.Inchworm_1.0.jar", + "jar_sha256": "168c6b33a9c90cd70b268369ed7aedb8773e1f04c3b99382fcd2cf98d5b49bd4", + "key": "roborumble/blir.nano.inch.Inchworm_1.0.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "elapsed": 20.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 6088.0, + "scores": [ + 3161.0, + 2927.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 2.7, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 7710.0, + "scores": [ + 3950.0, + 3760.0 + ], + "selected": "blir.nano.inch.Inchworm 1.0" + }, + "completed_at": "2026-09-11T18:47:16Z", + "confirmation": null, + "delta_pct": -23.5, + "id": "7f8e4239129f32f8", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "blir.nano.inch.Inchworm 1.0", + "division": "roborumble", + "jar": "blir.nano.inch.Inchworm_1.0.jar", + "jar_sha256": "168c6b33a9c90cd70b268369ed7aedb8773e1f04c3b99382fcd2cf98d5b49bd4", + "key": "roborumble/blir.nano.inch.Inchworm_1.0.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 20.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5895.0, + "scores": [ + 3151.0, + 2744.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/blr.Chicken001_0.1.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "blr.Chicken001 0.1", + "division": "roborumble", + "jar": "blr.Chicken001_0.1.jar", + "jar_sha256": "b60dc3905b4861b427dae9e16d964f3978947773e5f9c3e5ae32f7c4182f976e", + "key": "roborumble/blr.Chicken001_0.1.jar", + "kind": "robot" + }, + "latest_observation": "b36bd24ea7cdd125", + "observations": [ + { + "classic": { + "elapsed": 2.6, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 10637.0, + "scores": [ + 5565.0, + 5072.0 + ], + "selected": "blr.Chicken001 0.1" + }, + "completed_at": "2026-09-08T20:58:00Z", + "delta_pct": -5.1, + "id": "fa1b7716484381ca", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "blr.Chicken001 0.1", + "division": "roborumble", + "jar": "blr.Chicken001_0.1.jar", + "jar_sha256": "b60dc3905b4861b427dae9e16d964f3978947773e5f9c3e5ae32f7c4182f976e", + "key": "roborumble/blr.Chicken001_0.1.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "elapsed": 16.1, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 10090.0, + "scores": [ + 5323.0, + 4767.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 2.5, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 10544.0, + "scores": [ + 5272.0, + 5272.0 + ], + "selected": "blr.Chicken001 0.1" + }, + "completed_at": "2026-09-11T18:47:37Z", + "confirmation": null, + "delta_pct": -4.8, + "id": "b36bd24ea7cdd125", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "blr.Chicken001 0.1", + "division": "roborumble", + "jar": "blr.Chicken001_0.1.jar", + "jar_sha256": "b60dc3905b4861b427dae9e16d964f3978947773e5f9c3e5ae32f7c4182f976e", + "key": "roborumble/blr.Chicken001_0.1.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 18.1, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 10034.0, + "scores": [ + 5180.0, + 4854.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/bndl.LostLion_1.2.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "bndl.LostLion 1.2", + "division": "roborumble", + "jar": "bndl.LostLion_1.2.jar", + "jar_sha256": "991c707bd0af71a46d5fc34e4a34b0df2267f0ffc06567cdfaebfbea87f80cc2", + "key": "roborumble/bndl.LostLion_1.2.jar", + "kind": "robot" + }, + "latest_observation": "fad1a48dcb20e058", + "observations": [ + { + "classic": { + "elapsed": 17.4, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 6370.0, + "scores": [ + 3271.0, + 3099.0 + ], + "selected": "bndl.LostLion 1.2" + }, + "completed_at": "2026-09-08T20:58:46Z", + "delta_pct": -6.4, + "id": "1a29913b8f87ac3a", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "bndl.LostLion 1.2", + "division": "roborumble", + "jar": "bndl.LostLion_1.2.jar", + "jar_sha256": "991c707bd0af71a46d5fc34e4a34b0df2267f0ffc06567cdfaebfbea87f80cc2", + "key": "roborumble/bndl.LostLion_1.2.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "elapsed": 28.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 5961.0, + "scores": [ + 3239.0, + 2722.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 18.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 6417.0, + "scores": [ + 2964.0, + 3453.0 + ], + "selected": "bndl.LostLion 1.2" + }, + "completed_at": "2026-09-11T18:48:21Z", + "confirmation": null, + "delta_pct": -4.2, + "id": "fad1a48dcb20e058", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "bndl.LostLion 1.2", + "division": "roborumble", + "jar": "bndl.LostLion_1.2.jar", + "jar_sha256": "991c707bd0af71a46d5fc34e4a34b0df2267f0ffc06567cdfaebfbea87f80cc2", + "key": "roborumble/bndl.LostLion_1.2.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 26.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 6148.0, + "scores": [ + 3165.0, + 2983.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/boe.Minerva_0.80.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "boe.Minerva 0.80", + "division": "roborumble", + "jar": "boe.Minerva_0.80.jar", + "jar_sha256": "79dd5b1ad699fe82fc423f2a35d3264fd460c787fef7c528a9f897d88365a5d6", + "key": "roborumble/boe.Minerva_0.80.jar", + "kind": "robot" + }, + "latest_observation": "06462108430f485c", + "observations": [ + { + "classic": { + "elapsed": 9.6, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 6318.0, + "scores": [ + 3360.0, + 2958.0 + ], + "selected": "boe.Minerva 0.80" + }, + "completed_at": "2026-09-08T20:59:20Z", + "delta_pct": -9.3, + "id": "8205a7ec0f3730f8", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "boe.Minerva 0.80", + "division": "roborumble", + "jar": "boe.Minerva_0.80.jar", + "jar_sha256": "79dd5b1ad699fe82fc423f2a35d3264fd460c787fef7c528a9f897d88365a5d6", + "key": "roborumble/boe.Minerva_0.80.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "elapsed": 24.2, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 5732.0, + "scores": [ + 3019.0, + 2713.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 12.8, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 6261.0, + "scores": [ + 3174.0, + 3087.0 + ], + "selected": "boe.Minerva 0.80" + }, + "completed_at": "2026-09-11T18:48:47Z", + "confirmation": null, + "delta_pct": null, + "id": "06462108430f485c", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "boe.Minerva 0.80", + "division": "roborumble", + "jar": "boe.Minerva_0.80.jar", + "jar_sha256": "79dd5b1ad699fe82fc423f2a35d3264fd460c787fef7c528a9f897d88365a5d6", + "key": "roborumble/boe.Minerva_0.80.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (outcome)", + "tank_royale": { + "bridge_only_signatures": [ + [ + "java.lang.ArrayIndexOutOfBoundsException", + "boe.Minerva.antiGravCalculate" + ] + ], + "elapsed": 12.2, + "error_count": 3, + "error_signatures": [ + { + "exception": "java.lang.ArrayIndexOutOfBoundsException", + "origin": "boe.Minerva.antiGravCalculate" + } + ], + "errors": [ + "HARNESS: worker produced no result (exit code -1)", + "java.lang.ArrayIndexOutOfBoundsException: Index 10 out of bounds for length 10", + "java.lang.ArrayIndexOutOfBoundsException: Index 10 out of bounds for length 10" + ], + "has_log": true, + "ok": false, + "score": null, + "scores": [], + "skipped": null + } + } + ], + "status": "DISCREPANCY (outcome)" + }, + "roborumble/bons.NanoStalker_1.2.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "bons.NanoStalker 1.2", + "division": "roborumble", + "jar": "bons.NanoStalker_1.2.jar", + "jar_sha256": "25169213aa301260dbe320aab5011618b95dd7283102fc6272cdd2e5afdc0936", + "key": "roborumble/bons.NanoStalker_1.2.jar", + "kind": "robot" + }, + "latest_observation": "7fa967a48b2bdaa3", + "observations": [ + { + "classic": { + "elapsed": 2.4, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 7639.0, + "scores": [ + 3715.0, + 3924.0 + ], + "selected": "bons.NanoStalker 1.2" + }, + "completed_at": "2026-09-08T20:59:33Z", + "delta_pct": -62.6, + "id": "73559040c308ecc0", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "bons.NanoStalker 1.2", + "division": "roborumble", + "jar": "bons.NanoStalker_1.2.jar", + "jar_sha256": "25169213aa301260dbe320aab5011618b95dd7283102fc6272cdd2e5afdc0936", + "key": "roborumble/bons.NanoStalker_1.2.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (score)", + "tank_royale": { + "elapsed": 10.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 2859.0, + "scores": [ + 1527.0, + 1332.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 2.6, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 7571.0, + "scores": [ + 4013.0, + 3558.0 + ], + "selected": "bons.NanoStalker 1.2" + }, + "completed_at": "2026-09-11T18:49:00Z", + "confirmation": null, + "delta_pct": -62.3, + "id": "7fa967a48b2bdaa3", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "bons.NanoStalker 1.2", + "division": "roborumble", + "jar": "bons.NanoStalker_1.2.jar", + "jar_sha256": "25169213aa301260dbe320aab5011618b95dd7283102fc6272cdd2e5afdc0936", + "key": "roborumble/bons.NanoStalker_1.2.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (score)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 10.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 2857.0, + "scores": [ + 1495.0, + 1362.0 + ], + "skipped": null + } + } + ], + "status": "score-review" + }, + "roborumble/bots.UberBot_1.2c.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "bots.UberBot 1.2c", + "division": "roborumble", + "jar": "bots.UberBot_1.2c.jar", + "jar_sha256": "5406ba168c88b8e114b607bddd2959d76d4601740fe12236d5066d8a6bfcb556", + "key": "roborumble/bots.UberBot_1.2c.jar", + "kind": "robot" + }, + "latest_observation": "72dbc427c019d828", + "observations": [ + { + "classic": { + "elapsed": 2.7, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 6154.0, + "scores": [ + 2720.0, + 3434.0 + ], + "selected": "bots.UberBot 1.2c" + }, + "completed_at": "2026-09-08T20:59:58Z", + "delta_pct": -8.6, + "id": "258737685abd4504", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "bots.UberBot 1.2c", + "division": "roborumble", + "jar": "bots.UberBot_1.2c.jar", + "jar_sha256": "5406ba168c88b8e114b607bddd2959d76d4601740fe12236d5066d8a6bfcb556", + "key": "roborumble/bots.UberBot_1.2c.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "elapsed": 22.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 5625.0, + "scores": [ + 3120.0, + 2505.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 2.9, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5937.0, + "scores": [ + 2744.0, + 3193.0 + ], + "selected": "bots.UberBot 1.2c" + }, + "completed_at": "2026-09-11T18:49:23Z", + "confirmation": null, + "delta_pct": -14.2, + "id": "72dbc427c019d828", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "bots.UberBot 1.2c", + "division": "roborumble", + "jar": "bots.UberBot_1.2c.jar", + "jar_sha256": "5406ba168c88b8e114b607bddd2959d76d4601740fe12236d5066d8a6bfcb556", + "key": "roborumble/bots.UberBot_1.2c.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 20.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5094.0, + "scores": [ + 3113.0, + 1981.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/bots.UnterBot_1.0.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "bots.UnterBot 1.0", + "division": "roborumble", + "jar": "bots.UnterBot_1.0.jar", + "jar_sha256": "7c24869acf14c596bca3c7eeb85b0dbab99b99e470f5df1bb886c4d101f1e66d", + "key": "roborumble/bots.UnterBot_1.0.jar", + "kind": "robot" + }, + "latest_observation": "0e8217b8963172d1", + "observations": [ + { + "classic": { + "elapsed": 2.3, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 7852.0, + "scores": [ + 4216.0, + 3636.0 + ], + "selected": "bots.UnterBot 1.0" + }, + "completed_at": "2026-09-08T21:00:22Z", + "delta_pct": -45.5, + "id": "a57b9c4d5a68c0e3", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "bots.UnterBot 1.0", + "division": "roborumble", + "jar": "bots.UnterBot_1.0.jar", + "jar_sha256": "7c24869acf14c596bca3c7eeb85b0dbab99b99e470f5df1bb886c4d101f1e66d", + "key": "roborumble/bots.UnterBot_1.0.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (score)", + "tank_royale": { + "elapsed": 22.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 4279.0, + "scores": [ + 2713.0, + 1566.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 2.4, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 7869.0, + "scores": [ + 4503.0, + 3366.0 + ], + "selected": "bots.UnterBot 1.0" + }, + "completed_at": "2026-09-11T18:49:44Z", + "confirmation": null, + "delta_pct": -23.2, + "id": "0e8217b8963172d1", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "bots.UnterBot 1.0", + "division": "roborumble", + "jar": "bots.UnterBot_1.0.jar", + "jar_sha256": "7c24869acf14c596bca3c7eeb85b0dbab99b99e470f5df1bb886c4d101f1e66d", + "key": "roborumble/bots.UnterBot_1.0.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 18.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 6040.0, + "scores": [ + 3128.0, + 2912.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/bots.UnterExBot_1.0.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "bots.UnterExBot 1.0", + "division": "roborumble", + "jar": "bots.UnterExBot_1.0.jar", + "jar_sha256": "773aa3a9953e440b5e5464c54b5efbd269a15b17ab05f301d3401d16c263d25b", + "key": "roborumble/bots.UnterExBot_1.0.jar", + "kind": "robot" + }, + "latest_observation": "b21f0e7cab8945cc", + "observations": [ + { + "classic": { + "elapsed": 2.3, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 9251.0, + "scores": [ + 4666.0, + 4585.0 + ], + "selected": "bots.UnterExBot 1.0" + }, + "completed_at": "2026-09-08T21:00:45Z", + "delta_pct": -47.8, + "id": "0eeef9f8e9a05217", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "bots.UnterExBot 1.0", + "division": "roborumble", + "jar": "bots.UnterExBot_1.0.jar", + "jar_sha256": "773aa3a9953e440b5e5464c54b5efbd269a15b17ab05f301d3401d16c263d25b", + "key": "roborumble/bots.UnterExBot_1.0.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (score)", + "tank_royale": { + "elapsed": 20.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 4833.0, + "scores": [ + 2438.0, + 2395.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 2.5, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 8855.0, + "scores": [ + 4435.0, + 4420.0 + ], + "selected": "bots.UnterExBot 1.0" + }, + "completed_at": "2026-09-11T18:50:02Z", + "confirmation": null, + "delta_pct": -24.7, + "id": "b21f0e7cab8945cc", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "bots.UnterExBot 1.0", + "division": "roborumble", + "jar": "bots.UnterExBot_1.0.jar", + "jar_sha256": "773aa3a9953e440b5e5464c54b5efbd269a15b17ab05f301d3401d16c263d25b", + "key": "roborumble/bots.UnterExBot_1.0.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 16.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 6666.0, + "scores": [ + 3837.0, + 2829.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/bp.Kuma_1.0.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "bp.Kuma 1.0", + "division": "roborumble", + "jar": "bp.Kuma_1.0.jar", + "jar_sha256": "2646c78e817ac3701fbd23306259844fdea377b82ac7748f8d3cf6ea36b4825e", + "key": "roborumble/bp.Kuma_1.0.jar", + "kind": "robot" + }, + "latest_observation": "85f7f94a56f0d1c2", + "observations": [ + { + "classic": { + "elapsed": 2.7, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 3008.0, + "scores": [ + 1726.0, + 1282.0 + ], + "selected": "bp.Kuma 1.0" + }, + "completed_at": "2026-09-08T21:01:06Z", + "delta_pct": 91.6, + "id": "a5efd143dba4df0f", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "bp.Kuma 1.0", + "division": "roborumble", + "jar": "bp.Kuma_1.0.jar", + "jar_sha256": "2646c78e817ac3701fbd23306259844fdea377b82ac7748f8d3cf6ea36b4825e", + "key": "roborumble/bp.Kuma_1.0.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (score)", + "tank_royale": { + "elapsed": 18.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 5762.0, + "scores": [ + 3303.0, + 2459.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 2.8, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 3517.0, + "scores": [ + 1964.0, + 1553.0 + ], + "selected": "bp.Kuma 1.0" + }, + "completed_at": "2026-09-11T18:50:22Z", + "confirmation": null, + "delta_pct": 84.3, + "id": "85f7f94a56f0d1c2", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "bp.Kuma 1.0", + "division": "roborumble", + "jar": "bp.Kuma_1.0.jar", + "jar_sha256": "2646c78e817ac3701fbd23306259844fdea377b82ac7748f8d3cf6ea36b4825e", + "key": "roborumble/bp.Kuma_1.0.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (score)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 16.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 6482.0, + "scores": [ + 3428.0, + 3054.0 + ], + "skipped": null + } + } + ], + "status": "score-review" + }, + "roborumble/braaropolis.Abot_1.0.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "braaropolis.Abot 1.0", + "division": "roborumble", + "jar": "braaropolis.Abot_1.0.jar", + "jar_sha256": "d8e61877edd6f98d13b8c78bce6fb1fa8930834ce8414b95f2f0c46f7dd9a8be", + "key": "roborumble/braaropolis.Abot_1.0.jar", + "kind": "robot" + }, + "latest_observation": "a2df55df8d971459", + "observations": [ + { + "classic": { + "elapsed": 2.6, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 4862.0, + "scores": [ + 1751.0, + 3111.0 + ], + "selected": "braaropolis.Abot 1.0" + }, + "completed_at": "2026-09-08T21:01:31Z", + "delta_pct": -26.1, + "id": "36610aff4c63ca29", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "braaropolis.Abot 1.0", + "division": "roborumble", + "jar": "braaropolis.Abot_1.0.jar", + "jar_sha256": "d8e61877edd6f98d13b8c78bce6fb1fa8930834ce8414b95f2f0c46f7dd9a8be", + "key": "roborumble/braaropolis.Abot_1.0.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (score)", + "tank_royale": { + "elapsed": 22.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 3594.0, + "scores": [ + 1866.0, + 1728.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 2.6, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 4871.0, + "scores": [ + 2383.0, + 2488.0 + ], + "selected": "braaropolis.Abot 1.0" + }, + "completed_at": "2026-09-11T18:50:45Z", + "confirmation": null, + "delta_pct": -1.7, + "id": "a2df55df8d971459", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "braaropolis.Abot 1.0", + "division": "roborumble", + "jar": "braaropolis.Abot_1.0.jar", + "jar_sha256": "d8e61877edd6f98d13b8c78bce6fb1fa8930834ce8414b95f2f0c46f7dd9a8be", + "key": "roborumble/braaropolis.Abot_1.0.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 20.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 4790.0, + "scores": [ + 2507.0, + 2283.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/brainfade.Fallen_0.63.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "brainfade.Fallen 0.63", + "division": "roborumble", + "jar": "brainfade.Fallen_0.63.jar", + "jar_sha256": "7affe8566b9200ec51bc97f81bd7e3a98d5e9f2c011c70bd3331754bfc832373", + "key": "roborumble/brainfade.Fallen_0.63.jar", + "kind": "robot" + }, + "latest_observation": "e28628d85d0c4a56", + "observations": [ + { + "classic": { + "elapsed": 2.9, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 5630.0, + "scores": [ + 2323.0, + 3307.0 + ], + "selected": "brainfade.Fallen 0.63" + }, + "completed_at": "2026-09-08T21:01:54Z", + "delta_pct": -12.6, + "id": "cfd838bd46fc2f16", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "brainfade.Fallen 0.63", + "division": "roborumble", + "jar": "brainfade.Fallen_0.63.jar", + "jar_sha256": "7affe8566b9200ec51bc97f81bd7e3a98d5e9f2c011c70bd3331754bfc832373", + "key": "roborumble/brainfade.Fallen_0.63.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "elapsed": 20.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 4918.0, + "scores": [ + 3163.0, + 1755.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 2.9, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5400.0, + "scores": [ + 2916.0, + 2484.0 + ], + "selected": "brainfade.Fallen 0.63" + }, + "completed_at": "2026-09-11T18:51:08Z", + "confirmation": null, + "delta_pct": -10.3, + "id": "e28628d85d0c4a56", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "brainfade.Fallen 0.63", + "division": "roborumble", + "jar": "brainfade.Fallen_0.63.jar", + "jar_sha256": "7affe8566b9200ec51bc97f81bd7e3a98d5e9f2c011c70bd3331754bfc832373", + "key": "roborumble/brainfade.Fallen_0.63.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 20.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 4842.0, + "scores": [ + 2932.0, + 1910.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/brainfade.melee.Dusk_0.44.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "brainfade.melee.Dusk 0.44", + "division": "roborumble", + "jar": "brainfade.melee.Dusk_0.44.jar", + "jar_sha256": "a9ebabb60c05453723be3680d718a93a6b212ecf13d3fc408b4e2ab88f5d853b", + "key": "roborumble/brainfade.melee.Dusk_0.44.jar", + "kind": "robot" + }, + "latest_observation": "f8ee020df517510f", + "observations": [ + { + "classic": { + "elapsed": 3.5, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 5163.0, + "scores": [ + 2822.0, + 2341.0 + ], + "selected": "brainfade.melee.Dusk 0.44" + }, + "completed_at": "2026-09-08T21:02:28Z", + "delta_pct": -1.8, + "id": "c24d76413b604bbc", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "brainfade.melee.Dusk 0.44", + "division": "roborumble", + "jar": "brainfade.melee.Dusk_0.44.jar", + "jar_sha256": "a9ebabb60c05453723be3680d718a93a6b212ecf13d3fc408b4e2ab88f5d853b", + "key": "roborumble/brainfade.melee.Dusk_0.44.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "elapsed": 30.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 5071.0, + "scores": [ + 2645.0, + 2426.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 3.6, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5037.0, + "scores": [ + 2680.0, + 2357.0 + ], + "selected": "brainfade.melee.Dusk 0.44" + }, + "completed_at": "2026-09-11T18:51:46Z", + "confirmation": null, + "delta_pct": -0.7, + "id": "f8ee020df517510f", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "brainfade.melee.Dusk 0.44", + "division": "roborumble", + "jar": "brainfade.melee.Dusk_0.44.jar", + "jar_sha256": "a9ebabb60c05453723be3680d718a93a6b212ecf13d3fc408b4e2ab88f5d853b", + "key": "roborumble/brainfade.melee.Dusk_0.44.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 34.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5000.0, + "scores": [ + 2578.0, + 2422.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/bts.mega.Gnarly_1.4.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "bts.mega.Gnarly 1.4", + "division": "roborumble", + "jar": "bts.mega.Gnarly_1.4.jar", + "jar_sha256": "77d1f463511e268b1a020f8571fe932a03760447e30067846a3c1d6090368f81", + "key": "roborumble/bts.mega.Gnarly_1.4.jar", + "kind": "robot" + }, + "latest_observation": "867182c105c432de", + "observations": [ + { + "classic": { + "elapsed": 2.8, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 8473.0, + "scores": [ + 4405.0, + 4068.0 + ], + "selected": "bts.mega.Gnarly 1.4" + }, + "completed_at": "2026-09-08T21:02:45Z", + "delta_pct": 2.3, + "id": "ea1a4d3c629039e8", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "bts.mega.Gnarly 1.4", + "division": "roborumble", + "jar": "bts.mega.Gnarly_1.4.jar", + "jar_sha256": "77d1f463511e268b1a020f8571fe932a03760447e30067846a3c1d6090368f81", + "key": "roborumble/bts.mega.Gnarly_1.4.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "elapsed": 14.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 8671.0, + "scores": [ + 4642.0, + 4029.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 2.9, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 8671.0, + "scores": [ + 4166.0, + 4505.0 + ], + "selected": "bts.mega.Gnarly 1.4" + }, + "completed_at": "2026-09-11T18:52:03Z", + "confirmation": null, + "delta_pct": -1.4, + "id": "867182c105c432de", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "bts.mega.Gnarly 1.4", + "division": "roborumble", + "jar": "bts.mega.Gnarly_1.4.jar", + "jar_sha256": "77d1f463511e268b1a020f8571fe932a03760447e30067846a3c1d6090368f81", + "key": "roborumble/bts.mega.Gnarly_1.4.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 14.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 8552.0, + "scores": [ + 4518.0, + 4034.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/bts.wiki.RipCurl_0.9b.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "bts.wiki.RipCurl 0.9b", + "division": "roborumble", + "jar": "bts.wiki.RipCurl_0.9b.jar", + "jar_sha256": "1f9a52c3ea49c22e5755defaaf43f355801169537f7a9636d1708bd00064e4c9", + "key": "roborumble/bts.wiki.RipCurl_0.9b.jar", + "kind": "robot" + }, + "latest_observation": "1a37177249ebafea", + "observations": [ + { + "classic": { + "elapsed": 3.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 5000.0, + "scores": [ + 1871.0, + 3129.0 + ], + "selected": "bts.wiki.RipCurl 0.9b" + }, + "completed_at": "2026-09-08T21:02:55Z", + "delta_pct": null, + "id": "0b71b2a50f905e18", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "bts.wiki.RipCurl 0.9b", + "division": "roborumble", + "jar": "bts.wiki.RipCurl_0.9b.jar", + "jar_sha256": "1f9a52c3ea49c22e5755defaaf43f355801169537f7a9636d1708bd00064e4c9", + "key": "roborumble/bts.wiki.RipCurl_0.9b.jar", + "kind": "robot" + }, + "status": "FAIL (TR)", + "tank_royale": { + "elapsed": 6.2, + "error_count": 2, + "errors": [ + "HARNESS: worker produced no result (exit code -1)", + "java.lang.ArrayIndexOutOfBoundsException: Index -1 out of bounds for length 2" + ], + "has_log": true, + "ok": false, + "score": null, + "scores": [], + "skipped": null + } + }, + { + "classic": { + "elapsed": 2.9, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5112.0, + "scores": [ + 2532.0, + 2580.0 + ], + "selected": "bts.wiki.RipCurl 0.9b" + }, + "completed_at": "2026-09-11T18:52:12Z", + "confirmation": null, + "delta_pct": null, + "id": "1a37177249ebafea", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "bts.wiki.RipCurl 0.9b", + "division": "roborumble", + "jar": "bts.wiki.RipCurl_0.9b.jar", + "jar_sha256": "1f9a52c3ea49c22e5755defaaf43f355801169537f7a9636d1708bd00064e4c9", + "key": "roborumble/bts.wiki.RipCurl_0.9b.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (outcome)", + "tank_royale": { + "bridge_only_signatures": [ + [ + "java.lang.ArrayIndexOutOfBoundsException", + "us.bluetorch.robocode.movement.MinimumRisk.onScannedRobot" + ] + ], + "elapsed": 6.1, + "error_count": 3, + "error_signatures": [ + { + "exception": "java.lang.ArrayIndexOutOfBoundsException", + "origin": "us.bluetorch.robocode.movement.MinimumRisk.onScannedRobot" + } + ], + "errors": [ + "HARNESS: worker produced no result (exit code -1)", + "java.lang.ArrayIndexOutOfBoundsException: Index -1 out of bounds for length 2", + "java.lang.ArrayIndexOutOfBoundsException: Index -1 out of bounds for length 2" + ], + "has_log": true, + "ok": false, + "score": null, + "scores": [], + "skipped": null + } + } + ], + "status": "DISCREPANCY (outcome)" + }, + "roborumble/buba.Archivist_0.1.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "buba.Archivist 0.1", + "division": "roborumble", + "jar": "buba.Archivist_0.1.jar", + "jar_sha256": "16a0212d06836af24b9b7d351de52406e456804ede7c302e4cb85c75d2b08acc", + "key": "roborumble/buba.Archivist_0.1.jar", + "kind": "robot" + }, + "latest_observation": "aa1f6c80b995d2cc", + "observations": [ + { + "classic": { + "elapsed": 3.2, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 5379.0, + "scores": [ + 2993.0, + 2386.0 + ], + "selected": "buba.Archivist 0.1" + }, + "completed_at": "2026-09-08T21:03:14Z", + "delta_pct": -9.6, + "id": "d18c23f855ed3f66", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "buba.Archivist 0.1", + "division": "roborumble", + "jar": "buba.Archivist_0.1.jar", + "jar_sha256": "16a0212d06836af24b9b7d351de52406e456804ede7c302e4cb85c75d2b08acc", + "key": "roborumble/buba.Archivist_0.1.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "elapsed": 16.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 4862.0, + "scores": [ + 3109.0, + 1753.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 3.4, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5203.0, + "scores": [ + 2513.0, + 2690.0 + ], + "selected": "buba.Archivist 0.1" + }, + "completed_at": "2026-09-11T18:52:34Z", + "confirmation": null, + "delta_pct": -6.4, + "id": "aa1f6c80b995d2cc", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "buba.Archivist 0.1", + "division": "roborumble", + "jar": "buba.Archivist_0.1.jar", + "jar_sha256": "16a0212d06836af24b9b7d351de52406e456804ede7c302e4cb85c75d2b08acc", + "key": "roborumble/buba.Archivist_0.1.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 18.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 4868.0, + "scores": [ + 2496.0, + 2372.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/buba.Buba_0.3.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "buba.Buba 0.3", + "division": "roborumble", + "jar": "buba.Buba_0.3.jar", + "jar_sha256": "ba2320e401f43470e16fa1253315b29b36047b22bac99ad62bed59bb014e1716", + "key": "roborumble/buba.Buba_0.3.jar", + "kind": "robot" + }, + "latest_observation": "224194e7fcdb5495", + "observations": [ + { + "classic": { + "elapsed": 2.4, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 4975.0, + "scores": [ + 1731.0, + 3244.0 + ], + "selected": "buba.Buba 0.3" + }, + "completed_at": "2026-09-08T21:03:31Z", + "delta_pct": -19.0, + "id": "92de0a656f602dca", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "buba.Buba 0.3", + "division": "roborumble", + "jar": "buba.Buba_0.3.jar", + "jar_sha256": "ba2320e401f43470e16fa1253315b29b36047b22bac99ad62bed59bb014e1716", + "key": "roborumble/buba.Buba_0.3.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "elapsed": 14.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 4029.0, + "scores": [ + 2290.0, + 1739.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 2.4, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 4431.0, + "scores": [ + 2529.0, + 1902.0 + ], + "selected": "buba.Buba 0.3" + }, + "completed_at": "2026-09-11T18:52:51Z", + "confirmation": null, + "delta_pct": -3.1, + "id": "224194e7fcdb5495", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "buba.Buba 0.3", + "division": "roborumble", + "jar": "buba.Buba_0.3.jar", + "jar_sha256": "ba2320e401f43470e16fa1253315b29b36047b22bac99ad62bed59bb014e1716", + "key": "roborumble/buba.Buba_0.3.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 14.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 4295.0, + "scores": [ + 2210.0, + 2085.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/bumblebee.Bumblebee_1.0.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "bumblebee.Bumblebee 1.0", + "division": "roborumble", + "jar": "bumblebee.Bumblebee_1.0.jar", + "jar_sha256": "13752cd9d2f4ffe2a675074b50ecca99b982f57bea36c1bac5e4f254cf0af9c5", + "key": "roborumble/bumblebee.Bumblebee_1.0.jar", + "kind": "robot" + }, + "latest_observation": "43be93c102edd078", + "observations": [ + { + "classic": { + "elapsed": 2.3, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 7679.0, + "scores": [ + 3456.0, + 4223.0 + ], + "selected": "bumblebee.Bumblebee 1.0" + }, + "completed_at": "2026-09-08T21:03:46Z", + "delta_pct": 0.1, + "id": "684d3891682e1261", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "bumblebee.Bumblebee 1.0", + "division": "roborumble", + "jar": "bumblebee.Bumblebee_1.0.jar", + "jar_sha256": "13752cd9d2f4ffe2a675074b50ecca99b982f57bea36c1bac5e4f254cf0af9c5", + "key": "roborumble/bumblebee.Bumblebee_1.0.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "elapsed": 12.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 7686.0, + "scores": [ + 3977.0, + 3709.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 2.4, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 7853.0, + "scores": [ + 3864.0, + 3989.0 + ], + "selected": "bumblebee.Bumblebee 1.0" + }, + "completed_at": "2026-09-11T18:53:05Z", + "confirmation": null, + "delta_pct": -1.8, + "id": "43be93c102edd078", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "bumblebee.Bumblebee 1.0", + "division": "roborumble", + "jar": "bumblebee.Bumblebee_1.0.jar", + "jar_sha256": "13752cd9d2f4ffe2a675074b50ecca99b982f57bea36c1bac5e4f254cf0af9c5", + "key": "roborumble/bumblebee.Bumblebee_1.0.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 12.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 7709.0, + "scores": [ + 3963.0, + 3746.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/bvh.fnr.Fenrir_0.36l.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "bvh.fnr.Fenrir 0.36l", + "division": "roborumble", + "jar": "bvh.fnr.Fenrir_0.36l.jar", + "jar_sha256": "986ed898d1fa2556d204321e33139543a61c6ddda15b419b877cc7009e91b5d9", + "key": "roborumble/bvh.fnr.Fenrir_0.36l.jar", + "kind": "robot" + }, + "latest_observation": "b4921a3482058324", + "observations": [ + { + "classic": { + "elapsed": 3.7, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 5899.0, + "scores": [ + 2726.0, + 3173.0 + ], + "selected": "bvh.fnr.Fenrir 0.36l" + }, + "completed_at": "2026-09-08T21:04:10Z", + "delta_pct": -7.8, + "id": "c42dcc45e38dcd92", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "bvh.fnr.Fenrir 0.36l", + "division": "roborumble", + "jar": "bvh.fnr.Fenrir_0.36l.jar", + "jar_sha256": "986ed898d1fa2556d204321e33139543a61c6ddda15b419b877cc7009e91b5d9", + "key": "roborumble/bvh.fnr.Fenrir_0.36l.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "elapsed": 20.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 5440.0, + "scores": [ + 3191.0, + 2249.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 3.6, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 6250.0, + "scores": [ + 3194.0, + 3056.0 + ], + "selected": "bvh.fnr.Fenrir 0.36l" + }, + "completed_at": "2026-09-11T19:59:02Z", + "confirmation": null, + "delta_pct": -9.9, + "id": "b4921a3482058324", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "bvh.fnr.Fenrir 0.36l", + "division": "roborumble", + "jar": "bvh.fnr.Fenrir_0.36l.jar", + "jar_sha256": "986ed898d1fa2556d204321e33139543a61c6ddda15b419b877cc7009e91b5d9", + "key": "roborumble/bvh.fnr.Fenrir_0.36l.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 24.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5634.0, + "scores": [ + 3064.0, + 2570.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/bvh.frg.Friga_0.112dev.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "bvh.frg.Friga 0.112dev", + "division": "roborumble", + "jar": "bvh.frg.Friga_0.112dev.jar", + "jar_sha256": "a7bda40ea78e411a38c3d99bf52466b26ae5efe3df9dc432b48f6df388346d9f", + "key": "roborumble/bvh.frg.Friga_0.112dev.jar", + "kind": "robot" + }, + "latest_observation": "76fc12ecb24aaeda", + "observations": [ + { + "classic": { + "elapsed": 2.7, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 5674.0, + "scores": [ + 2831.0, + 2843.0 + ], + "selected": "bvh.frg.Friga 0.112dev" + }, + "completed_at": "2026-09-08T21:04:33Z", + "delta_pct": -9.2, + "id": "2c64749929672cae", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "bvh.frg.Friga 0.112dev", + "division": "roborumble", + "jar": "bvh.frg.Friga_0.112dev.jar", + "jar_sha256": "a7bda40ea78e411a38c3d99bf52466b26ae5efe3df9dc432b48f6df388346d9f", + "key": "roborumble/bvh.frg.Friga_0.112dev.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "elapsed": 20.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 5151.0, + "scores": [ + 2893.0, + 2258.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 2.8, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5289.0, + "scores": [ + 2594.0, + 2695.0 + ], + "selected": "bvh.frg.Friga 0.112dev" + }, + "completed_at": "2026-09-11T19:59:25Z", + "confirmation": null, + "delta_pct": -2.8, + "id": "76fc12ecb24aaeda", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "bvh.frg.Friga 0.112dev", + "division": "roborumble", + "jar": "bvh.frg.Friga_0.112dev.jar", + "jar_sha256": "a7bda40ea78e411a38c3d99bf52466b26ae5efe3df9dc432b48f6df388346d9f", + "key": "roborumble/bvh.frg.Friga_0.112dev.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 20.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5141.0, + "scores": [ + 2952.0, + 2189.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/bvh.fry.Freya_0.82.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "bvh.fry.Freya 0.82", + "division": "roborumble", + "jar": "bvh.fry.Freya_0.82.jar", + "jar_sha256": "2618ef3fb7cd8cb814b33be2531dc1e81661554362f93b29a80d1cce31f12fe5", + "key": "roborumble/bvh.fry.Freya_0.82.jar", + "kind": "robot" + }, + "latest_observation": "d085ccd0fda17438", + "observations": [ + { + "classic": { + "elapsed": 6.8, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 5546.0, + "scores": [ + 2606.0, + 2940.0 + ], + "selected": "bvh.fry.Freya 0.82" + }, + "completed_at": "2026-09-08T21:04:44Z", + "delta_pct": null, + "id": "d32b1f5ce3e25f80", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "bvh.fry.Freya 0.82", + "division": "roborumble", + "jar": "bvh.fry.Freya_0.82.jar", + "jar_sha256": "2618ef3fb7cd8cb814b33be2531dc1e81661554362f93b29a80d1cce31f12fe5", + "key": "roborumble/bvh.fry.Freya_0.82.jar", + "kind": "robot" + }, + "status": "FAIL (TR)", + "tank_royale": { + "elapsed": 4.2, + "error_count": 3, + "errors": [ + "HARNESS: worker produced no result (exit code -1)", + "inlezenInitialisatieBestand(): IOException bij inlezen data Freya.ini: java.io.FileNotFoundException: C:\\Code\\robocode-api-bridge\\compat-test\\work\\tr-bots\\bvh.fry.Freya_0.82\\Freya.data\\Freya.ini (Den angivne fil blev ikke fundet)", + "inlezenInitialisatieBestand(): IOException bij inlezen data Freya.ini: java.io.FileNotFoundException: C:\\Code\\robocode-api-bridge\\compat-test\\work\\tr-bots\\bvh.fry.Freya_0.82-2\\Freya.data\\Freya.ini (Den angivne fil blev ikke fundet)" + ], + "has_log": true, + "ok": false, + "score": null, + "scores": [], + "skipped": null + } + }, + { + "classic": { + "elapsed": 6.4, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5390.0, + "scores": [ + 2628.0, + 2762.0 + ], + "selected": "bvh.fry.Freya 0.82" + }, + "completed_at": "2026-09-11T19:59:36Z", + "confirmation": null, + "delta_pct": null, + "id": "d085ccd0fda17438", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "bvh.fry.Freya 0.82", + "division": "roborumble", + "jar": "bvh.fry.Freya_0.82.jar", + "jar_sha256": "2618ef3fb7cd8cb814b33be2531dc1e81661554362f93b29a80d1cce31f12fe5", + "key": "roborumble/bvh.fry.Freya_0.82.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (outcome)", + "tank_royale": { + "bridge_only_signatures": [ + [ + "java.io.FileNotFoundException", + "unknown" + ] + ], + "elapsed": 4.2, + "error_count": 3, + "error_signatures": [ + { + "exception": "java.io.FileNotFoundException", + "origin": "unknown" + } + ], + "errors": [ + "HARNESS: worker produced no result (exit code -1)", + "inlezenInitialisatieBestand(): IOException bij inlezen data Freya.ini: java.io.FileNotFoundException: C:\\Code\\robocode-api-bridge\\compat-test\\work\\tr-bots\\bvh.fry.Freya_0.82\\Freya.data\\Freya.ini (Den angivne fil blev ikke fundet)", + "inlezenInitialisatieBestand(): IOException bij inlezen data Freya.ini: java.io.FileNotFoundException: C:\\Code\\robocode-api-bridge\\compat-test\\work\\tr-bots\\bvh.fry.Freya_0.82-2\\Freya.data\\Freya.ini (Den angivne fil blev ikke fundet)" + ], + "has_log": true, + "ok": false, + "score": null, + "scores": [], + "skipped": null + } + } + ], + "status": "DISCREPANCY (outcome)" + }, + "roborumble/bvh.hdr.Hodur_0.4.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "bvh.hdr.Hodur 0.4", + "division": "roborumble", + "jar": "bvh.hdr.Hodur_0.4.jar", + "jar_sha256": "2bd6a9804697badcfad118f8c84db756b33cd9154144da4b19166f9f7caea94e", + "key": "roborumble/bvh.hdr.Hodur_0.4.jar", + "kind": "robot" + }, + "latest_observation": "8a25b46b587e2378", + "observations": [ + { + "classic": { + "elapsed": 6.2, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 1932.0, + "scores": [ + 1011.0, + 921.0 + ], + "selected": "bvh.hdr.Hodur 0.4" + }, + "completed_at": "2026-09-08T21:05:24Z", + "delta_pct": -37.2, + "id": "bc89209e78a077fc", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "bvh.hdr.Hodur 0.4", + "division": "roborumble", + "jar": "bvh.hdr.Hodur_0.4.jar", + "jar_sha256": "2bd6a9804697badcfad118f8c84db756b33cd9154144da4b19166f9f7caea94e", + "key": "roborumble/bvh.hdr.Hodur_0.4.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (score)", + "tank_royale": { + "elapsed": 34.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 1214.0, + "scores": [ + 681.0, + 533.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 6.2, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 1774.0, + "scores": [ + 905.0, + 869.0 + ], + "selected": "bvh.hdr.Hodur 0.4" + }, + "completed_at": "2026-09-11T20:00:19Z", + "confirmation": null, + "delta_pct": -32.3, + "id": "8a25b46b587e2378", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "bvh.hdr.Hodur 0.4", + "division": "roborumble", + "jar": "bvh.hdr.Hodur_0.4.jar", + "jar_sha256": "2bd6a9804697badcfad118f8c84db756b33cd9154144da4b19166f9f7caea94e", + "key": "roborumble/bvh.hdr.Hodur_0.4.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (score)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 36.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 1201.0, + "scores": [ + 636.0, + 565.0 + ], + "skipped": null + } + } + ], + "status": "score-review" + }, + "roborumble/bvh.loki.Loki_0.5.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "bvh.loki.Loki 0.5", + "division": "roborumble", + "jar": "bvh.loki.Loki_0.5.jar", + "jar_sha256": "46f15811b1cbdfa571eca677320bd0efca497cfb6ed6b672e82f8c27dfb3f0c6", + "key": "roborumble/bvh.loki.Loki_0.5.jar", + "kind": "robot" + }, + "latest_observation": "baababf4d63efaf4", + "observations": [ + { + "classic": { + "elapsed": 2.6, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 8924.0, + "scores": [ + 4303.0, + 4621.0 + ], + "selected": "bvh.loki.Loki 0.5" + }, + "completed_at": "2026-09-08T21:05:47Z", + "delta_pct": -47.3, + "id": "c679e09780c18a52", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "bvh.loki.Loki 0.5", + "division": "roborumble", + "jar": "bvh.loki.Loki_0.5.jar", + "jar_sha256": "46f15811b1cbdfa571eca677320bd0efca497cfb6ed6b672e82f8c27dfb3f0c6", + "key": "roborumble/bvh.loki.Loki_0.5.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (score)", + "tank_royale": { + "elapsed": 20.2, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 4699.0, + "scores": [ + 2780.0, + 1919.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 2.5, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 9164.0, + "scores": [ + 4309.0, + 4855.0 + ], + "selected": "bvh.loki.Loki 0.5" + }, + "completed_at": "2026-09-11T20:00:44Z", + "confirmation": null, + "delta_pct": -49.8, + "id": "baababf4d63efaf4", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "bvh.loki.Loki 0.5", + "division": "roborumble", + "jar": "bvh.loki.Loki_0.5.jar", + "jar_sha256": "46f15811b1cbdfa571eca677320bd0efca497cfb6ed6b672e82f8c27dfb3f0c6", + "key": "roborumble/bvh.loki.Loki_0.5.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (score)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 22.4, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 4603.0, + "scores": [ + 2676.0, + 1927.0 + ], + "skipped": null + } + } + ], + "status": "score-review" + }, + "roborumble/bvh.micro.Freya_0.3.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "bvh.micro.Freya 0.3", + "division": "roborumble", + "jar": "bvh.micro.Freya_0.3.jar", + "jar_sha256": "97868a0fa8ea022df4e19ae810f3a098da8c0d897ebd4564c1afe2b9f9002890", + "key": "roborumble/bvh.micro.Freya_0.3.jar", + "kind": "robot" + }, + "latest_observation": "cb8ffc8035b0b113", + "observations": [ + { + "classic": { + "elapsed": 2.7, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 5721.0, + "scores": [ + 2696.0, + 3025.0 + ], + "selected": "bvh.micro.Freya 0.3" + }, + "completed_at": "2026-09-08T21:06:12Z", + "delta_pct": -6.4, + "id": "2f1498ceffdac7e0", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "bvh.micro.Freya 0.3", + "division": "roborumble", + "jar": "bvh.micro.Freya_0.3.jar", + "jar_sha256": "97868a0fa8ea022df4e19ae810f3a098da8c0d897ebd4564c1afe2b9f9002890", + "key": "roborumble/bvh.micro.Freya_0.3.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "elapsed": 22.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 5354.0, + "scores": [ + 2752.0, + 2602.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 2.6, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5844.0, + "scores": [ + 2834.0, + 3010.0 + ], + "selected": "bvh.micro.Freya 0.3" + }, + "completed_at": "2026-09-11T20:01:09Z", + "confirmation": null, + "delta_pct": -9.3, + "id": "cb8ffc8035b0b113", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "bvh.micro.Freya 0.3", + "division": "roborumble", + "jar": "bvh.micro.Freya_0.3.jar", + "jar_sha256": "97868a0fa8ea022df4e19ae810f3a098da8c0d897ebd4564c1afe2b9f9002890", + "key": "roborumble/bvh.micro.Freya_0.3.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 22.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5302.0, + "scores": [ + 2843.0, + 2459.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/bvh.micro.Svadilfari_0.2.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "bvh.micro.Svadilfari 0.2", + "division": "roborumble", + "jar": "bvh.micro.Svadilfari_0.2.jar", + "jar_sha256": "29e9fea32030a66e7c1be3582f3e06fb461d760fb0d4457b420d30ed0cb2b12a", + "key": "roborumble/bvh.micro.Svadilfari_0.2.jar", + "kind": "robot" + }, + "latest_observation": "31e4d17c67a09cf7", + "observations": [ + { + "classic": { + "elapsed": 2.5, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 8232.0, + "scores": [ + 4101.0, + 4131.0 + ], + "selected": "bvh.micro.Svadilfari 0.2" + }, + "completed_at": "2026-09-08T21:06:31Z", + "delta_pct": 2.4, + "id": "4dadfc08d52161ce", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "bvh.micro.Svadilfari 0.2", + "division": "roborumble", + "jar": "bvh.micro.Svadilfari_0.2.jar", + "jar_sha256": "29e9fea32030a66e7c1be3582f3e06fb461d760fb0d4457b420d30ed0cb2b12a", + "key": "roborumble/bvh.micro.Svadilfari_0.2.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "elapsed": 16.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 8430.0, + "scores": [ + 4518.0, + 3912.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 2.4, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 8666.0, + "scores": [ + 3790.0, + 4876.0 + ], + "selected": "bvh.micro.Svadilfari 0.2" + }, + "completed_at": "2026-09-11T20:01:30Z", + "confirmation": null, + "delta_pct": -4.9, + "id": "31e4d17c67a09cf7", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "bvh.micro.Svadilfari 0.2", + "division": "roborumble", + "jar": "bvh.micro.Svadilfari_0.2.jar", + "jar_sha256": "29e9fea32030a66e7c1be3582f3e06fb461d760fb0d4457b420d30ed0cb2b12a", + "key": "roborumble/bvh.micro.Svadilfari_0.2.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 18.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 8244.0, + "scores": [ + 4159.0, + 4085.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/bvh.mini.Fenrir_0.39.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "bvh.mini.Fenrir 0.39", + "division": "roborumble", + "jar": "bvh.mini.Fenrir_0.39.jar", + "jar_sha256": "3d63cdf11e5846c7e295db9c27965b84e7d1944b923d09979819f188700220a1", + "key": "roborumble/bvh.mini.Fenrir_0.39.jar", + "kind": "robot" + }, + "latest_observation": "a6a855c07fd9da46", + "observations": [ + { + "classic": { + "elapsed": 2.6, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 6512.0, + "scores": [ + 3618.0, + 2894.0 + ], + "selected": "bvh.mini.Fenrir 0.39" + }, + "completed_at": "2026-09-08T21:06:50Z", + "delta_pct": -11.2, + "id": "ff57f8cea1909f17", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "bvh.mini.Fenrir 0.39", + "division": "roborumble", + "jar": "bvh.mini.Fenrir_0.39.jar", + "jar_sha256": "3d63cdf11e5846c7e295db9c27965b84e7d1944b923d09979819f188700220a1", + "key": "roborumble/bvh.mini.Fenrir_0.39.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "elapsed": 16.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 5782.0, + "scores": [ + 3256.0, + 2526.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 2.6, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5720.0, + "scores": [ + 2722.0, + 2998.0 + ], + "selected": "bvh.mini.Fenrir 0.39" + }, + "completed_at": "2026-09-11T20:01:51Z", + "confirmation": null, + "delta_pct": 3.2, + "id": "a6a855c07fd9da46", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "bvh.mini.Fenrir 0.39", + "division": "roborumble", + "jar": "bvh.mini.Fenrir_0.39.jar", + "jar_sha256": "3d63cdf11e5846c7e295db9c27965b84e7d1944b923d09979819f188700220a1", + "key": "roborumble/bvh.mini.Fenrir_0.39.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 18.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5905.0, + "scores": [ + 3032.0, + 2873.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/bvh.mini.Freya_0.55.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "bvh.mini.Freya 0.55", + "division": "roborumble", + "jar": "bvh.mini.Freya_0.55.jar", + "jar_sha256": "4a3e45054c437df7ac073756d18ff8b6cf67ab4f9f686484a325afdd455c4452", + "key": "roborumble/bvh.mini.Freya_0.55.jar", + "kind": "robot" + }, + "latest_observation": "faff76b00952488f", + "observations": [ + { + "classic": { + "elapsed": 2.7, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 5601.0, + "scores": [ + 2929.0, + 2672.0 + ], + "selected": "bvh.mini.Freya 0.55" + }, + "completed_at": "2026-09-08T21:07:13Z", + "delta_pct": -21.3, + "id": "815497cd00aa57b0", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "bvh.mini.Freya 0.55", + "division": "roborumble", + "jar": "bvh.mini.Freya_0.55.jar", + "jar_sha256": "4a3e45054c437df7ac073756d18ff8b6cf67ab4f9f686484a325afdd455c4452", + "key": "roborumble/bvh.mini.Freya_0.55.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "elapsed": 20.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 4407.0, + "scores": [ + 2423.0, + 1984.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 2.7, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5679.0, + "scores": [ + 2944.0, + 2735.0 + ], + "selected": "bvh.mini.Freya 0.55" + }, + "completed_at": "2026-09-11T20:02:14Z", + "confirmation": null, + "delta_pct": -21.3, + "id": "faff76b00952488f", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "bvh.mini.Freya 0.55", + "division": "roborumble", + "jar": "bvh.mini.Freya_0.55.jar", + "jar_sha256": "4a3e45054c437df7ac073756d18ff8b6cf67ab4f9f686484a325afdd455c4452", + "key": "roborumble/bvh.mini.Freya_0.55.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 20.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 4470.0, + "scores": [ + 2706.0, + 1764.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/bvh.mini.Mjolnir_0.3.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "bvh.mini.Mjolnir 0.3", + "division": "roborumble", + "jar": "bvh.mini.Mjolnir_0.3.jar", + "jar_sha256": "00db20570e2aebaf5d4ead68f922b93bf07d4b6620524ea9655f8e24a51e8641", + "key": "roborumble/bvh.mini.Mjolnir_0.3.jar", + "kind": "robot" + }, + "latest_observation": "b8b6ef9147eb54d2", + "observations": [ + { + "classic": { + "elapsed": 2.3, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 9311.0, + "scores": [ + 4758.0, + 4553.0 + ], + "selected": "bvh.mini.Mjolnir 0.3" + }, + "completed_at": "2026-09-08T21:07:28Z", + "delta_pct": -26.4, + "id": "3d1c3e239d06d795", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "bvh.mini.Mjolnir 0.3", + "division": "roborumble", + "jar": "bvh.mini.Mjolnir_0.3.jar", + "jar_sha256": "00db20570e2aebaf5d4ead68f922b93bf07d4b6620524ea9655f8e24a51e8641", + "key": "roborumble/bvh.mini.Mjolnir_0.3.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (score)", + "tank_royale": { + "elapsed": 12.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 6851.0, + "scores": [ + 5183.0, + 1668.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 2.3, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 10260.0, + "scores": [ + 4384.0, + 5876.0 + ], + "selected": "bvh.mini.Mjolnir 0.3" + }, + "completed_at": "2026-09-11T20:02:28Z", + "confirmation": null, + "delta_pct": 16.0, + "id": "b8b6ef9147eb54d2", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "bvh.mini.Mjolnir 0.3", + "division": "roborumble", + "jar": "bvh.mini.Mjolnir_0.3.jar", + "jar_sha256": "00db20570e2aebaf5d4ead68f922b93bf07d4b6620524ea9655f8e24a51e8641", + "key": "roborumble/bvh.mini.Mjolnir_0.3.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 12.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 11901.0, + "scores": [ + 6068.0, + 5833.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/bvh.mini.Wodan_0.50.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "bvh.mini.Wodan 0.50", + "division": "roborumble", + "jar": "bvh.mini.Wodan_0.50.jar", + "jar_sha256": "ee38f593b18a05e2a8864301c15e9106be792d1ab51f6f7cb6df64eb1eb8b435", + "key": "roborumble/bvh.mini.Wodan_0.50.jar", + "kind": "robot" + }, + "latest_observation": "ca182a611e34db8e", + "observations": [ + { + "classic": { + "elapsed": 2.7, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 7054.0, + "scores": [ + 2923.0, + 4131.0 + ], + "selected": "bvh.mini.Wodan 0.50" + }, + "completed_at": "2026-09-08T21:07:47Z", + "delta_pct": 7.0, + "id": "d89e8a196146f1ec", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "bvh.mini.Wodan 0.50", + "division": "roborumble", + "jar": "bvh.mini.Wodan_0.50.jar", + "jar_sha256": "ee38f593b18a05e2a8864301c15e9106be792d1ab51f6f7cb6df64eb1eb8b435", + "key": "roborumble/bvh.mini.Wodan_0.50.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "elapsed": 16.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 7550.0, + "scores": [ + 3931.0, + 3619.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 2.6, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 6996.0, + "scores": [ + 3070.0, + 3926.0 + ], + "selected": "bvh.mini.Wodan 0.50" + }, + "completed_at": "2026-09-11T20:02:49Z", + "confirmation": null, + "delta_pct": -4.2, + "id": "ca182a611e34db8e", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "bvh.mini.Wodan 0.50", + "division": "roborumble", + "jar": "bvh.mini.Wodan_0.50.jar", + "jar_sha256": "ee38f593b18a05e2a8864301c15e9106be792d1ab51f6f7cb6df64eb1eb8b435", + "key": "roborumble/bvh.mini.Wodan_0.50.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 18.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 6702.0, + "scores": [ + 3813.0, + 2889.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/bvh.tyr.Tyr_1.74.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "bvh.tyr.Tyr 1.74", + "division": "roborumble", + "jar": "bvh.tyr.Tyr_1.74.jar", + "jar_sha256": "9a05860b706454676778504df31631db93837f284afb17359b9ddec691bce34a", + "key": "roborumble/bvh.tyr.Tyr_1.74.jar", + "kind": "robot" + }, + "latest_observation": "5b1f84ee29ac481a", + "observations": [ + { + "classic": { + "elapsed": 2.7, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 7879.0, + "scores": [ + 3920.0, + 3959.0 + ], + "selected": "bvh.tyr.Tyr 1.74" + }, + "completed_at": "2026-09-08T21:08:08Z", + "delta_pct": -24.8, + "id": "f40bad8a5aff304f", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "bvh.tyr.Tyr 1.74", + "division": "roborumble", + "jar": "bvh.tyr.Tyr_1.74.jar", + "jar_sha256": "9a05860b706454676778504df31631db93837f284afb17359b9ddec691bce34a", + "key": "roborumble/bvh.tyr.Tyr_1.74.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "elapsed": 18.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 5923.0, + "scores": [ + 3174.0, + 2749.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 2.5, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 7492.0, + "scores": [ + 3703.0, + 3789.0 + ], + "selected": "bvh.tyr.Tyr 1.74" + }, + "completed_at": "2026-09-11T20:03:12Z", + "confirmation": null, + "delta_pct": -20.4, + "id": "5b1f84ee29ac481a", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "bvh.tyr.Tyr 1.74", + "division": "roborumble", + "jar": "bvh.tyr.Tyr_1.74.jar", + "jar_sha256": "9a05860b706454676778504df31631db93837f284afb17359b9ddec691bce34a", + "key": "roborumble/bvh.tyr.Tyr_1.74.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 20.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5961.0, + "scores": [ + 3133.0, + 2828.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/bwbaugh.nano.Tirunculus_0.0.0a.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "bwbaugh.nano.Tirunculus 0.0.0a", + "division": "roborumble", + "jar": "bwbaugh.nano.Tirunculus_0.0.0a.jar", + "jar_sha256": "d1fcb6072a0110947df39ad0db284f0fa4f229e7ef0f0d2502553ca0b2acb7d4", + "key": "roborumble/bwbaugh.nano.Tirunculus_0.0.0a.jar", + "kind": "robot" + }, + "latest_observation": "065a07920f011446", + "observations": [ + { + "classic": { + "elapsed": 2.3, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 10796.0, + "scores": [ + 5699.0, + 5097.0 + ], + "selected": "bwbaugh.nano.Tirunculus 0.0.0a" + }, + "completed_at": "2026-09-08T21:08:20Z", + "delta_pct": 53.7, + "id": "b935555308fc01c3", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "bwbaugh.nano.Tirunculus 0.0.0a", + "division": "roborumble", + "jar": "bwbaugh.nano.Tirunculus_0.0.0a.jar", + "jar_sha256": "d1fcb6072a0110947df39ad0db284f0fa4f229e7ef0f0d2502553ca0b2acb7d4", + "key": "roborumble/bwbaugh.nano.Tirunculus_0.0.0a.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (score)", + "tank_royale": { + "elapsed": 10.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 16591.0, + "scores": [ + 8399.0, + 8192.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 2.1, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 11076.0, + "scores": [ + 5207.0, + 5869.0 + ], + "selected": "bwbaugh.nano.Tirunculus 0.0.0a" + }, + "completed_at": "2026-09-11T20:04:39Z", + "confirmation": null, + "delta_pct": 48.8, + "id": "065a07920f011446", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "bwbaugh.nano.Tirunculus 0.0.0a", + "division": "roborumble", + "jar": "bwbaugh.nano.Tirunculus_0.0.0a.jar", + "jar_sha256": "d1fcb6072a0110947df39ad0db284f0fa4f229e7ef0f0d2502553ca0b2acb7d4", + "key": "roborumble/bwbaugh.nano.Tirunculus_0.0.0a.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (score)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 10.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 16482.0, + "scores": [ + 8300.0, + 8182.0 + ], + "skipped": null + } + } + ], + "status": "score-review" + }, + "roborumble/bzdp.BoxCar_2.0.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "bzdp.BoxCar 2.0", + "division": "roborumble", + "jar": "bzdp.BoxCar_2.0.jar", + "jar_sha256": "22e13c11b29fb3ed958288b38d67ab6ae02bd899f16ddcf96295f621e795ecb6", + "key": "roborumble/bzdp.BoxCar_2.0.jar", + "kind": "robot" + }, + "latest_observation": "158dc02a97104f42", + "observations": [ + { + "classic": { + "elapsed": 2.4, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 7919.0, + "scores": [ + 3893.0, + 4026.0 + ], + "selected": "bzdp.BoxCar 2.0" + }, + "completed_at": "2026-09-08T21:08:37Z", + "delta_pct": -9.8, + "id": "67c108afb1e67978", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "bzdp.BoxCar 2.0", + "division": "roborumble", + "jar": "bzdp.BoxCar_2.0.jar", + "jar_sha256": "22e13c11b29fb3ed958288b38d67ab6ae02bd899f16ddcf96295f621e795ecb6", + "key": "roborumble/bzdp.BoxCar_2.0.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "elapsed": 14.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 7143.0, + "scores": [ + 4080.0, + 3063.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 2.8, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 7578.0, + "scores": [ + 3317.0, + 4261.0 + ], + "selected": "bzdp.BoxCar 2.0" + }, + "completed_at": "2026-09-11T20:05:12Z", + "confirmation": null, + "delta_pct": -7.7, + "id": "158dc02a97104f42", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "bzdp.BoxCar 2.0", + "division": "roborumble", + "jar": "bzdp.BoxCar_2.0.jar", + "jar_sha256": "22e13c11b29fb3ed958288b38d67ab6ae02bd899f16ddcf96295f621e795ecb6", + "key": "roborumble/bzdp.BoxCar_2.0.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 30.1, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 6998.0, + "scores": [ + 3617.0, + 3381.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/bzdp.Pansy_2.1.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "bzdp.Pansy 2.1", + "division": "roborumble", + "jar": "bzdp.Pansy_2.1.jar", + "jar_sha256": "71057e19022678ba19a873854afb4bd32a986ae77c5105c79cb549ab664ff939", + "key": "roborumble/bzdp.Pansy_2.1.jar", + "kind": "robot" + }, + "latest_observation": "e5ecc6fe604d60b8", + "observations": [ + { + "classic": { + "elapsed": 2.3, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 7852.0, + "scores": [ + 3771.0, + 4081.0 + ], + "selected": "bzdp.Pansy 2.1" + }, + "completed_at": "2026-09-08T21:08:54Z", + "delta_pct": -1.3, + "id": "a96b223336b776df", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "bzdp.Pansy 2.1", + "division": "roborumble", + "jar": "bzdp.Pansy_2.1.jar", + "jar_sha256": "71057e19022678ba19a873854afb4bd32a986ae77c5105c79cb549ab664ff939", + "key": "roborumble/bzdp.Pansy_2.1.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "elapsed": 14.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 7749.0, + "scores": [ + 4975.0, + 2774.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 2.6, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 8436.0, + "scores": [ + 5161.0, + 3275.0 + ], + "selected": "bzdp.Pansy 2.1" + }, + "completed_at": "2026-09-11T20:05:29Z", + "confirmation": null, + "delta_pct": -9.3, + "id": "e5ecc6fe604d60b8", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "bzdp.Pansy 2.1", + "division": "roborumble", + "jar": "bzdp.Pansy_2.1.jar", + "jar_sha256": "71057e19022678ba19a873854afb4bd32a986ae77c5105c79cb549ab664ff939", + "key": "roborumble/bzdp.Pansy_2.1.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 14.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 7648.0, + "scores": [ + 3856.0, + 3792.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/caimano.Furia_Ceca_0.22.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "caimano.Furia_Ceca 0.22", + "division": "roborumble", + "jar": "caimano.Furia_Ceca_0.22.jar", + "jar_sha256": "c1ce5bbf430fe9edc12da1768284be6f3d5bc35a9f48c84819f21edd32241616", + "key": "roborumble/caimano.Furia_Ceca_0.22.jar", + "kind": "robot" + }, + "latest_observation": "4d5dd0574032c7bf", + "observations": [ + { + "classic": { + "elapsed": 2.4, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 5715.0, + "scores": [ + 2046.0, + 3669.0 + ], + "selected": "caimano.Furia_Ceca 0.22" + }, + "completed_at": "2026-09-08T21:09:08Z", + "delta_pct": -45.5, + "id": "99d4763f956857c8", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "caimano.Furia_Ceca 0.22", + "division": "roborumble", + "jar": "caimano.Furia_Ceca_0.22.jar", + "jar_sha256": "c1ce5bbf430fe9edc12da1768284be6f3d5bc35a9f48c84819f21edd32241616", + "key": "roborumble/caimano.Furia_Ceca_0.22.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (score)", + "tank_royale": { + "elapsed": 12.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 3115.0, + "scores": [ + 1628.0, + 1487.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 2.4, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5526.0, + "scores": [ + 2390.0, + 3136.0 + ], + "selected": "caimano.Furia_Ceca 0.22" + }, + "completed_at": "2026-09-11T20:05:46Z", + "confirmation": null, + "delta_pct": -47.3, + "id": "4d5dd0574032c7bf", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "caimano.Furia_Ceca 0.22", + "division": "roborumble", + "jar": "caimano.Furia_Ceca_0.22.jar", + "jar_sha256": "c1ce5bbf430fe9edc12da1768284be6f3d5bc35a9f48c84819f21edd32241616", + "key": "roborumble/caimano.Furia_Ceca_0.22.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (score)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 14.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 2913.0, + "scores": [ + 1545.0, + 1368.0 + ], + "skipped": null + } + } + ], + "status": "score-review" + }, + "roborumble/casey.Flee_1.0.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "casey.Flee 1.0", + "division": "roborumble", + "jar": "casey.Flee_1.0.jar", + "jar_sha256": "5edafd751bd0f81632eecb11ea74c9bfbf3eb3b2c8e4aead9eaf7ec7cd41aecc", + "key": "roborumble/casey.Flee_1.0.jar", + "kind": "robot" + }, + "latest_observation": "a68f7fbc62aef405", + "observations": [ + { + "classic": { + "elapsed": 2.4, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 4964.0, + "scores": [ + 2442.0, + 2522.0 + ], + "selected": "casey.Flee 1.0" + }, + "completed_at": "2026-09-08T21:09:27Z", + "delta_pct": -5.1, + "id": "ad19841f89469280", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "casey.Flee 1.0", + "division": "roborumble", + "jar": "casey.Flee_1.0.jar", + "jar_sha256": "5edafd751bd0f81632eecb11ea74c9bfbf3eb3b2c8e4aead9eaf7ec7cd41aecc", + "key": "roborumble/casey.Flee_1.0.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "elapsed": 16.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 4710.0, + "scores": [ + 2584.0, + 2126.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 2.5, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5314.0, + "scores": [ + 2621.0, + 2693.0 + ], + "selected": "casey.Flee 1.0" + }, + "completed_at": "2026-09-11T20:06:07Z", + "confirmation": null, + "delta_pct": -14.3, + "id": "a68f7fbc62aef405", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "casey.Flee 1.0", + "division": "roborumble", + "jar": "casey.Flee_1.0.jar", + "jar_sha256": "5edafd751bd0f81632eecb11ea74c9bfbf3eb3b2c8e4aead9eaf7ec7cd41aecc", + "key": "roborumble/casey.Flee_1.0.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 18.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 4555.0, + "scores": [ + 2299.0, + 2256.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/cb.Domogled_1.2.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "cb.Domogled 1.2", + "division": "roborumble", + "jar": "cb.Domogled_1.2.jar", + "jar_sha256": "75c374c61a80c5606d1ecd1220d80d663497eef1618b9a80f112c41e5b81e70a", + "key": "roborumble/cb.Domogled_1.2.jar", + "kind": "robot" + }, + "latest_observation": "5447e9339db7eccd", + "observations": [ + { + "classic": { + "elapsed": 18.3, + "error_count": 1, + "errors": [ + "Unable to stop thread: cb.Domogled 1.2 (2)" + ], + "has_log": true, + "ok": true, + "score": 4626.0, + "scores": [ + 2097.0, + 2529.0 + ], + "selected": "cb.Domogled 1.2" + }, + "completed_at": "2026-09-08T21:09:50Z", + "delta_pct": null, + "id": "ab4a97816c447d60", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "cb.Domogled 1.2", + "division": "roborumble", + "jar": "cb.Domogled_1.2.jar", + "jar_sha256": "75c374c61a80c5606d1ecd1220d80d663497eef1618b9a80f112c41e5b81e70a", + "key": "roborumble/cb.Domogled_1.2.jar", + "kind": "robot" + }, + "status": "FAIL (TR)", + "tank_royale": { + "elapsed": 4.1, + "error_count": 3, + "errors": [ + "HARNESS: worker produced no result (exit code -1)", + "java.lang.NullPointerException: Cannot read field \"location\" because \"this.myState\" is null", + "java.lang.NullPointerException: Cannot read field \"location\" because \"this.myState\" is null" + ], + "has_log": true, + "ok": false, + "score": null, + "scores": [], + "skipped": null + } + }, + { + "classic": { + "elapsed": 19.8, + "error_count": 1, + "error_signatures": [], + "errors": [ + "Unable to stop thread: cb.Domogled 1.2 (1)" + ], + "has_log": true, + "ok": true, + "score": 4347.0, + "scores": [ + 2165.0, + 2182.0 + ], + "selected": "cb.Domogled 1.2" + }, + "completed_at": "2026-09-11T20:06:31Z", + "confirmation": null, + "delta_pct": null, + "id": "5447e9339db7eccd", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "cb.Domogled 1.2", + "division": "roborumble", + "jar": "cb.Domogled_1.2.jar", + "jar_sha256": "75c374c61a80c5606d1ecd1220d80d663497eef1618b9a80f112c41e5b81e70a", + "key": "roborumble/cb.Domogled_1.2.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (outcome)", + "tank_royale": { + "bridge_only_signatures": [ + [ + "java.lang.NullPointerException", + "cb.Domogled.movement" + ] + ], + "elapsed": 4.2, + "error_count": 3, + "error_signatures": [ + { + "exception": "java.lang.NullPointerException", + "origin": "cb.Domogled.movement" + } + ], + "errors": [ + "HARNESS: worker produced no result (exit code -1)", + "java.lang.NullPointerException: Cannot read field \"location\" because \"this.myState\" is null", + "java.lang.NullPointerException: Cannot read field \"location\" because \"this.myState\" is null" + ], + "has_log": true, + "ok": false, + "score": null, + "scores": [], + "skipped": null + } + } + ], + "status": "DISCREPANCY (outcome)" + }, + "roborumble/cb.fire.Firestarter_2.0f.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "cb.fire.Firestarter 2.0f", + "division": "roborumble", + "jar": "cb.fire.Firestarter_2.0f.jar", + "jar_sha256": "de45410b59fea6b8fad9463ece161e1e1656960129f1b9bc84791137d788325f", + "key": "roborumble/cb.fire.Firestarter_2.0f.jar", + "kind": "robot" + }, + "latest_observation": "89623ea5edf609f2", + "observations": [ + { + "classic": { + "elapsed": 65.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 4553.0, + "scores": [ + 2228.0, + 2325.0 + ], + "selected": "cb.fire.Firestarter 2.0f" + }, + "completed_at": "2026-09-08T21:10:59Z", + "delta_pct": null, + "id": "2002e30ad998c641", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "cb.fire.Firestarter 2.0f", + "division": "roborumble", + "jar": "cb.fire.Firestarter_2.0f.jar", + "jar_sha256": "de45410b59fea6b8fad9463ece161e1e1656960129f1b9bc84791137d788325f", + "key": "roborumble/cb.fire.Firestarter_2.0f.jar", + "kind": "robot" + }, + "status": "FAIL (TR)", + "tank_royale": { + "elapsed": 4.2, + "error_count": 3, + "errors": [ + "HARNESS: worker produced no result (exit code -1)", + "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Rectangle2D$Double.contains(java.awt.geom.Point2D)\" because \"this.atan2\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Rectangle2D$Double.contains(java.awt.geom.Point2D)\" because \"this.atan2\" is null" + ], + "has_log": true, + "ok": false, + "score": null, + "scores": [], + "skipped": null + } + }, + { + "classic": { + "elapsed": 66.3, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 4490.0, + "scores": [ + 2291.0, + 2199.0 + ], + "selected": "cb.fire.Firestarter 2.0f" + }, + "completed_at": "2026-09-11T20:07:42Z", + "confirmation": null, + "delta_pct": null, + "id": "89623ea5edf609f2", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "cb.fire.Firestarter 2.0f", + "division": "roborumble", + "jar": "cb.fire.Firestarter_2.0f.jar", + "jar_sha256": "de45410b59fea6b8fad9463ece161e1e1656960129f1b9bc84791137d788325f", + "key": "roborumble/cb.fire.Firestarter_2.0f.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (outcome)", + "tank_royale": { + "bridge_only_signatures": [ + [ + "java.lang.NullPointerException", + "C.I.I" + ] + ], + "elapsed": 4.2, + "error_count": 3, + "error_signatures": [ + { + "exception": "java.lang.NullPointerException", + "origin": "C.I.I" + } + ], + "errors": [ + "HARNESS: worker produced no result (exit code -1)", + "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Rectangle2D$Double.contains(java.awt.geom.Point2D)\" because \"this.atan2\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Rectangle2D$Double.contains(java.awt.geom.Point2D)\" because \"this.atan2\" is null" + ], + "has_log": true, + "ok": false, + "score": null, + "scores": [], + "skipped": null + } + } + ], + "status": "DISCREPANCY (outcome)" + }, + "roborumble/cb.mega.RandomBot_1.0.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "cb.mega.RandomBot 1.0", + "division": "roborumble", + "jar": "cb.mega.RandomBot_1.0.jar", + "jar_sha256": "34a1049d295fe3ae436785ef0ba1e74824f059c4b2478b9975522c1698816285", + "key": "roborumble/cb.mega.RandomBot_1.0.jar", + "kind": "robot" + }, + "latest_observation": "9f919c351f22baa4", + "observations": [ + { + "classic": { + "elapsed": 2.9, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 6116.0, + "scores": [ + 3139.0, + 2977.0 + ], + "selected": "cb.mega.RandomBot 1.0" + }, + "completed_at": "2026-09-08T21:11:07Z", + "delta_pct": null, + "id": "55bade0feb6ac865", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "cb.mega.RandomBot 1.0", + "division": "roborumble", + "jar": "cb.mega.RandomBot_1.0.jar", + "jar_sha256": "34a1049d295fe3ae436785ef0ba1e74824f059c4b2478b9975522c1698816285", + "key": "roborumble/cb.mega.RandomBot_1.0.jar", + "kind": "robot" + }, + "status": "FAIL (TR)", + "tank_royale": { + "elapsed": 4.2, + "error_count": 3, + "errors": [ + "HARNESS: worker produced no result (exit code -1)", + "java.lang.NullPointerException: Cannot invoke \"java.util.ArrayList.iterator()\" because \"cb.mega.ComponentRobot.append\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.util.ArrayList.iterator()\" because \"cb.mega.ComponentRobot.append\" is null" + ], + "has_log": true, + "ok": false, + "score": null, + "scores": [], + "skipped": null + } + }, + { + "classic": { + "elapsed": 3.3, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5673.0, + "scores": [ + 2638.0, + 3035.0 + ], + "selected": "cb.mega.RandomBot 1.0" + }, + "completed_at": "2026-09-11T20:07:50Z", + "confirmation": null, + "delta_pct": null, + "id": "9f919c351f22baa4", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "cb.mega.RandomBot 1.0", + "division": "roborumble", + "jar": "cb.mega.RandomBot_1.0.jar", + "jar_sha256": "34a1049d295fe3ae436785ef0ba1e74824f059c4b2478b9975522c1698816285", + "key": "roborumble/cb.mega.RandomBot_1.0.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (outcome)", + "tank_royale": { + "bridge_only_signatures": [ + [ + "java.lang.NullPointerException", + "cb.mega.ComponentRobot.run" + ] + ], + "elapsed": 4.2, + "error_count": 3, + "error_signatures": [ + { + "exception": "java.lang.NullPointerException", + "origin": "cb.mega.ComponentRobot.run" + } + ], + "errors": [ + "HARNESS: worker produced no result (exit code -1)", + "java.lang.NullPointerException: Cannot invoke \"java.util.ArrayList.iterator()\" because \"cb.mega.ComponentRobot.append\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.util.ArrayList.iterator()\" because \"cb.mega.ComponentRobot.append\" is null" + ], + "has_log": true, + "ok": false, + "score": null, + "scores": [], + "skipped": null + } + } + ], + "status": "DISCREPANCY (outcome)" + }, + "roborumble/cb.nano.Insomnia_1.0.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "cb.nano.Insomnia 1.0", + "division": "roborumble", + "jar": "cb.nano.Insomnia_1.0.jar", + "jar_sha256": "dfaa0b7522185985faaaad2c8c8761b56ed6b2e31f9d256de0abbcf466863d30", + "key": "roborumble/cb.nano.Insomnia_1.0.jar", + "kind": "robot" + }, + "latest_observation": "2b65230e01814b28", + "observations": [ + { + "classic": { + "elapsed": 3.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 2400.0, + "scores": [ + 1122.0, + 1278.0 + ], + "selected": "cb.nano.Insomnia 1.0" + }, + "completed_at": "2026-09-08T21:11:30Z", + "delta_pct": 14.0, + "id": "997241f811003c48", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "cb.nano.Insomnia 1.0", + "division": "roborumble", + "jar": "cb.nano.Insomnia_1.0.jar", + "jar_sha256": "dfaa0b7522185985faaaad2c8c8761b56ed6b2e31f9d256de0abbcf466863d30", + "key": "roborumble/cb.nano.Insomnia_1.0.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "elapsed": 20.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 2736.0, + "scores": [ + 1421.0, + 1315.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 3.1, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 2286.0, + "scores": [ + 1213.0, + 1073.0 + ], + "selected": "cb.nano.Insomnia 1.0" + }, + "completed_at": "2026-09-11T20:08:17Z", + "confirmation": null, + "delta_pct": 41.0, + "id": "2b65230e01814b28", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "cb.nano.Insomnia 1.0", + "division": "roborumble", + "jar": "cb.nano.Insomnia_1.0.jar", + "jar_sha256": "dfaa0b7522185985faaaad2c8c8761b56ed6b2e31f9d256de0abbcf466863d30", + "key": "roborumble/cb.nano.Insomnia_1.0.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (score)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 24.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 3224.0, + "scores": [ + 1870.0, + 1354.0 + ], + "skipped": null + } + } + ], + "status": "score-review" + }, + "roborumble/cbot.agile.Nibbler_0.2.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "cbot.agile.Nibbler 0.2", + "division": "roborumble", + "jar": "cbot.agile.Nibbler_0.2.jar", + "jar_sha256": "b1b79c3c45f03c2098bee75bd1c379e51b8e45f66418b0ac15a9e9747fef1689", + "key": "roborumble/cbot.agile.Nibbler_0.2.jar", + "kind": "robot" + }, + "latest_observation": "a743104b456df95b", + "observations": [ + { + "classic": { + "elapsed": 3.2, + "error_count": 3, + "errors": [ + "java.lang.NullPointerException: Cannot invoke \"cbot.agile.Pray.getDistance()\" because \"pray\" is null", + "java.lang.NullPointerException: Cannot invoke \"cbot.agile.Pray.getDistance()\" because \"pray\" is null", + "java.lang.NullPointerException: Cannot invoke \"cbot.agile.Pray.getDistance()\" because \"pray\" is null" + ], + "has_log": true, + "ok": true, + "score": 5348.0, + "scores": [ + 2800.0, + 2548.0 + ], + "selected": "cbot.agile.Nibbler 0.2" + }, + "completed_at": "2026-09-08T21:11:48Z", + "delta_pct": 31.5, + "id": "50feb7c195d9d53e", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "cbot.agile.Nibbler 0.2", + "division": "roborumble", + "jar": "cbot.agile.Nibbler_0.2.jar", + "jar_sha256": "b1b79c3c45f03c2098bee75bd1c379e51b8e45f66418b0ac15a9e9747fef1689", + "key": "roborumble/cbot.agile.Nibbler_0.2.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (score)", + "tank_royale": { + "elapsed": 14.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 7030.0, + "scores": [ + 3730.0, + 3300.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 3.5, + "error_count": 5, + "error_signatures": [ + { + "exception": "java.lang.NullPointerException", + "origin": "cbot.agile.driver.RandomPointDriver.getStopTicks" + } + ], + "errors": [ + "java.lang.NullPointerException: Cannot invoke \"cbot.agile.Pray.getDistance()\" because \"pray\" is null", + "java.lang.NullPointerException", + "java.lang.NullPointerException", + "java.lang.NullPointerException: Cannot invoke \"cbot.agile.Pray.getDistance()\" because \"pray\" is null", + "java.lang.NullPointerException: Cannot invoke \"cbot.agile.Pray.getDistance()\" because \"pray\" is null" + ], + "has_log": true, + "ok": true, + "score": 5394.0, + "scores": [ + 2893.0, + 2501.0 + ], + "selected": "cbot.agile.Nibbler 0.2" + }, + "completed_at": "2026-09-11T20:08:35Z", + "confirmation": null, + "delta_pct": 20.7, + "id": "a743104b456df95b", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "cbot.agile.Nibbler 0.2", + "division": "roborumble", + "jar": "cbot.agile.Nibbler_0.2.jar", + "jar_sha256": "b1b79c3c45f03c2098bee75bd1c379e51b8e45f66418b0ac15a9e9747fef1689", + "key": "roborumble/cbot.agile.Nibbler_0.2.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (errors)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 14.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 6509.0, + "scores": [ + 3325.0, + 3184.0 + ], + "skipped": null + } + } + ], + "status": "DISCREPANCY (errors)" + }, + "roborumble/cbot.cbot.CBot_0.8.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "cbot.cbot.CBot 0.8", + "division": "roborumble", + "jar": "cbot.cbot.CBot_0.8.jar", + "jar_sha256": "96f2840bf8bb3ecd5dcd7c8079cf0bc0d2a9a6ddfd4da5cb2e7a520b7c6a2ffc", + "key": "roborumble/cbot.cbot.CBot_0.8.jar", + "kind": "robot" + }, + "latest_observation": "72304543581f9b7b", + "observations": [ + { + "classic": { + "elapsed": 2.9, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 5878.0, + "scores": [ + 3222.0, + 2656.0 + ], + "selected": "cbot.cbot.CBot 0.8" + }, + "completed_at": "2026-09-08T21:11:57Z", + "delta_pct": null, + "id": "7337304cd84cf9c0", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "cbot.cbot.CBot 0.8", + "division": "roborumble", + "jar": "cbot.cbot.CBot_0.8.jar", + "jar_sha256": "96f2840bf8bb3ecd5dcd7c8079cf0bc0d2a9a6ddfd4da5cb2e7a520b7c6a2ffc", + "key": "roborumble/cbot.cbot.CBot_0.8.jar", + "kind": "robot" + }, + "status": "FAIL (TR)", + "tank_royale": { + "elapsed": 6.1, + "error_count": 2, + "errors": [ + "HARNESS: worker produced no result (exit code -1)", + "java.lang.NullPointerException: Cannot invoke \"cbot.cbot.Pray.getHittingRates()\" because \"this.currentPray\" is null" + ], + "has_log": true, + "ok": false, + "score": null, + "scores": [], + "skipped": null + } + }, + { + "classic": { + "elapsed": 3.4, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 6132.0, + "scores": [ + 2206.0, + 3926.0 + ], + "selected": "cbot.cbot.CBot 0.8" + }, + "completed_at": "2026-09-11T20:08:55Z", + "confirmation": null, + "delta_pct": -16.0, + "id": "72304543581f9b7b", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "cbot.cbot.CBot 0.8", + "division": "roborumble", + "jar": "cbot.cbot.CBot_0.8.jar", + "jar_sha256": "96f2840bf8bb3ecd5dcd7c8079cf0bc0d2a9a6ddfd4da5cb2e7a520b7c6a2ffc", + "key": "roborumble/cbot.cbot.CBot_0.8.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 16.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5153.0, + "scores": [ + 2688.0, + 2465.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/cf.OldMan.OldManXP_0.1.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "cf.OldMan.OldManXP 0.1", + "division": "roborumble", + "jar": "cf.OldMan.OldManXP_0.1.jar", + "jar_sha256": "463822efc7f7fec009495fb2395ad09b36b081119df3e18d3b5044d58a562ce5", + "key": "roborumble/cf.OldMan.OldManXP_0.1.jar", + "kind": "robot" + }, + "latest_observation": "9ee75157b4ba10a1", + "observations": [ + { + "classic": { + "elapsed": 3.3, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 10602.0, + "scores": [ + 5036.0, + 5566.0 + ], + "selected": "cf.OldMan.OldManXP 0.1" + }, + "completed_at": "2026-09-08T21:12:34Z", + "delta_pct": -10.1, + "id": "f54923f1b67ca9f0", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "cf.OldMan.OldManXP 0.1", + "division": "roborumble", + "jar": "cf.OldMan.OldManXP_0.1.jar", + "jar_sha256": "463822efc7f7fec009495fb2395ad09b36b081119df3e18d3b5044d58a562ce5", + "key": "roborumble/cf.OldMan.OldManXP_0.1.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "elapsed": 12.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 9531.0, + "scores": [ + 4804.0, + 4727.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 3.1, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 11310.0, + "scores": [ + 5427.0, + 5883.0 + ], + "selected": "cf.OldMan.OldManXP 0.1" + }, + "completed_at": "2026-09-11T20:09:37Z", + "confirmation": null, + "delta_pct": -19.3, + "id": "9ee75157b4ba10a1", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "cf.OldMan.OldManXP 0.1", + "division": "roborumble", + "jar": "cf.OldMan.OldManXP_0.1.jar", + "jar_sha256": "463822efc7f7fec009495fb2395ad09b36b081119df3e18d3b5044d58a562ce5", + "key": "roborumble/cf.OldMan.OldManXP_0.1.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 14.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 9128.0, + "scores": [ + 4962.0, + 4166.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/cf.mini.Chiva_1.0.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "cf.mini.Chiva 1.0", + "division": "roborumble", + "jar": "cf.mini.Chiva_1.0.jar", + "jar_sha256": "a0aef88f5c5fa4d6542a4e56c1576efb911d6bebb70da9676582c51bcef3c688", + "key": "roborumble/cf.mini.Chiva_1.0.jar", + "kind": "robot" + }, + "latest_observation": "81ca35e884bdda0d", + "observations": [ + { + "classic": { + "elapsed": 2.6, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 5151.0, + "scores": [ + 2301.0, + 2850.0 + ], + "selected": "cf.mini.Chiva 1.0" + }, + "completed_at": "2026-09-08T21:12:18Z", + "delta_pct": -8.7, + "id": "336aaa29d4d4cb86", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "cf.mini.Chiva 1.0", + "division": "roborumble", + "jar": "cf.mini.Chiva_1.0.jar", + "jar_sha256": "a0aef88f5c5fa4d6542a4e56c1576efb911d6bebb70da9676582c51bcef3c688", + "key": "roborumble/cf.mini.Chiva_1.0.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "elapsed": 18.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 4703.0, + "scores": [ + 2536.0, + 2167.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 2.8, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5205.0, + "scores": [ + 3239.0, + 1966.0 + ], + "selected": "cf.mini.Chiva 1.0" + }, + "completed_at": "2026-09-11T20:09:20Z", + "confirmation": null, + "delta_pct": -9.9, + "id": "81ca35e884bdda0d", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "cf.mini.Chiva 1.0", + "division": "roborumble", + "jar": "cf.mini.Chiva_1.0.jar", + "jar_sha256": "a0aef88f5c5fa4d6542a4e56c1576efb911d6bebb70da9676582c51bcef3c688", + "key": "roborumble/cf.mini.Chiva_1.0.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 22.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 4688.0, + "scores": [ + 2689.0, + 1999.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/cf.proto.Shiva_2.2.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "cf.proto.Shiva 2.2", + "division": "roborumble", + "jar": "cf.proto.Shiva_2.2.jar", + "jar_sha256": "b56a27faf5dcfcd10fa25ea0b3d1dd9bedb48eea0bf5e38e8ecb89b339827f61", + "key": "roborumble/cf.proto.Shiva_2.2.jar", + "kind": "robot" + }, + "latest_observation": "982c54f11f7bf862", + "observations": [ + { + "classic": { + "elapsed": 5.5, + "error_count": 2, + "errors": [ + "Error while reading:java.io.FileNotFoundException: C:\\Code\\robocode-api-bridge\\compat-test\\work\\rc-robots\\.data\\cf\\proto\\Shiva.data\\cf.proto.Shiva 2.2 (2).txt.gz (Den angivne fil blev ikke fundet)", + "Error while reading:java.io.FileNotFoundException: C:\\Code\\robocode-api-bridge\\compat-test\\work\\rc-robots\\.data\\cf\\proto\\Shiva.data\\cf.proto.Shiva 2.2 (1).txt.gz (Den angivne fil blev ikke fundet)" + ], + "has_log": true, + "ok": true, + "score": 4670.0, + "scores": [ + 2328.0, + 2342.0 + ], + "selected": "cf.proto.Shiva 2.2" + }, + "completed_at": "2026-09-08T21:16:01Z", + "delta_pct": -5.2, + "id": "92716decc58e938d", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "cf.proto.Shiva 2.2", + "division": "roborumble", + "jar": "cf.proto.Shiva_2.2.jar", + "jar_sha256": "b56a27faf5dcfcd10fa25ea0b3d1dd9bedb48eea0bf5e38e8ecb89b339827f61", + "key": "roborumble/cf.proto.Shiva_2.2.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "elapsed": 22.0, + "error_count": 2, + "errors": [ + "Error while reading:java.io.FileNotFoundException: C:\\Code\\robocode-api-bridge\\compat-test\\work\\tr-bots\\cf.proto.Shiva_2.2\\Shiva.data\\1.txt.gz (Den angivne fil blev ikke fundet)", + "Error while reading:java.io.FileNotFoundException: C:\\Code\\robocode-api-bridge\\compat-test\\work\\tr-bots\\cf.proto.Shiva_2.2-2\\Shiva.data\\2.txt.gz (Den angivne fil blev ikke fundet)" + ], + "has_log": true, + "ok": true, + "score": 4427.0, + "scores": [ + 2362.0, + 2065.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 5.6, + "error_count": 2, + "error_signatures": [ + { + "exception": "java.io.FileNotFoundException", + "origin": "unknown" + } + ], + "errors": [ + "Error while reading:java.io.FileNotFoundException: C:\\Code\\robocode-api-bridge\\compat-test\\work\\rc-robots\\.data\\cf\\proto\\Shiva.data\\cf.proto.Shiva 2.2 (2).txt.gz (Den angivne fil blev ikke fundet)", + "Error while reading:java.io.FileNotFoundException: C:\\Code\\robocode-api-bridge\\compat-test\\work\\rc-robots\\.data\\cf\\proto\\Shiva.data\\cf.proto.Shiva 2.2 (1).txt.gz (Den angivne fil blev ikke fundet)" + ], + "has_log": true, + "ok": true, + "score": 4528.0, + "scores": [ + 2332.0, + 2196.0 + ], + "selected": "cf.proto.Shiva 2.2" + }, + "completed_at": "2026-09-11T20:10:07Z", + "confirmation": null, + "delta_pct": -5.5, + "id": "982c54f11f7bf862", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "cf.proto.Shiva 2.2", + "division": "roborumble", + "jar": "cf.proto.Shiva_2.2.jar", + "jar_sha256": "b56a27faf5dcfcd10fa25ea0b3d1dd9bedb48eea0bf5e38e8ecb89b339827f61", + "key": "roborumble/cf.proto.Shiva_2.2.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 24.0, + "error_count": 2, + "error_signatures": [ + { + "exception": "java.io.FileNotFoundException", + "origin": "unknown" + } + ], + "errors": [ + "Error while reading:java.io.FileNotFoundException: C:\\Code\\robocode-api-bridge\\compat-test\\work\\tr-bots\\cf.proto.Shiva_2.2\\Shiva.data\\2.txt.gz (Den angivne fil blev ikke fundet)", + "Error while reading:java.io.FileNotFoundException: C:\\Code\\robocode-api-bridge\\compat-test\\work\\tr-bots\\cf.proto.Shiva_2.2-2\\Shiva.data\\1.txt.gz (Den angivne fil blev ikke fundet)" + ], + "has_log": true, + "ok": true, + "score": 4280.0, + "scores": [ + 2324.0, + 1956.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/cf.star.Star2_1.23.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "cf.star.Star2 1.23", + "division": "roborumble", + "jar": "cf.star.Star2_1.23.jar", + "jar_sha256": "d1d945c1450132a1a072cb08465db641b83af579d8339115641632aa6e670a4e", + "key": "roborumble/cf.star.Star2_1.23.jar", + "kind": "robot" + }, + "latest_observation": "f7ffd0788cc90587", + "observations": [ + { + "classic": { + "elapsed": 2.7, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 5134.0, + "scores": [ + 2598.0, + 2536.0 + ], + "selected": "cf.star.Star2 1.23" + }, + "completed_at": "2026-09-08T21:16:20Z", + "delta_pct": 17.8, + "id": "8c06e2125b4e11c4", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "cf.star.Star2 1.23", + "division": "roborumble", + "jar": "cf.star.Star2_1.23.jar", + "jar_sha256": "d1d945c1450132a1a072cb08465db641b83af579d8339115641632aa6e670a4e", + "key": "roborumble/cf.star.Star2_1.23.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "elapsed": 16.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 6047.0, + "scores": [ + 4090.0, + 1957.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 2.6, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5608.0, + "scores": [ + 2421.0, + 3187.0 + ], + "selected": "cf.star.Star2 1.23" + }, + "completed_at": "2026-09-11T20:10:29Z", + "confirmation": null, + "delta_pct": 5.8, + "id": "f7ffd0788cc90587", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "cf.star.Star2 1.23", + "division": "roborumble", + "jar": "cf.star.Star2_1.23.jar", + "jar_sha256": "d1d945c1450132a1a072cb08465db641b83af579d8339115641632aa6e670a4e", + "key": "roborumble/cf.star.Star2_1.23.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 18.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5935.0, + "scores": [ + 3268.0, + 2667.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/ch.rhj.rbc.RHJ1_1.0.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "ch.rhj.rbc.RHJ1 1.0", + "division": "roborumble", + "jar": "ch.rhj.rbc.RHJ1_1.0.jar", + "jar_sha256": "f45cba75cecd9459729641dab9cfc9830853d855888acbf42b612f74234e566d", + "key": "roborumble/ch.rhj.rbc.RHJ1_1.0.jar", + "kind": "robot" + }, + "latest_observation": "01de6468fb9276c1", + "observations": [ + { + "classic": { + "elapsed": 3.5, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 12947.0, + "scores": [ + 6393.0, + 6554.0 + ], + "selected": "ch.rhj.rbc.RHJ1 1.0" + }, + "completed_at": "2026-09-08T21:16:56Z", + "delta_pct": 0.5, + "id": "09fc48a0219093cf", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "ch.rhj.rbc.RHJ1 1.0", + "division": "roborumble", + "jar": "ch.rhj.rbc.RHJ1_1.0.jar", + "jar_sha256": "f45cba75cecd9459729641dab9cfc9830853d855888acbf42b612f74234e566d", + "key": "roborumble/ch.rhj.rbc.RHJ1_1.0.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "elapsed": 32.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 13008.0, + "scores": [ + 6950.0, + 6058.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 3.4, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 12894.0, + "scores": [ + 6150.0, + 6744.0 + ], + "selected": "ch.rhj.rbc.RHJ1 1.0" + }, + "completed_at": "2026-09-11T20:11:11Z", + "confirmation": null, + "delta_pct": 0.8, + "id": "01de6468fb9276c1", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "ch.rhj.rbc.RHJ1 1.0", + "division": "roborumble", + "jar": "ch.rhj.rbc.RHJ1_1.0.jar", + "jar_sha256": "f45cba75cecd9459729641dab9cfc9830853d855888acbf42b612f74234e566d", + "key": "roborumble/ch.rhj.rbc.RHJ1_1.0.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 38.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 12998.0, + "scores": [ + 6670.0, + 6328.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/chase.pm.Pytko_1.0.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "chase.pm.Pytko 1.0", + "division": "roborumble", + "jar": "chase.pm.Pytko_1.0.jar", + "jar_sha256": "0bf2f81bd9c5ff44bcb27f2ce214eb769f1c7d2b91ad83a3880e8a17d0f193f3", + "key": "roborumble/chase.pm.Pytko_1.0.jar", + "kind": "robot" + }, + "latest_observation": "f3341a46358cb3a8", + "observations": [ + { + "classic": { + "elapsed": 4.2, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 4950.0, + "scores": [ + 2163.0, + 2787.0 + ], + "selected": "chase.pm.Pytko 1.0" + }, + "completed_at": "2026-09-08T21:17:44Z", + "delta_pct": -5.2, + "id": "5621c60c56abe7ae", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "chase.pm.Pytko 1.0", + "division": "roborumble", + "jar": "chase.pm.Pytko_1.0.jar", + "jar_sha256": "0bf2f81bd9c5ff44bcb27f2ce214eb769f1c7d2b91ad83a3880e8a17d0f193f3", + "key": "roborumble/chase.pm.Pytko_1.0.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "elapsed": 22.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 4692.0, + "scores": [ + 2644.0, + 2048.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 4.3, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5211.0, + "scores": [ + 2391.0, + 2820.0 + ], + "selected": "chase.pm.Pytko 1.0" + }, + "completed_at": "2026-09-11T20:12:03Z", + "confirmation": null, + "delta_pct": -7.8, + "id": "f3341a46358cb3a8", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "chase.pm.Pytko 1.0", + "division": "roborumble", + "jar": "chase.pm.Pytko_1.0.jar", + "jar_sha256": "0bf2f81bd9c5ff44bcb27f2ce214eb769f1c7d2b91ad83a3880e8a17d0f193f3", + "key": "roborumble/chase.pm.Pytko_1.0.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 24.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 4803.0, + "scores": [ + 2494.0, + 2309.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/chickenfuego.UrChicken2_1.0.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "chickenfuego.UrChicken2 1.0", + "division": "roborumble", + "jar": "chickenfuego.UrChicken2_1.0.jar", + "jar_sha256": "a56a6d6bbeae72501cb86c35621436e91b31686db0785cd3151512452bdf818f", + "key": "roborumble/chickenfuego.UrChicken2_1.0.jar", + "kind": "robot" + }, + "latest_observation": "728bbeb46f532bf2", + "observations": [ + { + "classic": { + "elapsed": 5.8, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 5804.0, + "scores": [ + 2824.0, + 2980.0 + ], + "selected": "chickenfuego.UrChicken2 1.0" + }, + "completed_at": "2026-09-08T21:18:36Z", + "delta_pct": -8.7, + "id": "ac7ec21a2a822b4f", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "chickenfuego.UrChicken2 1.0", + "division": "roborumble", + "jar": "chickenfuego.UrChicken2_1.0.jar", + "jar_sha256": "a56a6d6bbeae72501cb86c35621436e91b31686db0785cd3151512452bdf818f", + "key": "roborumble/chickenfuego.UrChicken2_1.0.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "elapsed": 46.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 5300.0, + "scores": [ + 2887.0, + 2413.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 5.4, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 6402.0, + "scores": [ + 3219.0, + 3183.0 + ], + "selected": "chickenfuego.UrChicken2 1.0" + }, + "completed_at": "2026-09-11T20:12:52Z", + "confirmation": null, + "delta_pct": -28.7, + "id": "728bbeb46f532bf2", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "chickenfuego.UrChicken2 1.0", + "division": "roborumble", + "jar": "chickenfuego.UrChicken2_1.0.jar", + "jar_sha256": "a56a6d6bbeae72501cb86c35621436e91b31686db0785cd3151512452bdf818f", + "key": "roborumble/chickenfuego.UrChicken2_1.0.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (score)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 44.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 4566.0, + "scores": [ + 2401.0, + 2165.0 + ], + "skipped": null + } + } + ], + "status": "score-review" + }, + "roborumble/cjk.Merkava_0.1.1.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "cjk.Merkava 0.1.1", + "division": "roborumble", + "jar": "cjk.Merkava_0.1.1.jar", + "jar_sha256": "5a16d1a4eaa4437b1552185a75d121a8153985febc5d3d215f94fc93dbd3f094", + "key": "roborumble/cjk.Merkava_0.1.1.jar", + "kind": "robot" + }, + "latest_observation": "56e7d8dd5c969372", + "observations": [ + { + "classic": { + "elapsed": 2.5, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 5678.0, + "scores": [ + 2936.0, + 2742.0 + ], + "selected": "cjk.Merkava 0.1.1" + }, + "completed_at": "2026-09-08T21:18:55Z", + "delta_pct": -24.1, + "id": "ca8bad284ef8d30e", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "cjk.Merkava 0.1.1", + "division": "roborumble", + "jar": "cjk.Merkava_0.1.1.jar", + "jar_sha256": "5a16d1a4eaa4437b1552185a75d121a8153985febc5d3d215f94fc93dbd3f094", + "key": "roborumble/cjk.Merkava_0.1.1.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "elapsed": 16.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 4311.0, + "scores": [ + 2343.0, + 1968.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 2.4, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5403.0, + "scores": [ + 2983.0, + 2420.0 + ], + "selected": "cjk.Merkava 0.1.1" + }, + "completed_at": "2026-09-11T20:13:13Z", + "confirmation": null, + "delta_pct": -12.3, + "id": "56e7d8dd5c969372", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "cjk.Merkava 0.1.1", + "division": "roborumble", + "jar": "cjk.Merkava_0.1.1.jar", + "jar_sha256": "5a16d1a4eaa4437b1552185a75d121a8153985febc5d3d215f94fc93dbd3f094", + "key": "roborumble/cjk.Merkava_0.1.1.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 18.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 4739.0, + "scores": [ + 2723.0, + 2016.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/cjm.Che_1.2.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "cjm.Che 1.2", + "division": "roborumble", + "jar": "cjm.Che_1.2.jar", + "jar_sha256": "490b1e9e8d36ca42f225dd9cd2bd2033c9dee27ef24d71e2396e5eec5ae4565b", + "key": "roborumble/cjm.Che_1.2.jar", + "kind": "robot" + }, + "latest_observation": "08e3ebbb8e8cafec", + "observations": [ + { + "classic": { + "elapsed": 2.8, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 5896.0, + "scores": [ + 3080.0, + 2816.0 + ], + "selected": "cjm.Che 1.2" + }, + "completed_at": "2026-09-08T21:19:16Z", + "delta_pct": -8.2, + "id": "30b3c8b16bb49f75", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "cjm.Che 1.2", + "division": "roborumble", + "jar": "cjm.Che_1.2.jar", + "jar_sha256": "490b1e9e8d36ca42f225dd9cd2bd2033c9dee27ef24d71e2396e5eec5ae4565b", + "key": "roborumble/cjm.Che_1.2.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "elapsed": 18.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 5415.0, + "scores": [ + 3077.0, + 2338.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 3.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5779.0, + "scores": [ + 2462.0, + 3317.0 + ], + "selected": "cjm.Che 1.2" + }, + "completed_at": "2026-09-11T20:13:38Z", + "confirmation": null, + "delta_pct": -6.8, + "id": "08e3ebbb8e8cafec", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "cjm.Che 1.2", + "division": "roborumble", + "jar": "cjm.Che_1.2.jar", + "jar_sha256": "490b1e9e8d36ca42f225dd9cd2bd2033c9dee27ef24d71e2396e5eec5ae4565b", + "key": "roborumble/cjm.Che_1.2.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 22.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5388.0, + "scores": [ + 2756.0, + 2632.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/cli.Dancer_1.1.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "cli.Dancer 1.1", + "division": "roborumble", + "jar": "cli.Dancer_1.1.jar", + "jar_sha256": "6126e668dd994c5d3b47f50cad7e28313ad0b67ef1d5def7746846a35de8e07b", + "key": "roborumble/cli.Dancer_1.1.jar", + "kind": "robot" + }, + "latest_observation": "76d6527ba565e6e8", + "observations": [ + { + "classic": { + "elapsed": 2.6, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 6556.0, + "scores": [ + 3859.0, + 2697.0 + ], + "selected": "cli.Dancer 1.1" + }, + "completed_at": "2026-09-08T21:19:35Z", + "delta_pct": 9.7, + "id": "75019a166932d5c2", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "cli.Dancer 1.1", + "division": "roborumble", + "jar": "cli.Dancer_1.1.jar", + "jar_sha256": "6126e668dd994c5d3b47f50cad7e28313ad0b67ef1d5def7746846a35de8e07b", + "key": "roborumble/cli.Dancer_1.1.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "elapsed": 16.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 7189.0, + "scores": [ + 3657.0, + 3532.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 2.5, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 6898.0, + "scores": [ + 3826.0, + 3072.0 + ], + "selected": "cli.Dancer 1.1" + }, + "completed_at": "2026-09-11T20:13:59Z", + "confirmation": null, + "delta_pct": 20.5, + "id": "76d6527ba565e6e8", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "cli.Dancer 1.1", + "division": "roborumble", + "jar": "cli.Dancer_1.1.jar", + "jar_sha256": "6126e668dd994c5d3b47f50cad7e28313ad0b67ef1d5def7746846a35de8e07b", + "key": "roborumble/cli.Dancer_1.1.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 18.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 8309.0, + "scores": [ + 4740.0, + 3569.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/cli.WasteOfAmmo_1.0.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "cli.WasteOfAmmo 1.0", + "division": "roborumble", + "jar": "cli.WasteOfAmmo_1.0.jar", + "jar_sha256": "c899395217eb5b9a8c9bdcd3e8869616ec23576e787e4ce3e2c7c3263695b36f", + "key": "roborumble/cli.WasteOfAmmo_1.0.jar", + "kind": "robot" + }, + "latest_observation": "2f903f1fb948749b", + "observations": [ + { + "classic": { + "elapsed": 3.1, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 0.0, + "scores": [ + 0.0, + 0.0 + ], + "selected": "cli.WasteOfAmmo 1.0" + }, + "completed_at": "2026-09-08T21:19:58Z", + "delta_pct": null, + "id": "ad72f39287f5b880", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "cli.WasteOfAmmo 1.0", + "division": "roborumble", + "jar": "cli.WasteOfAmmo_1.0.jar", + "jar_sha256": "c899395217eb5b9a8c9bdcd3e8869616ec23576e787e4ce3e2c7c3263695b36f", + "key": "roborumble/cli.WasteOfAmmo_1.0.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (no score)", + "tank_royale": { + "elapsed": 20.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 1380.0, + "scores": [ + 840.0, + 540.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 3.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 0.0, + "scores": [ + 0.0, + 0.0 + ], + "selected": "cli.WasteOfAmmo 1.0" + }, + "completed_at": "2026-09-11T20:14:25Z", + "confirmation": null, + "delta_pct": null, + "id": "2f903f1fb948749b", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "cli.WasteOfAmmo 1.0", + "division": "roborumble", + "jar": "cli.WasteOfAmmo_1.0.jar", + "jar_sha256": "c899395217eb5b9a8c9bdcd3e8869616ec23576e787e4ce3e2c7c3263695b36f", + "key": "roborumble/cli.WasteOfAmmo_1.0.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (no score)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 22.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 1400.0, + "scores": [ + 760.0, + 640.0 + ], + "skipped": null + } + } + ], + "status": "DISCREPANCY (no score)" + }, + "roborumble/codemojo.nano.Woot_1.0.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "codemojo.nano.Woot 1.0", + "division": "roborumble", + "jar": "codemojo.nano.Woot_1.0.jar", + "jar_sha256": "7f635dc2e4809d680d0bef2e71454a61c03051e0385ec3e11af10105b694c3d6", + "key": "roborumble/codemojo.nano.Woot_1.0.jar", + "kind": "robot" + }, + "latest_observation": "7b75c4d17e30213b", + "observations": [ + { + "classic": { + "elapsed": 2.5, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 4048.0, + "scores": [ + 2085.0, + 1963.0 + ], + "selected": "codemojo.nano.Woot 1.0" + }, + "completed_at": "2026-09-08T21:20:15Z", + "delta_pct": -2.7, + "id": "ec2f186e76fabdbc", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "codemojo.nano.Woot 1.0", + "division": "roborumble", + "jar": "codemojo.nano.Woot_1.0.jar", + "jar_sha256": "7f635dc2e4809d680d0bef2e71454a61c03051e0385ec3e11af10105b694c3d6", + "key": "roborumble/codemojo.nano.Woot_1.0.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "elapsed": 14.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 3939.0, + "scores": [ + 2031.0, + 1908.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 2.4, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 4487.0, + "scores": [ + 1977.0, + 2510.0 + ], + "selected": "codemojo.nano.Woot 1.0" + }, + "completed_at": "2026-09-11T20:14:44Z", + "confirmation": null, + "delta_pct": -20.2, + "id": "7b75c4d17e30213b", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "codemojo.nano.Woot 1.0", + "division": "roborumble", + "jar": "codemojo.nano.Woot_1.0.jar", + "jar_sha256": "7f635dc2e4809d680d0bef2e71454a61c03051e0385ec3e11af10105b694c3d6", + "key": "roborumble/codemojo.nano.Woot_1.0.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 16.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 3582.0, + "scores": [ + 1868.0, + 1714.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/com.arsenic.NewTest_1.0.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "com.arsenic.NewTest 1.0", + "division": "roborumble", + "jar": "com.arsenic.NewTest_1.0.jar", + "jar_sha256": "0a5a9d382489ace685399cf9c5d709daa70f7e545ac85d54a1b0e81bf7d3a412", + "key": "roborumble/com.arsenic.NewTest_1.0.jar", + "kind": "robot" + }, + "latest_observation": "d6d74c72cf5e95ab", + "observations": [ + { + "classic": { + "elapsed": 2.5, + "error_count": 10, + "errors": [ + "SYSTEM: java.lang.ArrayIndexOutOfBoundsException occurred on robocode.BulletHitEvent", + "java.lang.ArrayIndexOutOfBoundsException: Index -47 out of bounds for length 2", + "SYSTEM: java.lang.ArrayIndexOutOfBoundsException occurred on robocode.BulletHitEvent", + "java.lang.ArrayIndexOutOfBoundsException: Index -47 out of bounds for length 2", + "SYSTEM: java.lang.ArrayIndexOutOfBoundsException occurred on robocode.BulletHitEvent", + "java.lang.ArrayIndexOutOfBoundsException: Index -93 out of bounds for length 2", + "SYSTEM: java.lang.ArrayIndexOutOfBoundsException occurred on robocode.BulletHitEvent", + "java.lang.ArrayIndexOutOfBoundsException: Index -53 out of bounds for length 2", + "SYSTEM: java.lang.ArrayIndexOutOfBoundsException occurred on robocode.BulletMissedEvent", + "java.lang.ArrayIndexOutOfBoundsException: Index -47 out of bounds for length 2" + ], + "has_log": true, + "ok": true, + "score": 6336.0, + "scores": [ + 2876.0, + 3460.0 + ], + "selected": "com.arsenic.NewTest 1.0" + }, + "completed_at": "2026-09-08T21:20:32Z", + "delta_pct": 0.3, + "id": "bec9ffc1e65a95d1", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "com.arsenic.NewTest 1.0", + "division": "roborumble", + "jar": "com.arsenic.NewTest_1.0.jar", + "jar_sha256": "0a5a9d382489ace685399cf9c5d709daa70f7e545ac85d54a1b0e81bf7d3a412", + "key": "roborumble/com.arsenic.NewTest_1.0.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "elapsed": 14.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 6352.0, + "scores": [ + 3403.0, + 2949.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 2.4, + "error_count": 12, + "error_signatures": [ + { + "exception": "java.lang.ArrayIndexOutOfBoundsException", + "origin": "com.arsenic.NewTest.onBulletHit" + }, + { + "exception": "java.lang.ArrayIndexOutOfBoundsException", + "origin": "com.arsenic.NewTest.onBulletMissed" + } + ], + "errors": [ + "SYSTEM: java.lang.ArrayIndexOutOfBoundsException occurred on robocode.BulletMissedEvent", + "java.lang.ArrayIndexOutOfBoundsException: Index -42 out of bounds for length 2", + "SYSTEM: java.lang.ArrayIndexOutOfBoundsException occurred on robocode.BulletMissedEvent", + "java.lang.ArrayIndexOutOfBoundsException: Index 43 out of bounds for length 2", + "SYSTEM: java.lang.ArrayIndexOutOfBoundsException occurred on robocode.BulletHitEvent", + "java.lang.ArrayIndexOutOfBoundsException: Index -41 out of bounds for length 2", + "SYSTEM: java.lang.ArrayIndexOutOfBoundsException occurred on robocode.BulletMissedEvent", + "java.lang.ArrayIndexOutOfBoundsException: Index -76 out of bounds for length 2", + "SYSTEM: java.lang.ArrayIndexOutOfBoundsException occurred on robocode.BulletHitEvent", + "java.lang.ArrayIndexOutOfBoundsException: Index -30 out of bounds for length 2", + "SYSTEM: java.lang.ArrayIndexOutOfBoundsException occurred on robocode.BulletMissedEvent", + "java.lang.ArrayIndexOutOfBoundsException: Index -53 out of bounds for length 2" + ], + "has_log": true, + "ok": true, + "score": 6375.0, + "scores": [ + 3613.0, + 2762.0 + ], + "selected": "com.arsenic.NewTest 1.0" + }, + "completed_at": "2026-09-11T20:15:02Z", + "confirmation": null, + "delta_pct": -0.7, + "id": "d6d74c72cf5e95ab", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "com.arsenic.NewTest 1.0", + "division": "roborumble", + "jar": "com.arsenic.NewTest_1.0.jar", + "jar_sha256": "0a5a9d382489ace685399cf9c5d709daa70f7e545ac85d54a1b0e81bf7d3a412", + "key": "roborumble/com.arsenic.NewTest_1.0.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (errors)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 16.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 6328.0, + "scores": [ + 3619.0, + 2709.0 + ], + "skipped": null + } + } + ], + "status": "DISCREPANCY (errors)" + }, + "roborumble/com.blogspot.malinkody.DestrobotMalin_1.0.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "com.blogspot.malinkody.DestrobotMalin 1.0", + "division": "roborumble", + "jar": "com.blogspot.malinkody.DestrobotMalin_1.0.jar", + "jar_sha256": "d3205656d01007c800f5fa5549d247aa7030a40380277752ecd590e091339c27", + "key": "roborumble/com.blogspot.malinkody.DestrobotMalin_1.0.jar", + "kind": "robot" + }, + "latest_observation": "5150f5d9febe75e6", + "observations": [ + { + "classic": { + "elapsed": 3.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 7820.0, + "scores": [ + 3673.0, + 4147.0 + ], + "selected": "com.blogspot.malinkody.DestrobotMalin 1.0" + }, + "completed_at": "2026-09-08T21:21:03Z", + "delta_pct": -58.8, + "id": "41f11a8de1bd0c5b", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "com.blogspot.malinkody.DestrobotMalin 1.0", + "division": "roborumble", + "jar": "com.blogspot.malinkody.DestrobotMalin_1.0.jar", + "jar_sha256": "d3205656d01007c800f5fa5549d247aa7030a40380277752ecd590e091339c27", + "key": "roborumble/com.blogspot.malinkody.DestrobotMalin_1.0.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (score)", + "tank_royale": { + "elapsed": 28.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 3218.0, + "scores": [ + 1747.0, + 1471.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 2.9, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 8493.0, + "scores": [ + 3960.0, + 4533.0 + ], + "selected": "com.blogspot.malinkody.DestrobotMalin 1.0" + }, + "completed_at": "2026-09-11T20:15:50Z", + "confirmation": null, + "delta_pct": -62.7, + "id": "5150f5d9febe75e6", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "com.blogspot.malinkody.DestrobotMalin 1.0", + "division": "roborumble", + "jar": "com.blogspot.malinkody.DestrobotMalin_1.0.jar", + "jar_sha256": "d3205656d01007c800f5fa5549d247aa7030a40380277752ecd590e091339c27", + "key": "roborumble/com.blogspot.malinkody.DestrobotMalin_1.0.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (score)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 28.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 3172.0, + "scores": [ + 2012.0, + 1160.0 + ], + "skipped": null + } + } + ], + "status": "score-review" + }, + "roborumble/com.cohesiva.robocode.ManOwaR_1.0.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "com.cohesiva.robocode.ManOwaR 1.0", + "division": "roborumble", + "jar": "com.cohesiva.robocode.ManOwaR_1.0.jar", + "jar_sha256": "46519fab7d639e4d0a64afdd133618e92b7dcd923b8f252325098cc4a0e9031e", + "key": "roborumble/com.cohesiva.robocode.ManOwaR_1.0.jar", + "kind": "robot" + }, + "latest_observation": "12786f49002d3554", + "observations": [ + { + "classic": { + "elapsed": 3.3, + "error_count": 4, + "errors": [ + "SYSTEM: java.lang.IllegalArgumentException occurred on robocode.HitByBulletEvent", + "java.lang.IllegalArgumentException: bound must be positive", + "SYSTEM: java.lang.IllegalArgumentException occurred on robocode.HitByBulletEvent", + "java.lang.IllegalArgumentException: bound must be positive" + ], + "has_log": true, + "ok": true, + "score": 4856.0, + "scores": [ + 2550.0, + 2306.0 + ], + "selected": "com.cohesiva.robocode.ManOwaR 1.0" + }, + "completed_at": "2026-09-08T21:21:39Z", + "delta_pct": 0.4, + "id": "b68f0a69b507a3fe", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "com.cohesiva.robocode.ManOwaR 1.0", + "division": "roborumble", + "jar": "com.cohesiva.robocode.ManOwaR_1.0.jar", + "jar_sha256": "46519fab7d639e4d0a64afdd133618e92b7dcd923b8f252325098cc4a0e9031e", + "key": "roborumble/com.cohesiva.robocode.ManOwaR_1.0.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "elapsed": 32.0, + "error_count": 1, + "errors": [ + "java.lang.IllegalArgumentException: bound must be positive" + ], + "has_log": true, + "ok": true, + "score": 4873.0, + "scores": [ + 2446.0, + 2427.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 3.2, + "error_count": 20, + "error_signatures": [ + { + "exception": "java.lang.IllegalArgumentException", + "origin": "com.cohesiva.robocode.AntiGravMovement.onHitByBullet" + } + ], + "errors": [ + "SYSTEM: java.lang.IllegalArgumentException occurred on robocode.HitByBulletEvent", + "java.lang.IllegalArgumentException: bound must be positive", + "SYSTEM: java.lang.IllegalArgumentException occurred on robocode.HitByBulletEvent", + "java.lang.IllegalArgumentException: bound must be positive", + "SYSTEM: java.lang.IllegalArgumentException occurred on robocode.HitByBulletEvent", + "java.lang.IllegalArgumentException: bound must be positive", + "SYSTEM: java.lang.IllegalArgumentException occurred on robocode.HitByBulletEvent", + "java.lang.IllegalArgumentException: bound must be positive", + "SYSTEM: java.lang.IllegalArgumentException occurred on robocode.HitByBulletEvent", + "java.lang.IllegalArgumentException: bound must be positive", + "SYSTEM: java.lang.IllegalArgumentException occurred on robocode.HitByBulletEvent", + "java.lang.IllegalArgumentException: bound must be positive", + "SYSTEM: java.lang.IllegalArgumentException occurred on robocode.HitByBulletEvent", + "java.lang.IllegalArgumentException: bound must be positive", + "SYSTEM: java.lang.IllegalArgumentException occurred on robocode.HitByBulletEvent", + "java.lang.IllegalArgumentException: bound must be positive", + "SYSTEM: java.lang.IllegalArgumentException occurred on robocode.HitByBulletEvent", + "java.lang.IllegalArgumentException: bound must be positive", + "SYSTEM: java.lang.IllegalArgumentException occurred on robocode.HitByBulletEvent", + "java.lang.IllegalArgumentException: bound must be positive" + ], + "has_log": true, + "ok": true, + "score": 4749.0, + "scores": [ + 1967.0, + 2782.0 + ], + "selected": "com.cohesiva.robocode.ManOwaR 1.0" + }, + "completed_at": "2026-09-11T20:16:25Z", + "confirmation": null, + "delta_pct": -2.6, + "id": "12786f49002d3554", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "com.cohesiva.robocode.ManOwaR 1.0", + "division": "roborumble", + "jar": "com.cohesiva.robocode.ManOwaR_1.0.jar", + "jar_sha256": "46519fab7d639e4d0a64afdd133618e92b7dcd923b8f252325098cc4a0e9031e", + "key": "roborumble/com.cohesiva.robocode.ManOwaR_1.0.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 32.0, + "error_count": 2, + "error_signatures": [ + { + "exception": "java.lang.IllegalArgumentException", + "origin": "com.cohesiva.robocode.AntiGravMovement.onHitByBullet" + } + ], + "errors": [ + "java.lang.IllegalArgumentException: bound must be positive", + "java.lang.IllegalArgumentException: bound must be positive" + ], + "has_log": true, + "ok": true, + "score": 4627.0, + "scores": [ + 2441.0, + 2186.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/com.sociesc.T1000_1.0.0.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "com.sociesc.T1000 1.0.0", + "division": "roborumble", + "jar": "com.sociesc.T1000_1.0.0.jar", + "jar_sha256": "4398cb800fc016f19b0a9841c795e5bdf33ab65beaff628759abf81ce711732f", + "key": "roborumble/com.sociesc.T1000_1.0.0.jar", + "kind": "robot" + }, + "latest_observation": "0f2d5c4b9089dfeb", + "observations": [ + { + "classic": { + "elapsed": 3.6, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 0.0, + "scores": [ + 0.0, + 0.0 + ], + "selected": "com.sociesc.T1000 1.0.0" + }, + "completed_at": "2026-09-08T21:22:15Z", + "delta_pct": null, + "id": "c50ef80274e4a320", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "com.sociesc.T1000 1.0.0", + "division": "roborumble", + "jar": "com.sociesc.T1000_1.0.0.jar", + "jar_sha256": "4398cb800fc016f19b0a9841c795e5bdf33ab65beaff628759abf81ce711732f", + "key": "roborumble/com.sociesc.T1000_1.0.0.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (no score)", + "tank_royale": { + "elapsed": 32.1, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 362.0, + "scores": [ + 181.0, + 181.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 3.2, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 3.0, + "scores": [ + 2.0, + 1.0 + ], + "selected": "com.sociesc.T1000 1.0.0" + }, + "completed_at": "2026-09-11T20:16:59Z", + "confirmation": null, + "delta_pct": 13933.3, + "id": "0f2d5c4b9089dfeb", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "com.sociesc.T1000 1.0.0", + "division": "roborumble", + "jar": "com.sociesc.T1000_1.0.0.jar", + "jar_sha256": "4398cb800fc016f19b0a9841c795e5bdf33ab65beaff628759abf81ce711732f", + "key": "roborumble/com.sociesc.T1000_1.0.0.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (score)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 30.1, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 421.0, + "scores": [ + 241.0, + 180.0 + ], + "skipped": null + } + } + ], + "status": "score-review" + }, + "roborumble/com.spp.robocode.MostlyHarmless_010.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "com.spp.robocode.MostlyHarmless 010", + "division": "roborumble", + "jar": "com.spp.robocode.MostlyHarmless_010.jar", + "jar_sha256": "79e3073e986fc6cdf59da91bb4f2b4c271770c7b31600fd2eafebb20bfca2710", + "key": "roborumble/com.spp.robocode.MostlyHarmless_010.jar", + "kind": "robot" + }, + "latest_observation": "bf9624b1e5be7364", + "observations": [ + { + "classic": { + "elapsed": 3.6, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 7087.0, + "scores": [ + 3817.0, + 3270.0 + ], + "selected": "com.spp.robocode.MostlyHarmless 010" + }, + "completed_at": "2026-09-08T21:22:39Z", + "delta_pct": 0.5, + "id": "7f12b894b7bb568c", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "com.spp.robocode.MostlyHarmless 010", + "division": "roborumble", + "jar": "com.spp.robocode.MostlyHarmless_010.jar", + "jar_sha256": "79e3073e986fc6cdf59da91bb4f2b4c271770c7b31600fd2eafebb20bfca2710", + "key": "roborumble/com.spp.robocode.MostlyHarmless_010.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "elapsed": 20.1, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 7123.0, + "scores": [ + 3634.0, + 3489.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 3.4, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 6791.0, + "scores": [ + 3557.0, + 3234.0 + ], + "selected": "com.spp.robocode.MostlyHarmless 010" + }, + "completed_at": "2026-09-11T20:17:25Z", + "confirmation": null, + "delta_pct": 3.8, + "id": "bf9624b1e5be7364", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "com.spp.robocode.MostlyHarmless 010", + "division": "roborumble", + "jar": "com.spp.robocode.MostlyHarmless_010.jar", + "jar_sha256": "79e3073e986fc6cdf59da91bb4f2b4c271770c7b31600fd2eafebb20bfca2710", + "key": "roborumble/com.spp.robocode.MostlyHarmless_010.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 22.1, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 7048.0, + "scores": [ + 4188.0, + 2860.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/com.syncleus.robocode.Dreadnaught_0.1.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "com.syncleus.robocode.Dreadnaught 0.1", + "division": "roborumble", + "jar": "com.syncleus.robocode.Dreadnaught_0.1.jar", + "jar_sha256": "4a2a9926375fca4cf32ea72bdc8ab43930223f2090bae428474eafb9a6dd823c", + "key": "roborumble/com.syncleus.robocode.Dreadnaught_0.1.jar", + "kind": "robot" + }, + "latest_observation": "74e041fd9d303f18", + "observations": [ + { + "classic": { + "elapsed": 2.6, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 12138.0, + "scores": [ + 5649.0, + 6489.0 + ], + "selected": "com.syncleus.robocode.Dreadnaught 0.1" + }, + "completed_at": "2026-09-08T21:22:56Z", + "delta_pct": 1.2, + "id": "f963f02cb575c278", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "com.syncleus.robocode.Dreadnaught 0.1", + "division": "roborumble", + "jar": "com.syncleus.robocode.Dreadnaught_0.1.jar", + "jar_sha256": "4a2a9926375fca4cf32ea72bdc8ab43930223f2090bae428474eafb9a6dd823c", + "key": "roborumble/com.syncleus.robocode.Dreadnaught_0.1.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "elapsed": 14.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 12285.0, + "scores": [ + 6150.0, + 6135.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 2.4, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 12117.0, + "scores": [ + 6241.0, + 5876.0 + ], + "selected": "com.syncleus.robocode.Dreadnaught 0.1" + }, + "completed_at": "2026-09-11T20:17:42Z", + "confirmation": null, + "delta_pct": -4.3, + "id": "74e041fd9d303f18", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "com.syncleus.robocode.Dreadnaught 0.1", + "division": "roborumble", + "jar": "com.syncleus.robocode.Dreadnaught_0.1.jar", + "jar_sha256": "4a2a9926375fca4cf32ea72bdc8ab43930223f2090bae428474eafb9a6dd823c", + "key": "roborumble/com.syncleus.robocode.Dreadnaught_0.1.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 14.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 11594.0, + "scores": [ + 5853.0, + 5741.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/com.timothyveletta.FuzzyBot_1.1.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "com.timothyveletta.FuzzyBot 1.1", + "division": "roborumble", + "jar": "com.timothyveletta.FuzzyBot_1.1.jar", + "jar_sha256": "4d2003ddcb53060505ae0c6c32b74ed389da21f047faba64f6fe03bb9488fa37", + "key": "roborumble/com.timothyveletta.FuzzyBot_1.1.jar", + "kind": "robot" + }, + "latest_observation": "2725e155384329ea", + "observations": [ + { + "classic": { + "elapsed": 2.5, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 8421.0, + "scores": [ + 4238.0, + 4183.0 + ], + "selected": "com.timothyveletta.FuzzyBot 1.1" + }, + "completed_at": "2026-09-08T21:23:13Z", + "delta_pct": -3.5, + "id": "f3979e1d91165e7b", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "com.timothyveletta.FuzzyBot 1.1", + "division": "roborumble", + "jar": "com.timothyveletta.FuzzyBot_1.1.jar", + "jar_sha256": "4d2003ddcb53060505ae0c6c32b74ed389da21f047faba64f6fe03bb9488fa37", + "key": "roborumble/com.timothyveletta.FuzzyBot_1.1.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "elapsed": 14.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 8126.0, + "scores": [ + 4244.0, + 3882.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 2.4, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 8320.0, + "scores": [ + 4669.0, + 3651.0 + ], + "selected": "com.timothyveletta.FuzzyBot 1.1" + }, + "completed_at": "2026-09-11T20:18:00Z", + "confirmation": null, + "delta_pct": 0.0, + "id": "2725e155384329ea", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "com.timothyveletta.FuzzyBot 1.1", + "division": "roborumble", + "jar": "com.timothyveletta.FuzzyBot_1.1.jar", + "jar_sha256": "4d2003ddcb53060505ae0c6c32b74ed389da21f047faba64f6fe03bb9488fa37", + "key": "roborumble/com.timothyveletta.FuzzyBot_1.1.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 16.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 8322.0, + "scores": [ + 5142.0, + 3180.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/conscience.Bulldozer_1.0a.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "conscience.Bulldozer 1.0a", + "division": "roborumble", + "jar": "conscience.Bulldozer_1.0a.jar", + "jar_sha256": "f822506ece11632ca21436cfede847408f696140c474ae3b35e25187fbe27875", + "key": "roborumble/conscience.Bulldozer_1.0a.jar", + "kind": "robot" + }, + "latest_observation": "d7ba964e4e43901c", + "observations": [ + { + "classic": { + "elapsed": 2.2, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 10965.0, + "scores": [ + 5873.0, + 5092.0 + ], + "selected": "conscience.Bulldozer 1.0a" + }, + "completed_at": "2026-09-08T21:23:25Z", + "delta_pct": 51.2, + "id": "34ee10313f50e735", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "conscience.Bulldozer 1.0a", + "division": "roborumble", + "jar": "conscience.Bulldozer_1.0a.jar", + "jar_sha256": "f822506ece11632ca21436cfede847408f696140c474ae3b35e25187fbe27875", + "key": "roborumble/conscience.Bulldozer_1.0a.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (score)", + "tank_royale": { + "elapsed": 10.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 16581.0, + "scores": [ + 8305.0, + 8276.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 2.1, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 10899.0, + "scores": [ + 5182.0, + 5717.0 + ], + "selected": "conscience.Bulldozer 1.0a" + }, + "completed_at": "2026-09-11T20:18:13Z", + "confirmation": null, + "delta_pct": 51.4, + "id": "d7ba964e4e43901c", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "conscience.Bulldozer 1.0a", + "division": "roborumble", + "jar": "conscience.Bulldozer_1.0a.jar", + "jar_sha256": "f822506ece11632ca21436cfede847408f696140c474ae3b35e25187fbe27875", + "key": "roborumble/conscience.Bulldozer_1.0a.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (score)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 10.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 16498.0, + "scores": [ + 8295.0, + 8203.0 + ], + "skipped": null + } + } + ], + "status": "score-review" + }, + "roborumble/conscience.Electron_1.3g.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "conscience.Electron 1.3g", + "division": "roborumble", + "jar": "conscience.Electron_1.3g.jar", + "jar_sha256": "a8d12ab9530cd0f748593ac3d04cd2cf0b563713905457257c3395b7ab7aaf9b", + "key": "roborumble/conscience.Electron_1.3g.jar", + "kind": "robot" + }, + "latest_observation": "19908c53a430749d", + "observations": [ + { + "classic": { + "elapsed": 3.4, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 8619.0, + "scores": [ + 4673.0, + 3946.0 + ], + "selected": "conscience.Electron 1.3g" + }, + "completed_at": "2026-09-08T21:23:43Z", + "delta_pct": 6.9, + "id": "60e25212f69814cd", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "conscience.Electron 1.3g", + "division": "roborumble", + "jar": "conscience.Electron_1.3g.jar", + "jar_sha256": "a8d12ab9530cd0f748593ac3d04cd2cf0b563713905457257c3395b7ab7aaf9b", + "key": "roborumble/conscience.Electron_1.3g.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "elapsed": 14.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 9213.0, + "scores": [ + 4903.0, + 4310.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 2.3, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 9201.0, + "scores": [ + 4493.0, + 4708.0 + ], + "selected": "conscience.Electron 1.3g" + }, + "completed_at": "2026-09-11T20:18:30Z", + "confirmation": null, + "delta_pct": 0.8, + "id": "19908c53a430749d", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "conscience.Electron 1.3g", + "division": "roborumble", + "jar": "conscience.Electron_1.3g.jar", + "jar_sha256": "a8d12ab9530cd0f748593ac3d04cd2cf0b563713905457257c3395b7ab7aaf9b", + "key": "roborumble/conscience.Electron_1.3g.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 14.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 9277.0, + "scores": [ + 4791.0, + 4486.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/conscience.Idem_1.0a.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "conscience.Idem 1.0a", + "division": "roborumble", + "jar": "conscience.Idem_1.0a.jar", + "jar_sha256": "1635ea6692d7c89d41d0e089fced55ac334f24f429380fb686590ca58cecfb2d", + "key": "roborumble/conscience.Idem_1.0a.jar", + "kind": "robot" + }, + "latest_observation": "eb8ec45277d96dfd", + "observations": [ + { + "classic": { + "elapsed": 8.8, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 9441.0, + "scores": [ + 4317.0, + 5124.0 + ], + "selected": "conscience.Idem 1.0a" + }, + "completed_at": "2026-09-08T21:26:24Z", + "delta_pct": -19.8, + "id": "2c5f75820a136af0", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "conscience.Idem 1.0a", + "division": "roborumble", + "jar": "conscience.Idem_1.0a.jar", + "jar_sha256": "1635ea6692d7c89d41d0e089fced55ac334f24f429380fb686590ca58cecfb2d", + "key": "roborumble/conscience.Idem_1.0a.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "elapsed": 152.2, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 7569.0, + "scores": [ + 4064.0, + 3505.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 6.9, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 9375.0, + "scores": [ + 4639.0, + 4736.0 + ], + "selected": "conscience.Idem 1.0a" + }, + "completed_at": "2026-09-11T20:22:40Z", + "confirmation": null, + "delta_pct": -35.1, + "id": "eb8ec45277d96dfd", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "conscience.Idem 1.0a", + "division": "roborumble", + "jar": "conscience.Idem_1.0a.jar", + "jar_sha256": "1635ea6692d7c89d41d0e089fced55ac334f24f429380fb686590ca58cecfb2d", + "key": "roborumble/conscience.Idem_1.0a.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (score)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 243.2, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 6082.0, + "scores": [ + 3305.0, + 2777.0 + ], + "skipped": null + } + } + ], + "status": "score-review" + }, + "roborumble/conscience.Suicidal_1.1.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "conscience.Suicidal 1.1", + "division": "roborumble", + "jar": "conscience.Suicidal_1.1.jar", + "jar_sha256": "4650b8e8b5705e0fafb87fb4ffdcda77597f168c7c1c9272abae80691ad4f3d6", + "key": "roborumble/conscience.Suicidal_1.1.jar", + "kind": "robot" + }, + "latest_observation": "a392eb662de14448", + "observations": [ + { + "classic": { + "elapsed": 2.6, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 0.0, + "scores": [ + 0.0, + 0.0 + ], + "selected": "conscience.Suicidal 1.1" + }, + "completed_at": "2026-09-08T21:26:39Z", + "delta_pct": null, + "id": "126c32b41d68f5f3", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "conscience.Suicidal 1.1", + "division": "roborumble", + "jar": "conscience.Suicidal_1.1.jar", + "jar_sha256": "4650b8e8b5705e0fafb87fb4ffdcda77597f168c7c1c9272abae80691ad4f3d6", + "key": "roborumble/conscience.Suicidal_1.1.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (no score)", + "tank_royale": { + "elapsed": 12.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 2100.0, + "scores": [ + 1260.0, + 840.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 2.6, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 0.0, + "scores": [ + 0.0, + 0.0 + ], + "selected": "conscience.Suicidal 1.1" + }, + "completed_at": "2026-09-11T20:22:57Z", + "confirmation": null, + "delta_pct": null, + "id": "a392eb662de14448", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "conscience.Suicidal 1.1", + "division": "roborumble", + "jar": "conscience.Suicidal_1.1.jar", + "jar_sha256": "4650b8e8b5705e0fafb87fb4ffdcda77597f168c7c1c9272abae80691ad4f3d6", + "key": "roborumble/conscience.Suicidal_1.1.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (no score)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 14.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 2080.0, + "scores": [ + 1280.0, + 800.0 + ], + "skipped": null + } + } + ], + "status": "DISCREPANCY (no score)" + }, + "roborumble/cre.Karolos_0.32.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "cre.Karolos 0.32", + "division": "roborumble", + "jar": "cre.Karolos_0.32.jar", + "jar_sha256": "9d35fbbe7c3c3a2d325d49028ea3c4be40906f0f5e919a49dd46f66ca734e7ca", + "key": "roborumble/cre.Karolos_0.32.jar", + "kind": "robot" + }, + "latest_observation": "7bb15adf1502a23c", + "observations": [ + { + "classic": { + "elapsed": 9.2, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 6626.0, + "scores": [ + 3289.0, + 3337.0 + ], + "selected": "cre.Karolos 0.32" + }, + "completed_at": "2026-09-08T21:26:53Z", + "delta_pct": null, + "id": "0c5b559772cf4ee1", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "cre.Karolos 0.32", + "division": "roborumble", + "jar": "cre.Karolos_0.32.jar", + "jar_sha256": "9d35fbbe7c3c3a2d325d49028ea3c4be40906f0f5e919a49dd46f66ca734e7ca", + "key": "roborumble/cre.Karolos_0.32.jar", + "kind": "robot" + }, + "status": "FAIL (TR)", + "tank_royale": { + "elapsed": 4.2, + "error_count": 370, + "errors": [ + "HARNESS: worker produced no result (exit code -1)", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null" + ], + "has_log": true, + "ok": false, + "score": null, + "scores": [], + "skipped": null + } + }, + { + "classic": { + "elapsed": 9.4, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 6430.0, + "scores": [ + 3515.0, + 2915.0 + ], + "selected": "cre.Karolos 0.32" + }, + "completed_at": "2026-09-11T20:23:11Z", + "confirmation": null, + "delta_pct": null, + "id": "7bb15adf1502a23c", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "cre.Karolos 0.32", + "division": "roborumble", + "jar": "cre.Karolos_0.32.jar", + "jar_sha256": "9d35fbbe7c3c3a2d325d49028ea3c4be40906f0f5e919a49dd46f66ca734e7ca", + "key": "roborumble/cre.Karolos_0.32.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (outcome)", + "tank_royale": { + "bridge_only_signatures": [ + [ + "java.lang.NullPointerException", + "cre.b.d.b" + ] + ], + "elapsed": 4.2, + "error_count": 204, + "error_signatures": [ + { + "exception": "java.lang.NullPointerException", + "origin": "cre.b.d.b" + } + ], + "errors": [ + "HARNESS: worker produced no result (exit code -1)", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null" + ], + "has_log": true, + "ok": false, + "score": null, + "scores": [], + "skipped": null + } + } + ], + "status": "DISCREPANCY (outcome)" + }, + "roborumble/cs.Nene_1.0.5.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "cs.Nene 1.0.5", + "division": "roborumble", + "jar": "cs.Nene_1.0.5.jar", + "jar_sha256": "9615be8f8f2bdf4f42a38f74b4b81d0944e86f06311582915a78af06d529e856", + "key": "roborumble/cs.Nene_1.0.5.jar", + "kind": "robot" + }, + "latest_observation": "0beaabd2346d9730", + "observations": [ + { + "classic": { + "elapsed": 11.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 4672.0, + "scores": [ + 2424.0, + 2248.0 + ], + "selected": "cs.Nene 1.0.5" + }, + "completed_at": "2026-09-08T21:27:36Z", + "delta_pct": -100.0, + "id": "77f6703bbf53891a", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "cs.Nene 1.0.5", + "division": "roborumble", + "jar": "cs.Nene_1.0.5.jar", + "jar_sha256": "9615be8f8f2bdf4f42a38f74b4b81d0944e86f06311582915a78af06d529e856", + "key": "roborumble/cs.Nene_1.0.5.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (score)", + "tank_royale": { + "elapsed": 32.1, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 0.0, + "scores": [ + 0.0, + 0.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 10.9, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 4614.0, + "scores": [ + 2791.0, + 1823.0 + ], + "selected": "cs.Nene 1.0.5" + }, + "completed_at": "2026-09-11T20:23:56Z", + "confirmation": null, + "delta_pct": -100.0, + "id": "0beaabd2346d9730", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "cs.Nene 1.0.5", + "division": "roborumble", + "jar": "cs.Nene_1.0.5.jar", + "jar_sha256": "9615be8f8f2bdf4f42a38f74b4b81d0944e86f06311582915a78af06d529e856", + "key": "roborumble/cs.Nene_1.0.5.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (score)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 34.1, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 0.0, + "scores": [ + 0.0, + 0.0 + ], + "skipped": null + } + } + ], + "status": "score-review" + }, + "roborumble/cs.PumpkinPie_1.0.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "cs.PumpkinPie 1.0", + "division": "roborumble", + "jar": "cs.PumpkinPie_1.0.jar", + "jar_sha256": "d395a080e3bfff0c30871bb5f5b255b824f5da4a72f4b0f77bab84cd8a9278fa", + "key": "roborumble/cs.PumpkinPie_1.0.jar", + "kind": "robot" + }, + "latest_observation": "c725fb8efdc81773", + "observations": [ + { + "classic": { + "elapsed": 10.6, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 4960.0, + "scores": [ + 2852.0, + 2108.0 + ], + "selected": "cs.PumpkinPie 1.0" + }, + "completed_at": "2026-09-08T21:28:17Z", + "delta_pct": -3.4, + "id": "90e4313a94769aff", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "cs.PumpkinPie 1.0", + "division": "roborumble", + "jar": "cs.PumpkinPie_1.0.jar", + "jar_sha256": "d395a080e3bfff0c30871bb5f5b255b824f5da4a72f4b0f77bab84cd8a9278fa", + "key": "roborumble/cs.PumpkinPie_1.0.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "elapsed": 30.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 4790.0, + "scores": [ + 2664.0, + 2126.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 11.3, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5008.0, + "scores": [ + 2763.0, + 2245.0 + ], + "selected": "cs.PumpkinPie 1.0" + }, + "completed_at": "2026-09-11T20:24:54Z", + "confirmation": null, + "delta_pct": -7.6, + "id": "c725fb8efdc81773", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "cs.PumpkinPie 1.0", + "division": "roborumble", + "jar": "cs.PumpkinPie_1.0.jar", + "jar_sha256": "d395a080e3bfff0c30871bb5f5b255b824f5da4a72f4b0f77bab84cd8a9278fa", + "key": "roborumble/cs.PumpkinPie_1.0.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 46.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 4626.0, + "scores": [ + 2525.0, + 2101.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/cs.Wren_1.0.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "cs.Wren 1.0", + "division": "roborumble", + "jar": "cs.Wren_1.0.jar", + "jar_sha256": "89f30ea0d295bbc4516e9dad72426663fdf68707b2c733555e408c35679770ea", + "key": "roborumble/cs.Wren_1.0.jar", + "kind": "robot" + }, + "latest_observation": "038056ec38361bd3", + "observations": [ + { + "classic": { + "elapsed": 2.9, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 7915.0, + "scores": [ + 4387.0, + 3528.0 + ], + "selected": "cs.Wren 1.0" + }, + "completed_at": "2026-09-08T21:29:04Z", + "delta_pct": -4.4, + "id": "c9973e9dd44d5919", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "cs.Wren 1.0", + "division": "roborumble", + "jar": "cs.Wren_1.0.jar", + "jar_sha256": "89f30ea0d295bbc4516e9dad72426663fdf68707b2c733555e408c35679770ea", + "key": "roborumble/cs.Wren_1.0.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "elapsed": 18.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 7564.0, + "scores": [ + 4552.0, + 3012.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 2.9, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 8205.0, + "scores": [ + 4192.0, + 4013.0 + ], + "selected": "cs.Wren 1.0" + }, + "completed_at": "2026-09-11T20:25:47Z", + "confirmation": null, + "delta_pct": -6.1, + "id": "038056ec38361bd3", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "cs.Wren 1.0", + "division": "roborumble", + "jar": "cs.Wren_1.0.jar", + "jar_sha256": "89f30ea0d295bbc4516e9dad72426663fdf68707b2c733555e408c35679770ea", + "key": "roborumble/cs.Wren_1.0.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 20.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 7703.0, + "scores": [ + 4002.0, + 3701.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/cs.s2.Seraphim_2.3.1.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "cs.s2.Seraphim 2.3.1", + "division": "roborumble", + "jar": "cs.s2.Seraphim_2.3.1.jar", + "jar_sha256": "d5bc11f229b5e2727bae6f8065251ed72bb0cc51ce900684183832c9e45a9845", + "key": "roborumble/cs.s2.Seraphim_2.3.1.jar", + "kind": "robot" + }, + "latest_observation": "ea63d4fa2eac6c25", + "observations": [ + { + "classic": { + "elapsed": 4.9, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 4910.0, + "scores": [ + 2613.0, + 2297.0 + ], + "selected": "cs.s2.Seraphim 2.3.1" + }, + "completed_at": "2026-09-08T21:28:42Z", + "delta_pct": -0.1, + "id": "de2ae85b37c1610b", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "cs.s2.Seraphim 2.3.1", + "division": "roborumble", + "jar": "cs.s2.Seraphim_2.3.1.jar", + "jar_sha256": "d5bc11f229b5e2727bae6f8065251ed72bb0cc51ce900684183832c9e45a9845", + "key": "roborumble/cs.s2.Seraphim_2.3.1.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "elapsed": 20.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 4904.0, + "scores": [ + 2519.0, + 2385.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 5.1, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5033.0, + "scores": [ + 2473.0, + 2560.0 + ], + "selected": "cs.s2.Seraphim 2.3.1" + }, + "completed_at": "2026-09-11T20:25:23Z", + "confirmation": null, + "delta_pct": -4.9, + "id": "ea63d4fa2eac6c25", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "cs.s2.Seraphim 2.3.1", + "division": "roborumble", + "jar": "cs.s2.Seraphim_2.3.1.jar", + "jar_sha256": "d5bc11f229b5e2727bae6f8065251ed72bb0cc51ce900684183832c9e45a9845", + "key": "roborumble/cs.s2.Seraphim_2.3.1.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 24.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 4788.0, + "scores": [ + 2642.0, + 2146.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/csm.NthGeneration_0.04.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "csm.NthGeneration 0.04", + "division": "roborumble", + "jar": "csm.NthGeneration_0.04.jar", + "jar_sha256": "e7b92a77f2fe7f2c8c1cd2d4a90529f8c66551770a6f2d176b628217593226a4", + "key": "roborumble/csm.NthGeneration_0.04.jar", + "kind": "robot" + }, + "latest_observation": "f513f892fcf3c5dc", + "observations": [ + { + "classic": { + "elapsed": 3.3, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 4659.0, + "scores": [ + 2071.0, + 2588.0 + ], + "selected": "csm.NthGeneration 0.04" + }, + "completed_at": "2026-09-08T21:29:45Z", + "delta_pct": -5.0, + "id": "e8bab6b8456b7c4a", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "csm.NthGeneration 0.04", + "division": "roborumble", + "jar": "csm.NthGeneration_0.04.jar", + "jar_sha256": "e7b92a77f2fe7f2c8c1cd2d4a90529f8c66551770a6f2d176b628217593226a4", + "key": "roborumble/csm.NthGeneration_0.04.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "elapsed": 38.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 4426.0, + "scores": [ + 2381.0, + 2045.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 3.3, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 4626.0, + "scores": [ + 2552.0, + 2074.0 + ], + "selected": "csm.NthGeneration 0.04" + }, + "completed_at": "2026-09-11T20:26:36Z", + "confirmation": null, + "delta_pct": -20.7, + "id": "f513f892fcf3c5dc", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "csm.NthGeneration 0.04", + "division": "roborumble", + "jar": "csm.NthGeneration_0.04.jar", + "jar_sha256": "e7b92a77f2fe7f2c8c1cd2d4a90529f8c66551770a6f2d176b628217593226a4", + "key": "roborumble/csm.NthGeneration_0.04.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 46.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 3668.0, + "scores": [ + 2079.0, + 1589.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/csp.Eagle_3.30.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "csp.Eagle 3.30", + "division": "roborumble", + "jar": "csp.Eagle_3.30.jar", + "jar_sha256": "8a09a1ad3e1e4eb01f84d98868d26db8c0e58b4900ca41ddc93ddf13a56fbcce", + "key": "roborumble/csp.Eagle_3.30.jar", + "kind": "robot" + }, + "latest_observation": "f1344f1c2958947d", + "observations": [ + { + "classic": { + "elapsed": 2.4, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 7114.0, + "scores": [ + 3203.0, + 3911.0 + ], + "selected": "csp.Eagle 3.30" + }, + "completed_at": "2026-09-08T21:30:04Z", + "delta_pct": -37.0, + "id": "e0122d77dc924a71", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "csp.Eagle 3.30", + "division": "roborumble", + "jar": "csp.Eagle_3.30.jar", + "jar_sha256": "8a09a1ad3e1e4eb01f84d98868d26db8c0e58b4900ca41ddc93ddf13a56fbcce", + "key": "roborumble/csp.Eagle_3.30.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (score)", + "tank_royale": { + "elapsed": 16.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 4484.0, + "scores": [ + 2376.0, + 2108.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 2.6, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 7151.0, + "scores": [ + 3535.0, + 3616.0 + ], + "selected": "csp.Eagle 3.30" + }, + "completed_at": "2026-09-11T20:26:57Z", + "confirmation": null, + "delta_pct": -25.4, + "id": "f1344f1c2958947d", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "csp.Eagle 3.30", + "division": "roborumble", + "jar": "csp.Eagle_3.30.jar", + "jar_sha256": "8a09a1ad3e1e4eb01f84d98868d26db8c0e58b4900ca41ddc93ddf13a56fbcce", + "key": "roborumble/csp.Eagle_3.30.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (score)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 18.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5335.0, + "scores": [ + 2962.0, + 2373.0 + ], + "skipped": null + } + } + ], + "status": "score-review" + }, + "roborumble/css.Delitioner_0.11.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "css.Delitioner 0.11", + "division": "roborumble", + "jar": "css.Delitioner_0.11.jar", + "jar_sha256": "6c718a72f59cec4464649d650469adfcccaf0de0744d7fd3e3ef7a2c5ce28c0b", + "key": "roborumble/css.Delitioner_0.11.jar", + "kind": "robot" + }, + "latest_observation": "5011f2da71d38328", + "observations": [ + { + "classic": { + "elapsed": 3.1, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 6253.0, + "scores": [ + 2997.0, + 3256.0 + ], + "selected": "css.Delitioner 0.11" + }, + "completed_at": "2026-09-08T21:30:27Z", + "delta_pct": -5.4, + "id": "9bf3a4bffbd5125f", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "css.Delitioner 0.11", + "division": "roborumble", + "jar": "css.Delitioner_0.11.jar", + "jar_sha256": "6c718a72f59cec4464649d650469adfcccaf0de0744d7fd3e3ef7a2c5ce28c0b", + "key": "roborumble/css.Delitioner_0.11.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "elapsed": 20.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 5916.0, + "scores": [ + 2995.0, + 2921.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 3.7, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5945.0, + "scores": [ + 2878.0, + 3067.0 + ], + "selected": "css.Delitioner 0.11" + }, + "completed_at": "2026-09-11T20:27:25Z", + "confirmation": null, + "delta_pct": -0.1, + "id": "5011f2da71d38328", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "css.Delitioner 0.11", + "division": "roborumble", + "jar": "css.Delitioner_0.11.jar", + "jar_sha256": "6c718a72f59cec4464649d650469adfcccaf0de0744d7fd3e3ef7a2c5ce28c0b", + "key": "roborumble/css.Delitioner_0.11.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 24.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5937.0, + "scores": [ + 3404.0, + 2533.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/cuoq.Kakera_1.0.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "cuoq.Kakera 1.0", + "division": "roborumble", + "jar": "cuoq.Kakera_1.0.jar", + "jar_sha256": "8e7d78ebb335e16e126036e8f66bc9a751c3059f0a310ebd5bf9b930a517b60b", + "key": "roborumble/cuoq.Kakera_1.0.jar", + "kind": "robot" + }, + "latest_observation": "24bb72dfc648f37c", + "observations": [ + { + "classic": { + "elapsed": 5.1, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 6875.0, + "scores": [ + 3376.0, + 3499.0 + ], + "selected": "cuoq.Kakera 1.0" + }, + "completed_at": "2026-09-08T21:30:59Z", + "delta_pct": -10.6, + "id": "99a4b47c6b169333", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "cuoq.Kakera 1.0", + "division": "roborumble", + "jar": "cuoq.Kakera_1.0.jar", + "jar_sha256": "8e7d78ebb335e16e126036e8f66bc9a751c3059f0a310ebd5bf9b930a517b60b", + "key": "roborumble/cuoq.Kakera_1.0.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "elapsed": 26.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 6144.0, + "scores": [ + 3173.0, + 2971.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 5.5, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 6078.0, + "scores": [ + 2933.0, + 3145.0 + ], + "selected": "cuoq.Kakera 1.0" + }, + "completed_at": "2026-09-11T20:28:01Z", + "confirmation": null, + "delta_pct": 0.2, + "id": "24bb72dfc648f37c", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "cuoq.Kakera 1.0", + "division": "roborumble", + "jar": "cuoq.Kakera_1.0.jar", + "jar_sha256": "8e7d78ebb335e16e126036e8f66bc9a751c3059f0a310ebd5bf9b930a517b60b", + "key": "roborumble/cuoq.Kakera_1.0.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 30.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 6091.0, + "scores": [ + 3063.0, + 3028.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/cw.megas.Blade_0.8.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "cw.megas.Blade 0.8", + "division": "roborumble", + "jar": "cw.megas.Blade_0.8.jar", + "jar_sha256": "4a50333c16fd0bdc02aca8c152e7017ede5c8e763ceaba42319867a5b256f830", + "key": "roborumble/cw.megas.Blade_0.8.jar", + "kind": "robot" + }, + "latest_observation": "4aaeb14f0d7fe7cd", + "observations": [ + { + "classic": { + "elapsed": 3.8, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 5684.0, + "scores": [ + 2349.0, + 3335.0 + ], + "selected": "cw.megas.Blade 0.8" + }, + "completed_at": "2026-09-08T21:31:07Z", + "delta_pct": null, + "id": "8fd749571b62d83f", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "cw.megas.Blade 0.8", + "division": "roborumble", + "jar": "cw.megas.Blade_0.8.jar", + "jar_sha256": "4a50333c16fd0bdc02aca8c152e7017ede5c8e763ceaba42319867a5b256f830", + "key": "roborumble/cw.megas.Blade_0.8.jar", + "kind": "robot" + }, + "status": "FAIL (TR)", + "tank_royale": { + "elapsed": 4.2, + "error_count": 30, + "errors": [ + "HARNESS: worker produced no result (exit code -1)", + "java.lang.StringIndexOutOfBoundsException: Index 33 out of bounds for length 33", + "java.lang.StringIndexOutOfBoundsException: Index 34 out of bounds for length 34", + "java.lang.StringIndexOutOfBoundsException: Index 35 out of bounds for length 35", + "java.lang.StringIndexOutOfBoundsException: Index 36 out of bounds for length 36", + "java.lang.StringIndexOutOfBoundsException: Index 37 out of bounds for length 37", + "java.lang.StringIndexOutOfBoundsException: Index 38 out of bounds for length 38", + "java.lang.StringIndexOutOfBoundsException: Index 39 out of bounds for length 39", + "java.lang.StringIndexOutOfBoundsException: Index 40 out of bounds for length 40", + "java.lang.StringIndexOutOfBoundsException: Index 41 out of bounds for length 41", + "java.lang.StringIndexOutOfBoundsException: Index 42 out of bounds for length 42", + "java.lang.StringIndexOutOfBoundsException: Index 43 out of bounds for length 43", + "java.lang.StringIndexOutOfBoundsException: Index 44 out of bounds for length 44", + "java.lang.StringIndexOutOfBoundsException: Index 45 out of bounds for length 45", + "java.lang.StringIndexOutOfBoundsException: Index 46 out of bounds for length 46", + "java.lang.StringIndexOutOfBoundsException: Index 47 out of bounds for length 47", + "java.lang.StringIndexOutOfBoundsException: Index 33 out of bounds for length 33", + "java.lang.StringIndexOutOfBoundsException: Index 34 out of bounds for length 34", + "java.lang.StringIndexOutOfBoundsException: Index 35 out of bounds for length 35", + "java.lang.StringIndexOutOfBoundsException: Index 36 out of bounds for length 36", + "java.lang.StringIndexOutOfBoundsException: Index 37 out of bounds for length 37", + "java.lang.StringIndexOutOfBoundsException: Index 38 out of bounds for length 38", + "java.lang.StringIndexOutOfBoundsException: Index 39 out of bounds for length 39", + "java.lang.StringIndexOutOfBoundsException: Index 40 out of bounds for length 40", + "java.lang.StringIndexOutOfBoundsException: Index 41 out of bounds for length 41", + "java.lang.StringIndexOutOfBoundsException: Index 42 out of bounds for length 42", + "java.lang.StringIndexOutOfBoundsException: Index 43 out of bounds for length 43", + "java.lang.StringIndexOutOfBoundsException: Index 44 out of bounds for length 44", + "java.lang.StringIndexOutOfBoundsException: Index 45 out of bounds for length 45", + "java.lang.StringIndexOutOfBoundsException: Index 46 out of bounds for length 46" + ], + "has_log": true, + "ok": false, + "score": null, + "scores": [], + "skipped": null + } + }, + { + "classic": { + "elapsed": 3.5, + "error_count": 46, + "error_signatures": [ + { + "exception": "java.lang.StringIndexOutOfBoundsException", + "origin": "cw.megas.Blade.gun" + } + ], + "errors": [ + "SYSTEM: java.lang.StringIndexOutOfBoundsException occurred on robocode.ScannedRobotEvent", + "java.lang.StringIndexOutOfBoundsException: String index out of range: 33", + "SYSTEM: java.lang.StringIndexOutOfBoundsException occurred on robocode.ScannedRobotEvent", + "java.lang.StringIndexOutOfBoundsException: String index out of range: 34", + "SYSTEM: java.lang.StringIndexOutOfBoundsException occurred on robocode.ScannedRobotEvent", + "java.lang.StringIndexOutOfBoundsException: String index out of range: 35", + "SYSTEM: java.lang.StringIndexOutOfBoundsException occurred on robocode.ScannedRobotEvent", + "java.lang.StringIndexOutOfBoundsException: String index out of range: 36", + "SYSTEM: java.lang.StringIndexOutOfBoundsException occurred on robocode.ScannedRobotEvent", + "java.lang.StringIndexOutOfBoundsException: String index out of range: 37", + "SYSTEM: java.lang.StringIndexOutOfBoundsException occurred on robocode.ScannedRobotEvent", + "java.lang.StringIndexOutOfBoundsException: String index out of range: 38", + "SYSTEM: java.lang.StringIndexOutOfBoundsException occurred on robocode.ScannedRobotEvent", + "java.lang.StringIndexOutOfBoundsException: String index out of range: 39", + "SYSTEM: java.lang.StringIndexOutOfBoundsException occurred on robocode.ScannedRobotEvent", + "java.lang.StringIndexOutOfBoundsException: String index out of range: 40", + "SYSTEM: java.lang.StringIndexOutOfBoundsException occurred on robocode.ScannedRobotEvent", + "java.lang.StringIndexOutOfBoundsException: String index out of range: 41", + "SYSTEM: java.lang.StringIndexOutOfBoundsException occurred on robocode.ScannedRobotEvent", + "java.lang.StringIndexOutOfBoundsException: String index out of range: 42", + "SYSTEM: java.lang.StringIndexOutOfBoundsException occurred on robocode.ScannedRobotEvent", + "java.lang.StringIndexOutOfBoundsException: String index out of range: 43", + "SYSTEM: java.lang.StringIndexOutOfBoundsException occurred on robocode.ScannedRobotEvent", + "java.lang.StringIndexOutOfBoundsException: String index out of range: 33", + "SYSTEM: java.lang.StringIndexOutOfBoundsException occurred on robocode.ScannedRobotEvent", + "java.lang.StringIndexOutOfBoundsException: String index out of range: 34", + "SYSTEM: java.lang.StringIndexOutOfBoundsException occurred on robocode.ScannedRobotEvent", + "java.lang.StringIndexOutOfBoundsException: String index out of range: 35", + "SYSTEM: java.lang.StringIndexOutOfBoundsException occurred on robocode.ScannedRobotEvent", + "java.lang.StringIndexOutOfBoundsException: String index out of range: 36", + "SYSTEM: java.lang.StringIndexOutOfBoundsException occurred on robocode.ScannedRobotEvent", + "java.lang.StringIndexOutOfBoundsException: String index out of range: 37", + "SYSTEM: java.lang.StringIndexOutOfBoundsException occurred on robocode.ScannedRobotEvent", + "java.lang.StringIndexOutOfBoundsException: index 38, length 38", + "SYSTEM: java.lang.StringIndexOutOfBoundsException occurred on robocode.ScannedRobotEvent", + "java.lang.StringIndexOutOfBoundsException: index 39, length 39", + "SYSTEM: java.lang.StringIndexOutOfBoundsException occurred on robocode.ScannedRobotEvent", + "java.lang.StringIndexOutOfBoundsException: index 40, length 40", + "SYSTEM: java.lang.StringIndexOutOfBoundsException occurred on robocode.ScannedRobotEvent", + "java.lang.StringIndexOutOfBoundsException: index 41, length 41", + "SYSTEM: java.lang.StringIndexOutOfBoundsException occurred on robocode.ScannedRobotEvent", + "java.lang.StringIndexOutOfBoundsException: index 42, length 42", + "SYSTEM: java.lang.StringIndexOutOfBoundsException occurred on robocode.ScannedRobotEvent", + "java.lang.StringIndexOutOfBoundsException: index 43, length 43", + "SYSTEM: java.lang.StringIndexOutOfBoundsException occurred on robocode.ScannedRobotEvent", + "java.lang.StringIndexOutOfBoundsException: index 44, length 44" + ], + "has_log": true, + "ok": true, + "score": 5385.0, + "scores": [ + 2504.0, + 2881.0 + ], + "selected": "cw.megas.Blade 0.8" + }, + "completed_at": "2026-09-11T20:28:25Z", + "confirmation": null, + "delta_pct": 4.9, + "id": "4aaeb14f0d7fe7cd", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "cw.megas.Blade 0.8", + "division": "roborumble", + "jar": "cw.megas.Blade_0.8.jar", + "jar_sha256": "4a50333c16fd0bdc02aca8c152e7017ede5c8e763ceaba42319867a5b256f830", + "key": "roborumble/cw.megas.Blade_0.8.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (errors)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 20.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5647.0, + "scores": [ + 3066.0, + 2581.0 + ], + "skipped": null + } + } + ], + "status": "DISCREPANCY (errors)" + }, + "roborumble/cw.megas.GhostShell_GT.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "cw.megas.GhostShell GT", + "division": "roborumble", + "jar": "cw.megas.GhostShell_GT.jar", + "jar_sha256": "f75b19028ba3d181ae70d87a380370cf53e535b49e87f9060069a8591bc5888a", + "key": "roborumble/cw.megas.GhostShell_GT.jar", + "kind": "robot" + }, + "latest_observation": "cebc69d8bb954e71", + "observations": [ + { + "classic": { + "elapsed": 2.9, + "error_count": 584, + "errors": [ + "SYSTEM: java.lang.NullPointerException occurred on robocode.ScannedRobotEvent", + "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", + "SYSTEM: java.lang.NullPointerException occurred on robocode.ScannedRobotEvent", + "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", + "SYSTEM: java.lang.NullPointerException occurred on robocode.ScannedRobotEvent", + "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", + "SYSTEM: java.lang.NullPointerException occurred on robocode.ScannedRobotEvent", + "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", + "SYSTEM: java.lang.NullPointerException occurred on robocode.ScannedRobotEvent", + "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", + "SYSTEM: java.lang.NullPointerException occurred on robocode.ScannedRobotEvent", + "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"p\" is null", + "SYSTEM: java.lang.NullPointerException occurred on robocode.ScannedRobotEvent", + "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"p\" is null", + "SYSTEM: java.lang.NullPointerException occurred on robocode.ScannedRobotEvent", + "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"p\" is null", + "SYSTEM: java.lang.NullPointerException occurred on robocode.ScannedRobotEvent", + "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"p\" is null", + "SYSTEM: java.lang.NullPointerException occurred on robocode.ScannedRobotEvent", + "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"p\" is null", + "SYSTEM: java.lang.NullPointerException occurred on robocode.ScannedRobotEvent", + "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"p\" is null", + "SYSTEM: java.lang.NullPointerException occurred on robocode.ScannedRobotEvent", + "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"p\" is null", + "SYSTEM: java.lang.NullPointerException occurred on robocode.ScannedRobotEvent", + "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"p\" is null", + "SYSTEM: java.lang.NullPointerException occurred on robocode.ScannedRobotEvent", + "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"p\" is null", + "SYSTEM: java.lang.NullPointerException occurred on robocode.ScannedRobotEvent", + "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"p\" is null", + "SYSTEM: java.lang.NullPointerException occurred on robocode.ScannedRobotEvent", + "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"p\" is null", + "SYSTEM: java.lang.NullPointerException occurred on robocode.ScannedRobotEvent", + "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"p\" is null", + "SYSTEM: java.lang.NullPointerException occurred on robocode.ScannedRobotEvent", + "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"p\" is null", + "SYSTEM: java.lang.NullPointerException occurred on robocode.ScannedRobotEvent", + "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"p\" is null", + "SYSTEM: java.lang.NullPointerException occurred on robocode.ScannedRobotEvent", + "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"p\" is null", + "SYSTEM: java.lang.NullPointerException occurred on robocode.ScannedRobotEvent", + "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"p\" is null", + "SYSTEM: java.lang.NullPointerException occurred on robocode.ScannedRobotEvent", + "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"p\" is null", + "SYSTEM: java.lang.NullPointerException occurred on robocode.ScannedRobotEvent", + "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"p\" is null", + "SYSTEM: java.lang.NullPointerException occurred on robocode.ScannedRobotEvent", + "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"p\" is null", + "SYSTEM: java.lang.NullPointerException occurred on robocode.ScannedRobotEvent", + "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"p\" is null", + "SYSTEM: java.lang.NullPointerException occurred on robocode.ScannedRobotEvent", + "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"p\" is null", + "SYSTEM: java.lang.NullPointerException occurred on robocode.ScannedRobotEvent", + "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"p\" is null", + "SYSTEM: java.lang.NullPointerException occurred on robocode.ScannedRobotEvent", + "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"p\" is null", + "SYSTEM: java.lang.NullPointerException occurred on robocode.ScannedRobotEvent", + "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"p\" is null", + "SYSTEM: java.lang.NullPointerException occurred on robocode.ScannedRobotEvent", + "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"p\" is null", + "SYSTEM: java.lang.NullPointerException occurred on robocode.ScannedRobotEvent", + "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"p\" is null", + "SYSTEM: java.lang.NullPointerException occurred on robocode.ScannedRobotEvent", + "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"p\" is null", + "SYSTEM: java.lang.NullPointerException occurred on robocode.ScannedRobotEvent", + "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"p\" is null", + "SYSTEM: java.lang.NullPointerException occurred on robocode.ScannedRobotEvent", + "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"p\" is null", + "SYSTEM: java.lang.NullPointerException occurred on robocode.ScannedRobotEvent", + "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"p\" is null", + "SYSTEM: java.lang.NullPointerException occurred on robocode.ScannedRobotEvent", + "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"p\" is null", + "SYSTEM: java.lang.NullPointerException occurred on robocode.ScannedRobotEvent", + "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"p\" is null", + "SYSTEM: java.lang.NullPointerException occurred on robocode.ScannedRobotEvent", + "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"p\" is null", + "SYSTEM: java.lang.NullPointerException occurred on robocode.ScannedRobotEvent", + "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"p\" is null", + "SYSTEM: java.lang.NullPointerException occurred on robocode.ScannedRobotEvent", + "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"p\" is null", + "SYSTEM: java.lang.NullPointerException occurred on robocode.ScannedRobotEvent", + "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"p\" is null", + "SYSTEM: java.lang.NullPointerException occurred on robocode.ScannedRobotEvent", + "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"p\" is null", + "SYSTEM: java.lang.NullPointerException occurred on robocode.ScannedRobotEvent", + "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"p\" is null", + "SYSTEM: java.lang.NullPointerException occurred on robocode.ScannedRobotEvent", + "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"p\" is null", + "SYSTEM: java.lang.NullPointerException occurred on robocode.ScannedRobotEvent", + "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"p\" is null", + "SYSTEM: java.lang.NullPointerException occurred on robocode.ScannedRobotEvent", + "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"p\" is null", + "SYSTEM: java.lang.NullPointerException occurred on robocode.ScannedRobotEvent", + "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"p\" is null", + "SYSTEM: java.lang.NullPointerException occurred on robocode.ScannedRobotEvent", + "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"p\" is null", + "SYSTEM: java.lang.NullPointerException occurred on robocode.ScannedRobotEvent", + "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"p\" is null", + "SYSTEM: java.lang.NullPointerException occurred on robocode.ScannedRobotEvent", + "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"p\" is null" + ], + "has_log": true, + "ok": true, + "score": 10656.0, + "scores": [ + 5978.0, + 4678.0 + ], + "selected": "cw.megas.GhostShell GT" + }, + "completed_at": "2026-09-08T21:31:26Z", + "delta_pct": -24.4, + "id": "624c2e5957e9c806", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "cw.megas.GhostShell GT", + "division": "roborumble", + "jar": "cw.megas.GhostShell_GT.jar", + "jar_sha256": "f75b19028ba3d181ae70d87a380370cf53e535b49e87f9060069a8591bc5888a", + "key": "roborumble/cw.megas.GhostShell_GT.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "elapsed": 16.2, + "error_count": 1302, + "errors": [ + "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null" + ], + "has_log": true, + "ok": true, + "score": 8061.0, + "scores": [ + 4548.0, + 3513.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 3.3, + "error_count": 560, + "error_signatures": [ + { + "exception": "java.lang.NullPointerException", + "origin": "cw.megas.GhostShell.chooseLocation" + } + ], + "errors": [ + "SYSTEM: java.lang.NullPointerException occurred on robocode.ScannedRobotEvent", + "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", + "SYSTEM: java.lang.NullPointerException occurred on robocode.ScannedRobotEvent", + "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", + "SYSTEM: java.lang.NullPointerException occurred on robocode.ScannedRobotEvent", + "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", + "SYSTEM: java.lang.NullPointerException occurred on robocode.ScannedRobotEvent", + "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", + "SYSTEM: java.lang.NullPointerException occurred on robocode.ScannedRobotEvent", + "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", + "SYSTEM: java.lang.NullPointerException occurred on robocode.ScannedRobotEvent", + "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", + "SYSTEM: java.lang.NullPointerException occurred on robocode.ScannedRobotEvent", + "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", + "SYSTEM: java.lang.NullPointerException occurred on robocode.ScannedRobotEvent", + "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", + "SYSTEM: java.lang.NullPointerException occurred on robocode.ScannedRobotEvent", + "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", + "SYSTEM: java.lang.NullPointerException occurred on robocode.ScannedRobotEvent", + "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", + "SYSTEM: java.lang.NullPointerException occurred on robocode.ScannedRobotEvent", + "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", + "SYSTEM: java.lang.NullPointerException occurred on robocode.ScannedRobotEvent", + "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", + "SYSTEM: java.lang.NullPointerException occurred on robocode.ScannedRobotEvent", + "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", + "SYSTEM: java.lang.NullPointerException occurred on robocode.ScannedRobotEvent", + "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", + "SYSTEM: java.lang.NullPointerException occurred on robocode.ScannedRobotEvent", + "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", + "SYSTEM: java.lang.NullPointerException occurred on robocode.ScannedRobotEvent", + "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", + "SYSTEM: java.lang.NullPointerException occurred on robocode.ScannedRobotEvent", + "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", + "SYSTEM: java.lang.NullPointerException occurred on robocode.ScannedRobotEvent", + "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", + "SYSTEM: java.lang.NullPointerException occurred on robocode.ScannedRobotEvent", + "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", + "SYSTEM: java.lang.NullPointerException occurred on robocode.ScannedRobotEvent", + "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", + "SYSTEM: java.lang.NullPointerException occurred on robocode.ScannedRobotEvent", + "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", + "SYSTEM: java.lang.NullPointerException occurred on robocode.ScannedRobotEvent", + "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", + "SYSTEM: java.lang.NullPointerException occurred on robocode.ScannedRobotEvent", + "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", + "SYSTEM: java.lang.NullPointerException occurred on robocode.ScannedRobotEvent", + "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", + "SYSTEM: java.lang.NullPointerException occurred on robocode.ScannedRobotEvent", + "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", + "SYSTEM: java.lang.NullPointerException occurred on robocode.ScannedRobotEvent", + "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", + "SYSTEM: java.lang.NullPointerException occurred on robocode.ScannedRobotEvent", + "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", + "SYSTEM: java.lang.NullPointerException occurred on robocode.ScannedRobotEvent", + "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", + "SYSTEM: java.lang.NullPointerException occurred on robocode.ScannedRobotEvent", + "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", + "SYSTEM: java.lang.NullPointerException occurred on robocode.ScannedRobotEvent", + "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", + "SYSTEM: java.lang.NullPointerException occurred on robocode.ScannedRobotEvent", + "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", + "SYSTEM: java.lang.NullPointerException occurred on robocode.ScannedRobotEvent", + "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", + "SYSTEM: java.lang.NullPointerException occurred on robocode.ScannedRobotEvent", + "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", + "SYSTEM: java.lang.NullPointerException occurred on robocode.ScannedRobotEvent", + "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", + "SYSTEM: java.lang.NullPointerException occurred on robocode.ScannedRobotEvent", + "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", + "SYSTEM: java.lang.NullPointerException occurred on robocode.ScannedRobotEvent", + "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", + "SYSTEM: java.lang.NullPointerException occurred on robocode.ScannedRobotEvent", + "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", + "SYSTEM: java.lang.NullPointerException occurred on robocode.ScannedRobotEvent", + "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", + "SYSTEM: java.lang.NullPointerException occurred on robocode.ScannedRobotEvent", + "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", + "SYSTEM: java.lang.NullPointerException occurred on robocode.ScannedRobotEvent", + "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", + "SYSTEM: java.lang.NullPointerException occurred on robocode.ScannedRobotEvent", + "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", + "SYSTEM: java.lang.NullPointerException occurred on robocode.ScannedRobotEvent", + "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", + "SYSTEM: java.lang.NullPointerException occurred on robocode.ScannedRobotEvent", + "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", + "SYSTEM: java.lang.NullPointerException occurred on robocode.ScannedRobotEvent", + "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", + "SYSTEM: java.lang.NullPointerException occurred on robocode.ScannedRobotEvent", + "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", + "SYSTEM: java.lang.NullPointerException occurred on robocode.ScannedRobotEvent", + "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", + "SYSTEM: java.lang.NullPointerException occurred on robocode.ScannedRobotEvent", + "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", + "SYSTEM: java.lang.NullPointerException occurred on robocode.ScannedRobotEvent", + "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", + "SYSTEM: java.lang.NullPointerException occurred on robocode.ScannedRobotEvent", + "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", + "SYSTEM: java.lang.NullPointerException occurred on robocode.ScannedRobotEvent", + "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null" + ], + "has_log": true, + "ok": true, + "score": 8795.0, + "scores": [ + 4229.0, + 4566.0 + ], + "selected": "cw.megas.GhostShell GT" + }, + "completed_at": "2026-09-11T20:28:35Z", + "confirmation": null, + "delta_pct": null, + "id": "cebc69d8bb954e71", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "cw.megas.GhostShell GT", + "division": "roborumble", + "jar": "cw.megas.GhostShell_GT.jar", + "jar_sha256": "f75b19028ba3d181ae70d87a380370cf53e535b49e87f9060069a8591bc5888a", + "key": "roborumble/cw.megas.GhostShell_GT.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (outcome)", + "tank_royale": { + "bridge_only_signatures": [ + [ + "java.lang.NullPointerException", + "cw.megas.GhostShell.doMovement" + ] + ], + "elapsed": 6.2, + "error_count": 582, + "error_signatures": [ + { + "exception": "java.lang.NullPointerException", + "origin": "cw.megas.GhostShell.chooseLocation" + }, + { + "exception": "java.lang.NullPointerException", + "origin": "cw.megas.GhostShell.doMovement" + } + ], + "errors": [ + "HARNESS: worker produced no result (exit code -1)", + "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"p\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"p\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"p\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"p\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"p\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"p\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"p\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"p\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"p\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"p\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"p\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"p\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"p\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"p\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"p\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"p\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"p\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"p\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"p\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"p\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"p\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"p\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"p\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"p\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"p\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"p\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"p\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"p\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"p\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"p\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"p\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"p\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"p\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"p\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"p\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"p\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"p\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"p\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"p\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"p\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"p\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"p\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"p\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"p\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"p\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"p\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"p\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"p\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"p\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"p\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"p\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"p\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"p\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"p\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"p\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"p\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"p\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"p\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"p\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"p\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"p\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"p\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"p\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"p\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"p\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"p\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"p\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"p\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"p\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"p\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"p\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"p\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"p\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"p\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"p\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"p\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"p\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"p\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"p\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"p\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"p\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"p\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"p\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"p\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"p\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"p\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"p\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"p\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"p\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"p\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"p\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"p\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"p\" is null" + ], + "has_log": true, + "ok": false, + "score": null, + "scores": [], + "skipped": null + } + } + ], + "status": "DISCREPANCY (outcome)" + }, + "roborumble/cw.megas.Gridd_0.4.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "cw.megas.Gridd 0.4", + "division": "roborumble", + "jar": "cw.megas.Gridd_0.4.jar", + "jar_sha256": "bfafc04f4fe6011bfa749f6895c02e6518cc2acb878f133200cd4a2778653edf", + "key": "roborumble/cw.megas.Gridd_0.4.jar", + "kind": "robot" + }, + "latest_observation": "6f34f6ef130995c8", + "observations": [ + { + "classic": { + "elapsed": 3.3, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 7366.0, + "scores": [ + 4135.0, + 3231.0 + ], + "selected": "cw.megas.Gridd 0.4" + }, + "completed_at": "2026-09-08T21:31:46Z", + "delta_pct": 4.7, + "id": "b0e92913f32f5e4a", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "cw.megas.Gridd 0.4", + "division": "roborumble", + "jar": "cw.megas.Gridd_0.4.jar", + "jar_sha256": "bfafc04f4fe6011bfa749f6895c02e6518cc2acb878f133200cd4a2778653edf", + "key": "roborumble/cw.megas.Gridd_0.4.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "elapsed": 16.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 7712.0, + "scores": [ + 4048.0, + 3664.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 3.4, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 7506.0, + "scores": [ + 3575.0, + 3931.0 + ], + "selected": "cw.megas.Gridd 0.4" + }, + "completed_at": "2026-09-11T20:28:57Z", + "confirmation": null, + "delta_pct": -8.2, + "id": "6f34f6ef130995c8", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "cw.megas.Gridd 0.4", + "division": "roborumble", + "jar": "cw.megas.Gridd_0.4.jar", + "jar_sha256": "bfafc04f4fe6011bfa749f6895c02e6518cc2acb878f133200cd4a2778653edf", + "key": "roborumble/cw.megas.Gridd_0.4.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 18.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 6888.0, + "scores": [ + 3512.0, + 3376.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/cw.megas.Polar_3.2.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "cw.megas.Polar 3.2", + "division": "roborumble", + "jar": "cw.megas.Polar_3.2.jar", + "jar_sha256": "5a65f71be6ed605815763385ebd3ed9db00f248a4e7f65ecc75a566fd317665e", + "key": "roborumble/cw.megas.Polar_3.2.jar", + "kind": "robot" + }, + "latest_observation": "35a21885ebf299e0", + "observations": [ + { + "classic": { + "elapsed": 3.6, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 7521.0, + "scores": [ + 3441.0, + 4080.0 + ], + "selected": "cw.megas.Polar 3.2" + }, + "completed_at": "2026-09-08T21:32:18Z", + "delta_pct": 6.3, + "id": "275e5d14496de98c", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "cw.megas.Polar 3.2", + "division": "roborumble", + "jar": "cw.megas.Polar_3.2.jar", + "jar_sha256": "5a65f71be6ed605815763385ebd3ed9db00f248a4e7f65ecc75a566fd317665e", + "key": "roborumble/cw.megas.Polar_3.2.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "elapsed": 28.2, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 7996.0, + "scores": [ + 4154.0, + 3842.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 4.1, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 7941.0, + "scores": [ + 3949.0, + 3992.0 + ], + "selected": "cw.megas.Polar 3.2" + }, + "completed_at": "2026-09-11T20:29:10Z", + "confirmation": null, + "delta_pct": null, + "id": "35a21885ebf299e0", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "cw.megas.Polar 3.2", + "division": "roborumble", + "jar": "cw.megas.Polar_3.2.jar", + "jar_sha256": "5a65f71be6ed605815763385ebd3ed9db00f248a4e7f65ecc75a566fd317665e", + "key": "roborumble/cw.megas.Polar_3.2.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (outcome)", + "tank_royale": { + "bridge_only_signatures": [ + [ + "java.lang.StringIndexOutOfBoundsException", + "cw.megas.Polar.gun" + ] + ], + "elapsed": 8.2, + "error_count": 59, + "error_signatures": [ + { + "exception": "java.lang.StringIndexOutOfBoundsException", + "origin": "cw.megas.Polar.gun" + } + ], + "errors": [ + "HARNESS: worker produced no result (exit code -1)", + "java.lang.StringIndexOutOfBoundsException: String index out of range: 33", + "java.lang.StringIndexOutOfBoundsException: String index out of range: 34", + "java.lang.StringIndexOutOfBoundsException: String index out of range: 35", + "java.lang.StringIndexOutOfBoundsException: String index out of range: 36", + "java.lang.StringIndexOutOfBoundsException: String index out of range: 37", + "java.lang.StringIndexOutOfBoundsException: String index out of range: 38", + "java.lang.StringIndexOutOfBoundsException: String index out of range: 39", + "java.lang.StringIndexOutOfBoundsException: String index out of range: 40", + "java.lang.StringIndexOutOfBoundsException: String index out of range: 41", + "java.lang.StringIndexOutOfBoundsException: String index out of range: 42", + "java.lang.StringIndexOutOfBoundsException: String index out of range: 43", + "java.lang.StringIndexOutOfBoundsException: String index out of range: 44", + "java.lang.StringIndexOutOfBoundsException: String index out of range: 45", + "java.lang.StringIndexOutOfBoundsException: String index out of range: 46", + "java.lang.StringIndexOutOfBoundsException: String index out of range: 47", + "java.lang.StringIndexOutOfBoundsException: String index out of range: 48", + "java.lang.StringIndexOutOfBoundsException: String index out of range: 49", + "java.lang.StringIndexOutOfBoundsException: String index out of range: 50", + "java.lang.StringIndexOutOfBoundsException: String index out of range: 51", + "java.lang.StringIndexOutOfBoundsException: String index out of range: 52", + "java.lang.StringIndexOutOfBoundsException: String index out of range: 53", + "java.lang.StringIndexOutOfBoundsException: String index out of range: 54", + "java.lang.StringIndexOutOfBoundsException: String index out of range: 55", + "java.lang.StringIndexOutOfBoundsException: String index out of range: 56", + "java.lang.StringIndexOutOfBoundsException: String index out of range: 57", + "java.lang.StringIndexOutOfBoundsException: String index out of range: 58", + "java.lang.StringIndexOutOfBoundsException: String index out of range: 59", + "java.lang.StringIndexOutOfBoundsException: String index out of range: 60", + "java.lang.StringIndexOutOfBoundsException: String index out of range: 61", + "java.lang.StringIndexOutOfBoundsException: String index out of range: 33", + "java.lang.StringIndexOutOfBoundsException: String index out of range: 34", + "java.lang.StringIndexOutOfBoundsException: String index out of range: 35", + "java.lang.StringIndexOutOfBoundsException: String index out of range: 36", + "java.lang.StringIndexOutOfBoundsException: String index out of range: 37", + "java.lang.StringIndexOutOfBoundsException: String index out of range: 38", + "java.lang.StringIndexOutOfBoundsException: String index out of range: 39", + "java.lang.StringIndexOutOfBoundsException: String index out of range: 40", + "java.lang.StringIndexOutOfBoundsException: String index out of range: 41", + "java.lang.StringIndexOutOfBoundsException: String index out of range: 42", + "java.lang.StringIndexOutOfBoundsException: String index out of range: 43", + "java.lang.StringIndexOutOfBoundsException: String index out of range: 44", + "java.lang.StringIndexOutOfBoundsException: String index out of range: 45", + "java.lang.StringIndexOutOfBoundsException: String index out of range: 46", + "java.lang.StringIndexOutOfBoundsException: String index out of range: 47", + "java.lang.StringIndexOutOfBoundsException: String index out of range: 48", + "java.lang.StringIndexOutOfBoundsException: String index out of range: 49", + "java.lang.StringIndexOutOfBoundsException: String index out of range: 50", + "java.lang.StringIndexOutOfBoundsException: String index out of range: 51", + "java.lang.StringIndexOutOfBoundsException: String index out of range: 52", + "java.lang.StringIndexOutOfBoundsException: String index out of range: 53", + "java.lang.StringIndexOutOfBoundsException: String index out of range: 54", + "java.lang.StringIndexOutOfBoundsException: String index out of range: 55", + "java.lang.StringIndexOutOfBoundsException: String index out of range: 56", + "java.lang.StringIndexOutOfBoundsException: String index out of range: 57", + "java.lang.StringIndexOutOfBoundsException: String index out of range: 58", + "java.lang.StringIndexOutOfBoundsException: String index out of range: 59", + "java.lang.StringIndexOutOfBoundsException: String index out of range: 60", + "java.lang.StringIndexOutOfBoundsException: String index out of range: 61" + ], + "has_log": true, + "ok": false, + "score": null, + "scores": [], + "skipped": null + } + } + ], + "status": "DISCREPANCY (outcome)" + }, + "roborumble/cw.megas.Silhouette_1.1.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "cw.megas.Silhouette 1.1", + "division": "roborumble", + "jar": "cw.megas.Silhouette_1.1.jar", + "jar_sha256": "e6971a7232c957673e1db12aeb969835a5f33928ed6ed30d6f0a33144002b2c6", + "key": "roborumble/cw.megas.Silhouette_1.1.jar", + "kind": "robot" + }, + "latest_observation": "25c5e3c9db55e253", + "observations": [ + { + "classic": { + "elapsed": 3.4, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 6360.0, + "scores": [ + 3297.0, + 3063.0 + ], + "selected": "cw.megas.Silhouette 1.1" + }, + "completed_at": "2026-09-08T21:32:38Z", + "delta_pct": -3.9, + "id": "c619f7cbb9bcea81", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "cw.megas.Silhouette 1.1", + "division": "roborumble", + "jar": "cw.megas.Silhouette_1.1.jar", + "jar_sha256": "e6971a7232c957673e1db12aeb969835a5f33928ed6ed30d6f0a33144002b2c6", + "key": "roborumble/cw.megas.Silhouette_1.1.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "elapsed": 16.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 6113.0, + "scores": [ + 3383.0, + 2730.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 3.5, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 6714.0, + "scores": [ + 3147.0, + 3567.0 + ], + "selected": "cw.megas.Silhouette 1.1" + }, + "completed_at": "2026-09-11T20:29:34Z", + "confirmation": null, + "delta_pct": -12.6, + "id": "25c5e3c9db55e253", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "cw.megas.Silhouette 1.1", + "division": "roborumble", + "jar": "cw.megas.Silhouette_1.1.jar", + "jar_sha256": "e6971a7232c957673e1db12aeb969835a5f33928ed6ed30d6f0a33144002b2c6", + "key": "roborumble/cw.megas.Silhouette_1.1.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 20.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5866.0, + "scores": [ + 3058.0, + 2808.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/cx.BlestPain_1.41.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "cx.BlestPain 1.41", + "division": "roborumble", + "jar": "cx.BlestPain_1.41.jar", + "jar_sha256": "6f6b974d5aa3cb4db450ab43a2c0425d55d654cb9b577171fd99c9fe094b08ba", + "key": "roborumble/cx.BlestPain_1.41.jar", + "kind": "robot" + }, + "latest_observation": "f0e3210c128d5c6c", + "observations": [ + { + "classic": { + "elapsed": 4.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 4876.0, + "scores": [ + 2640.0, + 2236.0 + ], + "selected": "cx.BlestPain 1.41" + }, + "completed_at": "2026-09-08T21:33:02Z", + "delta_pct": -5.8, + "id": "33f8afb939371ae3", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "cx.BlestPain 1.41", + "division": "roborumble", + "jar": "cx.BlestPain_1.41.jar", + "jar_sha256": "6f6b974d5aa3cb4db450ab43a2c0425d55d654cb9b577171fd99c9fe094b08ba", + "key": "roborumble/cx.BlestPain_1.41.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "elapsed": 20.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 4595.0, + "scores": [ + 2456.0, + 2139.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 3.9, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 4784.0, + "scores": [ + 2599.0, + 2185.0 + ], + "selected": "cx.BlestPain 1.41" + }, + "completed_at": "2026-09-11T20:29:58Z", + "confirmation": null, + "delta_pct": -9.6, + "id": "f0e3210c128d5c6c", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "cx.BlestPain 1.41", + "division": "roborumble", + "jar": "cx.BlestPain_1.41.jar", + "jar_sha256": "6f6b974d5aa3cb4db450ab43a2c0425d55d654cb9b577171fd99c9fe094b08ba", + "key": "roborumble/cx.BlestPain_1.41.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 20.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 4326.0, + "scores": [ + 2259.0, + 2067.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/cx.CigaretBH_1.03.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "cx.CigaretBH 1.03", + "division": "roborumble", + "jar": "cx.CigaretBH_1.03.jar", + "jar_sha256": "8c107a759b229f8570dcce96ccedd8404545e7d3c6441a206c64d54a4209d678", + "key": "roborumble/cx.CigaretBH_1.03.jar", + "kind": "robot" + }, + "latest_observation": "b3f0624de06e9e36", + "observations": [ + { + "classic": { + "elapsed": 13.9, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 4902.0, + "scores": [ + 2419.0, + 2483.0 + ], + "selected": "cx.CigaretBH 1.03" + }, + "completed_at": "2026-09-08T21:33:44Z", + "delta_pct": -7.3, + "id": "1677b2a1b4827612", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "cx.CigaretBH 1.03", + "division": "roborumble", + "jar": "cx.CigaretBH_1.03.jar", + "jar_sha256": "8c107a759b229f8570dcce96ccedd8404545e7d3c6441a206c64d54a4209d678", + "key": "roborumble/cx.CigaretBH_1.03.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "elapsed": 28.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 4542.0, + "scores": [ + 2483.0, + 2059.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 15.5, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5029.0, + "scores": [ + 2533.0, + 2496.0 + ], + "selected": "cx.CigaretBH 1.03" + }, + "completed_at": "2026-09-11T20:31:17Z", + "confirmation": null, + "delta_pct": -3.2, + "id": "b3f0624de06e9e36", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "cx.CigaretBH 1.03", + "division": "roborumble", + "jar": "cx.CigaretBH_1.03.jar", + "jar_sha256": "8c107a759b229f8570dcce96ccedd8404545e7d3c6441a206c64d54a4209d678", + "key": "roborumble/cx.CigaretBH_1.03.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 46.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 4867.0, + "scores": [ + 2635.0, + 2232.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/cx.Lacrimas_1.36.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "cx.Lacrimas 1.36", + "division": "roborumble", + "jar": "cx.Lacrimas_1.36.jar", + "jar_sha256": "3f188597207790c81255c5b78a09002cc87527166c22b75915d63f1f25111dae", + "key": "roborumble/cx.Lacrimas_1.36.jar", + "kind": "robot" + }, + "latest_observation": "539ae590fae08967", + "observations": [ + { + "classic": { + "elapsed": 3.5, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 4503.0, + "scores": [ + 2030.0, + 2473.0 + ], + "selected": "cx.Lacrimas 1.36" + }, + "completed_at": "2026-09-08T21:34:10Z", + "delta_pct": 3.8, + "id": "20139227a27029e4", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "cx.Lacrimas 1.36", + "division": "roborumble", + "jar": "cx.Lacrimas_1.36.jar", + "jar_sha256": "3f188597207790c81255c5b78a09002cc87527166c22b75915d63f1f25111dae", + "key": "roborumble/cx.Lacrimas_1.36.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "elapsed": 22.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 4674.0, + "scores": [ + 2642.0, + 2032.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 3.9, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 4431.0, + "scores": [ + 2307.0, + 2124.0 + ], + "selected": "cx.Lacrimas 1.36" + }, + "completed_at": "2026-09-11T20:31:48Z", + "confirmation": null, + "delta_pct": -4.4, + "id": "539ae590fae08967", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "cx.Lacrimas 1.36", + "division": "roborumble", + "jar": "cx.Lacrimas_1.36.jar", + "jar_sha256": "3f188597207790c81255c5b78a09002cc87527166c22b75915d63f1f25111dae", + "key": "roborumble/cx.Lacrimas_1.36.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 26.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 4236.0, + "scores": [ + 2286.0, + 1950.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/cx.Princess_1.0.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "cx.Princess 1.0", + "division": "roborumble", + "jar": "cx.Princess_1.0.jar", + "jar_sha256": "8a5137dcb2d3075bf8b4aa5ec609d499a981f1ed6650641a10e3c95cfe2e7cec", + "key": "roborumble/cx.Princess_1.0.jar", + "kind": "robot" + }, + "latest_observation": "5d92f19933b9dea0", + "observations": [ + { + "classic": { + "elapsed": 9.0, + "error_count": 2, + "errors": [ + "java.io.FileNotFoundException: C:\\Code\\robocode-api-bridge\\compat-test\\work\\rc-robots\\.data\\cx\\Princess.data\\score.dat (Den angivne fil blev ikke fundet)", + "java.io.FileNotFoundException: C:\\Code\\robocode-api-bridge\\compat-test\\work\\rc-robots\\.data\\cx\\Princess.data\\score.dat (Den angivne fil blev ikke fundet)" + ], + "has_log": true, + "ok": true, + "score": 5862.0, + "scores": [ + 3116.0, + 2746.0 + ], + "selected": "cx.Princess 1.0" + }, + "completed_at": "2026-09-08T21:37:13Z", + "delta_pct": -9.6, + "id": "ee8fec5f1ac10af9", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "cx.Princess 1.0", + "division": "roborumble", + "jar": "cx.Princess_1.0.jar", + "jar_sha256": "8a5137dcb2d3075bf8b4aa5ec609d499a981f1ed6650641a10e3c95cfe2e7cec", + "key": "roborumble/cx.Princess_1.0.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "elapsed": 20.0, + "error_count": 2, + "errors": [ + "java.io.FileNotFoundException: C:\\Code\\robocode-api-bridge\\compat-test\\work\\tr-bots\\cx.Princess_1.0\\Princess.data\\score.dat (Den angivne fil blev ikke fundet)", + "java.io.FileNotFoundException: C:\\Code\\robocode-api-bridge\\compat-test\\work\\tr-bots\\cx.Princess_1.0-2\\Princess.data\\score.dat (Den angivne fil blev ikke fundet)" + ], + "has_log": true, + "ok": true, + "score": 5301.0, + "scores": [ + 2866.0, + 2435.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 7.9, + "error_count": 2, + "error_signatures": [ + { + "exception": "java.io.FileNotFoundException", + "origin": "unknown" + } + ], + "errors": [ + "java.io.FileNotFoundException: C:\\Code\\robocode-api-bridge\\compat-test\\work\\rc-robots\\.data\\cx\\Princess.data\\score.dat (Den angivne fil blev ikke fundet)", + "java.io.FileNotFoundException: C:\\Code\\robocode-api-bridge\\compat-test\\work\\rc-robots\\.data\\cx\\Princess.data\\score.dat (Den angivne fil blev ikke fundet)" + ], + "has_log": true, + "ok": true, + "score": 5644.0, + "scores": [ + 3978.0, + 1666.0 + ], + "selected": "cx.Princess 1.0" + }, + "completed_at": "2026-09-11T20:35:42Z", + "confirmation": null, + "delta_pct": -6.2, + "id": "5d92f19933b9dea0", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "cx.Princess 1.0", + "division": "roborumble", + "jar": "cx.Princess_1.0.jar", + "jar_sha256": "8a5137dcb2d3075bf8b4aa5ec609d499a981f1ed6650641a10e3c95cfe2e7cec", + "key": "roborumble/cx.Princess_1.0.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 28.0, + "error_count": 2, + "error_signatures": [ + { + "exception": "java.io.FileNotFoundException", + "origin": "unknown" + } + ], + "errors": [ + "java.io.FileNotFoundException: C:\\Code\\robocode-api-bridge\\compat-test\\work\\tr-bots\\cx.Princess_1.0\\Princess.data\\score.dat (Den angivne fil blev ikke fundet)", + "java.io.FileNotFoundException: C:\\Code\\robocode-api-bridge\\compat-test\\work\\tr-bots\\cx.Princess_1.0-2\\Princess.data\\score.dat (Den angivne fil blev ikke fundet)" + ], + "has_log": true, + "ok": true, + "score": 5292.0, + "scores": [ + 2996.0, + 2296.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/cx.micro.Blur_0.2.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "cx.micro.Blur 0.2", + "division": "roborumble", + "jar": "cx.micro.Blur_0.2.jar", + "jar_sha256": "a1d62b084d88196ff938d3f189e0f7a84f89e7f034bd21f83a8afb0bc20ba979", + "key": "roborumble/cx.micro.Blur_0.2.jar", + "kind": "robot" + }, + "latest_observation": "e0eb72591fc796b8", + "observations": [ + { + "classic": { + "elapsed": 2.3, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 7918.0, + "scores": [ + 4451.0, + 3467.0 + ], + "selected": "cx.micro.Blur 0.2" + }, + "completed_at": "2026-09-08T21:34:17Z", + "delta_pct": null, + "id": "cf57283fe7c065c6", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "cx.micro.Blur 0.2", + "division": "roborumble", + "jar": "cx.micro.Blur_0.2.jar", + "jar_sha256": "a1d62b084d88196ff938d3f189e0f7a84f89e7f034bd21f83a8afb0bc20ba979", + "key": "roborumble/cx.micro.Blur_0.2.jar", + "kind": "robot" + }, + "status": "FAIL (TR)", + "tank_royale": { + "elapsed": 4.2, + "error_count": 2, + "errors": [ + "HARNESS: worker produced no result (exit code -1)", + "java.lang.NullPointerException: Cannot invoke \"cx.micro.Blur$Wave.rateHit()\" because \"cx.micro.Blur.closestWave\" is null" + ], + "has_log": true, + "ok": false, + "score": null, + "scores": [], + "skipped": null + } + }, + { + "classic": { + "elapsed": 2.4, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 7997.0, + "scores": [ + 4337.0, + 3660.0 + ], + "selected": "cx.micro.Blur 0.2" + }, + "completed_at": "2026-09-11T20:32:06Z", + "confirmation": null, + "delta_pct": -75.6, + "id": "e0eb72591fc796b8", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "cx.micro.Blur 0.2", + "division": "roborumble", + "jar": "cx.micro.Blur_0.2.jar", + "jar_sha256": "a1d62b084d88196ff938d3f189e0f7a84f89e7f034bd21f83a8afb0bc20ba979", + "key": "roborumble/cx.micro.Blur_0.2.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (score)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 16.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 1952.0, + "scores": [ + 1039.0, + 913.0 + ], + "skipped": null + } + } + ], + "status": "score-review" + }, + "roborumble/cx.micro.Smoke_0.96.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "cx.micro.Smoke 0.96", + "division": "roborumble", + "jar": "cx.micro.Smoke_0.96.jar", + "jar_sha256": "b18be3e111d1cfd9ed54c431d010e60368d9bffcbb06e38ac2c9bbf6c8243814", + "key": "roborumble/cx.micro.Smoke_0.96.jar", + "kind": "robot" + }, + "latest_observation": "22c757bf2c791a1c", + "observations": [ + { + "classic": { + "elapsed": 3.4, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 5888.0, + "scores": [ + 2873.0, + 3015.0 + ], + "selected": "cx.micro.Smoke 0.96" + }, + "completed_at": "2026-09-08T21:34:41Z", + "delta_pct": -24.1, + "id": "d0ce3ae37d563131", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "cx.micro.Smoke 0.96", + "division": "roborumble", + "jar": "cx.micro.Smoke_0.96.jar", + "jar_sha256": "b18be3e111d1cfd9ed54c431d010e60368d9bffcbb06e38ac2c9bbf6c8243814", + "key": "roborumble/cx.micro.Smoke_0.96.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "elapsed": 20.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 4468.0, + "scores": [ + 2295.0, + 2173.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 3.2, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5979.0, + "scores": [ + 2888.0, + 3091.0 + ], + "selected": "cx.micro.Smoke 0.96" + }, + "completed_at": "2026-09-11T20:32:34Z", + "confirmation": null, + "delta_pct": -19.8, + "id": "22c757bf2c791a1c", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "cx.micro.Smoke 0.96", + "division": "roborumble", + "jar": "cx.micro.Smoke_0.96.jar", + "jar_sha256": "b18be3e111d1cfd9ed54c431d010e60368d9bffcbb06e38ac2c9bbf6c8243814", + "key": "roborumble/cx.micro.Smoke_0.96.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 24.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 4796.0, + "scores": [ + 2558.0, + 2238.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/cx.micro.Spark_0.6.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "cx.micro.Spark 0.6", + "division": "roborumble", + "jar": "cx.micro.Spark_0.6.jar", + "jar_sha256": "dfcbbb2bb08ae6028e68178c3d9f80c0b1d0058ced7ab90bab2cade92f615d18", + "key": "roborumble/cx.micro.Spark_0.6.jar", + "kind": "robot" + }, + "latest_observation": "33b8c433861acbd1", + "observations": [ + { + "classic": { + "elapsed": 4.2, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 5050.0, + "scores": [ + 2918.0, + 2132.0 + ], + "selected": "cx.micro.Spark 0.6" + }, + "completed_at": "2026-09-08T21:35:01Z", + "delta_pct": 159.5, + "id": "4a48d9ed154a3163", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "cx.micro.Spark 0.6", + "division": "roborumble", + "jar": "cx.micro.Spark_0.6.jar", + "jar_sha256": "dfcbbb2bb08ae6028e68178c3d9f80c0b1d0058ced7ab90bab2cade92f615d18", + "key": "roborumble/cx.micro.Spark_0.6.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (score)", + "tank_royale": { + "elapsed": 16.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 13104.0, + "scores": [ + 6600.0, + 6504.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 4.6, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 4877.0, + "scores": [ + 2894.0, + 1983.0 + ], + "selected": "cx.micro.Spark 0.6" + }, + "completed_at": "2026-09-11T20:32:57Z", + "confirmation": null, + "delta_pct": 153.7, + "id": "33b8c433861acbd1", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "cx.micro.Spark 0.6", + "division": "roborumble", + "jar": "cx.micro.Spark_0.6.jar", + "jar_sha256": "dfcbbb2bb08ae6028e68178c3d9f80c0b1d0058ced7ab90bab2cade92f615d18", + "key": "roborumble/cx.micro.Spark_0.6.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (score)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 18.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 12373.0, + "scores": [ + 6198.0, + 6175.0 + ], + "skipped": null + } + } + ], + "status": "score-review" + }, + "roborumble/cx.mini.BlackSwans_0.60.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "cx.mini.BlackSwans 0.60", + "division": "roborumble", + "jar": "cx.mini.BlackSwans_0.60.jar", + "jar_sha256": "6b80464c7c11ce945f726455d0d9d91190460d7a8f8687115651daff9784159b", + "key": "roborumble/cx.mini.BlackSwans_0.60.jar", + "kind": "robot" + }, + "latest_observation": "8ff4ff433f3d1ef6", + "observations": [ + { + "classic": { + "elapsed": 8.6, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 5617.0, + "scores": [ + 3157.0, + 2460.0 + ], + "selected": "cx.mini.BlackSwans 0.60" + }, + "completed_at": "2026-09-08T21:35:32Z", + "delta_pct": -5.1, + "id": "6b425d3c251fa7bc", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "cx.mini.BlackSwans 0.60", + "division": "roborumble", + "jar": "cx.mini.BlackSwans_0.60.jar", + "jar_sha256": "6b80464c7c11ce945f726455d0d9d91190460d7a8f8687115651daff9784159b", + "key": "roborumble/cx.mini.BlackSwans_0.60.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "elapsed": 22.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 5331.0, + "scores": [ + 2719.0, + 2612.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 9.9, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5840.0, + "scores": [ + 3068.0, + 2772.0 + ], + "selected": "cx.mini.BlackSwans 0.60" + }, + "completed_at": "2026-09-11T20:33:43Z", + "confirmation": null, + "delta_pct": -6.3, + "id": "8ff4ff433f3d1ef6", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "cx.mini.BlackSwans 0.60", + "division": "roborumble", + "jar": "cx.mini.BlackSwans_0.60.jar", + "jar_sha256": "6b80464c7c11ce945f726455d0d9d91190460d7a8f8687115651daff9784159b", + "key": "roborumble/cx.mini.BlackSwans_0.60.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 36.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5470.0, + "scores": [ + 3005.0, + 2465.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/cx.mini.Cigaret_1.31.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "cx.mini.Cigaret 1.31", + "division": "roborumble", + "jar": "cx.mini.Cigaret_1.31.jar", + "jar_sha256": "273c4194d1b9f0687173158276802ff3456ec8343de62e80d2674e0960715612", + "key": "roborumble/cx.mini.Cigaret_1.31.jar", + "kind": "robot" + }, + "latest_observation": "dc070048cc9ba197", + "observations": [ + { + "classic": { + "elapsed": 10.2, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 5220.0, + "scores": [ + 2470.0, + 2750.0 + ], + "selected": "cx.mini.Cigaret 1.31" + }, + "completed_at": "2026-09-08T21:36:06Z", + "delta_pct": -4.7, + "id": "8547c53305c88bf5", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "cx.mini.Cigaret 1.31", + "division": "roborumble", + "jar": "cx.mini.Cigaret_1.31.jar", + "jar_sha256": "273c4194d1b9f0687173158276802ff3456ec8343de62e80d2674e0960715612", + "key": "roborumble/cx.mini.Cigaret_1.31.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "elapsed": 24.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 4974.0, + "scores": [ + 2909.0, + 2065.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 11.5, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5246.0, + "scores": [ + 1945.0, + 3301.0 + ], + "selected": "cx.mini.Cigaret 1.31" + }, + "completed_at": "2026-09-11T20:34:29Z", + "confirmation": null, + "delta_pct": -8.0, + "id": "dc070048cc9ba197", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "cx.mini.Cigaret 1.31", + "division": "roborumble", + "jar": "cx.mini.Cigaret_1.31.jar", + "jar_sha256": "273c4194d1b9f0687173158276802ff3456ec8343de62e80d2674e0960715612", + "key": "roborumble/cx.mini.Cigaret_1.31.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 34.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 4824.0, + "scores": [ + 2440.0, + 2384.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/cx.mini.Nimrod_0.55.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "cx.mini.Nimrod 0.55", + "division": "roborumble", + "jar": "cx.mini.Nimrod_0.55.jar", + "jar_sha256": "9ccc75f18f1ea296fefe441150fd552e546989e1e42af4abdc578f297564a321", + "key": "roborumble/cx.mini.Nimrod_0.55.jar", + "kind": "robot" + }, + "latest_observation": "79c0ff02f62c13d6", + "observations": [ + { + "classic": { + "elapsed": 6.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 4854.0, + "scores": [ + 2357.0, + 2497.0 + ], + "selected": "cx.mini.Nimrod 0.55" + }, + "completed_at": "2026-09-08T21:36:29Z", + "delta_pct": 130.2, + "id": "13e1779cf8e10822", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "cx.mini.Nimrod 0.55", + "division": "roborumble", + "jar": "cx.mini.Nimrod_0.55.jar", + "jar_sha256": "9ccc75f18f1ea296fefe441150fd552e546989e1e42af4abdc578f297564a321", + "key": "roborumble/cx.mini.Nimrod_0.55.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (score)", + "tank_royale": { + "elapsed": 16.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 11172.0, + "scores": [ + 5809.0, + 5363.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 5.5, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 4878.0, + "scores": [ + 2496.0, + 2382.0 + ], + "selected": "cx.mini.Nimrod 0.55" + }, + "completed_at": "2026-09-11T20:34:49Z", + "confirmation": null, + "delta_pct": 151.1, + "id": "79c0ff02f62c13d6", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "cx.mini.Nimrod 0.55", + "division": "roborumble", + "jar": "cx.mini.Nimrod_0.55.jar", + "jar_sha256": "9ccc75f18f1ea296fefe441150fd552e546989e1e42af4abdc578f297564a321", + "key": "roborumble/cx.mini.Nimrod_0.55.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (score)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 14.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 12250.0, + "scores": [ + 6438.0, + 5812.0 + ], + "skipped": null + } + } + ], + "status": "score-review" + }, + "roborumble/cx.nano.Smog_2.6.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "cx.nano.Smog 2.6", + "division": "roborumble", + "jar": "cx.nano.Smog_2.6.jar", + "jar_sha256": "1bdea7a9d116c385e6d7dcd12014dc80270f619cf2b20046c5d85640aeda4bbf", + "key": "roborumble/cx.nano.Smog_2.6.jar", + "kind": "robot" + }, + "latest_observation": "bc706ecbeb69a224", + "observations": [ + { + "classic": { + "elapsed": 2.4, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 4138.0, + "scores": [ + 1961.0, + 2177.0 + ], + "selected": "cx.nano.Smog 2.6" + }, + "completed_at": "2026-09-08T21:36:43Z", + "delta_pct": -27.5, + "id": "c37a0d6ebee94fdf", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "cx.nano.Smog 2.6", + "division": "roborumble", + "jar": "cx.nano.Smog_2.6.jar", + "jar_sha256": "1bdea7a9d116c385e6d7dcd12014dc80270f619cf2b20046c5d85640aeda4bbf", + "key": "roborumble/cx.nano.Smog_2.6.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (score)", + "tank_royale": { + "elapsed": 12.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 2998.0, + "scores": [ + 1829.0, + 1169.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 2.5, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 3384.0, + "scores": [ + 1660.0, + 1724.0 + ], + "selected": "cx.nano.Smog 2.6" + }, + "completed_at": "2026-09-11T20:35:05Z", + "confirmation": null, + "delta_pct": -26.7, + "id": "bc706ecbeb69a224", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "cx.nano.Smog 2.6", + "division": "roborumble", + "jar": "cx.nano.Smog_2.6.jar", + "jar_sha256": "1bdea7a9d116c385e6d7dcd12014dc80270f619cf2b20046c5d85640aeda4bbf", + "key": "roborumble/cx.nano.Smog_2.6.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (score)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 14.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 2481.0, + "scores": [ + 1469.0, + 1012.0 + ], + "skipped": null + } + } + ], + "status": "score-review" + }, + "roborumble/cyragia.Bot_1.1.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "cyragia.Bot 1.1", + "division": "roborumble", + "jar": "cyragia.Bot_1.1.jar", + "jar_sha256": "a361becd83345726307c816da2247744cc4e94ddc2ce03b21ebee6d2957f93dc", + "key": "roborumble/cyragia.Bot_1.1.jar", + "kind": "robot" + }, + "latest_observation": "21d0dade19312424", + "observations": [ + { + "classic": { + "elapsed": 2.4, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 9172.0, + "scores": [ + 4633.0, + 4539.0 + ], + "selected": "cyragia.Bot 1.1" + }, + "completed_at": "2026-09-08T21:37:29Z", + "delta_pct": -4.4, + "id": "962c336578cde35f", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "cyragia.Bot 1.1", + "division": "roborumble", + "jar": "cyragia.Bot_1.1.jar", + "jar_sha256": "a361becd83345726307c816da2247744cc4e94ddc2ce03b21ebee6d2957f93dc", + "key": "roborumble/cyragia.Bot_1.1.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "elapsed": 14.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 8768.0, + "scores": [ + 4547.0, + 4221.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 2.4, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 9308.0, + "scores": [ + 4612.0, + 4696.0 + ], + "selected": "cyragia.Bot 1.1" + }, + "completed_at": "2026-09-11T20:36:01Z", + "confirmation": null, + "delta_pct": -5.7, + "id": "21d0dade19312424", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "cyragia.Bot 1.1", + "division": "roborumble", + "jar": "cyragia.Bot_1.1.jar", + "jar_sha256": "a361becd83345726307c816da2247744cc4e94ddc2ce03b21ebee6d2957f93dc", + "key": "roborumble/cyragia.Bot_1.1.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 16.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 8776.0, + "scores": [ + 4560.0, + 4216.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/da.NewBGank_1.4.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "da.NewBGank 1.4", + "division": "roborumble", + "jar": "da.NewBGank_1.4.jar", + "jar_sha256": "e47b2ea746b5bd9680b8dd884b82b822857acbd31071bbec0d7b1647c461b194", + "key": "roborumble/da.NewBGank_1.4.jar", + "kind": "robot" + }, + "latest_observation": "8b25ee1671f08bbe", + "observations": [ + { + "classic": { + "elapsed": 2.7, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 6054.0, + "scores": [ + 2818.0, + 3236.0 + ], + "selected": "da.NewBGank 1.4" + }, + "completed_at": "2026-09-08T21:37:53Z", + "delta_pct": -33.9, + "id": "a25291b7dea73bfb", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "da.NewBGank 1.4", + "division": "roborumble", + "jar": "da.NewBGank_1.4.jar", + "jar_sha256": "e47b2ea746b5bd9680b8dd884b82b822857acbd31071bbec0d7b1647c461b194", + "key": "roborumble/da.NewBGank_1.4.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (score)", + "tank_royale": { + "elapsed": 20.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 4001.0, + "scores": [ + 2324.0, + 1677.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 2.7, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5984.0, + "scores": [ + 3023.0, + 2961.0 + ], + "selected": "da.NewBGank 1.4" + }, + "completed_at": "2026-09-11T20:36:28Z", + "confirmation": null, + "delta_pct": -30.7, + "id": "8b25ee1671f08bbe", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "da.NewBGank 1.4", + "division": "roborumble", + "jar": "da.NewBGank_1.4.jar", + "jar_sha256": "e47b2ea746b5bd9680b8dd884b82b822857acbd31071bbec0d7b1647c461b194", + "key": "roborumble/da.NewBGank_1.4.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (score)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 24.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 4148.0, + "scores": [ + 2092.0, + 2056.0 + ], + "skipped": null + } + } + ], + "status": "score-review" + }, + "roborumble/daemons.DizzyA_1.0.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "daemons.DizzyA 1.0", + "division": "roborumble", + "jar": "daemons.DizzyA_1.0.jar", + "jar_sha256": "aeba11ca1cd50603c4b74166f04dea30238c77faead6f6830874571bea4091ad", + "key": "roborumble/daemons.DizzyA_1.0.jar", + "kind": "robot" + }, + "latest_observation": "fce67ed0d1b04c77", + "observations": [ + { + "classic": { + "elapsed": 3.2, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 12263.0, + "scores": [ + 6121.0, + 6142.0 + ], + "selected": "daemons.DizzyA 1.0" + }, + "completed_at": "2026-09-08T21:38:28Z", + "delta_pct": -75.5, + "id": "4fb778b08e7b30a5", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "daemons.DizzyA 1.0", + "division": "roborumble", + "jar": "daemons.DizzyA_1.0.jar", + "jar_sha256": "aeba11ca1cd50603c4b74166f04dea30238c77faead6f6830874571bea4091ad", + "key": "roborumble/daemons.DizzyA_1.0.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (score)", + "tank_royale": { + "elapsed": 32.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 3000.0, + "scores": [ + 1522.0, + 1478.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 3.7, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 13103.0, + "scores": [ + 6186.0, + 6917.0 + ], + "selected": "daemons.DizzyA 1.0" + }, + "completed_at": "2026-09-11T20:37:08Z", + "confirmation": null, + "delta_pct": -64.2, + "id": "fce67ed0d1b04c77", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "daemons.DizzyA 1.0", + "division": "roborumble", + "jar": "daemons.DizzyA_1.0.jar", + "jar_sha256": "aeba11ca1cd50603c4b74166f04dea30238c77faead6f6830874571bea4091ad", + "key": "roborumble/daemons.DizzyA_1.0.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (score)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 36.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 4694.0, + "scores": [ + 2618.0, + 2076.0 + ], + "skipped": null + } + } + ], + "status": "score-review" + }, + "roborumble/dam.MogBot_2.9.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "dam.MogBot 2.9", + "division": "roborumble", + "jar": "dam.MogBot_2.9.jar", + "jar_sha256": "7afc716ca13e8918c6f19d5d04fb4119a1f8ce825cc44f873e48329233edc646", + "key": "roborumble/dam.MogBot_2.9.jar", + "kind": "robot" + }, + "latest_observation": "6003e69f1e0dcce6", + "observations": [ + { + "classic": { + "elapsed": 22.9, + "error_count": 24, + "errors": [ + "java.io.StreamCorruptedException: invalid type code: 00", + "java.io.StreamCorruptedException: invalid type code: BF", + "java.io.StreamCorruptedException: invalid type code: 4C", + "java.io.StreamCorruptedException: invalid type code: 6E", + "java.io.UTFDataFormatException", + "java.io.StreamCorruptedException: invalid type code: 00", + "java.io.StreamCorruptedException: invalid type code: BF", + "java.io.StreamCorruptedException: invalid type code: 80", + "java.io.StreamCorruptedException: invalid handle value: 007E0270", + "java.io.StreamCorruptedException: invalid type code: 00", + "java.io.StreamCorruptedException: invalid type code: 00", + "java.io.InvalidClassException: dam.util.GridPoint; enum descriptor has non-zero serialVersionUID: 4446615568564813939", + "java.io.StreamCorruptedException: invalid type code: 00", + "java.io.StreamCorruptedException: invalid type code: BF", + "java.io.StreamCorruptedException: invalid type code: 4C", + "java.io.StreamCorruptedException: invalid type code: 6E", + "java.io.UTFDataFormatException", + "java.io.StreamCorruptedException: invalid type code: 00", + "java.io.StreamCorruptedException: invalid type code: BF", + "java.io.StreamCorruptedException: invalid type code: 80", + "java.io.StreamCorruptedException: invalid handle value: 007E0270", + "java.io.StreamCorruptedException: invalid type code: 00", + "java.io.StreamCorruptedException: invalid type code: 00", + "java.io.InvalidClassException: dam.util.GridPoint; enum descriptor has non-zero serialVersionUID: 4446615568564813939" + ], + "has_log": true, + "ok": true, + "score": 6025.0, + "scores": [ + 3381.0, + 2644.0 + ], + "selected": "dam.MogBot 2.9" + }, + "completed_at": "2026-09-08T21:39:18Z", + "delta_pct": null, + "id": "d949ac75405a14c5", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "dam.MogBot 2.9", + "division": "roborumble", + "jar": "dam.MogBot_2.9.jar", + "jar_sha256": "7afc716ca13e8918c6f19d5d04fb4119a1f8ce825cc44f873e48329233edc646", + "key": "roborumble/dam.MogBot_2.9.jar", + "kind": "robot" + }, + "status": "FAIL (TR)", + "tank_royale": { + "elapsed": 6.2, + "error_count": 3, + "errors": [ + "HARNESS: worker produced no result (exit code -1)", + "java.io.EOFException: Unexpected end of ZLIB input stream", + "java.io.EOFException: Unexpected end of ZLIB input stream" + ], + "has_log": true, + "ok": false, + "score": null, + "scores": [], + "skipped": null + } + }, + { + "classic": { + "elapsed": 20.0, + "error_count": 42, + "error_signatures": [ + { + "exception": "java.io.InvalidClassException", + "origin": "unknown" + }, + { + "exception": "java.io.StreamCorruptedException", + "origin": "unknown" + }, + { + "exception": "java.io.UTFDataFormatException", + "origin": "unknown" + }, + { + "exception": "java.util.zip.ZipException", + "origin": "unknown" + } + ], + "errors": [ + "java.io.UTFDataFormatException", + "java.io.StreamCorruptedException: invalid type code: 7F", + "java.io.InvalidClassException: dam.util.BotPoint; serializable and externalizable flags conflict", + "java.io.InvalidClassException: dam.targetting.PatternTargetting; serializable and externalizable flags conflict", + "java.io.StreamCorruptedException: invalid type code: DF", + "java.io.InvalidClassException: dam.targetting.CircularTargettingS.ting; enum descriptor has non-zero serialVersionUID: 3333624089200127073", + "java.io.StreamCorruptedException: invalid type code: D4", + "java.io.StreamCorruptedException: invalid type code: A9", + "java.io.StreamCorruptedException: invalid type code: 92", + "java.io.StreamCorruptedException: invalid type code: 00", + "java.util.zip.ZipException: invalid distance too far back", + "java.util.zip.ZipException: invalid distance too far back", + "java.io.StreamCorruptedException: invalid type code: 00", + "java.util.zip.ZipException: invalid entry size (expected 14610 but got 14888 bytes)", + "java.io.StreamCorruptedException: invalid type code: 00", + "java.io.StreamCorruptedException: invalid type code: 00", + "java.io.UTFDataFormatException", + "java.util.zip.ZipException: invalid distance too far back", + "java.io.UTFDataFormatException", + "java.io.StreamCorruptedException: invalid type code: BF", + "java.io.UTFDataFormatException", + "java.io.UTFDataFormatException", + "java.io.StreamCorruptedException: invalid type code: 7F", + "java.io.InvalidClassException: dam.util.BotPoint; serializable and externalizable flags conflict", + "java.io.InvalidClassException: dam.targetting.PatternTargetting; serializable and externalizable flags conflict", + "java.io.StreamCorruptedException: invalid type code: DF", + "java.io.InvalidClassException: dam.targetting.CircularTargettingS.ting; enum descriptor has non-zero serialVersionUID: 3333624089200127073", + "java.io.StreamCorruptedException: invalid type code: D4", + "java.io.StreamCorruptedException: invalid type code: A9", + "java.io.StreamCorruptedException: invalid type code: 92", + "java.io.StreamCorruptedException: invalid type code: 00", + "java.util.zip.ZipException: invalid distance too far back", + "java.util.zip.ZipException: invalid distance too far back", + "java.io.StreamCorruptedException: invalid type code: 00", + "java.util.zip.ZipException: invalid entry size (expected 14610 but got 14888 bytes)", + "java.io.StreamCorruptedException: invalid type code: 00", + "java.io.StreamCorruptedException: invalid type code: 00", + "java.io.UTFDataFormatException", + "java.util.zip.ZipException: invalid distance too far back", + "java.io.UTFDataFormatException", + "java.io.StreamCorruptedException: invalid type code: BF", + "java.io.UTFDataFormatException" + ], + "has_log": true, + "ok": true, + "score": 5996.0, + "scores": [ + 2833.0, + 3163.0 + ], + "selected": "dam.MogBot 2.9" + }, + "completed_at": "2026-09-11T20:37:36Z", + "confirmation": null, + "delta_pct": null, + "id": "6003e69f1e0dcce6", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "dam.MogBot 2.9", + "division": "roborumble", + "jar": "dam.MogBot_2.9.jar", + "jar_sha256": "7afc716ca13e8918c6f19d5d04fb4119a1f8ce825cc44f873e48329233edc646", + "key": "roborumble/dam.MogBot_2.9.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (outcome)", + "tank_royale": { + "bridge_only_signatures": [ + [ + "java.io.EOFException", + "unknown" + ] + ], + "elapsed": 8.2, + "error_count": 5, + "error_signatures": [ + { + "exception": "java.io.EOFException", + "origin": "unknown" + } + ], + "errors": [ + "HARNESS: worker produced no result (exit code -1)", + "java.io.EOFException: Unexpected end of ZLIB input stream", + "java.io.EOFException: Unexpected end of ZLIB input stream", + "java.io.EOFException: Unexpected end of ZLIB input stream", + "java.io.EOFException" + ], + "has_log": true, + "ok": false, + "score": null, + "scores": [], + "skipped": null + } + } + ], + "status": "DISCREPANCY (outcome)" + }, + "roborumble/dans.Cinnamon_1.2.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "dans.Cinnamon 1.2", + "division": "roborumble", + "jar": "dans.Cinnamon_1.2.jar", + "jar_sha256": "cb352fa2412994d4160c5161124036464a48cc73b1725178a7ee048609c8b7da", + "key": "roborumble/dans.Cinnamon_1.2.jar", + "kind": "robot" + }, + "latest_observation": "3ddba38f0713acc3", + "observations": [ + { + "classic": { + "elapsed": 2.9, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 8750.0, + "scores": [ + 4450.0, + 4300.0 + ], + "selected": "dans.Cinnamon 1.2" + }, + "completed_at": "2026-09-08T21:39:31Z", + "delta_pct": -51.1, + "id": "4396cf2704a52d50", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "dans.Cinnamon 1.2", + "division": "roborumble", + "jar": "dans.Cinnamon_1.2.jar", + "jar_sha256": "cb352fa2412994d4160c5161124036464a48cc73b1725178a7ee048609c8b7da", + "key": "roborumble/dans.Cinnamon_1.2.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (score)", + "tank_royale": { + "elapsed": 10.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 4281.0, + "scores": [ + 2197.0, + 2084.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 2.7, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 8627.0, + "scores": [ + 4235.0, + 4392.0 + ], + "selected": "dans.Cinnamon 1.2" + }, + "completed_at": "2026-09-11T20:37:51Z", + "confirmation": null, + "delta_pct": -52.9, + "id": "3ddba38f0713acc3", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "dans.Cinnamon 1.2", + "division": "roborumble", + "jar": "dans.Cinnamon_1.2.jar", + "jar_sha256": "cb352fa2412994d4160c5161124036464a48cc73b1725178a7ee048609c8b7da", + "key": "roborumble/dans.Cinnamon_1.2.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (score)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 12.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 4067.0, + "scores": [ + 2416.0, + 1651.0 + ], + "skipped": null + } + } + ], + "status": "score-review" + }, + "roborumble/darkcanuck.Gaff_1.50.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "darkcanuck.Gaff 1.50", + "division": "roborumble", + "jar": "darkcanuck.Gaff_1.50.jar", + "jar_sha256": "64aeb84310e8951dfd7d3cd0bac948d5276e5da63f1fee4cb33419beca244ba8", + "key": "roborumble/darkcanuck.Gaff_1.50.jar", + "kind": "robot" + }, + "latest_observation": "ce292f19f1f58ae4", + "observations": [ + { + "classic": { + "elapsed": 11.6, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 7402.0, + "scores": [ + 4126.0, + 3276.0 + ], + "selected": "darkcanuck.Gaff 1.50" + }, + "completed_at": "2026-09-08T21:39:48Z", + "delta_pct": null, + "id": "970cb17042cd15f3", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "darkcanuck.Gaff 1.50", + "division": "roborumble", + "jar": "darkcanuck.Gaff_1.50.jar", + "jar_sha256": "64aeb84310e8951dfd7d3cd0bac948d5276e5da63f1fee4cb33419beca244ba8", + "key": "roborumble/darkcanuck.Gaff_1.50.jar", + "kind": "robot" + }, + "status": "FAIL (TR)", + "tank_royale": { + "elapsed": 4.2, + "error_count": 3, + "errors": [ + "HARNESS: worker produced no result (exit code -1)", + "IOException trying to read: java.io.FileNotFoundException: C:\\Code\\robocode-api-bridge\\compat-test\\work\\tr-bots\\darkcanuck.Gaff_1.50\\Gaff.data\\Gaff.properties (Den angivne fil blev ikke fundet)", + "IOException trying to read: java.io.FileNotFoundException: C:\\Code\\robocode-api-bridge\\compat-test\\work\\tr-bots\\darkcanuck.Gaff_1.50-2\\Gaff.data\\Gaff.properties (Den angivne fil blev ikke fundet)" + ], + "has_log": true, + "ok": false, + "score": null, + "scores": [], + "skipped": null + } + }, + { + "classic": { + "elapsed": 12.5, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 6792.0, + "scores": [ + 3496.0, + 3296.0 + ], + "selected": "darkcanuck.Gaff 1.50" + }, + "completed_at": "2026-09-11T20:38:08Z", + "confirmation": null, + "delta_pct": null, + "id": "ce292f19f1f58ae4", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "darkcanuck.Gaff 1.50", + "division": "roborumble", + "jar": "darkcanuck.Gaff_1.50.jar", + "jar_sha256": "64aeb84310e8951dfd7d3cd0bac948d5276e5da63f1fee4cb33419beca244ba8", + "key": "roborumble/darkcanuck.Gaff_1.50.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (outcome)", + "tank_royale": { + "bridge_only_signatures": [ + [ + "java.io.FileNotFoundException", + "unknown" + ] + ], + "elapsed": 4.2, + "error_count": 3, + "error_signatures": [ + { + "exception": "java.io.FileNotFoundException", + "origin": "unknown" + } + ], + "errors": [ + "HARNESS: worker produced no result (exit code -1)", + "IOException trying to read: java.io.FileNotFoundException: C:\\Code\\robocode-api-bridge\\compat-test\\work\\tr-bots\\darkcanuck.Gaff_1.50\\Gaff.data\\Gaff.properties (Den angivne fil blev ikke fundet)", + "IOException trying to read: java.io.FileNotFoundException: C:\\Code\\robocode-api-bridge\\compat-test\\work\\tr-bots\\darkcanuck.Gaff_1.50-2\\Gaff.data\\Gaff.properties (Den angivne fil blev ikke fundet)" + ], + "has_log": true, + "ok": false, + "score": null, + "scores": [], + "skipped": null + } + } + ], + "status": "DISCREPANCY (outcome)" + }, + "roborumble/darkcanuck.Holden_1.13a.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "darkcanuck.Holden 1.13a", + "division": "roborumble", + "jar": "darkcanuck.Holden_1.13a.jar", + "jar_sha256": "45996fda61b8ca3d0b807d791c79d2bd4dbff3043083bc99041d43ec01c40625", + "key": "roborumble/darkcanuck.Holden_1.13a.jar", + "kind": "robot" + }, + "latest_observation": "2c000dadc48e9029", + "observations": [ + { + "classic": { + "elapsed": 17.8, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 5920.0, + "scores": [ + 3086.0, + 2834.0 + ], + "selected": "darkcanuck.Holden 1.13a" + }, + "completed_at": "2026-09-08T21:40:10Z", + "delta_pct": null, + "id": "3e764de13ff9996b", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "darkcanuck.Holden 1.13a", + "division": "roborumble", + "jar": "darkcanuck.Holden_1.13a.jar", + "jar_sha256": "45996fda61b8ca3d0b807d791c79d2bd4dbff3043083bc99041d43ec01c40625", + "key": "roborumble/darkcanuck.Holden_1.13a.jar", + "kind": "robot" + }, + "status": "FAIL (TR)", + "tank_royale": { + "elapsed": 4.2, + "error_count": 3, + "errors": [ + "HARNESS: worker produced no result (exit code -1)", + "IOException trying to read: java.io.FileNotFoundException: C:\\Code\\robocode-api-bridge\\compat-test\\work\\tr-bots\\darkcanuck.Holden_1.13a\\Holden.data\\Holden.properties (Den angivne fil blev ikke fundet)", + "IOException trying to read: java.io.FileNotFoundException: C:\\Code\\robocode-api-bridge\\compat-test\\work\\tr-bots\\darkcanuck.Holden_1.13a-2\\Holden.data\\Holden.properties (Den angivne fil blev ikke fundet)" + ], + "has_log": true, + "ok": false, + "score": null, + "scores": [], + "skipped": null + } + }, + { + "classic": { + "elapsed": 19.8, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5663.0, + "scores": [ + 2646.0, + 3017.0 + ], + "selected": "darkcanuck.Holden 1.13a" + }, + "completed_at": "2026-09-11T20:38:33Z", + "confirmation": null, + "delta_pct": null, + "id": "2c000dadc48e9029", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "darkcanuck.Holden 1.13a", + "division": "roborumble", + "jar": "darkcanuck.Holden_1.13a.jar", + "jar_sha256": "45996fda61b8ca3d0b807d791c79d2bd4dbff3043083bc99041d43ec01c40625", + "key": "roborumble/darkcanuck.Holden_1.13a.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (outcome)", + "tank_royale": { + "bridge_only_signatures": [ + [ + "java.io.FileNotFoundException", + "unknown" + ] + ], + "elapsed": 4.2, + "error_count": 3, + "error_signatures": [ + { + "exception": "java.io.FileNotFoundException", + "origin": "unknown" + } + ], + "errors": [ + "HARNESS: worker produced no result (exit code -1)", + "IOException trying to read: java.io.FileNotFoundException: C:\\Code\\robocode-api-bridge\\compat-test\\work\\tr-bots\\darkcanuck.Holden_1.13a\\Holden.data\\Holden.properties (Den angivne fil blev ikke fundet)", + "IOException trying to read: java.io.FileNotFoundException: C:\\Code\\robocode-api-bridge\\compat-test\\work\\tr-bots\\darkcanuck.Holden_1.13a-2\\Holden.data\\Holden.properties (Den angivne fil blev ikke fundet)" + ], + "has_log": true, + "ok": false, + "score": null, + "scores": [], + "skipped": null + } + } + ], + "status": "DISCREPANCY (outcome)" + }, + "roborumble/darkcanuck.Pris_0.92.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "darkcanuck.Pris 0.92", + "division": "roborumble", + "jar": "darkcanuck.Pris_0.92.jar", + "jar_sha256": "d545a4a58eff55fc4c24ea47ed12143c7208104ff223940017632c2b8742fdb9", + "key": "roborumble/darkcanuck.Pris_0.92.jar", + "kind": "robot" + }, + "latest_observation": "84f686571606eda3", + "observations": [ + { + "classic": { + "elapsed": 14.6, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 5105.0, + "scores": [ + 2805.0, + 2300.0 + ], + "selected": "darkcanuck.Pris 0.92" + }, + "completed_at": "2026-09-08T21:40:29Z", + "delta_pct": null, + "id": "a1c846f8e60831ac", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "darkcanuck.Pris 0.92", + "division": "roborumble", + "jar": "darkcanuck.Pris_0.92.jar", + "jar_sha256": "d545a4a58eff55fc4c24ea47ed12143c7208104ff223940017632c2b8742fdb9", + "key": "roborumble/darkcanuck.Pris_0.92.jar", + "kind": "robot" + }, + "status": "FAIL (TR)", + "tank_royale": { + "elapsed": 4.2, + "error_count": 3, + "errors": [ + "HARNESS: worker produced no result (exit code -1)", + "IOException trying to read: java.io.FileNotFoundException: C:\\Code\\robocode-api-bridge\\compat-test\\work\\tr-bots\\darkcanuck.Pris_0.92\\Pris.data\\Pris.properties (Den angivne fil blev ikke fundet)", + "IOException trying to read: java.io.FileNotFoundException: C:\\Code\\robocode-api-bridge\\compat-test\\work\\tr-bots\\darkcanuck.Pris_0.92-2\\Pris.data\\Pris.properties (Den angivne fil blev ikke fundet)" + ], + "has_log": true, + "ok": false, + "score": null, + "scores": [], + "skipped": null + } + }, + { + "classic": { + "elapsed": 14.5, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5179.0, + "scores": [ + 2841.0, + 2338.0 + ], + "selected": "darkcanuck.Pris 0.92" + }, + "completed_at": "2026-09-11T20:38:52Z", + "confirmation": null, + "delta_pct": null, + "id": "84f686571606eda3", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "darkcanuck.Pris 0.92", + "division": "roborumble", + "jar": "darkcanuck.Pris_0.92.jar", + "jar_sha256": "d545a4a58eff55fc4c24ea47ed12143c7208104ff223940017632c2b8742fdb9", + "key": "roborumble/darkcanuck.Pris_0.92.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (outcome)", + "tank_royale": { + "bridge_only_signatures": [ + [ + "java.io.FileNotFoundException", + "unknown" + ] + ], + "elapsed": 4.2, + "error_count": 3, + "error_signatures": [ + { + "exception": "java.io.FileNotFoundException", + "origin": "unknown" + } + ], + "errors": [ + "HARNESS: worker produced no result (exit code -1)", + "IOException trying to read: java.io.FileNotFoundException: C:\\Code\\robocode-api-bridge\\compat-test\\work\\tr-bots\\darkcanuck.Pris_0.92\\Pris.data\\Pris.properties (Den angivne fil blev ikke fundet)", + "IOException trying to read: java.io.FileNotFoundException: C:\\Code\\robocode-api-bridge\\compat-test\\work\\tr-bots\\darkcanuck.Pris_0.92-2\\Pris.data\\Pris.properties (Den angivne fil blev ikke fundet)" + ], + "has_log": true, + "ok": false, + "score": null, + "scores": [], + "skipped": null + } + } + ], + "status": "DISCREPANCY (outcome)" + }, + "roborumble/davidalves.Firebird_0.25.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "davidalves.Firebird 0.25", + "division": "roborumble", + "jar": "davidalves.Firebird_0.25.jar", + "jar_sha256": "ecf5e584ad4d70023baacc9bd4b2ce6c65520675c91f542e21951e20be1243c9", + "key": "roborumble/davidalves.Firebird_0.25.jar", + "kind": "robot" + }, + "latest_observation": "fbca028f7a468788", + "observations": [ + { + "classic": { + "elapsed": 11.5, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 5111.0, + "scores": [ + 2614.0, + 2497.0 + ], + "selected": "davidalves.Firebird 0.25" + }, + "completed_at": "2026-09-08T21:41:01Z", + "delta_pct": 16.1, + "id": "fae39438b7bb4d8a", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "davidalves.Firebird 0.25", + "division": "roborumble", + "jar": "davidalves.Firebird_0.25.jar", + "jar_sha256": "ecf5e584ad4d70023baacc9bd4b2ce6c65520675c91f542e21951e20be1243c9", + "key": "roborumble/davidalves.Firebird_0.25.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "elapsed": 20.1, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 5933.0, + "scores": [ + 3115.0, + 2818.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 11.4, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 4906.0, + "scores": [ + 2520.0, + 2386.0 + ], + "selected": "davidalves.Firebird 0.25" + }, + "completed_at": "2026-09-11T20:39:30Z", + "confirmation": null, + "delta_pct": 28.0, + "id": "fbca028f7a468788", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "davidalves.Firebird 0.25", + "division": "roborumble", + "jar": "davidalves.Firebird_0.25.jar", + "jar_sha256": "ecf5e584ad4d70023baacc9bd4b2ce6c65520675c91f542e21951e20be1243c9", + "key": "roborumble/davidalves.Firebird_0.25.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (score)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 26.2, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 6278.0, + "scores": [ + 3412.0, + 2866.0 + ], + "skipped": null + } + } + ], + "status": "score-review" + }, + "roborumble/davidalves.PhoenixOS_1.1.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "davidalves.PhoenixOS 1.1", + "division": "roborumble", + "jar": "davidalves.PhoenixOS_1.1.jar", + "jar_sha256": "fb4b5b7b628d818780a81818b30de9ae2cf10f54e66f6fbe6111dbb62b38a4c8", + "key": "roborumble/davidalves.PhoenixOS_1.1.jar", + "kind": "robot" + }, + "latest_observation": "d37fc2d466f2354b", + "observations": [ + { + "classic": { + "elapsed": 3.9, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 4825.0, + "scores": [ + 2716.0, + 2109.0 + ], + "selected": "davidalves.PhoenixOS 1.1" + }, + "completed_at": "2026-09-08T21:43:17Z", + "delta_pct": null, + "id": "8f13036b4836dcbf", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "davidalves.PhoenixOS 1.1", + "division": "roborumble", + "jar": "davidalves.PhoenixOS_1.1.jar", + "jar_sha256": "fb4b5b7b628d818780a81818b30de9ae2cf10f54e66f6fbe6111dbb62b38a4c8", + "key": "roborumble/davidalves.PhoenixOS_1.1.jar", + "kind": "robot" + }, + "status": "FAIL (TR)", + "tank_royale": { + "elapsed": 4.2, + "error_count": 3, + "errors": [ + "HARNESS: worker produced no result (exit code -1)", + "java.lang.NullPointerException: Cannot invoke \"davidalves.net.gun.GuessFactorGun.miss()\" because \"gun\" is null", + "java.lang.NullPointerException: Cannot invoke \"davidalves.net.gun.GuessFactorGun.miss()\" because \"gun\" is null" + ], + "has_log": true, + "ok": false, + "score": null, + "scores": [], + "skipped": null + } + }, + { + "classic": { + "elapsed": 4.2, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 4255.0, + "scores": [ + 1706.0, + 2549.0 + ], + "selected": "davidalves.PhoenixOS 1.1" + }, + "completed_at": "2026-09-11T20:45:18Z", + "confirmation": null, + "delta_pct": null, + "id": "d37fc2d466f2354b", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "davidalves.PhoenixOS 1.1", + "division": "roborumble", + "jar": "davidalves.PhoenixOS_1.1.jar", + "jar_sha256": "fb4b5b7b628d818780a81818b30de9ae2cf10f54e66f6fbe6111dbb62b38a4c8", + "key": "roborumble/davidalves.PhoenixOS_1.1.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (outcome)", + "tank_royale": { + "bridge_only_signatures": [ + [ + "java.lang.NullPointerException", + "davidalves.net.gun.GuessFactorGunManager.hit" + ], + [ + "java.lang.NullPointerException", + "davidalves.net.gun.GuessFactorGunManager.updateBulletTracker" + ] + ], + "elapsed": 4.1, + "error_count": 6, + "error_signatures": [ + { + "exception": "java.lang.NullPointerException", + "origin": "davidalves.net.gun.GuessFactorGunManager.hit" + }, + { + "exception": "java.lang.NullPointerException", + "origin": "davidalves.net.gun.GuessFactorGunManager.updateBulletTracker" + } + ], + "errors": [ + "HARNESS: worker produced no result (exit code -1)", + "java.lang.NullPointerException: Cannot invoke \"davidalves.net.gun.GuessFactorGun.hit()\" because \"gun\" is null", + "java.lang.NullPointerException: Cannot invoke \"davidalves.net.gun.GuessFactorGun.hit()\" because \"gun\" is null", + "java.lang.NullPointerException: Cannot invoke \"davidalves.net.gun.GuessFactorGun.miss()\" because \"gun\" is null", + "java.lang.NullPointerException: Cannot invoke \"davidalves.net.gun.GuessFactorGun.hit()\" because \"gun\" is null", + "java.lang.NullPointerException: Cannot invoke \"davidalves.net.gun.GuessFactorGun.miss()\" because \"gun\" is null" + ], + "has_log": true, + "ok": false, + "score": null, + "scores": [], + "skipped": null + } + } + ], + "status": "DISCREPANCY (outcome)" + }, + "roborumble/davidalves.Phoenix_1.02.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "davidalves.Phoenix 1.02", + "division": "roborumble", + "jar": "davidalves.Phoenix_1.02.jar", + "jar_sha256": "89b46a3c5cd14c05e6ec5f59ab189852178cd2d774313ac2e0a2b3971ec0fb37", + "key": "roborumble/davidalves.Phoenix_1.02.jar", + "kind": "robot" + }, + "latest_observation": "d15696e56af7ec73", + "observations": [ + { + "classic": { + "elapsed": 6.9, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 4975.0, + "scores": [ + 2556.0, + 2419.0 + ], + "selected": "davidalves.Phoenix 1.02" + }, + "completed_at": "2026-09-08T21:43:08Z", + "delta_pct": 11.5, + "id": "8abd22893c0c806b", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "davidalves.Phoenix 1.02", + "division": "roborumble", + "jar": "davidalves.Phoenix_1.02.jar", + "jar_sha256": "89b46a3c5cd14c05e6ec5f59ab189852178cd2d774313ac2e0a2b3971ec0fb37", + "key": "roborumble/davidalves.Phoenix_1.02.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "elapsed": 20.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 5546.0, + "scores": [ + 3453.0, + 2093.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 7.4, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5372.0, + "scores": [ + 2761.0, + 2611.0 + ], + "selected": "davidalves.Phoenix 1.02" + }, + "completed_at": "2026-09-11T20:41:46Z", + "confirmation": null, + "delta_pct": 18.0, + "id": "d15696e56af7ec73", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "davidalves.Phoenix 1.02", + "division": "roborumble", + "jar": "davidalves.Phoenix_1.02.jar", + "jar_sha256": "89b46a3c5cd14c05e6ec5f59ab189852178cd2d774313ac2e0a2b3971ec0fb37", + "key": "roborumble/davidalves.Phoenix_1.02.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 22.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 6340.0, + "scores": [ + 3278.0, + 3062.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/davidalves.net.DuelistMicroMkII_1.1.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "davidalves.net.DuelistMicroMkII 1.1", + "division": "roborumble", + "jar": "davidalves.net.DuelistMicroMkII_1.1.jar", + "jar_sha256": "0d3e784acde7d8156090280241668a002f890ee6d5d7fe6dadc971787f67b15e", + "key": "roborumble/davidalves.net.DuelistMicroMkII_1.1.jar", + "kind": "robot" + }, + "latest_observation": "40198e0e594d02d6", + "observations": [ + { + "classic": { + "elapsed": 3.1, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 5188.0, + "scores": [ + 2539.0, + 2649.0 + ], + "selected": "davidalves.net.DuelistMicroMkII 1.1" + }, + "completed_at": "2026-09-08T21:41:58Z", + "delta_pct": 138.5, + "id": "34cf1f962dcb1bcd", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "davidalves.net.DuelistMicroMkII 1.1", + "division": "roborumble", + "jar": "davidalves.net.DuelistMicroMkII_1.1.jar", + "jar_sha256": "0d3e784acde7d8156090280241668a002f890ee6d5d7fe6dadc971787f67b15e", + "key": "roborumble/davidalves.net.DuelistMicroMkII_1.1.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (score)", + "tank_royale": { + "elapsed": 14.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 12373.0, + "scores": [ + 6464.0, + 5909.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 2.7, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5326.0, + "scores": [ + 2492.0, + 2834.0 + ], + "selected": "davidalves.net.DuelistMicroMkII 1.1" + }, + "completed_at": "2026-09-11T20:40:28Z", + "confirmation": null, + "delta_pct": 117.4, + "id": "40198e0e594d02d6", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "davidalves.net.DuelistMicroMkII 1.1", + "division": "roborumble", + "jar": "davidalves.net.DuelistMicroMkII_1.1.jar", + "jar_sha256": "0d3e784acde7d8156090280241668a002f890ee6d5d7fe6dadc971787f67b15e", + "key": "roborumble/davidalves.net.DuelistMicroMkII_1.1.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (score)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 14.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 11580.0, + "scores": [ + 5967.0, + 5613.0 + ], + "skipped": null + } + } + ], + "status": "score-review" + }, + "roborumble/davidalves.net.DuelistMicro_1.22.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "davidalves.net.DuelistMicro 1.22", + "division": "roborumble", + "jar": "davidalves.net.DuelistMicro_1.22.jar", + "jar_sha256": "e51b32ab504ef17c0bcd47bb7953ccdd07f7e050b0fa1a3478e63281eaa0fe2a", + "key": "roborumble/davidalves.net.DuelistMicro_1.22.jar", + "kind": "robot" + }, + "latest_observation": "c28e90450fc99ae5", + "observations": [ + { + "classic": { + "elapsed": 3.2, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 5170.0, + "scores": [ + 2389.0, + 2781.0 + ], + "selected": "davidalves.net.DuelistMicro 1.22" + }, + "completed_at": "2026-09-08T21:41:40Z", + "delta_pct": 69.6, + "id": "4d34a6e0b2152b18", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "davidalves.net.DuelistMicro 1.22", + "division": "roborumble", + "jar": "davidalves.net.DuelistMicro_1.22.jar", + "jar_sha256": "e51b32ab504ef17c0bcd47bb7953ccdd07f7e050b0fa1a3478e63281eaa0fe2a", + "key": "roborumble/davidalves.net.DuelistMicro_1.22.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (score)", + "tank_royale": { + "elapsed": 12.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 8770.0, + "scores": [ + 4535.0, + 4235.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 2.9, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5648.0, + "scores": [ + 2941.0, + 2707.0 + ], + "selected": "davidalves.net.DuelistMicro 1.22" + }, + "completed_at": "2026-09-11T20:40:11Z", + "confirmation": null, + "delta_pct": 53.5, + "id": "c28e90450fc99ae5", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "davidalves.net.DuelistMicro 1.22", + "division": "roborumble", + "jar": "davidalves.net.DuelistMicro_1.22.jar", + "jar_sha256": "e51b32ab504ef17c0bcd47bb7953ccdd07f7e050b0fa1a3478e63281eaa0fe2a", + "key": "roborumble/davidalves.net.DuelistMicro_1.22.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (score)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 14.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 8667.0, + "scores": [ + 4503.0, + 4164.0 + ], + "skipped": null + } + } + ], + "status": "score-review" + }, + "roborumble/davidalves.net.DuelistMini_1.1.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "davidalves.net.DuelistMini 1.1", + "division": "roborumble", + "jar": "davidalves.net.DuelistMini_1.1.jar", + "jar_sha256": "9b2ccfee8ff26f622417b82fbe3634e7ff0b3c6693e5fcdd0f534f9a071d86b5", + "key": "roborumble/davidalves.net.DuelistMini_1.1.jar", + "kind": "robot" + }, + "latest_observation": "cb584316a7ba79e0", + "observations": [ + { + "classic": { + "elapsed": 3.4, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 4765.0, + "scores": [ + 2860.0, + 1905.0 + ], + "selected": "davidalves.net.DuelistMini 1.1" + }, + "completed_at": "2026-09-08T21:42:20Z", + "delta_pct": -10.0, + "id": "6fb819cdb10fc868", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "davidalves.net.DuelistMini 1.1", + "division": "roborumble", + "jar": "davidalves.net.DuelistMini_1.1.jar", + "jar_sha256": "9b2ccfee8ff26f622417b82fbe3634e7ff0b3c6693e5fcdd0f534f9a071d86b5", + "key": "roborumble/davidalves.net.DuelistMini_1.1.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "elapsed": 18.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 4290.0, + "scores": [ + 2273.0, + 2017.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 3.1, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 4665.0, + "scores": [ + 1898.0, + 2767.0 + ], + "selected": "davidalves.net.DuelistMini 1.1" + }, + "completed_at": "2026-09-11T20:40:53Z", + "confirmation": null, + "delta_pct": -8.4, + "id": "cb584316a7ba79e0", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "davidalves.net.DuelistMini 1.1", + "division": "roborumble", + "jar": "davidalves.net.DuelistMini_1.1.jar", + "jar_sha256": "9b2ccfee8ff26f622417b82fbe3634e7ff0b3c6693e5fcdd0f534f9a071d86b5", + "key": "roborumble/davidalves.net.DuelistMini_1.1.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 22.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 4272.0, + "scores": [ + 2141.0, + 2131.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/davidalves.net.DuelistNano_1.0.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "davidalves.net.DuelistNano 1.0", + "division": "roborumble", + "jar": "davidalves.net.DuelistNano_1.0.jar", + "jar_sha256": "024b50bf85f17fa136ca87ba615701dd46473d8ef299c49794001271a9aa848e", + "key": "roborumble/davidalves.net.DuelistNano_1.0.jar", + "kind": "robot" + }, + "latest_observation": "d29eb247c581f450", + "observations": [ + { + "classic": { + "elapsed": 2.7, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 4314.0, + "scores": [ + 2288.0, + 2026.0 + ], + "selected": "davidalves.net.DuelistNano 1.0" + }, + "completed_at": "2026-09-08T21:42:41Z", + "delta_pct": 4.2, + "id": "eeb33d1a7dbabc53", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "davidalves.net.DuelistNano 1.0", + "division": "roborumble", + "jar": "davidalves.net.DuelistNano_1.0.jar", + "jar_sha256": "024b50bf85f17fa136ca87ba615701dd46473d8ef299c49794001271a9aa848e", + "key": "roborumble/davidalves.net.DuelistNano_1.0.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "elapsed": 18.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 4495.0, + "scores": [ + 2293.0, + 2202.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 2.5, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 4578.0, + "scores": [ + 2060.0, + 2518.0 + ], + "selected": "davidalves.net.DuelistNano 1.0" + }, + "completed_at": "2026-09-11T20:41:16Z", + "confirmation": null, + "delta_pct": 1.1, + "id": "d29eb247c581f450", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "davidalves.net.DuelistNano 1.0", + "division": "roborumble", + "jar": "davidalves.net.DuelistNano_1.0.jar", + "jar_sha256": "024b50bf85f17fa136ca87ba615701dd46473d8ef299c49794001271a9aa848e", + "key": "roborumble/davidalves.net.DuelistNano_1.0.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 20.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 4627.0, + "scores": [ + 2408.0, + 2219.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/davidalves.net.Duelist_0.1.6src.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "davidalves.net.Duelist 0.1.6src", + "division": "roborumble", + "jar": "davidalves.net.Duelist_0.1.6src.jar", + "jar_sha256": "85c0efdc1a1c9e91b1d35ab906e794c255165f961ce6ad5271a564686ae623ae", + "key": "roborumble/davidalves.net.Duelist_0.1.6src.jar", + "kind": "robot" + }, + "latest_observation": "a1dd12d2d41bd3da", + "observations": [ + { + "classic": { + "elapsed": 3.8, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 4870.0, + "scores": [ + 2256.0, + 2614.0 + ], + "selected": "davidalves.net.Duelist 0.1.6src" + }, + "completed_at": "2026-09-08T21:41:25Z", + "delta_pct": 0.1, + "id": "da9c6f4187b20af6", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "davidalves.net.Duelist 0.1.6src", + "division": "roborumble", + "jar": "davidalves.net.Duelist_0.1.6src.jar", + "jar_sha256": "85c0efdc1a1c9e91b1d35ab906e794c255165f961ce6ad5271a564686ae623ae", + "key": "roborumble/davidalves.net.Duelist_0.1.6src.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "elapsed": 20.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 4877.0, + "scores": [ + 2904.0, + 1973.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 3.4, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 4743.0, + "scores": [ + 2513.0, + 2230.0 + ], + "selected": "davidalves.net.Duelist 0.1.6src" + }, + "completed_at": "2026-09-11T20:39:53Z", + "confirmation": null, + "delta_pct": -0.5, + "id": "a1dd12d2d41bd3da", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "davidalves.net.Duelist 0.1.6src", + "division": "roborumble", + "jar": "davidalves.net.Duelist_0.1.6src.jar", + "jar_sha256": "85c0efdc1a1c9e91b1d35ab906e794c255165f961ce6ad5271a564686ae623ae", + "key": "roborumble/davidalves.net.Duelist_0.1.6src.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 20.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 4720.0, + "scores": [ + 2448.0, + 2272.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/davv.DOne_b002.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "davv.DOne b002", + "division": "roborumble", + "jar": "davv.DOne_b002.jar", + "jar_sha256": "c4247ac7dade8278e7bdcb028af8c14d4850654318798c694a558df07d8b6a2e", + "key": "roborumble/davv.DOne_b002.jar", + "kind": "robot" + }, + "latest_observation": "f60c95154076199f", + "observations": [ + { + "classic": { + "elapsed": 4.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 5189.0, + "scores": [ + 2593.0, + 2596.0 + ], + "selected": "davv.DOne b002" + }, + "completed_at": "2026-09-08T21:43:51Z", + "delta_pct": -53.3, + "id": "8948876072cf5515", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "davv.DOne b002", + "division": "roborumble", + "jar": "davv.DOne_b002.jar", + "jar_sha256": "c4247ac7dade8278e7bdcb028af8c14d4850654318798c694a558df07d8b6a2e", + "key": "roborumble/davv.DOne_b002.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (score)", + "tank_royale": { + "elapsed": 30.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 2422.0, + "scores": [ + 1387.0, + 1035.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 3.9, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5593.0, + "scores": [ + 2065.0, + 3528.0 + ], + "selected": "davv.DOne b002" + }, + "completed_at": "2026-09-11T20:45:56Z", + "confirmation": null, + "delta_pct": -39.9, + "id": "f60c95154076199f", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "davv.DOne b002", + "division": "roborumble", + "jar": "davv.DOne_b002.jar", + "jar_sha256": "c4247ac7dade8278e7bdcb028af8c14d4850654318798c694a558df07d8b6a2e", + "key": "roborumble/davv.DOne_b002.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (score)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 34.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 3359.0, + "scores": [ + 1868.0, + 1491.0 + ], + "skipped": null + } + } + ], + "status": "score-review" + }, + "roborumble/dcs.Eater_of_Worlds_1.1.3-A.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "dcs.Eater_of_Worlds 1.1.3-A", + "division": "roborumble", + "jar": "dcs.Eater_of_Worlds_1.1.3-A.jar", + "jar_sha256": "b674714bdd8a9a3f2a422c44789ce0328e3c97db328d486b5a08e57c622bd1b8", + "key": "roborumble/dcs.Eater_of_Worlds_1.1.3-A.jar", + "kind": "robot" + }, + "latest_observation": "6d03e404aa0e75d9", + "observations": [ + { + "classic": { + "elapsed": 2.5, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 7446.0, + "scores": [ + 3219.0, + 4227.0 + ], + "selected": "dcs.Eater_of_Worlds 1.1.3-A" + }, + "completed_at": "2026-09-08T21:44:08Z", + "delta_pct": 19.2, + "id": "acfc2f677316f7a1", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "dcs.Eater_of_Worlds 1.1.3-A", + "division": "roborumble", + "jar": "dcs.Eater_of_Worlds_1.1.3-A.jar", + "jar_sha256": "b674714bdd8a9a3f2a422c44789ce0328e3c97db328d486b5a08e57c622bd1b8", + "key": "roborumble/dcs.Eater_of_Worlds_1.1.3-A.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "elapsed": 14.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 8877.0, + "scores": [ + 5234.0, + 3643.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 2.5, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 7612.0, + "scores": [ + 3871.0, + 3741.0 + ], + "selected": "dcs.Eater_of_Worlds 1.1.3-A" + }, + "completed_at": "2026-09-11T20:46:17Z", + "confirmation": null, + "delta_pct": 18.0, + "id": "6d03e404aa0e75d9", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "dcs.Eater_of_Worlds 1.1.3-A", + "division": "roborumble", + "jar": "dcs.Eater_of_Worlds_1.1.3-A.jar", + "jar_sha256": "b674714bdd8a9a3f2a422c44789ce0328e3c97db328d486b5a08e57c622bd1b8", + "key": "roborumble/dcs.Eater_of_Worlds_1.1.3-A.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 18.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 8979.0, + "scores": [ + 4808.0, + 4171.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/dcs.Eater_of_Worlds_Mini_1.0.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "dcs.Eater_of_Worlds_Mini 1.0", + "division": "roborumble", + "jar": "dcs.Eater_of_Worlds_Mini_1.0.jar", + "jar_sha256": "424d954d97913eb026baa23b0a387bec3723e090b8c2619f83be76905a006b3d", + "key": "roborumble/dcs.Eater_of_Worlds_Mini_1.0.jar", + "kind": "robot" + }, + "latest_observation": "2fe91471c7f09d1a", + "observations": [ + { + "classic": { + "elapsed": 2.5, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 8122.0, + "scores": [ + 4301.0, + 3821.0 + ], + "selected": "dcs.Eater_of_Worlds_Mini 1.0" + }, + "completed_at": "2026-09-08T21:44:26Z", + "delta_pct": -3.7, + "id": "aa8ea784d11f187f", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "dcs.Eater_of_Worlds_Mini 1.0", + "division": "roborumble", + "jar": "dcs.Eater_of_Worlds_Mini_1.0.jar", + "jar_sha256": "424d954d97913eb026baa23b0a387bec3723e090b8c2619f83be76905a006b3d", + "key": "roborumble/dcs.Eater_of_Worlds_Mini_1.0.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "elapsed": 16.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 7824.0, + "scores": [ + 4118.0, + 3706.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 2.4, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 7929.0, + "scores": [ + 3938.0, + 3991.0 + ], + "selected": "dcs.Eater_of_Worlds_Mini 1.0" + }, + "completed_at": "2026-09-11T20:46:37Z", + "confirmation": null, + "delta_pct": 0.7, + "id": "2fe91471c7f09d1a", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "dcs.Eater_of_Worlds_Mini 1.0", + "division": "roborumble", + "jar": "dcs.Eater_of_Worlds_Mini_1.0.jar", + "jar_sha256": "424d954d97913eb026baa23b0a387bec3723e090b8c2619f83be76905a006b3d", + "key": "roborumble/dcs.Eater_of_Worlds_Mini_1.0.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 18.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 7983.0, + "scores": [ + 4639.0, + 3344.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/dcs.PM.Eater_of_Worlds_PM_1.2.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "dcs.PM.Eater_of_Worlds_PM 1.2", + "division": "roborumble", + "jar": "dcs.PM.Eater_of_Worlds_PM_1.2.jar", + "jar_sha256": "103d8b2e0e831171d8bc2ad4d2272f17765dfc9ecc7075ee4cdbba2a1a7b3e85", + "key": "roborumble/dcs.PM.Eater_of_Worlds_PM_1.2.jar", + "kind": "robot" + }, + "latest_observation": "f1ba2437b9b57a63", + "observations": [ + { + "classic": { + "elapsed": 2.9, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 5358.0, + "scores": [ + 2593.0, + 2765.0 + ], + "selected": "dcs.PM.Eater_of_Worlds_PM 1.2" + }, + "completed_at": "2026-09-08T21:44:42Z", + "delta_pct": 155.4, + "id": "ff977f89ff8c2e6b", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "dcs.PM.Eater_of_Worlds_PM 1.2", + "division": "roborumble", + "jar": "dcs.PM.Eater_of_Worlds_PM_1.2.jar", + "jar_sha256": "103d8b2e0e831171d8bc2ad4d2272f17765dfc9ecc7075ee4cdbba2a1a7b3e85", + "key": "roborumble/dcs.PM.Eater_of_Worlds_PM_1.2.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (score)", + "tank_royale": { + "elapsed": 12.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 13685.0, + "scores": [ + 7034.0, + 6651.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 2.8, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5102.0, + "scores": [ + 2568.0, + 2534.0 + ], + "selected": "dcs.PM.Eater_of_Worlds_PM 1.2" + }, + "completed_at": "2026-09-11T20:46:57Z", + "confirmation": null, + "delta_pct": 149.5, + "id": "f1ba2437b9b57a63", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "dcs.PM.Eater_of_Worlds_PM 1.2", + "division": "roborumble", + "jar": "dcs.PM.Eater_of_Worlds_PM_1.2.jar", + "jar_sha256": "103d8b2e0e831171d8bc2ad4d2272f17765dfc9ecc7075ee4cdbba2a1a7b3e85", + "key": "roborumble/dcs.PM.Eater_of_Worlds_PM_1.2.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (score)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 16.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 12730.0, + "scores": [ + 6477.0, + 6253.0 + ], + "skipped": null + } + } + ], + "status": "score-review" + }, + "roborumble/de.erdega.robocode.Polyphemos_0.4.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "de.erdega.robocode.Polyphemos 0.4", + "division": "roborumble", + "jar": "de.erdega.robocode.Polyphemos_0.4.jar", + "jar_sha256": "64765b6e60690f6889f1ef44ef0e8a566871eee38b280784e68900dff5d0e7be", + "key": "roborumble/de.erdega.robocode.Polyphemos_0.4.jar", + "kind": "robot" + }, + "latest_observation": "4b2a42fea45ce2a9", + "observations": [ + { + "classic": { + "elapsed": 2.6, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 5160.0, + "scores": [ + 2440.0, + 2720.0 + ], + "selected": "de.erdega.robocode.Polyphemos 0.4" + }, + "completed_at": "2026-09-08T21:45:07Z", + "delta_pct": -35.0, + "id": "2b4de671d6c6e4bf", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "de.erdega.robocode.Polyphemos 0.4", + "division": "roborumble", + "jar": "de.erdega.robocode.Polyphemos_0.4.jar", + "jar_sha256": "64765b6e60690f6889f1ef44ef0e8a566871eee38b280784e68900dff5d0e7be", + "key": "roborumble/de.erdega.robocode.Polyphemos_0.4.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (score)", + "tank_royale": { + "elapsed": 22.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 3354.0, + "scores": [ + 1829.0, + 1525.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 2.6, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5472.0, + "scores": [ + 3029.0, + 2443.0 + ], + "selected": "de.erdega.robocode.Polyphemos 0.4" + }, + "completed_at": "2026-09-11T20:47:24Z", + "confirmation": null, + "delta_pct": -39.0, + "id": "4b2a42fea45ce2a9", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "de.erdega.robocode.Polyphemos 0.4", + "division": "roborumble", + "jar": "de.erdega.robocode.Polyphemos_0.4.jar", + "jar_sha256": "64765b6e60690f6889f1ef44ef0e8a566871eee38b280784e68900dff5d0e7be", + "key": "roborumble/de.erdega.robocode.Polyphemos_0.4.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (score)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 24.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 3338.0, + "scores": [ + 1978.0, + 1360.0 + ], + "skipped": null + } + } + ], + "status": "score-review" + }, + "roborumble/de.simpleworks.robocode.bots.swiBot_1.0.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "de.simpleworks.robocode.bots.swiBot 1.0", + "division": "roborumble", + "jar": "de.simpleworks.robocode.bots.swiBot_1.0.jar", + "jar_sha256": "0f8ba834279b54d3494be8aeb57f35d557e8d05bb4075a832a76206b1fa89eef", + "key": "roborumble/de.simpleworks.robocode.bots.swiBot_1.0.jar", + "kind": "robot" + }, + "latest_observation": "c1c1dba51c345138", + "observations": [ + { + "classic": { + "elapsed": 2.7, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 9417.0, + "scores": [ + 4829.0, + 4588.0 + ], + "selected": "de.simpleworks.robocode.bots.swiBot 1.0" + }, + "completed_at": "2026-09-08T21:45:32Z", + "delta_pct": -13.2, + "id": "8a7446289797b1b0", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "de.simpleworks.robocode.bots.swiBot 1.0", + "division": "roborumble", + "jar": "de.simpleworks.robocode.bots.swiBot_1.0.jar", + "jar_sha256": "0f8ba834279b54d3494be8aeb57f35d557e8d05bb4075a832a76206b1fa89eef", + "key": "roborumble/de.simpleworks.robocode.bots.swiBot_1.0.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "elapsed": 22.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 8172.0, + "scores": [ + 4378.0, + 3794.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 2.9, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 9398.0, + "scores": [ + 4338.0, + 5060.0 + ], + "selected": "de.simpleworks.robocode.bots.swiBot 1.0" + }, + "completed_at": "2026-09-11T20:47:47Z", + "confirmation": null, + "delta_pct": -7.7, + "id": "c1c1dba51c345138", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "de.simpleworks.robocode.bots.swiBot 1.0", + "division": "roborumble", + "jar": "de.simpleworks.robocode.bots.swiBot_1.0.jar", + "jar_sha256": "0f8ba834279b54d3494be8aeb57f35d557e8d05bb4075a832a76206b1fa89eef", + "key": "roborumble/de.simpleworks.robocode.bots.swiBot_1.0.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 20.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 8675.0, + "scores": [ + 4432.0, + 4243.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/deith.Czolgzilla_0.11.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "deith.Czolgzilla 0.11", + "division": "roborumble", + "jar": "deith.Czolgzilla_0.11.jar", + "jar_sha256": "62fcf900acce6f57575b9f550455c49c70238555233b37a6687f979f9af91779", + "key": "roborumble/deith.Czolgzilla_0.11.jar", + "kind": "robot" + }, + "latest_observation": "6a14a50736d181ca", + "observations": [ + { + "classic": { + "elapsed": 43.1, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 5143.0, + "scores": [ + 3161.0, + 1982.0 + ], + "selected": "deith.Czolgzilla 0.11" + }, + "completed_at": "2026-09-08T21:46:55Z", + "delta_pct": -5.6, + "id": "08cef06b36787464", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "deith.Czolgzilla 0.11", + "division": "roborumble", + "jar": "deith.Czolgzilla_0.11.jar", + "jar_sha256": "62fcf900acce6f57575b9f550455c49c70238555233b37a6687f979f9af91779", + "key": "roborumble/deith.Czolgzilla_0.11.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "elapsed": 40.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 4853.0, + "scores": [ + 2548.0, + 2305.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 60.7, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5251.0, + "scores": [ + 2608.0, + 2643.0 + ], + "selected": "deith.Czolgzilla 0.11" + }, + "completed_at": "2026-09-11T20:50:12Z", + "confirmation": null, + "delta_pct": -7.5, + "id": "6a14a50736d181ca", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "deith.Czolgzilla 0.11", + "division": "roborumble", + "jar": "deith.Czolgzilla_0.11.jar", + "jar_sha256": "62fcf900acce6f57575b9f550455c49c70238555233b37a6687f979f9af91779", + "key": "roborumble/deith.Czolgzilla_0.11.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 84.1, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 4856.0, + "scores": [ + 2477.0, + 2379.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/demetrix.ForceMajeure_0.75.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "demetrix.ForceMajeure 0.75", + "division": "roborumble", + "jar": "demetrix.ForceMajeure_0.75.jar", + "jar_sha256": "015c4cf71816f9b7ec45ca58c680054eada7157ea54b8eb29c33ec4a82be5011", + "key": "roborumble/demetrix.ForceMajeure_0.75.jar", + "kind": "robot" + }, + "latest_observation": "c99da6d0b2acb9c2", + "observations": [ + { + "classic": { + "elapsed": 8.9, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 5942.0, + "scores": [ + 3395.0, + 2547.0 + ], + "selected": "demetrix.ForceMajeure 0.75" + }, + "completed_at": "2026-09-08T21:47:28Z", + "delta_pct": -0.5, + "id": "bbf69d95d8f28b8f", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "demetrix.ForceMajeure 0.75", + "division": "roborumble", + "jar": "demetrix.ForceMajeure_0.75.jar", + "jar_sha256": "015c4cf71816f9b7ec45ca58c680054eada7157ea54b8eb29c33ec4a82be5011", + "key": "roborumble/demetrix.ForceMajeure_0.75.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "elapsed": 24.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 5913.0, + "scores": [ + 3066.0, + 2847.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 8.8, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 6329.0, + "scores": [ + 3913.0, + 2416.0 + ], + "selected": "demetrix.ForceMajeure 0.75" + }, + "completed_at": "2026-09-11T20:50:49Z", + "confirmation": null, + "delta_pct": -9.6, + "id": "c99da6d0b2acb9c2", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "demetrix.ForceMajeure 0.75", + "division": "roborumble", + "jar": "demetrix.ForceMajeure_0.75.jar", + "jar_sha256": "015c4cf71816f9b7ec45ca58c680054eada7157ea54b8eb29c33ec4a82be5011", + "key": "roborumble/demetrix.ForceMajeure_0.75.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 28.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5722.0, + "scores": [ + 3709.0, + 2013.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/demetrix.nano.Neutrino_0.27.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "demetrix.nano.Neutrino 0.27", + "division": "roborumble", + "jar": "demetrix.nano.Neutrino_0.27.jar", + "jar_sha256": "3ba40e81b6908456aad702dd6e8481f33d07898ac773a1307a20563157942a23", + "key": "roborumble/demetrix.nano.Neutrino_0.27.jar", + "kind": "robot" + }, + "latest_observation": "c6d106d809914110", + "observations": [ + { + "classic": { + "elapsed": 2.4, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 7673.0, + "scores": [ + 4020.0, + 3653.0 + ], + "selected": "demetrix.nano.Neutrino 0.27" + }, + "completed_at": "2026-09-08T21:47:45Z", + "delta_pct": -17.5, + "id": "c87a4b8d228674d0", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "demetrix.nano.Neutrino 0.27", + "division": "roborumble", + "jar": "demetrix.nano.Neutrino_0.27.jar", + "jar_sha256": "3ba40e81b6908456aad702dd6e8481f33d07898ac773a1307a20563157942a23", + "key": "roborumble/demetrix.nano.Neutrino_0.27.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "elapsed": 14.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 6329.0, + "scores": [ + 3688.0, + 2641.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 2.4, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 7560.0, + "scores": [ + 3835.0, + 3725.0 + ], + "selected": "demetrix.nano.Neutrino 0.27" + }, + "completed_at": "2026-09-11T20:51:12Z", + "confirmation": null, + "delta_pct": -28.2, + "id": "c6d106d809914110", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "demetrix.nano.Neutrino 0.27", + "division": "roborumble", + "jar": "demetrix.nano.Neutrino_0.27.jar", + "jar_sha256": "3ba40e81b6908456aad702dd6e8481f33d07898ac773a1307a20563157942a23", + "key": "roborumble/demetrix.nano.Neutrino_0.27.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (score)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 20.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5431.0, + "scores": [ + 3022.0, + 2409.0 + ], + "skipped": null + } + } + ], + "status": "score-review" + }, + "roborumble/demetrix.nano.SledgeHammer_0.22.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "demetrix.nano.SledgeHammer 0.22", + "division": "roborumble", + "jar": "demetrix.nano.SledgeHammer_0.22.jar", + "jar_sha256": "8ca91c5c9cbe37fbd67f136a38ac4be45c2f8b9eb470367957c3fe20e0edd3cd", + "key": "roborumble/demetrix.nano.SledgeHammer_0.22.jar", + "kind": "robot" + }, + "latest_observation": "2dd6c1ce765e2145", + "observations": [ + { + "classic": { + "elapsed": 2.1, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 10442.0, + "scores": [ + 4827.0, + 5615.0 + ], + "selected": "demetrix.nano.SledgeHammer 0.22" + }, + "completed_at": "2026-09-08T21:47:57Z", + "delta_pct": 58.1, + "id": "804cc154798fef47", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "demetrix.nano.SledgeHammer 0.22", + "division": "roborumble", + "jar": "demetrix.nano.SledgeHammer_0.22.jar", + "jar_sha256": "8ca91c5c9cbe37fbd67f136a38ac4be45c2f8b9eb470367957c3fe20e0edd3cd", + "key": "roborumble/demetrix.nano.SledgeHammer_0.22.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (score)", + "tank_royale": { + "elapsed": 10.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 16508.0, + "scores": [ + 8362.0, + 8146.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 2.1, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 10293.0, + "scores": [ + 5564.0, + 4729.0 + ], + "selected": "demetrix.nano.SledgeHammer 0.22" + }, + "completed_at": "2026-09-11T20:51:24Z", + "confirmation": null, + "delta_pct": 62.3, + "id": "2dd6c1ce765e2145", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "demetrix.nano.SledgeHammer 0.22", + "division": "roborumble", + "jar": "demetrix.nano.SledgeHammer_0.22.jar", + "jar_sha256": "8ca91c5c9cbe37fbd67f136a38ac4be45c2f8b9eb470367957c3fe20e0edd3cd", + "key": "roborumble/demetrix.nano.SledgeHammer_0.22.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (score)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 10.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 16705.0, + "scores": [ + 8549.0, + 8156.0 + ], + "skipped": null + } + } + ], + "status": "score-review" + }, + "roborumble/deo.CloudBot_1.3.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "deo.CloudBot 1.3", + "division": "roborumble", + "jar": "deo.CloudBot_1.3.jar", + "jar_sha256": "d62f0561529c81e5da65ad44c4c6db8b31dceca043ec2d9fcc4646aa15ed28f3", + "key": "roborumble/deo.CloudBot_1.3.jar", + "kind": "robot" + }, + "latest_observation": "602f15d5ee46510e", + "observations": [ + { + "classic": { + "elapsed": 2.8, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 5643.0, + "scores": [ + 2950.0, + 2693.0 + ], + "selected": "deo.CloudBot 1.3" + }, + "completed_at": "2026-09-08T21:48:20Z", + "delta_pct": -48.6, + "id": "78bba33b96e662cd", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "deo.CloudBot 1.3", + "division": "roborumble", + "jar": "deo.CloudBot_1.3.jar", + "jar_sha256": "d62f0561529c81e5da65ad44c4c6db8b31dceca043ec2d9fcc4646aa15ed28f3", + "key": "roborumble/deo.CloudBot_1.3.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (score)", + "tank_royale": { + "elapsed": 20.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 2899.0, + "scores": [ + 1506.0, + 1393.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 2.7, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5540.0, + "scores": [ + 1931.0, + 3609.0 + ], + "selected": "deo.CloudBot 1.3" + }, + "completed_at": "2026-09-11T20:51:51Z", + "confirmation": null, + "delta_pct": -29.9, + "id": "602f15d5ee46510e", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "deo.CloudBot 1.3", + "division": "roborumble", + "jar": "deo.CloudBot_1.3.jar", + "jar_sha256": "d62f0561529c81e5da65ad44c4c6db8b31dceca043ec2d9fcc4646aa15ed28f3", + "key": "roborumble/deo.CloudBot_1.3.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (score)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 24.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 3885.0, + "scores": [ + 1982.0, + 1903.0 + ], + "skipped": null + } + } + ], + "status": "score-review" + }, + "roborumble/deo.FlowerBot_1.0.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "deo.FlowerBot 1.0", + "division": "roborumble", + "jar": "deo.FlowerBot_1.0.jar", + "jar_sha256": "b5546fad91b493970149f74a827f7080df7ada99a958deaeebbfcfc0c211a5e5", + "key": "roborumble/deo.FlowerBot_1.0.jar", + "kind": "robot" + }, + "latest_observation": "906c3cf350cdb490", + "observations": [ + { + "classic": { + "elapsed": 3.3, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 6175.0, + "scores": [ + 3231.0, + 2944.0 + ], + "selected": "deo.FlowerBot 1.0" + }, + "completed_at": "2026-09-08T21:48:40Z", + "delta_pct": -11.2, + "id": "fc65e7d5693090d9", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "deo.FlowerBot 1.0", + "division": "roborumble", + "jar": "deo.FlowerBot_1.0.jar", + "jar_sha256": "b5546fad91b493970149f74a827f7080df7ada99a958deaeebbfcfc0c211a5e5", + "key": "roborumble/deo.FlowerBot_1.0.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "elapsed": 16.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 5481.0, + "scores": [ + 3215.0, + 2266.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 3.4, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5661.0, + "scores": [ + 2677.0, + 2984.0 + ], + "selected": "deo.FlowerBot 1.0" + }, + "completed_at": "2026-09-11T20:52:15Z", + "confirmation": null, + "delta_pct": -6.4, + "id": "906c3cf350cdb490", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "deo.FlowerBot 1.0", + "division": "roborumble", + "jar": "deo.FlowerBot_1.0.jar", + "jar_sha256": "b5546fad91b493970149f74a827f7080df7ada99a958deaeebbfcfc0c211a5e5", + "key": "roborumble/deo.FlowerBot_1.0.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 20.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5301.0, + "scores": [ + 3142.0, + 2159.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/deo.virtual.RainbowBot_1.0.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "deo.virtual.RainbowBot 1.0", + "division": "roborumble", + "jar": "deo.virtual.RainbowBot_1.0.jar", + "jar_sha256": "3854b1a74b34f26b4fccfc997b5faadb4db60177cd48857d8bdba79e63f5bba4", + "key": "roborumble/deo.virtual.RainbowBot_1.0.jar", + "kind": "robot" + }, + "latest_observation": "ec739c27975085dd", + "observations": [ + { + "classic": { + "elapsed": 3.8, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 6603.0, + "scores": [ + 2903.0, + 3700.0 + ], + "selected": "deo.virtual.RainbowBot 1.0" + }, + "completed_at": "2026-09-08T21:49:04Z", + "delta_pct": -51.9, + "id": "38ab74151e9be2ed", + "manifest": { + "artifacts": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "official_parameters": true, + "supplied": { + "artifactSha256": { + "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", + "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", + "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", + "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + }, + "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "collectionDir": "C:\\Code\\LiteRumble robots", + "command": "python compat_test.py --limit 50", + "created": "2026-09-08T21:13:17.3265216Z", + "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", + "pythonVersion": "Python 3.14.2", + "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", + "robocodeHome": "C:\\robocode", + "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", + "tankRoyaleVersion": "1.2.0" + }, + "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "threshold": 25.0 + }, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "deo.virtual.RainbowBot 1.0", + "division": "roborumble", + "jar": "deo.virtual.RainbowBot_1.0.jar", + "jar_sha256": "3854b1a74b34f26b4fccfc997b5faadb4db60177cd48857d8bdba79e63f5bba4", + "key": "roborumble/deo.virtual.RainbowBot_1.0.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (score)", + "tank_royale": { + "elapsed": 20.0, + "error_count": 0, + "errors": [], + "has_log": false, + "ok": true, + "score": 3175.0, + "scores": [ + 1712.0, + 1463.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 3.6, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 6277.0, + "scores": [ + 3273.0, + 3004.0 + ], + "selected": "deo.virtual.RainbowBot 1.0" + }, + "completed_at": "2026-09-11T20:52:43Z", + "confirmation": null, + "delta_pct": -42.9, + "id": "ec739c27975085dd", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "deo.virtual.RainbowBot 1.0", + "division": "roborumble", + "jar": "deo.virtual.RainbowBot_1.0.jar", + "jar_sha256": "3854b1a74b34f26b4fccfc997b5faadb4db60177cd48857d8bdba79e63f5bba4", + "key": "roborumble/deo.virtual.RainbowBot_1.0.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (score)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 24.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 3582.0, + "scores": [ + 1806.0, + 1776.0 + ], + "skipped": null + } + } + ], + "status": "score-review" + }, + "roborumble/dft.Calliope_5.6.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "dft.Calliope 5.6", + "division": "roborumble", + "jar": "dft.Calliope_5.6.jar", + "jar_sha256": "dee2ec44341ba6c2574bf995c317b4f806d3189f19ab040f8565b487dab5248a", + "key": "roborumble/dft.Calliope_5.6.jar", + "kind": "robot" + }, + "latest_observation": "1922e70abf214431", + "observations": [ + { + "classic": { + "elapsed": 2.4, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 8381.0, + "scores": [ + 4269.0, + 4112.0 + ], + "selected": "dft.Calliope 5.6" + }, + "completed_at": "2026-09-11T20:53:20Z", + "confirmation": null, + "delta_pct": -37.7, + "id": "1922e70abf214431", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "dft.Calliope 5.6", + "division": "roborumble", + "jar": "dft.Calliope_5.6.jar", + "jar_sha256": "dee2ec44341ba6c2574bf995c317b4f806d3189f19ab040f8565b487dab5248a", + "key": "roborumble/dft.Calliope_5.6.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (score)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 34.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5218.0, + "scores": [ + 2628.0, + 2590.0 + ], + "skipped": null + } + } + ], + "status": "score-review" + }, + "roborumble/dft.Cyanide_1.90.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "dft.Cyanide 1.90", + "division": "roborumble", + "jar": "dft.Cyanide_1.90.jar", + "jar_sha256": "3767765dc0d72340a142a954314c52ce724db95a623df32747a10bcac2e9a6ca", + "key": "roborumble/dft.Cyanide_1.90.jar", + "kind": "robot" + }, + "latest_observation": "b56d225eda383ab9", + "observations": [ + { + "classic": { + "elapsed": 4.6, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 4640.0, + "scores": [ + 1737.0, + 2903.0 + ], + "selected": "dft.Cyanide 1.90" + }, + "completed_at": "2026-09-11T20:53:51Z", + "confirmation": null, + "delta_pct": -7.7, + "id": "b56d225eda383ab9", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "dft.Cyanide 1.90", + "division": "roborumble", + "jar": "dft.Cyanide_1.90.jar", + "jar_sha256": "3767765dc0d72340a142a954314c52ce724db95a623df32747a10bcac2e9a6ca", + "key": "roborumble/dft.Cyanide_1.90.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 26.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 4281.0, + "scores": [ + 2260.0, + 2021.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/dft.Cyprus_3.0.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "dft.Cyprus 3.0", + "division": "roborumble", + "jar": "dft.Cyprus_3.0.jar", + "jar_sha256": "d8da533866abc23c9114819b16330bfd7a25115fbfa65f847d1ab795bb5b576d", + "key": "roborumble/dft.Cyprus_3.0.jar", + "kind": "robot" + }, + "latest_observation": "910fdb7758e78f46", + "observations": [ + { + "classic": { + "elapsed": 3.6, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 4761.0, + "scores": [ + 2351.0, + 2410.0 + ], + "selected": "dft.Cyprus 3.0" + }, + "completed_at": "2026-09-11T20:54:17Z", + "confirmation": null, + "delta_pct": 1.3, + "id": "910fdb7758e78f46", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "dft.Cyprus 3.0", + "division": "roborumble", + "jar": "dft.Cyprus_3.0.jar", + "jar_sha256": "d8da533866abc23c9114819b16330bfd7a25115fbfa65f847d1ab795bb5b576d", + "key": "roborumble/dft.Cyprus_3.0.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 22.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 4823.0, + "scores": [ + 2682.0, + 2141.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/dft.Freddie_1.32.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "dft.Freddie 1.32", + "division": "roborumble", + "jar": "dft.Freddie_1.32.jar", + "jar_sha256": "76565239b343d40c03dd6c4e886fc78749335da2796662d280006545176057ae", + "key": "roborumble/dft.Freddie_1.32.jar", + "kind": "robot" + }, + "latest_observation": "341a18222d734d39", + "observations": [ + { + "classic": { + "elapsed": 2.4, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 6867.0, + "scores": [ + 3397.0, + 3470.0 + ], + "selected": "dft.Freddie 1.32" + }, + "completed_at": "2026-09-11T20:54:32Z", + "confirmation": null, + "delta_pct": -51.2, + "id": "341a18222d734d39", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "dft.Freddie 1.32", + "division": "roborumble", + "jar": "dft.Freddie_1.32.jar", + "jar_sha256": "76565239b343d40c03dd6c4e886fc78749335da2796662d280006545176057ae", + "key": "roborumble/dft.Freddie_1.32.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (score)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 12.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 3354.0, + "scores": [ + 1748.0, + 1606.0 + ], + "skipped": null + } + } + ], + "status": "score-review" + }, + "roborumble/dft.Guppy_1.0.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "dft.Guppy 1.0", + "division": "roborumble", + "jar": "dft.Guppy_1.0.jar", + "jar_sha256": "0ec4d3b29caea04949e3e1cbeaa3df33db613ec4633b7e7d34a0ba2829f401c5", + "key": "roborumble/dft.Guppy_1.0.jar", + "kind": "robot" + }, + "latest_observation": "e769ffce4e573dad", + "observations": [ + { + "classic": { + "elapsed": 2.2, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 10319.0, + "scores": [ + 4891.0, + 5428.0 + ], + "selected": "dft.Guppy 1.0" + }, + "completed_at": "2026-09-11T20:54:46Z", + "confirmation": null, + "delta_pct": -0.0, + "id": "e769ffce4e573dad", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "dft.Guppy 1.0", + "division": "roborumble", + "jar": "dft.Guppy_1.0.jar", + "jar_sha256": "0ec4d3b29caea04949e3e1cbeaa3df33db613ec4633b7e7d34a0ba2829f401c5", + "key": "roborumble/dft.Guppy_1.0.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 12.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 10317.0, + "scores": [ + 5447.0, + 4870.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/dft.Immortal_1.40.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "dft.Immortal 1.40", + "division": "roborumble", + "jar": "dft.Immortal_1.40.jar", + "jar_sha256": "386c34159e85b5a786b4430c4e1f2c29a5ecd896e4d05b634d032d1c6db7229b", + "key": "roborumble/dft.Immortal_1.40.jar", + "kind": "robot" + }, + "latest_observation": "1d36afbb67c11346", + "observations": [ + { + "classic": { + "elapsed": 4.2, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 4363.0, + "scores": [ + 2195.0, + 2168.0 + ], + "selected": "dft.Immortal 1.40" + }, + "completed_at": "2026-09-11T20:55:15Z", + "confirmation": null, + "delta_pct": -7.2, + "id": "1d36afbb67c11346", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "dft.Immortal 1.40", + "division": "roborumble", + "jar": "dft.Immortal_1.40.jar", + "jar_sha256": "386c34159e85b5a786b4430c4e1f2c29a5ecd896e4d05b634d032d1c6db7229b", + "key": "roborumble/dft.Immortal_1.40.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 24.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 4047.0, + "scores": [ + 2203.0, + 1844.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/dft.Krazy_1.5.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "dft.Krazy 1.5", + "division": "roborumble", + "jar": "dft.Krazy_1.5.jar", + "jar_sha256": "0daebd3dfdc2b82bc332c3ea31b9286b2da388667ce4caaacb4e237d4a1f8634", + "key": "roborumble/dft.Krazy_1.5.jar", + "kind": "robot" + }, + "latest_observation": "164440b187073126", + "observations": [ + { + "classic": { + "elapsed": 2.8, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 6105.0, + "scores": [ + 2278.0, + 3827.0 + ], + "selected": "dft.Krazy 1.5" + }, + "completed_at": "2026-09-11T20:55:52Z", + "confirmation": null, + "delta_pct": -100.0, + "id": "164440b187073126", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "dft.Krazy 1.5", + "division": "roborumble", + "jar": "dft.Krazy_1.5.jar", + "jar_sha256": "0daebd3dfdc2b82bc332c3ea31b9286b2da388667ce4caaacb4e237d4a1f8634", + "key": "roborumble/dft.Krazy_1.5.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (score)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 34.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 0.0, + "scores": [ + 0.0, + 0.0 + ], + "skipped": null + } + } + ], + "status": "score-review" + }, + "roborumble/dft.Virgin_1.25.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "dft.Virgin 1.25", + "division": "roborumble", + "jar": "dft.Virgin_1.25.jar", + "jar_sha256": "e180d3759f42cfc8d3bdcf5a8f5f6ef6c12d94f03d6710ad3008b56bb5e3cd6f", + "key": "roborumble/dft.Virgin_1.25.jar", + "kind": "robot" + }, + "latest_observation": "36ab62179c948ed5", + "observations": [ + { + "classic": { + "elapsed": 2.6, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5767.0, + "scores": [ + 2952.0, + 2815.0 + ], + "selected": "dft.Virgin 1.25" + }, + "completed_at": "2026-09-11T20:56:13Z", + "confirmation": null, + "delta_pct": -1.9, + "id": "36ab62179c948ed5", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "dft.Virgin 1.25", + "division": "roborumble", + "jar": "dft.Virgin_1.25.jar", + "jar_sha256": "e180d3759f42cfc8d3bdcf5a8f5f6ef6c12d94f03d6710ad3008b56bb5e3cd6f", + "key": "roborumble/dft.Virgin_1.25.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 18.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5658.0, + "scores": [ + 2852.0, + 2806.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/dggp.haiku.gpBot_0_1.1.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "dggp.haiku.gpBot_0 1.1", + "division": "roborumble", + "jar": "dggp.haiku.gpBot_0_1.1.jar", + "jar_sha256": "a19725573c6849e5f85f63fecf569745978d77dbefc73280f000c141a695e619", + "key": "roborumble/dggp.haiku.gpBot_0_1.1.jar", + "kind": "robot" + }, + "latest_observation": "8c9d984fdf0efc98", + "observations": [ + { + "classic": { + "elapsed": 2.4, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5156.0, + "scores": [ + 2360.0, + 2796.0 + ], + "selected": "dggp.haiku.gpBot_0 1.1" + }, + "completed_at": "2026-09-11T20:56:46Z", + "confirmation": null, + "delta_pct": -55.8, + "id": "8c9d984fdf0efc98", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "dggp.haiku.gpBot_0 1.1", + "division": "roborumble", + "jar": "dggp.haiku.gpBot_0_1.1.jar", + "jar_sha256": "a19725573c6849e5f85f63fecf569745978d77dbefc73280f000c141a695e619", + "key": "roborumble/dggp.haiku.gpBot_0_1.1.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (score)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 30.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 2281.0, + "scores": [ + 1352.0, + 929.0 + ], + "skipped": null + } + } + ], + "status": "score-review" + }, + "roborumble/disan.Chair_2.2.0.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "disan.Chair 2.2.0", + "division": "roborumble", + "jar": "disan.Chair_2.2.0.jar", + "jar_sha256": "3d3507b7019f9488e497698aba94d3484bca364624b8faaa00b3c1cb26298dbd", + "key": "roborumble/disan.Chair_2.2.0.jar", + "kind": "robot" + }, + "latest_observation": "208f62fdfb38e29f", + "observations": [ + { + "classic": { + "elapsed": 2.9, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 4130.0, + "scores": [ + 2204.0, + 1926.0 + ], + "selected": "disan.Chair 2.2.0" + }, + "completed_at": "2026-09-11T20:57:15Z", + "confirmation": null, + "delta_pct": -16.3, + "id": "208f62fdfb38e29f", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "disan.Chair 2.2.0", + "division": "roborumble", + "jar": "disan.Chair_2.2.0.jar", + "jar_sha256": "3d3507b7019f9488e497698aba94d3484bca364624b8faaa00b3c1cb26298dbd", + "key": "roborumble/disan.Chair_2.2.0.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 26.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 3458.0, + "scores": [ + 1981.0, + 1477.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/disan.Ghost_.01.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "disan.Ghost .01", + "division": "roborumble", + "jar": "disan.Ghost_.01.jar", + "jar_sha256": "c938b4daa1ae168c46c485498224846309bc1287bd8e54b9c46954c413ee8987", + "key": "roborumble/disan.Ghost_.01.jar", + "kind": "robot" + }, + "latest_observation": "939017536d62cb1b", + "observations": [ + { + "classic": { + "elapsed": 3.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 2100.0, + "scores": [ + 1500.0, + 600.0 + ], + "selected": "disan.Ghost .01" + }, + "completed_at": "2026-09-11T20:57:42Z", + "confirmation": null, + "delta_pct": 0.0, + "id": "939017536d62cb1b", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "78c338d", + "official_parameters": true, + "tank_royale_commit": "ae71363a579d7e45eb5e019948ed8fd3877b7c01", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "disan.Ghost .01", + "division": "roborumble", + "jar": "disan.Ghost_.01.jar", + "jar_sha256": "c938b4daa1ae168c46c485498224846309bc1287bd8e54b9c46954c413ee8987", + "key": "roborumble/disan.Ghost_.01.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 24.1, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 2100.0, + "scores": [ + 1500.0, + 600.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/dittman.BlindSquirl_Retired.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "dittman.BlindSquirl Retired", + "division": "roborumble", + "jar": "dittman.BlindSquirl_Retired.jar", + "jar_sha256": "137363a80d70457dbb26f256a45f1e52814c2818e21bf7834800607eb193ab92", + "key": "roborumble/dittman.BlindSquirl_Retired.jar", + "kind": "robot" + }, + "latest_observation": "bd4fb0e12b986401", + "observations": [ + { + "classic": { + "elapsed": 3.2, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5456.0, + "scores": [ + 2412.0, + 3044.0 + ], + "selected": "dittman.BlindSquirl Retired" + }, + "completed_at": "2026-09-11T21:03:15Z", + "confirmation": null, + "delta_pct": -65.0, + "id": "bd4fb0e12b986401", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "7c7e232a37beaac0f3aa1c7760c0a66ab41480b3", + "official_parameters": true, + "tank_royale_commit": "a553d8069e3f67e8711f0a3e976c339f389faec8", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "dittman.BlindSquirl Retired", + "division": "roborumble", + "jar": "dittman.BlindSquirl_Retired.jar", + "jar_sha256": "137363a80d70457dbb26f256a45f1e52814c2818e21bf7834800607eb193ab92", + "key": "roborumble/dittman.BlindSquirl_Retired.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (score)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 34.2, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 1908.0, + "scores": [ + 1106.0, + 802.0 + ], + "skipped": null + } + } + ], + "status": "score-review" + }, + "roborumble/divineomega.DivineBot_1.9.5.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "divineomega.DivineBot 1.9.5", + "division": "roborumble", + "jar": "divineomega.DivineBot_1.9.5.jar", + "jar_sha256": "8d127b2400ccfddf39d0666729cc749b95084f1550c76d604f8b1089ca688b8a", + "key": "roborumble/divineomega.DivineBot_1.9.5.jar", + "kind": "robot" + }, + "latest_observation": "4fd33ccfdaf0dab3", + "observations": [ + { + "classic": { + "elapsed": 4.8, + "error_count": 2, + "error_signatures": [ + { + "exception": "java.io.EOFException", + "origin": "divineomega.FileManager.load" + } + ], + "errors": [ + "java.io.EOFException", + "java.io.EOFException" + ], + "has_log": true, + "ok": true, + "score": 7632.0, + "scores": [ + 3524.0, + 4108.0 + ], + "selected": "divineomega.DivineBot 1.9.5" + }, + "completed_at": "2026-09-11T21:03:57Z", + "confirmation": null, + "delta_pct": 0.3, + "id": "4fd33ccfdaf0dab3", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "7c7e232a37beaac0f3aa1c7760c0a66ab41480b3", + "official_parameters": true, + "tank_royale_commit": "a553d8069e3f67e8711f0a3e976c339f389faec8", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "divineomega.DivineBot 1.9.5", + "division": "roborumble", + "jar": "divineomega.DivineBot_1.9.5.jar", + "jar_sha256": "8d127b2400ccfddf39d0666729cc749b95084f1550c76d604f8b1089ca688b8a", + "key": "roborumble/divineomega.DivineBot_1.9.5.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (errors)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 36.2, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 7654.0, + "scores": [ + 4473.0, + 3181.0 + ], + "skipped": null + } + } + ], + "status": "DISCREPANCY (errors)" + }, + "roborumble/divineomega.PatrollerBot_1.0.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "divineomega.PatrollerBot 1.0", + "division": "roborumble", + "jar": "divineomega.PatrollerBot_1.0.jar", + "jar_sha256": "f5514cb171122f1e35af42721ebe200f235300815f566297a1c65acaaf3ee0ab", + "key": "roborumble/divineomega.PatrollerBot_1.0.jar", + "kind": "robot" + }, + "latest_observation": "f0329aed308430d6", + "observations": [ + { + "classic": { + "elapsed": 2.5, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 9546.0, + "scores": [ + 5230.0, + 4316.0 + ], + "selected": "divineomega.PatrollerBot 1.0" + }, + "completed_at": "2026-09-11T21:04:13Z", + "confirmation": null, + "delta_pct": -0.5, + "id": "f0329aed308430d6", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "7c7e232a37beaac0f3aa1c7760c0a66ab41480b3", + "official_parameters": true, + "tank_royale_commit": "a553d8069e3f67e8711f0a3e976c339f389faec8", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "divineomega.PatrollerBot 1.0", + "division": "roborumble", + "jar": "divineomega.PatrollerBot_1.0.jar", + "jar_sha256": "f5514cb171122f1e35af42721ebe200f235300815f566297a1c65acaaf3ee0ab", + "key": "roborumble/divineomega.PatrollerBot_1.0.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 14.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 9499.0, + "scores": [ + 4856.0, + 4643.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/divineomega.TrialBot_0.003.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "divineomega.TrialBot 0.003", + "division": "roborumble", + "jar": "divineomega.TrialBot_0.003.jar", + "jar_sha256": "8d6a761c5e66883ca6a7ffa77dfb6eb5406a5f43f7889c9a21e34d0afc0724d6", + "key": "roborumble/divineomega.TrialBot_0.003.jar", + "kind": "robot" + }, + "latest_observation": "9e9013ee655ba929", + "observations": [ + { + "classic": { + "elapsed": 7.5, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 6252.0, + "scores": [ + 2993.0, + 3259.0 + ], + "selected": "divineomega.TrialBot 0.003" + }, + "completed_at": "2026-09-11T21:05:13Z", + "confirmation": null, + "delta_pct": -0.4, + "id": "9e9013ee655ba929", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "7c7e232a37beaac0f3aa1c7760c0a66ab41480b3", + "official_parameters": true, + "tank_royale_commit": "a553d8069e3f67e8711f0a3e976c339f389faec8", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "divineomega.TrialBot 0.003", + "division": "roborumble", + "jar": "divineomega.TrialBot_0.003.jar", + "jar_sha256": "8d6a761c5e66883ca6a7ffa77dfb6eb5406a5f43f7889c9a21e34d0afc0724d6", + "key": "roborumble/divineomega.TrialBot_0.003.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 52.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 6230.0, + "scores": [ + 3338.0, + 2892.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/djc.Aardvark_0.3.6.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "djc.Aardvark 0.3.6", + "division": "roborumble", + "jar": "djc.Aardvark_0.3.6.jar", + "jar_sha256": "855ef4ea1425dcdfadbb9678d6b7707394dfd7fd1d401f13a732ac93014fecb7", + "key": "roborumble/djc.Aardvark_0.3.6.jar", + "kind": "robot" + }, + "latest_observation": "0f5e762f770658d6", + "observations": [ + { + "classic": { + "elapsed": 2.9, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5483.0, + "scores": [ + 2839.0, + 2644.0 + ], + "selected": "djc.Aardvark 0.3.6" + }, + "completed_at": "2026-09-11T21:05:35Z", + "confirmation": null, + "delta_pct": -11.1, + "id": "0f5e762f770658d6", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "7c7e232a37beaac0f3aa1c7760c0a66ab41480b3", + "official_parameters": true, + "tank_royale_commit": "a553d8069e3f67e8711f0a3e976c339f389faec8", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "djc.Aardvark 0.3.6", + "division": "roborumble", + "jar": "djc.Aardvark_0.3.6.jar", + "jar_sha256": "855ef4ea1425dcdfadbb9678d6b7707394dfd7fd1d401f13a732ac93014fecb7", + "key": "roborumble/djc.Aardvark_0.3.6.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 18.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 4874.0, + "scores": [ + 2688.0, + 2186.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/djdjdj.NanoSkunk10_1.0.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "djdjdj.NanoSkunk10 1.0", + "division": "roborumble", + "jar": "djdjdj.NanoSkunk10_1.0.jar", + "jar_sha256": "fc647073a6fdfbbdc04f2f964ccb7bd7210180d1d11b1b6ecba314d480e3f944", + "key": "roborumble/djdjdj.NanoSkunk10_1.0.jar", + "kind": "robot" + }, + "latest_observation": "584c9f0476f1fbd5", + "observations": [ + { + "classic": { + "elapsed": 2.6, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 7024.0, + "scores": [ + 3147.0, + 3877.0 + ], + "selected": "djdjdj.NanoSkunk10 1.0" + }, + "completed_at": "2026-09-11T21:05:57Z", + "confirmation": null, + "delta_pct": -25.9, + "id": "584c9f0476f1fbd5", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "7c7e232a37beaac0f3aa1c7760c0a66ab41480b3", + "official_parameters": true, + "tank_royale_commit": "a553d8069e3f67e8711f0a3e976c339f389faec8", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "djdjdj.NanoSkunk10 1.0", + "division": "roborumble", + "jar": "djdjdj.NanoSkunk10_1.0.jar", + "jar_sha256": "fc647073a6fdfbbdc04f2f964ccb7bd7210180d1d11b1b6ecba314d480e3f944", + "key": "roborumble/djdjdj.NanoSkunk10_1.0.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (score)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 20.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5204.0, + "scores": [ + 2852.0, + 2352.0 + ], + "skipped": null + } + } + ], + "status": "score-review" + }, + "roborumble/dk.stable.Gorgatron_1.1.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "dk.stable.Gorgatron 1.1", + "division": "roborumble", + "jar": "dk.stable.Gorgatron_1.1.jar", + "jar_sha256": "fec1bb821d7be8224cfe2aead4a17cffe0efcdeb0d63ea61e74cf17d702f1f6d", + "key": "roborumble/dk.stable.Gorgatron_1.1.jar", + "kind": "robot" + }, + "latest_observation": "26892e7aeaed0062", + "observations": [ + { + "classic": { + "elapsed": 4.6, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 7008.0, + "scores": [ + 3112.0, + 3896.0 + ], + "selected": "dk.stable.Gorgatron 1.1" + }, + "completed_at": "2026-09-11T21:06:22Z", + "confirmation": null, + "delta_pct": -15.0, + "id": "26892e7aeaed0062", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "7c7e232a37beaac0f3aa1c7760c0a66ab41480b3", + "official_parameters": true, + "tank_royale_commit": "a553d8069e3f67e8711f0a3e976c339f389faec8", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "dk.stable.Gorgatron 1.1", + "division": "roborumble", + "jar": "dk.stable.Gorgatron_1.1.jar", + "jar_sha256": "fec1bb821d7be8224cfe2aead4a17cffe0efcdeb0d63ea61e74cf17d702f1f6d", + "key": "roborumble/dk.stable.Gorgatron_1.1.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 20.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5959.0, + "scores": [ + 3055.0, + 2904.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/dks.MicroDanMK2_1.0.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "dks.MicroDanMK2 1.0", + "division": "roborumble", + "jar": "dks.MicroDanMK2_1.0.jar", + "jar_sha256": "57a65452d52dced01b36eb9ca0b429b32ab39ea98f0ad3af1e3fa74a97b6a1a5", + "key": "roborumble/dks.MicroDanMK2_1.0.jar", + "kind": "robot" + }, + "latest_observation": "d9aa07342e2c385f", + "observations": [ + { + "classic": { + "elapsed": 2.4, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 6454.0, + "scores": [ + 3341.0, + 3113.0 + ], + "selected": "dks.MicroDanMK2 1.0" + }, + "completed_at": "2026-09-11T21:06:41Z", + "confirmation": null, + "delta_pct": -4.8, + "id": "d9aa07342e2c385f", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "7c7e232a37beaac0f3aa1c7760c0a66ab41480b3", + "official_parameters": true, + "tank_royale_commit": "a553d8069e3f67e8711f0a3e976c339f389faec8", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "dks.MicroDanMK2 1.0", + "division": "roborumble", + "jar": "dks.MicroDanMK2_1.0.jar", + "jar_sha256": "57a65452d52dced01b36eb9ca0b429b32ab39ea98f0ad3af1e3fa74a97b6a1a5", + "key": "roborumble/dks.MicroDanMK2_1.0.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 16.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 6144.0, + "scores": [ + 3676.0, + 2468.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/dmh.robocode.robot.BlackDeath_9.2.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "dmh.robocode.robot.BlackDeath 9.2", + "division": "roborumble", + "jar": "dmh.robocode.robot.BlackDeath_9.2.jar", + "jar_sha256": "5fc9438915d0beb53da001f7d452062375cbde35532567be7be968f459b4d4a1", + "key": "roborumble/dmh.robocode.robot.BlackDeath_9.2.jar", + "kind": "robot" + }, + "latest_observation": "5a66d8e6f151150b", + "observations": [ + { + "classic": { + "elapsed": 4.1, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 4969.0, + "scores": [ + 2577.0, + 2392.0 + ], + "selected": "dmh.robocode.robot.BlackDeath 9.2" + }, + "completed_at": "2026-09-11T21:08:26Z", + "confirmation": null, + "delta_pct": null, + "id": "5a66d8e6f151150b", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "7c7e232a37beaac0f3aa1c7760c0a66ab41480b3", + "official_parameters": true, + "tank_royale_commit": "a553d8069e3f67e8711f0a3e976c339f389faec8", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "dmh.robocode.robot.BlackDeath 9.2", + "division": "roborumble", + "jar": "dmh.robocode.robot.BlackDeath_9.2.jar", + "jar_sha256": "5fc9438915d0beb53da001f7d452062375cbde35532567be7be968f459b4d4a1", + "key": "roborumble/dmh.robocode.robot.BlackDeath_9.2.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (outcome)", + "tank_royale": { + "bridge_only_signatures": [ + [ + "java.io.FileNotFoundException", + "dmh.robocode.robot.CommandBasedRobot.loadEnemyStatsFromDataFile" + ] + ], + "elapsed": 4.2, + "error_count": 3, + "error_signatures": [ + { + "exception": "java.io.FileNotFoundException", + "origin": "dmh.robocode.robot.CommandBasedRobot.loadEnemyStatsFromDataFile" + } + ], + "errors": [ + "HARNESS: worker produced no result (exit code -1)", + "java.io.FileNotFoundException: C:\\Code\\robocode-api-bridge\\compat-test\\work\\tr-bots\\dmh.robocode.robot.BlackDeath_9.2\\BlackDeath.data\\2.txt (Den angivne fil blev ikke fundet)", + "java.io.FileNotFoundException: C:\\Code\\robocode-api-bridge\\compat-test\\work\\tr-bots\\dmh.robocode.robot.BlackDeath_9.2-2\\BlackDeath.data\\1.txt (Den angivne fil blev ikke fundet)" + ], + "has_log": true, + "ok": false, + "score": null, + "scores": [], + "skipped": null + } + } + ], + "status": "DISCREPANCY (outcome)" + }, + "roborumble/dmh.robocode.robot.BlueBerry_0.5.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "dmh.robocode.robot.BlueBerry 0.5", + "division": "roborumble", + "jar": "dmh.robocode.robot.BlueBerry_0.5.jar", + "jar_sha256": "3739fb06f3f805c42e7afccd8b0cc17e02916021789c6e504c22688a1ae160fb", + "key": "roborumble/dmh.robocode.robot.BlueBerry_0.5.jar", + "kind": "robot" + }, + "latest_observation": "41ff60750d06c66c", + "observations": [ + { + "classic": { + "elapsed": 2.4, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5598.0, + "scores": [ + 2594.0, + 3004.0 + ], + "selected": "dmh.robocode.robot.BlueBerry 0.5" + }, + "completed_at": "2026-09-11T21:08:41Z", + "confirmation": null, + "delta_pct": -39.9, + "id": "41ff60750d06c66c", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "7c7e232a37beaac0f3aa1c7760c0a66ab41480b3", + "official_parameters": true, + "tank_royale_commit": "a553d8069e3f67e8711f0a3e976c339f389faec8", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "dmh.robocode.robot.BlueBerry 0.5", + "division": "roborumble", + "jar": "dmh.robocode.robot.BlueBerry_0.5.jar", + "jar_sha256": "3739fb06f3f805c42e7afccd8b0cc17e02916021789c6e504c22688a1ae160fb", + "key": "roborumble/dmh.robocode.robot.BlueBerry_0.5.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (score)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 12.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 3366.0, + "scores": [ + 1785.0, + 1581.0 + ], + "skipped": null + } + } + ], + "status": "score-review" + }, + "roborumble/dmh.robocode.robot.GreenDragon_1.0.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "dmh.robocode.robot.GreenDragon 1.0", + "division": "roborumble", + "jar": "dmh.robocode.robot.GreenDragon_1.0.jar", + "jar_sha256": "f0bf1f4d8d8e8de1e9855f236760cb8ced39b1389bbbf70cf2c38fb4e7a28f7a", + "key": "roborumble/dmh.robocode.robot.GreenDragon_1.0.jar", + "kind": "robot" + }, + "latest_observation": "bcfc6d79e390b279", + "observations": [ + { + "classic": { + "elapsed": 2.5, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5415.0, + "scores": [ + 2714.0, + 2701.0 + ], + "selected": "dmh.robocode.robot.GreenDragon 1.0" + }, + "completed_at": "2026-09-11T21:09:05Z", + "confirmation": null, + "delta_pct": -21.7, + "id": "bcfc6d79e390b279", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "7c7e232a37beaac0f3aa1c7760c0a66ab41480b3", + "official_parameters": true, + "tank_royale_commit": "a553d8069e3f67e8711f0a3e976c339f389faec8", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "dmh.robocode.robot.GreenDragon 1.0", + "division": "roborumble", + "jar": "dmh.robocode.robot.GreenDragon_1.0.jar", + "jar_sha256": "f0bf1f4d8d8e8de1e9855f236760cb8ced39b1389bbbf70cf2c38fb4e7a28f7a", + "key": "roborumble/dmh.robocode.robot.GreenDragon_1.0.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 22.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 4242.0, + "scores": [ + 2261.0, + 1981.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/dmh.robocode.robot.PinkPanther_1.1.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "dmh.robocode.robot.PinkPanther 1.1", + "division": "roborumble", + "jar": "dmh.robocode.robot.PinkPanther_1.1.jar", + "jar_sha256": "e1978d2af0bb4521cb3fc2783b3adb9ba5a374da9ff2f63be0c936b9aabcaf0b", + "key": "roborumble/dmh.robocode.robot.PinkPanther_1.1.jar", + "kind": "robot" + }, + "latest_observation": "9b1fac585eb3cd2f", + "observations": [ + { + "classic": { + "elapsed": 2.6, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 7333.0, + "scores": [ + 3008.0, + 4325.0 + ], + "selected": "dmh.robocode.robot.PinkPanther 1.1" + }, + "completed_at": "2026-09-11T21:09:24Z", + "confirmation": null, + "delta_pct": -12.5, + "id": "9b1fac585eb3cd2f", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "7c7e232a37beaac0f3aa1c7760c0a66ab41480b3", + "official_parameters": true, + "tank_royale_commit": "a553d8069e3f67e8711f0a3e976c339f389faec8", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "dmh.robocode.robot.PinkPanther 1.1", + "division": "roborumble", + "jar": "dmh.robocode.robot.PinkPanther_1.1.jar", + "jar_sha256": "e1978d2af0bb4521cb3fc2783b3adb9ba5a374da9ff2f63be0c936b9aabcaf0b", + "key": "roborumble/dmh.robocode.robot.PinkPanther_1.1.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 16.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 6420.0, + "scores": [ + 3399.0, + 3021.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/dmh.robocode.robot.YellowBird_0.12.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "dmh.robocode.robot.YellowBird 0.12", + "division": "roborumble", + "jar": "dmh.robocode.robot.YellowBird_0.12.jar", + "jar_sha256": "41fab07383360886c23d1411f00a374112134bc6759df99481c3870efcdfd166", + "key": "roborumble/dmh.robocode.robot.YellowBird_0.12.jar", + "kind": "robot" + }, + "latest_observation": "2b6f33428c15386e", + "observations": [ + { + "classic": { + "elapsed": 2.7, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 3539.0, + "scores": [ + 1917.0, + 1622.0 + ], + "selected": "dmh.robocode.robot.YellowBird 0.12" + }, + "completed_at": "2026-09-11T21:09:41Z", + "confirmation": null, + "delta_pct": -16.2, + "id": "2b6f33428c15386e", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "7c7e232a37beaac0f3aa1c7760c0a66ab41480b3", + "official_parameters": true, + "tank_royale_commit": "a553d8069e3f67e8711f0a3e976c339f389faec8", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "dmh.robocode.robot.YellowBird 0.12", + "division": "roborumble", + "jar": "dmh.robocode.robot.YellowBird_0.12.jar", + "jar_sha256": "41fab07383360886c23d1411f00a374112134bc6759df99481c3870efcdfd166", + "key": "roborumble/dmh.robocode.robot.YellowBird_0.12.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 14.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 2966.0, + "scores": [ + 1594.0, + 1372.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/dmp.micro.Aurora_1.41.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "dmp.micro.Aurora 1.41", + "division": "roborumble", + "jar": "dmp.micro.Aurora_1.41.jar", + "jar_sha256": "0550ff35cc6fd581a7469d3378ccf17ae5f3fb00888c56858ed3b54f515366e9", + "key": "roborumble/dmp.micro.Aurora_1.41.jar", + "kind": "robot" + }, + "latest_observation": "05310022c6d6c60c", + "observations": [ + { + "classic": { + "elapsed": 2.7, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 4331.0, + "scores": [ + 2149.0, + 2182.0 + ], + "selected": "dmp.micro.Aurora 1.41" + }, + "completed_at": "2026-09-11T21:10:11Z", + "confirmation": null, + "delta_pct": -37.1, + "id": "05310022c6d6c60c", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "7c7e232a37beaac0f3aa1c7760c0a66ab41480b3", + "official_parameters": true, + "tank_royale_commit": "a553d8069e3f67e8711f0a3e976c339f389faec8", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "dmp.micro.Aurora 1.41", + "division": "roborumble", + "jar": "dmp.micro.Aurora_1.41.jar", + "jar_sha256": "0550ff35cc6fd581a7469d3378ccf17ae5f3fb00888c56858ed3b54f515366e9", + "key": "roborumble/dmp.micro.Aurora_1.41.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (score)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 26.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 2723.0, + "scores": [ + 1549.0, + 1174.0 + ], + "skipped": null + } + } + ], + "status": "score-review" + }, + "roborumble/dmp.nano.Eve_3.41.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "dmp.nano.Eve 3.41", + "division": "roborumble", + "jar": "dmp.nano.Eve_3.41.jar", + "jar_sha256": "edd8e3e4a88e6abb36bba0d2241c3b7d03dda39619f4f9264e4b4757f1eb2da9", + "key": "roborumble/dmp.nano.Eve_3.41.jar", + "kind": "robot" + }, + "latest_observation": "3931602ad25b6a06", + "observations": [ + { + "classic": { + "elapsed": 5.2, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 3596.0, + "scores": [ + 1980.0, + 1616.0 + ], + "selected": "dmp.nano.Eve 3.41" + }, + "completed_at": "2026-09-11T21:10:34Z", + "confirmation": null, + "delta_pct": -48.4, + "id": "3931602ad25b6a06", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "7c7e232a37beaac0f3aa1c7760c0a66ab41480b3", + "official_parameters": true, + "tank_royale_commit": "a553d8069e3f67e8711f0a3e976c339f389faec8", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "dmp.nano.Eve 3.41", + "division": "roborumble", + "jar": "dmp.nano.Eve_3.41.jar", + "jar_sha256": "edd8e3e4a88e6abb36bba0d2241c3b7d03dda39619f4f9264e4b4757f1eb2da9", + "key": "roborumble/dmp.nano.Eve_3.41.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (score)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 18.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 1857.0, + "scores": [ + 981.0, + 876.0 + ], + "skipped": null + } + } + ], + "status": "score-review" + }, + "roborumble/doka.KillerRabbit_1.0.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "doka.KillerRabbit 1.0", + "division": "roborumble", + "jar": "doka.KillerRabbit_1.0.jar", + "jar_sha256": "30f3ea22092d36678d5683ebcb2f1651ba77265acb3ccb7f2ba7355b20315de7", + "key": "roborumble/doka.KillerRabbit_1.0.jar", + "kind": "robot" + }, + "latest_observation": "cf5897bf12f1cb30", + "observations": [ + { + "classic": { + "elapsed": 2.4, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5282.0, + "scores": [ + 2473.0, + 2809.0 + ], + "selected": "doka.KillerRabbit 1.0" + }, + "completed_at": "2026-09-11T21:11:03Z", + "confirmation": null, + "delta_pct": -19.4, + "id": "cf5897bf12f1cb30", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "7c7e232a37beaac0f3aa1c7760c0a66ab41480b3", + "official_parameters": true, + "tank_royale_commit": "a553d8069e3f67e8711f0a3e976c339f389faec8", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "doka.KillerRabbit 1.0", + "division": "roborumble", + "jar": "doka.KillerRabbit_1.0.jar", + "jar_sha256": "30f3ea22092d36678d5683ebcb2f1651ba77265acb3ccb7f2ba7355b20315de7", + "key": "roborumble/doka.KillerRabbit_1.0.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 26.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 4255.0, + "scores": [ + 2568.0, + 1687.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/doka.ShinigamiKNN_1.0.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "doka.ShinigamiKNN 1.0", + "division": "roborumble", + "jar": "doka.ShinigamiKNN_1.0.jar", + "jar_sha256": "7ce1f15f0a454f7f0a29dffe867b728d1ebc56e98b4a9e629f31237a93b1695e", + "key": "roborumble/doka.ShinigamiKNN_1.0.jar", + "kind": "robot" + }, + "latest_observation": "234f9c8e91875812", + "observations": [ + { + "classic": { + "elapsed": 7.7, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 6040.0, + "scores": [ + 2896.0, + 3144.0 + ], + "selected": "doka.ShinigamiKNN 1.0" + }, + "completed_at": "2026-09-11T21:11:46Z", + "confirmation": null, + "delta_pct": null, + "id": "234f9c8e91875812", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "7c7e232a37beaac0f3aa1c7760c0a66ab41480b3", + "official_parameters": true, + "tank_royale_commit": "a553d8069e3f67e8711f0a3e976c339f389faec8", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "doka.ShinigamiKNN 1.0", + "division": "roborumble", + "jar": "doka.ShinigamiKNN_1.0.jar", + "jar_sha256": "7ce1f15f0a454f7f0a29dffe867b728d1ebc56e98b4a9e629f31237a93b1695e", + "key": "roborumble/doka.ShinigamiKNN_1.0.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (outcome)", + "tank_royale": { + "bridge_only_signatures": [ + [ + "java.lang.ArrayIndexOutOfBoundsException", + "doka.ShinigamiKNN.onScannedRobot" + ] + ], + "elapsed": 8.1, + "error_count": 2, + "error_signatures": [ + { + "exception": "java.lang.ArrayIndexOutOfBoundsException", + "origin": "doka.ShinigamiKNN.onScannedRobot" + } + ], + "errors": [ + "HARNESS: worker produced no result (exit code -1)", + "java.lang.ArrayIndexOutOfBoundsException: Index 32 out of bounds for length 32" + ], + "has_log": true, + "ok": false, + "score": null, + "scores": [], + "skipped": null + } + } + ], + "status": "DISCREPANCY (outcome)" + }, + "roborumble/doka.Shinigami_2.2.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "doka.Shinigami 2.2", + "division": "roborumble", + "jar": "doka.Shinigami_2.2.jar", + "jar_sha256": "eb1e1a99c28b4d3a49b736a62eafba5bc90d4c9c10cd0dc0a4462482ed58b427", + "key": "roborumble/doka.Shinigami_2.2.jar", + "kind": "robot" + }, + "latest_observation": "4a188800060cdb57", + "observations": [ + { + "classic": { + "elapsed": 2.5, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 6431.0, + "scores": [ + 3143.0, + 3288.0 + ], + "selected": "doka.Shinigami 2.2" + }, + "completed_at": "2026-09-11T21:11:30Z", + "confirmation": null, + "delta_pct": -12.4, + "id": "4a188800060cdb57", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "7c7e232a37beaac0f3aa1c7760c0a66ab41480b3", + "official_parameters": true, + "tank_royale_commit": "a553d8069e3f67e8711f0a3e976c339f389faec8", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "doka.Shinigami 2.2", + "division": "roborumble", + "jar": "doka.Shinigami_2.2.jar", + "jar_sha256": "eb1e1a99c28b4d3a49b736a62eafba5bc90d4c9c10cd0dc0a4462482ed58b427", + "key": "roborumble/doka.Shinigami_2.2.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 24.1, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5632.0, + "scores": [ + 2958.0, + 2674.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/doka.Test_1.0.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "doka.Test 1.0", + "division": "roborumble", + "jar": "doka.Test_1.0.jar", + "jar_sha256": "48b05ca91dbe29c317530eceacfe6d86bdcff7db5b6b0d2a379a5c66a7c149c9", + "key": "roborumble/doka.Test_1.0.jar", + "kind": "robot" + }, + "latest_observation": "a5b782b719256b2f", + "observations": [ + { + "classic": { + "elapsed": 2.5, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 6325.0, + "scores": [ + 2947.0, + 3378.0 + ], + "selected": "doka.Test 1.0" + }, + "completed_at": "2026-09-11T21:12:11Z", + "confirmation": null, + "delta_pct": -11.8, + "id": "a5b782b719256b2f", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "7c7e232a37beaac0f3aa1c7760c0a66ab41480b3", + "official_parameters": true, + "tank_royale_commit": "a553d8069e3f67e8711f0a3e976c339f389faec8", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "doka.Test 1.0", + "division": "roborumble", + "jar": "doka.Test_1.0.jar", + "jar_sha256": "48b05ca91dbe29c317530eceacfe6d86bdcff7db5b6b0d2a379a5c66a7c149c9", + "key": "roborumble/doka.Test_1.0.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 22.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5580.0, + "scores": [ + 2824.0, + 2756.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/donjezza.Jezza_1.0.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "donjezza.Jezza 1.0", + "division": "roborumble", + "jar": "donjezza.Jezza_1.0.jar", + "jar_sha256": "1188605236143d82517db214ae55e4881181a3c88245d6f498dfd9a1f5fd9de5", + "key": "roborumble/donjezza.Jezza_1.0.jar", + "kind": "robot" + }, + "latest_observation": "ea54e870cda66d48", + "observations": [ + { + "classic": { + "elapsed": 3.5, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 8082.0, + "scores": [ + 4099.0, + 3983.0 + ], + "selected": "donjezza.Jezza 1.0" + }, + "completed_at": "2026-09-11T21:12:44Z", + "confirmation": null, + "delta_pct": -26.3, + "id": "ea54e870cda66d48", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "7c7e232a37beaac0f3aa1c7760c0a66ab41480b3", + "official_parameters": true, + "tank_royale_commit": "a553d8069e3f67e8711f0a3e976c339f389faec8", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "donjezza.Jezza 1.0", + "division": "roborumble", + "jar": "donjezza.Jezza_1.0.jar", + "jar_sha256": "1188605236143d82517db214ae55e4881181a3c88245d6f498dfd9a1f5fd9de5", + "key": "roborumble/donjezza.Jezza_1.0.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (score)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 29.2, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5956.0, + "scores": [ + 3489.0, + 2467.0 + ], + "skipped": null + } + } + ], + "status": "score-review" + }, + "roborumble/donjezza.Muncho_1.0.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "donjezza.Muncho 1.0", + "division": "roborumble", + "jar": "donjezza.Muncho_1.0.jar", + "jar_sha256": "ca1863e988017d98a771812f983352f9b22daf33a195301f05d410b2fa26673d", + "key": "roborumble/donjezza.Muncho_1.0.jar", + "kind": "robot" + }, + "latest_observation": "5621bc7c9b63b9bc", + "observations": [ + { + "classic": { + "elapsed": 3.2, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 6734.0, + "scores": [ + 3511.0, + 3223.0 + ], + "selected": "donjezza.Muncho 1.0" + }, + "completed_at": "2026-09-11T21:13:13Z", + "confirmation": null, + "delta_pct": -28.0, + "id": "5621bc7c9b63b9bc", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "7c7e232a37beaac0f3aa1c7760c0a66ab41480b3", + "official_parameters": true, + "tank_royale_commit": "a553d8069e3f67e8711f0a3e976c339f389faec8", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "donjezza.Muncho 1.0", + "division": "roborumble", + "jar": "donjezza.Muncho_1.0.jar", + "jar_sha256": "ca1863e988017d98a771812f983352f9b22daf33a195301f05d410b2fa26673d", + "key": "roborumble/donjezza.Muncho_1.0.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (score)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 26.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 4848.0, + "scores": [ + 2685.0, + 2163.0 + ], + "skipped": null + } + } + ], + "status": "score-review" + }, + "roborumble/dragonbyte.Neutrino_4.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "dragonbyte.Neutrino 4", + "division": "roborumble", + "jar": "dragonbyte.Neutrino_4.jar", + "jar_sha256": "c7c7c279979129da96e848c140b138ace728ccfdb96a5de7d90ed0f1d6e0a65e", + "key": "roborumble/dragonbyte.Neutrino_4.jar", + "kind": "robot" + }, + "latest_observation": "921a316d393ed969", + "observations": [ + { + "classic": { + "elapsed": 14.6, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 1515.0, + "scores": [ + 440.0, + 1075.0 + ], + "selected": "dragonbyte.Neutrino 4" + }, + "completed_at": "2026-09-11T21:15:06Z", + "confirmation": null, + "delta_pct": 46.5, + "id": "921a316d393ed969", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "7c7e232a37beaac0f3aa1c7760c0a66ab41480b3", + "official_parameters": true, + "tank_royale_commit": "a553d8069e3f67e8711f0a3e976c339f389faec8", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "dragonbyte.Neutrino 4", + "division": "roborumble", + "jar": "dragonbyte.Neutrino_4.jar", + "jar_sha256": "c7c7c279979129da96e848c140b138ace728ccfdb96a5de7d90ed0f1d6e0a65e", + "key": "roborumble/dragonbyte.Neutrino_4.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (score)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 98.1, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 2219.0, + "scores": [ + 1234.0, + 985.0 + ], + "skipped": null + } + } + ], + "status": "score-review" + }, + "roborumble/drd.Dreadknoght_0.9.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "drd.Dreadknoght 0.9", + "division": "roborumble", + "jar": "drd.Dreadknoght_0.9.jar", + "jar_sha256": "46eb8b94e33e01b49afac7f46f2ba2e7acb1a7bd5aebaa3cdd73c9151c657348", + "key": "roborumble/drd.Dreadknoght_0.9.jar", + "kind": "robot" + }, + "latest_observation": "fd5b89183aea86e8", + "observations": [ + { + "classic": { + "elapsed": 3.6, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 13916.0, + "scores": [ + 6697.0, + 7219.0 + ], + "selected": "drd.Dreadknoght 0.9" + }, + "completed_at": "2026-09-11T21:16:03Z", + "confirmation": null, + "delta_pct": -10.3, + "id": "fd5b89183aea86e8", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "7e4b06b", + "official_parameters": true, + "tank_royale_commit": "a553d8069e3f67e8711f0a3e976c339f389faec8", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "drd.Dreadknoght 0.9", + "division": "roborumble", + "jar": "drd.Dreadknoght_0.9.jar", + "jar_sha256": "46eb8b94e33e01b49afac7f46f2ba2e7acb1a7bd5aebaa3cdd73c9151c657348", + "key": "roborumble/drd.Dreadknoght_0.9.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 38.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 12480.0, + "scores": [ + 6291.0, + 6189.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/drm.CobraBora_1.12.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "drm.CobraBora 1.12", + "division": "roborumble", + "jar": "drm.CobraBora_1.12.jar", + "jar_sha256": "dcb1af76fd7509e2eeef13fb80a8b45a6184cd47c025315df67e000d37668b1e", + "key": "roborumble/drm.CobraBora_1.12.jar", + "kind": "robot" + }, + "latest_observation": "54f1d01d2403ba18", + "observations": [ + { + "classic": { + "elapsed": 5.4, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 6155.0, + "scores": [ + 3625.0, + 2530.0 + ], + "selected": "drm.CobraBora 1.12" + }, + "completed_at": "2026-09-11T21:16:22Z", + "confirmation": null, + "delta_pct": 37.6, + "id": "54f1d01d2403ba18", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "7e4b06b", + "official_parameters": true, + "tank_royale_commit": "a553d8069e3f67e8711f0a3e976c339f389faec8", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "drm.CobraBora 1.12", + "division": "roborumble", + "jar": "drm.CobraBora_1.12.jar", + "jar_sha256": "dcb1af76fd7509e2eeef13fb80a8b45a6184cd47c025315df67e000d37668b1e", + "key": "roborumble/drm.CobraBora_1.12.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (score)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 14.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 8467.0, + "scores": [ + 4416.0, + 4051.0 + ], + "skipped": null + } + } + ], + "status": "score-review" + }, + "roborumble/drm.Magazine_0.39.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "drm.Magazine 0.39", + "division": "roborumble", + "jar": "drm.Magazine_0.39.jar", + "jar_sha256": "099e372c6ef6f3d7d4fe34ea956a0476bccfcd75acd78d83a3603788841a0b3c", + "key": "roborumble/drm.Magazine_0.39.jar", + "kind": "robot" + }, + "latest_observation": "e8b005bbf41df0df", + "observations": [ + { + "classic": { + "elapsed": 3.7, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5958.0, + "scores": [ + 2763.0, + 3195.0 + ], + "selected": "drm.Magazine 0.39" + }, + "completed_at": "2026-09-11T21:16:40Z", + "confirmation": null, + "delta_pct": 25.3, + "id": "e8b005bbf41df0df", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "7e4b06b", + "official_parameters": true, + "tank_royale_commit": "a553d8069e3f67e8711f0a3e976c339f389faec8", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "drm.Magazine 0.39", + "division": "roborumble", + "jar": "drm.Magazine_0.39.jar", + "jar_sha256": "099e372c6ef6f3d7d4fe34ea956a0476bccfcd75acd78d83a3603788841a0b3c", + "key": "roborumble/drm.Magazine_0.39.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (score)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 14.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 7464.0, + "scores": [ + 3794.0, + 3670.0 + ], + "skipped": null + } + } + ], + "status": "score-review" + }, + "roborumble/ds.OoV4_0.3b.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "ds.OoV4 0.3b", + "division": "roborumble", + "jar": "ds.OoV4_0.3b.jar", + "jar_sha256": "37d01e0d0527cc972c042370b1f6bf482dca677d2cc72e1ee8abf524e2315833", + "key": "roborumble/ds.OoV4_0.3b.jar", + "kind": "robot" + }, + "latest_observation": "65233acaa3f49f22", + "observations": [ + { + "classic": { + "elapsed": 5.4, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5655.0, + "scores": [ + 3131.0, + 2524.0 + ], + "selected": "ds.OoV4 0.3b" + }, + "completed_at": "2026-09-12T10:54:28Z", + "confirmation": null, + "delta_pct": null, + "id": "65233acaa3f49f22", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "94fdbe31e2b9c6d6a022c43becbd0bd861f86c19", + "official_parameters": true, + "tank_royale_commit": "a553d8069e3f67e8711f0a3e976c339f389faec8", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "ds.OoV4 0.3b", + "division": "roborumble", + "jar": "ds.OoV4_0.3b.jar", + "jar_sha256": "37d01e0d0527cc972c042370b1f6bf482dca677d2cc72e1ee8abf524e2315833", + "key": "roborumble/ds.OoV4_0.3b.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (outcome)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 34.0, + "error_count": 1, + "error_signatures": [ + { + "exception": "dev.robocode.tankroyale.runner.BattleException", + "origin": "TrBattleWorker.runBattle" + } + ], + "errors": [ + "FATAL: dev.robocode.tankroyale.runner.BattleException: Bot connect timeout (30000ms): connected 0 of 2. Pending: [OoV4 0.3b (s\ufffdbastien D\ufffdbia) (\u00d72)]" + ], + "has_log": true, + "ok": false, + "score": null, + "scores": [], + "skipped": null + } + } + ], + "status": "DISCREPANCY (outcome)" + }, + "roborumble/ds.Versatile_RB1.0.1.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "ds.Versatile RB1.0.1", + "division": "roborumble", + "jar": "ds.Versatile_RB1.0.1.jar", + "jar_sha256": "756b8734cc934fc2c3107a9ad6d7211f40b9a16a851c5242bd1b93ee4d957cd4", + "key": "roborumble/ds.Versatile_RB1.0.1.jar", + "kind": "robot" + }, + "latest_observation": "e717799e2d1d178c", + "observations": [ + { + "classic": { + "elapsed": 8.6, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5170.0, + "scores": [ + 3068.0, + 2102.0 + ], + "selected": "ds.Versatile RB1.0.1" + }, + "completed_at": "2026-09-12T10:55:11Z", + "confirmation": null, + "delta_pct": null, + "id": "e717799e2d1d178c", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "94fdbe31e2b9c6d6a022c43becbd0bd861f86c19", + "official_parameters": true, + "tank_royale_commit": "a553d8069e3f67e8711f0a3e976c339f389faec8", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "ds.Versatile RB1.0.1", + "division": "roborumble", + "jar": "ds.Versatile_RB1.0.1.jar", + "jar_sha256": "756b8734cc934fc2c3107a9ad6d7211f40b9a16a851c5242bd1b93ee4d957cd4", + "key": "roborumble/ds.Versatile_RB1.0.1.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (outcome)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 34.0, + "error_count": 1, + "error_signatures": [ + { + "exception": "dev.robocode.tankroyale.runner.BattleException", + "origin": "TrBattleWorker.runBattle" + } + ], + "errors": [ + "FATAL: dev.robocode.tankroyale.runner.BattleException: Bot connect timeout (30000ms): connected 0 of 2. Pending: [Versatile RB1.0.1 (S\ufffdbastien D\ufffdbia) (\u00d72)]" + ], + "has_log": true, + "ok": false, + "score": null, + "scores": [], + "skipped": null + } + } + ], + "status": "DISCREPANCY (outcome)" + }, + "roborumble/dsekercioglu.mega.Raven_3.56j8.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "dsekercioglu.mega.Raven 3.56j8", + "division": "roborumble", + "jar": "dsekercioglu.mega.Raven_3.56j8.jar", + "jar_sha256": "823990ae2505ca398780fc800e2262a3188360f8983d526c4dbb4ad5bb749267", + "key": "roborumble/dsekercioglu.mega.Raven_3.56j8.jar", + "kind": "robot" + }, + "latest_observation": "a90d58c1d2d60969", + "observations": [ + { + "classic": { + "elapsed": 7.8, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 4706.0, + "scores": [ + 2613.0, + 2093.0 + ], + "selected": "dsekercioglu.mega.Raven 3.56j8" + }, + "completed_at": "2026-09-12T10:55:51Z", + "confirmation": null, + "delta_pct": -8.8, + "id": "a90d58c1d2d60969", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "94fdbe31e2b9c6d6a022c43becbd0bd861f86c19", + "official_parameters": true, + "tank_royale_commit": "a553d8069e3f67e8711f0a3e976c339f389faec8", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "dsekercioglu.mega.Raven 3.56j8", + "division": "roborumble", + "jar": "dsekercioglu.mega.Raven_3.56j8.jar", + "jar_sha256": "823990ae2505ca398780fc800e2262a3188360f8983d526c4dbb4ad5bb749267", + "key": "roborumble/dsekercioglu.mega.Raven_3.56j8.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 32.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 4292.0, + "scores": [ + 2205.0, + 2087.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/dsekercioglu.mega.WhiteFang_2.8.1.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "dsekercioglu.mega.WhiteFang 2.8.1", + "division": "roborumble", + "jar": "dsekercioglu.mega.WhiteFang_2.8.1.jar", + "jar_sha256": "e39500e824d3b350ca5e7be4722697a576764fc6076ba399347fcc827438e7f1", + "key": "roborumble/dsekercioglu.mega.WhiteFang_2.8.1.jar", + "kind": "robot" + }, + "latest_observation": "4d83ffe42a94379f", + "observations": [ + { + "classic": { + "elapsed": 7.2, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 4626.0, + "scores": [ + 2608.0, + 2018.0 + ], + "selected": "dsekercioglu.mega.WhiteFang 2.8.1" + }, + "completed_at": "2026-09-12T10:56:37Z", + "confirmation": null, + "delta_pct": -100.0, + "id": "4d83ffe42a94379f", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "94fdbe31e2b9c6d6a022c43becbd0bd861f86c19", + "official_parameters": true, + "tank_royale_commit": "a553d8069e3f67e8711f0a3e976c339f389faec8", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "dsekercioglu.mega.WhiteFang 2.8.1", + "division": "roborumble", + "jar": "dsekercioglu.mega.WhiteFang_2.8.1.jar", + "jar_sha256": "e39500e824d3b350ca5e7be4722697a576764fc6076ba399347fcc827438e7f1", + "key": "roborumble/dsekercioglu.mega.WhiteFang_2.8.1.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (score)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 38.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 0.0, + "scores": [ + 0.0, + 0.0 + ], + "skipped": null + } + } + ], + "status": "score-review" + }, + "roborumble/dsekercioglu.mini.Partial_0.1.3.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "dsekercioglu.mini.Partial 0.1.3", + "division": "roborumble", + "jar": "dsekercioglu.mini.Partial_0.1.3.jar", + "jar_sha256": "e9375a73c9ba033fa3478342dcfbe65fc0950fe581eb0281a27afec18f5a7bc2", + "key": "roborumble/dsekercioglu.mini.Partial_0.1.3.jar", + "kind": "robot" + }, + "latest_observation": "5984357cffc8ce26", + "observations": [ + { + "classic": { + "elapsed": 4.5, + "error_count": 86, + "error_signatures": [ + { + "exception": "java.lang.NullPointerException", + "origin": "dsekercioglu.mini.Partial.logHit" + } + ], + "errors": [ + "SYSTEM: java.lang.NullPointerException occurred on robocode.HitByBulletEvent", + "java.lang.NullPointerException: Cannot read field \"data\" because \"w\" is null", + "SYSTEM: java.lang.NullPointerException occurred on robocode.HitByBulletEvent", + "java.lang.NullPointerException: Cannot read field \"data\" because \"w\" is null", + "SYSTEM: java.lang.NullPointerException occurred on robocode.HitByBulletEvent", + "java.lang.NullPointerException: Cannot read field \"data\" because \"w\" is null", + "SYSTEM: java.lang.NullPointerException occurred on robocode.HitByBulletEvent", + "java.lang.NullPointerException: Cannot read field \"data\" because \"w\" is null", + "SYSTEM: java.lang.NullPointerException occurred on robocode.HitByBulletEvent", + "java.lang.NullPointerException: Cannot read field \"data\" because \"w\" is null", + "SYSTEM: java.lang.NullPointerException occurred on robocode.HitByBulletEvent", + "java.lang.NullPointerException: Cannot read field \"data\" because \"w\" is null", + "SYSTEM: java.lang.NullPointerException occurred on robocode.HitByBulletEvent", + "java.lang.NullPointerException: Cannot read field \"data\" because \"w\" is null", + "SYSTEM: java.lang.NullPointerException occurred on robocode.HitByBulletEvent", + "java.lang.NullPointerException: Cannot read field \"data\" because \"w\" is null", + "SYSTEM: java.lang.NullPointerException occurred on robocode.HitByBulletEvent", + "java.lang.NullPointerException: Cannot read field \"data\" because \"w\" is null", + "SYSTEM: java.lang.NullPointerException occurred on robocode.HitByBulletEvent", + "java.lang.NullPointerException: Cannot read field \"data\" because \"w\" is null", + "SYSTEM: java.lang.NullPointerException occurred on robocode.HitByBulletEvent", + "java.lang.NullPointerException: Cannot read field \"data\" because \"w\" is null", + "SYSTEM: java.lang.NullPointerException occurred on robocode.HitByBulletEvent", + "java.lang.NullPointerException: Cannot read field \"data\" because \"w\" is null", + "SYSTEM: java.lang.NullPointerException occurred on robocode.HitByBulletEvent", + "java.lang.NullPointerException: Cannot read field \"data\" because \"w\" is null", + "SYSTEM: java.lang.NullPointerException occurred on robocode.HitByBulletEvent", + "java.lang.NullPointerException: Cannot read field \"data\" because \"w\" is null", + "SYSTEM: java.lang.NullPointerException occurred on robocode.HitByBulletEvent", + "java.lang.NullPointerException: Cannot read field \"data\" because \"w\" is null", + "SYSTEM: java.lang.NullPointerException occurred on robocode.HitByBulletEvent", + "java.lang.NullPointerException: Cannot read field \"data\" because \"w\" is null", + "SYSTEM: java.lang.NullPointerException occurred on robocode.HitByBulletEvent", + "java.lang.NullPointerException: Cannot read field \"data\" because \"w\" is null", + "SYSTEM: java.lang.NullPointerException occurred on robocode.HitByBulletEvent", + "java.lang.NullPointerException: Cannot read field \"data\" because \"w\" is null", + "SYSTEM: java.lang.NullPointerException occurred on robocode.HitByBulletEvent", + "java.lang.NullPointerException: Cannot read field \"data\" because \"w\" is null", + "SYSTEM: java.lang.NullPointerException occurred on robocode.HitByBulletEvent", + "java.lang.NullPointerException: Cannot read field \"data\" because \"w\" is null", + "SYSTEM: java.lang.NullPointerException occurred on robocode.HitByBulletEvent", + "java.lang.NullPointerException: Cannot read field \"data\" because \"w\" is null", + "SYSTEM: java.lang.NullPointerException occurred on robocode.HitByBulletEvent", + "java.lang.NullPointerException: Cannot read field \"data\" because \"w\" is null", + "SYSTEM: java.lang.NullPointerException occurred on robocode.HitByBulletEvent", + "java.lang.NullPointerException: Cannot read field \"data\" because \"w\" is null", + "SYSTEM: java.lang.NullPointerException occurred on robocode.HitByBulletEvent", + "java.lang.NullPointerException: Cannot read field \"data\" because \"w\" is null", + "SYSTEM: java.lang.NullPointerException occurred on robocode.HitByBulletEvent", + "java.lang.NullPointerException: Cannot read field \"data\" because \"w\" is null", + "SYSTEM: java.lang.NullPointerException occurred on robocode.HitByBulletEvent", + "java.lang.NullPointerException: Cannot read field \"data\" because \"w\" is null", + "SYSTEM: java.lang.NullPointerException occurred on robocode.HitByBulletEvent", + "java.lang.NullPointerException: Cannot read field \"data\" because \"w\" is null", + "SYSTEM: java.lang.NullPointerException occurred on robocode.HitByBulletEvent", + "java.lang.NullPointerException: Cannot read field \"data\" because \"w\" is null", + "SYSTEM: java.lang.NullPointerException occurred on robocode.HitByBulletEvent", + "java.lang.NullPointerException: Cannot read field \"data\" because \"w\" is null", + "SYSTEM: java.lang.NullPointerException occurred on robocode.HitByBulletEvent", + "java.lang.NullPointerException: Cannot read field \"data\" because \"w\" is null", + "SYSTEM: java.lang.NullPointerException occurred on robocode.HitByBulletEvent", + "java.lang.NullPointerException: Cannot read field \"data\" because \"w\" is null", + "SYSTEM: java.lang.NullPointerException occurred on robocode.HitByBulletEvent", + "java.lang.NullPointerException: Cannot read field \"data\" because \"w\" is null", + "SYSTEM: java.lang.NullPointerException occurred on robocode.HitByBulletEvent", + "java.lang.NullPointerException: Cannot read field \"data\" because \"w\" is null", + "SYSTEM: java.lang.NullPointerException occurred on robocode.HitByBulletEvent", + "java.lang.NullPointerException: Cannot read field \"data\" because \"w\" is null", + "SYSTEM: java.lang.NullPointerException occurred on robocode.HitByBulletEvent", + "java.lang.NullPointerException: Cannot read field \"data\" because \"w\" is null", + "SYSTEM: java.lang.NullPointerException occurred on robocode.HitByBulletEvent", + "java.lang.NullPointerException: Cannot read field \"data\" because \"w\" is null", + "SYSTEM: java.lang.NullPointerException occurred on robocode.HitByBulletEvent", + "java.lang.NullPointerException: Cannot read field \"data\" because \"w\" is null", + "SYSTEM: java.lang.NullPointerException occurred on robocode.HitByBulletEvent", + "java.lang.NullPointerException: Cannot read field \"data\" because \"w\" is null", + "SYSTEM: java.lang.NullPointerException occurred on robocode.HitByBulletEvent", + "java.lang.NullPointerException: Cannot read field \"data\" because \"w\" is null", + "SYSTEM: java.lang.NullPointerException occurred on robocode.HitByBulletEvent", + "java.lang.NullPointerException: Cannot read field \"data\" because \"w\" is null", + "SYSTEM: java.lang.NullPointerException occurred on robocode.HitByBulletEvent", + "java.lang.NullPointerException: Cannot read field \"data\" because \"w\" is null", + "SYSTEM: java.lang.NullPointerException occurred on robocode.HitByBulletEvent", + "java.lang.NullPointerException: Cannot read field \"data\" because \"w\" is null", + "SYSTEM: java.lang.NullPointerException occurred on robocode.HitByBulletEvent", + "java.lang.NullPointerException: Cannot read field \"data\" because \"w\" is null" + ], + "has_log": true, + "ok": true, + "score": 5706.0, + "scores": [ + 3032.0, + 2674.0 + ], + "selected": "dsekercioglu.mini.Partial 0.1.3" + }, + "completed_at": "2026-09-12T10:57:04Z", + "confirmation": null, + "delta_pct": -3.2, + "id": "5984357cffc8ce26", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "94fdbe31e2b9c6d6a022c43becbd0bd861f86c19", + "official_parameters": true, + "tank_royale_commit": "a553d8069e3f67e8711f0a3e976c339f389faec8", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "dsekercioglu.mini.Partial 0.1.3", + "division": "roborumble", + "jar": "dsekercioglu.mini.Partial_0.1.3.jar", + "jar_sha256": "e9375a73c9ba033fa3478342dcfbe65fc0950fe581eb0281a27afec18f5a7bc2", + "key": "roborumble/dsekercioglu.mini.Partial_0.1.3.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 22.1, + "error_count": 221, + "error_signatures": [ + { + "exception": "java.lang.NullPointerException", + "origin": "dsekercioglu.mini.Partial.logHit" + } + ], + "errors": [ + "java.lang.NullPointerException: Cannot read field \"data\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"data\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"data\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"data\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"data\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"data\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"data\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"data\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"data\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"data\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"data\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"data\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"data\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"data\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"data\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"data\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"data\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"data\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"data\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"data\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"data\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"data\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"data\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"data\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"data\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"data\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"data\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"data\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"data\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"data\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"data\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"data\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"data\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"data\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"data\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"data\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"data\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"data\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"data\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"data\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"data\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"data\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"data\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"data\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"data\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"data\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"data\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"data\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"data\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"data\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"data\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"data\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"data\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"data\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"data\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"data\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"data\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"data\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"data\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"data\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"data\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"data\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"data\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"data\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"data\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"data\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"data\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"data\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"data\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"data\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"data\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"data\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"data\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"data\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"data\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"data\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"data\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"data\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"data\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"data\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"data\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"data\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"data\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"data\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"data\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"data\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"data\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"data\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"data\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"data\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"data\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"data\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"data\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"data\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"data\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"data\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"data\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"data\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"data\" because \"w\" is null", + "java.lang.NullPointerException: Cannot read field \"data\" because \"w\" is null" + ], + "has_log": true, + "ok": true, + "score": 5522.0, + "scores": [ + 2863.0, + 2659.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/dsekercioglu.shield.ColdBreath_1.0.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "dsekercioglu.shield.ColdBreath 1.0", + "division": "roborumble", + "jar": "dsekercioglu.shield.ColdBreath_1.0.jar", + "jar_sha256": "336a299174282db068cff77960bed112771207a9523659a63a070f72dce44067", + "key": "roborumble/dsekercioglu.shield.ColdBreath_1.0.jar", + "kind": "robot" + }, + "latest_observation": "854a73382e180a56", + "observations": [ + { + "classic": { + "elapsed": 16.6, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 0.0, + "scores": [ + 0.0, + 0.0 + ], + "selected": "dsekercioglu.shield.ColdBreath 1.0" + }, + "completed_at": "2026-09-12T10:58:13Z", + "confirmation": null, + "delta_pct": null, + "id": "854a73382e180a56", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "94fdbe31e2b9c6d6a022c43becbd0bd861f86c19", + "official_parameters": true, + "tank_royale_commit": "a553d8069e3f67e8711f0a3e976c339f389faec8", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "dsekercioglu.shield.ColdBreath 1.0", + "division": "roborumble", + "jar": "dsekercioglu.shield.ColdBreath_1.0.jar", + "jar_sha256": "336a299174282db068cff77960bed112771207a9523659a63a070f72dce44067", + "key": "roborumble/dsekercioglu.shield.ColdBreath_1.0.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (no score)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 52.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 0.0, + "scores": [ + 0.0, + 0.0 + ], + "skipped": null + } + } + ], + "status": "DISCREPANCY (no score)" + }, + "roborumble/dsw.StaticD_1.0.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "dsw.StaticD 1.0", + "division": "roborumble", + "jar": "dsw.StaticD_1.0.jar", + "jar_sha256": "e49aa26acf9e14e5c9f724171d5d0e6e08eb9b557dcece281bce26959a91efee", + "key": "roborumble/dsw.StaticD_1.0.jar", + "kind": "robot" + }, + "latest_observation": "cb3c6574d929e48d", + "observations": [ + { + "classic": { + "elapsed": 2.9, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 3268.0, + "scores": [ + 1611.0, + 1657.0 + ], + "selected": "dsw.StaticD 1.0" + }, + "completed_at": "2026-09-12T10:58:48Z", + "confirmation": null, + "delta_pct": 10.5, + "id": "cb3c6574d929e48d", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "94fdbe31e2b9c6d6a022c43becbd0bd861f86c19", + "official_parameters": true, + "tank_royale_commit": "a553d8069e3f67e8711f0a3e976c339f389faec8", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "dsw.StaticD 1.0", + "division": "roborumble", + "jar": "dsw.StaticD_1.0.jar", + "jar_sha256": "e49aa26acf9e14e5c9f724171d5d0e6e08eb9b557dcece281bce26959a91efee", + "key": "roborumble/dsw.StaticD_1.0.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 32.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 3610.0, + "scores": [ + 2120.0, + 1490.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/dsx724.VSAB_EP3_ATR_1.1.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "dsx724.VSAB_EP3_ATR 1.1", + "division": "roborumble", + "jar": "dsx724.VSAB_EP3_ATR_1.1.jar", + "jar_sha256": "d5ea2563e0c0d262c402448281ffd0b0eaa1f511889d080566a4ab3c8bf7fbd4", + "key": "roborumble/dsx724.VSAB_EP3_ATR_1.1.jar", + "kind": "robot" + }, + "latest_observation": "3011583494eb7f17", + "observations": [ + { + "classic": { + "elapsed": 2.9, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 7941.0, + "scores": [ + 4333.0, + 3608.0 + ], + "selected": "dsx724.VSAB_EP3_ATR 1.1" + }, + "completed_at": "2026-09-12T10:59:16Z", + "confirmation": null, + "delta_pct": -13.3, + "id": "3011583494eb7f17", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "94fdbe31e2b9c6d6a022c43becbd0bd861f86c19", + "official_parameters": true, + "tank_royale_commit": "a553d8069e3f67e8711f0a3e976c339f389faec8", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "dsx724.VSAB_EP3_ATR 1.1", + "division": "roborumble", + "jar": "dsx724.VSAB_EP3_ATR_1.1.jar", + "jar_sha256": "d5ea2563e0c0d262c402448281ffd0b0eaa1f511889d080566a4ab3c8bf7fbd4", + "key": "roborumble/dsx724.VSAB_EP3_ATR_1.1.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 24.2, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 6888.0, + "scores": [ + 3682.0, + 3206.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/dsx724.VSAB_EP3a_1.0.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "dsx724.VSAB_EP3a 1.0", + "division": "roborumble", + "jar": "dsx724.VSAB_EP3a_1.0.jar", + "jar_sha256": "4c7e37b2ad525d3c70b7a734447cb0b71aa86983d4ed810a006b2df240d4822a", + "key": "roborumble/dsx724.VSAB_EP3a_1.0.jar", + "kind": "robot" + }, + "latest_observation": "32cb33ffb5a19f76", + "observations": [ + { + "classic": { + "elapsed": 3.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5278.0, + "scores": [ + 3057.0, + 2221.0 + ], + "selected": "dsx724.VSAB_EP3a 1.0" + }, + "completed_at": "2026-09-12T10:59:47Z", + "confirmation": null, + "delta_pct": -2.0, + "id": "32cb33ffb5a19f76", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "94fdbe31e2b9c6d6a022c43becbd0bd861f86c19", + "official_parameters": true, + "tank_royale_commit": "a553d8069e3f67e8711f0a3e976c339f389faec8", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "dsx724.VSAB_EP3a 1.0", + "division": "roborumble", + "jar": "dsx724.VSAB_EP3a_1.0.jar", + "jar_sha256": "4c7e37b2ad525d3c70b7a734447cb0b71aa86983d4ed810a006b2df240d4822a", + "key": "roborumble/dsx724.VSAB_EP3a_1.0.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 28.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5173.0, + "scores": [ + 2602.0, + 2571.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/dukie.Ambassador_1.0.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "dukie.Ambassador 1.0", + "division": "roborumble", + "jar": "dukie.Ambassador_1.0.jar", + "jar_sha256": "06d957071ecdc705f058b2cb0f189bd46232022b798e29ff54a9f588912e85ff", + "key": "roborumble/dukie.Ambassador_1.0.jar", + "kind": "robot" + }, + "latest_observation": "96416db6612b9f6f", + "observations": [ + { + "classic": { + "elapsed": 2.9, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 2627.0, + "scores": [ + 1154.0, + 1473.0 + ], + "selected": "dukie.Ambassador 1.0" + }, + "completed_at": "2026-09-12T11:00:36Z", + "confirmation": null, + "delta_pct": -11.5, + "id": "96416db6612b9f6f", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "94fdbe31e2b9c6d6a022c43becbd0bd861f86c19", + "official_parameters": true, + "tank_royale_commit": "a553d8069e3f67e8711f0a3e976c339f389faec8", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "dukie.Ambassador 1.0", + "division": "roborumble", + "jar": "dukie.Ambassador_1.0.jar", + "jar_sha256": "06d957071ecdc705f058b2cb0f189bd46232022b798e29ff54a9f588912e85ff", + "key": "roborumble/dukie.Ambassador_1.0.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 24.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 2325.0, + "scores": [ + 1329.0, + 996.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/dummy.micro.HummingBird_2.14.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "dummy.micro.HummingBird 2.14", + "division": "roborumble", + "jar": "dummy.micro.HummingBird_2.14.jar", + "jar_sha256": "8a9873436b4756631a2e7723a693c7590f405078144484b22d7541cb46247fb0", + "key": "roborumble/dummy.micro.HummingBird_2.14.jar", + "kind": "robot" + }, + "latest_observation": "6a5102214fb7d514", + "observations": [ + { + "classic": { + "elapsed": 2.4, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5010.0, + "scores": [ + 2800.0, + 2210.0 + ], + "selected": "dummy.micro.HummingBird 2.14" + }, + "completed_at": "2026-09-12T11:00:54Z", + "confirmation": null, + "delta_pct": -5.7, + "id": "6a5102214fb7d514", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "94fdbe31e2b9c6d6a022c43becbd0bd861f86c19", + "official_parameters": true, + "tank_royale_commit": "a553d8069e3f67e8711f0a3e976c339f389faec8", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "dummy.micro.HummingBird 2.14", + "division": "roborumble", + "jar": "dummy.micro.HummingBird_2.14.jar", + "jar_sha256": "8a9873436b4756631a2e7723a693c7590f405078144484b22d7541cb46247fb0", + "key": "roborumble/dummy.micro.HummingBird_2.14.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 16.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 4724.0, + "scores": [ + 2463.0, + 2261.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/dummy.micro.Sparrow_2.5.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "dummy.micro.Sparrow 2.5", + "division": "roborumble", + "jar": "dummy.micro.Sparrow_2.5.jar", + "jar_sha256": "669e4c3639acba8b486dab32beb5d9da56c41ed5e899618695032b286299c4fa", + "key": "roborumble/dummy.micro.Sparrow_2.5.jar", + "kind": "robot" + }, + "latest_observation": "b33016494688992d", + "observations": [ + { + "classic": { + "elapsed": 2.4, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5693.0, + "scores": [ + 2894.0, + 2799.0 + ], + "selected": "dummy.micro.Sparrow 2.5" + }, + "completed_at": "2026-09-12T11:01:15Z", + "confirmation": null, + "delta_pct": -6.8, + "id": "b33016494688992d", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "94fdbe31e2b9c6d6a022c43becbd0bd861f86c19", + "official_parameters": true, + "tank_royale_commit": "a553d8069e3f67e8711f0a3e976c339f389faec8", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "dummy.micro.Sparrow 2.5", + "division": "roborumble", + "jar": "dummy.micro.Sparrow_2.5.jar", + "jar_sha256": "669e4c3639acba8b486dab32beb5d9da56c41ed5e899618695032b286299c4fa", + "key": "roborumble/dummy.micro.Sparrow_2.5.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 18.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5305.0, + "scores": [ + 2732.0, + 2573.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/dummy.mini.Parakeet_2.40.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "dummy.mini.Parakeet 2.40", + "division": "roborumble", + "jar": "dummy.mini.Parakeet_2.40.jar", + "jar_sha256": "8b5619f9b3ea91c26ca0ec6a9ea41890ef603bad7a4062064eb3852e9e544a68", + "key": "roborumble/dummy.mini.Parakeet_2.40.jar", + "kind": "robot" + }, + "latest_observation": "861ff6f63daa9ac5", + "observations": [ + { + "classic": { + "elapsed": 2.4, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 8855.0, + "scores": [ + 4470.0, + 4385.0 + ], + "selected": "dummy.mini.Parakeet 2.40" + }, + "completed_at": "2026-09-12T11:01:32Z", + "confirmation": null, + "delta_pct": -2.1, + "id": "861ff6f63daa9ac5", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "94fdbe31e2b9c6d6a022c43becbd0bd861f86c19", + "official_parameters": true, + "tank_royale_commit": "a553d8069e3f67e8711f0a3e976c339f389faec8", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "dummy.mini.Parakeet 2.40", + "division": "roborumble", + "jar": "dummy.mini.Parakeet_2.40.jar", + "jar_sha256": "8b5619f9b3ea91c26ca0ec6a9ea41890ef603bad7a4062064eb3852e9e544a68", + "key": "roborumble/dummy.mini.Parakeet_2.40.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 14.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 8668.0, + "scores": [ + 4675.0, + 3993.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/dvogon.GangBang_1.0.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "dvogon.GangBang 1.0", + "division": "roborumble", + "jar": "dvogon.GangBang_1.0.jar", + "jar_sha256": "a40fb98323315743723be8b3153d3fbca76a18889ca3a3a22ec70d18826e730c", + "key": "roborumble/dvogon.GangBang_1.0.jar", + "kind": "robot" + }, + "latest_observation": "8e3f284de332c1dd", + "observations": [ + { + "classic": { + "elapsed": 2.5, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5284.0, + "scores": [ + 2793.0, + 2491.0 + ], + "selected": "dvogon.GangBang 1.0" + }, + "completed_at": "2026-09-12T11:01:53Z", + "confirmation": null, + "delta_pct": 32.8, + "id": "8e3f284de332c1dd", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "94fdbe31e2b9c6d6a022c43becbd0bd861f86c19", + "official_parameters": true, + "tank_royale_commit": "a553d8069e3f67e8711f0a3e976c339f389faec8", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "dvogon.GangBang 1.0", + "division": "roborumble", + "jar": "dvogon.GangBang_1.0.jar", + "jar_sha256": "a40fb98323315743723be8b3153d3fbca76a18889ca3a3a22ec70d18826e730c", + "key": "roborumble/dvogon.GangBang_1.0.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (score)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 18.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 7018.0, + "scores": [ + 3833.0, + 3185.0 + ], + "skipped": null + } + } + ], + "status": "score-review" + }, + "roborumble/dy.LevelOne_2.0.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "dy.LevelOne 2.0", + "division": "roborumble", + "jar": "dy.LevelOne_2.0.jar", + "jar_sha256": "d19f1c93d603b99c095dfacdb57e783f81e9a4500bbc2022361a1f6ba9179e1d", + "key": "roborumble/dy.LevelOne_2.0.jar", + "kind": "robot" + }, + "latest_observation": "046a7885151acf3d", + "observations": [ + { + "classic": { + "elapsed": 2.8, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 4778.0, + "scores": [ + 1829.0, + 2949.0 + ], + "selected": "dy.LevelOne 2.0" + }, + "completed_at": "2026-09-12T11:02:20Z", + "confirmation": null, + "delta_pct": -0.4, + "id": "046a7885151acf3d", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "94fdbe31e2b9c6d6a022c43becbd0bd861f86c19", + "official_parameters": true, + "tank_royale_commit": "a553d8069e3f67e8711f0a3e976c339f389faec8", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "dy.LevelOne 2.0", + "division": "roborumble", + "jar": "dy.LevelOne_2.0.jar", + "jar_sha256": "d19f1c93d603b99c095dfacdb57e783f81e9a4500bbc2022361a1f6ba9179e1d", + "key": "roborumble/dy.LevelOne_2.0.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 24.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 4757.0, + "scores": [ + 2631.0, + 2126.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/dz.Caedo_1.4.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "dz.Caedo 1.4", + "division": "roborumble", + "jar": "dz.Caedo_1.4.jar", + "jar_sha256": "6d880698dc1127cceaae412ea2bad7f0474351687f10062defde2394f0141177", + "key": "roborumble/dz.Caedo_1.4.jar", + "kind": "robot" + }, + "latest_observation": "dd2709df3eee05f8", + "observations": [ + { + "classic": { + "elapsed": 3.5, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 6408.0, + "scores": [ + 3502.0, + 2906.0 + ], + "selected": "dz.Caedo 1.4" + }, + "completed_at": "2026-09-12T11:02:42Z", + "confirmation": null, + "delta_pct": -6.1, + "id": "dd2709df3eee05f8", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "94fdbe31e2b9c6d6a022c43becbd0bd861f86c19", + "official_parameters": true, + "tank_royale_commit": "a553d8069e3f67e8711f0a3e976c339f389faec8", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "dz.Caedo 1.4", + "division": "roborumble", + "jar": "dz.Caedo_1.4.jar", + "jar_sha256": "6d880698dc1127cceaae412ea2bad7f0474351687f10062defde2394f0141177", + "key": "roborumble/dz.Caedo_1.4.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 18.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 6020.0, + "scores": [ + 3281.0, + 2739.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/dz.GalbaMicro_0.11.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "dz.GalbaMicro 0.11", + "division": "roborumble", + "jar": "dz.GalbaMicro_0.11.jar", + "jar_sha256": "2be4f07ed407d26f20fe328d4163872c067c5211204baa6961912609d58f3c25", + "key": "roborumble/dz.GalbaMicro_0.11.jar", + "kind": "robot" + }, + "latest_observation": "9533cf29aaf81031", + "observations": [ + { + "classic": { + "elapsed": 2.5, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 6433.0, + "scores": [ + 3275.0, + 3158.0 + ], + "selected": "dz.GalbaMicro 0.11" + }, + "completed_at": "2026-09-12T11:03:05Z", + "confirmation": null, + "delta_pct": -13.3, + "id": "9533cf29aaf81031", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "94fdbe31e2b9c6d6a022c43becbd0bd861f86c19", + "official_parameters": true, + "tank_royale_commit": "a553d8069e3f67e8711f0a3e976c339f389faec8", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "dz.GalbaMicro 0.11", + "division": "roborumble", + "jar": "dz.GalbaMicro_0.11.jar", + "jar_sha256": "2be4f07ed407d26f20fe328d4163872c067c5211204baa6961912609d58f3c25", + "key": "roborumble/dz.GalbaMicro_0.11.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 20.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5576.0, + "scores": [ + 3229.0, + 2347.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/dz.GalbaMini_0.121.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "dz.GalbaMini 0.121", + "division": "roborumble", + "jar": "dz.GalbaMini_0.121.jar", + "jar_sha256": "729fdb29318135fa377b2599a85e457c170acb71864f0b122a9cddda3e1ea2b0", + "key": "roborumble/dz.GalbaMini_0.121.jar", + "kind": "robot" + }, + "latest_observation": "fe7db6890b699ea8", + "observations": [ + { + "classic": { + "elapsed": 2.5, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 6819.0, + "scores": [ + 3728.0, + 3091.0 + ], + "selected": "dz.GalbaMini 0.121" + }, + "completed_at": "2026-09-12T11:03:27Z", + "confirmation": null, + "delta_pct": -15.8, + "id": "fe7db6890b699ea8", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "94fdbe31e2b9c6d6a022c43becbd0bd861f86c19", + "official_parameters": true, + "tank_royale_commit": "a553d8069e3f67e8711f0a3e976c339f389faec8", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "dz.GalbaMini 0.121", + "division": "roborumble", + "jar": "dz.GalbaMini_0.121.jar", + "jar_sha256": "729fdb29318135fa377b2599a85e457c170acb71864f0b122a9cddda3e1ea2b0", + "key": "roborumble/dz.GalbaMini_0.121.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 20.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5743.0, + "scores": [ + 2958.0, + 2785.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/dz.MostlyHarmlessNano_2.1.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "dz.MostlyHarmlessNano 2.1", + "division": "roborumble", + "jar": "dz.MostlyHarmlessNano_2.1.jar", + "jar_sha256": "5025336025cbc205a352af92d026952d3b4d722de7229f94b654afe0c4937a02", + "key": "roborumble/dz.MostlyHarmlessNano_2.1.jar", + "kind": "robot" + }, + "latest_observation": "222b3c3860e9be2e", + "observations": [ + { + "classic": { + "elapsed": 2.5, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 4425.0, + "scores": [ + 2046.0, + 2379.0 + ], + "selected": "dz.MostlyHarmlessNano 2.1" + }, + "completed_at": "2026-09-12T11:03:50Z", + "confirmation": null, + "delta_pct": -1.2, + "id": "222b3c3860e9be2e", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "94fdbe31e2b9c6d6a022c43becbd0bd861f86c19", + "official_parameters": true, + "tank_royale_commit": "a553d8069e3f67e8711f0a3e976c339f389faec8", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "dz.MostlyHarmlessNano 2.1", + "division": "roborumble", + "jar": "dz.MostlyHarmlessNano_2.1.jar", + "jar_sha256": "5025336025cbc205a352af92d026952d3b4d722de7229f94b654afe0c4937a02", + "key": "roborumble/dz.MostlyHarmlessNano_2.1.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 20.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 4373.0, + "scores": [ + 2238.0, + 2135.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/dz.OthoMicro_0.12.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "dz.OthoMicro 0.12", + "division": "roborumble", + "jar": "dz.OthoMicro_0.12.jar", + "jar_sha256": "3dea817b3ceed12d2f852c83662493907015f2d977466ba163d13b3fc548b51a", + "key": "roborumble/dz.OthoMicro_0.12.jar", + "kind": "robot" + }, + "latest_observation": "87a618756a32d658", + "observations": [ + { + "classic": { + "elapsed": 2.6, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5061.0, + "scores": [ + 2398.0, + 2663.0 + ], + "selected": "dz.OthoMicro 0.12" + }, + "completed_at": "2026-09-12T11:04:11Z", + "confirmation": null, + "delta_pct": -10.0, + "id": "87a618756a32d658", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "94fdbe31e2b9c6d6a022c43becbd0bd861f86c19", + "official_parameters": true, + "tank_royale_commit": "a553d8069e3f67e8711f0a3e976c339f389faec8", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "dz.OthoMicro 0.12", + "division": "roborumble", + "jar": "dz.OthoMicro_0.12.jar", + "jar_sha256": "3dea817b3ceed12d2f852c83662493907015f2d977466ba163d13b3fc548b51a", + "key": "roborumble/dz.OthoMicro_0.12.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 18.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 4553.0, + "scores": [ + 2570.0, + 1983.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/dz.OthoMini_0.15.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "dz.OthoMini 0.15", + "division": "roborumble", + "jar": "dz.OthoMini_0.15.jar", + "jar_sha256": "bc7e0f272e4ffc560401606b689fe9922bd8a00dfaf4b9584a4b4b65d88dfa19", + "key": "roborumble/dz.OthoMini_0.15.jar", + "kind": "robot" + }, + "latest_observation": "1bf733ce688bea50", + "observations": [ + { + "classic": { + "elapsed": 3.1, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5918.0, + "scores": [ + 2861.0, + 3057.0 + ], + "selected": "dz.OthoMini 0.15" + }, + "completed_at": "2026-09-12T11:04:33Z", + "confirmation": null, + "delta_pct": -8.0, + "id": "1bf733ce688bea50", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "94fdbe31e2b9c6d6a022c43becbd0bd861f86c19", + "official_parameters": true, + "tank_royale_commit": "a553d8069e3f67e8711f0a3e976c339f389faec8", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "dz.OthoMini 0.15", + "division": "roborumble", + "jar": "dz.OthoMini_0.15.jar", + "jar_sha256": "bc7e0f272e4ffc560401606b689fe9922bd8a00dfaf4b9584a4b4b65d88dfa19", + "key": "roborumble/dz.OthoMini_0.15.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 18.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5447.0, + "scores": [ + 3292.0, + 2155.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/e32.Omni_0.04.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "e32.Omni 0.04", + "division": "roborumble", + "jar": "e32.Omni_0.04.jar", + "jar_sha256": "08f753a1256addbc2c54399fdfeee4e29ba61c04aba969886b38cdb842bf3afb", + "key": "roborumble/e32.Omni_0.04.jar", + "kind": "robot" + }, + "latest_observation": "93f7fce337a4cc1d", + "observations": [ + { + "classic": { + "elapsed": 5.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 4615.0, + "scores": [ + 2218.0, + 2397.0 + ], + "selected": "e32.Omni 0.04" + }, + "completed_at": "2026-09-12T11:04:42Z", + "confirmation": null, + "delta_pct": null, + "id": "93f7fce337a4cc1d", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "94fdbe31e2b9c6d6a022c43becbd0bd861f86c19", + "official_parameters": true, + "tank_royale_commit": "a553d8069e3f67e8711f0a3e976c339f389faec8", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "e32.Omni 0.04", + "division": "roborumble", + "jar": "e32.Omni_0.04.jar", + "jar_sha256": "08f753a1256addbc2c54399fdfeee4e29ba61c04aba969886b38cdb842bf3afb", + "key": "roborumble/e32.Omni_0.04.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (outcome)", + "tank_royale": { + "bridge_only_signatures": [ + [ + "java.lang.NullPointerException", + "execution.EventAdaptor.onStatus" + ], + [ + "java.lang.NullPointerException", + "execution.GravityListener.Update" + ] + ], + "elapsed": 4.2, + "error_count": 809, + "error_signatures": [ + { + "exception": "java.lang.NullPointerException", + "origin": "execution.EventAdaptor.onStatus" + } + ], + "errors": [ + "HARNESS: worker produced no result (exit code -1)", + "java.lang.NullPointerException: Cannot invoke \"sim.Bot.Set(sim.Stat, double)\" because \"self\" is null", + "java.lang.NullPointerException: Cannot invoke \"sim.Bot.Set(sim.Stat, double)\" because \"self\" is null", + "java.lang.NullPointerException: Cannot invoke \"sim.Bot.Set(sim.Stat, double)\" because \"self\" is null", + "java.lang.NullPointerException: Cannot invoke \"sim.Bot.Set(sim.Stat, double)\" because \"self\" is null", + "java.lang.NullPointerException: Cannot invoke \"sim.Bot.Set(sim.Stat, double)\" because \"self\" is null", + "java.lang.NullPointerException: Cannot invoke \"sim.Bot.Set(sim.Stat, double)\" because \"self\" is null", + "java.lang.NullPointerException: Cannot invoke \"sim.Bot.Set(sim.Stat, double)\" because \"self\" is null", + "java.lang.NullPointerException: Cannot invoke \"sim.Bot.Set(sim.Stat, double)\" because \"self\" is null", + "java.lang.NullPointerException: Cannot invoke \"sim.Bot.Set(sim.Stat, double)\" because \"self\" is null", + "java.lang.NullPointerException: Cannot invoke \"sim.Bot.Set(sim.Stat, double)\" because \"self\" is null", + "java.lang.NullPointerException: Cannot invoke \"sim.Bot.Set(sim.Stat, double)\" because \"self\" is null", + "java.lang.NullPointerException: Cannot invoke \"sim.Bot.Set(sim.Stat, double)\" because \"self\" is null", + "java.lang.NullPointerException: Cannot invoke \"sim.Bot.Set(sim.Stat, double)\" because \"self\" is null", + "java.lang.NullPointerException: Cannot invoke \"sim.Bot.Set(sim.Stat, double)\" because \"self\" is null", + "java.lang.NullPointerException: Cannot invoke \"sim.Bot.Set(sim.Stat, double)\" because \"self\" is null", + "java.lang.NullPointerException: Cannot invoke \"sim.Bot.Set(sim.Stat, double)\" because \"self\" is null", + "java.lang.NullPointerException: Cannot invoke \"sim.Bot.Set(sim.Stat, double)\" because \"self\" is null", + "java.lang.NullPointerException: Cannot invoke \"sim.Bot.Set(sim.Stat, double)\" because \"self\" is null", + "java.lang.NullPointerException: Cannot invoke \"sim.Bot.Set(sim.Stat, double)\" because \"self\" is null", + "java.lang.NullPointerException: Cannot invoke \"sim.Bot.Set(sim.Stat, double)\" because \"self\" is null", + "java.lang.NullPointerException: Cannot invoke \"sim.Bot.Set(sim.Stat, double)\" because \"self\" is null", + "java.lang.NullPointerException: Cannot invoke \"sim.Bot.Set(sim.Stat, double)\" because \"self\" is null", + "java.lang.NullPointerException: Cannot invoke \"sim.Bot.Set(sim.Stat, double)\" because \"self\" is null", + "java.lang.NullPointerException: Cannot invoke \"sim.Bot.Set(sim.Stat, double)\" because \"self\" is null", + "java.lang.NullPointerException: Cannot invoke \"sim.Bot.Set(sim.Stat, double)\" because \"self\" is null", + "java.lang.NullPointerException: Cannot invoke \"sim.Bot.Set(sim.Stat, double)\" because \"self\" is null", + "java.lang.NullPointerException: Cannot invoke \"sim.Bot.Set(sim.Stat, double)\" because \"self\" is null", + "java.lang.NullPointerException: Cannot invoke \"sim.Bot.Set(sim.Stat, double)\" because \"self\" is null", + "java.lang.NullPointerException: Cannot invoke \"sim.Bot.Set(sim.Stat, double)\" because \"self\" is null", + "java.lang.NullPointerException: Cannot invoke \"sim.Bot.Set(sim.Stat, double)\" because \"self\" is null", + "java.lang.NullPointerException: Cannot invoke \"sim.Bot.Set(sim.Stat, double)\" because \"self\" is null", + "java.lang.NullPointerException: Cannot invoke \"sim.Bot.Set(sim.Stat, double)\" because \"self\" is null", + "java.lang.NullPointerException: Cannot invoke \"sim.Bot.Set(sim.Stat, double)\" because \"self\" is null", + "java.lang.NullPointerException: Cannot invoke \"sim.Bot.Set(sim.Stat, double)\" because \"self\" is null", + "java.lang.NullPointerException: Cannot invoke \"sim.Bot.Set(sim.Stat, double)\" because \"self\" is null", + "java.lang.NullPointerException: Cannot invoke \"sim.Bot.Set(sim.Stat, double)\" because \"self\" is null", + "java.lang.NullPointerException: Cannot invoke \"sim.Bot.Set(sim.Stat, double)\" because \"self\" is null", + "java.lang.NullPointerException: Cannot invoke \"sim.Bot.Set(sim.Stat, double)\" because \"self\" is null", + "java.lang.NullPointerException: Cannot invoke \"sim.Bot.Set(sim.Stat, double)\" because \"self\" is null", + "java.lang.NullPointerException: Cannot invoke \"sim.Bot.Set(sim.Stat, double)\" because \"self\" is null", + "java.lang.NullPointerException: Cannot invoke \"sim.Bot.Set(sim.Stat, double)\" because \"self\" is null", + "java.lang.NullPointerException: Cannot invoke \"sim.Bot.Set(sim.Stat, double)\" because \"self\" is null", + "java.lang.NullPointerException: Cannot invoke \"sim.Bot.Set(sim.Stat, double)\" because \"self\" is null", + "java.lang.NullPointerException: Cannot invoke \"sim.Bot.Set(sim.Stat, double)\" because \"self\" is null", + "java.lang.NullPointerException: Cannot invoke \"sim.Bot.Set(sim.Stat, double)\" because \"self\" is null", + "java.lang.NullPointerException: Cannot invoke \"sim.Bot.Set(sim.Stat, double)\" because \"self\" is null", + "java.lang.NullPointerException: Cannot invoke \"sim.Bot.Set(sim.Stat, double)\" because \"self\" is null", + "java.lang.NullPointerException: Cannot invoke \"sim.Bot.Set(sim.Stat, double)\" because \"self\" is null", + "java.lang.NullPointerException: Cannot invoke \"sim.Bot.Set(sim.Stat, double)\" because \"self\" is null", + "java.lang.NullPointerException: Cannot invoke \"sim.Bot.Set(sim.Stat, double)\" because \"self\" is null", + "java.lang.NullPointerException: Cannot invoke \"sim.Bot.Set(sim.Stat, double)\" because \"self\" is null", + "java.lang.NullPointerException: Cannot invoke \"sim.Bot.Set(sim.Stat, double)\" because \"self\" is null", + "java.lang.NullPointerException: Cannot invoke \"sim.Bot.Set(sim.Stat, double)\" because \"self\" is null", + "java.lang.NullPointerException: Cannot invoke \"sim.Bot.Set(sim.Stat, double)\" because \"self\" is null", + "java.lang.NullPointerException: Cannot invoke \"sim.Bot.Set(sim.Stat, double)\" because \"self\" is null", + "java.lang.NullPointerException: Cannot invoke \"sim.Bot.Set(sim.Stat, double)\" because \"self\" is null", + "java.lang.NullPointerException: Cannot invoke \"sim.Bot.Set(sim.Stat, double)\" because \"self\" is null", + "java.lang.NullPointerException: Cannot invoke \"sim.Bot.Set(sim.Stat, double)\" because \"self\" is null", + "java.lang.NullPointerException: Cannot invoke \"sim.Bot.Set(sim.Stat, double)\" because \"self\" is null", + "java.lang.NullPointerException: Cannot invoke \"sim.Bot.Set(sim.Stat, double)\" because \"self\" is null", + "java.lang.NullPointerException: Cannot invoke \"sim.Bot.Set(sim.Stat, double)\" because \"self\" is null", + "java.lang.NullPointerException: Cannot invoke \"sim.Bot.Set(sim.Stat, double)\" because \"self\" is null", + "java.lang.NullPointerException: Cannot invoke \"sim.Bot.Set(sim.Stat, double)\" because \"self\" is null", + "java.lang.NullPointerException: Cannot invoke \"sim.Bot.Set(sim.Stat, double)\" because \"self\" is null", + "java.lang.NullPointerException: Cannot invoke \"sim.Bot.Set(sim.Stat, double)\" because \"self\" is null", + "java.lang.NullPointerException: Cannot invoke \"sim.Bot.Set(sim.Stat, double)\" because \"self\" is null", + "java.lang.NullPointerException: Cannot invoke \"sim.Bot.Set(sim.Stat, double)\" because \"self\" is null", + "java.lang.NullPointerException: Cannot invoke \"sim.Bot.Set(sim.Stat, double)\" because \"self\" is null", + "java.lang.NullPointerException: Cannot invoke \"sim.Bot.Set(sim.Stat, double)\" because \"self\" is null", + "java.lang.NullPointerException: Cannot invoke \"sim.Bot.Set(sim.Stat, double)\" because \"self\" is null", + "java.lang.NullPointerException: Cannot invoke \"sim.Bot.Set(sim.Stat, double)\" because \"self\" is null", + "java.lang.NullPointerException: Cannot invoke \"sim.Bot.Set(sim.Stat, double)\" because \"self\" is null", + "java.lang.NullPointerException: Cannot invoke \"sim.Bot.Set(sim.Stat, double)\" because \"self\" is null", + "java.lang.NullPointerException: Cannot invoke \"sim.Bot.Set(sim.Stat, double)\" because \"self\" is null", + "java.lang.NullPointerException: Cannot invoke \"sim.Bot.Set(sim.Stat, double)\" because \"self\" is null", + "java.lang.NullPointerException: Cannot invoke \"sim.Bot.Set(sim.Stat, double)\" because \"self\" is null", + "java.lang.NullPointerException: Cannot invoke \"sim.Bot.Set(sim.Stat, double)\" because \"self\" is null", + "java.lang.NullPointerException: Cannot invoke \"sim.Bot.Set(sim.Stat, double)\" because \"self\" is null", + "java.lang.NullPointerException: Cannot invoke \"sim.Bot.Set(sim.Stat, double)\" because \"self\" is null", + "java.lang.NullPointerException: Cannot invoke \"sim.Bot.Set(sim.Stat, double)\" because \"self\" is null", + "java.lang.NullPointerException: Cannot invoke \"sim.Bot.Set(sim.Stat, double)\" because \"self\" is null", + "java.lang.NullPointerException: Cannot invoke \"sim.Bot.Set(sim.Stat, double)\" because \"self\" is null", + "java.lang.NullPointerException: Cannot invoke \"sim.Bot.Set(sim.Stat, double)\" because \"self\" is null", + "java.lang.NullPointerException: Cannot invoke \"sim.Bot.Set(sim.Stat, double)\" because \"self\" is null", + "java.lang.NullPointerException: Cannot invoke \"sim.Bot.Set(sim.Stat, double)\" because \"self\" is null", + "java.lang.NullPointerException: Cannot invoke \"sim.Bot.Set(sim.Stat, double)\" because \"self\" is null", + "java.lang.NullPointerException: Cannot invoke \"sim.Bot.Set(sim.Stat, double)\" because \"self\" is null", + "java.lang.NullPointerException: Cannot invoke \"sim.Bot.Set(sim.Stat, double)\" because \"self\" is null", + "java.lang.NullPointerException: Cannot invoke \"sim.Bot.Set(sim.Stat, double)\" because \"self\" is null", + "java.lang.NullPointerException: Cannot invoke \"sim.Bot.Set(sim.Stat, double)\" because \"self\" is null", + "java.lang.NullPointerException: Cannot invoke \"sim.Bot.Set(sim.Stat, double)\" because \"self\" is null", + "java.lang.NullPointerException: Cannot invoke \"sim.Bot.Set(sim.Stat, double)\" because \"self\" is null", + "java.lang.NullPointerException: Cannot invoke \"sim.Bot.Set(sim.Stat, double)\" because \"self\" is null", + "java.lang.NullPointerException: Cannot invoke \"sim.Bot.Set(sim.Stat, double)\" because \"self\" is null", + "java.lang.NullPointerException: Cannot invoke \"sim.Bot.Set(sim.Stat, double)\" because \"self\" is null", + "java.lang.NullPointerException: Cannot invoke \"sim.Bot.Set(sim.Stat, double)\" because \"self\" is null", + "java.lang.NullPointerException: Cannot invoke \"sim.Bot.Set(sim.Stat, double)\" because \"self\" is null", + "java.lang.NullPointerException: Cannot invoke \"sim.Bot.Set(sim.Stat, double)\" because \"self\" is null", + "java.lang.NullPointerException: Cannot invoke \"sim.Bot.Set(sim.Stat, double)\" because \"self\" is null" + ], + "has_log": true, + "ok": false, + "score": null, + "scores": [], + "skipped": null + } + } + ], + "status": "DISCREPANCY (outcome)" + }, + "roborumble/eat.HumblePieLite_1.0.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "eat.HumblePieLite 1.0", + "division": "roborumble", + "jar": "eat.HumblePieLite_1.0.jar", + "jar_sha256": "cd011e083dc0e5a0a73eabcca7d3c86128278c9bd4fc06cd338ff057b8c341d1", + "key": "roborumble/eat.HumblePieLite_1.0.jar", + "kind": "robot" + }, + "latest_observation": "a85c70974ba48767", + "observations": [ + { + "classic": { + "elapsed": 2.2, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 11414.0, + "scores": [ + 5665.0, + 5749.0 + ], + "selected": "eat.HumblePieLite 1.0" + }, + "completed_at": "2026-09-12T11:04:55Z", + "confirmation": null, + "delta_pct": 14.8, + "id": "a85c70974ba48767", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "94fdbe31e2b9c6d6a022c43becbd0bd861f86c19", + "official_parameters": true, + "tank_royale_commit": "a553d8069e3f67e8711f0a3e976c339f389faec8", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "eat.HumblePieLite 1.0", + "division": "roborumble", + "jar": "eat.HumblePieLite_1.0.jar", + "jar_sha256": "cd011e083dc0e5a0a73eabcca7d3c86128278c9bd4fc06cd338ff057b8c341d1", + "key": "roborumble/eat.HumblePieLite_1.0.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 10.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 13099.0, + "scores": [ + 6889.0, + 6210.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/ebo.Sparse_0.02.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "ebo.Sparse 0.02", + "division": "roborumble", + "jar": "ebo.Sparse_0.02.jar", + "jar_sha256": "871ad9964dc27ed22be3491e09516a3bbf67e6c0a4d065ae9343c45b31603e74", + "key": "roborumble/ebo.Sparse_0.02.jar", + "kind": "robot" + }, + "latest_observation": "9da95784397a1e18", + "observations": [ + { + "classic": { + "elapsed": 3.4, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5394.0, + "scores": [ + 2853.0, + 2541.0 + ], + "selected": "ebo.Sparse 0.02" + }, + "completed_at": "2026-09-12T11:06:33Z", + "confirmation": null, + "delta_pct": -34.3, + "id": "9da95784397a1e18", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "df9075aba6f73e3faf265d798bae394c4d8dc85d", + "official_parameters": true, + "tank_royale_commit": "a553d8069e3f67e8711f0a3e976c339f389faec8", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "ebo.Sparse 0.02", + "division": "roborumble", + "jar": "ebo.Sparse_0.02.jar", + "jar_sha256": "871ad9964dc27ed22be3491e09516a3bbf67e6c0a4d065ae9343c45b31603e74", + "key": "roborumble/ebo.Sparse_0.02.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (score)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 22.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 3543.0, + "scores": [ + 1825.0, + 1718.0 + ], + "skipped": null + } + } + ], + "status": "score-review" + }, + "roborumble/ebo.Tahoe_1.1.79.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "ebo.Tahoe 1.1.79", + "division": "roborumble", + "jar": "ebo.Tahoe_1.1.79.jar", + "jar_sha256": "78f08f124b96bb5a22322e1646c8cd95982a1c16cd6bc66b1e5f4f631ae4f778", + "key": "roborumble/ebo.Tahoe_1.1.79.jar", + "kind": "robot" + }, + "latest_observation": "681b5afe8a64b645", + "observations": [ + { + "classic": { + "elapsed": 3.4, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 6042.0, + "scores": [ + 3168.0, + 2874.0 + ], + "selected": "ebo.Tahoe 1.1.79" + }, + "completed_at": "2026-09-12T11:07:01Z", + "confirmation": null, + "delta_pct": -23.8, + "id": "681b5afe8a64b645", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "df9075aba6f73e3faf265d798bae394c4d8dc85d", + "official_parameters": true, + "tank_royale_commit": "a553d8069e3f67e8711f0a3e976c339f389faec8", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "ebo.Tahoe 1.1.79", + "division": "roborumble", + "jar": "ebo.Tahoe_1.1.79.jar", + "jar_sha256": "78f08f124b96bb5a22322e1646c8cd95982a1c16cd6bc66b1e5f4f631ae4f778", + "key": "roborumble/ebo.Tahoe_1.1.79.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 24.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 4604.0, + "scores": [ + 2655.0, + 1949.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/eem.EvBotNG_v12.8.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "eem.EvBotNG v12.8", + "division": "roborumble", + "jar": "eem.EvBotNG_v12.8.jar", + "jar_sha256": "81eef26163200eaea051194cfc60bf13290c381c8f29fe8cf7de8276b2cca0f6", + "key": "roborumble/eem.EvBotNG_v12.8.jar", + "kind": "robot" + }, + "latest_observation": "7ebb64d148b85617", + "observations": [ + { + "classic": { + "elapsed": 40.1, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 4788.0, + "scores": [ + 2350.0, + 2438.0 + ], + "selected": "eem.EvBotNG v12.8" + }, + "completed_at": "2026-09-12T11:12:12Z", + "confirmation": null, + "delta_pct": -3.1, + "id": "7ebb64d148b85617", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "df9075aba6f73e3faf265d798bae394c4d8dc85d", + "official_parameters": true, + "tank_royale_commit": "a553d8069e3f67e8711f0a3e976c339f389faec8", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "eem.EvBotNG v12.8", + "division": "roborumble", + "jar": "eem.EvBotNG_v12.8.jar", + "jar_sha256": "81eef26163200eaea051194cfc60bf13290c381c8f29fe8cf7de8276b2cca0f6", + "key": "roborumble/eem.EvBotNG_v12.8.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 108.2, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 4640.0, + "scores": [ + 2388.0, + 2252.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/eem.EvBot_v4.6.4.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "eem.EvBot v4.6.4", + "division": "roborumble", + "jar": "eem.EvBot_v4.6.4.jar", + "jar_sha256": "c80036fd740e9c8d86682a49429aec51abfb6aef3bc25307c044c34e31f20320", + "key": "roborumble/eem.EvBot_v4.6.4.jar", + "kind": "robot" + }, + "latest_observation": "f3b0485111bec962", + "observations": [ + { + "classic": { + "elapsed": 32.4, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 4354.0, + "scores": [ + 2306.0, + 2048.0 + ], + "selected": "eem.EvBot v4.6.4" + }, + "completed_at": "2026-09-12T11:09:43Z", + "confirmation": null, + "delta_pct": -6.6, + "id": "f3b0485111bec962", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "df9075aba6f73e3faf265d798bae394c4d8dc85d", + "official_parameters": true, + "tank_royale_commit": "a553d8069e3f67e8711f0a3e976c339f389faec8", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "eem.EvBot v4.6.4", + "division": "roborumble", + "jar": "eem.EvBot_v4.6.4.jar", + "jar_sha256": "c80036fd740e9c8d86682a49429aec51abfb6aef3bc25307c044c34e31f20320", + "key": "roborumble/eem.EvBot_v4.6.4.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 78.4, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 4068.0, + "scores": [ + 2053.0, + 2015.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/eem.IWillFireNoBullet_v2.4.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "eem.IWillFireNoBullet v2.4", + "division": "roborumble", + "jar": "eem.IWillFireNoBullet_v2.4.jar", + "jar_sha256": "2f4ba80edb9f95aabd5e69487de2d2cdf84243d80e0da18a6cac2b06c1da1609", + "key": "roborumble/eem.IWillFireNoBullet_v2.4.jar", + "kind": "robot" + }, + "latest_observation": "7cdf1837d55623fb", + "observations": [ + { + "classic": { + "elapsed": 117.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 1332.0, + "scores": [ + 512.0, + 820.0 + ], + "selected": "eem.IWillFireNoBullet v2.4" + }, + "completed_at": "2026-09-12T11:17:38Z", + "confirmation": null, + "delta_pct": 44.8, + "id": "7cdf1837d55623fb", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "df9075aba6f73e3faf265d798bae394c4d8dc85d", + "official_parameters": true, + "tank_royale_commit": "a553d8069e3f67e8711f0a3e976c339f389faec8", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "eem.IWillFireNoBullet v2.4", + "division": "roborumble", + "jar": "eem.IWillFireNoBullet_v2.4.jar", + "jar_sha256": "2f4ba80edb9f95aabd5e69487de2d2cdf84243d80e0da18a6cac2b06c1da1609", + "key": "roborumble/eem.IWillFireNoBullet_v2.4.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (score)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 208.3, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 1929.0, + "scores": [ + 1071.0, + 858.0 + ], + "skipped": null + } + } + ], + "status": "score-review" + }, + "roborumble/eem.awful_v1.2.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "eem.awful v1.2", + "division": "roborumble", + "jar": "eem.awful_v1.2.jar", + "jar_sha256": "4c64fc4c02da3db0aa5840312b72d080c1275374746a441e0deea03d623d7c11", + "key": "roborumble/eem.awful_v1.2.jar", + "kind": "robot" + }, + "latest_observation": "59537630aafb178b", + "observations": [ + { + "classic": { + "elapsed": 2.0, + "error_count": 70, + "error_signatures": [ + { + "exception": "java.lang.NullPointerException", + "origin": "eem.awful.run" + } + ], + "errors": [ + "java.lang.NullPointerException: Cannot invoke \"java.lang.Double.doubleValue()\" because \"this._null_pointer\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.lang.Double.doubleValue()\" because \"this._null_pointer\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.lang.Double.doubleValue()\" because \"this._null_pointer\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.lang.Double.doubleValue()\" because \"this._null_pointer\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.lang.Double.doubleValue()\" because \"this._null_pointer\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.lang.Double.doubleValue()\" because \"this._null_pointer\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.lang.Double.doubleValue()\" because \"this._null_pointer\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.lang.Double.doubleValue()\" because \"this._null_pointer\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.lang.Double.doubleValue()\" because \"this._null_pointer\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.lang.Double.doubleValue()\" because \"this._null_pointer\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.lang.Double.doubleValue()\" because \"this._null_pointer\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.lang.Double.doubleValue()\" because \"this._null_pointer\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.lang.Double.doubleValue()\" because \"this._null_pointer\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.lang.Double.doubleValue()\" because \"this._null_pointer\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.lang.Double.doubleValue()\" because \"this._null_pointer\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.lang.Double.doubleValue()\" because \"this._null_pointer\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.lang.Double.doubleValue()\" because \"this._null_pointer\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.lang.Double.doubleValue()\" because \"this._null_pointer\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.lang.Double.doubleValue()\" because \"this._null_pointer\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.lang.Double.doubleValue()\" because \"this._null_pointer\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.lang.Double.doubleValue()\" because \"this._null_pointer\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.lang.Double.doubleValue()\" because \"this._null_pointer\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.lang.Double.doubleValue()\" because \"this._null_pointer\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.lang.Double.doubleValue()\" because \"this._null_pointer\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.lang.Double.doubleValue()\" because \"this._null_pointer\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.lang.Double.doubleValue()\" because \"this._null_pointer\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.lang.Double.doubleValue()\" because \"this._null_pointer\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.lang.Double.doubleValue()\" because \"this._null_pointer\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.lang.Double.doubleValue()\" because \"this._null_pointer\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.lang.Double.doubleValue()\" because \"this._null_pointer\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.lang.Double.doubleValue()\" because \"this._null_pointer\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.lang.Double.doubleValue()\" because \"this._null_pointer\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.lang.Double.doubleValue()\" because \"this._null_pointer\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.lang.Double.doubleValue()\" because \"this._null_pointer\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.lang.Double.doubleValue()\" because \"this._null_pointer\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.lang.Double.doubleValue()\" because \"this._null_pointer\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.lang.Double.doubleValue()\" because \"this._null_pointer\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.lang.Double.doubleValue()\" because \"this._null_pointer\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.lang.Double.doubleValue()\" because \"this._null_pointer\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.lang.Double.doubleValue()\" because \"this._null_pointer\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.lang.Double.doubleValue()\" because \"this._null_pointer\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.lang.Double.doubleValue()\" because \"this._null_pointer\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.lang.Double.doubleValue()\" because \"this._null_pointer\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.lang.Double.doubleValue()\" because \"this._null_pointer\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.lang.Double.doubleValue()\" because \"this._null_pointer\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.lang.Double.doubleValue()\" because \"this._null_pointer\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.lang.Double.doubleValue()\" because \"this._null_pointer\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.lang.Double.doubleValue()\" because \"this._null_pointer\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.lang.Double.doubleValue()\" because \"this._null_pointer\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.lang.Double.doubleValue()\" because \"this._null_pointer\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.lang.Double.doubleValue()\" because \"this._null_pointer\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.lang.Double.doubleValue()\" because \"this._null_pointer\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.lang.Double.doubleValue()\" because \"this._null_pointer\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.lang.Double.doubleValue()\" because \"this._null_pointer\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.lang.Double.doubleValue()\" because \"this._null_pointer\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.lang.Double.doubleValue()\" because \"this._null_pointer\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.lang.Double.doubleValue()\" because \"this._null_pointer\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.lang.Double.doubleValue()\" because \"this._null_pointer\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.lang.Double.doubleValue()\" because \"this._null_pointer\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.lang.Double.doubleValue()\" because \"this._null_pointer\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.lang.Double.doubleValue()\" because \"this._null_pointer\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.lang.Double.doubleValue()\" because \"this._null_pointer\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.lang.Double.doubleValue()\" because \"this._null_pointer\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.lang.Double.doubleValue()\" because \"this._null_pointer\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.lang.Double.doubleValue()\" because \"this._null_pointer\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.lang.Double.doubleValue()\" because \"this._null_pointer\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.lang.Double.doubleValue()\" because \"this._null_pointer\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.lang.Double.doubleValue()\" because \"this._null_pointer\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.lang.Double.doubleValue()\" because \"this._null_pointer\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.lang.Double.doubleValue()\" because \"this._null_pointer\" is null" + ], + "has_log": true, + "ok": true, + "score": 0.0, + "scores": [ + 0.0, + 0.0 + ], + "selected": "eem.awful v1.2" + }, + "completed_at": "2026-09-12T11:07:52Z", + "confirmation": null, + "delta_pct": null, + "id": "59537630aafb178b", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "df9075aba6f73e3faf265d798bae394c4d8dc85d", + "official_parameters": true, + "tank_royale_commit": "a553d8069e3f67e8711f0a3e976c339f389faec8", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "eem.awful v1.2", + "division": "roborumble", + "jar": "eem.awful_v1.2.jar", + "jar_sha256": "4c64fc4c02da3db0aa5840312b72d080c1275374746a441e0deea03d623d7c11", + "key": "roborumble/eem.awful_v1.2.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (no score)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 32.0, + "error_count": 70, + "error_signatures": [ + { + "exception": "java.lang.NullPointerException", + "origin": "eem.awful.run" + } + ], + "errors": [ + "java.lang.NullPointerException: Cannot invoke \"java.lang.Double.doubleValue()\" because \"this._null_pointer\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.lang.Double.doubleValue()\" because \"this._null_pointer\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.lang.Double.doubleValue()\" because \"this._null_pointer\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.lang.Double.doubleValue()\" because \"this._null_pointer\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.lang.Double.doubleValue()\" because \"this._null_pointer\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.lang.Double.doubleValue()\" because \"this._null_pointer\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.lang.Double.doubleValue()\" because \"this._null_pointer\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.lang.Double.doubleValue()\" because \"this._null_pointer\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.lang.Double.doubleValue()\" because \"this._null_pointer\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.lang.Double.doubleValue()\" because \"this._null_pointer\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.lang.Double.doubleValue()\" because \"this._null_pointer\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.lang.Double.doubleValue()\" because \"this._null_pointer\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.lang.Double.doubleValue()\" because \"this._null_pointer\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.lang.Double.doubleValue()\" because \"this._null_pointer\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.lang.Double.doubleValue()\" because \"this._null_pointer\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.lang.Double.doubleValue()\" because \"this._null_pointer\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.lang.Double.doubleValue()\" because \"this._null_pointer\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.lang.Double.doubleValue()\" because \"this._null_pointer\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.lang.Double.doubleValue()\" because \"this._null_pointer\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.lang.Double.doubleValue()\" because \"this._null_pointer\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.lang.Double.doubleValue()\" because \"this._null_pointer\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.lang.Double.doubleValue()\" because \"this._null_pointer\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.lang.Double.doubleValue()\" because \"this._null_pointer\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.lang.Double.doubleValue()\" because \"this._null_pointer\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.lang.Double.doubleValue()\" because \"this._null_pointer\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.lang.Double.doubleValue()\" because \"this._null_pointer\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.lang.Double.doubleValue()\" because \"this._null_pointer\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.lang.Double.doubleValue()\" because \"this._null_pointer\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.lang.Double.doubleValue()\" because \"this._null_pointer\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.lang.Double.doubleValue()\" because \"this._null_pointer\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.lang.Double.doubleValue()\" because \"this._null_pointer\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.lang.Double.doubleValue()\" because \"this._null_pointer\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.lang.Double.doubleValue()\" because \"this._null_pointer\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.lang.Double.doubleValue()\" because \"this._null_pointer\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.lang.Double.doubleValue()\" because \"this._null_pointer\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.lang.Double.doubleValue()\" because \"this._null_pointer\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.lang.Double.doubleValue()\" because \"this._null_pointer\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.lang.Double.doubleValue()\" because \"this._null_pointer\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.lang.Double.doubleValue()\" because \"this._null_pointer\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.lang.Double.doubleValue()\" because \"this._null_pointer\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.lang.Double.doubleValue()\" because \"this._null_pointer\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.lang.Double.doubleValue()\" because \"this._null_pointer\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.lang.Double.doubleValue()\" because \"this._null_pointer\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.lang.Double.doubleValue()\" because \"this._null_pointer\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.lang.Double.doubleValue()\" because \"this._null_pointer\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.lang.Double.doubleValue()\" because \"this._null_pointer\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.lang.Double.doubleValue()\" because \"this._null_pointer\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.lang.Double.doubleValue()\" because \"this._null_pointer\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.lang.Double.doubleValue()\" because \"this._null_pointer\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.lang.Double.doubleValue()\" because \"this._null_pointer\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.lang.Double.doubleValue()\" because \"this._null_pointer\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.lang.Double.doubleValue()\" because \"this._null_pointer\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.lang.Double.doubleValue()\" because \"this._null_pointer\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.lang.Double.doubleValue()\" because \"this._null_pointer\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.lang.Double.doubleValue()\" because \"this._null_pointer\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.lang.Double.doubleValue()\" because \"this._null_pointer\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.lang.Double.doubleValue()\" because \"this._null_pointer\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.lang.Double.doubleValue()\" because \"this._null_pointer\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.lang.Double.doubleValue()\" because \"this._null_pointer\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.lang.Double.doubleValue()\" because \"this._null_pointer\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.lang.Double.doubleValue()\" because \"this._null_pointer\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.lang.Double.doubleValue()\" because \"this._null_pointer\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.lang.Double.doubleValue()\" because \"this._null_pointer\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.lang.Double.doubleValue()\" because \"this._null_pointer\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.lang.Double.doubleValue()\" because \"this._null_pointer\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.lang.Double.doubleValue()\" because \"this._null_pointer\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.lang.Double.doubleValue()\" because \"this._null_pointer\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.lang.Double.doubleValue()\" because \"this._null_pointer\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.lang.Double.doubleValue()\" because \"this._null_pointer\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.lang.Double.doubleValue()\" because \"this._null_pointer\" is null" + ], + "has_log": true, + "ok": true, + "score": 0.0, + "scores": [ + 0.0, + 0.0 + ], + "skipped": null + } + } + ], + "status": "DISCREPANCY (no score)" + }, + "roborumble/eem.zapper_v4.17.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "eem.zapper v4.17", + "division": "roborumble", + "jar": "eem.zapper_v4.17.jar", + "jar_sha256": "10b833128dc6728870cfc24991c3f0d15432474df9c390f6619ed8d7d3a7eb1c", + "key": "roborumble/eem.zapper_v4.17.jar", + "kind": "robot" + }, + "latest_observation": "9739522025a54af6", + "observations": [ + { + "classic": { + "elapsed": 9.3, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 4318.0, + "scores": [ + 1626.0, + 2692.0 + ], + "selected": "eem.zapper v4.17" + }, + "completed_at": "2026-09-12T11:18:23Z", + "confirmation": null, + "delta_pct": 15.9, + "id": "9739522025a54af6", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "df9075aba6f73e3faf265d798bae394c4d8dc85d", + "official_parameters": true, + "tank_royale_commit": "a553d8069e3f67e8711f0a3e976c339f389faec8", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "eem.zapper v4.17", + "division": "roborumble", + "jar": "eem.zapper_v4.17.jar", + "jar_sha256": "10b833128dc6728870cfc24991c3f0d15432474df9c390f6619ed8d7d3a7eb1c", + "key": "roborumble/eem.zapper_v4.17.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 36.1, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5005.0, + "scores": [ + 2798.0, + 2207.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/ej.ChocolateBar_1.1.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "ej.ChocolateBar 1.1", + "division": "roborumble", + "jar": "ej.ChocolateBar_1.1.jar", + "jar_sha256": "9ebfcc8e298c6fad8045e8e3f44418be6f2c5c74322fb6d50f71e698005e4a52", + "key": "roborumble/ej.ChocolateBar_1.1.jar", + "kind": "robot" + }, + "latest_observation": "b47ad477d6bd24cb", + "observations": [ + { + "classic": { + "elapsed": 2.7, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5159.0, + "scores": [ + 2571.0, + 2588.0 + ], + "selected": "ej.ChocolateBar 1.1" + }, + "completed_at": "2026-09-12T11:21:27Z", + "confirmation": null, + "delta_pct": -63.3, + "id": "b47ad477d6bd24cb", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "df9075aba6f73e3faf265d798bae394c4d8dc85d", + "official_parameters": true, + "tank_royale_commit": "a553d8069e3f67e8711f0a3e976c339f389faec8", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "ej.ChocolateBar 1.1", + "division": "roborumble", + "jar": "ej.ChocolateBar_1.1.jar", + "jar_sha256": "9ebfcc8e298c6fad8045e8e3f44418be6f2c5c74322fb6d50f71e698005e4a52", + "key": "roborumble/ej.ChocolateBar_1.1.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (score)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 22.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 1895.0, + "scores": [ + 950.0, + 945.0 + ], + "skipped": null + } + } + ], + "status": "score-review" + }, + "roborumble/el.Attackr_0.1.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "el.Attackr 0.1", + "division": "roborumble", + "jar": "el.Attackr_0.1.jar", + "jar_sha256": "cf01c0bfba61865ae542f15a6e8ece63bb62a99a9f21b8bdd1c542adba735959", + "key": "roborumble/el.Attackr_0.1.jar", + "kind": "robot" + }, + "latest_observation": "f2944dcec0666d53", + "observations": [ + { + "classic": { + "elapsed": 3.5, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 7736.0, + "scores": [ + 3672.0, + 4064.0 + ], + "selected": "el.Attackr 0.1" + }, + "completed_at": "2026-09-12T11:21:55Z", + "confirmation": null, + "delta_pct": -6.8, + "id": "f2944dcec0666d53", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "df9075aba6f73e3faf265d798bae394c4d8dc85d", + "official_parameters": true, + "tank_royale_commit": "a553d8069e3f67e8711f0a3e976c339f389faec8", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "el.Attackr 0.1", + "division": "roborumble", + "jar": "el.Attackr_0.1.jar", + "jar_sha256": "cf01c0bfba61865ae542f15a6e8ece63bb62a99a9f21b8bdd1c542adba735959", + "key": "roborumble/el.Attackr_0.1.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 24.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 7212.0, + "scores": [ + 4054.0, + 3158.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/el.JumpShoot_0.2.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "el.JumpShoot 0.2", + "division": "roborumble", + "jar": "el.JumpShoot_0.2.jar", + "jar_sha256": "863d0d2c26033f1ca287b2d1c73f824e3c117a04273ee69a2320abda847a1bf7", + "key": "roborumble/el.JumpShoot_0.2.jar", + "kind": "robot" + }, + "latest_observation": "795d56a26238569f", + "observations": [ + { + "classic": { + "elapsed": 2.8, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 7376.0, + "scores": [ + 3383.0, + 3993.0 + ], + "selected": "el.JumpShoot 0.2" + }, + "completed_at": "2026-09-12T11:22:24Z", + "confirmation": null, + "delta_pct": -11.4, + "id": "795d56a26238569f", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "df9075aba6f73e3faf265d798bae394c4d8dc85d", + "official_parameters": true, + "tank_royale_commit": "a553d8069e3f67e8711f0a3e976c339f389faec8", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "el.JumpShoot 0.2", + "division": "roborumble", + "jar": "el.JumpShoot_0.2.jar", + "jar_sha256": "863d0d2c26033f1ca287b2d1c73f824e3c117a04273ee69a2320abda847a1bf7", + "key": "roborumble/el.JumpShoot_0.2.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 26.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 6538.0, + "scores": [ + 3869.0, + 2669.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/el33t.EL33tGangstarr2_2.0.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "el33t.EL33tGangstarr2 2.0", + "division": "roborumble", + "jar": "el33t.EL33tGangstarr2_2.0.jar", + "jar_sha256": "26ab583db98602ea0d29fc8c0f242166417ca16e218e21c91ad3ee1de45293f4", + "key": "roborumble/el33t.EL33tGangstarr2_2.0.jar", + "kind": "robot" + }, + "latest_observation": "791e673951bd2014", + "observations": [ + { + "classic": { + "elapsed": 2.4, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 4522.0, + "scores": [ + 2362.0, + 2160.0 + ], + "selected": "el33t.EL33tGangstarr2 2.0" + }, + "completed_at": "2026-09-12T11:22:47Z", + "confirmation": null, + "delta_pct": -39.6, + "id": "791e673951bd2014", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "df9075aba6f73e3faf265d798bae394c4d8dc85d", + "official_parameters": true, + "tank_royale_commit": "a553d8069e3f67e8711f0a3e976c339f389faec8", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "el33t.EL33tGangstarr2 2.0", + "division": "roborumble", + "jar": "el33t.EL33tGangstarr2_2.0.jar", + "jar_sha256": "26ab583db98602ea0d29fc8c0f242166417ca16e218e21c91ad3ee1de45293f4", + "key": "roborumble/el33t.EL33tGangstarr2_2.0.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (score)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 20.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 2730.0, + "scores": [ + 1619.0, + 1111.0 + ], + "skipped": null + } + } + ], + "status": "score-review" + }, + "roborumble/eld.Hmm_1.0.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "eld.Hmm 1.0", + "division": "roborumble", + "jar": "eld.Hmm_1.0.jar", + "jar_sha256": "3af1b4c6f89c3c7f4c49a53a8ee29b39da1345676ea6351def5840f6a730ecd9", + "key": "roborumble/eld.Hmm_1.0.jar", + "kind": "robot" + }, + "latest_observation": "6429e35e8dc9bb33", + "observations": [ + { + "classic": { + "elapsed": 3.1, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 8113.0, + "scores": [ + 3773.0, + 4340.0 + ], + "selected": "eld.Hmm 1.0" + }, + "completed_at": "2026-09-12T11:23:26Z", + "confirmation": null, + "delta_pct": -14.1, + "id": "6429e35e8dc9bb33", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "df9075aba6f73e3faf265d798bae394c4d8dc85d", + "official_parameters": true, + "tank_royale_commit": "a553d8069e3f67e8711f0a3e976c339f389faec8", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "eld.Hmm 1.0", + "division": "roborumble", + "jar": "eld.Hmm_1.0.jar", + "jar_sha256": "3af1b4c6f89c3c7f4c49a53a8ee29b39da1345676ea6351def5840f6a730ecd9", + "key": "roborumble/eld.Hmm_1.0.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 36.2, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 6970.0, + "scores": [ + 3615.0, + 3355.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/element.Earth_1.1.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "element.Earth 1.1", + "division": "roborumble", + "jar": "element.Earth_1.1.jar", + "jar_sha256": "cc1684fb62819ceb6fcfcb6bee7281ec76ea054e542a5a5ba324fa19fb8904f5", + "key": "roborumble/element.Earth_1.1.jar", + "kind": "robot" + }, + "latest_observation": "e9a5d46ed04f0534", + "observations": [ + { + "classic": { + "elapsed": 2.8, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 6004.0, + "scores": [ + 2245.0, + 3759.0 + ], + "selected": "element.Earth 1.1" + }, + "completed_at": "2026-09-12T11:23:53Z", + "confirmation": null, + "delta_pct": -38.0, + "id": "e9a5d46ed04f0534", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "df9075aba6f73e3faf265d798bae394c4d8dc85d", + "official_parameters": true, + "tank_royale_commit": "a553d8069e3f67e8711f0a3e976c339f389faec8", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "element.Earth 1.1", + "division": "roborumble", + "jar": "element.Earth_1.1.jar", + "jar_sha256": "cc1684fb62819ceb6fcfcb6bee7281ec76ea054e542a5a5ba324fa19fb8904f5", + "key": "roborumble/element.Earth_1.1.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (score)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 24.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 3721.0, + "scores": [ + 1870.0, + 1851.0 + ], + "skipped": null + } + } + ], + "status": "score-review" + }, + "roborumble/elloco.Flower_0.1r1.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "elloco.Flower 0.1r1", + "division": "roborumble", + "jar": "elloco.Flower_0.1r1.jar", + "jar_sha256": "43d3313587c90c608353f488ad45078fe28344656e25f72efac0a3d659d587c6", + "key": "roborumble/elloco.Flower_0.1r1.jar", + "kind": "robot" + }, + "latest_observation": "dc5eb966fb783139", + "observations": [ + { + "classic": { + "elapsed": 2.5, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 7712.0, + "scores": [ + 3345.0, + 4367.0 + ], + "selected": "elloco.Flower 0.1r1" + }, + "completed_at": "2026-09-12T11:24:10Z", + "confirmation": null, + "delta_pct": -6.6, + "id": "dc5eb966fb783139", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "df9075aba6f73e3faf265d798bae394c4d8dc85d", + "official_parameters": true, + "tank_royale_commit": "a553d8069e3f67e8711f0a3e976c339f389faec8", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "elloco.Flower 0.1r1", + "division": "roborumble", + "jar": "elloco.Flower_0.1r1.jar", + "jar_sha256": "43d3313587c90c608353f488ad45078fe28344656e25f72efac0a3d659d587c6", + "key": "roborumble/elloco.Flower_0.1r1.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 14.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 7201.0, + "scores": [ + 3998.0, + 3203.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/elloco.Kabuto_0.2r.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "elloco.Kabuto 0.2r", + "division": "roborumble", + "jar": "elloco.Kabuto_0.2r.jar", + "jar_sha256": "d696e58a5d19664e1ff89352c02a7ed8a807316556093abb6a5e64b6ca33710f", + "key": "roborumble/elloco.Kabuto_0.2r.jar", + "kind": "robot" + }, + "latest_observation": "5558a61657f168c0", + "observations": [ + { + "classic": { + "elapsed": 3.1, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 4464.0, + "scores": [ + 2151.0, + 2313.0 + ], + "selected": "elloco.Kabuto 0.2r" + }, + "completed_at": "2026-09-12T11:24:38Z", + "confirmation": null, + "delta_pct": -1.8, + "id": "5558a61657f168c0", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "df9075aba6f73e3faf265d798bae394c4d8dc85d", + "official_parameters": true, + "tank_royale_commit": "a553d8069e3f67e8711f0a3e976c339f389faec8", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "elloco.Kabuto 0.2r", + "division": "roborumble", + "jar": "elloco.Kabuto_0.2r.jar", + "jar_sha256": "d696e58a5d19664e1ff89352c02a7ed8a807316556093abb6a5e64b6ca33710f", + "key": "roborumble/elloco.Kabuto_0.2r.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 24.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 4384.0, + "scores": [ + 2531.0, + 1853.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/elvbot.ElverionBot_0.3.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "elvbot.ElverionBot 0.3", + "division": "roborumble", + "jar": "elvbot.ElverionBot_0.3.jar", + "jar_sha256": "34bd4c44eea1fcc79f19b55393f2bc53323f8bcfac08d5400861ab1b218acea8", + "key": "roborumble/elvbot.ElverionBot_0.3.jar", + "kind": "robot" + }, + "latest_observation": "71e2df5b73f1ffcc", + "observations": [ + { + "classic": { + "elapsed": 3.2, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 3469.0, + "scores": [ + 1803.0, + 1666.0 + ], + "selected": "elvbot.ElverionBot 0.3" + }, + "completed_at": "2026-09-12T11:25:13Z", + "confirmation": null, + "delta_pct": -3.5, + "id": "71e2df5b73f1ffcc", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "df9075aba6f73e3faf265d798bae394c4d8dc85d", + "official_parameters": true, + "tank_royale_commit": "a553d8069e3f67e8711f0a3e976c339f389faec8", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "elvbot.ElverionBot 0.3", + "division": "roborumble", + "jar": "elvbot.ElverionBot_0.3.jar", + "jar_sha256": "34bd4c44eea1fcc79f19b55393f2bc53323f8bcfac08d5400861ab1b218acea8", + "key": "roborumble/elvbot.ElverionBot_0.3.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 32.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 3348.0, + "scores": [ + 1833.0, + 1515.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/emp.Yngwie_1.11.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "emp.Yngwie 1.11", + "division": "roborumble", + "jar": "emp.Yngwie_1.11.jar", + "jar_sha256": "3e958df3c07d2f9ceffa91a54cd8f164de0cde77b5f21111e8c042f88682bc40", + "key": "roborumble/emp.Yngwie_1.11.jar", + "kind": "robot" + }, + "latest_observation": "2b8bbf46a8f1d158", + "observations": [ + { + "classic": { + "elapsed": 3.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 6685.0, + "scores": [ + 3611.0, + 3074.0 + ], + "selected": "emp.Yngwie 1.11" + }, + "completed_at": "2026-09-12T11:27:09Z", + "confirmation": null, + "delta_pct": -3.0, + "id": "2b8bbf46a8f1d158", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "df9075aba6f73e3faf265d798bae394c4d8dc85d", + "official_parameters": true, + "tank_royale_commit": "a553d8069e3f67e8711f0a3e976c339f389faec8", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "emp.Yngwie 1.11", + "division": "roborumble", + "jar": "emp.Yngwie_1.11.jar", + "jar_sha256": "3e958df3c07d2f9ceffa91a54cd8f164de0cde77b5f21111e8c042f88682bc40", + "key": "roborumble/emp.Yngwie_1.11.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 112.1, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 6487.0, + "scores": [ + 3509.0, + 2978.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/ender.EnderRobot_1.1.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "ender.EnderRobot 1.1", + "division": "roborumble", + "jar": "ender.EnderRobot_1.1.jar", + "jar_sha256": "d945d4c4375cc5d79bc81cd80fc9a5908c7782a726c606a745ef5235f30c334b", + "key": "roborumble/ender.EnderRobot_1.1.jar", + "kind": "robot" + }, + "latest_observation": "bf1c109c4d17f836", + "observations": [ + { + "classic": { + "elapsed": 2.5, + "error_count": 23, + "error_signatures": [ + { + "exception": "java.lang.NullPointerException", + "origin": "ender.EnderRobot.doSurfing" + }, + { + "exception": "java.lang.NullPointerException", + "origin": "ender.EnderRobot.energyAnalysis" + } + ], + "errors": [ + "java.lang.NullPointerException: Cannot invoke \"ender.ScanStatus.getAttr(int)\" because the return value of \"ender.GameStatus.get(long)\" is null", + "SYSTEM: java.lang.NullPointerException occurred on robocode.ScannedRobotEvent", + "java.lang.NullPointerException: Cannot invoke \"ender.ScanStatus.getAttr(int)\" because \"previousstatus\" is null", + "java.lang.NullPointerException: Cannot invoke \"ender.ScanStatus.getAttr(int)\" because the return value of \"ender.GameStatus.get(long)\" is null", + "SYSTEM: java.lang.NullPointerException occurred on robocode.ScannedRobotEvent", + "java.lang.NullPointerException: Cannot invoke \"ender.ScanStatus.getAttr(int)\" because \"previousstatus\" is null", + "java.lang.NullPointerException: Cannot invoke \"ender.ScanStatus.getAttr(int)\" because the return value of \"ender.GameStatus.get(long)\" is null", + "SYSTEM: java.lang.NullPointerException occurred on robocode.ScannedRobotEvent", + "java.lang.NullPointerException: Cannot invoke \"ender.ScanStatus.getAttr(int)\" because \"previousstatus\" is null", + "java.lang.NullPointerException: Cannot invoke \"ender.ScanStatus.getAttr(int)\" because the return value of \"ender.GameStatus.get(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"ender.ScanStatus.getAttr(int)\" because the return value of \"ender.GameStatus.get(long)\" is null", + "SYSTEM: java.lang.NullPointerException occurred on robocode.ScannedRobotEvent", + "java.lang.NullPointerException: Cannot invoke \"ender.ScanStatus.getAttr(int)\" because \"previousstatus\" is null", + "SYSTEM: java.lang.NullPointerException occurred on robocode.ScannedRobotEvent", + "java.lang.NullPointerException: Cannot invoke \"ender.ScanStatus.getAttr(int)\" because \"previousstatus\" is null", + "SYSTEM: java.lang.NullPointerException occurred on robocode.ScannedRobotEvent", + "java.lang.NullPointerException: Cannot invoke \"ender.ScanStatus.getAttr(int)\" because \"previousstatus\" is null", + "SYSTEM: java.lang.NullPointerException occurred on robocode.ScannedRobotEvent", + "java.lang.NullPointerException: Cannot invoke \"ender.ScanStatus.getAttr(int)\" because \"previousstatus\" is null", + "SYSTEM: java.lang.NullPointerException occurred on robocode.ScannedRobotEvent", + "java.lang.NullPointerException: Cannot invoke \"ender.ScanStatus.getAttr(int)\" because \"previousstatus\" is null", + "java.lang.NullPointerException: Cannot invoke \"ender.ScanStatus.getAttr(int)\" because the return value of \"ender.GameStatus.get(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"ender.ScanStatus.getAttr(int)\" because the return value of \"ender.GameStatus.get(long)\" is null" + ], + "has_log": true, + "ok": true, + "score": 7702.0, + "scores": [ + 3884.0, + 3818.0 + ], + "selected": "ender.EnderRobot 1.1" + }, + "completed_at": "2026-09-12T11:27:34Z", + "confirmation": null, + "delta_pct": -18.3, + "id": "bf1c109c4d17f836", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "df9075aba6f73e3faf265d798bae394c4d8dc85d", + "official_parameters": true, + "tank_royale_commit": "a553d8069e3f67e8711f0a3e976c339f389faec8", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "ender.EnderRobot 1.1", + "division": "roborumble", + "jar": "ender.EnderRobot_1.1.jar", + "jar_sha256": "d945d4c4375cc5d79bc81cd80fc9a5908c7782a726c606a745ef5235f30c334b", + "key": "roborumble/ender.EnderRobot_1.1.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 22.1, + "error_count": 16, + "error_signatures": [ + { + "exception": "java.lang.NullPointerException", + "origin": "ender.EnderRobot.doSurfing" + }, + { + "exception": "java.lang.NullPointerException", + "origin": "ender.EnderRobot.energyAnalysis" + }, + { + "exception": "java.lang.NullPointerException", + "origin": "unknown" + } + ], + "errors": [ + "java.lang.NullPointerException: Cannot invoke \"ender.ScanStatus.getAttr(int)\" because \"previousstatus\" is null", + "java.lang.NullPointerException: Cannot invoke \"ender.ScanStatus.getAttr(int)\" because \"previousstatus\" is null", + "java.lang.NullPointerException: Cannot invoke \"ender.ScanStatus.getAttr(int)\" because the return value of \"ender.GameStatus.get(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"ender.ScanStatus.getAttr(int)\" because \"previousstatus\" is null", + "java.lang.NullPointerException: Cannot invoke \"ender.ScanStatus.getAttr(int)\" because \"previousstatus\" is null", + "java.lang.NullPointerException", + "java.lang.NullPointerException: Cannot invoke \"ender.ScanStatus.getAttr(int)\" because \"previousstatus\" is null", + "java.lang.NullPointerException: Cannot invoke \"ender.ScanStatus.getAttr(int)\" because the return value of \"ender.GameStatus.get(long)\" is null", + "java.lang.NullPointerException: Cannot invoke \"ender.ScanStatus.getAttr(int)\" because \"previousstatus\" is null", + "java.lang.NullPointerException: Cannot invoke \"ender.ScanStatus.getAttr(int)\" because \"previousstatus\" is null", + "java.lang.NullPointerException: Cannot invoke \"ender.ScanStatus.getAttr(int)\" because \"previousstatus\" is null", + "java.lang.NullPointerException: Cannot invoke \"ender.ScanStatus.getAttr(int)\" because \"previousstatus\" is null", + "java.lang.NullPointerException: Cannot invoke \"ender.ScanStatus.getAttr(int)\" because \"previousstatus\" is null", + "java.lang.NullPointerException: Cannot invoke \"ender.ScanStatus.getAttr(int)\" because \"previousstatus\" is null", + "java.lang.NullPointerException: Cannot invoke \"ender.ScanStatus.getAttr(int)\" because \"previousstatus\" is null", + "java.lang.NullPointerException" + ], + "has_log": true, + "ok": true, + "score": 6290.0, + "scores": [ + 3456.0, + 2834.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/ep.MyFirstRobot_1.0.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": null, + "division": "roborumble", + "jar": "ep.MyFirstRobot_1.0.jar", + "jar_sha256": "6bdf15c1cc0c426b4162af4cdc6f0bb6cfb99b58f829b698fbfa7e33dd81e3ed", + "key": "roborumble/ep.MyFirstRobot_1.0.jar", + "kind": "robot" + }, + "latest_observation": "09c6cfb05af392d7", + "observations": [ + { + "classic": { + "elapsed": 0.4, + "error_count": 1, + "error_signatures": [], + "errors": [ + "HARNESS: worker produced no result (exit code 1)" + ], + "has_log": true, + "ok": false, + "score": null, + "scores": [], + "selected": null + }, + "completed_at": "2026-09-12T12:25:06Z", + "confirmation": null, + "delta_pct": null, + "id": "09c6cfb05af392d7", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "36549f1196eb837f3109ffb1910f0601de2e4277", + "official_parameters": true, + "tank_royale_commit": "a553d8069e3f67e8711f0a3e976c339f389faec8", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": null, + "division": "roborumble", + "jar": "ep.MyFirstRobot_1.0.jar", + "jar_sha256": "6bdf15c1cc0c426b4162af4cdc6f0bb6cfb99b58f829b698fbfa7e33dd81e3ed", + "key": "roborumble/ep.MyFirstRobot_1.0.jar", + "kind": "robot" + }, + "status": "MATCHED (failure)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 0.3, + "error_count": 1, + "error_signatures": [], + "errors": [ + "HARNESS: worker produced no result (exit code 1)" + ], + "has_log": true, + "ok": false, + "score": null, + "scores": [], + "skipped": null + } + } + ], + "status": "MATCHED (failure)" + }, + "roborumble/ers.micro.ISuck.ISuckMicro_0.1f.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": null, + "division": "roborumble", + "jar": "ers.micro.ISuck.ISuckMicro_0.1f.jar", + "jar_sha256": "7a2a32734faeca43408249ffdadfe3131efb6d82df92e942b89be92a1ec450d7", + "key": "roborumble/ers.micro.ISuck.ISuckMicro_0.1f.jar", + "kind": "robot" + }, + "latest_observation": "bdffea9c570eb754", + "observations": [ + { + "classic": { + "elapsed": 0.3, + "error_count": 1, + "error_signatures": [], + "errors": [ + "HARNESS: worker produced no result (exit code 1)" + ], + "has_log": true, + "ok": false, + "score": null, + "scores": [], + "selected": null + }, + "completed_at": "2026-09-12T12:25:07Z", + "confirmation": null, + "delta_pct": null, + "id": "bdffea9c570eb754", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "36549f1196eb837f3109ffb1910f0601de2e4277", + "official_parameters": true, + "tank_royale_commit": "a553d8069e3f67e8711f0a3e976c339f389faec8", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": null, + "division": "roborumble", + "jar": "ers.micro.ISuck.ISuckMicro_0.1f.jar", + "jar_sha256": "7a2a32734faeca43408249ffdadfe3131efb6d82df92e942b89be92a1ec450d7", + "key": "roborumble/ers.micro.ISuck.ISuckMicro_0.1f.jar", + "kind": "robot" + }, + "status": "MATCHED (failure)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 0.3, + "error_count": 1, + "error_signatures": [], + "errors": [ + "HARNESS: worker produced no result (exit code 1)" + ], + "has_log": true, + "ok": false, + "score": null, + "scores": [], + "skipped": null + } + } + ], + "status": "MATCHED (failure)" + }, + "roborumble/ers.nano.ISuck.ISuckNano_0.1d.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": null, + "division": "roborumble", + "jar": "ers.nano.ISuck.ISuckNano_0.1d.jar", + "jar_sha256": "46ad64fe7cf88730cff95ded053d36c3bf63476045cb705b899c72fc5887c3ee", + "key": "roborumble/ers.nano.ISuck.ISuckNano_0.1d.jar", + "kind": "robot" + }, + "latest_observation": "9a259f9c6c5ee751", + "observations": [ + { + "classic": { + "elapsed": 0.3, + "error_count": 1, + "error_signatures": [], + "errors": [ + "HARNESS: worker produced no result (exit code 1)" + ], + "has_log": true, + "ok": false, + "score": null, + "scores": [], + "selected": null + }, + "completed_at": "2026-09-12T12:25:08Z", + "confirmation": null, + "delta_pct": null, + "id": "9a259f9c6c5ee751", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "36549f1196eb837f3109ffb1910f0601de2e4277", + "official_parameters": true, + "tank_royale_commit": "a553d8069e3f67e8711f0a3e976c339f389faec8", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": null, + "division": "roborumble", + "jar": "ers.nano.ISuck.ISuckNano_0.1d.jar", + "jar_sha256": "46ad64fe7cf88730cff95ded053d36c3bf63476045cb705b899c72fc5887c3ee", + "key": "roborumble/ers.nano.ISuck.ISuckNano_0.1d.jar", + "kind": "robot" + }, + "status": "MATCHED (failure)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 0.3, + "error_count": 1, + "error_signatures": [], + "errors": [ + "HARNESS: worker produced no result (exit code 1)" + ], + "has_log": true, + "ok": false, + "score": null, + "scores": [], + "skipped": null + } + } + ], + "status": "MATCHED (failure)" + }, + "roborumble/ers.nano.Lig.LigMA_1.0.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": null, + "division": "roborumble", + "jar": "ers.nano.Lig.LigMA_1.0.jar", + "jar_sha256": "ed0a58182b4fac5a66414e82669526ac0bd2dda71c9dbf5f62d7ad859f000295", + "key": "roborumble/ers.nano.Lig.LigMA_1.0.jar", + "kind": "robot" + }, + "latest_observation": "43759291daa44c50", + "observations": [ + { + "classic": { + "elapsed": 0.3, + "error_count": 1, + "error_signatures": [], + "errors": [ + "HARNESS: worker produced no result (exit code 1)" + ], + "has_log": true, + "ok": false, + "score": null, + "scores": [], + "selected": null + }, + "completed_at": "2026-09-12T12:25:09Z", + "confirmation": null, + "delta_pct": null, + "id": "43759291daa44c50", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "36549f1196eb837f3109ffb1910f0601de2e4277", + "official_parameters": true, + "tank_royale_commit": "a553d8069e3f67e8711f0a3e976c339f389faec8", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": null, + "division": "roborumble", + "jar": "ers.nano.Lig.LigMA_1.0.jar", + "jar_sha256": "ed0a58182b4fac5a66414e82669526ac0bd2dda71c9dbf5f62d7ad859f000295", + "key": "roborumble/ers.nano.Lig.LigMA_1.0.jar", + "kind": "robot" + }, + "status": "MATCHED (failure)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 0.4, + "error_count": 1, + "error_signatures": [], + "errors": [ + "HARNESS: worker produced no result (exit code 1)" + ], + "has_log": true, + "ok": false, + "score": null, + "scores": [], + "skipped": null + } + } + ], + "status": "MATCHED (failure)" + }, + "roborumble/ers.nano.Meroka.Meroka_1.1.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": null, + "division": "roborumble", + "jar": "ers.nano.Meroka.Meroka_1.1.jar", + "jar_sha256": "bfd54db1c05dcbc4513fc52424d6ef5e2b65fa950f173affda8841dad148a3d6", + "key": "roborumble/ers.nano.Meroka.Meroka_1.1.jar", + "kind": "robot" + }, + "latest_observation": "e6622eb45701b731", + "observations": [ + { + "classic": { + "elapsed": 0.3, + "error_count": 1, + "error_signatures": [], + "errors": [ + "HARNESS: worker produced no result (exit code 1)" + ], + "has_log": true, + "ok": false, + "score": null, + "scores": [], + "selected": null + }, + "completed_at": "2026-09-12T12:25:10Z", + "confirmation": null, + "delta_pct": null, + "id": "e6622eb45701b731", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "36549f1196eb837f3109ffb1910f0601de2e4277", + "official_parameters": true, + "tank_royale_commit": "a553d8069e3f67e8711f0a3e976c339f389faec8", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": null, + "division": "roborumble", + "jar": "ers.nano.Meroka.Meroka_1.1.jar", + "jar_sha256": "bfd54db1c05dcbc4513fc52424d6ef5e2b65fa950f173affda8841dad148a3d6", + "key": "roborumble/ers.nano.Meroka.Meroka_1.1.jar", + "kind": "robot" + }, + "status": "MATCHED (failure)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 0.3, + "error_count": 1, + "error_signatures": [], + "errors": [ + "HARNESS: worker produced no result (exit code 1)" + ], + "has_log": true, + "ok": false, + "score": null, + "scores": [], + "skipped": null + } + } + ], + "status": "MATCHED (failure)" + }, + "roborumble/ers.nano.Sugma.SugmaVCS_1.1.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": null, + "division": "roborumble", + "jar": "ers.nano.Sugma.SugmaVCS_1.1.jar", + "jar_sha256": "4353cd2ac026c8a93750a0656aa15c4d52676bb0489bd88eec3facbb6e3ee589", + "key": "roborumble/ers.nano.Sugma.SugmaVCS_1.1.jar", + "kind": "robot" + }, + "latest_observation": "b4e347e3240cad13", + "observations": [ + { + "classic": { + "elapsed": 0.3, + "error_count": 1, + "error_signatures": [], + "errors": [ + "HARNESS: worker produced no result (exit code 1)" + ], + "has_log": true, + "ok": false, + "score": null, + "scores": [], + "selected": null + }, + "completed_at": "2026-09-12T12:25:11Z", + "confirmation": null, + "delta_pct": null, + "id": "b4e347e3240cad13", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "36549f1196eb837f3109ffb1910f0601de2e4277", + "official_parameters": true, + "tank_royale_commit": "a553d8069e3f67e8711f0a3e976c339f389faec8", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": null, + "division": "roborumble", + "jar": "ers.nano.Sugma.SugmaVCS_1.1.jar", + "jar_sha256": "4353cd2ac026c8a93750a0656aa15c4d52676bb0489bd88eec3facbb6e3ee589", + "key": "roborumble/ers.nano.Sugma.SugmaVCS_1.1.jar", + "kind": "robot" + }, + "status": "MATCHED (failure)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 0.3, + "error_count": 1, + "error_signatures": [], + "errors": [ + "HARNESS: worker produced no result (exit code 1)" + ], + "has_log": true, + "ok": false, + "score": null, + "scores": [], + "skipped": null + } + } + ], + "status": "MATCHED (failure)" + }, + "roborumble/ers.nano.Sunderer.Sunderer_1.2.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": null, + "division": "roborumble", + "jar": "ers.nano.Sunderer.Sunderer_1.2.jar", + "jar_sha256": "a1ab78ddb2f0bc046276fbed5fd2d0d11c11bbf59e3825f8d9f04edc3eb11e2c", + "key": "roborumble/ers.nano.Sunderer.Sunderer_1.2.jar", + "kind": "robot" + }, + "latest_observation": "f5bdc5d5a7662f77", + "observations": [ + { + "classic": { + "elapsed": 0.3, + "error_count": 1, + "error_signatures": [], + "errors": [ + "HARNESS: worker produced no result (exit code 1)" + ], + "has_log": true, + "ok": false, + "score": null, + "scores": [], + "selected": null + }, + "completed_at": "2026-09-12T12:25:12Z", + "confirmation": null, + "delta_pct": null, + "id": "f5bdc5d5a7662f77", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "36549f1196eb837f3109ffb1910f0601de2e4277", + "official_parameters": true, + "tank_royale_commit": "a553d8069e3f67e8711f0a3e976c339f389faec8", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": null, + "division": "roborumble", + "jar": "ers.nano.Sunderer.Sunderer_1.2.jar", + "jar_sha256": "a1ab78ddb2f0bc046276fbed5fd2d0d11c11bbf59e3825f8d9f04edc3eb11e2c", + "key": "roborumble/ers.nano.Sunderer.Sunderer_1.2.jar", + "kind": "robot" + }, + "status": "MATCHED (failure)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 0.3, + "error_count": 1, + "error_signatures": [], + "errors": [ + "HARNESS: worker produced no result (exit code 1)" + ], + "has_log": true, + "ok": false, + "score": null, + "scores": [], + "skipped": null + } + } + ], + "status": "MATCHED (failure)" + }, + "roborumble/eskimo.micro.Echo_0.1.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": null, + "division": "roborumble", + "jar": "eskimo.micro.Echo_0.1.jar", + "jar_sha256": "4c1d2831c25bdc0d93cbf3a16eef99e54284f753ca6c172a89eaa5740ac62dd1", + "key": "roborumble/eskimo.micro.Echo_0.1.jar", + "kind": "robot" + }, + "latest_observation": "fd95d2feff3f2fea", + "observations": [ + { + "classic": { + "elapsed": 0.3, + "error_count": 1, + "error_signatures": [], + "errors": [ + "HARNESS: worker produced no result (exit code 1)" + ], + "has_log": true, + "ok": false, + "score": null, + "scores": [], + "selected": null + }, + "completed_at": "2026-09-12T12:25:13Z", + "confirmation": null, + "delta_pct": null, + "id": "fd95d2feff3f2fea", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "36549f1196eb837f3109ffb1910f0601de2e4277", + "official_parameters": true, + "tank_royale_commit": "a553d8069e3f67e8711f0a3e976c339f389faec8", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": null, + "division": "roborumble", + "jar": "eskimo.micro.Echo_0.1.jar", + "jar_sha256": "4c1d2831c25bdc0d93cbf3a16eef99e54284f753ca6c172a89eaa5740ac62dd1", + "key": "roborumble/eskimo.micro.Echo_0.1.jar", + "kind": "robot" + }, + "status": "MATCHED (failure)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 0.3, + "error_count": 1, + "error_signatures": [], + "errors": [ + "HARNESS: worker produced no result (exit code 1)" + ], + "has_log": true, + "ok": false, + "score": null, + "scores": [], + "skipped": null + } + } + ], + "status": "MATCHED (failure)" + }, + "roborumble/et.Predator_1.8.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": null, + "division": "roborumble", + "jar": "et.Predator_1.8.jar", + "jar_sha256": "458844ceb2fa5a3168332f2366312be72b1e09d6154f07939f01b6205fb097ad", + "key": "roborumble/et.Predator_1.8.jar", + "kind": "robot" + }, + "latest_observation": "875e0d05d23208c4", + "observations": [ + { + "classic": { + "elapsed": 0.3, + "error_count": 1, + "error_signatures": [], + "errors": [ + "HARNESS: worker produced no result (exit code 1)" + ], + "has_log": true, + "ok": false, + "score": null, + "scores": [], + "selected": null + }, + "completed_at": "2026-09-12T12:25:14Z", + "confirmation": null, + "delta_pct": null, + "id": "875e0d05d23208c4", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "36549f1196eb837f3109ffb1910f0601de2e4277", + "official_parameters": true, + "tank_royale_commit": "a553d8069e3f67e8711f0a3e976c339f389faec8", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": null, + "division": "roborumble", + "jar": "et.Predator_1.8.jar", + "jar_sha256": "458844ceb2fa5a3168332f2366312be72b1e09d6154f07939f01b6205fb097ad", + "key": "roborumble/et.Predator_1.8.jar", + "kind": "robot" + }, + "status": "MATCHED (failure)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 0.3, + "error_count": 1, + "error_signatures": [], + "errors": [ + "HARNESS: worker produced no result (exit code 1)" + ], + "has_log": true, + "ok": false, + "score": null, + "scores": [], + "skipped": null + } + } + ], + "status": "MATCHED (failure)" + }, + "roborumble/ethdsy.Malacka_2.4.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": null, + "division": "roborumble", + "jar": "ethdsy.Malacka_2.4.jar", + "jar_sha256": "1a30870540252df41dbbfbea609dfb0d13c89392b099237a7ac9951ef38862f6", + "key": "roborumble/ethdsy.Malacka_2.4.jar", + "kind": "robot" + }, + "latest_observation": "986386c9abd2263c", + "observations": [ + { + "classic": { + "elapsed": 0.3, + "error_count": 1, + "error_signatures": [], + "errors": [ + "HARNESS: worker produced no result (exit code 1)" + ], + "has_log": true, + "ok": false, + "score": null, + "scores": [], + "selected": null + }, + "completed_at": "2026-09-12T12:25:15Z", + "confirmation": null, + "delta_pct": null, + "id": "986386c9abd2263c", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "36549f1196eb837f3109ffb1910f0601de2e4277", + "official_parameters": true, + "tank_royale_commit": "a553d8069e3f67e8711f0a3e976c339f389faec8", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": null, + "division": "roborumble", + "jar": "ethdsy.Malacka_2.4.jar", + "jar_sha256": "1a30870540252df41dbbfbea609dfb0d13c89392b099237a7ac9951ef38862f6", + "key": "roborumble/ethdsy.Malacka_2.4.jar", + "kind": "robot" + }, + "status": "MATCHED (failure)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 0.3, + "error_count": 1, + "error_signatures": [], + "errors": [ + "HARNESS: worker produced no result (exit code 1)" + ], + "has_log": true, + "ok": false, + "score": null, + "scores": [], + "skipped": null + } + } + ], + "status": "MATCHED (failure)" + }, + "roborumble/etienne72230.Wall_street_1.0.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": null, + "division": "roborumble", + "jar": "etienne72230.Wall_street_1.0.jar", + "jar_sha256": "7a65c7c43682d4b8e1c946e168647e36e571ab87b02df56100c30c54750547b0", + "key": "roborumble/etienne72230.Wall_street_1.0.jar", + "kind": "robot" + }, + "latest_observation": "42eebf58778f64fb", + "observations": [ + { + "classic": { + "elapsed": 0.3, + "error_count": 1, + "error_signatures": [], + "errors": [ + "HARNESS: worker produced no result (exit code 1)" + ], + "has_log": true, + "ok": false, + "score": null, + "scores": [], + "selected": null + }, + "completed_at": "2026-09-12T12:25:15Z", + "confirmation": null, + "delta_pct": null, + "id": "42eebf58778f64fb", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "36549f1196eb837f3109ffb1910f0601de2e4277", + "official_parameters": true, + "tank_royale_commit": "a553d8069e3f67e8711f0a3e976c339f389faec8", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": null, + "division": "roborumble", + "jar": "etienne72230.Wall_street_1.0.jar", + "jar_sha256": "7a65c7c43682d4b8e1c946e168647e36e571ab87b02df56100c30c54750547b0", + "key": "roborumble/etienne72230.Wall_street_1.0.jar", + "kind": "robot" + }, + "status": "MATCHED (failure)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 0.3, + "error_count": 1, + "error_signatures": [], + "errors": [ + "HARNESS: worker produced no result (exit code 1)" + ], + "has_log": true, + "ok": false, + "score": null, + "scores": [], + "skipped": null + } + } + ], + "status": "MATCHED (failure)" + }, + "roborumble/evd.X1_0.01.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": null, + "division": "roborumble", + "jar": "evd.X1_0.01.jar", + "jar_sha256": "42e884cd77fdb5ffb4e8cf03a5f0dfbbe4e62838105bcdb393046d2f467fadc9", + "key": "roborumble/evd.X1_0.01.jar", + "kind": "robot" + }, + "latest_observation": "06854d9dbad423a8", + "observations": [ + { + "classic": { + "elapsed": 0.3, + "error_count": 1, + "error_signatures": [], + "errors": [ + "HARNESS: worker produced no result (exit code 1)" + ], + "has_log": true, + "ok": false, + "score": null, + "scores": [], + "selected": null + }, + "completed_at": "2026-09-12T12:25:16Z", + "confirmation": null, + "delta_pct": null, + "id": "06854d9dbad423a8", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "36549f1196eb837f3109ffb1910f0601de2e4277", + "official_parameters": true, + "tank_royale_commit": "a553d8069e3f67e8711f0a3e976c339f389faec8", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": null, + "division": "roborumble", + "jar": "evd.X1_0.01.jar", + "jar_sha256": "42e884cd77fdb5ffb4e8cf03a5f0dfbbe4e62838105bcdb393046d2f467fadc9", + "key": "roborumble/evd.X1_0.01.jar", + "kind": "robot" + }, + "status": "MATCHED (failure)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 0.3, + "error_count": 1, + "error_signatures": [], + "errors": [ + "HARNESS: worker produced no result (exit code 1)" + ], + "has_log": true, + "ok": false, + "score": null, + "scores": [], + "skipped": null + } + } + ], + "status": "MATCHED (failure)" + }, + "roborumble/exauge.GateKeeper_1.1.121g.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": null, + "division": "roborumble", + "jar": "exauge.GateKeeper_1.1.121g.jar", + "jar_sha256": "8182972e69dabac47f6c553a3380c862012f560bc85943afd071758f61e05546", + "key": "roborumble/exauge.GateKeeper_1.1.121g.jar", + "kind": "robot" + }, + "latest_observation": "f4cfae2f888eb716", + "observations": [ + { + "classic": { + "elapsed": 0.3, + "error_count": 1, + "error_signatures": [], + "errors": [ + "HARNESS: worker produced no result (exit code 1)" + ], + "has_log": true, + "ok": false, + "score": null, + "scores": [], + "selected": null + }, + "completed_at": "2026-09-12T12:25:18Z", + "confirmation": null, + "delta_pct": null, + "id": "f4cfae2f888eb716", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "36549f1196eb837f3109ffb1910f0601de2e4277", + "official_parameters": true, + "tank_royale_commit": "a553d8069e3f67e8711f0a3e976c339f389faec8", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": null, + "division": "roborumble", + "jar": "exauge.GateKeeper_1.1.121g.jar", + "jar_sha256": "8182972e69dabac47f6c553a3380c862012f560bc85943afd071758f61e05546", + "key": "roborumble/exauge.GateKeeper_1.1.121g.jar", + "kind": "robot" + }, + "status": "MATCHED (failure)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 0.3, + "error_count": 1, + "error_signatures": [], + "errors": [ + "HARNESS: worker produced no result (exit code 1)" + ], + "has_log": true, + "ok": false, + "score": null, + "scores": [], + "skipped": null + } + } + ], + "status": "MATCHED (failure)" + }, + "roborumble/exauge.LemonDrop_1.6.130.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": null, + "division": "roborumble", + "jar": "exauge.LemonDrop_1.6.130.jar", + "jar_sha256": "18e05f4f410398ec63df7f1c477e293576ecc803bf9d774de65e356f0ceda3fa", + "key": "roborumble/exauge.LemonDrop_1.6.130.jar", + "kind": "robot" + }, + "latest_observation": "86d70443e0197c47", + "observations": [ + { + "classic": { + "elapsed": 0.3, + "error_count": 1, + "error_signatures": [], + "errors": [ + "HARNESS: worker produced no result (exit code 1)" + ], + "has_log": true, + "ok": false, + "score": null, + "scores": [], + "selected": null + }, + "completed_at": "2026-09-12T12:25:19Z", + "confirmation": null, + "delta_pct": null, + "id": "86d70443e0197c47", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "36549f1196eb837f3109ffb1910f0601de2e4277", + "official_parameters": true, + "tank_royale_commit": "a553d8069e3f67e8711f0a3e976c339f389faec8", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": null, + "division": "roborumble", + "jar": "exauge.LemonDrop_1.6.130.jar", + "jar_sha256": "18e05f4f410398ec63df7f1c477e293576ecc803bf9d774de65e356f0ceda3fa", + "key": "roborumble/exauge.LemonDrop_1.6.130.jar", + "kind": "robot" + }, + "status": "MATCHED (failure)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 0.3, + "error_count": 1, + "error_signatures": [], + "errors": [ + "HARNESS: worker produced no result (exit code 1)" + ], + "has_log": true, + "ok": false, + "score": null, + "scores": [], + "skipped": null + } + } + ], + "status": "MATCHED (failure)" + }, + "roborumble/exauge.Leopard_1.1.019.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": null, + "division": "roborumble", + "jar": "exauge.Leopard_1.1.019.jar", + "jar_sha256": "2903814ff8d9a451c7366f77668031fc85617550ba8d3443fae959415be4fc02", + "key": "roborumble/exauge.Leopard_1.1.019.jar", + "kind": "robot" + }, + "latest_observation": "d67bbe47d65abd53", + "observations": [ + { + "classic": { + "elapsed": 0.3, + "error_count": 1, + "error_signatures": [], + "errors": [ + "HARNESS: worker produced no result (exit code 1)" + ], + "has_log": true, + "ok": false, + "score": null, + "scores": [], + "selected": null + }, + "completed_at": "2026-09-12T12:25:20Z", + "confirmation": null, + "delta_pct": null, + "id": "d67bbe47d65abd53", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "36549f1196eb837f3109ffb1910f0601de2e4277", + "official_parameters": true, + "tank_royale_commit": "a553d8069e3f67e8711f0a3e976c339f389faec8", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": null, + "division": "roborumble", + "jar": "exauge.Leopard_1.1.019.jar", + "jar_sha256": "2903814ff8d9a451c7366f77668031fc85617550ba8d3443fae959415be4fc02", + "key": "roborumble/exauge.Leopard_1.1.019.jar", + "kind": "robot" + }, + "status": "MATCHED (failure)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 0.3, + "error_count": 1, + "error_signatures": [], + "errors": [ + "HARNESS: worker produced no result (exit code 1)" + ], + "has_log": true, + "ok": false, + "score": null, + "scores": [], + "skipped": null + } + } + ], + "status": "MATCHED (failure)" + }, + "roborumble/extra.LightSauce_0.01.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": null, + "division": "roborumble", + "jar": "extra.LightSauce_0.01.jar", + "jar_sha256": "9540d6c64db982537d38ed71d1c57026728bda4691e51c597bce8130995054a9", + "key": "roborumble/extra.LightSauce_0.01.jar", + "kind": "robot" + }, + "latest_observation": "e5c9ee7cfeed3b07", + "observations": [ + { + "classic": { + "elapsed": 0.3, + "error_count": 1, + "error_signatures": [], + "errors": [ + "HARNESS: worker produced no result (exit code 1)" + ], + "has_log": true, + "ok": false, + "score": null, + "scores": [], + "selected": null + }, + "completed_at": "2026-09-12T12:25:21Z", + "confirmation": null, + "delta_pct": null, + "id": "e5c9ee7cfeed3b07", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "36549f1196eb837f3109ffb1910f0601de2e4277", + "official_parameters": true, + "tank_royale_commit": "a553d8069e3f67e8711f0a3e976c339f389faec8", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": null, + "division": "roborumble", + "jar": "extra.LightSauce_0.01.jar", + "jar_sha256": "9540d6c64db982537d38ed71d1c57026728bda4691e51c597bce8130995054a9", + "key": "roborumble/extra.LightSauce_0.01.jar", + "kind": "robot" + }, + "status": "MATCHED (failure)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 0.3, + "error_count": 1, + "error_signatures": [], + "errors": [ + "HARNESS: worker produced no result (exit code 1)" + ], + "has_log": true, + "ok": false, + "score": null, + "scores": [], + "skipped": null + } + } + ], + "status": "MATCHED (failure)" + }, + "roborumble/extra.Sauce_.01.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": null, + "division": "roborumble", + "jar": "extra.Sauce_.01.jar", + "jar_sha256": "beb3dbb662e9df61a292c11d4cb11b4631c96a9d88d7d3e98c7d97a51f2b3cdf", + "key": "roborumble/extra.Sauce_.01.jar", + "kind": "robot" + }, + "latest_observation": "7b2918a07def466d", + "observations": [ + { + "classic": { + "elapsed": 0.3, + "error_count": 1, + "error_signatures": [], + "errors": [ + "HARNESS: worker produced no result (exit code 1)" + ], + "has_log": true, + "ok": false, + "score": null, + "scores": [], + "selected": null + }, + "completed_at": "2026-09-12T12:25:22Z", + "confirmation": null, + "delta_pct": null, + "id": "7b2918a07def466d", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "36549f1196eb837f3109ffb1910f0601de2e4277", + "official_parameters": true, + "tank_royale_commit": "a553d8069e3f67e8711f0a3e976c339f389faec8", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": null, + "division": "roborumble", + "jar": "extra.Sauce_.01.jar", + "jar_sha256": "beb3dbb662e9df61a292c11d4cb11b4631c96a9d88d7d3e98c7d97a51f2b3cdf", + "key": "roborumble/extra.Sauce_.01.jar", + "kind": "robot" + }, + "status": "MATCHED (failure)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 0.3, + "error_count": 1, + "error_signatures": [], + "errors": [ + "HARNESS: worker produced no result (exit code 1)" + ], + "has_log": true, + "ok": false, + "score": null, + "scores": [], + "skipped": null + } + } + ], + "status": "MATCHED (failure)" + }, + "roborumble/fala.robocode.FalaRobot_1.0.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": null, + "division": "roborumble", + "jar": "fala.robocode.FalaRobot_1.0.jar", + "jar_sha256": "0938d195a935b557117cdf409e55818ae6c2ef014711b7dd83a66b1f3d37ad86", + "key": "roborumble/fala.robocode.FalaRobot_1.0.jar", + "kind": "robot" + }, + "latest_observation": "29a5601892a26834", + "observations": [ + { + "classic": { + "elapsed": 0.3, + "error_count": 1, + "error_signatures": [], + "errors": [ + "HARNESS: worker produced no result (exit code 1)" + ], + "has_log": true, + "ok": false, + "score": null, + "scores": [], + "selected": null + }, + "completed_at": "2026-09-12T12:25:23Z", + "confirmation": null, + "delta_pct": null, + "id": "29a5601892a26834", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "36549f1196eb837f3109ffb1910f0601de2e4277", + "official_parameters": true, + "tank_royale_commit": "a553d8069e3f67e8711f0a3e976c339f389faec8", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": null, + "division": "roborumble", + "jar": "fala.robocode.FalaRobot_1.0.jar", + "jar_sha256": "0938d195a935b557117cdf409e55818ae6c2ef014711b7dd83a66b1f3d37ad86", + "key": "roborumble/fala.robocode.FalaRobot_1.0.jar", + "kind": "robot" + }, + "status": "MATCHED (failure)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 0.3, + "error_count": 1, + "error_signatures": [], + "errors": [ + "HARNESS: worker produced no result (exit code 1)" + ], + "has_log": true, + "ok": false, + "score": null, + "scores": [], + "skipped": null + } + } + ], + "status": "MATCHED (failure)" + }, + "roborumble/fcr.First_1.0.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": null, + "division": "roborumble", + "jar": "fcr.First_1.0.jar", + "jar_sha256": "e3dde02826b982ba43c4ff85ae57b17c14d5ac034cc2c250159e17cf427bce16", + "key": "roborumble/fcr.First_1.0.jar", + "kind": "robot" + }, + "latest_observation": "8db47e2d9d62a27b", + "observations": [ + { + "classic": { + "elapsed": 0.3, + "error_count": 1, + "error_signatures": [], + "errors": [ + "HARNESS: worker produced no result (exit code 1)" + ], + "has_log": true, + "ok": false, + "score": null, + "scores": [], + "selected": null + }, + "completed_at": "2026-09-12T12:25:24Z", + "confirmation": null, + "delta_pct": null, + "id": "8db47e2d9d62a27b", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "36549f1196eb837f3109ffb1910f0601de2e4277", + "official_parameters": true, + "tank_royale_commit": "a553d8069e3f67e8711f0a3e976c339f389faec8", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": null, + "division": "roborumble", + "jar": "fcr.First_1.0.jar", + "jar_sha256": "e3dde02826b982ba43c4ff85ae57b17c14d5ac034cc2c250159e17cf427bce16", + "key": "roborumble/fcr.First_1.0.jar", + "kind": "robot" + }, + "status": "MATCHED (failure)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 0.3, + "error_count": 1, + "error_signatures": [], + "errors": [ + "HARNESS: worker produced no result (exit code 1)" + ], + "has_log": true, + "ok": false, + "score": null, + "scores": [], + "skipped": null + } + } + ], + "status": "MATCHED (failure)" + }, + "roborumble/fire219.CatBot_1.0.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": null, + "division": "roborumble", + "jar": "fire219.CatBot_1.0.jar", + "jar_sha256": "c2ff5385c65f8753974d23fac4ec8d00aa793f5c5a9ace2f53e6bcce07259a27", + "key": "roborumble/fire219.CatBot_1.0.jar", + "kind": "robot" + }, + "latest_observation": "36add8be7ffef313", + "observations": [ + { + "classic": { + "elapsed": 0.3, + "error_count": 1, + "error_signatures": [], + "errors": [ + "HARNESS: worker produced no result (exit code 1)" + ], + "has_log": true, + "ok": false, + "score": null, + "scores": [], + "selected": null + }, + "completed_at": "2026-09-12T12:25:26Z", + "confirmation": null, + "delta_pct": null, + "id": "36add8be7ffef313", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "36549f1196eb837f3109ffb1910f0601de2e4277", + "official_parameters": true, + "tank_royale_commit": "a553d8069e3f67e8711f0a3e976c339f389faec8", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": null, + "division": "roborumble", + "jar": "fire219.CatBot_1.0.jar", + "jar_sha256": "c2ff5385c65f8753974d23fac4ec8d00aa793f5c5a9ace2f53e6bcce07259a27", + "key": "roborumble/fire219.CatBot_1.0.jar", + "kind": "robot" + }, + "status": "MATCHED (failure)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 0.3, + "error_count": 1, + "error_signatures": [], + "errors": [ + "HARNESS: worker produced no result (exit code 1)" + ], + "has_log": true, + "ok": false, + "score": null, + "scores": [], + "skipped": null + } + } + ], + "status": "MATCHED (failure)" + }, + "roborumble/fire219.cymba.Cymba_1.8.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": null, + "division": "roborumble", + "jar": "fire219.cymba.Cymba_1.8.jar", + "jar_sha256": "9f87827b45523d9b00768c3b943aa91787fac79428d936597aef868d8faaedb8", + "key": "roborumble/fire219.cymba.Cymba_1.8.jar", + "kind": "robot" + }, + "latest_observation": "131ec84edafe270b", + "observations": [ + { + "classic": { + "elapsed": 0.3, + "error_count": 1, + "error_signatures": [], + "errors": [ + "HARNESS: worker produced no result (exit code 1)" + ], + "has_log": true, + "ok": false, + "score": null, + "scores": [], + "selected": null + }, + "completed_at": "2026-09-12T12:25:27Z", + "confirmation": null, + "delta_pct": null, + "id": "131ec84edafe270b", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "36549f1196eb837f3109ffb1910f0601de2e4277", + "official_parameters": true, + "tank_royale_commit": "a553d8069e3f67e8711f0a3e976c339f389faec8", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": null, + "division": "roborumble", + "jar": "fire219.cymba.Cymba_1.8.jar", + "jar_sha256": "9f87827b45523d9b00768c3b943aa91787fac79428d936597aef868d8faaedb8", + "key": "roborumble/fire219.cymba.Cymba_1.8.jar", + "kind": "robot" + }, + "status": "MATCHED (failure)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 0.3, + "error_count": 1, + "error_signatures": [], + "errors": [ + "HARNESS: worker produced no result (exit code 1)" + ], + "has_log": true, + "ok": false, + "score": null, + "scores": [], + "skipped": null + } + } + ], + "status": "MATCHED (failure)" + }, + "roborumble/florent.FloatingTadpole_1.2.6.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": null, + "division": "roborumble", + "jar": "florent.FloatingTadpole_1.2.6.jar", + "jar_sha256": "bad9d78a6a40ff6b76811db665a93cfc0b2755a8ba08abe146bdedbbe1503573", + "key": "roborumble/florent.FloatingTadpole_1.2.6.jar", + "kind": "robot" + }, + "latest_observation": "82b4ce7fc5742beb", + "observations": [ + { + "classic": { + "elapsed": 0.3, + "error_count": 1, + "error_signatures": [], + "errors": [ + "HARNESS: worker produced no result (exit code 1)" + ], + "has_log": true, + "ok": false, + "score": null, + "scores": [], + "selected": null + }, + "completed_at": "2026-09-12T12:25:28Z", + "confirmation": null, + "delta_pct": null, + "id": "82b4ce7fc5742beb", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "36549f1196eb837f3109ffb1910f0601de2e4277", + "official_parameters": true, + "tank_royale_commit": "a553d8069e3f67e8711f0a3e976c339f389faec8", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": null, + "division": "roborumble", + "jar": "florent.FloatingTadpole_1.2.6.jar", + "jar_sha256": "bad9d78a6a40ff6b76811db665a93cfc0b2755a8ba08abe146bdedbbe1503573", + "key": "roborumble/florent.FloatingTadpole_1.2.6.jar", + "kind": "robot" + }, + "status": "MATCHED (failure)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 0.3, + "error_count": 1, + "error_signatures": [], + "errors": [ + "HARNESS: worker produced no result (exit code 1)" + ], + "has_log": true, + "ok": false, + "score": null, + "scores": [], + "skipped": null + } + } + ], + "status": "MATCHED (failure)" + }, + "roborumble/florent.XSeries.X2_0.17.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": null, + "division": "roborumble", + "jar": "florent.XSeries.X2_0.17.jar", + "jar_sha256": "487a23bb75738704e8ec474a3f83873803dc96ff33105642d9e9d7ef761711ec", + "key": "roborumble/florent.XSeries.X2_0.17.jar", + "kind": "robot" + }, + "latest_observation": "c9a80321ef9eab53", + "observations": [ + { + "classic": { + "elapsed": 0.3, + "error_count": 1, + "error_signatures": [], + "errors": [ + "HARNESS: worker produced no result (exit code 1)" + ], + "has_log": true, + "ok": false, + "score": null, + "scores": [], + "selected": null + }, + "completed_at": "2026-09-12T12:25:51Z", + "confirmation": null, + "delta_pct": null, + "id": "c9a80321ef9eab53", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "7f69420cb5157bc945ae58f4130e0a550cfabb22", + "official_parameters": true, + "tank_royale_commit": "a553d8069e3f67e8711f0a3e976c339f389faec8", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": null, + "division": "roborumble", + "jar": "florent.XSeries.X2_0.17.jar", + "jar_sha256": "487a23bb75738704e8ec474a3f83873803dc96ff33105642d9e9d7ef761711ec", + "key": "roborumble/florent.XSeries.X2_0.17.jar", + "kind": "robot" + }, + "status": "MATCHED (failure)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 0.3, + "error_count": 1, + "error_signatures": [], + "errors": [ + "HARNESS: worker produced no result (exit code 1)" + ], + "has_log": true, + "ok": false, + "score": null, + "scores": [], + "skipped": null + } + } + ], + "status": "MATCHED (failure)" + }, + "roborumble/florent.small.LittleAngel_1.8.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": null, + "division": "roborumble", + "jar": "florent.small.LittleAngel_1.8.jar", + "jar_sha256": "9dff2b2cb39fa54f0ab5b30a891f53005ef1a127e859963a4c40f3e42c24e6d5", + "key": "roborumble/florent.small.LittleAngel_1.8.jar", + "kind": "robot" + }, + "latest_observation": "3f8326a84f0bd900", + "observations": [ + { + "classic": { + "elapsed": 0.3, + "error_count": 1, + "error_signatures": [], + "errors": [ + "HARNESS: worker produced no result (exit code 1)" + ], + "has_log": true, + "ok": false, + "score": null, + "scores": [], + "selected": null + }, + "completed_at": "2026-09-12T12:25:49Z", + "confirmation": null, + "delta_pct": null, + "id": "fea0c1217f809175", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "7f69420cb5157bc945ae58f4130e0a550cfabb22", + "official_parameters": true, + "tank_royale_commit": "a553d8069e3f67e8711f0a3e976c339f389faec8", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": null, + "division": "roborumble", + "jar": "florent.small.LittleAngel_1.8.jar", + "jar_sha256": "9dff2b2cb39fa54f0ab5b30a891f53005ef1a127e859963a4c40f3e42c24e6d5", + "key": "roborumble/florent.small.LittleAngel_1.8.jar", + "kind": "robot" + }, + "status": "MATCHED (failure)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 0.3, + "error_count": 1, + "error_signatures": [], + "errors": [ + "HARNESS: worker produced no result (exit code 1)" + ], + "has_log": true, + "ok": false, + "score": null, + "scores": [], + "skipped": null + } + }, + { + "classic": { + "elapsed": 42.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 0.0, + "scores": [ + 0.0, + 0.0 + ], + "selected": "florent.small.LittleAngel 1.8" + }, + "completed_at": "2026-09-12T12:30:42Z", + "confirmation": null, + "delta_pct": null, + "id": "3f8326a84f0bd900", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "7a4932b0b5779837485900a5f41b71026fc2e6f9", + "official_parameters": true, + "tank_royale_commit": "a553d8069e3f67e8711f0a3e976c339f389faec8", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "florent.small.LittleAngel 1.8", + "division": "roborumble", + "jar": "florent.small.LittleAngel_1.8.jar", + "jar_sha256": "9dff2b2cb39fa54f0ab5b30a891f53005ef1a127e859963a4c40f3e42c24e6d5", + "key": "roborumble/florent.small.LittleAngel_1.8.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (no score)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 34.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 4109.0, + "scores": [ + 2525.0, + 1584.0 + ], + "skipped": null + } + } + ], + "status": "DISCREPANCY (no score)" + }, + "roborumble/florent.test.Toad_0.14t.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": null, + "division": "roborumble", + "jar": "florent.test.Toad_0.14t.jar", + "jar_sha256": "4290f8a075c9990dca1e9b824746404d4ac67dd61bd741d1832516e6b321b6ef", + "key": "roborumble/florent.test.Toad_0.14t.jar", + "kind": "robot" + }, + "latest_observation": "13e6e0cdc1395289", + "observations": [ + { + "classic": { + "elapsed": 0.3, + "error_count": 1, + "error_signatures": [], + "errors": [ + "HARNESS: worker produced no result (exit code 1)" + ], + "has_log": true, + "ok": false, + "score": null, + "scores": [], + "selected": null + }, + "completed_at": "2026-09-12T12:25:50Z", + "confirmation": null, + "delta_pct": null, + "id": "13e6e0cdc1395289", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "7f69420cb5157bc945ae58f4130e0a550cfabb22", + "official_parameters": true, + "tank_royale_commit": "a553d8069e3f67e8711f0a3e976c339f389faec8", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": null, + "division": "roborumble", + "jar": "florent.test.Toad_0.14t.jar", + "jar_sha256": "4290f8a075c9990dca1e9b824746404d4ac67dd61bd741d1832516e6b321b6ef", + "key": "roborumble/florent.test.Toad_0.14t.jar", + "kind": "robot" + }, + "status": "MATCHED (failure)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 0.3, + "error_count": 1, + "error_signatures": [], + "errors": [ + "HARNESS: worker produced no result (exit code 1)" + ], + "has_log": true, + "ok": false, + "score": null, + "scores": [], + "skipped": null + } + } + ], + "status": "MATCHED (failure)" + }, + "roborumble/fm.claire_1.7.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": null, + "division": "roborumble", + "jar": "fm.claire_1.7.jar", + "jar_sha256": "2d5292434ffe998003e95a8b540e67e2aa9b1a6cea12c18c3391bd7df69cbb52", + "key": "roborumble/fm.claire_1.7.jar", + "kind": "robot" + }, + "latest_observation": "70de3507acc20c29", + "observations": [ + { + "classic": { + "elapsed": 0.3, + "error_count": 1, + "error_signatures": [], + "errors": [ + "HARNESS: worker produced no result (exit code 1)" + ], + "has_log": true, + "ok": false, + "score": null, + "scores": [], + "selected": null + }, + "completed_at": "2026-09-12T12:25:51Z", + "confirmation": null, + "delta_pct": null, + "id": "70de3507acc20c29", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "7f69420cb5157bc945ae58f4130e0a550cfabb22", + "official_parameters": true, + "tank_royale_commit": "a553d8069e3f67e8711f0a3e976c339f389faec8", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": null, + "division": "roborumble", + "jar": "fm.claire_1.7.jar", + "jar_sha256": "2d5292434ffe998003e95a8b540e67e2aa9b1a6cea12c18c3391bd7df69cbb52", + "key": "roborumble/fm.claire_1.7.jar", + "kind": "robot" + }, + "status": "MATCHED (failure)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 0.3, + "error_count": 1, + "error_signatures": [], + "errors": [ + "HARNESS: worker produced no result (exit code 1)" + ], + "has_log": true, + "ok": false, + "score": null, + "scores": [], + "skipped": null + } + } + ], + "status": "MATCHED (failure)" + }, + "roborumble/fm.mammillarias_1.3.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": null, + "division": "roborumble", + "jar": "fm.mammillarias_1.3.jar", + "jar_sha256": "ab31de3664df7140263e742d93149d8a42e48c36e512e80cf027a07ae6371057", + "key": "roborumble/fm.mammillarias_1.3.jar", + "kind": "robot" + }, + "latest_observation": "d0cd14dbbf73d88b", + "observations": [ + { + "classic": { + "elapsed": 0.3, + "error_count": 1, + "error_signatures": [], + "errors": [ + "HARNESS: worker produced no result (exit code 1)" + ], + "has_log": true, + "ok": false, + "score": null, + "scores": [], + "selected": null + }, + "completed_at": "2026-09-12T12:25:52Z", + "confirmation": null, + "delta_pct": null, + "id": "d0cd14dbbf73d88b", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "7f69420cb5157bc945ae58f4130e0a550cfabb22", + "official_parameters": true, + "tank_royale_commit": "a553d8069e3f67e8711f0a3e976c339f389faec8", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": null, + "division": "roborumble", + "jar": "fm.mammillarias_1.3.jar", + "jar_sha256": "ab31de3664df7140263e742d93149d8a42e48c36e512e80cf027a07ae6371057", + "key": "roborumble/fm.mammillarias_1.3.jar", + "kind": "robot" + }, + "status": "MATCHED (failure)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 0.3, + "error_count": 1, + "error_signatures": [], + "errors": [ + "HARNESS: worker produced no result (exit code 1)" + ], + "has_log": true, + "ok": false, + "score": null, + "scores": [], + "skipped": null + } + } + ], + "status": "MATCHED (failure)" + }, + "roborumble/fnc.bandit.Bandit_5.2.0.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": null, + "division": "roborumble", + "jar": "fnc.bandit.Bandit_5.2.0.jar", + "jar_sha256": "60d7454229680bb715078c06ae51b3814ba4f2d548f3c3356afc39b514a600b3", + "key": "roborumble/fnc.bandit.Bandit_5.2.0.jar", + "kind": "robot" + }, + "latest_observation": "1a80127f5f410c25", + "observations": [ + { + "classic": { + "elapsed": 0.3, + "error_count": 1, + "error_signatures": [], + "errors": [ + "HARNESS: worker produced no result (exit code 1)" + ], + "has_log": true, + "ok": false, + "score": null, + "scores": [], + "selected": null + }, + "completed_at": "2026-09-12T12:25:53Z", + "confirmation": null, + "delta_pct": null, + "id": "1a80127f5f410c25", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "7f69420cb5157bc945ae58f4130e0a550cfabb22", + "official_parameters": true, + "tank_royale_commit": "a553d8069e3f67e8711f0a3e976c339f389faec8", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": null, + "division": "roborumble", + "jar": "fnc.bandit.Bandit_5.2.0.jar", + "jar_sha256": "60d7454229680bb715078c06ae51b3814ba4f2d548f3c3356afc39b514a600b3", + "key": "roborumble/fnc.bandit.Bandit_5.2.0.jar", + "kind": "robot" + }, + "status": "MATCHED (failure)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 0.3, + "error_count": 1, + "error_signatures": [], + "errors": [ + "HARNESS: worker produced no result (exit code 1)" + ], + "has_log": true, + "ok": false, + "score": null, + "scores": [], + "skipped": null + } + } + ], + "status": "MATCHED (failure)" + }, + "roborumble/fnc.bandit2002.Bandit2002_4.0.2.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": null, + "division": "roborumble", + "jar": "fnc.bandit2002.Bandit2002_4.0.2.jar", + "jar_sha256": "992b401e4fce26dfdff21c756b25e1bb61c4e7fb6e1b84bba841fa52a9665e76", + "key": "roborumble/fnc.bandit2002.Bandit2002_4.0.2.jar", + "kind": "robot" + }, + "latest_observation": "18951e98762a9f79", + "observations": [ + { + "classic": { + "elapsed": 0.3, + "error_count": 1, + "error_signatures": [], + "errors": [ + "HARNESS: worker produced no result (exit code 1)" + ], + "has_log": true, + "ok": false, + "score": null, + "scores": [], + "selected": null + }, + "completed_at": "2026-09-12T12:25:54Z", + "confirmation": null, + "delta_pct": null, + "id": "18951e98762a9f79", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "7f69420cb5157bc945ae58f4130e0a550cfabb22", + "official_parameters": true, + "tank_royale_commit": "a553d8069e3f67e8711f0a3e976c339f389faec8", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": null, + "division": "roborumble", + "jar": "fnc.bandit2002.Bandit2002_4.0.2.jar", + "jar_sha256": "992b401e4fce26dfdff21c756b25e1bb61c4e7fb6e1b84bba841fa52a9665e76", + "key": "roborumble/fnc.bandit2002.Bandit2002_4.0.2.jar", + "kind": "robot" + }, + "status": "MATCHED (failure)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 0.3, + "error_count": 1, + "error_signatures": [], + "errors": [ + "HARNESS: worker produced no result (exit code 1)" + ], + "has_log": true, + "ok": false, + "score": null, + "scores": [], + "skipped": null + } + } + ], + "status": "MATCHED (failure)" + }, + "roborumble/frag.FragBot_1.0.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": null, + "division": "roborumble", + "jar": "frag.FragBot_1.0.jar", + "jar_sha256": "7f889f42ce9bb5f3cbe766729631635b2ef529c3d29f10d2cc01b6566e9cb416", + "key": "roborumble/frag.FragBot_1.0.jar", + "kind": "robot" + }, + "latest_observation": "47fa458493cbc45e", + "observations": [ + { + "classic": { + "elapsed": 0.3, + "error_count": 1, + "error_signatures": [], + "errors": [ + "HARNESS: worker produced no result (exit code 1)" + ], + "has_log": true, + "ok": false, + "score": null, + "scores": [], + "selected": null + }, + "completed_at": "2026-09-12T12:25:55Z", + "confirmation": null, + "delta_pct": null, + "id": "47fa458493cbc45e", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "7f69420cb5157bc945ae58f4130e0a550cfabb22", + "official_parameters": true, + "tank_royale_commit": "a553d8069e3f67e8711f0a3e976c339f389faec8", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": null, + "division": "roborumble", + "jar": "frag.FragBot_1.0.jar", + "jar_sha256": "7f889f42ce9bb5f3cbe766729631635b2ef529c3d29f10d2cc01b6566e9cb416", + "key": "roborumble/frag.FragBot_1.0.jar", + "kind": "robot" + }, + "status": "MATCHED (failure)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 0.3, + "error_count": 1, + "error_signatures": [], + "errors": [ + "HARNESS: worker produced no result (exit code 1)" + ], + "has_log": true, + "ok": false, + "score": null, + "scores": [], + "skipped": null + } + } + ], + "status": "MATCHED (failure)" + }, + "roborumble/franzor.Lizt_1.3.1.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": null, + "division": "roborumble", + "jar": "franzor.Lizt_1.3.1.jar", + "jar_sha256": "983471aecbaeaac7119bd20437f01c62af88a249befb07d2ac8e8cbb0645863c", + "key": "roborumble/franzor.Lizt_1.3.1.jar", + "kind": "robot" + }, + "latest_observation": "c3f55886bc4b2329", + "observations": [ + { + "classic": { + "elapsed": 0.3, + "error_count": 1, + "error_signatures": [], + "errors": [ + "HARNESS: worker produced no result (exit code 1)" + ], + "has_log": true, + "ok": false, + "score": null, + "scores": [], + "selected": null + }, + "completed_at": "2026-09-12T12:25:56Z", + "confirmation": null, + "delta_pct": null, + "id": "c3f55886bc4b2329", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "7f69420cb5157bc945ae58f4130e0a550cfabb22", + "official_parameters": true, + "tank_royale_commit": "a553d8069e3f67e8711f0a3e976c339f389faec8", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": null, + "division": "roborumble", + "jar": "franzor.Lizt_1.3.1.jar", + "jar_sha256": "983471aecbaeaac7119bd20437f01c62af88a249befb07d2ac8e8cbb0645863c", + "key": "roborumble/franzor.Lizt_1.3.1.jar", + "kind": "robot" + }, + "status": "MATCHED (failure)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 0.3, + "error_count": 1, + "error_signatures": [], + "errors": [ + "HARNESS: worker produced no result (exit code 1)" + ], + "has_log": true, + "ok": false, + "score": null, + "scores": [], + "skipped": null + } + } + ], + "status": "MATCHED (failure)" + }, + "roborumble/froh.micro.Aversari_0.31.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": null, + "division": "roborumble", + "jar": "froh.micro.Aversari_0.31.jar", + "jar_sha256": "c20774ee6f06e6e95b809e00880e4096c82548a5299330a14ef6ea765f1c36d2", + "key": "roborumble/froh.micro.Aversari_0.31.jar", + "kind": "robot" + }, + "latest_observation": "fdd83abc5317dc7c", + "observations": [ + { + "classic": { + "elapsed": 0.3, + "error_count": 1, + "error_signatures": [], + "errors": [ + "HARNESS: worker produced no result (exit code 1)" + ], + "has_log": true, + "ok": false, + "score": null, + "scores": [], + "selected": null + }, + "completed_at": "2026-09-12T12:25:57Z", + "confirmation": null, + "delta_pct": null, + "id": "fdd83abc5317dc7c", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "7f69420cb5157bc945ae58f4130e0a550cfabb22", + "official_parameters": true, + "tank_royale_commit": "a553d8069e3f67e8711f0a3e976c339f389faec8", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": null, + "division": "roborumble", + "jar": "froh.micro.Aversari_0.31.jar", + "jar_sha256": "c20774ee6f06e6e95b809e00880e4096c82548a5299330a14ef6ea765f1c36d2", + "key": "roborumble/froh.micro.Aversari_0.31.jar", + "kind": "robot" + }, + "status": "MATCHED (failure)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 0.3, + "error_count": 1, + "error_signatures": [], + "errors": [ + "HARNESS: worker produced no result (exit code 1)" + ], + "has_log": true, + "ok": false, + "score": null, + "scores": [], + "skipped": null + } + } + ], + "status": "MATCHED (failure)" + }, + "roborumble/fromHell.BlackBox_0.0.2.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": null, + "division": "roborumble", + "jar": "fromHell.BlackBox_0.0.2.jar", + "jar_sha256": "f2de85b5bceee97cfff7ccb91d3a33ee7db0fc2a53d6adc0ced674e546c39480", + "key": "roborumble/fromHell.BlackBox_0.0.2.jar", + "kind": "robot" + }, + "latest_observation": "1ca9b10801992a11", + "observations": [ + { + "classic": { + "elapsed": 0.3, + "error_count": 1, + "error_signatures": [], + "errors": [ + "HARNESS: worker produced no result (exit code 1)" + ], + "has_log": true, + "ok": false, + "score": null, + "scores": [], + "selected": null + }, + "completed_at": "2026-09-12T12:25:58Z", + "confirmation": null, + "delta_pct": null, + "id": "1ca9b10801992a11", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "7f69420cb5157bc945ae58f4130e0a550cfabb22", + "official_parameters": true, + "tank_royale_commit": "a553d8069e3f67e8711f0a3e976c339f389faec8", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": null, + "division": "roborumble", + "jar": "fromHell.BlackBox_0.0.2.jar", + "jar_sha256": "f2de85b5bceee97cfff7ccb91d3a33ee7db0fc2a53d6adc0ced674e546c39480", + "key": "roborumble/fromHell.BlackBox_0.0.2.jar", + "kind": "robot" + }, + "status": "MATCHED (failure)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 0.3, + "error_count": 1, + "error_signatures": [], + "errors": [ + "HARNESS: worker produced no result (exit code 1)" + ], + "has_log": true, + "ok": false, + "score": null, + "scores": [], + "skipped": null + } + } + ], + "status": "MATCHED (failure)" + }, + "roborumble/fromHell.C22H30N2O2S_2.2.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": null, + "division": "roborumble", + "jar": "fromHell.C22H30N2O2S_2.2.jar", + "jar_sha256": "2f0c643d24b1f4f1ece1a127e2d97831dde177a9191014314a64923e5bac753e", + "key": "roborumble/fromHell.C22H30N2O2S_2.2.jar", + "kind": "robot" + }, + "latest_observation": "b621bda1a3c49348", + "observations": [ + { + "classic": { + "elapsed": 0.3, + "error_count": 1, + "error_signatures": [], + "errors": [ + "HARNESS: worker produced no result (exit code 1)" + ], + "has_log": true, + "ok": false, + "score": null, + "scores": [], + "selected": null + }, + "completed_at": "2026-09-12T12:25:59Z", + "confirmation": null, + "delta_pct": null, + "id": "b621bda1a3c49348", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "7f69420cb5157bc945ae58f4130e0a550cfabb22", + "official_parameters": true, + "tank_royale_commit": "a553d8069e3f67e8711f0a3e976c339f389faec8", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": null, + "division": "roborumble", + "jar": "fromHell.C22H30N2O2S_2.2.jar", + "jar_sha256": "2f0c643d24b1f4f1ece1a127e2d97831dde177a9191014314a64923e5bac753e", + "key": "roborumble/fromHell.C22H30N2O2S_2.2.jar", + "kind": "robot" + }, + "status": "MATCHED (failure)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 0.3, + "error_count": 1, + "error_signatures": [], + "errors": [ + "HARNESS: worker produced no result (exit code 1)" + ], + "has_log": true, + "ok": false, + "score": null, + "scores": [], + "skipped": null + } + } + ], + "status": "MATCHED (failure)" + }, + "roborumble/fromHell.C4H10O_1.5.1.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": null, + "division": "roborumble", + "jar": "fromHell.C4H10O_1.5.1.jar", + "jar_sha256": "6e95b440def4793d19e8e441889f082769ec728dacadd2dbe684a74980844ca9", + "key": "roborumble/fromHell.C4H10O_1.5.1.jar", + "kind": "robot" + }, + "latest_observation": "b8e9e74c1eec8204", + "observations": [ + { + "classic": { + "elapsed": 0.3, + "error_count": 1, + "error_signatures": [], + "errors": [ + "HARNESS: worker produced no result (exit code 1)" + ], + "has_log": true, + "ok": false, + "score": null, + "scores": [], + "selected": null + }, + "completed_at": "2026-09-12T12:26:00Z", + "confirmation": null, + "delta_pct": null, + "id": "b8e9e74c1eec8204", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "7f69420cb5157bc945ae58f4130e0a550cfabb22", + "official_parameters": true, + "tank_royale_commit": "a553d8069e3f67e8711f0a3e976c339f389faec8", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": null, + "division": "roborumble", + "jar": "fromHell.C4H10O_1.5.1.jar", + "jar_sha256": "6e95b440def4793d19e8e441889f082769ec728dacadd2dbe684a74980844ca9", + "key": "roborumble/fromHell.C4H10O_1.5.1.jar", + "kind": "robot" + }, + "status": "MATCHED (failure)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 0.3, + "error_count": 1, + "error_signatures": [], + "errors": [ + "HARNESS: worker produced no result (exit code 1)" + ], + "has_log": true, + "ok": false, + "score": null, + "scores": [], + "skipped": null + } + } + ], + "status": "MATCHED (failure)" + }, + "roborumble/fromHell.CHCl3_1.4.2.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": null, + "division": "roborumble", + "jar": "fromHell.CHCl3_1.4.2.jar", + "jar_sha256": "c765c36575fde450d68616f4d8be29db2870be0464a6d719d0cd9b54aaec0fa0", + "key": "roborumble/fromHell.CHCl3_1.4.2.jar", + "kind": "robot" + }, + "latest_observation": "bdc7925c24e2e3f3", + "observations": [ + { + "classic": { + "elapsed": 0.3, + "error_count": 1, + "error_signatures": [], + "errors": [ + "HARNESS: worker produced no result (exit code 1)" + ], + "has_log": true, + "ok": false, + "score": null, + "scores": [], + "selected": null + }, + "completed_at": "2026-09-12T12:26:01Z", + "confirmation": null, + "delta_pct": null, + "id": "bdc7925c24e2e3f3", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "7f69420cb5157bc945ae58f4130e0a550cfabb22", + "official_parameters": true, + "tank_royale_commit": "a553d8069e3f67e8711f0a3e976c339f389faec8", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": null, + "division": "roborumble", + "jar": "fromHell.CHCl3_1.4.2.jar", + "jar_sha256": "c765c36575fde450d68616f4d8be29db2870be0464a6d719d0cd9b54aaec0fa0", + "key": "roborumble/fromHell.CHCl3_1.4.2.jar", + "kind": "robot" + }, + "status": "MATCHED (failure)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 0.3, + "error_count": 1, + "error_signatures": [], + "errors": [ + "HARNESS: worker produced no result (exit code 1)" + ], + "has_log": true, + "ok": false, + "score": null, + "scores": [], + "skipped": null + } + } + ], + "status": "MATCHED (failure)" + }, + "roborumble/fruits.NanoStrawbery_1.3.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": null, + "division": "roborumble", + "jar": "fruits.NanoStrawbery_1.3.jar", + "jar_sha256": "677fcb99578892e0453a00a070e3f5fb2b4efd78e98cde2a8a14cd61bd15032c", + "key": "roborumble/fruits.NanoStrawbery_1.3.jar", + "kind": "robot" + }, + "latest_observation": "5b966841b00b16eb", + "observations": [ + { + "classic": { + "elapsed": 0.3, + "error_count": 1, + "error_signatures": [], + "errors": [ + "HARNESS: worker produced no result (exit code 1)" + ], + "has_log": true, + "ok": false, + "score": null, + "scores": [], + "selected": null + }, + "completed_at": "2026-09-12T12:26:01Z", + "confirmation": null, + "delta_pct": null, + "id": "5b966841b00b16eb", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "7f69420cb5157bc945ae58f4130e0a550cfabb22", + "official_parameters": true, + "tank_royale_commit": "a553d8069e3f67e8711f0a3e976c339f389faec8", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": null, + "division": "roborumble", + "jar": "fruits.NanoStrawbery_1.3.jar", + "jar_sha256": "677fcb99578892e0453a00a070e3f5fb2b4efd78e98cde2a8a14cd61bd15032c", + "key": "roborumble/fruits.NanoStrawbery_1.3.jar", + "kind": "robot" + }, + "status": "MATCHED (failure)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 0.3, + "error_count": 1, + "error_signatures": [], + "errors": [ + "HARNESS: worker produced no result (exit code 1)" + ], + "has_log": true, + "ok": false, + "score": null, + "scores": [], + "skipped": null + } + } + ], + "status": "MATCHED (failure)" + }, + "roborumble/fullsail.LaxativeTeaTwo_1.0.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": null, + "division": "roborumble", + "jar": "fullsail.LaxativeTeaTwo_1.0.jar", + "jar_sha256": "1c0698e58bad797b16cf0771d9971d67b5f31e71f9561b893e99cfa65fe005bd", + "key": "roborumble/fullsail.LaxativeTeaTwo_1.0.jar", + "kind": "robot" + }, + "latest_observation": "dd866b226f39b65e", + "observations": [ + { + "classic": { + "elapsed": 0.3, + "error_count": 1, + "error_signatures": [], + "errors": [ + "HARNESS: worker produced no result (exit code 1)" + ], + "has_log": true, + "ok": false, + "score": null, + "scores": [], + "selected": null + }, + "completed_at": "2026-09-12T12:26:02Z", + "confirmation": null, + "delta_pct": null, + "id": "dd866b226f39b65e", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "7f69420cb5157bc945ae58f4130e0a550cfabb22", + "official_parameters": true, + "tank_royale_commit": "a553d8069e3f67e8711f0a3e976c339f389faec8", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": null, + "division": "roborumble", + "jar": "fullsail.LaxativeTeaTwo_1.0.jar", + "jar_sha256": "1c0698e58bad797b16cf0771d9971d67b5f31e71f9561b893e99cfa65fe005bd", + "key": "roborumble/fullsail.LaxativeTeaTwo_1.0.jar", + "kind": "robot" + }, + "status": "MATCHED (failure)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 0.3, + "error_count": 1, + "error_signatures": [], + "errors": [ + "HARNESS: worker produced no result (exit code 1)" + ], + "has_log": true, + "ok": false, + "score": null, + "scores": [], + "skipped": null + } + } + ], + "status": "MATCHED (failure)" + }, + "roborumble/fullsail.SweetTea_1.1.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": null, + "division": "roborumble", + "jar": "fullsail.SweetTea_1.1.jar", + "jar_sha256": "f2c21f11980e3709db3fd98f1e2d1ba0a1bcb8e3b93716bcae29c05651426f1f", + "key": "roborumble/fullsail.SweetTea_1.1.jar", + "kind": "robot" + }, + "latest_observation": "936f481cf375afa4", + "observations": [ + { + "classic": { + "elapsed": 0.3, + "error_count": 1, + "error_signatures": [], + "errors": [ + "HARNESS: worker produced no result (exit code 1)" + ], + "has_log": true, + "ok": false, + "score": null, + "scores": [], + "selected": null + }, + "completed_at": "2026-09-12T12:26:03Z", + "confirmation": null, + "delta_pct": null, + "id": "936f481cf375afa4", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "7f69420cb5157bc945ae58f4130e0a550cfabb22", + "official_parameters": true, + "tank_royale_commit": "a553d8069e3f67e8711f0a3e976c339f389faec8", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": null, + "division": "roborumble", + "jar": "fullsail.SweetTea_1.1.jar", + "jar_sha256": "f2c21f11980e3709db3fd98f1e2d1ba0a1bcb8e3b93716bcae29c05651426f1f", + "key": "roborumble/fullsail.SweetTea_1.1.jar", + "kind": "robot" + }, + "status": "MATCHED (failure)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 0.3, + "error_count": 1, + "error_signatures": [], + "errors": [ + "HARNESS: worker produced no result (exit code 1)" + ], + "has_log": true, + "ok": false, + "score": null, + "scores": [], + "skipped": null + } + } + ], + "status": "MATCHED (failure)" + }, + "roborumble/fullsail.TimbotNoPrediction_1.0.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": null, + "division": "roborumble", + "jar": "fullsail.TimbotNoPrediction_1.0.jar", + "jar_sha256": "378b38bdd239a38d2013f495b3ac932533461f3ded4bdbd5ef9122eabee86485", + "key": "roborumble/fullsail.TimbotNoPrediction_1.0.jar", + "kind": "robot" + }, + "latest_observation": "7c615c99a39069ac", + "observations": [ + { + "classic": { + "elapsed": 0.3, + "error_count": 1, + "error_signatures": [], + "errors": [ + "HARNESS: worker produced no result (exit code 1)" + ], + "has_log": true, + "ok": false, + "score": null, + "scores": [], + "selected": null + }, + "completed_at": "2026-09-12T12:26:04Z", + "confirmation": null, + "delta_pct": null, + "id": "7c615c99a39069ac", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "7f69420cb5157bc945ae58f4130e0a550cfabb22", + "official_parameters": true, + "tank_royale_commit": "a553d8069e3f67e8711f0a3e976c339f389faec8", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": null, + "division": "roborumble", + "jar": "fullsail.TimbotNoPrediction_1.0.jar", + "jar_sha256": "378b38bdd239a38d2013f495b3ac932533461f3ded4bdbd5ef9122eabee86485", + "key": "roborumble/fullsail.TimbotNoPrediction_1.0.jar", + "kind": "robot" + }, + "status": "MATCHED (failure)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 0.3, + "error_count": 1, + "error_signatures": [], + "errors": [ + "HARNESS: worker produced no result (exit code 1)" + ], + "has_log": true, + "ok": false, + "score": null, + "scores": [], + "skipped": null + } + } + ], + "status": "MATCHED (failure)" + }, + "roborumble/fushi.PvP1.PvP1_2004-02-16.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": null, + "division": "roborumble", + "jar": "fushi.PvP1.PvP1_2004-02-16.jar", + "jar_sha256": "ea9d348d62ade8a2d17096e8dbd25c9c9fb957f659bb8cab54c217353ec7a4e9", + "key": "roborumble/fushi.PvP1.PvP1_2004-02-16.jar", + "kind": "robot" + }, + "latest_observation": "1b8259c3cfd580ce", + "observations": [ + { + "classic": { + "elapsed": 0.3, + "error_count": 1, + "error_signatures": [], + "errors": [ + "HARNESS: worker produced no result (exit code 1)" + ], + "has_log": true, + "ok": false, + "score": null, + "scores": [], + "selected": null + }, + "completed_at": "2026-09-12T12:26:05Z", + "confirmation": null, + "delta_pct": null, + "id": "1b8259c3cfd580ce", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "7f69420cb5157bc945ae58f4130e0a550cfabb22", + "official_parameters": true, + "tank_royale_commit": "a553d8069e3f67e8711f0a3e976c339f389faec8", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": null, + "division": "roborumble", + "jar": "fushi.PvP1.PvP1_2004-02-16.jar", + "jar_sha256": "ea9d348d62ade8a2d17096e8dbd25c9c9fb957f659bb8cab54c217353ec7a4e9", + "key": "roborumble/fushi.PvP1.PvP1_2004-02-16.jar", + "kind": "robot" + }, + "status": "MATCHED (failure)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 0.3, + "error_count": 1, + "error_signatures": [], + "errors": [ + "HARNESS: worker produced no result (exit code 1)" + ], + "has_log": true, + "ok": false, + "score": null, + "scores": [], + "skipped": null + } + } + ], + "status": "MATCHED (failure)" + }, + "roborumble/fw.Number1_1.0b.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": null, + "division": "roborumble", + "jar": "fw.Number1_1.0b.jar", + "jar_sha256": "54fb5222f8ced4b385b2c01e9095a70e7c8d44138589f0f403de2cad52ce69b6", + "key": "roborumble/fw.Number1_1.0b.jar", + "kind": "robot" + }, + "latest_observation": "2cc6120e92d4b230", + "observations": [ + { + "classic": { + "elapsed": 0.3, + "error_count": 1, + "error_signatures": [], + "errors": [ + "HARNESS: worker produced no result (exit code 1)" + ], + "has_log": true, + "ok": false, + "score": null, + "scores": [], + "selected": null + }, + "completed_at": "2026-09-12T12:26:06Z", + "confirmation": null, + "delta_pct": null, + "id": "2cc6120e92d4b230", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "7f69420cb5157bc945ae58f4130e0a550cfabb22", + "official_parameters": true, + "tank_royale_commit": "a553d8069e3f67e8711f0a3e976c339f389faec8", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": null, + "division": "roborumble", + "jar": "fw.Number1_1.0b.jar", + "jar_sha256": "54fb5222f8ced4b385b2c01e9095a70e7c8d44138589f0f403de2cad52ce69b6", + "key": "roborumble/fw.Number1_1.0b.jar", + "kind": "robot" + }, + "status": "MATCHED (failure)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 0.3, + "error_count": 1, + "error_signatures": [], + "errors": [ + "HARNESS: worker produced no result (exit code 1)" + ], + "has_log": true, + "ok": false, + "score": null, + "scores": [], + "skipped": null + } + } + ], + "status": "MATCHED (failure)" + }, + "roborumble/gadsky.Gadsky_1.01.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": null, + "division": "roborumble", + "jar": "gadsky.Gadsky_1.01.jar", + "jar_sha256": "e5e6438414227048079ee661fb1f287131b09550df7d289ab1c2d3955dbd7134", + "key": "roborumble/gadsky.Gadsky_1.01.jar", + "kind": "robot" + }, + "latest_observation": "79fa67574b3f574a", + "observations": [ + { + "classic": { + "elapsed": 0.3, + "error_count": 1, + "error_signatures": [], + "errors": [ + "HARNESS: worker produced no result (exit code 1)" + ], + "has_log": true, + "ok": false, + "score": null, + "scores": [], + "selected": null + }, + "completed_at": "2026-09-12T12:26:07Z", + "confirmation": null, + "delta_pct": null, + "id": "79fa67574b3f574a", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "7f69420cb5157bc945ae58f4130e0a550cfabb22", + "official_parameters": true, + "tank_royale_commit": "a553d8069e3f67e8711f0a3e976c339f389faec8", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": null, + "division": "roborumble", + "jar": "gadsky.Gadsky_1.01.jar", + "jar_sha256": "e5e6438414227048079ee661fb1f287131b09550df7d289ab1c2d3955dbd7134", + "key": "roborumble/gadsky.Gadsky_1.01.jar", + "kind": "robot" + }, + "status": "MATCHED (failure)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 0.3, + "error_count": 1, + "error_signatures": [], + "errors": [ + "HARNESS: worker produced no result (exit code 1)" + ], + "has_log": true, + "ok": false, + "score": null, + "scores": [], + "skipped": null + } + } + ], + "status": "MATCHED (failure)" + }, + "roborumble/geep.mini.GPBotA_1.0.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": null, + "division": "roborumble", + "jar": "geep.mini.GPBotA_1.0.jar", + "jar_sha256": "b42e6036e3fde74fc2f4af5b6fbb145a9b9a1bb88120f429e4772f6424917fb2", + "key": "roborumble/geep.mini.GPBotA_1.0.jar", + "kind": "robot" + }, + "latest_observation": "0d25e3d2ded7c752", + "observations": [ + { + "classic": { + "elapsed": 0.3, + "error_count": 1, + "error_signatures": [], + "errors": [ + "HARNESS: worker produced no result (exit code 1)" + ], + "has_log": true, + "ok": false, + "score": null, + "scores": [], + "selected": null + }, + "completed_at": "2026-09-12T12:26:09Z", + "confirmation": null, + "delta_pct": null, + "id": "0d25e3d2ded7c752", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "7f69420cb5157bc945ae58f4130e0a550cfabb22", + "official_parameters": true, + "tank_royale_commit": "a553d8069e3f67e8711f0a3e976c339f389faec8", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": null, + "division": "roborumble", + "jar": "geep.mini.GPBotA_1.0.jar", + "jar_sha256": "b42e6036e3fde74fc2f4af5b6fbb145a9b9a1bb88120f429e4772f6424917fb2", + "key": "roborumble/geep.mini.GPBotA_1.0.jar", + "kind": "robot" + }, + "status": "MATCHED (failure)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 0.3, + "error_count": 1, + "error_signatures": [], + "errors": [ + "HARNESS: worker produced no result (exit code 1)" + ], + "has_log": true, + "ok": false, + "score": null, + "scores": [], + "skipped": null + } + } + ], + "status": "MATCHED (failure)" + }, + "roborumble/geep.mini.GPBotB_1.1.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": null, + "division": "roborumble", + "jar": "geep.mini.GPBotB_1.1.jar", + "jar_sha256": "2db6971ae33b17606c45116c7ee5addbf48fd437725f0c224e1a2c63268f0135", + "key": "roborumble/geep.mini.GPBotB_1.1.jar", + "kind": "robot" + }, + "latest_observation": "962021716e3e7eaf", + "observations": [ + { + "classic": { + "elapsed": 0.3, + "error_count": 1, + "error_signatures": [], + "errors": [ + "HARNESS: worker produced no result (exit code 1)" + ], + "has_log": true, + "ok": false, + "score": null, + "scores": [], + "selected": null + }, + "completed_at": "2026-09-12T12:26:10Z", + "confirmation": null, + "delta_pct": null, + "id": "962021716e3e7eaf", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "7f69420cb5157bc945ae58f4130e0a550cfabb22", + "official_parameters": true, + "tank_royale_commit": "a553d8069e3f67e8711f0a3e976c339f389faec8", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": null, + "division": "roborumble", + "jar": "geep.mini.GPBotB_1.1.jar", + "jar_sha256": "2db6971ae33b17606c45116c7ee5addbf48fd437725f0c224e1a2c63268f0135", + "key": "roborumble/geep.mini.GPBotB_1.1.jar", + "kind": "robot" + }, + "status": "MATCHED (failure)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 0.3, + "error_count": 1, + "error_signatures": [], + "errors": [ + "HARNESS: worker produced no result (exit code 1)" + ], + "has_log": true, + "ok": false, + "score": null, + "scores": [], + "skipped": null + } + } + ], + "status": "MATCHED (failure)" + }, + "roborumble/genprog.Gajeel_1.0.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": null, + "division": "roborumble", + "jar": "genprog.Gajeel_1.0.jar", + "jar_sha256": "0b1e0eb0bcdffd2b8632de477e5767d020425e3e6186368386ff684365b50f28", + "key": "roborumble/genprog.Gajeel_1.0.jar", + "kind": "robot" + }, + "latest_observation": "ff92ee797e807b9c", + "observations": [ + { + "classic": { + "elapsed": 0.3, + "error_count": 1, + "error_signatures": [], + "errors": [ + "HARNESS: worker produced no result (exit code 1)" + ], + "has_log": true, + "ok": false, + "score": null, + "scores": [], + "selected": null + }, + "completed_at": "2026-09-12T12:26:10Z", + "confirmation": null, + "delta_pct": null, + "id": "ff92ee797e807b9c", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "7f69420cb5157bc945ae58f4130e0a550cfabb22", + "official_parameters": true, + "tank_royale_commit": "a553d8069e3f67e8711f0a3e976c339f389faec8", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": null, + "division": "roborumble", + "jar": "genprog.Gajeel_1.0.jar", + "jar_sha256": "0b1e0eb0bcdffd2b8632de477e5767d020425e3e6186368386ff684365b50f28", + "key": "roborumble/genprog.Gajeel_1.0.jar", + "kind": "robot" + }, + "status": "MATCHED (failure)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 0.3, + "error_count": 1, + "error_signatures": [], + "errors": [ + "HARNESS: worker produced no result (exit code 1)" + ], + "has_log": true, + "ok": false, + "score": null, + "scores": [], + "skipped": null + } + } + ], + "status": "MATCHED (failure)" + }, + "roborumble/genprog.Rinmorikazu_1.0.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "genprog.Rinmorikazu 1.0", + "division": "roborumble", + "jar": "genprog.Rinmorikazu_1.0.jar", + "jar_sha256": "3d869dbadee876e6a4d3006d6a10939fec114378316e15df130e3047ac917f80", + "key": "roborumble/genprog.Rinmorikazu_1.0.jar", + "kind": "robot" + }, + "latest_observation": "e8721bfe1878ce0b", + "observations": [ + { + "classic": { + "elapsed": 41.8, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 0.0, + "scores": [ + 0.0, + 0.0 + ], + "selected": "genprog.Rinmorikazu 1.0" + }, + "completed_at": "2026-09-12T12:32:02Z", + "confirmation": null, + "delta_pct": null, + "id": "e8721bfe1878ce0b", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "975ed11a8fa5482146838f0a66158ca83039c548", + "official_parameters": true, + "tank_royale_commit": "a553d8069e3f67e8711f0a3e976c339f389faec8", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "genprog.Rinmorikazu 1.0", + "division": "roborumble", + "jar": "genprog.Rinmorikazu_1.0.jar", + "jar_sha256": "3d869dbadee876e6a4d3006d6a10939fec114378316e15df130e3047ac917f80", + "key": "roborumble/genprog.Rinmorikazu_1.0.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (no score)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 16.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5115.0, + "scores": [ + 2704.0, + 2411.0 + ], + "skipped": null + } + } + ], + "status": "DISCREPANCY (no score)" + }, + "roborumble/genprog.Zafaran_1.0.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "genprog.Zafaran 1.0", + "division": "roborumble", + "jar": "genprog.Zafaran_1.0.jar", + "jar_sha256": "a64700257e423fef63c891167552958ef41932fb775e22802da628ddd523649f", + "key": "roborumble/genprog.Zafaran_1.0.jar", + "kind": "robot" + }, + "latest_observation": "1945c190c76e6150", + "observations": [ + { + "classic": { + "elapsed": 41.9, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 0.0, + "scores": [ + 0.0, + 0.0 + ], + "selected": "genprog.Zafaran 1.0" + }, + "completed_at": "2026-09-12T12:32:58Z", + "confirmation": null, + "delta_pct": null, + "id": "1945c190c76e6150", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "975ed11a8fa5482146838f0a66158ca83039c548", + "official_parameters": true, + "tank_royale_commit": "a553d8069e3f67e8711f0a3e976c339f389faec8", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "genprog.Zafaran 1.0", + "division": "roborumble", + "jar": "genprog.Zafaran_1.0.jar", + "jar_sha256": "a64700257e423fef63c891167552958ef41932fb775e22802da628ddd523649f", + "key": "roborumble/genprog.Zafaran_1.0.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (no score)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 14.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5824.0, + "scores": [ + 3142.0, + 2682.0 + ], + "skipped": null + } + } + ], + "status": "DISCREPANCY (no score)" + }, + "roborumble/germ.TheMind_.2.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "germ.TheMind .2", + "division": "roborumble", + "jar": "germ.TheMind_.2.jar", + "jar_sha256": "f4f5e112e785354806cc13b5cfc5232213204194654259a7c86a9404b767bf8c", + "key": "roborumble/germ.TheMind_.2.jar", + "kind": "robot" + }, + "latest_observation": "f6001e8b572533b4", + "observations": [ + { + "classic": { + "elapsed": 41.9, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 0.0, + "scores": [ + 0.0, + 0.0 + ], + "selected": "germ.TheMind .2" + }, + "completed_at": "2026-09-12T12:33:58Z", + "confirmation": null, + "delta_pct": null, + "id": "f6001e8b572533b4", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "975ed11a8fa5482146838f0a66158ca83039c548", + "official_parameters": true, + "tank_royale_commit": "a553d8069e3f67e8711f0a3e976c339f389faec8", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "germ.TheMind .2", + "division": "roborumble", + "jar": "germ.TheMind_.2.jar", + "jar_sha256": "f4f5e112e785354806cc13b5cfc5232213204194654259a7c86a9404b767bf8c", + "key": "roborumble/germ.TheMind_.2.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (no score)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 18.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 2343.0, + "scores": [ + 1198.0, + 1145.0 + ], + "skipped": null + } + } + ], + "status": "DISCREPANCY (no score)" + }, + "roborumble/gf.Centaur.Centaur_0.6.7.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "gf.Centaur.Centaur 0.6.7", + "division": "roborumble", + "jar": "gf.Centaur.Centaur_0.6.7.jar", + "jar_sha256": "2ca75c3191793499e863c6715a640744585770ca80493fc8433b5889f6277616", + "key": "roborumble/gf.Centaur.Centaur_0.6.7.jar", + "kind": "robot" + }, + "latest_observation": "64630a3acc5ad08d", + "observations": [ + { + "classic": { + "elapsed": 42.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 0.0, + "scores": [ + 0.0, + 0.0 + ], + "selected": "gf.Centaur.Centaur 0.6.7" + }, + "completed_at": "2026-09-12T12:35:23Z", + "confirmation": null, + "delta_pct": null, + "id": "64630a3acc5ad08d", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "975ed11a8fa5482146838f0a66158ca83039c548", + "official_parameters": true, + "tank_royale_commit": "a553d8069e3f67e8711f0a3e976c339f389faec8", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "gf.Centaur.Centaur 0.6.7", + "division": "roborumble", + "jar": "gf.Centaur.Centaur_0.6.7.jar", + "jar_sha256": "2ca75c3191793499e863c6715a640744585770ca80493fc8433b5889f6277616", + "key": "roborumble/gf.Centaur.Centaur_0.6.7.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (no score)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 42.1, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5483.0, + "scores": [ + 2897.0, + 2586.0 + ], + "skipped": null + } + } + ], + "status": "DISCREPANCY (no score)" + }, + "roborumble/gg.Squaraus_0.6.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "gg.Squaraus 0.6", + "division": "roborumble", + "jar": "gg.Squaraus_0.6.jar", + "jar_sha256": "8134f4c2d9cf82b19059f201aa2655e71c5d5fac45fa27830620e039edad96d2", + "key": "roborumble/gg.Squaraus_0.6.jar", + "kind": "robot" + }, + "latest_observation": "af5d371fd0d8ebc8", + "observations": [ + { + "classic": { + "elapsed": 41.9, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 0.0, + "scores": [ + 0.0, + 0.0 + ], + "selected": "gg.Squaraus 0.6" + }, + "completed_at": "2026-09-12T12:36:25Z", + "confirmation": null, + "delta_pct": null, + "id": "af5d371fd0d8ebc8", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "975ed11a8fa5482146838f0a66158ca83039c548", + "official_parameters": true, + "tank_royale_commit": "a553d8069e3f67e8711f0a3e976c339f389faec8", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "gg.Squaraus 0.6", + "division": "roborumble", + "jar": "gg.Squaraus_0.6.jar", + "jar_sha256": "8134f4c2d9cf82b19059f201aa2655e71c5d5fac45fa27830620e039edad96d2", + "key": "roborumble/gg.Squaraus_0.6.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (no score)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 20.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5833.0, + "scores": [ + 3333.0, + 2500.0 + ], + "skipped": null + } + } + ], + "status": "DISCREPANCY (no score)" + }, + "roborumble/gg.Wolverine_2.0.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "gg.Wolverine 2.0", + "division": "roborumble", + "jar": "gg.Wolverine_2.0.jar", + "jar_sha256": "74759ddb81c6551707d86946b407ce387fc03f44660e0f46a05d2ed0d8ebbd2d", + "key": "roborumble/gg.Wolverine_2.0.jar", + "kind": "robot" + }, + "latest_observation": "5a1633d8ea1a8831", + "observations": [ + { + "classic": { + "elapsed": 41.9, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 0.0, + "scores": [ + 0.0, + 0.0 + ], + "selected": "gg.Wolverine 2.0" + }, + "completed_at": "2026-09-12T12:37:21Z", + "confirmation": null, + "delta_pct": null, + "id": "5a1633d8ea1a8831", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "975ed11a8fa5482146838f0a66158ca83039c548", + "official_parameters": true, + "tank_royale_commit": "a553d8069e3f67e8711f0a3e976c339f389faec8", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "gg.Wolverine 2.0", + "division": "roborumble", + "jar": "gg.Wolverine_2.0.jar", + "jar_sha256": "74759ddb81c6551707d86946b407ce387fc03f44660e0f46a05d2ed0d8ebbd2d", + "key": "roborumble/gg.Wolverine_2.0.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (no score)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 14.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 12938.0, + "scores": [ + 6506.0, + 6432.0 + ], + "skipped": null + } + } + ], + "status": "DISCREPANCY (no score)" + }, + "roborumble/gh.GresSuffurd_0.4.13.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "gh.GresSuffurd 0.4.13", + "division": "roborumble", + "jar": "gh.GresSuffurd_0.4.13.jar", + "jar_sha256": "528d13dfe76657c5c5d851ba906ae487c45e81a4d3e9197626f05ff6a73c7a76", + "key": "roborumble/gh.GresSuffurd_0.4.13.jar", + "kind": "robot" + }, + "latest_observation": "422163e3feada153", + "observations": [ + { + "classic": { + "elapsed": 41.9, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 0.0, + "scores": [ + 0.0, + 0.0 + ], + "selected": "gh.GresSuffurd 0.4.13" + }, + "completed_at": "2026-09-12T12:38:29Z", + "confirmation": null, + "delta_pct": null, + "id": "422163e3feada153", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "975ed11a8fa5482146838f0a66158ca83039c548", + "official_parameters": true, + "tank_royale_commit": "a553d8069e3f67e8711f0a3e976c339f389faec8", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "gh.GresSuffurd 0.4.13", + "division": "roborumble", + "jar": "gh.GresSuffurd_0.4.13.jar", + "jar_sha256": "528d13dfe76657c5c5d851ba906ae487c45e81a4d3e9197626f05ff6a73c7a76", + "key": "roborumble/gh.GresSuffurd_0.4.13.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (no score)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 26.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 4615.0, + "scores": [ + 2524.0, + 2091.0 + ], + "skipped": null + } + } + ], + "status": "DISCREPANCY (no score)" + }, + "roborumble/gh.GrubbmGrb_1.2.4.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "gh.GrubbmGrb 1.2.4", + "division": "roborumble", + "jar": "gh.GrubbmGrb_1.2.4.jar", + "jar_sha256": "8d8efa95fed1a4ea56cdbdc7525c0a41d330c4c3ff11855b37840cdcc6207b3e", + "key": "roborumble/gh.GrubbmGrb_1.2.4.jar", + "kind": "robot" + }, + "latest_observation": "f2c1c5022a5838fb", + "observations": [ + { + "classic": { + "elapsed": 41.9, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 0.0, + "scores": [ + 0.0, + 0.0 + ], + "selected": "gh.GrubbmGrb 1.2.4" + }, + "completed_at": "2026-09-12T12:39:16Z", + "confirmation": null, + "delta_pct": null, + "id": "f2c1c5022a5838fb", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "975ed11a8fa5482146838f0a66158ca83039c548", + "official_parameters": true, + "tank_royale_commit": "a553d8069e3f67e8711f0a3e976c339f389faec8", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "gh.GrubbmGrb 1.2.4", + "division": "roborumble", + "jar": "gh.GrubbmGrb_1.2.4.jar", + "jar_sha256": "8d8efa95fed1a4ea56cdbdc7525c0a41d330c4c3ff11855b37840cdcc6207b3e", + "key": "roborumble/gh.GrubbmGrb_1.2.4.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (outcome)", + "tank_royale": { + "bridge_only_signatures": [ + [ + "java.io.FileNotFoundException", + "unknown" + ] + ], + "elapsed": 4.2, + "error_count": 3, + "error_signatures": [ + { + "exception": "java.io.FileNotFoundException", + "origin": "unknown" + } + ], + "errors": [ + "HARNESS: worker produced no result (exit code -1)", + "readIniFile(): IOException reading data GrubbmGrb.ini: java.io.FileNotFoundException: C:\\Code\\robocode-api-bridge\\compat-test\\work\\tr-bots\\gh.GrubbmGrb_1.2.4\\GrubbmGrb.data\\GrubbmGrb.ini (Den angivne fil blev ikke fundet)", + "readIniFile(): IOException reading data GrubbmGrb.ini: java.io.FileNotFoundException: C:\\Code\\robocode-api-bridge\\compat-test\\work\\tr-bots\\gh.GrubbmGrb_1.2.4-2\\GrubbmGrb.data\\GrubbmGrb.ini (Den angivne fil blev ikke fundet)" + ], + "has_log": true, + "ok": false, + "score": null, + "scores": [], + "skipped": null + } + } + ], + "status": "DISCREPANCY (outcome)" + }, + "roborumble/gh.GrypRepetyf_0.13.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "gh.GrypRepetyf 0.13", + "division": "roborumble", + "jar": "gh.GrypRepetyf_0.13.jar", + "jar_sha256": "cec04c487a3da61b047ba4a0661b9fbf8ec9ad78aa93efafdb702f5f57a0416a", + "key": "roborumble/gh.GrypRepetyf_0.13.jar", + "kind": "robot" + }, + "latest_observation": "43c8214c070a00fd", + "observations": [ + { + "classic": { + "elapsed": 41.9, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 0.0, + "scores": [ + 0.0, + 0.0 + ], + "selected": "gh.GrypRepetyf 0.13" + }, + "completed_at": "2026-09-12T12:40:16Z", + "confirmation": null, + "delta_pct": null, + "id": "43c8214c070a00fd", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "975ed11a8fa5482146838f0a66158ca83039c548", + "official_parameters": true, + "tank_royale_commit": "a553d8069e3f67e8711f0a3e976c339f389faec8", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "gh.GrypRepetyf 0.13", + "division": "roborumble", + "jar": "gh.GrypRepetyf_0.13.jar", + "jar_sha256": "cec04c487a3da61b047ba4a0661b9fbf8ec9ad78aa93efafdb702f5f57a0416a", + "key": "roborumble/gh.GrypRepetyf_0.13.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (no score)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 18.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 6245.0, + "scores": [ + 3751.0, + 2494.0 + ], + "skipped": null + } + } + ], + "status": "DISCREPANCY (no score)" + }, + "roborumble/gh.micro.Grinnik_1.0.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "gh.micro.Grinnik 1.0", + "division": "roborumble", + "jar": "gh.micro.Grinnik_1.0.jar", + "jar_sha256": "60eed7a095bd7c74c944467920bdbd6d5598f9e038e7f3d6a690edda37d8504b", + "key": "roborumble/gh.micro.Grinnik_1.0.jar", + "kind": "robot" + }, + "latest_observation": "e524b4d483d0635e", + "observations": [ + { + "classic": { + "elapsed": 42.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 0.0, + "scores": [ + 0.0, + 0.0 + ], + "selected": "gh.micro.Grinnik 1.0" + }, + "completed_at": "2026-09-12T12:41:17Z", + "confirmation": null, + "delta_pct": null, + "id": "e524b4d483d0635e", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "975ed11a8fa5482146838f0a66158ca83039c548", + "official_parameters": true, + "tank_royale_commit": "a553d8069e3f67e8711f0a3e976c339f389faec8", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "gh.micro.Grinnik 1.0", + "division": "roborumble", + "jar": "gh.micro.Grinnik_1.0.jar", + "jar_sha256": "60eed7a095bd7c74c944467920bdbd6d5598f9e038e7f3d6a690edda37d8504b", + "key": "roborumble/gh.micro.Grinnik_1.0.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (no score)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 18.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 4376.0, + "scores": [ + 2220.0, + 2156.0 + ], + "skipped": null + } + } + ], + "status": "DISCREPANCY (no score)" + }, + "roborumble/gh.mini.Grimmig_0.3.6.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "gh.mini.Grimmig 0.3.6", + "division": "roborumble", + "jar": "gh.mini.Grimmig_0.3.6.jar", + "jar_sha256": "1d65ae25c123ff86779c33f26374f0aa72ade6a5f4497196aa3c6f7be23b6ffa", + "key": "roborumble/gh.mini.Grimmig_0.3.6.jar", + "kind": "robot" + }, + "latest_observation": "5f21e7bfd82d02e0", + "observations": [ + { + "classic": { + "elapsed": 41.9, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 0.0, + "scores": [ + 0.0, + 0.0 + ], + "selected": "gh.mini.Grimmig 0.3.6" + }, + "completed_at": "2026-09-12T12:42:21Z", + "confirmation": null, + "delta_pct": null, + "id": "5f21e7bfd82d02e0", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "975ed11a8fa5482146838f0a66158ca83039c548", + "official_parameters": true, + "tank_royale_commit": "a553d8069e3f67e8711f0a3e976c339f389faec8", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "gh.mini.Grimmig 0.3.6", + "division": "roborumble", + "jar": "gh.mini.Grimmig_0.3.6.jar", + "jar_sha256": "1d65ae25c123ff86779c33f26374f0aa72ade6a5f4497196aa3c6f7be23b6ffa", + "key": "roborumble/gh.mini.Grimmig_0.3.6.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (no score)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 22.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 4505.0, + "scores": [ + 2811.0, + 1694.0 + ], + "skipped": null + } + } + ], + "status": "DISCREPANCY (no score)" + }, + "roborumble/gh.nano.Grofvuil_0.2.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "gh.nano.Grofvuil 0.2", + "division": "roborumble", + "jar": "gh.nano.Grofvuil_0.2.jar", + "jar_sha256": "93b2a73e350b902abfa4b615d1cb10f3350617e66ebafbf001f68b4557c4046c", + "key": "roborumble/gh.nano.Grofvuil_0.2.jar", + "kind": "robot" + }, + "latest_observation": "2d26131918c382a7", + "observations": [ + { + "classic": { + "elapsed": 41.9, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 0.0, + "scores": [ + 0.0, + 0.0 + ], + "selected": "gh.nano.Grofvuil 0.2" + }, + "completed_at": "2026-09-12T12:43:21Z", + "confirmation": null, + "delta_pct": null, + "id": "2d26131918c382a7", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "975ed11a8fa5482146838f0a66158ca83039c548", + "official_parameters": true, + "tank_royale_commit": "a553d8069e3f67e8711f0a3e976c339f389faec8", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "gh.nano.Grofvuil 0.2", + "division": "roborumble", + "jar": "gh.nano.Grofvuil_0.2.jar", + "jar_sha256": "93b2a73e350b902abfa4b615d1cb10f3350617e66ebafbf001f68b4557c4046c", + "key": "roborumble/gh.nano.Grofvuil_0.2.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (no score)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 18.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 3662.0, + "scores": [ + 2137.0, + 1525.0 + ], + "skipped": null + } + } + ], + "status": "DISCREPANCY (no score)" + }, + "roborumble/ghent.ArthurPanzergon_1.0.0.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "ghent.ArthurPanzergon 1.0.0", + "division": "roborumble", + "jar": "ghent.ArthurPanzergon_1.0.0.jar", + "jar_sha256": "90f35d34d2781d6549f1094c87f72fbf1413e91d73f1be75fd98f5f88b635556", + "key": "roborumble/ghent.ArthurPanzergon_1.0.0.jar", + "kind": "robot" + }, + "latest_observation": "dfa7800f0f04cab3", + "observations": [ + { + "classic": { + "elapsed": 41.9, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 0.0, + "scores": [ + 0.0, + 0.0 + ], + "selected": "ghent.ArthurPanzergon 1.0.0" + }, + "completed_at": "2026-09-12T12:44:08Z", + "confirmation": null, + "delta_pct": null, + "id": "dfa7800f0f04cab3", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "975ed11a8fa5482146838f0a66158ca83039c548", + "official_parameters": true, + "tank_royale_commit": "a553d8069e3f67e8711f0a3e976c339f389faec8", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "ghent.ArthurPanzergon 1.0.0", + "division": "roborumble", + "jar": "ghent.ArthurPanzergon_1.0.0.jar", + "jar_sha256": "90f35d34d2781d6549f1094c87f72fbf1413e91d73f1be75fd98f5f88b635556", + "key": "roborumble/ghent.ArthurPanzergon_1.0.0.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (outcome)", + "tank_royale": { + "bridge_only_signatures": [ + [ + "java.io.FileNotFoundException", + "ghent.modules.artillery.Gunner.loadStats" + ] + ], + "elapsed": 4.2, + "error_count": 3, + "error_signatures": [ + { + "exception": "java.io.FileNotFoundException", + "origin": "ghent.modules.artillery.Gunner.loadStats" + } + ], + "errors": [ + "HARNESS: worker produced no result (exit code -1)", + "java.io.FileNotFoundException: C:\\Code\\robocode-api-bridge\\compat-test\\work\\tr-bots\\ghent.ArthurPanzergon_1.0.0\\ArthurPanzergon.data\\gunner.dat (Den angivne fil blev ikke fundet)", + "java.io.FileNotFoundException: C:\\Code\\robocode-api-bridge\\compat-test\\work\\tr-bots\\ghent.ArthurPanzergon_1.0.0-2\\ArthurPanzergon.data\\gunner.dat (Den angivne fil blev ikke fundet)" + ], + "has_log": true, + "ok": false, + "score": null, + "scores": [], + "skipped": null + } + } + ], + "status": "DISCREPANCY (outcome)" + }, + "roborumble/gimp.GimpBot_0.1.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "gimp.GimpBot 0.1", + "division": "roborumble", + "jar": "gimp.GimpBot_0.1.jar", + "jar_sha256": "e6ea808162e9504f8f6a9f97bfe55123269e30a2ab444991a104d46acffb43a6", + "key": "roborumble/gimp.GimpBot_0.1.jar", + "kind": "robot" + }, + "latest_observation": "971d83252cd783ae", + "observations": [ + { + "classic": { + "elapsed": 42.3, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 0.0, + "scores": [ + 0.0, + 0.0 + ], + "selected": "gimp.GimpBot 0.1" + }, + "completed_at": "2026-09-12T12:45:08Z", + "confirmation": null, + "delta_pct": null, + "id": "971d83252cd783ae", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "975ed11a8fa5482146838f0a66158ca83039c548", + "official_parameters": true, + "tank_royale_commit": "a553d8069e3f67e8711f0a3e976c339f389faec8", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "gimp.GimpBot 0.1", + "division": "roborumble", + "jar": "gimp.GimpBot_0.1.jar", + "jar_sha256": "e6ea808162e9504f8f6a9f97bfe55123269e30a2ab444991a104d46acffb43a6", + "key": "roborumble/gimp.GimpBot_0.1.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (no score)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 18.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 7773.0, + "scores": [ + 4296.0, + 3477.0 + ], + "skipped": null + } + } + ], + "status": "DISCREPANCY (no score)" + }, + "roborumble/gio.RealGioBot_1.0.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "gio.RealGioBot 1.0", + "division": "roborumble", + "jar": "gio.RealGioBot_1.0.jar", + "jar_sha256": "d2c253079cafb361191c31ce3ca5f20dfe92a4c06179f9f3b9a4bf3e79b3d865", + "key": "roborumble/gio.RealGioBot_1.0.jar", + "kind": "robot" + }, + "latest_observation": "5e1535e7c64aba59", + "observations": [ + { + "classic": { + "elapsed": 41.8, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 0.0, + "scores": [ + 0.0, + 0.0 + ], + "selected": "gio.RealGioBot 1.0" + }, + "completed_at": "2026-09-12T12:46:09Z", + "confirmation": null, + "delta_pct": null, + "id": "5e1535e7c64aba59", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "975ed11a8fa5482146838f0a66158ca83039c548", + "official_parameters": true, + "tank_royale_commit": "a553d8069e3f67e8711f0a3e976c339f389faec8", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "gio.RealGioBot 1.0", + "division": "roborumble", + "jar": "gio.RealGioBot_1.0.jar", + "jar_sha256": "d2c253079cafb361191c31ce3ca5f20dfe92a4c06179f9f3b9a4bf3e79b3d865", + "key": "roborumble/gio.RealGioBot_1.0.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (no score)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 18.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 4629.0, + "scores": [ + 3009.0, + 1620.0 + ], + "skipped": null + } + } + ], + "status": "DISCREPANCY (no score)" + }, + "roborumble/gjr.Cephalosporin_0.2.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "gjr.Cephalosporin 0.2", + "division": "roborumble", + "jar": "gjr.Cephalosporin_0.2.jar", + "jar_sha256": "8133810e4ce3b00dd583b3344dd942607a2666861d160d8d2d422e11953d6369", + "key": "roborumble/gjr.Cephalosporin_0.2.jar", + "kind": "robot" + }, + "latest_observation": "db03f6ffc0fe3874", + "observations": [ + { + "classic": { + "elapsed": 41.9, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 0.0, + "scores": [ + 0.0, + 0.0 + ], + "selected": "gjr.Cephalosporin 0.2" + }, + "completed_at": "2026-09-12T12:49:46Z", + "confirmation": null, + "delta_pct": null, + "id": "db03f6ffc0fe3874", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "975ed11a8fa5482146838f0a66158ca83039c548", + "official_parameters": true, + "tank_royale_commit": "a553d8069e3f67e8711f0a3e976c339f389faec8", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "gjr.Cephalosporin 0.2", + "division": "roborumble", + "jar": "gjr.Cephalosporin_0.2.jar", + "jar_sha256": "8133810e4ce3b00dd583b3344dd942607a2666861d160d8d2d422e11953d6369", + "key": "roborumble/gjr.Cephalosporin_0.2.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (no score)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 174.9, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": true, + "ok": true, + "score": 10497.0, + "scores": [ + 5409.0, + 5088.0 + ], + "skipped": null + } + } + ], + "status": "DISCREPANCY (no score)" + }, + "roborumble/goblin.Bender_2.4.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "goblin.Bender 2.4", + "division": "roborumble", + "jar": "goblin.Bender_2.4.jar", + "jar_sha256": "8d07c7e25d7f1ab4fc98fae2df726866a7650be386db86daf6310d2f1c4bf7e0", + "key": "roborumble/goblin.Bender_2.4.jar", + "kind": "robot" + }, + "latest_observation": "c974dc2f04983d30", + "observations": [ + { + "classic": { + "elapsed": 41.8, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 0.0, + "scores": [ + 0.0, + 0.0 + ], + "selected": "goblin.Bender 2.4" + }, + "completed_at": "2026-09-12T12:50:48Z", + "confirmation": null, + "delta_pct": null, + "id": "c974dc2f04983d30", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "975ed11a8fa5482146838f0a66158ca83039c548", + "official_parameters": true, + "tank_royale_commit": "a553d8069e3f67e8711f0a3e976c339f389faec8", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "goblin.Bender 2.4", + "division": "roborumble", + "jar": "goblin.Bender_2.4.jar", + "jar_sha256": "8d07c7e25d7f1ab4fc98fae2df726866a7650be386db86daf6310d2f1c4bf7e0", + "key": "roborumble/goblin.Bender_2.4.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (no score)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 20.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 6585.0, + "scores": [ + 3577.0, + 3008.0 + ], + "skipped": null + } + } + ], + "status": "DISCREPANCY (no score)" + }, + "roborumble/gre.svman4.Leonidas_1.3.2.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "gre.svman4.Leonidas 1.3.2", + "division": "roborumble", + "jar": "gre.svman4.Leonidas_1.3.2.jar", + "jar_sha256": "0e4775eaa84ab348168b94c608810a0430353fcc3cafcf052ad3a7a78b2a53a8", + "key": "roborumble/gre.svman4.Leonidas_1.3.2.jar", + "kind": "robot" + }, + "latest_observation": "58b0a10a9eac6c89", + "observations": [ + { + "classic": { + "elapsed": 42.2, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 0.0, + "scores": [ + 0.0, + 0.0 + ], + "selected": "gre.svman4.Leonidas 1.3.2" + }, + "completed_at": "2026-09-12T12:51:52Z", + "confirmation": null, + "delta_pct": null, + "id": "58b0a10a9eac6c89", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "975ed11a8fa5482146838f0a66158ca83039c548", + "official_parameters": true, + "tank_royale_commit": "a553d8069e3f67e8711f0a3e976c339f389faec8", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "gre.svman4.Leonidas 1.3.2", + "division": "roborumble", + "jar": "gre.svman4.Leonidas_1.3.2.jar", + "jar_sha256": "0e4775eaa84ab348168b94c608810a0430353fcc3cafcf052ad3a7a78b2a53a8", + "key": "roborumble/gre.svman4.Leonidas_1.3.2.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (no score)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 22.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5601.0, + "scores": [ + 2852.0, + 2749.0 + ], + "skipped": null + } + } + ], + "status": "DISCREPANCY (no score)" + }, + "roborumble/gre.svman4.Morfeas_1.4.3.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "gre.svman4.Morfeas 1.4.3", + "division": "roborumble", + "jar": "gre.svman4.Morfeas_1.4.3.jar", + "jar_sha256": "eb0b9e69c2cb375ac58906103cf72cb15d5fd8128e6d56a09e145961c935648c", + "key": "roborumble/gre.svman4.Morfeas_1.4.3.jar", + "kind": "robot" + }, + "latest_observation": "414e70d87bc5aa3d", + "observations": [ + { + "classic": { + "elapsed": 42.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 0.0, + "scores": [ + 0.0, + 0.0 + ], + "selected": "gre.svman4.Morfeas 1.4.3" + }, + "completed_at": "2026-09-12T12:52:43Z", + "confirmation": null, + "delta_pct": null, + "id": "414e70d87bc5aa3d", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "975ed11a8fa5482146838f0a66158ca83039c548", + "official_parameters": true, + "tank_royale_commit": "a553d8069e3f67e8711f0a3e976c339f389faec8", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "gre.svman4.Morfeas 1.4.3", + "division": "roborumble", + "jar": "gre.svman4.Morfeas_1.4.3.jar", + "jar_sha256": "eb0b9e69c2cb375ac58906103cf72cb15d5fd8128e6d56a09e145961c935648c", + "key": "roborumble/gre.svman4.Morfeas_1.4.3.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (outcome)", + "tank_royale": { + "bridge_only_signatures": [ + [ + "java.util.ConcurrentModificationException", + "gre.svman4.Morfeas.updateMineWaves" + ] + ], + "elapsed": 8.2, + "error_count": 3, + "error_signatures": [ + { + "exception": "java.util.ConcurrentModificationException", + "origin": "gre.svman4.Morfeas.updateMineWaves" + } + ], + "errors": [ + "HARNESS: worker produced no result (exit code -1)", + "java.util.ConcurrentModificationException", + "java.util.ConcurrentModificationException" + ], + "has_log": true, + "ok": false, + "score": null, + "scores": [], + "skipped": null + } + } + ], + "status": "DISCREPANCY (outcome)" + }, + "roborumble/grybgoofy.GoofyBot_0.10.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "grybgoofy.GoofyBot 0.10", + "division": "roborumble", + "jar": "grybgoofy.GoofyBot_0.10.jar", + "jar_sha256": "483a31a648d051d9a856f78f266243a6b0c6ffe473100a85c7b3f8fae519578f", + "key": "roborumble/grybgoofy.GoofyBot_0.10.jar", + "kind": "robot" + }, + "latest_observation": "8ca01ec24f3ecc76", + "observations": [ + { + "classic": { + "elapsed": 41.8, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 0.0, + "scores": [ + 0.0, + 0.0 + ], + "selected": "grybgoofy.GoofyBot 0.10" + }, + "completed_at": "2026-09-12T12:53:49Z", + "confirmation": null, + "delta_pct": null, + "id": "8ca01ec24f3ecc76", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "975ed11a8fa5482146838f0a66158ca83039c548", + "official_parameters": true, + "tank_royale_commit": "a553d8069e3f67e8711f0a3e976c339f389faec8", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "grybgoofy.GoofyBot 0.10", + "division": "roborumble", + "jar": "grybgoofy.GoofyBot_0.10.jar", + "jar_sha256": "483a31a648d051d9a856f78f266243a6b0c6ffe473100a85c7b3f8fae519578f", + "key": "roborumble/grybgoofy.GoofyBot_0.10.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (no score)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 24.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 4685.0, + "scores": [ + 2612.0, + 2073.0 + ], + "skipped": null + } + } + ], + "status": "DISCREPANCY (no score)" + }, + "roborumble/gtf.robocode.Strafer_2.1.1.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "gtf.robocode.Strafer 2.1.1", + "division": "roborumble", + "jar": "gtf.robocode.Strafer_2.1.1.jar", + "jar_sha256": "65b4a500b9eed77a144f49be8771db1f47c3efca36c05fb516fcfaaaebe7b9d5", + "key": "roborumble/gtf.robocode.Strafer_2.1.1.jar", + "kind": "robot" + }, + "latest_observation": "1b9743c2f5eaa391", + "observations": [ + { + "classic": { + "elapsed": 41.9, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 0.0, + "scores": [ + 0.0, + 0.0 + ], + "selected": "gtf.robocode.Strafer 2.1.1" + }, + "completed_at": "2026-09-12T12:56:40Z", + "confirmation": null, + "delta_pct": null, + "id": "1b9743c2f5eaa391", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "975ed11a8fa5482146838f0a66158ca83039c548", + "official_parameters": true, + "tank_royale_commit": "a553d8069e3f67e8711f0a3e976c339f389faec8", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "gtf.robocode.Strafer 2.1.1", + "division": "roborumble", + "jar": "gtf.robocode.Strafer_2.1.1.jar", + "jar_sha256": "65b4a500b9eed77a144f49be8771db1f47c3efca36c05fb516fcfaaaebe7b9d5", + "key": "roborumble/gtf.robocode.Strafer_2.1.1.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (no score)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 14.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 7902.0, + "scores": [ + 4556.0, + 3346.0 + ], + "skipped": null + } + } + ], + "status": "DISCREPANCY (no score)" + }, + "roborumble/gu.MicroScoob_1.3.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "gu.MicroScoob 1.3", + "division": "roborumble", + "jar": "gu.MicroScoob_1.3.jar", + "jar_sha256": "b2aeac440b86df093f7badbba3423a85844aae98ae04c5081217bbfa68864dbe", + "key": "roborumble/gu.MicroScoob_1.3.jar", + "kind": "robot" + }, + "latest_observation": "7c0c54c5c13d5050", + "observations": [ + { + "classic": { + "elapsed": 41.8, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 0.0, + "scores": [ + 0.0, + 0.0 + ], + "selected": "gu.MicroScoob 1.3" + }, + "completed_at": "2026-09-12T12:57:34Z", + "confirmation": null, + "delta_pct": null, + "id": "7c0c54c5c13d5050", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "975ed11a8fa5482146838f0a66158ca83039c548", + "official_parameters": true, + "tank_royale_commit": "a553d8069e3f67e8711f0a3e976c339f389faec8", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "gu.MicroScoob 1.3", + "division": "roborumble", + "jar": "gu.MicroScoob_1.3.jar", + "jar_sha256": "b2aeac440b86df093f7badbba3423a85844aae98ae04c5081217bbfa68864dbe", + "key": "roborumble/gu.MicroScoob_1.3.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (no score)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 12.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 6979.0, + "scores": [ + 3568.0, + 3411.0 + ], + "skipped": null + } + } + ], + "status": "DISCREPANCY (no score)" + }, + "roborumble/gwah.GBotMarkIV_1.0.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "gwah.GBotMarkIV 1.0", + "division": "roborumble", + "jar": "gwah.GBotMarkIV_1.0.jar", + "jar_sha256": "6f4819d2206c5546bf8f5fbfc49cb3bab648974c1cff09b312f08e1449fff376", + "key": "roborumble/gwah.GBotMarkIV_1.0.jar", + "kind": "robot" + }, + "latest_observation": "8b1a6bdf876ed094", + "observations": [ + { + "classic": { + "elapsed": 41.9, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 0.0, + "scores": [ + 0.0, + 0.0 + ], + "selected": "gwah.GBotMarkIV 1.0" + }, + "completed_at": "2026-09-12T12:58:28Z", + "confirmation": null, + "delta_pct": null, + "id": "8b1a6bdf876ed094", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "975ed11a8fa5482146838f0a66158ca83039c548", + "official_parameters": true, + "tank_royale_commit": "a553d8069e3f67e8711f0a3e976c339f389faec8", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "gwah.GBotMarkIV 1.0", + "division": "roborumble", + "jar": "gwah.GBotMarkIV_1.0.jar", + "jar_sha256": "6f4819d2206c5546bf8f5fbfc49cb3bab648974c1cff09b312f08e1449fff376", + "key": "roborumble/gwah.GBotMarkIV_1.0.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (no score)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 12.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 11187.0, + "scores": [ + 5781.0, + 5406.0 + ], + "skipped": null + } + } + ], + "status": "DISCREPANCY (no score)" + }, + "roborumble/gwah.GerryBotMkII_1.5.1.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "gwah.GerryBotMkII 1.5.1", + "division": "roborumble", + "jar": "gwah.GerryBotMkII_1.5.1.jar", + "jar_sha256": "5fd6745b4f1cde058c3d7f173f9604363a5987982c481936bf7921008da4d636", + "key": "roborumble/gwah.GerryBotMkII_1.5.1.jar", + "kind": "robot" + }, + "latest_observation": "f10a31cfcd02142e", + "observations": [ + { + "classic": { + "elapsed": 41.9, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 0.0, + "scores": [ + 0.0, + 0.0 + ], + "selected": "gwah.GerryBotMkII 1.5.1" + }, + "completed_at": "2026-09-12T12:59:51Z", + "confirmation": null, + "delta_pct": null, + "id": "f10a31cfcd02142e", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "cdeb97a7486f788656e31a106d90923338945175", + "official_parameters": true, + "tank_royale_commit": "a553d8069e3f67e8711f0a3e976c339f389faec8", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "gwah.GerryBotMkII 1.5.1", + "division": "roborumble", + "jar": "gwah.GerryBotMkII_1.5.1.jar", + "jar_sha256": "5fd6745b4f1cde058c3d7f173f9604363a5987982c481936bf7921008da4d636", + "key": "roborumble/gwah.GerryBotMkII_1.5.1.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (no score)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 12.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 11902.0, + "scores": [ + 6073.0, + 5829.0 + ], + "skipped": null + } + } + ], + "status": "DISCREPANCY (no score)" + }, + "roborumble/ha2.T2_0.2.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "ha2.T2 0.2", + "division": "roborumble", + "jar": "ha2.T2_0.2.jar", + "jar_sha256": "b78c42b9d141f769d3b31180fad786e32627175d114b87bc12d223eb7734dcb9", + "key": "roborumble/ha2.T2_0.2.jar", + "kind": "robot" + }, + "latest_observation": "1bece4ef2e0c4719", + "observations": [ + { + "classic": { + "elapsed": 42.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 0.0, + "scores": [ + 0.0, + 0.0 + ], + "selected": "ha2.T2 0.2" + }, + "completed_at": "2026-09-12T13:00:55Z", + "confirmation": null, + "delta_pct": null, + "id": "1bece4ef2e0c4719", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "cdeb97a7486f788656e31a106d90923338945175", + "official_parameters": true, + "tank_royale_commit": "a553d8069e3f67e8711f0a3e976c339f389faec8", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "ha2.T2 0.2", + "division": "roborumble", + "jar": "ha2.T2_0.2.jar", + "jar_sha256": "b78c42b9d141f769d3b31180fad786e32627175d114b87bc12d223eb7734dcb9", + "key": "roborumble/ha2.T2_0.2.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (no score)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 22.1, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 4932.0, + "scores": [ + 2866.0, + 2066.0 + ], + "skipped": null + } + } + ], + "status": "DISCREPANCY (no score)" + }, + "roborumble/ha2.T2b_0.2b.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "ha2.T2b 0.2b", + "division": "roborumble", + "jar": "ha2.T2b_0.2b.jar", + "jar_sha256": "5f54c1a8bf8e4ed7d8ccc358241310fcebaff1f037156ec3729ac58a0df80b17", + "key": "roborumble/ha2.T2b_0.2b.jar", + "kind": "robot" + }, + "latest_observation": "15ea51b55ba7e79a", + "observations": [ + { + "classic": { + "elapsed": 41.9, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 0.0, + "scores": [ + 0.0, + 0.0 + ], + "selected": "ha2.T2b 0.2b" + }, + "completed_at": "2026-09-12T13:01:56Z", + "confirmation": null, + "delta_pct": null, + "id": "15ea51b55ba7e79a", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "cdeb97a7486f788656e31a106d90923338945175", + "official_parameters": true, + "tank_royale_commit": "a553d8069e3f67e8711f0a3e976c339f389faec8", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "ha2.T2b 0.2b", + "division": "roborumble", + "jar": "ha2.T2b_0.2b.jar", + "jar_sha256": "5f54c1a8bf8e4ed7d8ccc358241310fcebaff1f037156ec3729ac58a0df80b17", + "key": "roborumble/ha2.T2b_0.2b.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (no score)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 18.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5434.0, + "scores": [ + 2860.0, + 2574.0 + ], + "skipped": null + } + } + ], + "status": "DISCREPANCY (no score)" + }, + "roborumble/ha2.T3_0.1.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "ha2.T3 0.1", + "division": "roborumble", + "jar": "ha2.T3_0.1.jar", + "jar_sha256": "4a0fe8d4a2a9f29a7a812a500bd6da9423913846cb512d3b1168fc83ba621474", + "key": "roborumble/ha2.T3_0.1.jar", + "kind": "robot" + }, + "latest_observation": "2c1320bf09ac71d5", + "observations": [ + { + "classic": { + "elapsed": 2.6, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 7607.0, + "scores": [ + 3650.0, + 3957.0 + ], + "selected": "ha2.T3 0.1" + }, + "completed_at": "2026-09-12T15:21:26Z", + "confirmation": null, + "delta_pct": -16.9, + "id": "2c1320bf09ac71d5", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "5939e54be425d8aca0dd5e69f96538773a8fdc8a", + "official_parameters": true, + "tank_royale_commit": "c3cb68981528224e01ffdabef4f0673f3d504681", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "ha2.T3 0.1", + "division": "roborumble", + "jar": "ha2.T3_0.1.jar", + "jar_sha256": "4a0fe8d4a2a9f29a7a812a500bd6da9423913846cb512d3b1168fc83ba621474", + "key": "roborumble/ha2.T3_0.1.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 16.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 6318.0, + "scores": [ + 3622.0, + 2696.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/ha2.T3_0.2.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "ha2.T3 0.2", + "division": "roborumble", + "jar": "ha2.T3_0.2.jar", + "jar_sha256": "67a27f0941ceeaf22041c6497011dead138b8923a95dc5cb131b567ff46c9ce6", + "key": "roborumble/ha2.T3_0.2.jar", + "kind": "robot" + }, + "latest_observation": "d16bed013eca821a", + "observations": [ + { + "classic": { + "elapsed": 2.4, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 7674.0, + "scores": [ + 3994.0, + 3680.0 + ], + "selected": "ha2.T3 0.2" + }, + "completed_at": "2026-09-12T15:21:47Z", + "confirmation": null, + "delta_pct": -38.1, + "id": "d16bed013eca821a", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "5939e54be425d8aca0dd5e69f96538773a8fdc8a", + "official_parameters": true, + "tank_royale_commit": "c3cb68981528224e01ffdabef4f0673f3d504681", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "ha2.T3 0.2", + "division": "roborumble", + "jar": "ha2.T3_0.2.jar", + "jar_sha256": "67a27f0941ceeaf22041c6497011dead138b8923a95dc5cb131b567ff46c9ce6", + "key": "roborumble/ha2.T3_0.2.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (score)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 18.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 4747.0, + "scores": [ + 2808.0, + 1939.0 + ], + "skipped": null + } + } + ], + "status": "score-review" + }, + "roborumble/hamilton.Hamilton_1.0.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "hamilton.Hamilton 1.0", + "division": "roborumble", + "jar": "hamilton.Hamilton_1.0.jar", + "jar_sha256": "44e24726c69ef7fdc4ee3e18abd393c83d01e214d81cf5da79d4b5e7dd4b4cf0", + "key": "roborumble/hamilton.Hamilton_1.0.jar", + "kind": "robot" + }, + "latest_observation": "11c09b304e986c4d", + "observations": [ + { + "classic": { + "elapsed": 3.7, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 6929.0, + "scores": [ + 3406.0, + 3523.0 + ], + "selected": "hamilton.Hamilton 1.0" + }, + "completed_at": "2026-09-12T15:22:09Z", + "confirmation": null, + "delta_pct": -14.7, + "id": "11c09b304e986c4d", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "5939e54be425d8aca0dd5e69f96538773a8fdc8a", + "official_parameters": true, + "tank_royale_commit": "c3cb68981528224e01ffdabef4f0673f3d504681", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "hamilton.Hamilton 1.0", + "division": "roborumble", + "jar": "hamilton.Hamilton_1.0.jar", + "jar_sha256": "44e24726c69ef7fdc4ee3e18abd393c83d01e214d81cf5da79d4b5e7dd4b4cf0", + "key": "roborumble/hamilton.Hamilton_1.0.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 18.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5910.0, + "scores": [ + 3596.0, + 2314.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/hapiel.Spiral_0.1.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "hapiel.Spiral 0.1", + "division": "roborumble", + "jar": "hapiel.Spiral_0.1.jar", + "jar_sha256": "31ee6d627d0b4bdc3edf15c6175f8cd5b79144156b8e3e7bf03b8b138039224e", + "key": "roborumble/hapiel.Spiral_0.1.jar", + "kind": "robot" + }, + "latest_observation": "fdb4c259f116e43f", + "observations": [ + { + "classic": { + "elapsed": 2.5, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 6888.0, + "scores": [ + 3080.0, + 3808.0 + ], + "selected": "hapiel.Spiral 0.1" + }, + "completed_at": "2026-09-12T15:22:32Z", + "confirmation": null, + "delta_pct": -12.4, + "id": "fdb4c259f116e43f", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "5939e54be425d8aca0dd5e69f96538773a8fdc8a", + "official_parameters": true, + "tank_royale_commit": "c3cb68981528224e01ffdabef4f0673f3d504681", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "hapiel.Spiral 0.1", + "division": "roborumble", + "jar": "hapiel.Spiral_0.1.jar", + "jar_sha256": "31ee6d627d0b4bdc3edf15c6175f8cd5b79144156b8e3e7bf03b8b138039224e", + "key": "roborumble/hapiel.Spiral_0.1.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 20.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 6031.0, + "scores": [ + 3367.0, + 2664.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/hfgrobots.HFG_1.0.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "hfgrobots.HFG 1.0", + "division": "roborumble", + "jar": "hfgrobots.HFG_1.0.jar", + "jar_sha256": "ba26b277f95c9e06b2bb5f2cc54d9a2cb9e9c292c2b74920c41261a172c183ed", + "key": "roborumble/hfgrobots.HFG_1.0.jar", + "kind": "robot" + }, + "latest_observation": "6421835506f37155", + "observations": [ + { + "classic": { + "elapsed": 3.8, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 6203.0, + "scores": [ + 3549.0, + 2654.0 + ], + "selected": "hfgrobots.HFG 1.0" + }, + "completed_at": "2026-09-12T15:23:24Z", + "confirmation": null, + "delta_pct": -25.4, + "id": "6421835506f37155", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "5939e54be425d8aca0dd5e69f96538773a8fdc8a", + "official_parameters": true, + "tank_royale_commit": "c3cb68981528224e01ffdabef4f0673f3d504681", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "hfgrobots.HFG 1.0", + "division": "roborumble", + "jar": "hfgrobots.HFG_1.0.jar", + "jar_sha256": "ba26b277f95c9e06b2bb5f2cc54d9a2cb9e9c292c2b74920c41261a172c183ed", + "key": "roborumble/hfgrobots.HFG_1.0.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (score)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 28.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 4625.0, + "scores": [ + 2353.0, + 2272.0 + ], + "skipped": null + } + } + ], + "status": "score-review" + }, + "roborumble/hirataatsushi.Neo_1.6.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "hirataatsushi.Neo 1.6", + "division": "roborumble", + "jar": "hirataatsushi.Neo_1.6.jar", + "jar_sha256": "7ea03263674849d2267534910a437681b03cccea9e0d780da8396dda1f329aab", + "key": "roborumble/hirataatsushi.Neo_1.6.jar", + "kind": "robot" + }, + "latest_observation": "1a0cfd2f9819f9a5", + "observations": [ + { + "classic": { + "elapsed": 2.6, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 6736.0, + "scores": [ + 3077.0, + 3659.0 + ], + "selected": "hirataatsushi.Neo 1.6" + }, + "completed_at": "2026-09-12T15:23:50Z", + "confirmation": null, + "delta_pct": -9.7, + "id": "1a0cfd2f9819f9a5", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "5939e54be425d8aca0dd5e69f96538773a8fdc8a", + "official_parameters": true, + "tank_royale_commit": "c3cb68981528224e01ffdabef4f0673f3d504681", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "hirataatsushi.Neo 1.6", + "division": "roborumble", + "jar": "hirataatsushi.Neo_1.6.jar", + "jar_sha256": "7ea03263674849d2267534910a437681b03cccea9e0d780da8396dda1f329aab", + "key": "roborumble/hirataatsushi.Neo_1.6.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 22.2, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 6082.0, + "scores": [ + 3580.0, + 2502.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/hirataatsushi.Trinity_0.003.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "hirataatsushi.Trinity 0.003", + "division": "roborumble", + "jar": "hirataatsushi.Trinity_0.003.jar", + "jar_sha256": "5b6d12ac830c29781d82ac489b1997427fe6b9ae1601c4dc1b22134ef4a6dbb2", + "key": "roborumble/hirataatsushi.Trinity_0.003.jar", + "kind": "robot" + }, + "latest_observation": "acff8e25afd66c29", + "observations": [ + { + "classic": { + "elapsed": 2.9, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 10388.0, + "scores": [ + 5371.0, + 5017.0 + ], + "selected": "hirataatsushi.Trinity 0.003" + }, + "completed_at": "2026-09-12T15:24:19Z", + "confirmation": null, + "delta_pct": -58.0, + "id": "acff8e25afd66c29", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "5939e54be425d8aca0dd5e69f96538773a8fdc8a", + "official_parameters": true, + "tank_royale_commit": "c3cb68981528224e01ffdabef4f0673f3d504681", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "hirataatsushi.Trinity 0.003", + "division": "roborumble", + "jar": "hirataatsushi.Trinity_0.003.jar", + "jar_sha256": "5b6d12ac830c29781d82ac489b1997427fe6b9ae1601c4dc1b22134ef4a6dbb2", + "key": "roborumble/hirataatsushi.Trinity_0.003.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (score)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 26.1, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 4365.0, + "scores": [ + 2438.0, + 1927.0 + ], + "skipped": null + } + } + ], + "status": "score-review" + }, + "roborumble/hlavko.micro.Flex_1.5.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "hlavko.micro.Flex 1.5", + "division": "roborumble", + "jar": "hlavko.micro.Flex_1.5.jar", + "jar_sha256": "c0483b78ec051e00d18a60f85c937aa7661498dd2872fb0078d9f6e3abb54ff5", + "key": "roborumble/hlavko.micro.Flex_1.5.jar", + "kind": "robot" + }, + "latest_observation": "c7bbcab70575bea1", + "observations": [ + { + "classic": { + "elapsed": 3.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5883.0, + "scores": [ + 3152.0, + 2731.0 + ], + "selected": "hlavko.micro.Flex 1.5" + }, + "completed_at": "2026-09-12T15:24:36Z", + "confirmation": null, + "delta_pct": -43.5, + "id": "c7bbcab70575bea1", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "5939e54be425d8aca0dd5e69f96538773a8fdc8a", + "official_parameters": true, + "tank_royale_commit": "c3cb68981528224e01ffdabef4f0673f3d504681", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "hlavko.micro.Flex 1.5", + "division": "roborumble", + "jar": "hlavko.micro.Flex_1.5.jar", + "jar_sha256": "c0483b78ec051e00d18a60f85c937aa7661498dd2872fb0078d9f6e3abb54ff5", + "key": "roborumble/hlavko.micro.Flex_1.5.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (score)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 14.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 3324.0, + "scores": [ + 1857.0, + 1467.0 + ], + "skipped": null + } + } + ], + "status": "score-review" + }, + "roborumble/hlavko.nano.Phoenix_1.0.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "hlavko.nano.Phoenix 1.0", + "division": "roborumble", + "jar": "hlavko.nano.Phoenix_1.0.jar", + "jar_sha256": "2822cec1660882ce44863533a292ca5616e9a0667f6d4512e3aef4f91996fe8b", + "key": "roborumble/hlavko.nano.Phoenix_1.0.jar", + "kind": "robot" + }, + "latest_observation": "c439627c649a2174", + "observations": [ + { + "classic": { + "elapsed": 2.2, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5628.0, + "scores": [ + 2620.0, + 3008.0 + ], + "selected": "hlavko.nano.Phoenix 1.0" + }, + "completed_at": "2026-09-12T15:24:53Z", + "confirmation": null, + "delta_pct": -4.2, + "id": "c439627c649a2174", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "5939e54be425d8aca0dd5e69f96538773a8fdc8a", + "official_parameters": true, + "tank_royale_commit": "c3cb68981528224e01ffdabef4f0673f3d504681", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "hlavko.nano.Phoenix 1.0", + "division": "roborumble", + "jar": "hlavko.nano.Phoenix_1.0.jar", + "jar_sha256": "2822cec1660882ce44863533a292ca5616e9a0667f6d4512e3aef4f91996fe8b", + "key": "roborumble/hlavko.nano.Phoenix_1.0.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 14.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5394.0, + "scores": [ + 2843.0, + 2551.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/hlavko.nano.Ringo_1.0d.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "hlavko.nano.Ringo 1.0d", + "division": "roborumble", + "jar": "hlavko.nano.Ringo_1.0d.jar", + "jar_sha256": "d710d08626f906810cd06201d3d5dc0a19d8d8821c1bb5eb8e6ed87d9758ff92", + "key": "roborumble/hlavko.nano.Ringo_1.0d.jar", + "kind": "robot" + }, + "latest_observation": "db5b621b966317d5", + "observations": [ + { + "classic": { + "elapsed": 2.5, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 3625.0, + "scores": [ + 1919.0, + 1706.0 + ], + "selected": "hlavko.nano.Ringo 1.0d" + }, + "completed_at": "2026-09-12T15:25:14Z", + "confirmation": null, + "delta_pct": -7.6, + "id": "db5b621b966317d5", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "5939e54be425d8aca0dd5e69f96538773a8fdc8a", + "official_parameters": true, + "tank_royale_commit": "c3cb68981528224e01ffdabef4f0673f3d504681", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "hlavko.nano.Ringo 1.0d", + "division": "roborumble", + "jar": "hlavko.nano.Ringo_1.0d.jar", + "jar_sha256": "d710d08626f906810cd06201d3d5dc0a19d8d8821c1bb5eb8e6ed87d9758ff92", + "key": "roborumble/hlavko.nano.Ringo_1.0d.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 18.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 3351.0, + "scores": [ + 1815.0, + 1536.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/hlavko.nano.Ringo_2.0.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "hlavko.nano.Ringo 2.0", + "division": "roborumble", + "jar": "hlavko.nano.Ringo_2.0.jar", + "jar_sha256": "ba30da9626ae7b3c83c57d65b121edad8d9c7c8342c7a688fdb2dbae33899b8b", + "key": "roborumble/hlavko.nano.Ringo_2.0.jar", + "kind": "robot" + }, + "latest_observation": "9924522cdf6df090", + "observations": [ + { + "classic": { + "elapsed": 2.8, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 3745.0, + "scores": [ + 1825.0, + 1920.0 + ], + "selected": "hlavko.nano.Ringo 2.0" + }, + "completed_at": "2026-09-12T15:25:39Z", + "confirmation": null, + "delta_pct": -25.8, + "id": "9924522cdf6df090", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "5939e54be425d8aca0dd5e69f96538773a8fdc8a", + "official_parameters": true, + "tank_royale_commit": "c3cb68981528224e01ffdabef4f0673f3d504681", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "hlavko.nano.Ringo 2.0", + "division": "roborumble", + "jar": "hlavko.nano.Ringo_2.0.jar", + "jar_sha256": "ba30da9626ae7b3c83c57d65b121edad8d9c7c8342c7a688fdb2dbae33899b8b", + "key": "roborumble/hlavko.nano.Ringo_2.0.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (score)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 22.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 2778.0, + "scores": [ + 1550.0, + 1228.0 + ], + "skipped": null + } + } + ], + "status": "score-review" + }, + "roborumble/homerbots.h1_1.0.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "homerbots.h1 1.0", + "division": "roborumble", + "jar": "homerbots.h1_1.0.jar", + "jar_sha256": "8b91e5ab802399ed560116755d5e76340693bf35a8ea6a168355c20cc11036c9", + "key": "roborumble/homerbots.h1_1.0.jar", + "kind": "robot" + }, + "latest_observation": "02c3317ae696df0a", + "observations": [ + { + "classic": { + "elapsed": 2.5, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 8526.0, + "scores": [ + 3998.0, + 4528.0 + ], + "selected": "homerbots.h1 1.0" + }, + "completed_at": "2026-09-12T15:25:58Z", + "confirmation": null, + "delta_pct": -11.1, + "id": "02c3317ae696df0a", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "5939e54be425d8aca0dd5e69f96538773a8fdc8a", + "official_parameters": true, + "tank_royale_commit": "c3cb68981528224e01ffdabef4f0673f3d504681", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "homerbots.h1 1.0", + "division": "roborumble", + "jar": "homerbots.h1_1.0.jar", + "jar_sha256": "8b91e5ab802399ed560116755d5e76340693bf35a8ea6a168355c20cc11036c9", + "key": "roborumble/homerbots.h1_1.0.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 16.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 7576.0, + "scores": [ + 4004.0, + 3572.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/hp.Athena_0.1.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "hp.Athena 0.1", + "division": "roborumble", + "jar": "hp.Athena_0.1.jar", + "jar_sha256": "ff2aaf54e7e34fef3337d062d3b93bf942da76485b59eec49bb6eb440fdde85d", + "key": "roborumble/hp.Athena_0.1.jar", + "kind": "robot" + }, + "latest_observation": "07e6a55f655750ec", + "observations": [ + { + "classic": { + "elapsed": 2.5, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5293.0, + "scores": [ + 2723.0, + 2570.0 + ], + "selected": "hp.Athena 0.1" + }, + "completed_at": "2026-09-12T15:26:19Z", + "confirmation": null, + "delta_pct": -11.5, + "id": "07e6a55f655750ec", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "5939e54be425d8aca0dd5e69f96538773a8fdc8a", + "official_parameters": true, + "tank_royale_commit": "c3cb68981528224e01ffdabef4f0673f3d504681", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "hp.Athena 0.1", + "division": "roborumble", + "jar": "hp.Athena_0.1.jar", + "jar_sha256": "ff2aaf54e7e34fef3337d062d3b93bf942da76485b59eec49bb6eb440fdde85d", + "key": "roborumble/hp.Athena_0.1.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 18.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 4686.0, + "scores": [ + 2522.0, + 2164.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/hs.SimpleHBot_1.3.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "hs.SimpleHBot 1.3", + "division": "roborumble", + "jar": "hs.SimpleHBot_1.3.jar", + "jar_sha256": "5ad20a1354f20e2964e33e95c2d5157f1ee97d6889d1c4fc2a8dc400306e78ca", + "key": "roborumble/hs.SimpleHBot_1.3.jar", + "kind": "robot" + }, + "latest_observation": "c9d49e297432faa4", + "observations": [ + { + "classic": { + "elapsed": 2.7, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 3590.0, + "scores": [ + 1456.0, + 2134.0 + ], + "selected": "hs.SimpleHBot 1.3" + }, + "completed_at": "2026-09-12T15:26:38Z", + "confirmation": null, + "delta_pct": 55.8, + "id": "c9d49e297432faa4", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "5939e54be425d8aca0dd5e69f96538773a8fdc8a", + "official_parameters": true, + "tank_royale_commit": "c3cb68981528224e01ffdabef4f0673f3d504681", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "hs.SimpleHBot 1.3", + "division": "roborumble", + "jar": "hs.SimpleHBot_1.3.jar", + "jar_sha256": "5ad20a1354f20e2964e33e95c2d5157f1ee97d6889d1c4fc2a8dc400306e78ca", + "key": "roborumble/hs.SimpleHBot_1.3.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (score)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 16.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5594.0, + "scores": [ + 3182.0, + 2412.0 + ], + "skipped": null + } + } + ], + "status": "score-review" + }, + "roborumble/hvilela.HVilela_0.9.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "hvilela.HVilela 0.9", + "division": "roborumble", + "jar": "hvilela.HVilela_0.9.jar", + "jar_sha256": "819a94baaf051b689da9226a4939da6c14cff0d61d882cb86c6e5a8b4d9b1830", + "key": "roborumble/hvilela.HVilela_0.9.jar", + "kind": "robot" + }, + "latest_observation": "5e7d6ba86fc06b0e", + "observations": [ + { + "classic": { + "elapsed": 2.7, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 6525.0, + "scores": [ + 3389.0, + 3136.0 + ], + "selected": "hvilela.HVilela 0.9" + }, + "completed_at": "2026-09-12T15:26:55Z", + "confirmation": null, + "delta_pct": 63.3, + "id": "5e7d6ba86fc06b0e", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "5939e54be425d8aca0dd5e69f96538773a8fdc8a", + "official_parameters": true, + "tank_royale_commit": "c3cb68981528224e01ffdabef4f0673f3d504681", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "hvilela.HVilela 0.9", + "division": "roborumble", + "jar": "hvilela.HVilela_0.9.jar", + "jar_sha256": "819a94baaf051b689da9226a4939da6c14cff0d61d882cb86c6e5a8b4d9b1830", + "key": "roborumble/hvilela.HVilela_0.9.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (score)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 14.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 10654.0, + "scores": [ + 5347.0, + 5307.0 + ], + "skipped": null + } + } + ], + "status": "score-review" + }, + "roborumble/infovk.s_schwarzm16.silverbird_1.0.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "infovk.s_schwarzm16.silverbird 1.0", + "division": "roborumble", + "jar": "infovk.s_schwarzm16.silverbird_1.0.jar", + "jar_sha256": "c161606a0fdf547ca5e2f4cae734b24c76672684fd360957658ca9cda7813853", + "key": "roborumble/infovk.s_schwarzm16.silverbird_1.0.jar", + "kind": "robot" + }, + "latest_observation": "e9631ba098d70dcb", + "observations": [ + { + "classic": { + "elapsed": 10.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 4737.0, + "scores": [ + 2444.0, + 2293.0 + ], + "selected": "infovk.s_schwarzm16.silverbird 1.0" + }, + "completed_at": "2026-09-12T15:28:13Z", + "confirmation": null, + "delta_pct": -11.1, + "id": "e9631ba098d70dcb", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "5939e54be425d8aca0dd5e69f96538773a8fdc8a", + "official_parameters": true, + "tank_royale_commit": "c3cb68981528224e01ffdabef4f0673f3d504681", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "infovk.s_schwarzm16.silverbird 1.0", + "division": "roborumble", + "jar": "infovk.s_schwarzm16.silverbird_1.0.jar", + "jar_sha256": "c161606a0fdf547ca5e2f4cae734b24c76672684fd360957658ca9cda7813853", + "key": "roborumble/infovk.s_schwarzm16.silverbird_1.0.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 48.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 4213.0, + "scores": [ + 2251.0, + 1962.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/ins.MobyNano_0.8.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "ins.MobyNano 0.8", + "division": "roborumble", + "jar": "ins.MobyNano_0.8.jar", + "jar_sha256": "44edef1a56ef812ee1a7adddae4bcde2ad90350b466e72976fa8ba6acdf7e09f", + "key": "roborumble/ins.MobyNano_0.8.jar", + "kind": "robot" + }, + "latest_observation": "41a4925ee8539ff3", + "observations": [ + { + "classic": { + "elapsed": 3.2, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 4443.0, + "scores": [ + 2061.0, + 2382.0 + ], + "selected": "ins.MobyNano 0.8" + }, + "completed_at": "2026-09-12T15:28:28Z", + "confirmation": null, + "delta_pct": -32.1, + "id": "41a4925ee8539ff3", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "5939e54be425d8aca0dd5e69f96538773a8fdc8a", + "official_parameters": true, + "tank_royale_commit": "c3cb68981528224e01ffdabef4f0673f3d504681", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "ins.MobyNano 0.8", + "division": "roborumble", + "jar": "ins.MobyNano_0.8.jar", + "jar_sha256": "44edef1a56ef812ee1a7adddae4bcde2ad90350b466e72976fa8ba6acdf7e09f", + "key": "roborumble/ins.MobyNano_0.8.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (score)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 12.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 3016.0, + "scores": [ + 1778.0, + 1238.0 + ], + "skipped": null + } + } + ], + "status": "score-review" + }, + "roborumble/intruder.PrairieWolf_2.61.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "intruder.PrairieWolf 2.61", + "division": "roborumble", + "jar": "intruder.PrairieWolf_2.61.jar", + "jar_sha256": "5d0255e53502b53e2b1235f1b66d03a3b45d1680ead0b689f140f2a8d60b5309", + "key": "roborumble/intruder.PrairieWolf_2.61.jar", + "kind": "robot" + }, + "latest_observation": "a0d663f150aa09e7", + "observations": [ + { + "classic": { + "elapsed": 3.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 6310.0, + "scores": [ + 3150.0, + 3160.0 + ], + "selected": "intruder.PrairieWolf 2.61" + }, + "completed_at": "2026-09-12T15:28:52Z", + "confirmation": null, + "delta_pct": -6.9, + "id": "a0d663f150aa09e7", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "5939e54be425d8aca0dd5e69f96538773a8fdc8a", + "official_parameters": true, + "tank_royale_commit": "c3cb68981528224e01ffdabef4f0673f3d504681", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "intruder.PrairieWolf 2.61", + "division": "roborumble", + "jar": "intruder.PrairieWolf_2.61.jar", + "jar_sha256": "5d0255e53502b53e2b1235f1b66d03a3b45d1680ead0b689f140f2a8d60b5309", + "key": "roborumble/intruder.PrairieWolf_2.61.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 20.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5874.0, + "scores": [ + 3374.0, + 2500.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/is.fon.rs.FonDestroyer3084_1.0.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "is.fon.rs.FonDestroyer3084 1.0", + "division": "roborumble", + "jar": "is.fon.rs.FonDestroyer3084_1.0.jar", + "jar_sha256": "475e564a78e5e0ce2ea4bf7d6693108ab9ef4d03e64e11ba8d75f3aacedb4b68", + "key": "roborumble/is.fon.rs.FonDestroyer3084_1.0.jar", + "kind": "robot" + }, + "latest_observation": "fb46403241162b0e", + "observations": [ + { + "classic": { + "elapsed": 2.3, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 12695.0, + "scores": [ + 6362.0, + 6333.0 + ], + "selected": "is.fon.rs.FonDestroyer3084 1.0" + }, + "completed_at": "2026-09-12T15:29:04Z", + "confirmation": null, + "delta_pct": -21.5, + "id": "fb46403241162b0e", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "5939e54be425d8aca0dd5e69f96538773a8fdc8a", + "official_parameters": true, + "tank_royale_commit": "c3cb68981528224e01ffdabef4f0673f3d504681", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "is.fon.rs.FonDestroyer3084 1.0", + "division": "roborumble", + "jar": "is.fon.rs.FonDestroyer3084_1.0.jar", + "jar_sha256": "475e564a78e5e0ce2ea4bf7d6693108ab9ef4d03e64e11ba8d75f3aacedb4b68", + "key": "roborumble/is.fon.rs.FonDestroyer3084_1.0.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 10.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 9970.0, + "scores": [ + 5635.0, + 4335.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/is.fon.rs.Kamikaza_1.0.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "is.fon.rs.Kamikaza 1.0", + "division": "roborumble", + "jar": "is.fon.rs.Kamikaza_1.0.jar", + "jar_sha256": "f3d1c49ba77584ee607ae1c7609b3857073207b0fd1506aef461f60fc1650ad1", + "key": "roborumble/is.fon.rs.Kamikaza_1.0.jar", + "kind": "robot" + }, + "latest_observation": "5e11553e3a29aca5", + "observations": [ + { + "classic": { + "elapsed": 2.6, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 7883.0, + "scores": [ + 3690.0, + 4193.0 + ], + "selected": "is.fon.rs.Kamikaza 1.0" + }, + "completed_at": "2026-09-12T15:29:27Z", + "confirmation": null, + "delta_pct": -15.9, + "id": "5e11553e3a29aca5", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "5939e54be425d8aca0dd5e69f96538773a8fdc8a", + "official_parameters": true, + "tank_royale_commit": "c3cb68981528224e01ffdabef4f0673f3d504681", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "is.fon.rs.Kamikaza 1.0", + "division": "roborumble", + "jar": "is.fon.rs.Kamikaza_1.0.jar", + "jar_sha256": "f3d1c49ba77584ee607ae1c7609b3857073207b0fd1506aef461f60fc1650ad1", + "key": "roborumble/is.fon.rs.Kamikaza_1.0.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 20.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 6627.0, + "scores": [ + 3495.0, + 3132.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/jaara.LambdaBot_1.1.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "jaara.LambdaBot 1.1", + "division": "roborumble", + "jar": "jaara.LambdaBot_1.1.jar", + "jar_sha256": "26dcddde94bd22ff72976f227e22471f6046e8c572709d1444731159b4be5658", + "key": "roborumble/jaara.LambdaBot_1.1.jar", + "kind": "robot" + }, + "latest_observation": "0cd0ce600ce7a8cf", + "observations": [ + { + "classic": { + "elapsed": 16.0, + "error_count": 4, + "error_signatures": [], + "errors": [ + "Unable to stop thread: jaara.LambdaBot 1.1 (1)", + "Unable to stop thread: jaara.LambdaBot 1.1 (1)", + "Unable to stop thread: jaara.LambdaBot 1.1 (2)", + "Unable to stop thread: jaara.LambdaBot 1.1 (2)" + ], + "has_log": true, + "ok": true, + "score": 5685.0, + "scores": [ + 3009.0, + 2676.0 + ], + "selected": "jaara.LambdaBot 1.1" + }, + "completed_at": "2026-09-12T15:29:48Z", + "confirmation": null, + "delta_pct": null, + "id": "0cd0ce600ce7a8cf", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "5939e54be425d8aca0dd5e69f96538773a8fdc8a", + "official_parameters": true, + "tank_royale_commit": "c3cb68981528224e01ffdabef4f0673f3d504681", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "jaara.LambdaBot 1.1", + "division": "roborumble", + "jar": "jaara.LambdaBot_1.1.jar", + "jar_sha256": "26dcddde94bd22ff72976f227e22471f6046e8c572709d1444731159b4be5658", + "key": "roborumble/jaara.LambdaBot_1.1.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (outcome)", + "tank_royale": { + "bridge_only_signatures": [ + [ + "java.lang.NullPointerException", + "jaara.weaponSystem.WeaponSystem.run" + ] + ], + "elapsed": 4.1, + "error_count": 5, + "error_signatures": [ + { + "exception": "java.lang.NullPointerException", + "origin": "jaara.waveSurfing.WaveSurfing.onEnemyFire" + }, + { + "exception": "java.lang.NullPointerException", + "origin": "jaara.weaponSystem.WeaponSystem.run" + } + ], + "errors": [ + "HARNESS: worker produced no result (exit code -1)", + "java.lang.NullPointerException: Cannot invoke \"jaara.engine.BotState.getLife()\" because \"this.enemy\" is null", + "java.lang.NullPointerException: Cannot invoke \"jaara.engine.BotState.getPosition()\" because \"this.stateLast\" is null", + "java.lang.NullPointerException: Cannot invoke \"jaara.engine.BotState.getLife()\" because \"this.enemy\" is null", + "java.lang.NullPointerException: Cannot invoke \"jaara.engine.BotState.getPosition()\" because \"this.stateLast\" is null" + ], + "has_log": true, + "ok": false, + "score": null, + "scores": [], + "skipped": null + } + } + ], + "status": "DISCREPANCY (outcome)" + }, + "roborumble/jab.DiamondStealer_5.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "jab.DiamondStealer 5", + "division": "roborumble", + "jar": "jab.DiamondStealer_5.jar", + "jar_sha256": "57f7348becec43c111d2e126240b30b5fdb8bc597ff18104df1cf07d67aaee5c", + "key": "roborumble/jab.DiamondStealer_5.jar", + "kind": "robot" + }, + "latest_observation": "09312469b177eef5", + "observations": [ + { + "classic": { + "elapsed": 3.1, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 8182.0, + "scores": [ + 4472.0, + 3710.0 + ], + "selected": "jab.DiamondStealer 5" + }, + "completed_at": "2026-09-12T15:30:17Z", + "confirmation": null, + "delta_pct": -8.7, + "id": "c01840135f4887d5", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "5939e54be425d8aca0dd5e69f96538773a8fdc8a", + "official_parameters": true, + "tank_royale_commit": "c3cb68981528224e01ffdabef4f0673f3d504681", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "jab.DiamondStealer 5", + "division": "roborumble", + "jar": "jab.DiamondStealer_5.jar", + "jar_sha256": "57f7348becec43c111d2e126240b30b5fdb8bc597ff18104df1cf07d67aaee5c", + "key": "roborumble/jab.DiamondStealer_5.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 14.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 7474.0, + "scores": [ + 4051.0, + 3423.0 + ], + "skipped": null + } + }, + { + "classic": { + "elapsed": 3.2, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 8292.0, + "scores": [ + 4181.0, + 4111.0 + ], + "selected": "jab.DiamondStealer 5" + }, + "completed_at": "2026-09-12T15:56:35Z", + "confirmation": null, + "delta_pct": -6.9, + "id": "09312469b177eef5", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "b685c5548d337c44d5c03b92033e8901bb1a25a5", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "0268506c4ed945f568cd18f57e7faef91ac6a33d", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "jab.DiamondStealer 5", + "division": "roborumble", + "jar": "jab.DiamondStealer_5.jar", + "jar_sha256": "57f7348becec43c111d2e126240b30b5fdb8bc597ff18104df1cf07d67aaee5c", + "key": "roborumble/jab.DiamondStealer_5.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 16.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 7719.0, + "scores": [ + 4270.0, + 3449.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/jab.avk.ManuelGallegus_0.6.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "jab.avk.ManuelGallegus 0.6", + "division": "roborumble", + "jar": "jab.avk.ManuelGallegus_0.6.jar", + "jar_sha256": "b013f09379f35aba7b8fd4f95c8ff7f638f1f5e214984fd4f8435f07933a5f37", + "key": "roborumble/jab.avk.ManuelGallegus_0.6.jar", + "kind": "robot" + }, + "latest_observation": "a39df0f593fe2025", + "observations": [ + { + "classic": { + "elapsed": 4.3, + "error_count": 4, + "error_signatures": [ + { + "exception": "java.io.IOException", + "origin": "unknown" + } + ], + "errors": [ + "Error writing factors:java.io.IOException: You have reached your filesystem quota of: 200000 bytes.", + "Error writing factors:java.io.IOException: You have reached your filesystem quota of: 200000 bytes.", + "Error writing factors:java.io.IOException: You have reached your filesystem quota of: 200000 bytes.", + "Error writing factors:java.io.IOException: You have reached your filesystem quota of: 200000 bytes." + ], + "has_log": true, + "ok": true, + "score": 5287.0, + "scores": [ + 2802.0, + 2485.0 + ], + "selected": "jab.avk.ManuelGallegus 0.6" + }, + "completed_at": "2026-09-12T15:29:59Z", + "confirmation": null, + "delta_pct": null, + "id": "a39df0f593fe2025", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "5939e54be425d8aca0dd5e69f96538773a8fdc8a", + "official_parameters": true, + "tank_royale_commit": "c3cb68981528224e01ffdabef4f0673f3d504681", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "jab.avk.ManuelGallegus 0.6", + "division": "roborumble", + "jar": "jab.avk.ManuelGallegus_0.6.jar", + "jar_sha256": "b013f09379f35aba7b8fd4f95c8ff7f638f1f5e214984fd4f8435f07933a5f37", + "key": "roborumble/jab.avk.ManuelGallegus_0.6.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (outcome)", + "tank_royale": { + "bridge_only_signatures": [ + [ + "java.lang.NullPointerException", + "jab.avk.targeting.GuessFactor.calculateSegments" + ], + [ + "java.lang.NullPointerException", + "jab.avk.targeting.GuessFactor.listen" + ] + ], + "elapsed": 6.2, + "error_count": 7, + "error_signatures": [ + { + "exception": "java.lang.NullPointerException", + "origin": "jab.avk.targeting.GuessFactor.calculateSegments" + }, + { + "exception": "java.lang.NullPointerException", + "origin": "jab.avk.targeting.GuessFactor.listen" + } + ], + "errors": [ + "HARNESS: worker produced no result (exit code -1)", + "java.lang.NullPointerException: Cannot read field \"distance\" because \"this.bot.enemy\" is null", + "java.lang.NullPointerException: Cannot read field \"distance\" because \"this.bot.enemy\" is null", + "java.lang.NullPointerException: Cannot read field \"distance\" because \"this.bot.enemy\" is null", + "java.lang.NullPointerException: Cannot read field \"x\" because \"this.bot.enemy\" is null", + "java.lang.NullPointerException: Cannot read field \"x\" because \"this.bot.enemy\" is null", + "java.lang.NullPointerException: Cannot read field \"distance\" because \"this.bot.enemy\" is null" + ], + "has_log": true, + "ok": false, + "score": null, + "scores": [], + "skipped": null + } + } + ], + "status": "DISCREPANCY (outcome)" + }, + "roborumble/jab.micro.Sanguijuela_0.8.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "jab.micro.Sanguijuela 0.8", + "division": "roborumble", + "jar": "jab.micro.Sanguijuela_0.8.jar", + "jar_sha256": "f4a0381c0d57dc69ed41162117c417f07e8ca6b35812ddfacec8b8273c41129c", + "key": "roborumble/jab.micro.Sanguijuela_0.8.jar", + "kind": "robot" + }, + "latest_observation": "ebb7d7c721bd2a3d", + "observations": [ + { + "classic": { + "elapsed": 2.2, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 10701.0, + "scores": [ + 5612.0, + 5089.0 + ], + "selected": "jab.micro.Sanguijuela 0.8" + }, + "completed_at": "2026-09-12T15:57:15Z", + "confirmation": null, + "delta_pct": 57.3, + "id": "ebb7d7c721bd2a3d", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "64f9ea764be176493ab3cdb7124d23a2814964fe", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "0268506c4ed945f568cd18f57e7faef91ac6a33d", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "jab.micro.Sanguijuela 0.8", + "division": "roborumble", + "jar": "jab.micro.Sanguijuela_0.8.jar", + "jar_sha256": "f4a0381c0d57dc69ed41162117c417f07e8ca6b35812ddfacec8b8273c41129c", + "key": "roborumble/jab.micro.Sanguijuela_0.8.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (score)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 10.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 16828.0, + "scores": [ + 8503.0, + 8325.0 + ], + "skipped": null + } + } + ], + "status": "score-review" + }, + "roborumble/jaemcrb.nano.M1Abrams_1.0.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "jaemcrb.nano.M1Abrams 1.0", + "division": "roborumble", + "jar": "jaemcrb.nano.M1Abrams_1.0.jar", + "jar_sha256": "833cb9161e37c4d39f92e3b4337cd1ad6a1090551332d6545996ccd918348f40", + "key": "roborumble/jaemcrb.nano.M1Abrams_1.0.jar", + "kind": "robot" + }, + "latest_observation": "8de62d1e1e93edfe", + "observations": [ + { + "classic": { + "elapsed": 2.8, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 6262.0, + "scores": [ + 2912.0, + 3350.0 + ], + "selected": "jaemcrb.nano.M1Abrams 1.0" + }, + "completed_at": "2026-09-12T15:57:34Z", + "confirmation": null, + "delta_pct": -14.1, + "id": "8de62d1e1e93edfe", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "64f9ea764be176493ab3cdb7124d23a2814964fe", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "0268506c4ed945f568cd18f57e7faef91ac6a33d", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "jaemcrb.nano.M1Abrams 1.0", + "division": "roborumble", + "jar": "jaemcrb.nano.M1Abrams_1.0.jar", + "jar_sha256": "833cb9161e37c4d39f92e3b4337cd1ad6a1090551332d6545996ccd918348f40", + "key": "roborumble/jaemcrb.nano.M1Abrams_1.0.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 16.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5379.0, + "scores": [ + 2861.0, + 2518.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/jam.RaikoMX_0.32.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "jam.RaikoMX 0.32", + "division": "roborumble", + "jar": "jam.RaikoMX_0.32.jar", + "jar_sha256": "e2047cb138e8cf7640031994ace43dc931cb2deeb661e04042b357335d086b07", + "key": "roborumble/jam.RaikoMX_0.32.jar", + "kind": "robot" + }, + "latest_observation": "eca974fa0fd37a28", + "observations": [ + { + "classic": { + "elapsed": 5.1, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 4351.0, + "scores": [ + 2185.0, + 2166.0 + ], + "selected": "jam.RaikoMX 0.32" + }, + "completed_at": "2026-09-12T15:58:58Z", + "confirmation": null, + "delta_pct": -6.0, + "id": "eca974fa0fd37a28", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "64f9ea764be176493ab3cdb7124d23a2814964fe", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "0268506c4ed945f568cd18f57e7faef91ac6a33d", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "jam.RaikoMX 0.32", + "division": "roborumble", + "jar": "jam.RaikoMX_0.32.jar", + "jar_sha256": "e2047cb138e8cf7640031994ace43dc931cb2deeb661e04042b357335d086b07", + "key": "roborumble/jam.RaikoMX_0.32.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 24.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 4088.0, + "scores": [ + 2127.0, + 1961.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/jam.micro.RaikoMicro_1.44.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "jam.micro.RaikoMicro 1.44", + "division": "roborumble", + "jar": "jam.micro.RaikoMicro_1.44.jar", + "jar_sha256": "cebe7fd4c3e2946803a3725cd2393b0ce7ae91e358cea41932cf8713ccb50be6", + "key": "roborumble/jam.micro.RaikoMicro_1.44.jar", + "kind": "robot" + }, + "latest_observation": "3bfa49fd33c336b4", + "observations": [ + { + "classic": { + "elapsed": 2.7, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 4772.0, + "scores": [ + 2900.0, + 1872.0 + ], + "selected": "jam.micro.RaikoMicro 1.44" + }, + "completed_at": "2026-09-12T15:57:59Z", + "confirmation": null, + "delta_pct": -15.1, + "id": "3bfa49fd33c336b4", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "64f9ea764be176493ab3cdb7124d23a2814964fe", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "0268506c4ed945f568cd18f57e7faef91ac6a33d", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "jam.micro.RaikoMicro 1.44", + "division": "roborumble", + "jar": "jam.micro.RaikoMicro_1.44.jar", + "jar_sha256": "cebe7fd4c3e2946803a3725cd2393b0ce7ae91e358cea41932cf8713ccb50be6", + "key": "roborumble/jam.micro.RaikoMicro_1.44.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 22.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 4051.0, + "scores": [ + 2337.0, + 1714.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/jam.mini.Raiko_0.43.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "jam.mini.Raiko 0.43", + "division": "roborumble", + "jar": "jam.mini.Raiko_0.43.jar", + "jar_sha256": "48479846001b8805b1915bae68686f2ef8455248deac87d1c31ca6593a74d086", + "key": "roborumble/jam.mini.Raiko_0.43.jar", + "kind": "robot" + }, + "latest_observation": "6e101daed7168592", + "observations": [ + { + "classic": { + "elapsed": 3.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5125.0, + "scores": [ + 2759.0, + 2366.0 + ], + "selected": "jam.mini.Raiko 0.43" + }, + "completed_at": "2026-09-12T15:58:29Z", + "confirmation": null, + "delta_pct": -59.2, + "id": "6e101daed7168592", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "64f9ea764be176493ab3cdb7124d23a2814964fe", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "0268506c4ed945f568cd18f57e7faef91ac6a33d", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "jam.mini.Raiko 0.43", + "division": "roborumble", + "jar": "jam.mini.Raiko_0.43.jar", + "jar_sha256": "48479846001b8805b1915bae68686f2ef8455248deac87d1c31ca6593a74d086", + "key": "roborumble/jam.mini.Raiko_0.43.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (score)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 26.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 2090.0, + "scores": [ + 1059.0, + 1031.0 + ], + "skipped": null + } + } + ], + "status": "score-review" + }, + "roborumble/janm.Jammy_1.0.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "janm.Jammy 1.0", + "division": "roborumble", + "jar": "janm.Jammy_1.0.jar", + "jar_sha256": "a1b683e7a7495f3c766b8ed5a2cafaae1b41c06d3ad2ddb17206926ca022f704", + "key": "roborumble/janm.Jammy_1.0.jar", + "kind": "robot" + }, + "latest_observation": "d7331a446c291ea1", + "observations": [ + { + "classic": { + "elapsed": 2.3, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 10462.0, + "scores": [ + 5452.0, + 5010.0 + ], + "selected": "janm.Jammy 1.0" + }, + "completed_at": "2026-09-12T15:59:13Z", + "confirmation": null, + "delta_pct": -6.4, + "id": "d7331a446c291ea1", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "64f9ea764be176493ab3cdb7124d23a2814964fe", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "0268506c4ed945f568cd18f57e7faef91ac6a33d", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "janm.Jammy 1.0", + "division": "roborumble", + "jar": "janm.Jammy_1.0.jar", + "jar_sha256": "a1b683e7a7495f3c766b8ed5a2cafaae1b41c06d3ad2ddb17206926ca022f704", + "key": "roborumble/janm.Jammy_1.0.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 12.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 9792.0, + "scores": [ + 5136.0, + 4656.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/japs.Serenity_1.0.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "japs.Serenity 1.0", + "division": "roborumble", + "jar": "japs.Serenity_1.0.jar", + "jar_sha256": "e2fba2dc830ba402135252034f90e6967f89c16a5792edd949ddf6255382e72d", + "key": "roborumble/japs.Serenity_1.0.jar", + "kind": "robot" + }, + "latest_observation": "f3a42e32015e55aa", + "observations": [ + { + "classic": { + "elapsed": 2.4, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 9239.0, + "scores": [ + 4767.0, + 4472.0 + ], + "selected": "japs.Serenity 1.0" + }, + "completed_at": "2026-09-12T15:59:42Z", + "confirmation": null, + "delta_pct": -39.8, + "id": "f3a42e32015e55aa", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "64f9ea764be176493ab3cdb7124d23a2814964fe", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "0268506c4ed945f568cd18f57e7faef91ac6a33d", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "japs.Serenity 1.0", + "division": "roborumble", + "jar": "japs.Serenity_1.0.jar", + "jar_sha256": "e2fba2dc830ba402135252034f90e6967f89c16a5792edd949ddf6255382e72d", + "key": "roborumble/japs.Serenity_1.0.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (score)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 26.1, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5561.0, + "scores": [ + 2992.0, + 2569.0 + ], + "skipped": null + } + } + ], + "status": "score-review" + }, + "roborumble/japs.Sjonniebot_0.9.1.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "japs.Sjonniebot 0.9.1", + "division": "roborumble", + "jar": "japs.Sjonniebot_0.9.1.jar", + "jar_sha256": "d1222b83e7bf6b8028ca637593864e7f6fdce4b754d48eb48b8db69ef64ba2f1", + "key": "roborumble/japs.Sjonniebot_0.9.1.jar", + "kind": "robot" + }, + "latest_observation": "9b13ea94574add37", + "observations": [ + { + "classic": { + "elapsed": 2.4, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 7631.0, + "scores": [ + 4015.0, + 3616.0 + ], + "selected": "japs.Sjonniebot 0.9.1" + }, + "completed_at": "2026-09-12T15:59:58Z", + "confirmation": null, + "delta_pct": -6.2, + "id": "9b13ea94574add37", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "64f9ea764be176493ab3cdb7124d23a2814964fe", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "0268506c4ed945f568cd18f57e7faef91ac6a33d", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "japs.Sjonniebot 0.9.1", + "division": "roborumble", + "jar": "japs.Sjonniebot_0.9.1.jar", + "jar_sha256": "d1222b83e7bf6b8028ca637593864e7f6fdce4b754d48eb48b8db69ef64ba2f1", + "key": "roborumble/japs.Sjonniebot_0.9.1.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 14.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 7161.0, + "scores": [ + 3938.0, + 3223.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/jasolo.Sonda_0.55.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "jasolo.Sonda 0.55", + "division": "roborumble", + "jar": "jasolo.Sonda_0.55.jar", + "jar_sha256": "affec01ce6d5cea5fc67dbf3d1de3ac2a46856d10d1448f8d2c50e1bc4ca8d36", + "key": "roborumble/jasolo.Sonda_0.55.jar", + "kind": "robot" + }, + "latest_observation": "01203ed3d41f66cd", + "observations": [ + { + "classic": { + "elapsed": 3.7, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5178.0, + "scores": [ + 2835.0, + 2343.0 + ], + "selected": "jasolo.Sonda 0.55" + }, + "completed_at": "2026-09-12T16:00:20Z", + "confirmation": null, + "delta_pct": 13.3, + "id": "01203ed3d41f66cd", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "64f9ea764be176493ab3cdb7124d23a2814964fe", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "0268506c4ed945f568cd18f57e7faef91ac6a33d", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "jasolo.Sonda 0.55", + "division": "roborumble", + "jar": "jasolo.Sonda_0.55.jar", + "jar_sha256": "affec01ce6d5cea5fc67dbf3d1de3ac2a46856d10d1448f8d2c50e1bc4ca8d36", + "key": "roborumble/jasolo.Sonda_0.55.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 18.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5869.0, + "scores": [ + 3072.0, + 2797.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/jaw.KarenCain_0.11.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "jaw.KarenCain 0.11", + "division": "roborumble", + "jar": "jaw.KarenCain_0.11.jar", + "jar_sha256": "32675c69a5984c6e30c48661439b6ed08bf230faafe791171e075d6a052a3345", + "key": "roborumble/jaw.KarenCain_0.11.jar", + "kind": "robot" + }, + "latest_observation": "a6b474d3d5900dca", + "observations": [ + { + "classic": { + "elapsed": 2.4, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5240.0, + "scores": [ + 2796.0, + 2444.0 + ], + "selected": "jaw.KarenCain 0.11" + }, + "completed_at": "2026-09-12T16:00:37Z", + "confirmation": null, + "delta_pct": -6.0, + "id": "a6b474d3d5900dca", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "64f9ea764be176493ab3cdb7124d23a2814964fe", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "0268506c4ed945f568cd18f57e7faef91ac6a33d", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "jaw.KarenCain 0.11", + "division": "roborumble", + "jar": "jaw.KarenCain_0.11.jar", + "jar_sha256": "32675c69a5984c6e30c48661439b6ed08bf230faafe791171e075d6a052a3345", + "key": "roborumble/jaw.KarenCain_0.11.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 14.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 4926.0, + "scores": [ + 2729.0, + 2197.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/jaw.Mouse_0.11.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "jaw.Mouse 0.11", + "division": "roborumble", + "jar": "jaw.Mouse_0.11.jar", + "jar_sha256": "4d0831cd8fbecee5c164a244d3a03e5e7c903409b006e1fae436833475f295ab", + "key": "roborumble/jaw.Mouse_0.11.jar", + "kind": "robot" + }, + "latest_observation": "5bdee286f6b42607", + "observations": [ + { + "classic": { + "elapsed": 2.3, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 6713.0, + "scores": [ + 3077.0, + 3636.0 + ], + "selected": "jaw.Mouse 0.11" + }, + "completed_at": "2026-09-12T16:00:54Z", + "confirmation": null, + "delta_pct": -7.5, + "id": "5bdee286f6b42607", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "64f9ea764be176493ab3cdb7124d23a2814964fe", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "0268506c4ed945f568cd18f57e7faef91ac6a33d", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "jaw.Mouse 0.11", + "division": "roborumble", + "jar": "jaw.Mouse_0.11.jar", + "jar_sha256": "4d0831cd8fbecee5c164a244d3a03e5e7c903409b006e1fae436833475f295ab", + "key": "roborumble/jaw.Mouse_0.11.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 14.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 6207.0, + "scores": [ + 3140.0, + 3067.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/jaybot.adv.bots.JayBot_2.0.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "jaybot.adv.bots.JayBot 2.0", + "division": "roborumble", + "jar": "jaybot.adv.bots.JayBot_2.0.jar", + "jar_sha256": "9405e86238871b8a0a89e8e9f82e56ed67e351f2d079051c8e540e162d5de5b4", + "key": "roborumble/jaybot.adv.bots.JayBot_2.0.jar", + "kind": "robot" + }, + "latest_observation": "7ee52bd421251e91", + "observations": [ + { + "classic": { + "elapsed": 6.4, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 6350.0, + "scores": [ + 3047.0, + 3303.0 + ], + "selected": "jaybot.adv.bots.JayBot 2.0" + }, + "completed_at": "2026-09-12T16:01:17Z", + "confirmation": null, + "delta_pct": -10.9, + "id": "7ee52bd421251e91", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "64f9ea764be176493ab3cdb7124d23a2814964fe", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "0268506c4ed945f568cd18f57e7faef91ac6a33d", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "jaybot.adv.bots.JayBot 2.0", + "division": "roborumble", + "jar": "jaybot.adv.bots.JayBot_2.0.jar", + "jar_sha256": "9405e86238871b8a0a89e8e9f82e56ed67e351f2d079051c8e540e162d5de5b4", + "key": "roborumble/jaybot.adv.bots.JayBot_2.0.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 16.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5659.0, + "scores": [ + 2857.0, + 2802.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/jaybot.bots.Oddball_4.0.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "jaybot.bots.Oddball 4.0", + "division": "roborumble", + "jar": "jaybot.bots.Oddball_4.0.jar", + "jar_sha256": "12d0d549ecee200b1bb2a0b9dcd0774ca1d53a2b562c7f5d0bbece999e1c09ca", + "key": "roborumble/jaybot.bots.Oddball_4.0.jar", + "kind": "robot" + }, + "latest_observation": "ee5b6a1afcb7c6f8", + "observations": [ + { + "classic": { + "elapsed": 4.9, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 6261.0, + "scores": [ + 3376.0, + 2885.0 + ], + "selected": "jaybot.bots.Oddball 4.0" + }, + "completed_at": "2026-09-12T16:01:26Z", + "confirmation": null, + "delta_pct": null, + "id": "ee5b6a1afcb7c6f8", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "64f9ea764be176493ab3cdb7124d23a2814964fe", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "0268506c4ed945f568cd18f57e7faef91ac6a33d", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "jaybot.bots.Oddball 4.0", + "division": "roborumble", + "jar": "jaybot.bots.Oddball_4.0.jar", + "jar_sha256": "12d0d549ecee200b1bb2a0b9dcd0774ca1d53a2b562c7f5d0bbece999e1c09ca", + "key": "roborumble/jaybot.bots.Oddball_4.0.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (outcome)", + "tank_royale": { + "bridge_only_signatures": [ + [ + "java.lang.UnsupportedOperationException", + "jaybot.strategies.SplitPersonalityStrategy.changeToBestPersonality" + ] + ], + "elapsed": 4.2, + "error_count": 3, + "error_signatures": [ + { + "exception": "java.lang.UnsupportedOperationException", + "origin": "jaybot.strategies.SplitPersonalityStrategy.changeToBestPersonality" + } + ], + "errors": [ + "HARNESS: worker produced no result (exit code -1)", + "java.lang.UnsupportedOperationException: stop(overwrite=true) is unsupported. Contact Robocode Tank Royale author for support", + "java.lang.UnsupportedOperationException: stop(overwrite=true) is unsupported. Contact Robocode Tank Royale author for support" + ], + "has_log": true, + "ok": false, + "score": null, + "scores": [], + "skipped": null + } + } + ], + "status": "DISCREPANCY (outcome)" + }, + "roborumble/jbot.Rabbit2_1.1.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "jbot.Rabbit2 1.1", + "division": "roborumble", + "jar": "jbot.Rabbit2_1.1.jar", + "jar_sha256": "d98f0b30ca4bd47f77ea7abbfc6990374fcf6937c9a77ba4f2490958948306fb", + "key": "roborumble/jbot.Rabbit2_1.1.jar", + "kind": "robot" + }, + "latest_observation": "21054c5022752597", + "observations": [ + { + "classic": { + "elapsed": 4.9, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 6080.0, + "scores": [ + 2642.0, + 3438.0 + ], + "selected": "jbot.Rabbit2 1.1" + }, + "completed_at": "2026-09-12T16:01:56Z", + "confirmation": null, + "delta_pct": -4.0, + "id": "21054c5022752597", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "64f9ea764be176493ab3cdb7124d23a2814964fe", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "0268506c4ed945f568cd18f57e7faef91ac6a33d", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "jbot.Rabbit2 1.1", + "division": "roborumble", + "jar": "jbot.Rabbit2_1.1.jar", + "jar_sha256": "d98f0b30ca4bd47f77ea7abbfc6990374fcf6937c9a77ba4f2490958948306fb", + "key": "roborumble/jbot.Rabbit2_1.1.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 24.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5838.0, + "scores": [ + 2950.0, + 2888.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/jcs.AutoBot_4.2.1.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "jcs.AutoBot 4.2.1", + "division": "roborumble", + "jar": "jcs.AutoBot_4.2.1.jar", + "jar_sha256": "21598f5d66d81b55f831aab11b1639432ba24a42605f55b3c68a5cf148977841", + "key": "roborumble/jcs.AutoBot_4.2.1.jar", + "kind": "robot" + }, + "latest_observation": "d52f242b7cf667d0", + "observations": [ + { + "classic": { + "elapsed": 8.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 6295.0, + "scores": [ + 3191.0, + 3104.0 + ], + "selected": "jcs.AutoBot 4.2.1" + }, + "completed_at": "2026-09-12T16:02:24Z", + "confirmation": null, + "delta_pct": -37.7, + "id": "d52f242b7cf667d0", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "64f9ea764be176493ab3cdb7124d23a2814964fe", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "0268506c4ed945f568cd18f57e7faef91ac6a33d", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "jcs.AutoBot 4.2.1", + "division": "roborumble", + "jar": "jcs.AutoBot_4.2.1.jar", + "jar_sha256": "21598f5d66d81b55f831aab11b1639432ba24a42605f55b3c68a5cf148977841", + "key": "roborumble/jcs.AutoBot_4.2.1.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (score)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 20.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 3924.0, + "scores": [ + 2343.0, + 1581.0 + ], + "skipped": null + } + } + ], + "status": "score-review" + }, + "roborumble/jcs.Decepticon_2.5.3.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "jcs.Decepticon 2.5.3", + "division": "roborumble", + "jar": "jcs.Decepticon_2.5.3.jar", + "jar_sha256": "c4c98378bc3352996b456c21abde57d36211294d439c169d54c5bceecb730dcf", + "key": "roborumble/jcs.Decepticon_2.5.3.jar", + "kind": "robot" + }, + "latest_observation": "9f21384be184c5c1", + "observations": [ + { + "classic": { + "elapsed": 18.1, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 4445.0, + "scores": [ + 1930.0, + 2515.0 + ], + "selected": "jcs.Decepticon 2.5.3" + }, + "completed_at": "2026-09-12T16:03:24Z", + "confirmation": null, + "delta_pct": -7.9, + "id": "9f21384be184c5c1", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "64f9ea764be176493ab3cdb7124d23a2814964fe", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "0268506c4ed945f568cd18f57e7faef91ac6a33d", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "jcs.Decepticon 2.5.3", + "division": "roborumble", + "jar": "jcs.Decepticon_2.5.3.jar", + "jar_sha256": "c4c98378bc3352996b456c21abde57d36211294d439c169d54c5bceecb730dcf", + "key": "roborumble/jcs.Decepticon_2.5.3.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 42.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 4094.0, + "scores": [ + 2429.0, + 1665.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/jcs.Megatron_1.2.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "jcs.Megatron 1.2", + "division": "roborumble", + "jar": "jcs.Megatron_1.2.jar", + "jar_sha256": "5f0afbf3fe7b1f324b58ed7483947d937712884928ecffa7f84519cd0a1a3261", + "key": "roborumble/jcs.Megatron_1.2.jar", + "kind": "robot" + }, + "latest_observation": "dfd70f66155cf480", + "observations": [ + { + "classic": { + "elapsed": 17.5, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 4540.0, + "scores": [ + 2478.0, + 2062.0 + ], + "selected": "jcs.Megatron 1.2" + }, + "completed_at": "2026-09-12T16:04:24Z", + "confirmation": null, + "delta_pct": -2.0, + "id": "dfd70f66155cf480", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "64f9ea764be176493ab3cdb7124d23a2814964fe", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "0268506c4ed945f568cd18f57e7faef91ac6a33d", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "jcs.Megatron 1.2", + "division": "roborumble", + "jar": "jcs.Megatron_1.2.jar", + "jar_sha256": "5f0afbf3fe7b1f324b58ed7483947d937712884928ecffa7f84519cd0a1a3261", + "key": "roborumble/jcs.Megatron_1.2.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 42.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 4450.0, + "scores": [ + 2480.0, + 1970.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/jcs.Seth_1.8.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "jcs.Seth 1.8", + "division": "roborumble", + "jar": "jcs.Seth_1.8.jar", + "jar_sha256": "3e99018fdcad786047e2bd36c131fe4ff680cfa8628140922f72014ab73bd9b1", + "key": "roborumble/jcs.Seth_1.8.jar", + "kind": "robot" + }, + "latest_observation": "7cbbe2b6780c0995", + "observations": [ + { + "classic": { + "elapsed": 6.4, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 4828.0, + "scores": [ + 2039.0, + 2789.0 + ], + "selected": "jcs.Seth 1.8" + }, + "completed_at": "2026-09-12T16:04:39Z", + "confirmation": null, + "delta_pct": null, + "id": "7cbbe2b6780c0995", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "64f9ea764be176493ab3cdb7124d23a2814964fe", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "0268506c4ed945f568cd18f57e7faef91ac6a33d", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "jcs.Seth 1.8", + "division": "roborumble", + "jar": "jcs.Seth_1.8.jar", + "jar_sha256": "3e99018fdcad786047e2bd36c131fe4ff680cfa8628140922f72014ab73bd9b1", + "key": "roborumble/jcs.Seth_1.8.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (outcome)", + "tank_royale": { + "bridge_only_signatures": [ + [ + "java.lang.NullPointerException", + "jcs.AntiGravTargeting.calcBulletPower" + ] + ], + "elapsed": 8.2, + "error_count": 2, + "error_signatures": [ + { + "exception": "java.lang.NullPointerException", + "origin": "jcs.AntiGravTargeting.calcBulletPower" + } + ], + "errors": [ + "HARNESS: worker produced no result (exit code -1)", + "java.lang.NullPointerException: Cannot invoke \"jcs.Enemy.getCoord()\" because \"target\" is null" + ], + "has_log": true, + "ok": false, + "score": null, + "scores": [], + "skipped": null + } + } + ], + "status": "DISCREPANCY (outcome)" + }, + "roborumble/jcw.ArcherOne_1.0.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "jcw.ArcherOne 1.0", + "division": "roborumble", + "jar": "jcw.ArcherOne_1.0.jar", + "jar_sha256": "8afa06292421338af912d381d06f8dcda0c1375fc9c8e6f184d2103ab44fb0f7", + "key": "roborumble/jcw.ArcherOne_1.0.jar", + "kind": "robot" + }, + "latest_observation": "3b8d0bac2d8b47ad", + "observations": [ + { + "classic": { + "elapsed": 2.9, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 7786.0, + "scores": [ + 4119.0, + 3667.0 + ], + "selected": "jcw.ArcherOne 1.0" + }, + "completed_at": "2026-09-12T16:05:14Z", + "confirmation": null, + "delta_pct": -60.8, + "id": "3b8d0bac2d8b47ad", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "64f9ea764be176493ab3cdb7124d23a2814964fe", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "0268506c4ed945f568cd18f57e7faef91ac6a33d", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "jcw.ArcherOne 1.0", + "division": "roborumble", + "jar": "jcw.ArcherOne_1.0.jar", + "jar_sha256": "8afa06292421338af912d381d06f8dcda0c1375fc9c8e6f184d2103ab44fb0f7", + "key": "roborumble/jcw.ArcherOne_1.0.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (score)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 32.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 3053.0, + "scores": [ + 1769.0, + 1284.0 + ], + "skipped": null + } + } + ], + "status": "score-review" + }, + "roborumble/jcz.linio.Linio_2.0.H.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "jcz.linio.Linio 2.0.H", + "division": "roborumble", + "jar": "jcz.linio.Linio_2.0.H.jar", + "jar_sha256": "1f8c659e9081bf3a272feebcecc002b842fc1975d8d67d05c1f1bdf1f981bf0f", + "key": "roborumble/jcz.linio.Linio_2.0.H.jar", + "kind": "robot" + }, + "latest_observation": "a1f75e443bb759cf", + "observations": [ + { + "classic": { + "elapsed": 6.9, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 9188.0, + "scores": [ + 4846.0, + 4342.0 + ], + "selected": "jcz.linio.Linio 2.0.H" + }, + "completed_at": "2026-09-12T16:05:43Z", + "confirmation": null, + "delta_pct": -12.9, + "id": "a1f75e443bb759cf", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "64f9ea764be176493ab3cdb7124d23a2814964fe", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "0268506c4ed945f568cd18f57e7faef91ac6a33d", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "jcz.linio.Linio 2.0.H", + "division": "roborumble", + "jar": "jcz.linio.Linio_2.0.H.jar", + "jar_sha256": "1f8c659e9081bf3a272feebcecc002b842fc1975d8d67d05c1f1bdf1f981bf0f", + "key": "roborumble/jcz.linio.Linio_2.0.H.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 22.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 8006.0, + "scores": [ + 4407.0, + 3599.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/jdw.Hornet_1.0.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "jdw.Hornet 1.0", + "division": "roborumble", + "jar": "jdw.Hornet_1.0.jar", + "jar_sha256": "651391483a93e46fa71150aeb678d8d4737532c440a5375f86d0c7cc5805d305", + "key": "roborumble/jdw.Hornet_1.0.jar", + "kind": "robot" + }, + "latest_observation": "f6b616930407a978", + "observations": [ + { + "classic": { + "elapsed": 2.4, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5578.0, + "scores": [ + 2541.0, + 3037.0 + ], + "selected": "jdw.Hornet 1.0" + }, + "completed_at": "2026-09-12T16:05:58Z", + "confirmation": null, + "delta_pct": -49.6, + "id": "f6b616930407a978", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "64f9ea764be176493ab3cdb7124d23a2814964fe", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "0268506c4ed945f568cd18f57e7faef91ac6a33d", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "jdw.Hornet 1.0", + "division": "roborumble", + "jar": "jdw.Hornet_1.0.jar", + "jar_sha256": "651391483a93e46fa71150aeb678d8d4737532c440a5375f86d0c7cc5805d305", + "key": "roborumble/jdw.Hornet_1.0.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (score)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 12.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 2811.0, + "scores": [ + 1715.0, + 1096.0 + ], + "skipped": null + } + } + ], + "status": "score-review" + }, + "roborumble/jekl.DarkHallow_.90.9.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "jekl.DarkHallow .90.9", + "division": "roborumble", + "jar": "jekl.DarkHallow_.90.9.jar", + "jar_sha256": "34352cd38e784bcc99b59c9a2859b4a184714b667888ba54df29d41016ca7a32", + "key": "roborumble/jekl.DarkHallow_.90.9.jar", + "kind": "robot" + }, + "latest_observation": "ef19377660a16a9a", + "observations": [ + { + "classic": { + "elapsed": 5.6, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5010.0, + "scores": [ + 2390.0, + 2620.0 + ], + "selected": "jekl.DarkHallow .90.9" + }, + "completed_at": "2026-09-12T16:06:28Z", + "confirmation": null, + "delta_pct": -8.0, + "id": "ef19377660a16a9a", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "64f9ea764be176493ab3cdb7124d23a2814964fe", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "0268506c4ed945f568cd18f57e7faef91ac6a33d", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "jekl.DarkHallow .90.9", + "division": "roborumble", + "jar": "jekl.DarkHallow_.90.9.jar", + "jar_sha256": "34352cd38e784bcc99b59c9a2859b4a184714b667888ba54df29d41016ca7a32", + "key": "roborumble/jekl.DarkHallow_.90.9.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 24.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 4607.0, + "scores": [ + 2365.0, + 2242.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/jekl.Jekyl_.70.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "jekl.Jekyl .70", + "division": "roborumble", + "jar": "jekl.Jekyl_.70.jar", + "jar_sha256": "148c9b58c05992b7a3e94cc4bc562ace882811178c10713cbc75216e00a7b980", + "key": "roborumble/jekl.Jekyl_.70.jar", + "kind": "robot" + }, + "latest_observation": "746f7ebb593a6006", + "observations": [ + { + "classic": { + "elapsed": 3.1, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5335.0, + "scores": [ + 2758.0, + 2577.0 + ], + "selected": "jekl.Jekyl .70" + }, + "completed_at": "2026-09-12T16:06:50Z", + "confirmation": null, + "delta_pct": -8.1, + "id": "746f7ebb593a6006", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "64f9ea764be176493ab3cdb7124d23a2814964fe", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "0268506c4ed945f568cd18f57e7faef91ac6a33d", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "jekl.Jekyl .70", + "division": "roborumble", + "jar": "jekl.Jekyl_.70.jar", + "jar_sha256": "148c9b58c05992b7a3e94cc4bc562ace882811178c10713cbc75216e00a7b980", + "key": "roborumble/jekl.Jekyl_.70.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 18.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 4901.0, + "scores": [ + 2588.0, + 2313.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/jekl.mini.BlackPearl_.91.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "jekl.mini.BlackPearl .91", + "division": "roborumble", + "jar": "jekl.mini.BlackPearl_.91.jar", + "jar_sha256": "13f1937a31acf417ef27db87ed2930bf0cdc08e488bbebbbb46373e1c83bd1ef", + "key": "roborumble/jekl.mini.BlackPearl_.91.jar", + "kind": "robot" + }, + "latest_observation": "f83b97c8b3cce583", + "observations": [ + { + "classic": { + "elapsed": 3.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5312.0, + "scores": [ + 2710.0, + 2602.0 + ], + "selected": "jekl.mini.BlackPearl .91" + }, + "completed_at": "2026-09-12T16:07:13Z", + "confirmation": null, + "delta_pct": -67.1, + "id": "f83b97c8b3cce583", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "64f9ea764be176493ab3cdb7124d23a2814964fe", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "0268506c4ed945f568cd18f57e7faef91ac6a33d", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "jekl.mini.BlackPearl .91", + "division": "roborumble", + "jar": "jekl.mini.BlackPearl_.91.jar", + "jar_sha256": "13f1937a31acf417ef27db87ed2930bf0cdc08e488bbebbbb46373e1c83bd1ef", + "key": "roborumble/jekl.mini.BlackPearl_.91.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (score)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 20.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 1750.0, + "scores": [ + 930.0, + 820.0 + ], + "skipped": null + } + } + ], + "status": "score-review" + }, + "roborumble/jep.Terrible_0.4.1.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "jep.Terrible 0.4.1", + "division": "roborumble", + "jar": "jep.Terrible_0.4.1.jar", + "jar_sha256": "95c3e3bc8585109ee1a4b8c839baf53fd7c459382e3c0e01efef65806599a405", + "key": "roborumble/jep.Terrible_0.4.1.jar", + "kind": "robot" + }, + "latest_observation": "610b809670c3c242", + "observations": [ + { + "classic": { + "elapsed": 2.9, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 6157.0, + "scores": [ + 2738.0, + 3419.0 + ], + "selected": "jep.Terrible 0.4.1" + }, + "completed_at": "2026-09-12T16:09:01Z", + "confirmation": null, + "delta_pct": -33.8, + "id": "610b809670c3c242", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "a5a265702a6a53ea47f24cd39f34d502b6e7b976", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "0268506c4ed945f568cd18f57e7faef91ac6a33d", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "jep.Terrible 0.4.1", + "division": "roborumble", + "jar": "jep.Terrible_0.4.1.jar", + "jar_sha256": "95c3e3bc8585109ee1a4b8c839baf53fd7c459382e3c0e01efef65806599a405", + "key": "roborumble/jep.Terrible_0.4.1.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (score)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 18.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 4078.0, + "scores": [ + 2040.0, + 2038.0 + ], + "skipped": null + } + } + ], + "status": "score-review" + }, + "roborumble/jep.nano.Hawkwing_0.4.1.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "jep.nano.Hawkwing 0.4.1", + "division": "roborumble", + "jar": "jep.nano.Hawkwing_0.4.1.jar", + "jar_sha256": "ba98598412b54641f5e348e9ac92e85c2ed8eae3bddac06261cd83f89ed8b6d6", + "key": "roborumble/jep.nano.Hawkwing_0.4.1.jar", + "kind": "robot" + }, + "latest_observation": "46f42695e1a7f118", + "observations": [ + { + "classic": { + "elapsed": 2.6, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5183.0, + "scores": [ + 2635.0, + 2548.0 + ], + "selected": "jep.nano.Hawkwing 0.4.1" + }, + "completed_at": "2026-09-12T16:07:36Z", + "confirmation": null, + "delta_pct": -10.3, + "id": "46f42695e1a7f118", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "64f9ea764be176493ab3cdb7124d23a2814964fe", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "0268506c4ed945f568cd18f57e7faef91ac6a33d", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "jep.nano.Hawkwing 0.4.1", + "division": "roborumble", + "jar": "jep.nano.Hawkwing_0.4.1.jar", + "jar_sha256": "ba98598412b54641f5e348e9ac92e85c2ed8eae3bddac06261cd83f89ed8b6d6", + "key": "roborumble/jep.nano.Hawkwing_0.4.1.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 20.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 4650.0, + "scores": [ + 2468.0, + 2182.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/jep.nano.Hotspur_0.1.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "jep.nano.Hotspur 0.1", + "division": "roborumble", + "jar": "jep.nano.Hotspur_0.1.jar", + "jar_sha256": "5275b6c62d9e1c9585632dd8bc0703298b65d2b6cdd7b89c66571d66dec02a41", + "key": "roborumble/jep.nano.Hotspur_0.1.jar", + "kind": "robot" + }, + "latest_observation": "c2e419d7c5f31be0", + "observations": [ + { + "classic": { + "elapsed": 2.5, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 3723.0, + "scores": [ + 2314.0, + 1409.0 + ], + "selected": "jep.nano.Hotspur 0.1" + }, + "completed_at": "2026-09-12T16:08:39Z", + "confirmation": null, + "delta_pct": -5.6, + "id": "c2e419d7c5f31be0", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "a5a265702a6a53ea47f24cd39f34d502b6e7b976", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "0268506c4ed945f568cd18f57e7faef91ac6a33d", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "jep.nano.Hotspur 0.1", + "division": "roborumble", + "jar": "jep.nano.Hotspur_0.1.jar", + "jar_sha256": "5275b6c62d9e1c9585632dd8bc0703298b65d2b6cdd7b89c66571d66dec02a41", + "key": "roborumble/jep.nano.Hotspur_0.1.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 16.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 3516.0, + "scores": [ + 1776.0, + 1740.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/jeremyreeder.Bully_1.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "jeremyreeder.Bully 1", + "division": "roborumble", + "jar": "jeremyreeder.Bully_1.jar", + "jar_sha256": "8e36fc4b0f0342c1e456edf026a6f884607e733d2362878fa34b7da13be9fa62", + "key": "roborumble/jeremyreeder.Bully_1.jar", + "kind": "robot" + }, + "latest_observation": "cfd4f9ecc5b1e9c5", + "observations": [ + { + "classic": { + "elapsed": 2.3, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 10630.0, + "scores": [ + 5370.0, + 5260.0 + ], + "selected": "jeremyreeder.Bully 1" + }, + "completed_at": "2026-09-12T16:09:13Z", + "confirmation": null, + "delta_pct": 53.2, + "id": "cfd4f9ecc5b1e9c5", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "a5a265702a6a53ea47f24cd39f34d502b6e7b976", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "0268506c4ed945f568cd18f57e7faef91ac6a33d", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "jeremyreeder.Bully 1", + "division": "roborumble", + "jar": "jeremyreeder.Bully_1.jar", + "jar_sha256": "8e36fc4b0f0342c1e456edf026a6f884607e733d2362878fa34b7da13be9fa62", + "key": "roborumble/jeremyreeder.Bully_1.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (score)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 10.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 16286.0, + "scores": [ + 8166.0, + 8120.0 + ], + "skipped": null + } + } + ], + "status": "score-review" + }, + "roborumble/jeremyreeder.Vincent_2011.12.09.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "jeremyreeder.Vincent 2011.12.09", + "division": "roborumble", + "jar": "jeremyreeder.Vincent_2011.12.09.jar", + "jar_sha256": "85bb1d87fa647576e9e31a0d12406762dd23b7b94a46c7c6ccf8ed7b0eece19b", + "key": "roborumble/jeremyreeder.Vincent_2011.12.09.jar", + "kind": "robot" + }, + "latest_observation": "5937f2ce8280ffed", + "observations": [ + { + "classic": { + "elapsed": 2.3, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 8862.0, + "scores": [ + 4122.0, + 4740.0 + ], + "selected": "jeremyreeder.Vincent 2011.12.09" + }, + "completed_at": "2026-09-12T16:09:58Z", + "confirmation": null, + "delta_pct": -39.4, + "id": "5937f2ce8280ffed", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "a5a265702a6a53ea47f24cd39f34d502b6e7b976", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "0268506c4ed945f568cd18f57e7faef91ac6a33d", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "jeremyreeder.Vincent 2011.12.09", + "division": "roborumble", + "jar": "jeremyreeder.Vincent_2011.12.09.jar", + "jar_sha256": "85bb1d87fa647576e9e31a0d12406762dd23b7b94a46c7c6ccf8ed7b0eece19b", + "key": "roborumble/jeremyreeder.Vincent_2011.12.09.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (score)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 22.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5372.0, + "scores": [ + 3270.0, + 2102.0 + ], + "skipped": null + } + } + ], + "status": "score-review" + }, + "roborumble/jeremyreeder.collective.Prophet_5.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "jeremyreeder.collective.Prophet 5", + "division": "roborumble", + "jar": "jeremyreeder.collective.Prophet_5.jar", + "jar_sha256": "4d0665640244ddceffa1e1c37dea5698c3496329819ee85319a35a4329613387", + "key": "roborumble/jeremyreeder.collective.Prophet_5.jar", + "kind": "robot" + }, + "latest_observation": "184353f9c23e961e", + "observations": [ + { + "classic": { + "elapsed": 3.9, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 4818.0, + "scores": [ + 2482.0, + 2336.0 + ], + "selected": "jeremyreeder.collective.Prophet 5" + }, + "completed_at": "2026-09-12T16:09:34Z", + "confirmation": null, + "delta_pct": 52.8, + "id": "184353f9c23e961e", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "a5a265702a6a53ea47f24cd39f34d502b6e7b976", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "0268506c4ed945f568cd18f57e7faef91ac6a33d", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "jeremyreeder.collective.Prophet 5", + "division": "roborumble", + "jar": "jeremyreeder.collective.Prophet_5.jar", + "jar_sha256": "4d0665640244ddceffa1e1c37dea5698c3496329819ee85319a35a4329613387", + "key": "roborumble/jeremyreeder.collective.Prophet_5.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (score)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 16.1, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 7360.0, + "scores": [ + 3956.0, + 3404.0 + ], + "skipped": null + } + } + ], + "status": "score-review" + }, + "roborumble/jf.Dodger_1.3.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "jf.Dodger 1.3", + "division": "roborumble", + "jar": "jf.Dodger_1.3.jar", + "jar_sha256": "e51914d777c827045d3f415975ec1908f67f5f95cfd4f434430f6bec99cdd660", + "key": "roborumble/jf.Dodger_1.3.jar", + "kind": "robot" + }, + "latest_observation": "92b831520dd0868f", + "observations": [ + { + "classic": { + "elapsed": 2.5, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 7769.0, + "scores": [ + 4299.0, + 3470.0 + ], + "selected": "jf.Dodger 1.3" + }, + "completed_at": "2026-09-12T16:10:17Z", + "confirmation": null, + "delta_pct": -28.1, + "id": "92b831520dd0868f", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "a5a265702a6a53ea47f24cd39f34d502b6e7b976", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "0268506c4ed945f568cd18f57e7faef91ac6a33d", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "jf.Dodger 1.3", + "division": "roborumble", + "jar": "jf.Dodger_1.3.jar", + "jar_sha256": "e51914d777c827045d3f415975ec1908f67f5f95cfd4f434430f6bec99cdd660", + "key": "roborumble/jf.Dodger_1.3.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (score)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 16.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5588.0, + "scores": [ + 2978.0, + 2610.0 + ], + "skipped": null + } + } + ], + "status": "score-review" + }, + "roborumble/jgap.JGAP12584_1.0.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "jgap.JGAP12584 1.0", + "division": "roborumble", + "jar": "jgap.JGAP12584_1.0.jar", + "jar_sha256": "893b797bfa9124d709043f0a38f9636398239c1015122feca7b8904a95643460", + "key": "roborumble/jgap.JGAP12584_1.0.jar", + "kind": "robot" + }, + "latest_observation": "be1d9435f1ab4e2a", + "observations": [ + { + "classic": { + "elapsed": 2.4, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 3177.0, + "scores": [ + 1344.0, + 1833.0 + ], + "selected": "jgap.JGAP12584 1.0" + }, + "completed_at": "2026-09-12T16:10:42Z", + "confirmation": null, + "delta_pct": -6.4, + "id": "be1d9435f1ab4e2a", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "a5a265702a6a53ea47f24cd39f34d502b6e7b976", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "0268506c4ed945f568cd18f57e7faef91ac6a33d", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "jgap.JGAP12584 1.0", + "division": "roborumble", + "jar": "jgap.JGAP12584_1.0.jar", + "jar_sha256": "893b797bfa9124d709043f0a38f9636398239c1015122feca7b8904a95643460", + "key": "roborumble/jgap.JGAP12584_1.0.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 22.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 2973.0, + "scores": [ + 1565.0, + 1408.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/jgap.JGAP130166_1.0.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "jgap.JGAP130166 1.0", + "division": "roborumble", + "jar": "jgap.JGAP130166_1.0.jar", + "jar_sha256": "ac5853dd934261b97f8a3d2fa6027b5058a708bdecb566272d978bd0be091c71", + "key": "roborumble/jgap.JGAP130166_1.0.jar", + "kind": "robot" + }, + "latest_observation": "6683dc1cc9cc5218", + "observations": [ + { + "classic": { + "elapsed": 2.4, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 8415.0, + "scores": [ + 4516.0, + 3899.0 + ], + "selected": "jgap.JGAP130166 1.0" + }, + "completed_at": "2026-09-12T16:11:01Z", + "confirmation": null, + "delta_pct": -2.3, + "id": "6683dc1cc9cc5218", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "a5a265702a6a53ea47f24cd39f34d502b6e7b976", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "0268506c4ed945f568cd18f57e7faef91ac6a33d", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "jgap.JGAP130166 1.0", + "division": "roborumble", + "jar": "jgap.JGAP130166_1.0.jar", + "jar_sha256": "ac5853dd934261b97f8a3d2fa6027b5058a708bdecb566272d978bd0be091c71", + "key": "roborumble/jgap.JGAP130166_1.0.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 16.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 8219.0, + "scores": [ + 4195.0, + 4024.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/jgap.JGAP23423_1.0.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "jgap.JGAP23423 1.0", + "division": "roborumble", + "jar": "jgap.JGAP23423_1.0.jar", + "jar_sha256": "9ae213cbc4423af56e0326674570a2f56a4a9efefc52f17b3b0d884fa009d0d6", + "key": "roborumble/jgap.JGAP23423_1.0.jar", + "kind": "robot" + }, + "latest_observation": "898e764b76e36455", + "observations": [ + { + "classic": { + "elapsed": 2.4, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 4581.0, + "scores": [ + 2067.0, + 2514.0 + ], + "selected": "jgap.JGAP23423 1.0" + }, + "completed_at": "2026-09-12T16:11:31Z", + "confirmation": null, + "delta_pct": -55.3, + "id": "898e764b76e36455", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "a5a265702a6a53ea47f24cd39f34d502b6e7b976", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "0268506c4ed945f568cd18f57e7faef91ac6a33d", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "jgap.JGAP23423 1.0", + "division": "roborumble", + "jar": "jgap.JGAP23423_1.0.jar", + "jar_sha256": "9ae213cbc4423af56e0326674570a2f56a4a9efefc52f17b3b0d884fa009d0d6", + "key": "roborumble/jgap.JGAP23423_1.0.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (score)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 28.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 2046.0, + "scores": [ + 1110.0, + 936.0 + ], + "skipped": null + } + } + ], + "status": "score-review" + }, + "roborumble/jgap.JGAP6139_1.0.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "jgap.JGAP6139 1.0", + "division": "roborumble", + "jar": "jgap.JGAP6139_1.0.jar", + "jar_sha256": "09ec73cda63468a296b51573c7ba9fa3afaa54c0c6967d3aaedecfaa29e14163", + "key": "roborumble/jgap.JGAP6139_1.0.jar", + "kind": "robot" + }, + "latest_observation": "9d36b13a51ac844a", + "observations": [ + { + "classic": { + "elapsed": 2.4, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 3852.0, + "scores": [ + 1787.0, + 2065.0 + ], + "selected": "jgap.JGAP6139 1.0" + }, + "completed_at": "2026-09-12T16:11:48Z", + "confirmation": null, + "delta_pct": -43.3, + "id": "9d36b13a51ac844a", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "a5a265702a6a53ea47f24cd39f34d502b6e7b976", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "0268506c4ed945f568cd18f57e7faef91ac6a33d", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "jgap.JGAP6139 1.0", + "division": "roborumble", + "jar": "jgap.JGAP6139_1.0.jar", + "jar_sha256": "09ec73cda63468a296b51573c7ba9fa3afaa54c0c6967d3aaedecfaa29e14163", + "key": "roborumble/jgap.JGAP6139_1.0.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (score)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 14.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 2184.0, + "scores": [ + 1416.0, + 768.0 + ], + "skipped": null + } + } + ], + "status": "score-review" + }, + "roborumble/jgap.JGAP7247_2_1.0.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "jgap.JGAP7247_2 1.0", + "division": "roborumble", + "jar": "jgap.JGAP7247_2_1.0.jar", + "jar_sha256": "ff50e62f31a3811ed2fd8b4566d3765591d2d0b381a0f2e1ccf83eeb914c6842", + "key": "roborumble/jgap.JGAP7247_2_1.0.jar", + "kind": "robot" + }, + "latest_observation": "e199f80ecc172fca", + "observations": [ + { + "classic": { + "elapsed": 2.7, + "error_count": 580, + "error_signatures": [ + { + "exception": "java.lang.ArrayIndexOutOfBoundsException", + "origin": "jgap.JGAP7247_2.onScannedRobot" + } + ], + "errors": [ + "SYSTEM: java.lang.ArrayIndexOutOfBoundsException occurred on robocode.ScannedRobotEvent", + "java.lang.ArrayIndexOutOfBoundsException: Index 50 out of bounds for length 50", + "SYSTEM: java.lang.ArrayIndexOutOfBoundsException occurred on robocode.ScannedRobotEvent", + "java.lang.ArrayIndexOutOfBoundsException: Index 50 out of bounds for length 50", + "SYSTEM: java.lang.ArrayIndexOutOfBoundsException occurred on robocode.ScannedRobotEvent", + "java.lang.ArrayIndexOutOfBoundsException: Index 50 out of bounds for length 50", + "SYSTEM: java.lang.ArrayIndexOutOfBoundsException occurred on robocode.ScannedRobotEvent", + "java.lang.ArrayIndexOutOfBoundsException: Index 50 out of bounds for length 50", + "SYSTEM: java.lang.ArrayIndexOutOfBoundsException occurred on robocode.ScannedRobotEvent", + "java.lang.ArrayIndexOutOfBoundsException: Index 50 out of bounds for length 50", + "SYSTEM: java.lang.ArrayIndexOutOfBoundsException occurred on robocode.ScannedRobotEvent", + "java.lang.ArrayIndexOutOfBoundsException: Index 50 out of bounds for length 50", + "SYSTEM: java.lang.ArrayIndexOutOfBoundsException occurred on robocode.ScannedRobotEvent", + "java.lang.ArrayIndexOutOfBoundsException: Index 50 out of bounds for length 50", + "SYSTEM: java.lang.ArrayIndexOutOfBoundsException occurred on robocode.ScannedRobotEvent", + "java.lang.ArrayIndexOutOfBoundsException: Index 50 out of bounds for length 50", + "SYSTEM: java.lang.ArrayIndexOutOfBoundsException occurred on robocode.ScannedRobotEvent", + "java.lang.ArrayIndexOutOfBoundsException: Index 50 out of bounds for length 50", + "SYSTEM: java.lang.ArrayIndexOutOfBoundsException occurred on robocode.ScannedRobotEvent", + "java.lang.ArrayIndexOutOfBoundsException: Index 50 out of bounds for length 50", + "SYSTEM: java.lang.ArrayIndexOutOfBoundsException occurred on robocode.ScannedRobotEvent", + "java.lang.ArrayIndexOutOfBoundsException: Index 50 out of bounds for length 50", + "SYSTEM: java.lang.ArrayIndexOutOfBoundsException occurred on robocode.ScannedRobotEvent", + "java.lang.ArrayIndexOutOfBoundsException: Index 50 out of bounds for length 50", + "SYSTEM: java.lang.ArrayIndexOutOfBoundsException occurred on robocode.ScannedRobotEvent", + "java.lang.ArrayIndexOutOfBoundsException: Index 50 out of bounds for length 50", + "SYSTEM: java.lang.ArrayIndexOutOfBoundsException occurred on robocode.ScannedRobotEvent", + "java.lang.ArrayIndexOutOfBoundsException: Index 50 out of bounds for length 50", + "SYSTEM: java.lang.ArrayIndexOutOfBoundsException occurred on robocode.ScannedRobotEvent", + "java.lang.ArrayIndexOutOfBoundsException: Index 50 out of bounds for length 50", + "SYSTEM: java.lang.ArrayIndexOutOfBoundsException occurred on robocode.ScannedRobotEvent", + "java.lang.ArrayIndexOutOfBoundsException: Index 50 out of bounds for length 50", + "SYSTEM: java.lang.ArrayIndexOutOfBoundsException occurred on robocode.ScannedRobotEvent", + "java.lang.ArrayIndexOutOfBoundsException: Index 50 out of bounds for length 50", + "SYSTEM: java.lang.ArrayIndexOutOfBoundsException occurred on robocode.ScannedRobotEvent", + "java.lang.ArrayIndexOutOfBoundsException: Index 50 out of bounds for length 50", + "SYSTEM: java.lang.ArrayIndexOutOfBoundsException occurred on robocode.ScannedRobotEvent", + "java.lang.ArrayIndexOutOfBoundsException: Index 50 out of bounds for length 50", + "SYSTEM: java.lang.ArrayIndexOutOfBoundsException occurred on robocode.ScannedRobotEvent", + "java.lang.ArrayIndexOutOfBoundsException: Index 50 out of bounds for length 50", + "SYSTEM: java.lang.ArrayIndexOutOfBoundsException occurred on robocode.ScannedRobotEvent", + "java.lang.ArrayIndexOutOfBoundsException: Index 50 out of bounds for length 50", + "SYSTEM: java.lang.ArrayIndexOutOfBoundsException occurred on robocode.ScannedRobotEvent", + "java.lang.ArrayIndexOutOfBoundsException: Index 50 out of bounds for length 50", + "SYSTEM: java.lang.ArrayIndexOutOfBoundsException occurred on robocode.ScannedRobotEvent", + "java.lang.ArrayIndexOutOfBoundsException: Index 50 out of bounds for length 50", + "SYSTEM: java.lang.ArrayIndexOutOfBoundsException occurred on robocode.ScannedRobotEvent", + "java.lang.ArrayIndexOutOfBoundsException: Index 50 out of bounds for length 50", + "SYSTEM: java.lang.ArrayIndexOutOfBoundsException occurred on robocode.ScannedRobotEvent", + "java.lang.ArrayIndexOutOfBoundsException: Index 50 out of bounds for length 50", + "SYSTEM: java.lang.ArrayIndexOutOfBoundsException occurred on robocode.ScannedRobotEvent", + "java.lang.ArrayIndexOutOfBoundsException: Index 50 out of bounds for length 50", + "SYSTEM: java.lang.ArrayIndexOutOfBoundsException occurred on robocode.ScannedRobotEvent", + "java.lang.ArrayIndexOutOfBoundsException: Index 50 out of bounds for length 50", + "SYSTEM: java.lang.ArrayIndexOutOfBoundsException occurred on robocode.ScannedRobotEvent", + "java.lang.ArrayIndexOutOfBoundsException: Index 50 out of bounds for length 50", + "SYSTEM: java.lang.ArrayIndexOutOfBoundsException occurred on robocode.ScannedRobotEvent", + "java.lang.ArrayIndexOutOfBoundsException: Index 50 out of bounds for length 50", + "SYSTEM: java.lang.ArrayIndexOutOfBoundsException occurred on robocode.ScannedRobotEvent", + "java.lang.ArrayIndexOutOfBoundsException: Index 50 out of bounds for length 50", + "SYSTEM: java.lang.ArrayIndexOutOfBoundsException occurred on robocode.ScannedRobotEvent", + "java.lang.ArrayIndexOutOfBoundsException: Index 50 out of bounds for length 50", + "SYSTEM: java.lang.ArrayIndexOutOfBoundsException occurred on robocode.ScannedRobotEvent", + "java.lang.ArrayIndexOutOfBoundsException: Index 50 out of bounds for length 50", + "SYSTEM: java.lang.ArrayIndexOutOfBoundsException occurred on robocode.ScannedRobotEvent", + "java.lang.ArrayIndexOutOfBoundsException: Index 50 out of bounds for length 50", + "SYSTEM: java.lang.ArrayIndexOutOfBoundsException occurred on robocode.ScannedRobotEvent", + "java.lang.ArrayIndexOutOfBoundsException: Index 50 out of bounds for length 50", + "SYSTEM: java.lang.ArrayIndexOutOfBoundsException occurred on robocode.ScannedRobotEvent", + "java.lang.ArrayIndexOutOfBoundsException: Index 50 out of bounds for length 50", + "SYSTEM: java.lang.ArrayIndexOutOfBoundsException occurred on robocode.ScannedRobotEvent", + "java.lang.ArrayIndexOutOfBoundsException: Index 50 out of bounds for length 50", + "SYSTEM: java.lang.ArrayIndexOutOfBoundsException occurred on robocode.ScannedRobotEvent", + "java.lang.ArrayIndexOutOfBoundsException: Index 50 out of bounds for length 50", + "SYSTEM: java.lang.ArrayIndexOutOfBoundsException occurred on robocode.ScannedRobotEvent", + "java.lang.ArrayIndexOutOfBoundsException: Index 50 out of bounds for length 50", + "SYSTEM: java.lang.ArrayIndexOutOfBoundsException occurred on robocode.ScannedRobotEvent", + "java.lang.ArrayIndexOutOfBoundsException: Index 50 out of bounds for length 50", + "SYSTEM: java.lang.ArrayIndexOutOfBoundsException occurred on robocode.ScannedRobotEvent", + "java.lang.ArrayIndexOutOfBoundsException: Index 50 out of bounds for length 50", + "SYSTEM: java.lang.ArrayIndexOutOfBoundsException occurred on robocode.ScannedRobotEvent", + "java.lang.ArrayIndexOutOfBoundsException: Index 50 out of bounds for length 50", + "SYSTEM: java.lang.ArrayIndexOutOfBoundsException occurred on robocode.ScannedRobotEvent", + "java.lang.ArrayIndexOutOfBoundsException: Index 50 out of bounds for length 50", + "SYSTEM: java.lang.ArrayIndexOutOfBoundsException occurred on robocode.ScannedRobotEvent", + "java.lang.ArrayIndexOutOfBoundsException: Index 50 out of bounds for length 50", + "SYSTEM: java.lang.ArrayIndexOutOfBoundsException occurred on robocode.ScannedRobotEvent", + "java.lang.ArrayIndexOutOfBoundsException: Index 50 out of bounds for length 50", + "SYSTEM: java.lang.ArrayIndexOutOfBoundsException occurred on robocode.ScannedRobotEvent", + "java.lang.ArrayIndexOutOfBoundsException: Index 50 out of bounds for length 50", + "SYSTEM: java.lang.ArrayIndexOutOfBoundsException occurred on robocode.ScannedRobotEvent", + "java.lang.ArrayIndexOutOfBoundsException: Index 50 out of bounds for length 50", + "SYSTEM: java.lang.ArrayIndexOutOfBoundsException occurred on robocode.ScannedRobotEvent", + "java.lang.ArrayIndexOutOfBoundsException: Index 50 out of bounds for length 50", + "SYSTEM: java.lang.ArrayIndexOutOfBoundsException occurred on robocode.ScannedRobotEvent", + "java.lang.ArrayIndexOutOfBoundsException: Index 50 out of bounds for length 50", + "SYSTEM: java.lang.ArrayIndexOutOfBoundsException occurred on robocode.ScannedRobotEvent", + "java.lang.ArrayIndexOutOfBoundsException: Index 50 out of bounds for length 50", + "SYSTEM: java.lang.ArrayIndexOutOfBoundsException occurred on robocode.ScannedRobotEvent", + "java.lang.ArrayIndexOutOfBoundsException: Index 50 out of bounds for length 50" + ], + "has_log": true, + "ok": true, + "score": 2631.0, + "scores": [ + 1202.0, + 1429.0 + ], + "selected": "jgap.JGAP7247_2 1.0" + }, + "completed_at": "2026-09-12T16:12:08Z", + "confirmation": null, + "delta_pct": -29.9, + "id": "e199f80ecc172fca", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "a5a265702a6a53ea47f24cd39f34d502b6e7b976", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "0268506c4ed945f568cd18f57e7faef91ac6a33d", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "jgap.JGAP7247_2 1.0", + "division": "roborumble", + "jar": "jgap.JGAP7247_2_1.0.jar", + "jar_sha256": "ff50e62f31a3811ed2fd8b4566d3765591d2d0b381a0f2e1ccf83eeb914c6842", + "key": "roborumble/jgap.JGAP7247_2_1.0.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (errors)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 16.3, + "error_count": 1739, + "error_signatures": [ + { + "exception": "java.lang.ArrayIndexOutOfBoundsException", + "origin": "jgap.JGAP7247_2.onScannedRobot" + }, + { + "exception": "java.lang.ArrayIndexOutOfBoundsException", + "origin": "jgap.JGAP7247_2.run" + }, + { + "exception": "java.lang.ArrayIndexOutOfBoundsException", + "origin": "unknown" + } + ], + "errors": [ + "java.lang.ArrayIndexOutOfBoundsException: Index 51 out of bounds for length 50", + "java.lang.ArrayIndexOutOfBoundsException: Index 51 out of bounds for length 50", + "java.lang.ArrayIndexOutOfBoundsException: Index 51 out of bounds for length 50", + "java.lang.ArrayIndexOutOfBoundsException: Index 51 out of bounds for length 50", + "java.lang.ArrayIndexOutOfBoundsException: Index 51 out of bounds for length 50", + "java.lang.ArrayIndexOutOfBoundsException: Index 51 out of bounds for length 50", + "java.lang.ArrayIndexOutOfBoundsException: Index 51 out of bounds for length 50", + "java.lang.ArrayIndexOutOfBoundsException: Index 51 out of bounds for length 50", + "java.lang.ArrayIndexOutOfBoundsException: Index 51 out of bounds for length 50", + "java.lang.ArrayIndexOutOfBoundsException: Index 51 out of bounds for length 50", + "java.lang.ArrayIndexOutOfBoundsException: Index 51 out of bounds for length 50", + "java.lang.ArrayIndexOutOfBoundsException: Index 51 out of bounds for length 50", + "java.lang.ArrayIndexOutOfBoundsException: Index 51 out of bounds for length 50", + "java.lang.ArrayIndexOutOfBoundsException: Index 51 out of bounds for length 50", + "java.lang.ArrayIndexOutOfBoundsException: Index 51 out of bounds for length 50", + "java.lang.ArrayIndexOutOfBoundsException: Index 51 out of bounds for length 50", + "java.lang.ArrayIndexOutOfBoundsException: Index 51 out of bounds for length 50", + "java.lang.ArrayIndexOutOfBoundsException: Index 51 out of bounds for length 50", + "java.lang.ArrayIndexOutOfBoundsException: Index 51 out of bounds for length 50", + "java.lang.ArrayIndexOutOfBoundsException: Index 51 out of bounds for length 50", + "java.lang.ArrayIndexOutOfBoundsException: Index 51 out of bounds for length 50", + "java.lang.ArrayIndexOutOfBoundsException: Index 51 out of bounds for length 50", + "java.lang.ArrayIndexOutOfBoundsException: Index 51 out of bounds for length 50", + "java.lang.ArrayIndexOutOfBoundsException: Index 51 out of bounds for length 50", + "java.lang.ArrayIndexOutOfBoundsException: Index 51 out of bounds for length 50", + "java.lang.ArrayIndexOutOfBoundsException: Index 51 out of bounds for length 50", + "java.lang.ArrayIndexOutOfBoundsException: Index 51 out of bounds for length 50", + "java.lang.ArrayIndexOutOfBoundsException: Index 51 out of bounds for length 50", + "java.lang.ArrayIndexOutOfBoundsException: Index 51 out of bounds for length 50", + "java.lang.ArrayIndexOutOfBoundsException: Index 51 out of bounds for length 50", + "java.lang.ArrayIndexOutOfBoundsException: Index 51 out of bounds for length 50", + "java.lang.ArrayIndexOutOfBoundsException: Index 51 out of bounds for length 50", + "java.lang.ArrayIndexOutOfBoundsException: Index 51 out of bounds for length 50", + "java.lang.ArrayIndexOutOfBoundsException: Index 51 out of bounds for length 50", + "java.lang.ArrayIndexOutOfBoundsException: Index 51 out of bounds for length 50", + "java.lang.ArrayIndexOutOfBoundsException: Index 51 out of bounds for length 50", + "java.lang.ArrayIndexOutOfBoundsException: Index 51 out of bounds for length 50", + "java.lang.ArrayIndexOutOfBoundsException: Index 51 out of bounds for length 50", + "java.lang.ArrayIndexOutOfBoundsException: Index 51 out of bounds for length 50", + "java.lang.ArrayIndexOutOfBoundsException: Index 51 out of bounds for length 50", + "java.lang.ArrayIndexOutOfBoundsException: Index 51 out of bounds for length 50", + "java.lang.ArrayIndexOutOfBoundsException: Index 51 out of bounds for length 50", + "java.lang.ArrayIndexOutOfBoundsException: Index 51 out of bounds for length 50", + "java.lang.ArrayIndexOutOfBoundsException: Index 51 out of bounds for length 50", + "java.lang.ArrayIndexOutOfBoundsException: Index 51 out of bounds for length 50", + "java.lang.ArrayIndexOutOfBoundsException: Index 51 out of bounds for length 50", + "java.lang.ArrayIndexOutOfBoundsException: Index 51 out of bounds for length 50", + "java.lang.ArrayIndexOutOfBoundsException: Index 51 out of bounds for length 50", + "java.lang.ArrayIndexOutOfBoundsException: Index 51 out of bounds for length 50", + "java.lang.ArrayIndexOutOfBoundsException: Index 51 out of bounds for length 50", + "java.lang.ArrayIndexOutOfBoundsException: Index 51 out of bounds for length 50", + "java.lang.ArrayIndexOutOfBoundsException: Index 51 out of bounds for length 50", + "java.lang.ArrayIndexOutOfBoundsException: Index 51 out of bounds for length 50", + "java.lang.ArrayIndexOutOfBoundsException: Index 51 out of bounds for length 50", + "java.lang.ArrayIndexOutOfBoundsException: Index 51 out of bounds for length 50", + "java.lang.ArrayIndexOutOfBoundsException: Index 51 out of bounds for length 50", + "java.lang.ArrayIndexOutOfBoundsException: Index 51 out of bounds for length 50", + "java.lang.ArrayIndexOutOfBoundsException: Index 51 out of bounds for length 50", + "java.lang.ArrayIndexOutOfBoundsException: Index 51 out of bounds for length 50", + "java.lang.ArrayIndexOutOfBoundsException: Index 51 out of bounds for length 50", + "java.lang.ArrayIndexOutOfBoundsException: Index 51 out of bounds for length 50", + "java.lang.ArrayIndexOutOfBoundsException: Index 51 out of bounds for length 50", + "java.lang.ArrayIndexOutOfBoundsException: Index 51 out of bounds for length 50", + "java.lang.ArrayIndexOutOfBoundsException: Index 51 out of bounds for length 50", + "java.lang.ArrayIndexOutOfBoundsException: Index 51 out of bounds for length 50", + "java.lang.ArrayIndexOutOfBoundsException: Index 51 out of bounds for length 50", + "java.lang.ArrayIndexOutOfBoundsException: Index 51 out of bounds for length 50", + "java.lang.ArrayIndexOutOfBoundsException: Index 51 out of bounds for length 50", + "java.lang.ArrayIndexOutOfBoundsException: Index 51 out of bounds for length 50", + "java.lang.ArrayIndexOutOfBoundsException: Index 51 out of bounds for length 50", + "java.lang.ArrayIndexOutOfBoundsException: Index 51 out of bounds for length 50", + "java.lang.ArrayIndexOutOfBoundsException: Index 51 out of bounds for length 50", + "java.lang.ArrayIndexOutOfBoundsException: Index 51 out of bounds for length 50", + "java.lang.ArrayIndexOutOfBoundsException: Index 51 out of bounds for length 50", + "java.lang.ArrayIndexOutOfBoundsException: Index 51 out of bounds for length 50", + "java.lang.ArrayIndexOutOfBoundsException: Index 51 out of bounds for length 50", + "java.lang.ArrayIndexOutOfBoundsException: Index 51 out of bounds for length 50", + "java.lang.ArrayIndexOutOfBoundsException: Index 51 out of bounds for length 50", + "java.lang.ArrayIndexOutOfBoundsException: Index 51 out of bounds for length 50", + "java.lang.ArrayIndexOutOfBoundsException: Index 51 out of bounds for length 50", + "java.lang.ArrayIndexOutOfBoundsException: Index 51 out of bounds for length 50", + "java.lang.ArrayIndexOutOfBoundsException: Index 51 out of bounds for length 50", + "java.lang.ArrayIndexOutOfBoundsException: Index 51 out of bounds for length 50", + "java.lang.ArrayIndexOutOfBoundsException: Index 51 out of bounds for length 50", + "java.lang.ArrayIndexOutOfBoundsException: Index 51 out of bounds for length 50", + "java.lang.ArrayIndexOutOfBoundsException: Index 51 out of bounds for length 50", + "java.lang.ArrayIndexOutOfBoundsException: Index 51 out of bounds for length 50", + "java.lang.ArrayIndexOutOfBoundsException: Index 51 out of bounds for length 50", + "java.lang.ArrayIndexOutOfBoundsException: Index 51 out of bounds for length 50", + "java.lang.ArrayIndexOutOfBoundsException: Index 51 out of bounds for length 50", + "java.lang.ArrayIndexOutOfBoundsException: Index 51 out of bounds for length 50", + "java.lang.ArrayIndexOutOfBoundsException: Index 51 out of bounds for length 50", + "java.lang.ArrayIndexOutOfBoundsException: Index 51 out of bounds for length 50", + "java.lang.ArrayIndexOutOfBoundsException: Index 51 out of bounds for length 50", + "java.lang.ArrayIndexOutOfBoundsException: Index 51 out of bounds for length 50", + "java.lang.ArrayIndexOutOfBoundsException: Index 51 out of bounds for length 50", + "java.lang.ArrayIndexOutOfBoundsException: Index 51 out of bounds for length 50", + "java.lang.ArrayIndexOutOfBoundsException: Index 51 out of bounds for length 50", + "java.lang.ArrayIndexOutOfBoundsException: Index 51 out of bounds for length 50", + "java.lang.ArrayIndexOutOfBoundsException: Index 51 out of bounds for length 50" + ], + "has_log": true, + "ok": true, + "score": 1844.0, + "scores": [ + 987.0, + 857.0 + ], + "skipped": null + } + } + ], + "status": "DISCREPANCY (errors)" + }, + "roborumble/jgap.JGAP7958_1.0.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "jgap.JGAP7958 1.0", + "division": "roborumble", + "jar": "jgap.JGAP7958_1.0.jar", + "jar_sha256": "fd5b10d89d3f4e9f206018a23e65a3a64e433c62b78918271977915294d276e1", + "key": "roborumble/jgap.JGAP7958_1.0.jar", + "kind": "robot" + }, + "latest_observation": "68d33e4907c12469", + "observations": [ + { + "classic": { + "elapsed": 2.5, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 4169.0, + "scores": [ + 1888.0, + 2281.0 + ], + "selected": "jgap.JGAP7958 1.0" + }, + "completed_at": "2026-09-12T16:12:24Z", + "confirmation": null, + "delta_pct": -46.4, + "id": "68d33e4907c12469", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "a5a265702a6a53ea47f24cd39f34d502b6e7b976", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "0268506c4ed945f568cd18f57e7faef91ac6a33d", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "jgap.JGAP7958 1.0", + "division": "roborumble", + "jar": "jgap.JGAP7958_1.0.jar", + "jar_sha256": "fd5b10d89d3f4e9f206018a23e65a3a64e433c62b78918271977915294d276e1", + "key": "roborumble/jgap.JGAP7958_1.0.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (score)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 14.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 2236.0, + "scores": [ + 1284.0, + 952.0 + ], + "skipped": null + } + } + ], + "status": "score-review" + }, + "roborumble/jje.BagPuss_1.2.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "jje.BagPuss 1.2", + "division": "roborumble", + "jar": "jje.BagPuss_1.2.jar", + "jar_sha256": "5c7dfd94b4430cc03c9c794ca0b3db992f74daaa44604c516c7033aa76ee3a3a", + "key": "roborumble/jje.BagPuss_1.2.jar", + "kind": "robot" + }, + "latest_observation": "48caa85e1e1f702b", + "observations": [ + { + "classic": { + "elapsed": 2.4, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 7554.0, + "scores": [ + 3738.0, + 3816.0 + ], + "selected": "jje.BagPuss 1.2" + }, + "completed_at": "2026-09-12T16:12:57Z", + "confirmation": null, + "delta_pct": -30.8, + "id": "48caa85e1e1f702b", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "a5a265702a6a53ea47f24cd39f34d502b6e7b976", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "0268506c4ed945f568cd18f57e7faef91ac6a33d", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "jje.BagPuss 1.2", + "division": "roborumble", + "jar": "jje.BagPuss_1.2.jar", + "jar_sha256": "5c7dfd94b4430cc03c9c794ca0b3db992f74daaa44604c516c7033aa76ee3a3a", + "key": "roborumble/jje.BagPuss_1.2.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (score)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 30.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5226.0, + "scores": [ + 2699.0, + 2527.0 + ], + "skipped": null + } + } + ], + "status": "score-review" + }, + "roborumble/jk.mega.DrussGT_3.1.7.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "jk.mega.DrussGT 3.1.7", + "division": "roborumble", + "jar": "jk.mega.DrussGT_3.1.7.jar", + "jar_sha256": "c5dca7d207087ab97ab1d76755cc7e3eb33f90b4ccb1ce64a616d307beaa2baa", + "key": "roborumble/jk.mega.DrussGT_3.1.7.jar", + "kind": "robot" + }, + "latest_observation": "7bd03a5c78b1cf12", + "observations": [ + { + "classic": { + "elapsed": 55.9, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 4340.0, + "scores": [ + 2234.0, + 2106.0 + ], + "selected": "jk.mega.DrussGT 3.1.7" + }, + "completed_at": "2026-09-12T16:17:32Z", + "confirmation": null, + "delta_pct": -2.8, + "id": "7bd03a5c78b1cf12", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "a5a265702a6a53ea47f24cd39f34d502b6e7b976", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "0268506c4ed945f568cd18f57e7faef91ac6a33d", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "jk.mega.DrussGT 3.1.7", + "division": "roborumble", + "jar": "jk.mega.DrussGT_3.1.7.jar", + "jar_sha256": "c5dca7d207087ab97ab1d76755cc7e3eb33f90b4ccb1ce64a616d307beaa2baa", + "key": "roborumble/jk.mega.DrussGT_3.1.7.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 218.2, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 4220.0, + "scores": [ + 2462.0, + 1758.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/jk.melee.Neuromancer_7.12.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "jk.melee.Neuromancer 7.12", + "division": "roborumble", + "jar": "jk.melee.Neuromancer_7.12.jar", + "jar_sha256": "4146190efc0c79ba1ce42c282dd06cea1dc06351609d87cbeb2d0993837a7599", + "key": "roborumble/jk.melee.Neuromancer_7.12.jar", + "kind": "robot" + }, + "latest_observation": "a3becdc000776726", + "observations": [ + { + "classic": { + "elapsed": 97.9, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 4787.0, + "scores": [ + 2670.0, + 2117.0 + ], + "selected": "jk.melee.Neuromancer 7.12" + }, + "completed_at": "2026-09-12T16:20:22Z", + "confirmation": null, + "delta_pct": -17.9, + "id": "a3becdc000776726", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "a5a265702a6a53ea47f24cd39f34d502b6e7b976", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "0268506c4ed945f568cd18f57e7faef91ac6a33d", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "jk.melee.Neuromancer 7.12", + "division": "roborumble", + "jar": "jk.melee.Neuromancer_7.12.jar", + "jar_sha256": "4146190efc0c79ba1ce42c282dd06cea1dc06351609d87cbeb2d0993837a7599", + "key": "roborumble/jk.melee.Neuromancer_7.12.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 72.1, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 3928.0, + "scores": [ + 2572.0, + 1356.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/jk.micro.Cotillion_0.8.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "jk.micro.Cotillion 0.8", + "division": "roborumble", + "jar": "jk.micro.Cotillion_0.8.jar", + "jar_sha256": "dd4c6360b8d78a37eaf7a56f4afa7e1b26b6cddfc9bae3c2932e4ff265109bba", + "key": "roborumble/jk.micro.Cotillion_0.8.jar", + "kind": "robot" + }, + "latest_observation": "ac423db318a7666c", + "observations": [ + { + "classic": { + "elapsed": 6.4, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 4660.0, + "scores": [ + 1984.0, + 2676.0 + ], + "selected": "jk.micro.Cotillion 0.8" + }, + "completed_at": "2026-09-12T16:21:05Z", + "confirmation": null, + "delta_pct": -2.9, + "id": "ac423db318a7666c", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "a5a265702a6a53ea47f24cd39f34d502b6e7b976", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "0268506c4ed945f568cd18f57e7faef91ac6a33d", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "jk.micro.Cotillion 0.8", + "division": "roborumble", + "jar": "jk.micro.Cotillion_0.8.jar", + "jar_sha256": "dd4c6360b8d78a37eaf7a56f4afa7e1b26b6cddfc9bae3c2932e4ff265109bba", + "key": "roborumble/jk.micro.Cotillion_0.8.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 36.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 4523.0, + "scores": [ + 2583.0, + 1940.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/jk.mini.CunobelinDC_1.2.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "jk.mini.CunobelinDC 1.2", + "division": "roborumble", + "jar": "jk.mini.CunobelinDC_1.2.jar", + "jar_sha256": "dbf550466f1a5018263ccb66cc66ddf6b033561cb13ec998f6678a58f9a1b171", + "key": "roborumble/jk.mini.CunobelinDC_1.2.jar", + "kind": "robot" + }, + "latest_observation": "a3251e634f8d649d", + "observations": [ + { + "classic": { + "elapsed": 4093.0, + "error_count": 2, + "error_signatures": [], + "errors": [ + "Robot jk.mini.CunobelinDC 1.2 (2) is not stopping. Forcing a stop.", + "Unable to stop thread: jk.mini.CunobelinDC 1.2 (2)" + ], + "has_log": true, + "ok": true, + "score": 4991.0, + "scores": [ + 2844.0, + 2147.0 + ], + "selected": "jk.mini.CunobelinDC 1.2" + }, + "completed_at": "2026-09-12T17:29:48Z", + "confirmation": null, + "delta_pct": -12.1, + "id": "a3251e634f8d649d", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "a5a265702a6a53ea47f24cd39f34d502b6e7b976", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "0268506c4ed945f568cd18f57e7faef91ac6a33d", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "jk.mini.CunobelinDC 1.2", + "division": "roborumble", + "jar": "jk.mini.CunobelinDC_1.2.jar", + "jar_sha256": "dbf550466f1a5018263ccb66cc66ddf6b033561cb13ec998f6678a58f9a1b171", + "key": "roborumble/jk.mini.CunobelinDC_1.2.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 30.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 4389.0, + "scores": [ + 2275.0, + 2114.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/jk.nano.Machete_2.0.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "jk.nano.Machete 2.0", + "division": "roborumble", + "jar": "jk.nano.Machete_2.0.jar", + "jar_sha256": "b9de40b80f220367f2df7acae1dc8a955724e952879218e0f93607865022db72", + "key": "roborumble/jk.nano.Machete_2.0.jar", + "kind": "robot" + }, + "latest_observation": "9159148bd0131ead", + "observations": [ + { + "classic": { + "elapsed": 2.3, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 11271.0, + "scores": [ + 4395.0, + 6876.0 + ], + "selected": "jk.nano.Machete 2.0" + }, + "completed_at": "2026-09-12T17:30:01Z", + "confirmation": null, + "delta_pct": 17.6, + "id": "9159148bd0131ead", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "a5a265702a6a53ea47f24cd39f34d502b6e7b976", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "0268506c4ed945f568cd18f57e7faef91ac6a33d", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "jk.nano.Machete 2.0", + "division": "roborumble", + "jar": "jk.nano.Machete_2.0.jar", + "jar_sha256": "b9de40b80f220367f2df7acae1dc8a955724e952879218e0f93607865022db72", + "key": "roborumble/jk.nano.Machete_2.0.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 10.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 13256.0, + "scores": [ + 6661.0, + 6595.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/jk.precise.EnergyDome_1.6.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "jk.precise.EnergyDome 1.6", + "division": "roborumble", + "jar": "jk.precise.EnergyDome_1.6.jar", + "jar_sha256": "f2cf1754adfb62f9ecb166b64b2d08d3164f00a6883f68e8dabb9f0324f863e5", + "key": "roborumble/jk.precise.EnergyDome_1.6.jar", + "kind": "robot" + }, + "latest_observation": "9847c2cdcac260e3", + "observations": [ + { + "classic": { + "elapsed": 4.7, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 739.0, + "scores": [ + 370.0, + 369.0 + ], + "selected": "jk.precise.EnergyDome 1.6" + }, + "completed_at": "2026-09-12T17:31:58Z", + "confirmation": null, + "delta_pct": 15.8, + "id": "9847c2cdcac260e3", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "a5a265702a6a53ea47f24cd39f34d502b6e7b976", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "0268506c4ed945f568cd18f57e7faef91ac6a33d", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "jk.precise.EnergyDome 1.6", + "division": "roborumble", + "jar": "jk.precise.EnergyDome_1.6.jar", + "jar_sha256": "f2cf1754adfb62f9ecb166b64b2d08d3164f00a6883f68e8dabb9f0324f863e5", + "key": "roborumble/jk.precise.EnergyDome_1.6.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 112.2, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 856.0, + "scores": [ + 428.0, + 428.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/jk.precise.Wintermute_0.8.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "jk.precise.Wintermute 0.8", + "division": "roborumble", + "jar": "jk.precise.Wintermute_0.8.jar", + "jar_sha256": "8d6cd0f46981bf535138c4fc3700daa8aede08f14850e24baa76647252c64c00", + "key": "roborumble/jk.precise.Wintermute_0.8.jar", + "kind": "robot" + }, + "latest_observation": "58d7e52300e5940f", + "observations": [ + { + "classic": { + "elapsed": 15.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5110.0, + "scores": [ + 2482.0, + 2628.0 + ], + "selected": "jk.precise.Wintermute 0.8" + }, + "completed_at": "2026-09-12T17:32:50Z", + "confirmation": null, + "delta_pct": -3.2, + "id": "58d7e52300e5940f", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "a5a265702a6a53ea47f24cd39f34d502b6e7b976", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "0268506c4ed945f568cd18f57e7faef91ac6a33d", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "jk.precise.Wintermute 0.8", + "division": "roborumble", + "jar": "jk.precise.Wintermute_0.8.jar", + "jar_sha256": "8d6cd0f46981bf535138c4fc3700daa8aede08f14850e24baa76647252c64c00", + "key": "roborumble/jk.precise.Wintermute_0.8.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 36.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 4946.0, + "scores": [ + 2664.0, + 2282.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/jk.sheldor.nano.Yatagan_1.2.3.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "jk.sheldor.nano.Yatagan 1.2.3", + "division": "roborumble", + "jar": "jk.sheldor.nano.Yatagan_1.2.3.jar", + "jar_sha256": "6579d57ca5ca3f2fc9efef32bb9dc90f0cab418c018c31445fb650226b03249e", + "key": "roborumble/jk.sheldor.nano.Yatagan_1.2.3.jar", + "kind": "robot" + }, + "latest_observation": "190529e94cc2061c", + "observations": [ + { + "classic": { + "elapsed": 4.5, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 6191.0, + "scores": [ + 3120.0, + 3071.0 + ], + "selected": "jk.sheldor.nano.Yatagan 1.2.3" + }, + "completed_at": "2026-09-12T17:33:15Z", + "confirmation": null, + "delta_pct": -0.2, + "id": "190529e94cc2061c", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "a5a265702a6a53ea47f24cd39f34d502b6e7b976", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "0268506c4ed945f568cd18f57e7faef91ac6a33d", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "jk.sheldor.nano.Yatagan 1.2.3", + "division": "roborumble", + "jar": "jk.sheldor.nano.Yatagan_1.2.3.jar", + "jar_sha256": "6579d57ca5ca3f2fc9efef32bb9dc90f0cab418c018c31445fb650226b03249e", + "key": "roborumble/jk.sheldor.nano.Yatagan_1.2.3.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 20.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 6181.0, + "scores": [ + 3286.0, + 2895.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/jmcd.BeoWulf_2.8.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "jmcd.BeoWulf 2.8", + "division": "roborumble", + "jar": "jmcd.BeoWulf_2.8.jar", + "jar_sha256": "85220bbba65aba8970dd54bfbae5eb4d8fd5e22d6d1a425f6afbc862b74853c0", + "key": "roborumble/jmcd.BeoWulf_2.8.jar", + "kind": "robot" + }, + "latest_observation": "ad8b1f2666ea6051", + "observations": [ + { + "classic": { + "elapsed": 3.4, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 6137.0, + "scores": [ + 3030.0, + 3107.0 + ], + "selected": "jmcd.BeoWulf 2.8" + }, + "completed_at": "2026-09-12T17:33:23Z", + "confirmation": null, + "delta_pct": null, + "id": "5895c8c745cbbda2", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "a5a265702a6a53ea47f24cd39f34d502b6e7b976", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "0268506c4ed945f568cd18f57e7faef91ac6a33d", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "jmcd.BeoWulf 2.8", + "division": "roborumble", + "jar": "jmcd.BeoWulf_2.8.jar", + "jar_sha256": "85220bbba65aba8970dd54bfbae5eb4d8fd5e22d6d1a425f6afbc862b74853c0", + "key": "roborumble/jmcd.BeoWulf_2.8.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (outcome)", + "tank_royale": { + "bridge_only_signatures": [ + [ + "java.io.FileNotFoundException", + "jmcd.BeoWulf.run" + ] + ], + "elapsed": 4.2, + "error_count": 5, + "error_signatures": [ + { + "exception": "java.io.FileNotFoundException", + "origin": "jmcd.BeoWulf.run" + } + ], + "errors": [ + "HARNESS: worker produced no result (exit code -1)", + "java.io.FileNotFoundException: C:\\Code\\robocode-api-bridge\\compat-test\\work\\tr-bots\\jmcd.BeoWulf_2.8\\BeoWulf.data\\enemy.dat (Den angivne fil blev ikke fundet)", + "java.io.FileNotFoundException: C:\\Code\\robocode-api-bridge\\compat-test\\work\\tr-bots\\jmcd.BeoWulf_2.8\\BeoWulf.data\\Optim.dat (Den angivne fil blev ikke fundet)", + "java.io.FileNotFoundException: C:\\Code\\robocode-api-bridge\\compat-test\\work\\tr-bots\\jmcd.BeoWulf_2.8-2\\BeoWulf.data\\enemy.dat (Den angivne fil blev ikke fundet)", + "java.io.FileNotFoundException: C:\\Code\\robocode-api-bridge\\compat-test\\work\\tr-bots\\jmcd.BeoWulf_2.8-2\\BeoWulf.data\\Optim.dat (Den angivne fil blev ikke fundet)" + ], + "has_log": true, + "ok": false, + "score": null, + "scores": [], + "skipped": null + } + }, + { + "classic": { + "elapsed": 3.1, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5840.0, + "scores": [ + 3261.0, + 2579.0 + ], + "selected": "jmcd.BeoWulf 2.8" + }, + "completed_at": "2026-09-12T21:11:26Z", + "confirmation": null, + "delta_pct": -4.8, + "id": "ad8b1f2666ea6051", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } + }, + "bridge_commit": "28d4a79bc277e01ed2b8ec235e3bb2a779ff29c1", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "739b90f0f29ebba7bf15267d39f33230aff557b7", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "jmcd.BeoWulf 2.8", + "division": "roborumble", + "jar": "jmcd.BeoWulf_2.8.jar", + "jar_sha256": "85220bbba65aba8970dd54bfbae5eb4d8fd5e22d6d1a425f6afbc862b74853c0", + "key": "roborumble/jmcd.BeoWulf_2.8.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 26.1, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5560.0, + "scores": [ + 2848.0, + 2712.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/joe.ADinosaur_1.0.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "joe.ADinosaur 1.0", + "division": "roborumble", + "jar": "joe.ADinosaur_1.0.jar", + "jar_sha256": "97f22df93aa32da14bd0cc2fa18f9ae8cb37ba0b8f9fff1b6036671714080bab", + "key": "roborumble/joe.ADinosaur_1.0.jar", + "kind": "robot" + }, + "latest_observation": "fba69a53a36df25b", + "observations": [ + { + "classic": { + "elapsed": 3.4, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 7799.0, + "scores": [ + 3537.0, + 4262.0 + ], + "selected": "joe.ADinosaur 1.0" + }, + "completed_at": "2026-09-12T17:33:43Z", + "confirmation": null, + "delta_pct": -24.0, + "id": "fba69a53a36df25b", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "a5a265702a6a53ea47f24cd39f34d502b6e7b976", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "0268506c4ed945f568cd18f57e7faef91ac6a33d", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "joe.ADinosaur 1.0", + "division": "roborumble", + "jar": "joe.ADinosaur_1.0.jar", + "jar_sha256": "97f22df93aa32da14bd0cc2fa18f9ae8cb37ba0b8f9fff1b6036671714080bab", + "key": "roborumble/joe.ADinosaur_1.0.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 16.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5928.0, + "scores": [ + 2970.0, + 2958.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/josago.Jorgito_0.16.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "josago.Jorgito 0.16", + "division": "roborumble", + "jar": "josago.Jorgito_0.16.jar", + "jar_sha256": "ee18dd0aa0e8703eba84320f47280b05d902ce4129a56e79a412d4c7dd78dfdf", + "key": "roborumble/josago.Jorgito_0.16.jar", + "kind": "robot" + }, + "latest_observation": "3dce8987b150739e", + "observations": [ + { + "classic": { + "elapsed": 4.1, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 8356.0, + "scores": [ + 4302.0, + 4054.0 + ], + "selected": "josago.Jorgito 0.16" + }, + "completed_at": "2026-09-12T17:34:23Z", + "confirmation": null, + "delta_pct": null, + "id": "3dce8987b150739e", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "a5a265702a6a53ea47f24cd39f34d502b6e7b976", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "0268506c4ed945f568cd18f57e7faef91ac6a33d", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "josago.Jorgito 0.16", + "division": "roborumble", + "jar": "josago.Jorgito_0.16.jar", + "jar_sha256": "ee18dd0aa0e8703eba84320f47280b05d902ce4129a56e79a412d4c7dd78dfdf", + "key": "roborumble/josago.Jorgito_0.16.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (outcome)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 36.0, + "error_count": 1, + "error_signatures": [ + { + "exception": "dev.robocode.tankroyale.runner.BattleException", + "origin": "TrBattleWorker.runBattle" + } + ], + "errors": [ + "FATAL: dev.robocode.tankroyale.runner.BattleException: Bot connect timeout (30000ms): connected 0 of 2. Pending: [Jorgito 0.16 (Jorge S\ufffdez G\ufffdmez) (\u00d72)]" + ], + "has_log": true, + "ok": false, + "score": null, + "scores": [], + "skipped": null + } + } + ], + "status": "DISCREPANCY (outcome)" + }, + "roborumble/jp.Perpy_16.0.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "jp.Perpy 16.0", + "division": "roborumble", + "jar": "jp.Perpy_16.0.jar", + "jar_sha256": "4ccd821a5de1e216c187b7b1133efd71a0bff8d7c013e6037bcf1568fc67d983", + "key": "roborumble/jp.Perpy_16.0.jar", + "kind": "robot" + }, + "latest_observation": "6123a16a81268bc9", + "observations": [ + { + "classic": { + "elapsed": 3.9, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5863.0, + "scores": [ + 2270.0, + 3593.0 + ], + "selected": "jp.Perpy 16.0" + }, + "completed_at": "2026-09-12T17:34:51Z", + "confirmation": null, + "delta_pct": -3.9, + "id": "6123a16a81268bc9", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "d62396784e1e03acb37e3caa74b242dd9e2bd5f78d2d4033bf97bc242474d265" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "27cfeefd415e961e924fd04e8bd6c0cf14d9bb7d7f87e1069b7e9fec7acfa047" + } + }, + "bridge_commit": "a5a265702a6a53ea47f24cd39f34d502b6e7b976", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "0268506c4ed945f568cd18f57e7faef91ac6a33d", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "jp.Perpy 16.0", + "division": "roborumble", + "jar": "jp.Perpy_16.0.jar", + "jar_sha256": "4ccd821a5de1e216c187b7b1133efd71a0bff8d7c013e6037bcf1568fc67d983", + "key": "roborumble/jp.Perpy_16.0.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 24.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5632.0, + "scores": [ + 3313.0, + 2319.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/jp.SineWall_1.0.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "jp.SineWall 1.0", + "division": "roborumble", + "jar": "jp.SineWall_1.0.jar", + "jar_sha256": "8a957bb1297a6204beeb9b76bb171135f429187a19c0ee7100be6166749f31e2", + "key": "roborumble/jp.SineWall_1.0.jar", + "kind": "robot" + }, + "latest_observation": "f525491d80c17dbd", + "observations": [ + { + "classic": { + "elapsed": 2.5, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5888.0, + "scores": [ + 2831.0, + 3057.0 + ], + "selected": "jp.SineWall 1.0" + }, + "completed_at": "2026-09-12T21:29:55Z", + "confirmation": null, + "delta_pct": -4.0, + "id": "f525491d80c17dbd", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } + }, + "bridge_commit": "1498474deb61276150ff079fe91ab801381a1920", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "jp.SineWall 1.0", + "division": "roborumble", + "jar": "jp.SineWall_1.0.jar", + "jar_sha256": "8a957bb1297a6204beeb9b76bb171135f429187a19c0ee7100be6166749f31e2", + "key": "roborumble/jp.SineWall_1.0.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 12.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5653.0, + "scores": [ + 2932.0, + 2721.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/jrm.Test0_1.0.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "jrm.Test0 1.0", + "division": "roborumble", + "jar": "jrm.Test0_1.0.jar", + "jar_sha256": "04af9455c981df31eb0e00685f0695394231dcf4943206462d32eb727e683f74", + "key": "roborumble/jrm.Test0_1.0.jar", + "kind": "robot" + }, + "latest_observation": "87280748930f85ca", + "observations": [ + { + "classic": { + "elapsed": 2.6, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 6549.0, + "scores": [ + 3086.0, + 3463.0 + ], + "selected": "jrm.Test0 1.0" + }, + "completed_at": "2026-09-12T21:30:28Z", + "confirmation": null, + "delta_pct": -94.5, + "id": "87280748930f85ca", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } + }, + "bridge_commit": "1498474deb61276150ff079fe91ab801381a1920", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "jrm.Test0 1.0", + "division": "roborumble", + "jar": "jrm.Test0_1.0.jar", + "jar_sha256": "04af9455c981df31eb0e00685f0695394231dcf4943206462d32eb727e683f74", + "key": "roborumble/jrm.Test0_1.0.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (score)", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 30.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 360.0, + "scores": [ + 180.0, + 180.0 + ], + "skipped": null + } + } + ], + "status": "score-review" + }, + "roborumble/js.PinBall_1.6.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "js.PinBall 1.6", + "division": "roborumble", + "jar": "js.PinBall_1.6.jar", + "jar_sha256": "b5beb491096f0b8fca3d2b007706a9192deb26a54103098aa05c20ca8c149adc", + "key": "roborumble/js.PinBall_1.6.jar", + "kind": "robot" + }, + "latest_observation": "e13f3ced41c0f759", + "observations": [ + { + "classic": { + "elapsed": 2.5, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 8789.0, + "scores": [ + 4359.0, + 4430.0 + ], + "selected": "js.PinBall 1.6" + }, + "completed_at": "2026-09-12T21:30:41Z", + "confirmation": null, + "delta_pct": null, + "id": "e13f3ced41c0f759", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } + }, + "bridge_commit": "1498474deb61276150ff079fe91ab801381a1920", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "js.PinBall 1.6", + "division": "roborumble", + "jar": "js.PinBall_1.6.jar", + "jar_sha256": "b5beb491096f0b8fca3d2b007706a9192deb26a54103098aa05c20ca8c149adc", + "key": "roborumble/js.PinBall_1.6.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (outcome)", + "tank_royale": { + "bridge_only_signatures": [ + [ + "java.lang.ArithmeticException", + "js.PinBall.onScannedRobot" + ] + ], + "elapsed": 10.2, + "error_count": 2, + "error_signatures": [ + { + "exception": "java.lang.ArithmeticException", + "origin": "js.PinBall.onScannedRobot" + } + ], + "errors": [ + "HARNESS: worker produced no result (exit code -1)", + "java.lang.ArithmeticException: / by zero" + ], + "has_log": true, + "ok": false, + "score": null, + "scores": [], + "skipped": null + } + } + ], + "status": "DISCREPANCY (outcome)" + }, + "roborumble/jsal.Jsalbot_1.0.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "jsal.Jsalbot 1.0", + "division": "roborumble", + "jar": "jsal.Jsalbot_1.0.jar", + "jar_sha256": "5c0eb33b3cb7c7334eeb81c9389589cb645e70defc03b9ad1e6903bfd2d04cfa", + "key": "roborumble/jsal.Jsalbot_1.0.jar", + "kind": "robot" + }, + "latest_observation": "f729ebca3114899c", + "observations": [ + { + "classic": { + "elapsed": 3.9, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 3259.0, + "scores": [ + 1844.0, + 1415.0 + ], + "selected": "jsal.Jsalbot 1.0" + }, + "completed_at": "2026-09-12T21:31:17Z", + "confirmation": null, + "delta_pct": 18.8, + "id": "f729ebca3114899c", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } + }, + "bridge_commit": "1498474deb61276150ff079fe91ab801381a1920", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "jsal.Jsalbot 1.0", + "division": "roborumble", + "jar": "jsal.Jsalbot_1.0.jar", + "jar_sha256": "5c0eb33b3cb7c7334eeb81c9389589cb645e70defc03b9ad1e6903bfd2d04cfa", + "key": "roborumble/jsal.Jsalbot_1.0.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 32.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 3873.0, + "scores": [ + 2225.0, + 1648.0 + ], + "skipped": null } } ], "status": "PASS" }, - "roborumble/apc.Caan_1.0.jar": { + "roborumble/jt.SpearmintCT_Alpha.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "apc.Caan 1.0", + "classic_selected": "jt.SpearmintCT Alpha", "division": "roborumble", - "jar": "apc.Caan_1.0.jar", - "jar_sha256": "1cd29b8da786378b068170b3be45ce03620477218732e4b54e939165f33463b6", - "key": "roborumble/apc.Caan_1.0.jar", + "jar": "jt.SpearmintCT_Alpha.jar", + "jar_sha256": "0e7e0319dd336ee4491377653295ec98345e2eb8c065c80c47e57d0a1c287a57", + "key": "roborumble/jt.SpearmintCT_Alpha.jar", "kind": "robot" }, - "latest_observation": "f844e4bc6aff7dc0", + "latest_observation": "e663bf152188ba08", "observations": [ { "classic": { - "elapsed": 3.0, + "elapsed": 2.5, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 6154.0, + "score": 6596.0, "scores": [ - 2535.0, - 3619.0 + 3440.0, + 3156.0 ], - "selected": "apc.Caan 1.0" + "selected": "jt.SpearmintCT Alpha" }, - "completed_at": "2026-09-08T20:29:39Z", - "delta_pct": -1.1, - "id": "f844e4bc6aff7dc0", + "completed_at": "2026-09-12T21:31:32Z", + "confirmation": null, + "delta_pct": -45.3, + "id": "e663bf152188ba08", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "1498474deb61276150ff079fe91ab801381a1920", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -41073,90 +102480,194 @@ "width": 800 }, "source_identity": { - "classic_selected": "apc.Caan 1.0", + "classic_selected": "jt.SpearmintCT Alpha", "division": "roborumble", - "jar": "apc.Caan_1.0.jar", - "jar_sha256": "1cd29b8da786378b068170b3be45ce03620477218732e4b54e939165f33463b6", - "key": "roborumble/apc.Caan_1.0.jar", + "jar": "jt.SpearmintCT_Alpha.jar", + "jar_sha256": "0e7e0319dd336ee4491377653295ec98345e2eb8c065c80c47e57d0a1c287a57", + "key": "roborumble/jt.SpearmintCT_Alpha.jar", "kind": "robot" }, - "status": "PASS", + "status": "DISCREPANCY (score)", "tank_royale": { - "elapsed": 18.0, + "bridge_only_signatures": null, + "elapsed": 12.0, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 6084.0, + "score": 3611.0, "scores": [ - 3257.0, - 2827.0 + 1878.0, + 1733.0 ], "skipped": null } } ], - "status": "PASS" + "status": "score-review" }, - "roborumble/apc.Colossus2_0.12.jar": { + "roborumble/justin.DemonicRage_3.20.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "apc.Colossus2 0.12", + "classic_selected": "justin.DemonicRage 3.20", "division": "roborumble", - "jar": "apc.Colossus2_0.12.jar", - "jar_sha256": "b4dbfb04c20332efad6d132d89259a0218fb245dbc8d73a14e368d6dcc024db3", - "key": "roborumble/apc.Colossus2_0.12.jar", + "jar": "justin.DemonicRage_3.20.jar", + "jar_sha256": "e62616c8bf8e1f28d537d23715a7c2f8bff2f2f81cd61d717b32eb806ac88116", + "key": "roborumble/justin.DemonicRage_3.20.jar", "kind": "robot" }, - "latest_observation": "6234b82cd630f7c9", + "latest_observation": "299c1957c0af6855", "observations": [ { "classic": { - "elapsed": 2.5, + "elapsed": 8.3, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 11750.0, + "score": 4754.0, "scores": [ - 5594.0, - 6156.0 + 2508.0, + 2246.0 ], - "selected": "apc.Colossus2 0.12" + "selected": "justin.DemonicRage 3.20" }, - "completed_at": "2026-09-08T20:29:46Z", + "completed_at": "2026-09-12T21:31:47Z", + "confirmation": null, "delta_pct": null, - "id": "6234b82cd630f7c9", + "id": "299c1957c0af6855", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", + "bridge_commit": "1498474deb61276150ff079fe91ab801381a1920", "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "justin.DemonicRage 3.20", + "division": "roborumble", + "jar": "justin.DemonicRage_3.20.jar", + "jar_sha256": "e62616c8bf8e1f28d537d23715a7c2f8bff2f2f81cd61d717b32eb806ac88116", + "key": "roborumble/justin.DemonicRage_3.20.jar", + "kind": "robot" + }, + "status": "DISCREPANCY (outcome)", + "tank_royale": { + "bridge_only_signatures": [ + [ + "java.lang.NullPointerException", + "justin.radar.DynamicLocking.listen" + ] + ], + "elapsed": 6.2, + "error_count": 5, + "error_signatures": [ + { + "exception": "java.lang.NullPointerException", + "origin": "justin.radar.DynamicLocking.listen" + } + ], + "errors": [ + "HARNESS: worker produced no result (exit code -1)", + "java.lang.NullPointerException: Cannot invoke \"java.util.Hashtable.put(Object, Object)\" because \"this.knownEnemiesList\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.util.Hashtable.put(Object, Object)\" because \"this.knownEnemiesList\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.util.Hashtable.put(Object, Object)\" because \"this.knownEnemiesList\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.util.Hashtable.put(Object, Object)\" because \"this.knownEnemiesList\" is null" + ], + "has_log": true, + "ok": false, + "score": null, + "scores": [], + "skipped": null + } + } + ], + "status": "DISCREPANCY (outcome)" + }, + "roborumble/jw.Booring_1.11.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "jw.Booring 1.11", + "division": "roborumble", + "jar": "jw.Booring_1.11.jar", + "jar_sha256": "649cc72201c4dd224d09f39de7b10a941a39cccfab2aad46539af56928c06fa8", + "key": "roborumble/jw.Booring_1.11.jar", + "kind": "robot" + }, + "latest_observation": "523daa9bb1a66d82", + "observations": [ + { + "classic": { + "elapsed": 3.1, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5907.0, + "scores": [ + 2801.0, + 3106.0 + ], + "selected": "jw.Booring 1.11" + }, + "completed_at": "2026-09-12T21:32:24Z", + "confirmation": null, + "delta_pct": null, + "id": "523daa9bb1a66d82", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "1498474deb61276150ff079fe91ab801381a1920", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -41164,118 +102675,26 @@ "width": 800 }, "source_identity": { - "classic_selected": "apc.Colossus2 0.12", + "classic_selected": "jw.Booring 1.11", "division": "roborumble", - "jar": "apc.Colossus2_0.12.jar", - "jar_sha256": "b4dbfb04c20332efad6d132d89259a0218fb245dbc8d73a14e368d6dcc024db3", - "key": "roborumble/apc.Colossus2_0.12.jar", + "jar": "jw.Booring_1.11.jar", + "jar_sha256": "649cc72201c4dd224d09f39de7b10a941a39cccfab2aad46539af56928c06fa8", + "key": "roborumble/jw.Booring_1.11.jar", "kind": "robot" }, - "status": "FAIL (TR)", + "status": "DISCREPANCY (outcome)", "tank_royale": { - "elapsed": 4.2, - "error_count": 160, + "bridge_only_signatures": null, + "elapsed": 34.0, + "error_count": 1, + "error_signatures": [ + { + "exception": "dev.robocode.tankroyale.runner.BattleException", + "origin": "TrBattleWorker.runBattle" + } + ], "errors": [ - "HARNESS: worker produced no result (exit code -1)", - "java.lang.ArrayIndexOutOfBoundsException: Index 20 out of bounds for length 20", - "java.lang.ArrayIndexOutOfBoundsException: Index 21 out of bounds for length 20", - "java.lang.ArrayIndexOutOfBoundsException: Index 22 out of bounds for length 20", - "java.lang.ArrayIndexOutOfBoundsException: Index 23 out of bounds for length 20", - "java.lang.ArrayIndexOutOfBoundsException: Index 24 out of bounds for length 20", - "java.lang.ArrayIndexOutOfBoundsException: Index 25 out of bounds for length 20", - "java.lang.ArrayIndexOutOfBoundsException: Index 26 out of bounds for length 20", - "java.lang.ArrayIndexOutOfBoundsException: Index 27 out of bounds for length 20", - "java.lang.ArrayIndexOutOfBoundsException: Index 28 out of bounds for length 20", - "java.lang.ArrayIndexOutOfBoundsException: Index 29 out of bounds for length 20", - "java.lang.ArrayIndexOutOfBoundsException: Index 30 out of bounds for length 20", - "java.lang.ArrayIndexOutOfBoundsException: Index 31 out of bounds for length 20", - "java.lang.ArrayIndexOutOfBoundsException: Index 32 out of bounds for length 20", - "java.lang.ArrayIndexOutOfBoundsException: Index 33 out of bounds for length 20", - "java.lang.ArrayIndexOutOfBoundsException: Index 34 out of bounds for length 20", - "java.lang.ArrayIndexOutOfBoundsException: Index 35 out of bounds for length 20", - "java.lang.ArrayIndexOutOfBoundsException: Index 36 out of bounds for length 20", - "java.lang.ArrayIndexOutOfBoundsException: Index 37 out of bounds for length 20", - "java.lang.ArrayIndexOutOfBoundsException: Index 38 out of bounds for length 20", - "java.lang.ArrayIndexOutOfBoundsException: Index 39 out of bounds for length 20", - "java.lang.ArrayIndexOutOfBoundsException: Index 40 out of bounds for length 20", - "java.lang.ArrayIndexOutOfBoundsException: Index 41 out of bounds for length 20", - "java.lang.ArrayIndexOutOfBoundsException: Index 42 out of bounds for length 20", - "java.lang.ArrayIndexOutOfBoundsException: Index 43 out of bounds for length 20", - "java.lang.ArrayIndexOutOfBoundsException: Index 44 out of bounds for length 20", - "java.lang.ArrayIndexOutOfBoundsException: Index 45 out of bounds for length 20", - "java.lang.ArrayIndexOutOfBoundsException: Index 46 out of bounds for length 20", - "java.lang.ArrayIndexOutOfBoundsException: Index 47 out of bounds for length 20", - "java.lang.ArrayIndexOutOfBoundsException: Index 48 out of bounds for length 20", - "java.lang.ArrayIndexOutOfBoundsException: Index 49 out of bounds for length 20", - "java.lang.ArrayIndexOutOfBoundsException: Index 50 out of bounds for length 20", - "java.lang.ArrayIndexOutOfBoundsException: Index 51 out of bounds for length 20", - "java.lang.ArrayIndexOutOfBoundsException: Index 52 out of bounds for length 20", - "java.lang.ArrayIndexOutOfBoundsException: Index 53 out of bounds for length 20", - "java.lang.ArrayIndexOutOfBoundsException: Index 54 out of bounds for length 20", - "java.lang.ArrayIndexOutOfBoundsException: Index 55 out of bounds for length 20", - "java.lang.ArrayIndexOutOfBoundsException: Index 56 out of bounds for length 20", - "java.lang.ArrayIndexOutOfBoundsException: Index 57 out of bounds for length 20", - "java.lang.ArrayIndexOutOfBoundsException: Index 58 out of bounds for length 20", - "java.lang.ArrayIndexOutOfBoundsException: Index 59 out of bounds for length 20", - "java.lang.ArrayIndexOutOfBoundsException: Index 60 out of bounds for length 20", - "java.lang.ArrayIndexOutOfBoundsException: Index 61 out of bounds for length 20", - "java.lang.ArrayIndexOutOfBoundsException: Index 62 out of bounds for length 20", - "java.lang.ArrayIndexOutOfBoundsException: Index 63 out of bounds for length 20", - "java.lang.ArrayIndexOutOfBoundsException: Index 64 out of bounds for length 20", - "java.lang.ArrayIndexOutOfBoundsException: Index 65 out of bounds for length 20", - "java.lang.ArrayIndexOutOfBoundsException: Index 66 out of bounds for length 20", - "java.lang.ArrayIndexOutOfBoundsException: Index 67 out of bounds for length 20", - "java.lang.ArrayIndexOutOfBoundsException: Index 68 out of bounds for length 20", - "java.lang.ArrayIndexOutOfBoundsException: Index 69 out of bounds for length 20", - "java.lang.ArrayIndexOutOfBoundsException: Index 70 out of bounds for length 20", - "java.lang.ArrayIndexOutOfBoundsException: Index 71 out of bounds for length 20", - "java.lang.ArrayIndexOutOfBoundsException: Index 72 out of bounds for length 20", - "java.lang.ArrayIndexOutOfBoundsException: Index 20 out of bounds for length 20", - "java.lang.ArrayIndexOutOfBoundsException: Index 21 out of bounds for length 20", - "java.lang.ArrayIndexOutOfBoundsException: Index 22 out of bounds for length 20", - "java.lang.ArrayIndexOutOfBoundsException: Index 23 out of bounds for length 20", - "java.lang.ArrayIndexOutOfBoundsException: Index 24 out of bounds for length 20", - "java.lang.ArrayIndexOutOfBoundsException: Index 25 out of bounds for length 20", - "java.lang.ArrayIndexOutOfBoundsException: Index 26 out of bounds for length 20", - "java.lang.ArrayIndexOutOfBoundsException: Index 27 out of bounds for length 20", - "java.lang.ArrayIndexOutOfBoundsException: Index 28 out of bounds for length 20", - "java.lang.ArrayIndexOutOfBoundsException: Index 29 out of bounds for length 20", - "java.lang.ArrayIndexOutOfBoundsException: Index 30 out of bounds for length 20", - "java.lang.ArrayIndexOutOfBoundsException: Index 31 out of bounds for length 20", - "java.lang.ArrayIndexOutOfBoundsException: Index 32 out of bounds for length 20", - "java.lang.ArrayIndexOutOfBoundsException: Index 33 out of bounds for length 20", - "java.lang.ArrayIndexOutOfBoundsException: Index 34 out of bounds for length 20", - "java.lang.ArrayIndexOutOfBoundsException: Index 35 out of bounds for length 20", - "java.lang.ArrayIndexOutOfBoundsException: Index 36 out of bounds for length 20", - "java.lang.ArrayIndexOutOfBoundsException: Index 37 out of bounds for length 20", - "java.lang.ArrayIndexOutOfBoundsException: Index 38 out of bounds for length 20", - "java.lang.ArrayIndexOutOfBoundsException: Index 39 out of bounds for length 20", - "java.lang.ArrayIndexOutOfBoundsException: Index 40 out of bounds for length 20", - "java.lang.ArrayIndexOutOfBoundsException: Index 41 out of bounds for length 20", - "java.lang.ArrayIndexOutOfBoundsException: Index 42 out of bounds for length 20", - "java.lang.ArrayIndexOutOfBoundsException: Index 43 out of bounds for length 20", - "java.lang.ArrayIndexOutOfBoundsException: Index 44 out of bounds for length 20", - "java.lang.ArrayIndexOutOfBoundsException: Index 45 out of bounds for length 20", - "java.lang.ArrayIndexOutOfBoundsException: Index 46 out of bounds for length 20", - "java.lang.ArrayIndexOutOfBoundsException: Index 47 out of bounds for length 20", - "java.lang.ArrayIndexOutOfBoundsException: Index 48 out of bounds for length 20", - "java.lang.ArrayIndexOutOfBoundsException: Index 49 out of bounds for length 20", - "java.lang.ArrayIndexOutOfBoundsException: Index 50 out of bounds for length 20", - "java.lang.ArrayIndexOutOfBoundsException: Index 51 out of bounds for length 20", - "java.lang.ArrayIndexOutOfBoundsException: Index 52 out of bounds for length 20", - "java.lang.ArrayIndexOutOfBoundsException: Index 53 out of bounds for length 20", - "java.lang.ArrayIndexOutOfBoundsException: Index 54 out of bounds for length 20", - "java.lang.ArrayIndexOutOfBoundsException: Index 55 out of bounds for length 20", - "java.lang.ArrayIndexOutOfBoundsException: Index 56 out of bounds for length 20", - "java.lang.ArrayIndexOutOfBoundsException: Index 57 out of bounds for length 20", - "java.lang.ArrayIndexOutOfBoundsException: Index 58 out of bounds for length 20", - "java.lang.ArrayIndexOutOfBoundsException: Index 59 out of bounds for length 20", - "java.lang.ArrayIndexOutOfBoundsException: Index 60 out of bounds for length 20", - "java.lang.ArrayIndexOutOfBoundsException: Index 61 out of bounds for length 20", - "java.lang.ArrayIndexOutOfBoundsException: Index 62 out of bounds for length 20", - "java.lang.ArrayIndexOutOfBoundsException: Index 63 out of bounds for length 20", - "java.lang.ArrayIndexOutOfBoundsException: Index 64 out of bounds for length 20", - "java.lang.ArrayIndexOutOfBoundsException: Index 65 out of bounds for length 20" + "FATAL: dev.robocode.tankroyale.runner.BattleException: Bot connect timeout (30000ms): connected 0 of 2. Pending: [Booring 1.11 (Jimmi Wimmersj\ufffd) (\u00d72)]" ], "has_log": true, "ok": false, @@ -41285,67 +102704,274 @@ } } ], - "status": "FAIL (TR)" + "status": "DISCREPANCY (outcome)" }, - "roborumble/apc.LeeroyJenkins2_1.0.jar": { + "roborumble/jwst.DAD.DarkAndDarker_1.1.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "apc.LeeroyJenkins2 1.0", + "classic_selected": "jwst.DAD.DarkAndDarker 1.1", "division": "roborumble", - "jar": "apc.LeeroyJenkins2_1.0.jar", - "jar_sha256": "966e1947db52d724adaf02c233a17fdb172066c7fb9ab7a41741ba7eb5374a0d", - "key": "roborumble/apc.LeeroyJenkins2_1.0.jar", + "jar": "jwst.DAD.DarkAndDarker_1.1.jar", + "jar_sha256": "5c63cfaffbd456eec0169b138560f0b3cce67c02aa076d473b5e313632031e0e", + "key": "roborumble/jwst.DAD.DarkAndDarker_1.1.jar", "kind": "robot" }, - "latest_observation": "c115dfcf1a4a4fdf", + "latest_observation": "75967befc13ff72a", "observations": [ { "classic": { - "elapsed": 2.8, + "elapsed": 3.6, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 6444.0, + "score": 6561.0, "scores": [ - 2482.0, - 3962.0 + 3134.0, + 3427.0 ], - "selected": "apc.LeeroyJenkins2 1.0" + "selected": "jwst.DAD.DarkAndDarker 1.1" }, - "completed_at": "2026-09-08T20:31:46Z", - "delta_pct": -1.3, - "id": "c115dfcf1a4a4fdf", + "completed_at": "2026-09-12T21:32:55Z", + "confirmation": null, + "delta_pct": -15.4, + "id": "75967befc13ff72a", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } + }, + "bridge_commit": "1498474deb61276150ff079fe91ab801381a1920", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "jwst.DAD.DarkAndDarker 1.1", + "division": "roborumble", + "jar": "jwst.DAD.DarkAndDarker_1.1.jar", + "jar_sha256": "5c63cfaffbd456eec0169b138560f0b3cce67c02aa076d473b5e313632031e0e", + "key": "roborumble/jwst.DAD.DarkAndDarker_1.1.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 26.2, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5550.0, + "scores": [ + 2867.0, + 2683.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/kanishk.Fr0z3n_1.1.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "kanishk.Fr0z3n 1.1", + "division": "roborumble", + "jar": "kanishk.Fr0z3n_1.1.jar", + "jar_sha256": "dc8a18fbb8e948983086915cebb6f79314e8e071269993c4541338a7476a3f1f", + "key": "roborumble/kanishk.Fr0z3n_1.1.jar", + "kind": "robot" + }, + "latest_observation": "529babf01a0b4930", + "observations": [ + { + "classic": { + "elapsed": 133.9, + "error_count": 26, + "error_signatures": [], + "errors": [ + "Robot kanishk.Fr0z3n 1.1 (2) is not stopping. Forcing a stop.", + "Unable to stop thread: kanishk.Fr0z3n 1.1 (2)", + "Robot kanishk.Fr0z3n 1.1 (1) is not stopping. Forcing a stop.", + "Unable to stop thread: kanishk.Fr0z3n 1.1 (1)", + "Robot kanishk.Fr0z3n 1.1 (2) is not stopping. Forcing a stop.", + "Unable to stop thread: kanishk.Fr0z3n 1.1 (2)", + "Robot kanishk.Fr0z3n 1.1 (1) is not stopping. Forcing a stop.", + "Unable to stop thread: kanishk.Fr0z3n 1.1 (1)", + "Robot kanishk.Fr0z3n 1.1 (1) is not stopping. Forcing a stop.", + "Unable to stop thread: kanishk.Fr0z3n 1.1 (1)", + "Robot kanishk.Fr0z3n 1.1 (2) is not stopping. Forcing a stop.", + "Unable to stop thread: kanishk.Fr0z3n 1.1 (2)", + "Robot kanishk.Fr0z3n 1.1 (1) is not stopping. Forcing a stop.", + "Unable to stop thread: kanishk.Fr0z3n 1.1 (1)", + "Robot kanishk.Fr0z3n 1.1 (1) is not stopping. Forcing a stop.", + "Unable to stop thread: kanishk.Fr0z3n 1.1 (1)", + "Robot kanishk.Fr0z3n 1.1 (2) is not stopping. Forcing a stop.", + "Unable to stop thread: kanishk.Fr0z3n 1.1 (2)", + "Robot kanishk.Fr0z3n 1.1 (2) is not stopping. Forcing a stop.", + "Unable to stop thread: kanishk.Fr0z3n 1.1 (2)", + "Robot kanishk.Fr0z3n 1.1 (1) is not stopping. Forcing a stop.", + "Unable to stop thread: kanishk.Fr0z3n 1.1 (1)", + "Robot kanishk.Fr0z3n 1.1 (2) is not stopping. Forcing a stop.", + "Unable to stop thread: kanishk.Fr0z3n 1.1 (2)", + "Robot kanishk.Fr0z3n 1.1 (1) is not stopping. Forcing a stop.", + "Unable to stop thread: kanishk.Fr0z3n 1.1 (1)" + ], + "has_log": true, + "ok": true, + "score": 5873.0, + "scores": [ + 3166.0, + 2707.0 + ], + "selected": "kanishk.Fr0z3n 1.1" + }, + "completed_at": "2026-09-12T21:39:14Z", + "confirmation": null, + "delta_pct": -16.0, + "id": "529babf01a0b4930", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } + }, + "bridge_commit": "1498474deb61276150ff079fe91ab801381a1920", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", + "threshold": 25.0 + }, + "retest": null, + "setup": { + "height": 600, + "participants": 2, + "rounds": 35, + "width": 800 + }, + "source_identity": { + "classic_selected": "kanishk.Fr0z3n 1.1", + "division": "roborumble", + "jar": "kanishk.Fr0z3n_1.1.jar", + "jar_sha256": "dc8a18fbb8e948983086915cebb6f79314e8e071269993c4541338a7476a3f1f", + "key": "roborumble/kanishk.Fr0z3n_1.1.jar", + "kind": "robot" + }, + "status": "PASS", + "tank_royale": { + "bridge_only_signatures": null, + "elapsed": 245.2, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": true, + "ok": true, + "score": 4931.0, + "scores": [ + 2910.0, + 2021.0 + ], + "skipped": null + } + } + ], + "status": "PASS" + }, + "roborumble/kano.gamma.KanoGamma_1.8.jar": { + "diagnosis_events": [], + "identity": { + "classic_selected": "kano.gamma.KanoGamma 1.8", + "division": "roborumble", + "jar": "kano.gamma.KanoGamma_1.8.jar", + "jar_sha256": "d28fc3fa02501e2f8fdbd212bb739799c46967b797f8943693088532e86dc7c5", + "key": "roborumble/kano.gamma.KanoGamma_1.8.jar", + "kind": "robot" + }, + "latest_observation": "78295d7324f7da2d", + "observations": [ + { + "classic": { + "elapsed": 3.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5734.0, + "scores": [ + 2476.0, + 3258.0 + ], + "selected": "kano.gamma.KanoGamma 1.8" + }, + "completed_at": "2026-09-12T21:39:35Z", + "confirmation": null, + "delta_pct": -5.3, + "id": "78295d7324f7da2d", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "1498474deb61276150ff079fe91ab801381a1920", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -41353,24 +102979,26 @@ "width": 800 }, "source_identity": { - "classic_selected": "apc.LeeroyJenkins2 1.0", + "classic_selected": "kano.gamma.KanoGamma 1.8", "division": "roborumble", - "jar": "apc.LeeroyJenkins2_1.0.jar", - "jar_sha256": "966e1947db52d724adaf02c233a17fdb172066c7fb9ab7a41741ba7eb5374a0d", - "key": "roborumble/apc.LeeroyJenkins2_1.0.jar", + "jar": "kano.gamma.KanoGamma_1.8.jar", + "jar_sha256": "d28fc3fa02501e2f8fdbd212bb739799c46967b797f8943693088532e86dc7c5", + "key": "roborumble/kano.gamma.KanoGamma_1.8.jar", "kind": "robot" }, "status": "PASS", "tank_royale": { + "bridge_only_signatures": null, "elapsed": 18.0, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 6361.0, + "score": 5429.0, "scores": [ - 3284.0, - 3077.0 + 2825.0, + 2604.0 ], "skipped": null } @@ -41378,65 +103006,63 @@ ], "status": "PASS" }, - "roborumble/apc.botM_3.0.jar": { + "roborumble/kawam.kmBot9_1.0.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "apc.botM 3.0", + "classic_selected": "kawam.kmBot9 1.0", "division": "roborumble", - "jar": "apc.botM_3.0.jar", - "jar_sha256": "9348a9b3c2e0f175bacf361dc3b20a0842f186c228564bcafd8b6d853d345d94", - "key": "roborumble/apc.botM_3.0.jar", + "jar": "kawam.kmBot9_1.0.jar", + "jar_sha256": "30c90aa30eb121b989cb6f855b5c0c130c75c52abc2d5b2b191e3a50cba7c0a5", + "key": "roborumble/kawam.kmBot9_1.0.jar", "kind": "robot" }, - "latest_observation": "4a1b06c7f3fd0456", + "latest_observation": "acc0a8de12e6e0eb", "observations": [ { "classic": { - "elapsed": 2.8, + "elapsed": 2.9, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 5572.0, + "score": 5989.0, "scores": [ - 3017.0, - 2555.0 + 3169.0, + 2820.0 ], - "selected": "apc.botM 3.0" + "selected": "kawam.kmBot9 1.0" }, - "completed_at": "2026-09-08T20:29:18Z", - "delta_pct": 2.7, - "id": "4a1b06c7f3fd0456", + "completed_at": "2026-09-12T21:40:03Z", + "confirmation": null, + "delta_pct": 1.7, + "id": "acc0a8de12e6e0eb", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "1498474deb61276150ff079fe91ab801381a1920", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -41444,24 +103070,26 @@ "width": 800 }, "source_identity": { - "classic_selected": "apc.botM 3.0", + "classic_selected": "kawam.kmBot9 1.0", "division": "roborumble", - "jar": "apc.botM_3.0.jar", - "jar_sha256": "9348a9b3c2e0f175bacf361dc3b20a0842f186c228564bcafd8b6d853d345d94", - "key": "roborumble/apc.botM_3.0.jar", + "jar": "kawam.kmBot9_1.0.jar", + "jar_sha256": "30c90aa30eb121b989cb6f855b5c0c130c75c52abc2d5b2b191e3a50cba7c0a5", + "key": "roborumble/kawam.kmBot9_1.0.jar", "kind": "robot" }, "status": "PASS", "tank_royale": { - "elapsed": 20.0, + "bridge_only_signatures": null, + "elapsed": 24.1, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 5725.0, + "score": 6089.0, "scores": [ - 3022.0, - 2703.0 + 3157.0, + 2932.0 ], "skipped": null } @@ -41469,65 +103097,63 @@ ], "status": "PASS" }, - "roborumble/apollokidd.ApolloKidd_0.9.jar": { + "roborumble/kawigi.f.FhqwhgadsMicro_1.0.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "apollokidd.ApolloKidd 0.9", + "classic_selected": "kawigi.f.FhqwhgadsMicro 1.0", "division": "roborumble", - "jar": "apollokidd.ApolloKidd_0.9.jar", - "jar_sha256": "e7153516f9b25d4d571e484022c7c9fc6ab19f036faeb46213764691c84e7390", - "key": "roborumble/apollokidd.ApolloKidd_0.9.jar", + "jar": "kawigi.f.FhqwhgadsMicro_1.0.jar", + "jar_sha256": "eba751ff0a789af13881060817bc9ba779b5fca15f2009f8bf58738bf75311a3", + "key": "roborumble/kawigi.f.FhqwhgadsMicro_1.0.jar", "kind": "robot" }, - "latest_observation": "b90a01cef8102d4f", + "latest_observation": "939360d33239dc93", "observations": [ { "classic": { - "elapsed": 2.4, + "elapsed": 2.8, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 10425.0, + "score": 5286.0, "scores": [ - 4744.0, - 5681.0 + 2612.0, + 2674.0 ], - "selected": "apollokidd.ApolloKidd 0.9" + "selected": "kawigi.f.FhqwhgadsMicro 1.0" }, - "completed_at": "2026-09-08T20:32:13Z", - "delta_pct": 34.5, - "id": "b90a01cef8102d4f", + "completed_at": "2026-09-12T21:40:24Z", + "confirmation": null, + "delta_pct": -5.2, + "id": "939360d33239dc93", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "1498474deb61276150ff079fe91ab801381a1920", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -41535,90 +103161,90 @@ "width": 800 }, "source_identity": { - "classic_selected": "apollokidd.ApolloKidd 0.9", + "classic_selected": "kawigi.f.FhqwhgadsMicro 1.0", "division": "roborumble", - "jar": "apollokidd.ApolloKidd_0.9.jar", - "jar_sha256": "e7153516f9b25d4d571e484022c7c9fc6ab19f036faeb46213764691c84e7390", - "key": "roborumble/apollokidd.ApolloKidd_0.9.jar", + "jar": "kawigi.f.FhqwhgadsMicro_1.0.jar", + "jar_sha256": "eba751ff0a789af13881060817bc9ba779b5fca15f2009f8bf58738bf75311a3", + "key": "roborumble/kawigi.f.FhqwhgadsMicro_1.0.jar", "kind": "robot" }, - "status": "DISCREPANCY (score)", + "status": "PASS", "tank_royale": { - "elapsed": 24.0, + "bridge_only_signatures": null, + "elapsed": 18.0, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 14020.0, + "score": 5012.0, "scores": [ - 7164.0, - 6856.0 + 2652.0, + 2360.0 ], "skipped": null } } ], - "status": "score-review" + "status": "PASS" }, - "roborumble/apv.AspidReloaded_0.6.jar": { + "roborumble/kawigi.micro.Shiz_1.1.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "apv.AspidReloaded 0.6", + "classic_selected": "kawigi.micro.Shiz 1.1", "division": "roborumble", - "jar": "apv.AspidReloaded_0.6.jar", - "jar_sha256": "9cbef59e538da1a8edb9d9dd38ac7970a9607232b6e663eeaae9899c4c3161b1", - "key": "roborumble/apv.AspidReloaded_0.6.jar", + "jar": "kawigi.micro.Shiz_1.1.jar", + "jar_sha256": "c8f4d694bfc08c8f1634f3cc60efb7e5083163892447d824ac7873f1368823f0", + "key": "roborumble/kawigi.micro.Shiz_1.1.jar", "kind": "robot" }, - "latest_observation": "22f23ec4b2359408", + "latest_observation": "e2df7a9d6c23797e", "observations": [ { "classic": { - "elapsed": 2.7, + "elapsed": 4.2, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 5453.0, + "score": 5231.0, "scores": [ - 2852.0, - 2601.0 + 2212.0, + 3019.0 ], - "selected": "apv.AspidReloaded 0.6" + "selected": "kawigi.micro.Shiz 1.1" }, - "completed_at": "2026-09-08T20:32:53Z", - "delta_pct": -9.7, - "id": "22f23ec4b2359408", + "completed_at": "2026-09-12T21:40:51Z", + "confirmation": null, + "delta_pct": -43.9, + "id": "e2df7a9d6c23797e", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "1498474deb61276150ff079fe91ab801381a1920", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -41626,90 +103252,90 @@ "width": 800 }, "source_identity": { - "classic_selected": "apv.AspidReloaded 0.6", + "classic_selected": "kawigi.micro.Shiz 1.1", "division": "roborumble", - "jar": "apv.AspidReloaded_0.6.jar", - "jar_sha256": "9cbef59e538da1a8edb9d9dd38ac7970a9607232b6e663eeaae9899c4c3161b1", - "key": "roborumble/apv.AspidReloaded_0.6.jar", + "jar": "kawigi.micro.Shiz_1.1.jar", + "jar_sha256": "c8f4d694bfc08c8f1634f3cc60efb7e5083163892447d824ac7873f1368823f0", + "key": "roborumble/kawigi.micro.Shiz_1.1.jar", "kind": "robot" }, - "status": "PASS", + "status": "DISCREPANCY (score)", "tank_royale": { - "elapsed": 16.0, + "bridge_only_signatures": null, + "elapsed": 22.0, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 4926.0, + "score": 2933.0, "scores": [ - 2805.0, - 2121.0 + 1756.0, + 1177.0 ], "skipped": null } } ], - "status": "PASS" + "status": "score-review" }, - "roborumble/apv.Aspid_1.7.jar": { + "roborumble/kawigi.mini.Coriantumr_1.1.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "apv.Aspid 1.7", + "classic_selected": "kawigi.mini.Coriantumr 1.1", "division": "roborumble", - "jar": "apv.Aspid_1.7.jar", - "jar_sha256": "4cf2bf08d8816f48106ef02f849e5afd7b52f46490902c8643d2d1c19853437d", - "key": "roborumble/apv.Aspid_1.7.jar", + "jar": "kawigi.mini.Coriantumr_1.1.jar", + "jar_sha256": "39d3b37cc9e7a9a2f244efcc526d756846e66a619730e75beb24cdce70194b5f", + "key": "roborumble/kawigi.mini.Coriantumr_1.1.jar", "kind": "robot" }, - "latest_observation": "f0bfd59e67a0674e", + "latest_observation": "28a7118ca364289e", "observations": [ { "classic": { - "elapsed": 3.2, + "elapsed": 3.8, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 5475.0, + "score": 5756.0, "scores": [ - 2444.0, - 3031.0 + 2800.0, + 2956.0 ], - "selected": "apv.Aspid 1.7" + "selected": "kawigi.mini.Coriantumr 1.1" }, - "completed_at": "2026-09-08T20:32:34Z", - "delta_pct": -10.1, - "id": "f0bfd59e67a0674e", + "completed_at": "2026-09-12T21:41:04Z", + "confirmation": null, + "delta_pct": null, + "id": "28a7118ca364289e", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "1498474deb61276150ff079fe91ab801381a1920", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -41717,93 +103343,100 @@ "width": 800 }, "source_identity": { - "classic_selected": "apv.Aspid 1.7", + "classic_selected": "kawigi.mini.Coriantumr 1.1", "division": "roborumble", - "jar": "apv.Aspid_1.7.jar", - "jar_sha256": "4cf2bf08d8816f48106ef02f849e5afd7b52f46490902c8643d2d1c19853437d", - "key": "roborumble/apv.Aspid_1.7.jar", + "jar": "kawigi.mini.Coriantumr_1.1.jar", + "jar_sha256": "39d3b37cc9e7a9a2f244efcc526d756846e66a619730e75beb24cdce70194b5f", + "key": "roborumble/kawigi.mini.Coriantumr_1.1.jar", "kind": "robot" }, - "status": "PASS", + "status": "DISCREPANCY (outcome)", "tank_royale": { - "elapsed": 18.0, - "error_count": 0, - "errors": [], - "has_log": false, - "ok": true, - "score": 4924.0, - "scores": [ - 2572.0, - 2352.0 + "bridge_only_signatures": [ + [ + "java.lang.ArrayIndexOutOfBoundsException", + "kawigi.mini.Coriantumr.onScannedRobot" + ] + ], + "elapsed": 8.6, + "error_count": 2, + "error_signatures": [ + { + "exception": "java.lang.ArrayIndexOutOfBoundsException", + "origin": "kawigi.mini.Coriantumr.onScannedRobot" + } ], + "errors": [ + "HARNESS: worker produced no result (exit code -1)", + "java.lang.ArrayIndexOutOfBoundsException: Index -1 out of bounds for length 2" + ], + "has_log": true, + "ok": false, + "score": null, + "scores": [], "skipped": null } } ], - "status": "PASS" + "status": "DISCREPANCY (outcome)" }, - "roborumble/apv.LauLectrik_1.2.jar": { + "roborumble/kawigi.mini.Fhqwhgads_1.1.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "apv.LauLectrik 1.2", + "classic_selected": "kawigi.mini.Fhqwhgads 1.1", "division": "roborumble", - "jar": "apv.LauLectrik_1.2.jar", - "jar_sha256": "b9268644ac0983cc1feaef4d7052c796ba74e0da321887bdaf37da70725ff822", - "key": "roborumble/apv.LauLectrik_1.2.jar", + "jar": "kawigi.mini.Fhqwhgads_1.1.jar", + "jar_sha256": "8cb699f5691386a807b3e4a11b9722f5fb6ce1b62ac636d4fb330f7c8093ac33", + "key": "roborumble/kawigi.mini.Fhqwhgads_1.1.jar", "kind": "robot" }, - "latest_observation": "379bc7ba025c9021", + "latest_observation": "d4bf466a526e95db", "observations": [ { "classic": { - "elapsed": 3.2, - "error_count": 2, - "errors": [ - "java.io.FileNotFoundException: C:\\Code\\robocode-api-bridge\\compat-test\\work\\rc-robots\\.data\\apv\\LauLectrik.data\\apv.LauLectrik.zip (Den angivne fil blev ikke fundet)", - "java.io.FileNotFoundException: C:\\Code\\robocode-api-bridge\\compat-test\\work\\rc-robots\\.data\\apv\\LauLectrik.data\\apv.LauLectrik.zip (Den angivne fil blev ikke fundet)" - ], - "has_log": true, + "elapsed": 8.1, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, "ok": true, - "score": 5751.0, + "score": 5869.0, "scores": [ - 2852.0, - 2899.0 + 3146.0, + 2723.0 ], - "selected": "apv.LauLectrik 1.2" + "selected": "kawigi.mini.Fhqwhgads 1.1" }, - "completed_at": "2026-09-08T20:33:13Z", - "delta_pct": 1.8, - "id": "379bc7ba025c9021", + "completed_at": "2026-09-12T21:41:21Z", + "confirmation": null, + "delta_pct": null, + "id": "d4bf466a526e95db", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "1498474deb61276150ff079fe91ab801381a1920", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -41811,118 +103444,127 @@ "width": 800 }, "source_identity": { - "classic_selected": "apv.LauLectrik 1.2", + "classic_selected": "kawigi.mini.Fhqwhgads 1.1", "division": "roborumble", - "jar": "apv.LauLectrik_1.2.jar", - "jar_sha256": "b9268644ac0983cc1feaef4d7052c796ba74e0da321887bdaf37da70725ff822", - "key": "roborumble/apv.LauLectrik_1.2.jar", + "jar": "kawigi.mini.Fhqwhgads_1.1.jar", + "jar_sha256": "8cb699f5691386a807b3e4a11b9722f5fb6ce1b62ac636d4fb330f7c8093ac33", + "key": "roborumble/kawigi.mini.Fhqwhgads_1.1.jar", "kind": "robot" }, - "status": "PASS", + "status": "DISCREPANCY (outcome)", "tank_royale": { - "elapsed": 16.0, + "bridge_only_signatures": [ + [ + "java.lang.ArrayIndexOutOfBoundsException", + "kawigi.mini.Fhqwhgads.onScannedRobot" + ] + ], + "elapsed": 8.9, "error_count": 2, + "error_signatures": [ + { + "exception": "java.lang.ArrayIndexOutOfBoundsException", + "origin": "kawigi.mini.Fhqwhgads.onScannedRobot" + } + ], "errors": [ - "java.io.FileNotFoundException: C:\\Code\\robocode-api-bridge\\compat-test\\work\\tr-bots\\apv.LauLectrik_1.2\\LauLectrik.data\\2.zip (Den angivne fil blev ikke fundet)", - "java.io.FileNotFoundException: C:\\Code\\robocode-api-bridge\\compat-test\\work\\tr-bots\\apv.LauLectrik_1.2-2\\LauLectrik.data\\1.zip (Den angivne fil blev ikke fundet)" + "HARNESS: worker produced no result (exit code -1)", + "java.lang.ArrayIndexOutOfBoundsException: Index -1 out of bounds for length 4" ], "has_log": true, - "ok": true, - "score": 5853.0, - "scores": [ - 3459.0, - 2394.0 - ], + "ok": false, + "score": null, + "scores": [], "skipped": null } } ], - "status": "PASS" + "status": "DISCREPANCY (outcome)" }, - "roborumble/apv.MicroAspid_1.8.jar": { + "roborumble/kawigi.nano.FunkyChicken_1.1.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "apv.MicroAspid 1.8", + "classic_selected": "kawigi.nano.FunkyChicken 1.1", "division": "roborumble", - "jar": "apv.MicroAspid_1.8.jar", - "jar_sha256": "2bbff478cfaca3f612e1bb707973c4a65a7be125ef016689f3cba9363f9147e6", - "key": "roborumble/apv.MicroAspid_1.8.jar", + "jar": "kawigi.nano.FunkyChicken_1.1.jar", + "jar_sha256": "ba3dfd385f67c0efb044000e66ba8282ec97ce0250c3e3ffbe7fc8aabc422812", + "key": "roborumble/kawigi.nano.FunkyChicken_1.1.jar", "kind": "robot" }, - "latest_observation": "683da02ff1de941a", + "latest_observation": "291eab4972832579", "observations": [ { "classic": { - "elapsed": 3.1, + "elapsed": 4.3, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 4316.0, + "score": 5641.0, "scores": [ - 1971.0, - 2345.0 + 2698.0, + 2943.0 ], - "selected": "apv.MicroAspid 1.8" + "selected": "kawigi.nano.FunkyChicken 1.1" }, - "completed_at": "2026-09-08T20:33:36Z", - "delta_pct": -2.1, - "id": "683da02ff1de941a", + "completed_at": "2026-09-12T21:41:42Z", + "confirmation": null, + "delta_pct": -15.6, + "id": "291eab4972832579", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "1498474deb61276150ff079fe91ab801381a1920", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, "rounds": 35, "width": 800 }, - "source_identity": { - "classic_selected": "apv.MicroAspid 1.8", - "division": "roborumble", - "jar": "apv.MicroAspid_1.8.jar", - "jar_sha256": "2bbff478cfaca3f612e1bb707973c4a65a7be125ef016689f3cba9363f9147e6", - "key": "roborumble/apv.MicroAspid_1.8.jar", + "source_identity": { + "classic_selected": "kawigi.nano.FunkyChicken 1.1", + "division": "roborumble", + "jar": "kawigi.nano.FunkyChicken_1.1.jar", + "jar_sha256": "ba3dfd385f67c0efb044000e66ba8282ec97ce0250c3e3ffbe7fc8aabc422812", + "key": "roborumble/kawigi.nano.FunkyChicken_1.1.jar", "kind": "robot" }, "status": "PASS", "tank_royale": { - "elapsed": 20.0, + "bridge_only_signatures": null, + "elapsed": 16.0, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 4224.0, + "score": 4761.0, "scores": [ - 2166.0, - 2058.0 + 2771.0, + 1990.0 ], "skipped": null } @@ -41930,65 +103572,63 @@ ], "status": "PASS" }, - "roborumble/apv.NanoLauLectrikTheCannibal_1.1.jar": { + "roborumble/kawigi.nano.ThnikkaBot_0.9.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "apv.NanoLauLectrikTheCannibal 1.1", + "classic_selected": "kawigi.nano.ThnikkaBot 0.9", "division": "roborumble", - "jar": "apv.NanoLauLectrikTheCannibal_1.1.jar", - "jar_sha256": "de413e324848ddca35723cea47c4ed4e23c46b669d4fbfe97ceac6d2c93c1fc8", - "key": "roborumble/apv.NanoLauLectrikTheCannibal_1.1.jar", + "jar": "kawigi.nano.ThnikkaBot_0.9.jar", + "jar_sha256": "dbd3b7f5db346f198fd40c764f9a3335fe188f4278ff4336166a77536aafed66", + "key": "roborumble/kawigi.nano.ThnikkaBot_0.9.jar", "kind": "robot" }, - "latest_observation": "15a460cbb677c889", + "latest_observation": "038ecd73c09d8b0d", "observations": [ { "classic": { "elapsed": 2.2, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 13019.0, + "score": 12934.0, "scores": [ - 6404.0, - 6615.0 + 6716.0, + 6218.0 ], - "selected": "apv.NanoLauLectrikTheCannibal 1.1" + "selected": "kawigi.nano.ThnikkaBot 0.9" }, - "completed_at": "2026-09-08T20:34:11Z", - "delta_pct": -6.0, - "id": "15a460cbb677c889", + "completed_at": "2026-09-12T21:41:56Z", + "confirmation": null, + "delta_pct": -6.7, + "id": "038ecd73c09d8b0d", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "1498474deb61276150ff079fe91ab801381a1920", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -41996,24 +103636,26 @@ "width": 800 }, "source_identity": { - "classic_selected": "apv.NanoLauLectrikTheCannibal 1.1", + "classic_selected": "kawigi.nano.ThnikkaBot 0.9", "division": "roborumble", - "jar": "apv.NanoLauLectrikTheCannibal_1.1.jar", - "jar_sha256": "de413e324848ddca35723cea47c4ed4e23c46b669d4fbfe97ceac6d2c93c1fc8", - "key": "roborumble/apv.NanoLauLectrikTheCannibal_1.1.jar", + "jar": "kawigi.nano.ThnikkaBot_0.9.jar", + "jar_sha256": "dbd3b7f5db346f198fd40c764f9a3335fe188f4278ff4336166a77536aafed66", + "key": "roborumble/kawigi.nano.ThnikkaBot_0.9.jar", "kind": "robot" }, "status": "PASS", "tank_royale": { + "bridge_only_signatures": null, "elapsed": 12.0, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 12236.0, + "score": 12064.0, "scores": [ - 6201.0, - 6035.0 + 6099.0, + 5965.0 ], "skipped": null } @@ -42021,65 +103663,63 @@ ], "status": "PASS" }, - "roborumble/apv.NanoLauLectrik_1.0.jar": { + "roborumble/kawigi.robot.Girl_1.2.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "apv.NanoLauLectrik 1.0", + "classic_selected": "kawigi.robot.Girl 1.2", "division": "roborumble", - "jar": "apv.NanoLauLectrik_1.0.jar", - "jar_sha256": "4500794fdf2577950dd3981cdb314b4f750e1bfa66133dcdf546fa0203ee868d", - "key": "roborumble/apv.NanoLauLectrik_1.0.jar", + "jar": "kawigi.robot.Girl_1.2.jar", + "jar_sha256": "0a675ce6fec12505efbeb1eb346ed010976d8d6f2543aa944883a764b51949cd", + "key": "roborumble/kawigi.robot.Girl_1.2.jar", "kind": "robot" }, - "latest_observation": "1aa9b09bc500fd4b", + "latest_observation": "7395d4249b4a692e", "observations": [ { "classic": { - "elapsed": 3.9, + "elapsed": 2.7, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 5376.0, + "score": 5631.0, "scores": [ - 2551.0, - 2825.0 + 2840.0, + 2791.0 ], - "selected": "apv.NanoLauLectrik 1.0" + "selected": "kawigi.robot.Girl 1.2" }, - "completed_at": "2026-09-08T20:33:57Z", - "delta_pct": -14.2, - "id": "1aa9b09bc500fd4b", + "completed_at": "2026-09-12T21:42:21Z", + "confirmation": null, + "delta_pct": -3.5, + "id": "7395d4249b4a692e", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "1498474deb61276150ff079fe91ab801381a1920", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -42087,24 +103727,26 @@ "width": 800 }, "source_identity": { - "classic_selected": "apv.NanoLauLectrik 1.0", + "classic_selected": "kawigi.robot.Girl 1.2", "division": "roborumble", - "jar": "apv.NanoLauLectrik_1.0.jar", - "jar_sha256": "4500794fdf2577950dd3981cdb314b4f750e1bfa66133dcdf546fa0203ee868d", - "key": "roborumble/apv.NanoLauLectrik_1.0.jar", + "jar": "kawigi.robot.Girl_1.2.jar", + "jar_sha256": "0a675ce6fec12505efbeb1eb346ed010976d8d6f2543aa944883a764b51949cd", + "key": "roborumble/kawigi.robot.Girl_1.2.jar", "kind": "robot" }, "status": "PASS", "tank_royale": { - "elapsed": 16.0, + "bridge_only_signatures": null, + "elapsed": 22.0, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 4612.0, + "score": 5436.0, "scores": [ - 2974.0, - 1638.0 + 2875.0, + 2561.0 ], "skipped": null } @@ -42112,65 +103754,63 @@ ], "status": "PASS" }, - "roborumble/apv.ScruchiPu_1.0.jar": { + "roborumble/kawigi.sbf.Barracuda_1.0.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "apv.ScruchiPu 1.0", + "classic_selected": "kawigi.sbf.Barracuda 1.0", "division": "roborumble", - "jar": "apv.ScruchiPu_1.0.jar", - "jar_sha256": "dcefa76d1e2eb841349fe2dce3a84218c99c08dba3eb6ecc5a34b933e00096bc", - "key": "roborumble/apv.ScruchiPu_1.0.jar", + "jar": "kawigi.sbf.Barracuda_1.0.jar", + "jar_sha256": "38cd887ca00191079ae946207985fb323aff22452076877e5544da1321fc2032", + "key": "roborumble/kawigi.sbf.Barracuda_1.0.jar", "kind": "robot" }, - "latest_observation": "d749a519d41481d5", + "latest_observation": "d85142bfa8039f0d", "observations": [ { "classic": { - "elapsed": 4.3, + "elapsed": 3.0, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 5327.0, + "score": 5119.0, "scores": [ - 2914.0, - 2413.0 + 2489.0, + 2630.0 ], - "selected": "apv.ScruchiPu 1.0" + "selected": "kawigi.sbf.Barracuda 1.0" }, - "completed_at": "2026-09-08T20:34:32Z", - "delta_pct": -12.5, - "id": "d749a519d41481d5", + "completed_at": "2026-09-12T21:42:41Z", + "confirmation": null, + "delta_pct": 0.3, + "id": "d85142bfa8039f0d", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "1498474deb61276150ff079fe91ab801381a1920", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -42178,24 +103818,26 @@ "width": 800 }, "source_identity": { - "classic_selected": "apv.ScruchiPu 1.0", + "classic_selected": "kawigi.sbf.Barracuda 1.0", "division": "roborumble", - "jar": "apv.ScruchiPu_1.0.jar", - "jar_sha256": "dcefa76d1e2eb841349fe2dce3a84218c99c08dba3eb6ecc5a34b933e00096bc", - "key": "roborumble/apv.ScruchiPu_1.0.jar", + "jar": "kawigi.sbf.Barracuda_1.0.jar", + "jar_sha256": "38cd887ca00191079ae946207985fb323aff22452076877e5544da1321fc2032", + "key": "roborumble/kawigi.sbf.Barracuda_1.0.jar", "kind": "robot" }, "status": "PASS", "tank_royale": { + "bridge_only_signatures": null, "elapsed": 16.0, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 4661.0, + "score": 5136.0, "scores": [ - 2585.0, - 2076.0 + 2932.0, + 2204.0 ], "skipped": null } @@ -42203,65 +103845,63 @@ ], "status": "PASS" }, - "roborumble/apv.TheBrainPi_0.5fix.jar": { + "roborumble/kawigi.sbf.FloodHT_0.9.2.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "apv.TheBrainPi 0.5fix", + "classic_selected": "kawigi.sbf.FloodHT 0.9.2", "division": "roborumble", - "jar": "apv.TheBrainPi_0.5fix.jar", - "jar_sha256": "6414ce843145505046bfdb9c4cba00b486ebdead9767c9d3d1fb3b245746746e", - "key": "roborumble/apv.TheBrainPi_0.5fix.jar", + "jar": "kawigi.sbf.FloodHT_0.9.2.jar", + "jar_sha256": "e9634ff4dccd6c0518bdabf6d7d7147a5e8860a7357a3235a9bb6dee16415ca6", + "key": "roborumble/kawigi.sbf.FloodHT_0.9.2.jar", "kind": "robot" }, - "latest_observation": "0b26bcefd7d92f4f", + "latest_observation": "dadcf7bf4e0ecb8c", "observations": [ { "classic": { - "elapsed": 4.8, + "elapsed": 6.6, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 5321.0, + "score": 4395.0, "scores": [ - 2586.0, - 2735.0 + 2907.0, + 1488.0 ], - "selected": "apv.TheBrainPi 0.5fix" + "selected": "kawigi.sbf.FloodHT 0.9.2" }, - "completed_at": "2026-09-08T20:35:24Z", - "delta_pct": -4.0, - "id": "0b26bcefd7d92f4f", + "completed_at": "2026-09-12T21:43:16Z", + "confirmation": null, + "delta_pct": -6.3, + "id": "dadcf7bf4e0ecb8c", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "1498474deb61276150ff079fe91ab801381a1920", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -42269,24 +103909,26 @@ "width": 800 }, "source_identity": { - "classic_selected": "apv.TheBrainPi 0.5fix", + "classic_selected": "kawigi.sbf.FloodHT 0.9.2", "division": "roborumble", - "jar": "apv.TheBrainPi_0.5fix.jar", - "jar_sha256": "6414ce843145505046bfdb9c4cba00b486ebdead9767c9d3d1fb3b245746746e", - "key": "roborumble/apv.TheBrainPi_0.5fix.jar", + "jar": "kawigi.sbf.FloodHT_0.9.2.jar", + "jar_sha256": "e9634ff4dccd6c0518bdabf6d7d7147a5e8860a7357a3235a9bb6dee16415ca6", + "key": "roborumble/kawigi.sbf.FloodHT_0.9.2.jar", "kind": "robot" }, "status": "PASS", "tank_royale": { - "elapsed": 16.0, + "bridge_only_signatures": null, + "elapsed": 28.0, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 5107.0, + "score": 4117.0, "scores": [ - 2939.0, - 2168.0 + 2639.0, + 1478.0 ], "skipped": null } @@ -42294,65 +103936,63 @@ ], "status": "PASS" }, - "roborumble/apv.test.Virus_0.6.1.jar": { + "roborumble/kawigi.sbf.FloodMicro_1.5.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "apv.test.Virus 0.6.1", + "classic_selected": "kawigi.sbf.FloodMicro 1.5", "division": "roborumble", - "jar": "apv.test.Virus_0.6.1.jar", - "jar_sha256": "d6ce0ae230281fd974d6326c1e80fe53714bdbe20a09511911e81efed040f798", - "key": "roborumble/apv.test.Virus_0.6.1.jar", + "jar": "kawigi.sbf.FloodMicro_1.5.jar", + "jar_sha256": "4f3549b99f11f1899b90e2d74460d245f3a79078444470824ecc03b5565900a8", + "key": "roborumble/kawigi.sbf.FloodMicro_1.5.jar", "kind": "robot" }, - "latest_observation": "fb63ed9dcd64d83b", + "latest_observation": "c9c40370dcf10011", "observations": [ { "classic": { - "elapsed": 6.8, + "elapsed": 3.1, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 4347.0, + "score": 5129.0, "scores": [ - 2153.0, - 2194.0 + 3102.0, + 2027.0 ], - "selected": "apv.test.Virus 0.6.1" + "selected": "kawigi.sbf.FloodMicro 1.5" }, - "completed_at": "2026-09-08T20:35:03Z", - "delta_pct": 3.5, - "id": "fb63ed9dcd64d83b", + "completed_at": "2026-09-12T21:43:39Z", + "confirmation": null, + "delta_pct": -26.6, + "id": "c9c40370dcf10011", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "1498474deb61276150ff079fe91ab801381a1920", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -42360,90 +104000,90 @@ "width": 800 }, "source_identity": { - "classic_selected": "apv.test.Virus 0.6.1", + "classic_selected": "kawigi.sbf.FloodMicro 1.5", "division": "roborumble", - "jar": "apv.test.Virus_0.6.1.jar", - "jar_sha256": "d6ce0ae230281fd974d6326c1e80fe53714bdbe20a09511911e81efed040f798", - "key": "roborumble/apv.test.Virus_0.6.1.jar", + "jar": "kawigi.sbf.FloodMicro_1.5.jar", + "jar_sha256": "4f3549b99f11f1899b90e2d74460d245f3a79078444470824ecc03b5565900a8", + "key": "roborumble/kawigi.sbf.FloodMicro_1.5.jar", "kind": "robot" }, - "status": "PASS", + "status": "DISCREPANCY (score)", "tank_royale": { - "elapsed": 24.0, + "bridge_only_signatures": null, + "elapsed": 20.0, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 4498.0, + "score": 3765.0, "scores": [ - 2685.0, - 1813.0 + 2561.0, + 1204.0 ], "skipped": null } } ], - "status": "PASS" + "status": "score-review" }, - "roborumble/ar.QuantumChromodynamics_1.2.1.jar": { + "roborumble/kawigi.sbf.FloodMini_1.4.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "ar.QuantumChromodynamics 1.2.1", + "classic_selected": "kawigi.sbf.FloodMini 1.4", "division": "roborumble", - "jar": "ar.QuantumChromodynamics_1.2.1.jar", - "jar_sha256": "fe5372baa66f5f4fe5c138baa674c7b38c4548e200b9cc878ae7a78a0d3d95d7", - "key": "roborumble/ar.QuantumChromodynamics_1.2.1.jar", + "jar": "kawigi.sbf.FloodMini_1.4.jar", + "jar_sha256": "20738f02721b92618b22914ecc328252dc219906232b9b3aa67ac77e3e0c61dd", + "key": "roborumble/kawigi.sbf.FloodMini_1.4.jar", "kind": "robot" }, - "latest_observation": "4ac5fb2477202c50", + "latest_observation": "30197c435377ba69", "observations": [ { "classic": { - "elapsed": 2.5, + "elapsed": 2.8, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 5392.0, + "score": 5173.0, "scores": [ - 2523.0, - 2869.0 + 2808.0, + 2365.0 ], - "selected": "ar.QuantumChromodynamics 1.2.1" + "selected": "kawigi.sbf.FloodMini 1.4" }, - "completed_at": "2026-09-08T20:36:18Z", - "delta_pct": -5.3, - "id": "4ac5fb2477202c50", + "completed_at": "2026-09-12T21:44:00Z", + "confirmation": null, + "delta_pct": -1.4, + "id": "30197c435377ba69", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "1498474deb61276150ff079fe91ab801381a1920", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -42451,24 +104091,26 @@ "width": 800 }, "source_identity": { - "classic_selected": "ar.QuantumChromodynamics 1.2.1", + "classic_selected": "kawigi.sbf.FloodMini 1.4", "division": "roborumble", - "jar": "ar.QuantumChromodynamics_1.2.1.jar", - "jar_sha256": "fe5372baa66f5f4fe5c138baa674c7b38c4548e200b9cc878ae7a78a0d3d95d7", - "key": "roborumble/ar.QuantumChromodynamics_1.2.1.jar", + "jar": "kawigi.sbf.FloodMini_1.4.jar", + "jar_sha256": "20738f02721b92618b22914ecc328252dc219906232b9b3aa67ac77e3e0c61dd", + "key": "roborumble/kawigi.sbf.FloodMini_1.4.jar", "kind": "robot" }, "status": "PASS", "tank_royale": { - "elapsed": 14.0, + "bridge_only_signatures": null, + "elapsed": 18.0, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 5106.0, + "score": 5098.0, "scores": [ - 2925.0, - 2181.0 + 2656.0, + 2442.0 ], "skipped": null } @@ -42476,65 +104118,63 @@ ], "status": "PASS" }, - "roborumble/ar.TheoryOfEverything_1.2.1.jar": { + "roborumble/kawigi.sbf.FloodNano_1.2.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "ar.TheoryOfEverything 1.2.1", + "classic_selected": "kawigi.sbf.FloodNano 1.2", "division": "roborumble", - "jar": "ar.TheoryOfEverything_1.2.1.jar", - "jar_sha256": "488629ee6595de0c24c69df967caa534dcc4359ace7708088dc544dfb98293b9", - "key": "roborumble/ar.TheoryOfEverything_1.2.1.jar", + "jar": "kawigi.sbf.FloodNano_1.2.jar", + "jar_sha256": "6472039bac12030822589dd0dc4e0f2a2d657bc8cefdaec85c2b2142e6c638bb", + "key": "roborumble/kawigi.sbf.FloodNano_1.2.jar", "kind": "robot" }, - "latest_observation": "9ace621bf12f4172", + "latest_observation": "117a6d40be35854c", "observations": [ { "classic": { - "elapsed": 2.7, + "elapsed": 2.6, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 5861.0, + "score": 4557.0, "scores": [ - 3122.0, - 2739.0 + 2262.0, + 2295.0 ], - "selected": "ar.TheoryOfEverything 1.2.1" + "selected": "kawigi.sbf.FloodNano 1.2" }, - "completed_at": "2026-09-08T20:36:37Z", - "delta_pct": -6.5, - "id": "9ace621bf12f4172", + "completed_at": "2026-09-12T21:44:15Z", + "confirmation": null, + "delta_pct": -38.2, + "id": "117a6d40be35854c", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "1498474deb61276150ff079fe91ab801381a1920", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -42542,90 +104182,90 @@ "width": 800 }, "source_identity": { - "classic_selected": "ar.TheoryOfEverything 1.2.1", + "classic_selected": "kawigi.sbf.FloodNano 1.2", "division": "roborumble", - "jar": "ar.TheoryOfEverything_1.2.1.jar", - "jar_sha256": "488629ee6595de0c24c69df967caa534dcc4359ace7708088dc544dfb98293b9", - "key": "roborumble/ar.TheoryOfEverything_1.2.1.jar", + "jar": "kawigi.sbf.FloodNano_1.2.jar", + "jar_sha256": "6472039bac12030822589dd0dc4e0f2a2d657bc8cefdaec85c2b2142e6c638bb", + "key": "roborumble/kawigi.sbf.FloodNano_1.2.jar", "kind": "robot" }, - "status": "PASS", + "status": "DISCREPANCY (score)", "tank_royale": { - "elapsed": 16.0, + "bridge_only_signatures": null, + "elapsed": 12.0, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 5482.0, + "score": 2814.0, "scores": [ - 2950.0, - 2532.0 + 1591.0, + 1223.0 ], "skipped": null } } ], - "status": "PASS" + "status": "score-review" }, - "roborumble/ar.horizon.Horizon_1.2.2.jar": { + "roborumble/kawigi.sbf.FloodSonnet_0.9.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "ar.horizon.Horizon 1.2.2", + "classic_selected": "kawigi.sbf.FloodSonnet 0.9", "division": "roborumble", - "jar": "ar.horizon.Horizon_1.2.2.jar", - "jar_sha256": "2d8dee69f687581106100d53b46cea3571ed70c88e9d8601b69c48f850c20a70", - "key": "roborumble/ar.horizon.Horizon_1.2.2.jar", + "jar": "kawigi.sbf.FloodSonnet_0.9.jar", + "jar_sha256": "6a45446282ac369b0710769b5d9bfd5605e171c89e10f483cb9dc36ae6d54f8b", + "key": "roborumble/kawigi.sbf.FloodSonnet_0.9.jar", "kind": "robot" }, - "latest_observation": "97286a0cb62861a8", + "latest_observation": "01421e46ea8b0558", "observations": [ { "classic": { - "elapsed": 12.5, + "elapsed": 2.7, "error_count": 0, + "error_signatures": [], "errors": [], - "has_log": false, - "ok": true, - "score": 4866.0, - "scores": [ - 2623.0, - 2243.0 - ], - "selected": "ar.horizon.Horizon 1.2.2" - }, - "completed_at": "2026-09-08T20:36:01Z", - "delta_pct": -63.3, - "id": "97286a0cb62861a8", - "manifest": { - "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "has_log": false, + "ok": true, + "score": 6150.0, + "scores": [ + 3208.0, + 2942.0 + ], + "selected": "kawigi.sbf.FloodSonnet 0.9" + }, + "completed_at": "2026-09-12T21:44:24Z", + "confirmation": null, + "delta_pct": null, + "id": "01421e46ea8b0558", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "1498474deb61276150ff079fe91ab801381a1920", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -42633,90 +104273,108 @@ "width": 800 }, "source_identity": { - "classic_selected": "ar.horizon.Horizon 1.2.2", + "classic_selected": "kawigi.sbf.FloodSonnet 0.9", "division": "roborumble", - "jar": "ar.horizon.Horizon_1.2.2.jar", - "jar_sha256": "2d8dee69f687581106100d53b46cea3571ed70c88e9d8601b69c48f850c20a70", - "key": "roborumble/ar.horizon.Horizon_1.2.2.jar", + "jar": "kawigi.sbf.FloodSonnet_0.9.jar", + "jar_sha256": "6a45446282ac369b0710769b5d9bfd5605e171c89e10f483cb9dc36ae6d54f8b", + "key": "roborumble/kawigi.sbf.FloodSonnet_0.9.jar", "kind": "robot" }, - "status": "DISCREPANCY (score)", + "status": "DISCREPANCY (outcome)", "tank_royale": { - "elapsed": 24.0, - "error_count": 0, - "errors": [], - "has_log": false, - "ok": true, - "score": 1784.0, - "scores": [ - 1084.0, - 700.0 + "bridge_only_signatures": [ + [ + "java.lang.NullPointerException", + "kawigi.sbf.FloodSonnet.onScannedRobot" + ] + ], + "elapsed": 6.2, + "error_count": 10, + "error_signatures": [ + { + "exception": "java.lang.NullPointerException", + "origin": "kawigi.sbf.FloodSonnet.onScannedRobot" + } + ], + "errors": [ + "HARNESS: worker produced no result (exit code -1)", + "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"kawigi.sbf.FloodSonnet.nextMeleeLocation\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"kawigi.sbf.FloodSonnet.nextMeleeLocation\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"kawigi.sbf.FloodSonnet.nextMeleeLocation\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"kawigi.sbf.FloodSonnet.nextMeleeLocation\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"kawigi.sbf.FloodSonnet.nextMeleeLocation\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"kawigi.sbf.FloodSonnet.nextMeleeLocation\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"kawigi.sbf.FloodSonnet.nextMeleeLocation\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"kawigi.sbf.FloodSonnet.nextMeleeLocation\" is null", + "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"kawigi.sbf.FloodSonnet.nextMeleeLocation\" is null" ], + "has_log": true, + "ok": false, + "score": null, + "scores": [], "skipped": null } } ], - "status": "score-review" + "status": "DISCREPANCY (outcome)" }, - "roborumble/ara.Shera_0.88.jar": { + "roborumble/kawigi.sbf.Teancum_1.3.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "ara.Shera 0.88", + "classic_selected": "kawigi.sbf.Teancum 1.3", "division": "roborumble", - "jar": "ara.Shera_0.88.jar", - "jar_sha256": "9474b68598ae5e71010b835259467b6dc35427e2826ace23e484a6a11160a040", - "key": "roborumble/ara.Shera_0.88.jar", + "jar": "kawigi.sbf.Teancum_1.3.jar", + "jar_sha256": "d658099bb3f4e5c8afe3694a01d61b1a221ccfff3ad934307b659664833fa239", + "key": "roborumble/kawigi.sbf.Teancum_1.3.jar", "kind": "robot" }, - "latest_observation": "b32a6997ff56c9af", + "latest_observation": "48f06e2fa8400492", "observations": [ { "classic": { - "elapsed": 3.1, + "elapsed": 3.8, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 4900.0, + "score": 5771.0, "scores": [ - 2860.0, - 2040.0 + 2080.0, + 3691.0 ], - "selected": "ara.Shera 0.88" + "selected": "kawigi.sbf.Teancum 1.3" }, - "completed_at": "2026-09-08T20:37:14Z", - "delta_pct": 13.7, - "id": "b32a6997ff56c9af", + "completed_at": "2026-09-12T21:44:49Z", + "confirmation": null, + "delta_pct": -12.4, + "id": "48f06e2fa8400492", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "1498474deb61276150ff079fe91ab801381a1920", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -42724,24 +104382,26 @@ "width": 800 }, "source_identity": { - "classic_selected": "ara.Shera 0.88", + "classic_selected": "kawigi.sbf.Teancum 1.3", "division": "roborumble", - "jar": "ara.Shera_0.88.jar", - "jar_sha256": "9474b68598ae5e71010b835259467b6dc35427e2826ace23e484a6a11160a040", - "key": "roborumble/ara.Shera_0.88.jar", + "jar": "kawigi.sbf.Teancum_1.3.jar", + "jar_sha256": "d658099bb3f4e5c8afe3694a01d61b1a221ccfff3ad934307b659664833fa239", + "key": "roborumble/kawigi.sbf.Teancum_1.3.jar", "kind": "robot" }, "status": "PASS", "tank_royale": { - "elapsed": 34.0, + "bridge_only_signatures": null, + "elapsed": 20.0, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 5570.0, + "score": 5057.0, "scores": [ - 2985.0, - 2585.0 + 2913.0, + 2144.0 ], "skipped": null } @@ -42749,65 +104409,63 @@ ], "status": "PASS" }, - "roborumble/areb.Union_1.06.jar": { + "roborumble/kawigi.spare.SpareParts_0.7.6nosnd.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "areb.Union 1.06", + "classic_selected": "kawigi.spare.SpareParts 0.7.6nosnd", "division": "roborumble", - "jar": "areb.Union_1.06.jar", - "jar_sha256": "98ee4d7e04fbf9b6ae81c712f6e1b3090d76f1ba36ef84b80d16c82ddf830f1d", - "key": "roborumble/areb.Union_1.06.jar", + "jar": "kawigi.spare.SpareParts_0.7.6nosnd.jar", + "jar_sha256": "a89ca8c56833db8e3bb9ac2ee209f27fb0d8b0d14f9cf22cfbe4886b92b7a904", + "key": "roborumble/kawigi.spare.SpareParts_0.7.6nosnd.jar", "kind": "robot" }, - "latest_observation": "e533066dda10e17a", + "latest_observation": "e6f5801c8dbb526a", "observations": [ { "classic": { - "elapsed": 4.2, + "elapsed": 3.8, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 5803.0, + "score": 6700.0, "scores": [ - 3072.0, - 2731.0 + 4172.0, + 2528.0 ], - "selected": "areb.Union 1.06" + "selected": "kawigi.spare.SpareParts 0.7.6nosnd" }, - "completed_at": "2026-09-08T20:38:24Z", - "delta_pct": -16.2, - "id": "e533066dda10e17a", + "completed_at": "2026-09-12T21:45:42Z", + "confirmation": null, + "delta_pct": -17.9, + "id": "e6f5801c8dbb526a", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "aafcebc48b5e283eae36becdfb120e2b66a9a6d5", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -42815,24 +104473,26 @@ "width": 800 }, "source_identity": { - "classic_selected": "areb.Union 1.06", + "classic_selected": "kawigi.spare.SpareParts 0.7.6nosnd", "division": "roborumble", - "jar": "areb.Union_1.06.jar", - "jar_sha256": "98ee4d7e04fbf9b6ae81c712f6e1b3090d76f1ba36ef84b80d16c82ddf830f1d", - "key": "roborumble/areb.Union_1.06.jar", + "jar": "kawigi.spare.SpareParts_0.7.6nosnd.jar", + "jar_sha256": "a89ca8c56833db8e3bb9ac2ee209f27fb0d8b0d14f9cf22cfbe4886b92b7a904", + "key": "roborumble/kawigi.spare.SpareParts_0.7.6nosnd.jar", "kind": "robot" }, "status": "PASS", "tank_royale": { - "elapsed": 32.0, + "bridge_only_signatures": null, + "elapsed": 16.1, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 4862.0, + "score": 5504.0, "scores": [ - 2516.0, - 2346.0 + 4434.0, + 1070.0 ], "skipped": null } @@ -42840,65 +104500,63 @@ ], "status": "PASS" }, - "roborumble/arthord.KostyaTszyu_Beta2.jar": { + "roborumble/kc.mega.BeepBoop_1.21.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "arthord.KostyaTszyu Beta2", + "classic_selected": "kc.mega.BeepBoop 1.21", "division": "roborumble", - "jar": "arthord.KostyaTszyu_Beta2.jar", - "jar_sha256": "c4aff289b00bc68748dde4f18aff699b9ef22eceeb1e529ea086be5a61cccc4d", - "key": "roborumble/arthord.KostyaTszyu_Beta2.jar", + "jar": "kc.mega.BeepBoop_1.21.jar", + "jar_sha256": "34b6ebc0085bfaea4fe0ed11d63630ae562a6cc05f6c056c09476c9287bb4bb0", + "key": "roborumble/kc.mega.BeepBoop_1.21.jar", "kind": "robot" }, - "latest_observation": "36f054afe6dfd556", + "latest_observation": "17cd4cf14dcc2da7", "observations": [ { "classic": { - "elapsed": 2.6, + "elapsed": 118.9, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 4899.0, + "score": 3970.0, "scores": [ - 2615.0, - 2284.0 + 1909.0, + 2061.0 ], - "selected": "arthord.KostyaTszyu Beta2" + "selected": "kc.mega.BeepBoop 1.21" }, - "completed_at": "2026-09-08T20:38:45Z", - "delta_pct": -33.0, - "id": "36f054afe6dfd556", + "completed_at": "2026-09-12T21:47:46Z", + "confirmation": null, + "delta_pct": null, + "id": "17cd4cf14dcc2da7", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "aafcebc48b5e283eae36becdfb120e2b66a9a6d5", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -42906,90 +104564,103 @@ "width": 800 }, "source_identity": { - "classic_selected": "arthord.KostyaTszyu Beta2", + "classic_selected": "kc.mega.BeepBoop 1.21", "division": "roborumble", - "jar": "arthord.KostyaTszyu_Beta2.jar", - "jar_sha256": "c4aff289b00bc68748dde4f18aff699b9ef22eceeb1e529ea086be5a61cccc4d", - "key": "roborumble/arthord.KostyaTszyu_Beta2.jar", + "jar": "kc.mega.BeepBoop_1.21.jar", + "jar_sha256": "34b6ebc0085bfaea4fe0ed11d63630ae562a6cc05f6c056c09476c9287bb4bb0", + "key": "roborumble/kc.mega.BeepBoop_1.21.jar", "kind": "robot" }, - "status": "DISCREPANCY (score)", + "status": "DISCREPANCY (outcome)", "tank_royale": { - "elapsed": 18.0, - "error_count": 0, - "errors": [], - "has_log": false, - "ok": true, - "score": 3282.0, - "scores": [ - 2664.0, - 618.0 + "bridge_only_signatures": [ + [ + "java.lang.NullPointerException", + "kc.mega.game.GameState.update" + ] + ], + "elapsed": 4.2, + "error_count": 5, + "error_signatures": [ + { + "exception": "java.lang.NullPointerException", + "origin": "kc.mega.game.GameState.update" + } + ], + "errors": [ + "HARNESS: worker produced no result (exit code -1)", + "java.lang.NullPointerException: Cannot invoke \"robocode.ScannedRobotEvent.getName()\" because \"e\" is null", + "java.lang.NullPointerException: Cannot invoke \"robocode.ScannedRobotEvent.getName()\" because \"e\" is null", + "java.lang.NullPointerException: Cannot invoke \"robocode.ScannedRobotEvent.getName()\" because \"e\" is null", + "java.lang.NullPointerException: Cannot invoke \"robocode.ScannedRobotEvent.getName()\" because \"e\" is null" ], + "has_log": true, + "ok": false, + "score": null, + "scores": [], "skipped": null } } ], - "status": "score-review" + "status": "DISCREPANCY (outcome)" }, - "roborumble/arthord.NanoSatanMelee_Beta.jar": { + "roborumble/kc.micro.Needle_0.101.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "arthord.NanoSatanMelee Beta", + "classic_selected": "kc.micro.Needle 0.101", "division": "roborumble", - "jar": "arthord.NanoSatanMelee_Beta.jar", - "jar_sha256": "a0737bc6d25f6b89618c119a6df62ae89a44d9a2a7d662056dddefdde04f37fe", - "key": "roborumble/arthord.NanoSatanMelee_Beta.jar", + "jar": "kc.micro.Needle_0.101.jar", + "jar_sha256": "790c7d3e2f93d8e37d9de7c7c6bf6bba8b270c681ebdbfb4553431fac351cf29", + "key": "roborumble/kc.micro.Needle_0.101.jar", "kind": "robot" }, - "latest_observation": "aee831eb589eb863", + "latest_observation": "08a9125a7c4f78c8", "observations": [ { "classic": { - "elapsed": 2.5, + "elapsed": 13.4, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 6700.0, + "score": 5595.0, "scores": [ - 3438.0, - 3262.0 + 2704.0, + 2891.0 ], - "selected": "arthord.NanoSatanMelee Beta" + "selected": "kc.micro.Needle 0.101" }, - "completed_at": "2026-09-08T20:39:55Z", - "delta_pct": 5.6, - "id": "aee831eb589eb863", + "completed_at": "2026-09-12T21:48:43Z", + "confirmation": null, + "delta_pct": -7.0, + "id": "08a9125a7c4f78c8", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "aafcebc48b5e283eae36becdfb120e2b66a9a6d5", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -42997,24 +104668,26 @@ "width": 800 }, "source_identity": { - "classic_selected": "arthord.NanoSatanMelee Beta", + "classic_selected": "kc.micro.Needle 0.101", "division": "roborumble", - "jar": "arthord.NanoSatanMelee_Beta.jar", - "jar_sha256": "a0737bc6d25f6b89618c119a6df62ae89a44d9a2a7d662056dddefdde04f37fe", - "key": "roborumble/arthord.NanoSatanMelee_Beta.jar", + "jar": "kc.micro.Needle_0.101.jar", + "jar_sha256": "790c7d3e2f93d8e37d9de7c7c6bf6bba8b270c681ebdbfb4553431fac351cf29", + "key": "roborumble/kc.micro.Needle_0.101.jar", "kind": "robot" }, "status": "PASS", "tank_royale": { - "elapsed": 14.0, + "bridge_only_signatures": null, + "elapsed": 44.0, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 7076.0, + "score": 5202.0, "scores": [ - 3811.0, - 3265.0 + 2841.0, + 2361.0 ], "skipped": null } @@ -43022,65 +104695,63 @@ ], "status": "PASS" }, - "roborumble/arthord.NanoSatan_Mu.jar": { + "roborumble/kc.micro.Thorn_1.252.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "arthord.NanoSatan Mu", + "classic_selected": "kc.micro.Thorn 1.252", "division": "roborumble", - "jar": "arthord.NanoSatan_Mu.jar", - "jar_sha256": "a4796a1447ea7a3d8268dff283375e5188089afb88d66a62e14de9346a32e5fb", - "key": "roborumble/arthord.NanoSatan_Mu.jar", + "jar": "kc.micro.Thorn_1.252.jar", + "jar_sha256": "8d20e671cf15b32e27d1ea3435ba92a4bc38adc0bad03ce817656f031e4ce68a", + "key": "roborumble/kc.micro.Thorn_1.252.jar", "kind": "robot" }, - "latest_observation": "cb4397fbdd3591a9", + "latest_observation": "0c021dbb724f9eae", "observations": [ { "classic": { - "elapsed": 3.4, + "elapsed": 2.8, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 4802.0, + "score": 4835.0, "scores": [ - 2054.0, - 2748.0 + 1810.0, + 3025.0 ], - "selected": "arthord.NanoSatan Mu" + "selected": "kc.micro.Thorn 1.252" }, - "completed_at": "2026-09-08T20:39:38Z", - "delta_pct": -10.2, - "id": "cb4397fbdd3591a9", + "completed_at": "2026-09-12T21:49:17Z", + "confirmation": null, + "delta_pct": -5.0, + "id": "0c021dbb724f9eae", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "aafcebc48b5e283eae36becdfb120e2b66a9a6d5", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -43088,24 +104759,26 @@ "width": 800 }, "source_identity": { - "classic_selected": "arthord.NanoSatan Mu", + "classic_selected": "kc.micro.Thorn 1.252", "division": "roborumble", - "jar": "arthord.NanoSatan_Mu.jar", - "jar_sha256": "a4796a1447ea7a3d8268dff283375e5188089afb88d66a62e14de9346a32e5fb", - "key": "roborumble/arthord.NanoSatan_Mu.jar", + "jar": "kc.micro.Thorn_1.252.jar", + "jar_sha256": "8d20e671cf15b32e27d1ea3435ba92a4bc38adc0bad03ce817656f031e4ce68a", + "key": "roborumble/kc.micro.Thorn_1.252.jar", "kind": "robot" }, "status": "PASS", "tank_royale": { - "elapsed": 16.0, + "bridge_only_signatures": null, + "elapsed": 18.0, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 4310.0, + "score": 4594.0, "scores": [ - 2214.0, - 2096.0 + 2378.0, + 2216.0 ], "skipped": null } @@ -43113,65 +104786,63 @@ ], "status": "PASS" }, - "roborumble/arthord.micro.Apoptygma_0.4.jar": { + "roborumble/kc.micro.WaveShark_0.4.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "arthord.micro.Apoptygma 0.4", + "classic_selected": "kc.micro.WaveShark 0.4", "division": "roborumble", - "jar": "arthord.micro.Apoptygma_0.4.jar", - "jar_sha256": "d07f93659bb20a2980e452dad383dbe0e1333144918cabf313423bc19dba8509", - "key": "roborumble/arthord.micro.Apoptygma_0.4.jar", + "jar": "kc.micro.WaveShark_0.4.jar", + "jar_sha256": "f7093d8506004e69ca13dd62d988f8bacaa613688c484fae85d7d532ecf94c13", + "key": "roborumble/kc.micro.WaveShark_0.4.jar", "kind": "robot" }, - "latest_observation": "3c369261b2915cd0", + "latest_observation": "57dd1774fc8cbf22", "observations": [ { "classic": { - "elapsed": 3.1, + "elapsed": 4.0, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 5399.0, + "score": 5328.0, "scores": [ - 2673.0, - 2726.0 + 2309.0, + 3019.0 ], - "selected": "arthord.micro.Apoptygma 0.4" + "selected": "kc.micro.WaveShark 0.4" }, - "completed_at": "2026-09-08T20:39:02Z", - "delta_pct": -24.5, - "id": "3c369261b2915cd0", + "completed_at": "2026-09-12T21:49:55Z", + "confirmation": null, + "delta_pct": null, + "id": "57dd1774fc8cbf22", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "aafcebc48b5e283eae36becdfb120e2b66a9a6d5", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -43179,90 +104850,94 @@ "width": 800 }, "source_identity": { - "classic_selected": "arthord.micro.Apoptygma 0.4", + "classic_selected": "kc.micro.WaveShark 0.4", "division": "roborumble", - "jar": "arthord.micro.Apoptygma_0.4.jar", - "jar_sha256": "d07f93659bb20a2980e452dad383dbe0e1333144918cabf313423bc19dba8509", - "key": "roborumble/arthord.micro.Apoptygma_0.4.jar", + "jar": "kc.micro.WaveShark_0.4.jar", + "jar_sha256": "f7093d8506004e69ca13dd62d988f8bacaa613688c484fae85d7d532ecf94c13", + "key": "roborumble/kc.micro.WaveShark_0.4.jar", "kind": "robot" }, - "status": "PASS", + "status": "DISCREPANCY (outcome)", "tank_royale": { - "elapsed": 14.0, - "error_count": 0, - "errors": [], - "has_log": false, - "ok": true, - "score": 4076.0, - "scores": [ - 2054.0, - 2022.0 + "bridge_only_signatures": null, + "elapsed": 34.0, + "error_count": 1, + "error_signatures": [ + { + "exception": "dev.robocode.tankroyale.runner.BattleException", + "origin": "TrBattleWorker.runBattle" + } + ], + "errors": [ + "FATAL: dev.robocode.tankroyale.runner.BattleException: Bot connect timeout (30000ms): connected 0 of 2. Pending: [WaveShark 0.4 (Kev ) (\u00d72)]" ], + "has_log": true, + "ok": false, + "score": null, + "scores": [], "skipped": null } } ], - "status": "PASS" + "status": "DISCREPANCY (outcome)" }, - "roborumble/arthord.micro.Muffin_0.6.1.jar": { + "roborumble/kc.micro.rammer.MaxRisk_0.6.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "arthord.micro.Muffin 0.6.1", + "classic_selected": "kc.micro.rammer.MaxRisk 0.6", "division": "roborumble", - "jar": "arthord.micro.Muffin_0.6.1.jar", - "jar_sha256": "a5b7c2fe230839a0452e06b8036ef3ed5ebbe771c75a67a00e6d9f6ffe547c6c", - "key": "roborumble/arthord.micro.Muffin_0.6.1.jar", + "jar": "kc.micro.rammer.MaxRisk_0.6.jar", + "jar_sha256": "5e3f9d6a66e4741fea1c0c26ee14e1bd7aa99bacc7bcb2a73a9b10d41df384fa", + "key": "roborumble/kc.micro.rammer.MaxRisk_0.6.jar", "kind": "robot" }, - "latest_observation": "a7b360b5da35fac2", + "latest_observation": "1d7f127258dd610c", "observations": [ { "classic": { - "elapsed": 3.8, + "elapsed": 2.1, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 5820.0, + "score": 10431.0, "scores": [ - 2568.0, - 3252.0 + 5215.0, + 5216.0 ], - "selected": "arthord.micro.Muffin 0.6.1" + "selected": "kc.micro.rammer.MaxRisk 0.6" }, - "completed_at": "2026-09-08T20:39:19Z", - "delta_pct": -63.2, - "id": "a7b360b5da35fac2", + "completed_at": "2026-09-12T21:48:56Z", + "confirmation": null, + "delta_pct": 63.1, + "id": "1d7f127258dd610c", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "aafcebc48b5e283eae36becdfb120e2b66a9a6d5", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -43270,24 +104945,26 @@ "width": 800 }, "source_identity": { - "classic_selected": "arthord.micro.Muffin 0.6.1", + "classic_selected": "kc.micro.rammer.MaxRisk 0.6", "division": "roborumble", - "jar": "arthord.micro.Muffin_0.6.1.jar", - "jar_sha256": "a5b7c2fe230839a0452e06b8036ef3ed5ebbe771c75a67a00e6d9f6ffe547c6c", - "key": "roborumble/arthord.micro.Muffin_0.6.1.jar", + "jar": "kc.micro.rammer.MaxRisk_0.6.jar", + "jar_sha256": "5e3f9d6a66e4741fea1c0c26ee14e1bd7aa99bacc7bcb2a73a9b10d41df384fa", + "key": "roborumble/kc.micro.rammer.MaxRisk_0.6.jar", "kind": "robot" }, "status": "DISCREPANCY (score)", "tank_royale": { - "elapsed": 12.0, + "bridge_only_signatures": null, + "elapsed": 10.0, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 2140.0, + "score": 17011.0, "scores": [ - 1415.0, - 725.0 + 8666.0, + 8345.0 ], "skipped": null } @@ -43295,65 +104972,63 @@ ], "status": "score-review" }, - "roborumble/ary.Crisis_1.0.jar": { + "roborumble/kc.mini.Vyper_0.311.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "ary.Crisis 1.0", + "classic_selected": "kc.mini.Vyper 0.311", "division": "roborumble", - "jar": "ary.Crisis_1.0.jar", - "jar_sha256": "ff0f375c270611bb30a788d6ea8d53c4237f0aef7e59138bdce5da97749b160e", - "key": "roborumble/ary.Crisis_1.0.jar", + "jar": "kc.mini.Vyper_0.311.jar", + "jar_sha256": "5321c17fb423358e718b61c3a035d5690dcc5fb1afed8a1930765455fd72e229", + "key": "roborumble/kc.mini.Vyper_0.311.jar", "kind": "robot" }, - "latest_observation": "2728b67184ef42c0", + "latest_observation": "2a4e8fb340184b39", "observations": [ { "classic": { "elapsed": 3.0, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 5380.0, + "score": 5763.0, "scores": [ - 2640.0, - 2740.0 + 2478.0, + 3285.0 ], - "selected": "ary.Crisis 1.0" + "selected": "kc.mini.Vyper 0.311" }, - "completed_at": "2026-09-08T20:40:18Z", - "delta_pct": 0.7, - "id": "2728b67184ef42c0", + "completed_at": "2026-09-12T21:50:23Z", + "confirmation": null, + "delta_pct": -21.6, + "id": "2a4e8fb340184b39", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "aafcebc48b5e283eae36becdfb120e2b66a9a6d5", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -43361,24 +105036,26 @@ "width": 800 }, "source_identity": { - "classic_selected": "ary.Crisis 1.0", + "classic_selected": "kc.mini.Vyper 0.311", "division": "roborumble", - "jar": "ary.Crisis_1.0.jar", - "jar_sha256": "ff0f375c270611bb30a788d6ea8d53c4237f0aef7e59138bdce5da97749b160e", - "key": "roborumble/ary.Crisis_1.0.jar", + "jar": "kc.mini.Vyper_0.311.jar", + "jar_sha256": "5321c17fb423358e718b61c3a035d5690dcc5fb1afed8a1930765455fd72e229", + "key": "roborumble/kc.mini.Vyper_0.311.jar", "kind": "robot" }, "status": "PASS", "tank_royale": { - "elapsed": 20.0, + "bridge_only_signatures": null, + "elapsed": 24.0, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 5417.0, + "score": 4518.0, "scores": [ - 3008.0, - 2409.0 + 2749.0, + 1769.0 ], "skipped": null } @@ -43386,133 +105063,63 @@ ], "status": "PASS" }, - "roborumble/ary.FourWD_1.3d.jar": { + "roborumble/kc.nano.Splinter_1.2.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "ary.FourWD 1.3d", + "classic_selected": "kc.nano.Splinter 1.2", "division": "roborumble", - "jar": "ary.FourWD_1.3d.jar", - "jar_sha256": "bfe8768af3401df35cf4d4ec8e3e1d47d779cc5dfc284b212fda3153dbd21537", - "key": "roborumble/ary.FourWD_1.3d.jar", + "jar": "kc.nano.Splinter_1.2.jar", + "jar_sha256": "5633e36fe38b61a06d4c656ab919e9d00ba60881dcb978cd13a4f6d6b67054e9", + "key": "roborumble/kc.nano.Splinter_1.2.jar", "kind": "robot" }, - "latest_observation": "10b51506f52cd1be", + "latest_observation": "b397c0bf2d8d3823", "observations": [ { "classic": { - "elapsed": 2.9, - "error_count": 67, - "errors": [ - "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"pt\" is null", - "java.lang.NullPointerException", - "java.lang.NullPointerException", - "java.lang.NullPointerException", - "java.lang.NullPointerException", - "java.lang.NullPointerException", - "java.lang.NullPointerException", - "java.lang.NullPointerException", - "java.lang.NullPointerException", - "java.lang.NullPointerException", - "java.lang.NullPointerException", - "java.lang.NullPointerException", - "java.lang.NullPointerException", - "java.lang.NullPointerException", - "java.lang.NullPointerException", - "java.lang.NullPointerException", - "java.lang.NullPointerException", - "java.lang.NullPointerException", - "java.lang.NullPointerException", - "java.lang.NullPointerException", - "java.lang.NullPointerException", - "java.lang.NullPointerException", - "java.lang.NullPointerException", - "java.lang.NullPointerException", - "java.lang.NullPointerException", - "java.lang.NullPointerException", - "java.lang.NullPointerException", - "java.lang.NullPointerException", - "java.lang.NullPointerException", - "java.lang.NullPointerException", - "java.lang.NullPointerException", - "java.lang.NullPointerException", - "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"pt\" is null", - "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"pt\" is null", - "java.lang.NullPointerException", - "java.lang.NullPointerException", - "java.lang.NullPointerException", - "java.lang.NullPointerException", - "java.lang.NullPointerException", - "java.lang.NullPointerException", - "java.lang.NullPointerException", - "java.lang.NullPointerException", - "java.lang.NullPointerException", - "java.lang.NullPointerException", - "java.lang.NullPointerException", - "java.lang.NullPointerException", - "java.lang.NullPointerException", - "java.lang.NullPointerException", - "java.lang.NullPointerException", - "java.lang.NullPointerException", - "java.lang.NullPointerException", - "java.lang.NullPointerException", - "java.lang.NullPointerException", - "java.lang.NullPointerException", - "java.lang.NullPointerException", - "java.lang.NullPointerException", - "java.lang.NullPointerException", - "java.lang.NullPointerException", - "java.lang.NullPointerException", - "java.lang.NullPointerException", - "java.lang.NullPointerException", - "java.lang.NullPointerException", - "java.lang.NullPointerException", - "java.lang.NullPointerException", - "java.lang.NullPointerException", - "java.lang.NullPointerException", - "java.lang.NullPointerException" - ], - "has_log": true, + "elapsed": 2.5, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, "ok": true, - "score": 5331.0, + "score": 5139.0, "scores": [ - 2389.0, - 2942.0 + 1577.0, + 3562.0 ], - "selected": "ary.FourWD 1.3d" + "selected": "kc.nano.Splinter 1.2" }, - "completed_at": "2026-09-08T20:40:43Z", - "delta_pct": -40.4, - "id": "10b51506f52cd1be", + "completed_at": "2026-09-12T21:50:44Z", + "confirmation": null, + "delta_pct": -20.7, + "id": "b397c0bf2d8d3823", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "aafcebc48b5e283eae36becdfb120e2b66a9a6d5", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -43520,90 +105127,90 @@ "width": 800 }, "source_identity": { - "classic_selected": "ary.FourWD 1.3d", + "classic_selected": "kc.nano.Splinter 1.2", "division": "roborumble", - "jar": "ary.FourWD_1.3d.jar", - "jar_sha256": "bfe8768af3401df35cf4d4ec8e3e1d47d779cc5dfc284b212fda3153dbd21537", - "key": "roborumble/ary.FourWD_1.3d.jar", + "jar": "kc.nano.Splinter_1.2.jar", + "jar_sha256": "5633e36fe38b61a06d4c656ab919e9d00ba60881dcb978cd13a4f6d6b67054e9", + "key": "roborumble/kc.nano.Splinter_1.2.jar", "kind": "robot" }, - "status": "DISCREPANCY (score)", + "status": "PASS", "tank_royale": { - "elapsed": 22.0, + "bridge_only_signatures": null, + "elapsed": 18.0, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 3178.0, + "score": 4073.0, "scores": [ - 1891.0, - 1287.0 + 2422.0, + 1651.0 ], "skipped": null } } ], - "status": "score-review" + "status": "PASS" }, - "roborumble/ary.Help_1.0.jar": { + "roborumble/kc.serpent.Hydra_0.21.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "ary.Help 1.0", + "classic_selected": "kc.serpent.Hydra 0.21", "division": "roborumble", - "jar": "ary.Help_1.0.jar", - "jar_sha256": "53b6ea8218bd5d68255505bee581a741a88511e58840a395b855ec8f69c2355d", - "key": "roborumble/ary.Help_1.0.jar", + "jar": "kc.serpent.Hydra_0.21.jar", + "jar_sha256": "860487f1dda5a80dffa752216cff3214c88f43e78322421a9e3f2c1c5ec4734d", + "key": "roborumble/kc.serpent.Hydra_0.21.jar", "kind": "robot" }, - "latest_observation": "a5fc6afd26a475b9", + "latest_observation": "040ddc882beec0c8", "observations": [ { "classic": { - "elapsed": 3.4, + "elapsed": 6.3, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 4834.0, + "score": 4859.0, "scores": [ - 2430.0, - 2404.0 + 2213.0, + 2646.0 ], - "selected": "ary.Help 1.0" + "selected": "kc.serpent.Hydra 0.21" }, - "completed_at": "2026-09-08T20:41:13Z", - "delta_pct": -38.8, - "id": "a5fc6afd26a475b9", + "completed_at": "2026-09-12T21:51:16Z", + "confirmation": null, + "delta_pct": 3.0, + "id": "040ddc882beec0c8", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "aafcebc48b5e283eae36becdfb120e2b66a9a6d5", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -43611,90 +105218,90 @@ "width": 800 }, "source_identity": { - "classic_selected": "ary.Help 1.0", + "classic_selected": "kc.serpent.Hydra 0.21", "division": "roborumble", - "jar": "ary.Help_1.0.jar", - "jar_sha256": "53b6ea8218bd5d68255505bee581a741a88511e58840a395b855ec8f69c2355d", - "key": "roborumble/ary.Help_1.0.jar", + "jar": "kc.serpent.Hydra_0.21.jar", + "jar_sha256": "860487f1dda5a80dffa752216cff3214c88f43e78322421a9e3f2c1c5ec4734d", + "key": "roborumble/kc.serpent.Hydra_0.21.jar", "kind": "robot" }, - "status": "DISCREPANCY (score)", + "status": "PASS", "tank_royale": { + "bridge_only_signatures": null, "elapsed": 26.0, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 2960.0, + "score": 5003.0, "scores": [ - 1618.0, - 1342.0 + 2518.0, + 2485.0 ], "skipped": null } } ], - "status": "score-review" + "status": "PASS" }, - "roborumble/ary.SMG_1.01.jar": { + "roborumble/kc.serpent.WaveSerpent_2.11.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "ary.SMG 1.01", + "classic_selected": "kc.serpent.WaveSerpent 2.11", "division": "roborumble", - "jar": "ary.SMG_1.01.jar", - "jar_sha256": "036caac2e9d5aefaec139d97b677ac1ffc9e41af7f0f19c09431a781d3bd00f7", - "key": "roborumble/ary.SMG_1.01.jar", + "jar": "kc.serpent.WaveSerpent_2.11.jar", + "jar_sha256": "7ee88a4b0c65dc6eedb45541cac1acfed0cfa6f358c1f2ac2d7b42e6f9760fa5", + "key": "roborumble/kc.serpent.WaveSerpent_2.11.jar", "kind": "robot" }, - "latest_observation": "5df472261fca6166", + "latest_observation": "6aa4e89482f2aa31", "observations": [ { "classic": { - "elapsed": 5.1, + "elapsed": 11.1, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 5205.0, + "score": 5071.0, "scores": [ - 2298.0, - 2907.0 + 2410.0, + 2661.0 ], - "selected": "ary.SMG 1.01" + "selected": "kc.serpent.WaveSerpent 2.11" }, - "completed_at": "2026-09-08T20:43:38Z", - "delta_pct": -63.2, - "id": "5df472261fca6166", + "completed_at": "2026-09-12T21:52:02Z", + "confirmation": null, + "delta_pct": -6.9, + "id": "6aa4e89482f2aa31", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "aafcebc48b5e283eae36becdfb120e2b66a9a6d5", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -43702,90 +105309,90 @@ "width": 800 }, "source_identity": { - "classic_selected": "ary.SMG 1.01", + "classic_selected": "kc.serpent.WaveSerpent 2.11", "division": "roborumble", - "jar": "ary.SMG_1.01.jar", - "jar_sha256": "036caac2e9d5aefaec139d97b677ac1ffc9e41af7f0f19c09431a781d3bd00f7", - "key": "roborumble/ary.SMG_1.01.jar", + "jar": "kc.serpent.WaveSerpent_2.11.jar", + "jar_sha256": "7ee88a4b0c65dc6eedb45541cac1acfed0cfa6f358c1f2ac2d7b42e6f9760fa5", + "key": "roborumble/kc.serpent.WaveSerpent_2.11.jar", "kind": "robot" }, - "status": "DISCREPANCY (score)", + "status": "PASS", "tank_royale": { - "elapsed": 22.0, + "bridge_only_signatures": null, + "elapsed": 34.0, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 1918.0, + "score": 4721.0, "scores": [ - 1058.0, - 860.0 + 2424.0, + 2297.0 ], "skipped": null } } ], - "status": "score-review" + "status": "PASS" }, - "roborumble/ary.micro.Weak_1.2.jar": { + "roborumble/kcn.percept.PerceptBot_2.3.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "ary.micro.Weak 1.2", + "classic_selected": "kcn.percept.PerceptBot 2.3", "division": "roborumble", - "jar": "ary.micro.Weak_1.2.jar", - "jar_sha256": "0544bc89b923a2ff7c63dc5781c07703dc8c0053a78d5f4a058d3c49e0a03f33", - "key": "roborumble/ary.micro.Weak_1.2.jar", + "jar": "kcn.percept.PerceptBot_2.3.jar", + "jar_sha256": "c88779caade8e44304bf2f277d7d0dd0a9f1cb99570d12481a3131878f84a438", + "key": "roborumble/kcn.percept.PerceptBot_2.3.jar", "kind": "robot" }, - "latest_observation": "371017386f1da182", + "latest_observation": "02d2572f64e2a5b4", "observations": [ { "classic": { - "elapsed": 13.8, + "elapsed": 3.4, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 5205.0, + "score": 5103.0, "scores": [ - 2473.0, - 2732.0 + 2211.0, + 2892.0 ], - "selected": "ary.micro.Weak 1.2" + "selected": "kcn.percept.PerceptBot 2.3" }, - "completed_at": "2026-09-08T20:42:01Z", - "delta_pct": -4.6, - "id": "371017386f1da182", + "completed_at": "2026-09-12T21:52:36Z", + "confirmation": null, + "delta_pct": -11.3, + "id": "02d2572f64e2a5b4", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "aafcebc48b5e283eae36becdfb120e2b66a9a6d5", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -43793,24 +105400,26 @@ "width": 800 }, "source_identity": { - "classic_selected": "ary.micro.Weak 1.2", + "classic_selected": "kcn.percept.PerceptBot 2.3", "division": "roborumble", - "jar": "ary.micro.Weak_1.2.jar", - "jar_sha256": "0544bc89b923a2ff7c63dc5781c07703dc8c0053a78d5f4a058d3c49e0a03f33", - "key": "roborumble/ary.micro.Weak_1.2.jar", + "jar": "kcn.percept.PerceptBot_2.3.jar", + "jar_sha256": "c88779caade8e44304bf2f277d7d0dd0a9f1cb99570d12481a3131878f84a438", + "key": "roborumble/kcn.percept.PerceptBot_2.3.jar", "kind": "robot" }, "status": "PASS", "tank_royale": { - "elapsed": 34.0, + "bridge_only_signatures": null, + "elapsed": 30.0, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 4965.0, + "score": 4527.0, "scores": [ - 2509.0, - 2456.0 + 2372.0, + 2155.0 ], "skipped": null } @@ -43818,65 +105427,63 @@ ], "status": "PASS" }, - "roborumble/ary.mini.Nimi_1.0.jar": { + "roborumble/kcn.unnamed.Unnamed_1.21.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "ary.mini.Nimi 1.0", + "classic_selected": "kcn.unnamed.Unnamed 1.21", "division": "roborumble", - "jar": "ary.mini.Nimi_1.0.jar", - "jar_sha256": "36bee330a80f2f3914bf93c24b5a0df11ad64530f588b05c06a68fff920c1ed0", - "key": "roborumble/ary.mini.Nimi_1.0.jar", + "jar": "kcn.unnamed.Unnamed_1.21.jar", + "jar_sha256": "52159566458159e9b9584defd869191dc12f5918e39d23ed0d020219a0ddce85", + "key": "roborumble/kcn.unnamed.Unnamed_1.21.jar", "kind": "robot" }, - "latest_observation": "e0d8d0f6f8806455", + "latest_observation": "37c594ac3485e1e2", "observations": [ { "classic": { "elapsed": 3.1, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 5247.0, + "score": 4696.0, "scores": [ - 2277.0, - 2970.0 + 1999.0, + 2697.0 ], - "selected": "ary.mini.Nimi 1.0" + "selected": "kcn.unnamed.Unnamed 1.21" }, - "completed_at": "2026-09-08T20:42:33Z", - "delta_pct": -31.2, - "id": "e0d8d0f6f8806455", - "manifest": { - "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "completed_at": "2026-09-12T21:53:03Z", + "confirmation": null, + "delta_pct": -9.6, + "id": "37c594ac3485e1e2", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "aafcebc48b5e283eae36becdfb120e2b66a9a6d5", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -43884,90 +105491,90 @@ "width": 800 }, "source_identity": { - "classic_selected": "ary.mini.Nimi 1.0", + "classic_selected": "kcn.unnamed.Unnamed 1.21", "division": "roborumble", - "jar": "ary.mini.Nimi_1.0.jar", - "jar_sha256": "36bee330a80f2f3914bf93c24b5a0df11ad64530f588b05c06a68fff920c1ed0", - "key": "roborumble/ary.mini.Nimi_1.0.jar", + "jar": "kcn.unnamed.Unnamed_1.21.jar", + "jar_sha256": "52159566458159e9b9584defd869191dc12f5918e39d23ed0d020219a0ddce85", + "key": "roborumble/kcn.unnamed.Unnamed_1.21.jar", "kind": "robot" }, - "status": "DISCREPANCY (score)", + "status": "PASS", "tank_royale": { - "elapsed": 28.0, + "bridge_only_signatures": null, + "elapsed": 24.0, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 3608.0, + "score": 4244.0, "scores": [ - 1844.0, - 1764.0 + 2363.0, + 1881.0 ], "skipped": null } } ], - "status": "score-review" + "status": "PASS" }, - "roborumble/ary.nano.AceSurf_1.2.jar": { + "roborumble/kenran.Bakko_v1.0.1.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "ary.nano.AceSurf 1.2", + "classic_selected": "kenran.Bakko v1.0.1", "division": "roborumble", - "jar": "ary.nano.AceSurf_1.2.jar", - "jar_sha256": "2d693c09246861c6b044d534aa1b5b463f5eb869f00a88afd9f30a21472e7a1d", - "key": "roborumble/ary.nano.AceSurf_1.2.jar", + "jar": "kenran.Bakko_v1.0.1.jar", + "jar_sha256": "4d00f7637a1d9d354bd70691bc8a2f14b2fb5f10b50970e52266697574ab1e6c", + "key": "roborumble/kenran.Bakko_v1.0.1.jar", "kind": "robot" }, - "latest_observation": "bd77f78dc4f9642f", + "latest_observation": "cac1aa587d78087c", "observations": [ { "classic": { - "elapsed": 2.7, + "elapsed": 5.2, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 2521.0, + "score": 5500.0, "scores": [ - 1376.0, - 1145.0 + 2677.0, + 2823.0 ], - "selected": "ary.nano.AceSurf 1.2" + "selected": "kenran.Bakko v1.0.1" }, - "completed_at": "2026-09-08T20:42:54Z", - "delta_pct": 38.1, - "id": "bd77f78dc4f9642f", + "completed_at": "2026-09-12T21:53:33Z", + "confirmation": null, + "delta_pct": -13.4, + "id": "cac1aa587d78087c", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "aafcebc48b5e283eae36becdfb120e2b66a9a6d5", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -43975,90 +105582,90 @@ "width": 800 }, "source_identity": { - "classic_selected": "ary.nano.AceSurf 1.2", + "classic_selected": "kenran.Bakko v1.0.1", "division": "roborumble", - "jar": "ary.nano.AceSurf_1.2.jar", - "jar_sha256": "2d693c09246861c6b044d534aa1b5b463f5eb869f00a88afd9f30a21472e7a1d", - "key": "roborumble/ary.nano.AceSurf_1.2.jar", + "jar": "kenran.Bakko_v1.0.1.jar", + "jar_sha256": "4d00f7637a1d9d354bd70691bc8a2f14b2fb5f10b50970e52266697574ab1e6c", + "key": "roborumble/kenran.Bakko_v1.0.1.jar", "kind": "robot" }, - "status": "DISCREPANCY (score)", + "status": "PASS", "tank_royale": { - "elapsed": 18.0, + "bridge_only_signatures": null, + "elapsed": 24.0, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 3481.0, + "score": 4764.0, "scores": [ - 1797.0, - 1684.0 + 2570.0, + 2194.0 ], "skipped": null } } ], - "status": "score-review" + "status": "PASS" }, - "roborumble/ary.nano.ColorNanoP_1.1.jar": { + "roborumble/kenran.mega.Pantheist_1.1.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "ary.nano.ColorNanoP 1.1", + "classic_selected": "kenran.mega.Pantheist 1.1", "division": "roborumble", - "jar": "ary.nano.ColorNanoP_1.1.jar", - "jar_sha256": "f1b339cda45f96f9c73a4a2ef286d7e6d6d837dcc92d140f5615b9b57421a3e8", - "key": "roborumble/ary.nano.ColorNanoP_1.1.jar", + "jar": "kenran.mega.Pantheist_1.1.jar", + "jar_sha256": "a3e7fca19554acd39542bbb02cd770e25cde7d0f7c8beac345ff2d7c20ae54e3", + "key": "roborumble/kenran.mega.Pantheist_1.1.jar", "kind": "robot" }, - "latest_observation": "7c40044d94ec9a01", + "latest_observation": "484f8c7a96a8da34", "observations": [ { "classic": { - "elapsed": 2.9, + "elapsed": 4.9, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 7699.0, + "score": 5973.0, "scores": [ - 3670.0, - 4029.0 + 2953.0, + 3020.0 ], - "selected": "ary.nano.ColorNanoP 1.1" + "selected": "kenran.mega.Pantheist 1.1" }, - "completed_at": "2026-09-08T20:43:11Z", - "delta_pct": -12.4, - "id": "7c40044d94ec9a01", + "completed_at": "2026-09-12T21:54:04Z", + "confirmation": null, + "delta_pct": -7.7, + "id": "484f8c7a96a8da34", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "aafcebc48b5e283eae36becdfb120e2b66a9a6d5", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -44066,24 +105673,26 @@ "width": 800 }, "source_identity": { - "classic_selected": "ary.nano.ColorNanoP 1.1", + "classic_selected": "kenran.mega.Pantheist 1.1", "division": "roborumble", - "jar": "ary.nano.ColorNanoP_1.1.jar", - "jar_sha256": "f1b339cda45f96f9c73a4a2ef286d7e6d6d837dcc92d140f5615b9b57421a3e8", - "key": "roborumble/ary.nano.ColorNanoP_1.1.jar", + "jar": "kenran.mega.Pantheist_1.1.jar", + "jar_sha256": "a3e7fca19554acd39542bbb02cd770e25cde7d0f7c8beac345ff2d7c20ae54e3", + "key": "roborumble/kenran.mega.Pantheist_1.1.jar", "kind": "robot" }, "status": "PASS", "tank_royale": { - "elapsed": 14.0, + "bridge_only_signatures": null, + "elapsed": 26.0, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 6744.0, + "score": 5512.0, "scores": [ - 3377.0, - 3367.0 + 2830.0, + 2682.0 ], "skipped": null } @@ -44091,65 +105700,63 @@ ], "status": "PASS" }, - "roborumble/as.xbots_1.0.jar": { + "roborumble/kid.Gladiator_.7.2.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "as.xbots 1.0", + "classic_selected": "kid.Gladiator .7.2", "division": "roborumble", - "jar": "as.xbots_1.0.jar", - "jar_sha256": "6adf1183af7ed3e4cccbaf35249fede5ffb8dc2101e49458106909cea95120cf", - "key": "roborumble/as.xbots_1.0.jar", + "jar": "kid.Gladiator_.7.2.jar", + "jar_sha256": "ba6253e2a542f12307fad47d0790dafb74ae6a52597ca94c3d4b3d3cc13da16f", + "key": "roborumble/kid.Gladiator_.7.2.jar", "kind": "robot" }, - "latest_observation": "a84fbf62fb36b2a2", + "latest_observation": "8b525bd3f6b28dfa", "observations": [ { "classic": { - "elapsed": 2.1, + "elapsed": 5.5, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 10650.0, + "score": 4457.0, "scores": [ - 5019.0, - 5631.0 + 2681.0, + 1776.0 ], - "selected": "as.xbots 1.0" + "selected": "kid.Gladiator .7.2" }, - "completed_at": "2026-09-08T20:43:51Z", - "delta_pct": 54.8, - "id": "a84fbf62fb36b2a2", + "completed_at": "2026-09-12T21:54:42Z", + "confirmation": null, + "delta_pct": 2.1, + "id": "8b525bd3f6b28dfa", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "aafcebc48b5e283eae36becdfb120e2b66a9a6d5", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -44157,90 +105764,90 @@ "width": 800 }, "source_identity": { - "classic_selected": "as.xbots 1.0", + "classic_selected": "kid.Gladiator .7.2", "division": "roborumble", - "jar": "as.xbots_1.0.jar", - "jar_sha256": "6adf1183af7ed3e4cccbaf35249fede5ffb8dc2101e49458106909cea95120cf", - "key": "roborumble/as.xbots_1.0.jar", + "jar": "kid.Gladiator_.7.2.jar", + "jar_sha256": "ba6253e2a542f12307fad47d0790dafb74ae6a52597ca94c3d4b3d3cc13da16f", + "key": "roborumble/kid.Gladiator_.7.2.jar", "kind": "robot" }, - "status": "DISCREPANCY (score)", + "status": "PASS", "tank_royale": { - "elapsed": 10.0, + "bridge_only_signatures": null, + "elapsed": 32.0, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 16487.0, + "score": 4550.0, "scores": [ - 8529.0, - 7958.0 + 2319.0, + 2231.0 ], "skipped": null } } ], - "status": "score-review" + "status": "PASS" }, - "roborumble/asd.Cthulhu_1.2.jar": { + "roborumble/kid.Toa_.0.5.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "asd.Cthulhu 1.2", + "classic_selected": "kid.Toa .0.5", "division": "roborumble", - "jar": "asd.Cthulhu_1.2.jar", - "jar_sha256": "63459d2c15c8c2227ad40c9fe6f89b51e934abffcc10d49837874199767c060e", - "key": "roborumble/asd.Cthulhu_1.2.jar", + "jar": "kid.Toa_.0.5.jar", + "jar_sha256": "50de2526df0b43e1b883bb9c4cb0ea18a7dae5689dc44745c2e2c64082f6e711", + "key": "roborumble/kid.Toa_.0.5.jar", "kind": "robot" }, - "latest_observation": "62a7416486d668ba", + "latest_observation": "fba256d882f5f68e", "observations": [ { "classic": { - "elapsed": 32.3, + "elapsed": 7.0, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 6883.0, + "score": 4769.0, "scores": [ - 3827.0, - 3056.0 + 1818.0, + 2951.0 ], - "selected": "asd.Cthulhu 1.2" + "selected": "kid.Toa .0.5" }, - "completed_at": "2026-09-08T20:44:51Z", - "delta_pct": 2.3, - "id": "62a7416486d668ba", + "completed_at": "2026-09-12T21:55:15Z", + "confirmation": null, + "delta_pct": -59.0, + "id": "fba256d882f5f68e", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "aafcebc48b5e283eae36becdfb120e2b66a9a6d5", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -44248,90 +105855,90 @@ "width": 800 }, "source_identity": { - "classic_selected": "asd.Cthulhu 1.2", + "classic_selected": "kid.Toa .0.5", "division": "roborumble", - "jar": "asd.Cthulhu_1.2.jar", - "jar_sha256": "63459d2c15c8c2227ad40c9fe6f89b51e934abffcc10d49837874199767c060e", - "key": "roborumble/asd.Cthulhu_1.2.jar", + "jar": "kid.Toa_.0.5.jar", + "jar_sha256": "50de2526df0b43e1b883bb9c4cb0ea18a7dae5689dc44745c2e2c64082f6e711", + "key": "roborumble/kid.Toa_.0.5.jar", "kind": "robot" }, - "status": "PASS", + "status": "DISCREPANCY (score)", "tank_royale": { - "elapsed": 28.0, + "bridge_only_signatures": null, + "elapsed": 26.0, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 7044.0, + "score": 1957.0, "scores": [ - 3534.0, - 3510.0 + 1046.0, + 911.0 ], "skipped": null } } ], - "status": "PASS" + "status": "score-review" }, - "roborumble/asm.Statistas_0.1.jar": { + "roborumble/kinsen.melee.Angsaichmophobia_1.8c.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "asm.Statistas 0.1", + "classic_selected": "kinsen.melee.Angsaichmophobia 1.8c", "division": "roborumble", - "jar": "asm.Statistas_0.1.jar", - "jar_sha256": "35553b2c09fcebec047f79582cc5a274d6bcd6d0034c1e5175d545281c76d0e4", - "key": "roborumble/asm.Statistas_0.1.jar", + "jar": "kinsen.melee.Angsaichmophobia_1.8c.jar", + "jar_sha256": "695a8d0520895efdf6aa3f27f240924a2ada2e60a37e5ca55f6fa2a2315865e2", + "key": "roborumble/kinsen.melee.Angsaichmophobia_1.8c.jar", "kind": "robot" }, - "latest_observation": "1f68932ec9132d3a", + "latest_observation": "0ed7850cf0a262d8", "observations": [ { "classic": { - "elapsed": 2.6, + "elapsed": 21.8, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 4972.0, + "score": 4861.0, "scores": [ - 2714.0, - 2258.0 + 2375.0, + 2486.0 ], - "selected": "asm.Statistas 0.1" + "selected": "kinsen.melee.Angsaichmophobia 1.8c" }, - "completed_at": "2026-09-08T20:45:10Z", - "delta_pct": -5.1, - "id": "1f68932ec9132d3a", + "completed_at": "2026-09-12T21:56:53Z", + "confirmation": null, + "delta_pct": -6.9, + "id": "0ed7850cf0a262d8", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "aafcebc48b5e283eae36becdfb120e2b66a9a6d5", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -44339,24 +105946,26 @@ "width": 800 }, "source_identity": { - "classic_selected": "asm.Statistas 0.1", + "classic_selected": "kinsen.melee.Angsaichmophobia 1.8c", "division": "roborumble", - "jar": "asm.Statistas_0.1.jar", - "jar_sha256": "35553b2c09fcebec047f79582cc5a274d6bcd6d0034c1e5175d545281c76d0e4", - "key": "roborumble/asm.Statistas_0.1.jar", + "jar": "kinsen.melee.Angsaichmophobia_1.8c.jar", + "jar_sha256": "695a8d0520895efdf6aa3f27f240924a2ada2e60a37e5ca55f6fa2a2315865e2", + "key": "roborumble/kinsen.melee.Angsaichmophobia_1.8c.jar", "kind": "robot" }, "status": "PASS", "tank_royale": { - "elapsed": 16.0, + "bridge_only_signatures": null, + "elapsed": 76.0, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 4717.0, + "score": 4525.0, "scores": [ - 2396.0, - 2321.0 + 2327.0, + 2198.0 ], "skipped": null } @@ -44364,65 +105973,63 @@ ], "status": "PASS" }, - "roborumble/awl.Locutus_1.5.jar": { + "roborumble/kinsen.nano.Charp_1.0.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "awl.Locutus 1.5", + "classic_selected": "kinsen.nano.Charp 1.0", "division": "roborumble", - "jar": "awl.Locutus_1.5.jar", - "jar_sha256": "c7f5c5cca58627f58db3c1590036255788fbaf333da16641ff0633c709ad0c2b", - "key": "roborumble/awl.Locutus_1.5.jar", + "jar": "kinsen.nano.Charp_1.0.jar", + "jar_sha256": "26378bf73f2975afbbe525735b328b63bf566b8d9e71a0afea9dcdbdc50f76b4", + "key": "roborumble/kinsen.nano.Charp_1.0.jar", "kind": "robot" }, - "latest_observation": "044a09527daed943", + "latest_observation": "16fb9f8a0566af3d", "observations": [ { "classic": { - "elapsed": 2.7, + "elapsed": 3.0, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 6083.0, + "score": 4823.0, "scores": [ - 2605.0, - 3478.0 + 2551.0, + 2272.0 ], - "selected": "awl.Locutus 1.5" + "selected": "kinsen.nano.Charp 1.0" }, - "completed_at": "2026-09-08T20:45:37Z", - "delta_pct": -16.0, - "id": "044a09527daed943", + "completed_at": "2026-09-12T21:57:09Z", + "confirmation": null, + "delta_pct": -44.7, + "id": "16fb9f8a0566af3d", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "aafcebc48b5e283eae36becdfb120e2b66a9a6d5", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -44430,90 +106037,90 @@ "width": 800 }, "source_identity": { - "classic_selected": "awl.Locutus 1.5", + "classic_selected": "kinsen.nano.Charp 1.0", "division": "roborumble", - "jar": "awl.Locutus_1.5.jar", - "jar_sha256": "c7f5c5cca58627f58db3c1590036255788fbaf333da16641ff0633c709ad0c2b", - "key": "roborumble/awl.Locutus_1.5.jar", + "jar": "kinsen.nano.Charp_1.0.jar", + "jar_sha256": "26378bf73f2975afbbe525735b328b63bf566b8d9e71a0afea9dcdbdc50f76b4", + "key": "roborumble/kinsen.nano.Charp_1.0.jar", "kind": "robot" }, - "status": "PASS", + "status": "DISCREPANCY (score)", "tank_royale": { - "elapsed": 24.1, + "bridge_only_signatures": null, + "elapsed": 12.0, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 5107.0, + "score": 2669.0, "scores": [ - 3156.0, - 1951.0 + 1356.0, + 1313.0 ], "skipped": null } } ], - "status": "PASS" + "status": "score-review" }, - "roborumble/axeBots.HataMoto_3.09.jar": { + "roborumble/kinsen.nano.Hoplomachy_1.6.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "axeBots.HataMoto 3.09", + "classic_selected": "kinsen.nano.Hoplomachy 1.6", "division": "roborumble", - "jar": "axeBots.HataMoto_3.09.jar", - "jar_sha256": "293a92846b40195a5de25c7379f72e0dcb08297f79d2b6fffd7d3a95b50afb2c", - "key": "roborumble/axeBots.HataMoto_3.09.jar", + "jar": "kinsen.nano.Hoplomachy_1.6.jar", + "jar_sha256": "dacf07e564cb271f4d53b67fd76ae82d28b2ea897d132379d9ae1f5727143e7c", + "key": "roborumble/kinsen.nano.Hoplomachy_1.6.jar", "kind": "robot" }, - "latest_observation": "f3c9ed411fa769b7", + "latest_observation": "1bee697b81a6f927", "observations": [ { "classic": { - "elapsed": 5.9, + "elapsed": 2.7, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 4777.0, + "score": 5026.0, "scores": [ - 1548.0, - 3229.0 + 2657.0, + 2369.0 ], - "selected": "axeBots.HataMoto 3.09" + "selected": "kinsen.nano.Hoplomachy 1.6" }, - "completed_at": "2026-09-08T20:46:16Z", - "delta_pct": 5.3, - "id": "f3c9ed411fa769b7", + "completed_at": "2026-09-12T21:57:28Z", + "confirmation": null, + "delta_pct": -20.9, + "id": "1bee697b81a6f927", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "aafcebc48b5e283eae36becdfb120e2b66a9a6d5", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -44521,24 +106128,26 @@ "width": 800 }, "source_identity": { - "classic_selected": "axeBots.HataMoto 3.09", + "classic_selected": "kinsen.nano.Hoplomachy 1.6", "division": "roborumble", - "jar": "axeBots.HataMoto_3.09.jar", - "jar_sha256": "293a92846b40195a5de25c7379f72e0dcb08297f79d2b6fffd7d3a95b50afb2c", - "key": "roborumble/axeBots.HataMoto_3.09.jar", + "jar": "kinsen.nano.Hoplomachy_1.6.jar", + "jar_sha256": "dacf07e564cb271f4d53b67fd76ae82d28b2ea897d132379d9ae1f5727143e7c", + "key": "roborumble/kinsen.nano.Hoplomachy_1.6.jar", "kind": "robot" }, "status": "PASS", "tank_royale": { - "elapsed": 32.3, + "bridge_only_signatures": null, + "elapsed": 16.0, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 5029.0, + "score": 3976.0, "scores": [ - 2525.0, - 2504.0 + 2429.0, + 1547.0 ], "skipped": null } @@ -44546,68 +106155,63 @@ ], "status": "PASS" }, - "roborumble/axeBots.Musashi_2.18.jar": { + "roborumble/kinsen.nano.Quarrelet_1.0.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "axeBots.Musashi 2.18", + "classic_selected": "kinsen.nano.Quarrelet 1.0", "division": "roborumble", - "jar": "axeBots.Musashi_2.18.jar", - "jar_sha256": "f7890ddc132b5ae0595e1faa65464e79628bb5dda7a64f5e20e74cb3ee9d8707", - "key": "roborumble/axeBots.Musashi_2.18.jar", + "jar": "kinsen.nano.Quarrelet_1.0.jar", + "jar_sha256": "240a6fbec20c1ef3aed660a9afd4d053be3b6be70292dfda9149150bd5acda1a", + "key": "roborumble/kinsen.nano.Quarrelet_1.0.jar", "kind": "robot" }, - "latest_observation": "d96c381e473a9e9f", + "latest_observation": "392cc7b5ec68cfab", "observations": [ { "classic": { - "elapsed": 3.9, - "error_count": 2, - "errors": [ - "IOException trying to read: java.lang.NullPointerException: name can't be null", - "IOException trying to read: java.lang.NullPointerException: name can't be null" - ], - "has_log": true, + "elapsed": 2.8, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, "ok": true, - "score": 5575.0, + "score": 5280.0, "scores": [ - 2545.0, - 3030.0 + 2841.0, + 2439.0 ], - "selected": "axeBots.Musashi 2.18" + "selected": "kinsen.nano.Quarrelet 1.0" }, - "completed_at": "2026-09-08T20:46:48Z", - "delta_pct": -5.5, - "id": "d96c381e473a9e9f", + "completed_at": "2026-09-12T21:57:43Z", + "confirmation": null, + "delta_pct": -46.6, + "id": "392cc7b5ec68cfab", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "aafcebc48b5e283eae36becdfb120e2b66a9a6d5", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -44615,96 +106219,90 @@ "width": 800 }, "source_identity": { - "classic_selected": "axeBots.Musashi 2.18", + "classic_selected": "kinsen.nano.Quarrelet 1.0", "division": "roborumble", - "jar": "axeBots.Musashi_2.18.jar", - "jar_sha256": "f7890ddc132b5ae0595e1faa65464e79628bb5dda7a64f5e20e74cb3ee9d8707", - "key": "roborumble/axeBots.Musashi_2.18.jar", + "jar": "kinsen.nano.Quarrelet_1.0.jar", + "jar_sha256": "240a6fbec20c1ef3aed660a9afd4d053be3b6be70292dfda9149150bd5acda1a", + "key": "roborumble/kinsen.nano.Quarrelet_1.0.jar", "kind": "robot" }, - "status": "PASS", + "status": "DISCREPANCY (score)", "tank_royale": { - "elapsed": 28.0, - "error_count": 2, - "errors": [ - "IOException trying to read: java.lang.NullPointerException: Cannot invoke \"java.io.File.isInvalid()\" because \"file\" is null", - "IOException trying to read: java.lang.NullPointerException: Cannot invoke \"java.io.File.isInvalid()\" because \"file\" is null" - ], - "has_log": true, + "bridge_only_signatures": null, + "elapsed": 12.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, "ok": true, - "score": 5270.0, + "score": 2818.0, "scores": [ - 2646.0, - 2624.0 + 1580.0, + 1238.0 ], "skipped": null } } ], - "status": "PASS" + "status": "score-review" }, - "roborumble/axeBots.Okami_1.04.jar": { + "roborumble/kinsen.nano.Senticous_1.0.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "axeBots.Okami 1.04", + "classic_selected": "kinsen.nano.Senticous 1.0", "division": "roborumble", - "jar": "axeBots.Okami_1.04.jar", - "jar_sha256": "608f42ae73765a352e9034e41f36af721cd745835a19a20f8fe7e8bbe3be30fa", - "key": "roborumble/axeBots.Okami_1.04.jar", + "jar": "kinsen.nano.Senticous_1.0.jar", + "jar_sha256": "cdf99b8519af8547931f3a5fff78d0440ace56824410066733d43b6c2efbb210", + "key": "roborumble/kinsen.nano.Senticous_1.0.jar", "kind": "robot" }, - "latest_observation": "74bce683db58a4ec", + "latest_observation": "2a603412d14a06c4", "observations": [ { "classic": { - "elapsed": 5.0, - "error_count": 2, - "errors": [ - "IOException trying to read: java.lang.NullPointerException: name can't be null", - "IOException trying to read: java.lang.NullPointerException: name can't be null" - ], - "has_log": true, + "elapsed": 2.5, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, "ok": true, - "score": 5383.0, + "score": 5038.0, "scores": [ - 2856.0, - 2527.0 + 2412.0, + 2626.0 ], - "selected": "axeBots.Okami 1.04" + "selected": "kinsen.nano.Senticous 1.0" }, - "completed_at": "2026-09-08T20:47:22Z", - "delta_pct": -7.1, - "id": "74bce683db58a4ec", + "completed_at": "2026-09-12T21:58:02Z", + "confirmation": null, + "delta_pct": -15.2, + "id": "2a603412d14a06c4", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "aafcebc48b5e283eae36becdfb120e2b66a9a6d5", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -44712,24 +106310,26 @@ "width": 800 }, "source_identity": { - "classic_selected": "axeBots.Okami 1.04", + "classic_selected": "kinsen.nano.Senticous 1.0", "division": "roborumble", - "jar": "axeBots.Okami_1.04.jar", - "jar_sha256": "608f42ae73765a352e9034e41f36af721cd745835a19a20f8fe7e8bbe3be30fa", - "key": "roborumble/axeBots.Okami_1.04.jar", + "jar": "kinsen.nano.Senticous_1.0.jar", + "jar_sha256": "cdf99b8519af8547931f3a5fff78d0440ace56824410066733d43b6c2efbb210", + "key": "roborumble/kinsen.nano.Senticous_1.0.jar", "kind": "robot" }, "status": "PASS", "tank_royale": { - "elapsed": 28.2, + "bridge_only_signatures": null, + "elapsed": 16.0, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 4999.0, + "score": 4274.0, "scores": [ - 3272.0, - 1727.0 + 2731.0, + 1543.0 ], "skipped": null } @@ -44737,68 +106337,63 @@ ], "status": "PASS" }, - "roborumble/axeBots.SilverSurfer_2.53.33fix.jar": { + "roborumble/kjc.Karaykan_1.0.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "axeBots.SilverSurfer 2.53.33fix", + "classic_selected": "kjc.Karaykan 1.0", "division": "roborumble", - "jar": "axeBots.SilverSurfer_2.53.33fix.jar", - "jar_sha256": "d0b3667a0a9c38bc0cfdb5c47d7b68a8b73194fd88be12d6bee64fcfddb86add", - "key": "roborumble/axeBots.SilverSurfer_2.53.33fix.jar", + "jar": "kjc.Karaykan_1.0.jar", + "jar_sha256": "46264381cc5b7fcb753b6b649db7febbc57d66bf9572facccf7ce8ca3fefa614", + "key": "roborumble/kjc.Karaykan_1.0.jar", "kind": "robot" }, - "latest_observation": "9b6fc48236f56191", + "latest_observation": "9fff8d83189d2ec9", "observations": [ { "classic": { - "elapsed": 6.3, - "error_count": 2, - "errors": [ - "IOException, trying to read: java.io.InterruptedIOException: File not Found:axeBots.SilverSurfer 2.53.33fix (2).gfs", - "IOException, trying to read: java.io.InterruptedIOException: File not Found:axeBots.SilverSurfer 2.53.33fix (1).gfs" - ], - "has_log": true, + "elapsed": 2.5, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, "ok": true, - "score": 5487.0, + "score": 6682.0, "scores": [ - 3158.0, - 2329.0 + 3441.0, + 3241.0 ], - "selected": "axeBots.SilverSurfer 2.53.33fix" + "selected": "kjc.Karaykan 1.0" }, - "completed_at": "2026-09-08T20:47:52Z", - "delta_pct": -3.4, - "id": "9b6fc48236f56191", + "completed_at": "2026-09-12T22:00:37Z", + "confirmation": null, + "delta_pct": -1.0, + "id": "9fff8d83189d2ec9", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "07f66a1a2edceb2ac5f9350254c039775e045ebd", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -44806,27 +106401,26 @@ "width": 800 }, "source_identity": { - "classic_selected": "axeBots.SilverSurfer 2.53.33fix", + "classic_selected": "kjc.Karaykan 1.0", "division": "roborumble", - "jar": "axeBots.SilverSurfer_2.53.33fix.jar", - "jar_sha256": "d0b3667a0a9c38bc0cfdb5c47d7b68a8b73194fd88be12d6bee64fcfddb86add", - "key": "roborumble/axeBots.SilverSurfer_2.53.33fix.jar", + "jar": "kjc.Karaykan_1.0.jar", + "jar_sha256": "46264381cc5b7fcb753b6b649db7febbc57d66bf9572facccf7ce8ca3fefa614", + "key": "roborumble/kjc.Karaykan_1.0.jar", "kind": "robot" }, "status": "PASS", "tank_royale": { - "elapsed": 24.0, - "error_count": 2, - "errors": [ - "IOException, trying to read: java.io.InterruptedIOException: File not Found:2.gfs", - "IOException, trying to read: java.io.InterruptedIOException: File not Found:1.gfs" - ], - "has_log": true, + "bridge_only_signatures": null, + "elapsed": 14.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, "ok": true, - "score": 5298.0, + "score": 6614.0, "scores": [ - 2951.0, - 2347.0 + 3483.0, + 3131.0 ], "skipped": null } @@ -44834,65 +106428,63 @@ ], "status": "PASS" }, - "roborumble/ayk.WallHugger_1.0.jar": { + "roborumble/kjc.MailManX_2.0.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "ayk.WallHugger 1.0", + "classic_selected": "kjc.MailManX 2.0", "division": "roborumble", - "jar": "ayk.WallHugger_1.0.jar", - "jar_sha256": "6a5eb97de641d4c81e3456da75997dbe50aa072eacf0cc79db2d212899979470", - "key": "roborumble/ayk.WallHugger_1.0.jar", + "jar": "kjc.MailManX_2.0.jar", + "jar_sha256": "41cd11628dfe7d95a587dd11027aa78268fa9c3017eed9e55bab6d9c09cb18c9", + "key": "roborumble/kjc.MailManX_2.0.jar", "kind": "robot" }, - "latest_observation": "7d779898eaf34726", + "latest_observation": "a82056c6ad2ad5d3", "observations": [ { "classic": { - "elapsed": 2.4, + "elapsed": 2.9, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 10066.0, + "score": 5438.0, "scores": [ - 4868.0, - 5198.0 + 2824.0, + 2614.0 ], - "selected": "ayk.WallHugger 1.0" + "selected": "kjc.MailManX 2.0" }, - "completed_at": "2026-09-08T20:48:09Z", - "delta_pct": -22.2, - "id": "7d779898eaf34726", + "completed_at": "2026-09-12T22:01:05Z", + "confirmation": null, + "delta_pct": -7.2, + "id": "a82056c6ad2ad5d3", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "07f66a1a2edceb2ac5f9350254c039775e045ebd", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -44900,24 +106492,26 @@ "width": 800 }, "source_identity": { - "classic_selected": "ayk.WallHugger 1.0", + "classic_selected": "kjc.MailManX 2.0", "division": "roborumble", - "jar": "ayk.WallHugger_1.0.jar", - "jar_sha256": "6a5eb97de641d4c81e3456da75997dbe50aa072eacf0cc79db2d212899979470", - "key": "roborumble/ayk.WallHugger_1.0.jar", + "jar": "kjc.MailManX_2.0.jar", + "jar_sha256": "41cd11628dfe7d95a587dd11027aa78268fa9c3017eed9e55bab6d9c09cb18c9", + "key": "roborumble/kjc.MailManX_2.0.jar", "kind": "robot" }, "status": "PASS", "tank_royale": { - "elapsed": 14.0, + "bridge_only_signatures": null, + "elapsed": 24.0, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 7835.0, + "score": 5048.0, "scores": [ - 4757.0, - 3078.0 + 2553.0, + 2495.0 ], "skipped": null } @@ -44925,65 +106519,63 @@ ], "status": "PASS" }, - "roborumble/az.Ololobot_0.2.4.jar": { + "roborumble/kjc.etc.Dharok_1.0.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "az.Ololobot 0.2.4", + "classic_selected": "kjc.etc.Dharok 1.0", "division": "roborumble", - "jar": "az.Ololobot_0.2.4.jar", - "jar_sha256": "b6938411c048bde80bf0186892f03342e0c60dff05127052ed21932825765eb9", - "key": "roborumble/az.Ololobot_0.2.4.jar", + "jar": "kjc.etc.Dharok_1.0.jar", + "jar_sha256": "b23cf24c24cd3ad76d4fae9f8513de5e1b1b4733ae1f7f211be40e3b28be72b5", + "key": "roborumble/kjc.etc.Dharok_1.0.jar", "kind": "robot" }, - "latest_observation": "5cf402dd473c1227", + "latest_observation": "6e18ec5d5036e689", "observations": [ { "classic": { - "elapsed": 17.1, + "elapsed": 2.5, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 10091.0, + "score": 5783.0, "scores": [ - 4636.0, - 5455.0 + 2886.0, + 2897.0 ], - "selected": "az.Ololobot 0.2.4" + "selected": "kjc.etc.Dharok 1.0" }, - "completed_at": "2026-09-08T20:48:31Z", - "delta_pct": null, - "id": "5cf402dd473c1227", + "completed_at": "2026-09-12T22:00:21Z", + "confirmation": null, + "delta_pct": -5.6, + "id": "6e18ec5d5036e689", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "07f66a1a2edceb2ac5f9350254c039775e045ebd", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -44991,188 +106583,90 @@ "width": 800 }, "source_identity": { - "classic_selected": "az.Ololobot 0.2.4", + "classic_selected": "kjc.etc.Dharok 1.0", "division": "roborumble", - "jar": "az.Ololobot_0.2.4.jar", - "jar_sha256": "b6938411c048bde80bf0186892f03342e0c60dff05127052ed21932825765eb9", - "key": "roborumble/az.Ololobot_0.2.4.jar", + "jar": "kjc.etc.Dharok_1.0.jar", + "jar_sha256": "b23cf24c24cd3ad76d4fae9f8513de5e1b1b4733ae1f7f211be40e3b28be72b5", + "key": "roborumble/kjc.etc.Dharok_1.0.jar", "kind": "robot" }, - "status": "FAIL (TR)", + "status": "PASS", "tank_royale": { - "elapsed": 4.2, - "error_count": 189, - "errors": [ - "HARNESS: worker produced no result (exit code -1)", - "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", - "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", - "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", - "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", - "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", - "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", - "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", - "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", - "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", - "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", - "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", - "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", - "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", - "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", - "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", - "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", - "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", - "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", - "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", - "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", - "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", - "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", - "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", - "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", - "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", - "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", - "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", - "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", - "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", - "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", - "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", - "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", - "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", - "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", - "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", - "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", - "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", - "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", - "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", - "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", - "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", - "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", - "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", - "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", - "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", - "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", - "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", - "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", - "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", - "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", - "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", - "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", - "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", - "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", - "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", - "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", - "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", - "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", - "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", - "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", - "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", - "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", - "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", - "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", - "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", - "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", - "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", - "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", - "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", - "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", - "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", - "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", - "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", - "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", - "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", - "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", - "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", - "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", - "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", - "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", - "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", - "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", - "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", - "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", - "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", - "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", - "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", - "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", - "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", - "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", - "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", - "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", - "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", - "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", - "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", - "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", - "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", - "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5", - "java.lang.ArrayIndexOutOfBoundsException: Index 5 out of bounds for length 5" + "bridge_only_signatures": null, + "elapsed": 18.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5461.0, + "scores": [ + 3066.0, + 2395.0 ], - "has_log": true, - "ok": false, - "score": null, - "scores": [], "skipped": null } } ], - "status": "FAIL (TR)" + "status": "PASS" }, - "roborumble/banshee.micro.Nexus6_0.3.0.jar": { + "roborumble/klein.GottesKrieger_1.1.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "banshee.micro.Nexus6 0.3.0", + "classic_selected": "klein.GottesKrieger 1.1", "division": "roborumble", - "jar": "banshee.micro.Nexus6_0.3.0.jar", - "jar_sha256": "e4cb9d96e7487b927a54b89221c2ee262ce514759f3960670b9aa95ff6dbaecc", - "key": "roborumble/banshee.micro.Nexus6_0.3.0.jar", + "jar": "klein.GottesKrieger_1.1.jar", + "jar_sha256": "33bcb35141a2cc38ceead907a2997682e07833f6a7d8061b5e35e9add1d4cdbd", + "key": "roborumble/klein.GottesKrieger_1.1.jar", "kind": "robot" }, - "latest_observation": "0cf456b6f9cb9978", + "latest_observation": "ca30b7c68b5b10fc", "observations": [ { "classic": { - "elapsed": 2.5, + "elapsed": 3.0, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 6536.0, + "score": 7293.0, "scores": [ - 2916.0, - 3620.0 + 4450.0, + 2843.0 ], - "selected": "banshee.micro.Nexus6 0.3.0" + "selected": "klein.GottesKrieger 1.1" }, - "completed_at": "2026-09-08T20:48:47Z", - "delta_pct": -13.0, - "id": "0cf456b6f9cb9978", + "completed_at": "2026-09-12T22:01:12Z", + "confirmation": null, + "delta_pct": null, + "id": "ca30b7c68b5b10fc", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "07f66a1a2edceb2ac5f9350254c039775e045ebd", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -45180,90 +106674,117 @@ "width": 800 }, "source_identity": { - "classic_selected": "banshee.micro.Nexus6 0.3.0", + "classic_selected": "klein.GottesKrieger 1.1", "division": "roborumble", - "jar": "banshee.micro.Nexus6_0.3.0.jar", - "jar_sha256": "e4cb9d96e7487b927a54b89221c2ee262ce514759f3960670b9aa95ff6dbaecc", - "key": "roborumble/banshee.micro.Nexus6_0.3.0.jar", + "jar": "klein.GottesKrieger_1.1.jar", + "jar_sha256": "33bcb35141a2cc38ceead907a2997682e07833f6a7d8061b5e35e9add1d4cdbd", + "key": "roborumble/klein.GottesKrieger_1.1.jar", "kind": "robot" }, - "status": "PASS", + "status": "DISCREPANCY (outcome)", "tank_royale": { - "elapsed": 14.0, - "error_count": 0, - "errors": [], - "has_log": false, - "ok": true, - "score": 5689.0, - "scores": [ - 3295.0, - 2394.0 + "bridge_only_signatures": [ + [ + "java.lang.NullPointerException", + "klein.GottesKrieger.guessFactorAnalyze" + ] + ], + "elapsed": 4.2, + "error_count": 19, + "error_signatures": [ + { + "exception": "java.lang.NullPointerException", + "origin": "klein.GottesKrieger.guessFactorAnalyze" + } + ], + "errors": [ + "HARNESS: worker produced no result (exit code -1)", + "java.lang.NullPointerException: Cannot read field \"target\" because \"e\" is null", + "java.lang.NullPointerException: Cannot read field \"target\" because \"e\" is null", + "java.lang.NullPointerException: Cannot read field \"target\" because \"e\" is null", + "java.lang.NullPointerException: Cannot read field \"target\" because \"e\" is null", + "java.lang.NullPointerException: Cannot read field \"target\" because \"e\" is null", + "java.lang.NullPointerException: Cannot read field \"target\" because \"e\" is null", + "java.lang.NullPointerException: Cannot read field \"target\" because \"e\" is null", + "java.lang.NullPointerException: Cannot read field \"target\" because \"e\" is null", + "java.lang.NullPointerException: Cannot read field \"target\" because \"e\" is null", + "java.lang.NullPointerException: Cannot read field \"target\" because \"e\" is null", + "java.lang.NullPointerException: Cannot read field \"target\" because \"e\" is null", + "java.lang.NullPointerException: Cannot read field \"target\" because \"e\" is null", + "java.lang.NullPointerException: Cannot read field \"target\" because \"e\" is null", + "java.lang.NullPointerException: Cannot read field \"target\" because \"e\" is null", + "java.lang.NullPointerException: Cannot read field \"target\" because \"e\" is null", + "java.lang.NullPointerException: Cannot read field \"target\" because \"e\" is null", + "java.lang.NullPointerException: Cannot read field \"target\" because \"e\" is null", + "java.lang.NullPointerException: Cannot read field \"target\" because \"e\" is null" ], + "has_log": true, + "ok": false, + "score": null, + "scores": [], "skipped": null } } ], - "status": "PASS" + "status": "DISCREPANCY (outcome)" }, - "roborumble/banshee.mini.Nexus6_0.2.0.jar": { + "roborumble/kms.Golden_0.10.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "banshee.mini.Nexus6 0.2.0", + "classic_selected": "kms.Golden 0.10", "division": "roborumble", - "jar": "banshee.mini.Nexus6_0.2.0.jar", - "jar_sha256": "2bb08e1c59e732361dcdee3df148534bc0dabd9d8f14147c4a583c04f1dc7a42", - "key": "roborumble/banshee.mini.Nexus6_0.2.0.jar", + "jar": "kms.Golden_0.10.jar", + "jar_sha256": "787293b2d0294b483b6862e2646c2259d28dd2ab00be208f8cdcaa13b8c0c19a", + "key": "roborumble/kms.Golden_0.10.jar", "kind": "robot" }, - "latest_observation": "d4cda9b611b80d04", + "latest_observation": "b5d6900c92396f8b", "observations": [ { "classic": { - "elapsed": 3.0, + "elapsed": 2.7, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 5731.0, + "score": 5421.0, "scores": [ - 3179.0, - 2552.0 + 2258.0, + 3163.0 ], - "selected": "banshee.mini.Nexus6 0.2.0" + "selected": "kms.Golden 0.10" }, - "completed_at": "2026-09-08T20:49:13Z", - "delta_pct": 2.7, - "id": "d4cda9b611b80d04", + "completed_at": "2026-09-12T22:01:35Z", + "confirmation": null, + "delta_pct": -33.1, + "id": "b5d6900c92396f8b", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "07f66a1a2edceb2ac5f9350254c039775e045ebd", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -45271,90 +106792,90 @@ "width": 800 }, "source_identity": { - "classic_selected": "banshee.mini.Nexus6 0.2.0", + "classic_selected": "kms.Golden 0.10", "division": "roborumble", - "jar": "banshee.mini.Nexus6_0.2.0.jar", - "jar_sha256": "2bb08e1c59e732361dcdee3df148534bc0dabd9d8f14147c4a583c04f1dc7a42", - "key": "roborumble/banshee.mini.Nexus6_0.2.0.jar", + "jar": "kms.Golden_0.10.jar", + "jar_sha256": "787293b2d0294b483b6862e2646c2259d28dd2ab00be208f8cdcaa13b8c0c19a", + "key": "roborumble/kms.Golden_0.10.jar", "kind": "robot" }, - "status": "PASS", + "status": "DISCREPANCY (score)", "tank_royale": { - "elapsed": 22.0, + "bridge_only_signatures": null, + "elapsed": 20.0, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 5883.0, + "score": 3626.0, "scores": [ - 3324.0, - 2559.0 + 1832.0, + 1794.0 ], "skipped": null } } ], - "status": "PASS" + "status": "score-review" }, - "roborumble/barontrozo.BaronTrozo_1.7.6.jar": { + "roborumble/kms.Royal_0.15M.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "barontrozo.BaronTrozo 1.7.6", + "classic_selected": "kms.Royal 0.15M", "division": "roborumble", - "jar": "barontrozo.BaronTrozo_1.7.6.jar", - "jar_sha256": "0031d364bd6cc01f74c537d9c88be09c53d7fd11999aa586480d010a77a37f3c", - "key": "roborumble/barontrozo.BaronTrozo_1.7.6.jar", + "jar": "kms.Royal_0.15M.jar", + "jar_sha256": "7111115c461bbf59b699432dd45fa1da8ce719c39f6dd281bbbddaeeb2ace4b2", + "key": "roborumble/kms.Royal_0.15M.jar", "kind": "robot" }, - "latest_observation": "004179d3a54b0e5a", + "latest_observation": "eab60f1e9e2e0f3e", "observations": [ { "classic": { - "elapsed": 5.3, + "elapsed": 3.0, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 5725.0, + "score": 8954.0, "scores": [ - 2259.0, - 3466.0 + 4628.0, + 4326.0 ], - "selected": "barontrozo.BaronTrozo 1.7.6" + "selected": "kms.Royal 0.15M" }, - "completed_at": "2026-09-08T20:49:38Z", - "delta_pct": -9.3, - "id": "004179d3a54b0e5a", + "completed_at": "2026-09-12T22:01:55Z", + "confirmation": null, + "delta_pct": -3.0, + "id": "eab60f1e9e2e0f3e", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "07f66a1a2edceb2ac5f9350254c039775e045ebd", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -45362,24 +106883,26 @@ "width": 800 }, "source_identity": { - "classic_selected": "barontrozo.BaronTrozo 1.7.6", + "classic_selected": "kms.Royal 0.15M", "division": "roborumble", - "jar": "barontrozo.BaronTrozo_1.7.6.jar", - "jar_sha256": "0031d364bd6cc01f74c537d9c88be09c53d7fd11999aa586480d010a77a37f3c", - "key": "roborumble/barontrozo.BaronTrozo_1.7.6.jar", + "jar": "kms.Royal_0.15M.jar", + "jar_sha256": "7111115c461bbf59b699432dd45fa1da8ce719c39f6dd281bbbddaeeb2ace4b2", + "key": "roborumble/kms.Royal_0.15M.jar", "kind": "robot" }, "status": "PASS", "tank_royale": { - "elapsed": 20.0, + "bridge_only_signatures": null, + "elapsed": 16.0, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 5195.0, + "score": 8688.0, "scores": [ - 2691.0, - 2504.0 + 4596.0, + 4092.0 ], "skipped": null } @@ -45387,65 +106910,63 @@ ], "status": "PASS" }, - "roborumble/bayen.UbaMicro_1.4.jar": { + "roborumble/knackibot.KnackOnOne_0.8.1.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "bayen.UbaMicro 1.4", + "classic_selected": "knackibot.KnackOnOne 0.8.1", "division": "roborumble", - "jar": "bayen.UbaMicro_1.4.jar", - "jar_sha256": "7691bd56732d5813079f65319f62a7bda392937bfe458528383fd2b89b1a7d11", - "key": "roborumble/bayen.UbaMicro_1.4.jar", + "jar": "knackibot.KnackOnOne_0.8.1.jar", + "jar_sha256": "d4c572b46119dcfdb25fa1547b0b1a0e129ff4c95f98c9fbc8dc8c8967b1b3ad", + "key": "roborumble/knackibot.KnackOnOne_0.8.1.jar", "kind": "robot" }, - "latest_observation": "26edca5dc7a5d68a", + "latest_observation": "624c9c4b63456f1e", "observations": [ { "classic": { - "elapsed": 2.5, + "elapsed": 3.2, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 5531.0, + "score": 5071.0, "scores": [ - 2586.0, - 2945.0 + 1852.0, + 3219.0 ], - "selected": "bayen.UbaMicro 1.4" + "selected": "knackibot.KnackOnOne 0.8.1" }, - "completed_at": "2026-09-08T20:51:01Z", - "delta_pct": -20.6, - "id": "26edca5dc7a5d68a", + "completed_at": "2026-09-12T22:02:18Z", + "confirmation": null, + "delta_pct": 2.8, + "id": "624c9c4b63456f1e", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "07f66a1a2edceb2ac5f9350254c039775e045ebd", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -45453,24 +106974,26 @@ "width": 800 }, "source_identity": { - "classic_selected": "bayen.UbaMicro 1.4", + "classic_selected": "knackibot.KnackOnOne 0.8.1", "division": "roborumble", - "jar": "bayen.UbaMicro_1.4.jar", - "jar_sha256": "7691bd56732d5813079f65319f62a7bda392937bfe458528383fd2b89b1a7d11", - "key": "roborumble/bayen.UbaMicro_1.4.jar", + "jar": "knackibot.KnackOnOne_0.8.1.jar", + "jar_sha256": "d4c572b46119dcfdb25fa1547b0b1a0e129ff4c95f98c9fbc8dc8c8967b1b3ad", + "key": "roborumble/knackibot.KnackOnOne_0.8.1.jar", "kind": "robot" }, "status": "PASS", "tank_royale": { - "elapsed": 18.0, + "bridge_only_signatures": null, + "elapsed": 20.0, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 4389.0, + "score": 5215.0, "scores": [ - 2283.0, - 2106.0 + 2908.0, + 2307.0 ], "skipped": null } @@ -45478,65 +107001,63 @@ ], "status": "PASS" }, - "roborumble/bayen.UbaRamLT_1.0.jar": { + "roborumble/kneels.ToNoone_0.2.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "bayen.UbaRamLT 1.0", + "classic_selected": "kneels.ToNoone 0.2", "division": "roborumble", - "jar": "bayen.UbaRamLT_1.0.jar", - "jar_sha256": "604d19bdcfa6caa05964df927bb24e237e8f7aaa1fcbd7d13aea4e4d9b5e028b", - "key": "roborumble/bayen.UbaRamLT_1.0.jar", + "jar": "kneels.ToNoone_0.2.jar", + "jar_sha256": "364b38e3f238f906b9d9377085e6f0ac75abf2a16c6f34f3118ddccf1176817f", + "key": "roborumble/kneels.ToNoone_0.2.jar", "kind": "robot" }, - "latest_observation": "13b1bb4843e9815b", + "latest_observation": "ae62db4724a7b736", "observations": [ { "classic": { - "elapsed": 2.2, + "elapsed": 2.4, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 10862.0, + "score": 5587.0, "scores": [ - 5678.0, - 5184.0 + 2762.0, + 2825.0 ], - "selected": "bayen.UbaRamLT 1.0" + "selected": "kneels.ToNoone 0.2" }, - "completed_at": "2026-09-08T20:51:14Z", - "delta_pct": 29.8, - "id": "13b1bb4843e9815b", + "completed_at": "2026-09-12T22:03:04Z", + "confirmation": null, + "delta_pct": -48.0, + "id": "ae62db4724a7b736", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "07f66a1a2edceb2ac5f9350254c039775e045ebd", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -45544,24 +107065,26 @@ "width": 800 }, "source_identity": { - "classic_selected": "bayen.UbaRamLT 1.0", + "classic_selected": "kneels.ToNoone 0.2", "division": "roborumble", - "jar": "bayen.UbaRamLT_1.0.jar", - "jar_sha256": "604d19bdcfa6caa05964df927bb24e237e8f7aaa1fcbd7d13aea4e4d9b5e028b", - "key": "roborumble/bayen.UbaRamLT_1.0.jar", + "jar": "kneels.ToNoone_0.2.jar", + "jar_sha256": "364b38e3f238f906b9d9377085e6f0ac75abf2a16c6f34f3118ddccf1176817f", + "key": "roborumble/kneels.ToNoone_0.2.jar", "kind": "robot" }, "status": "DISCREPANCY (score)", "tank_royale": { - "elapsed": 10.0, + "bridge_only_signatures": null, + "elapsed": 26.0, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 14098.0, + "score": 2903.0, "scores": [ - 7311.0, - 6787.0 + 1805.0, + 1098.0 ], "skipped": null } @@ -45569,65 +107092,117 @@ ], "status": "score-review" }, - "roborumble/bayen.nano.Squirrel_0.2.jar": { + "roborumble/kneels.nano.Derp_0.2.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "bayen.nano.Squirrel 0.2", + "classic_selected": "kneels.nano.Derp 0.2", "division": "roborumble", - "jar": "bayen.nano.Squirrel_0.2.jar", - "jar_sha256": "5207b14349401cf529947785f203d80e0bd5d21c2e42672ef6585686caa74e7f", - "key": "roborumble/bayen.nano.Squirrel_0.2.jar", + "jar": "kneels.nano.Derp_0.2.jar", + "jar_sha256": "a7d4b85627bde12745484df0fcff7088a2c626c4e8f6c9588c84bb87c1e88c1c", + "key": "roborumble/kneels.nano.Derp_0.2.jar", "kind": "robot" }, - "latest_observation": "6fcfbf55b4d8ff5c", + "latest_observation": "cd4748fb78080dd6", "observations": [ { "classic": { - "elapsed": 2.8, - "error_count": 0, - "errors": [], - "has_log": false, + "elapsed": 2.6, + "error_count": 48, + "error_signatures": [ + { + "exception": "java.lang.StringIndexOutOfBoundsException", + "origin": "kneels.nano.Derp.onScannedRobot" + } + ], + "errors": [ + "SYSTEM: java.lang.StringIndexOutOfBoundsException occurred on robocode.ScannedRobotEvent", + "java.lang.StringIndexOutOfBoundsException: String index out of range: 16", + "SYSTEM: java.lang.StringIndexOutOfBoundsException occurred on robocode.ScannedRobotEvent", + "java.lang.StringIndexOutOfBoundsException: String index out of range: 17", + "SYSTEM: java.lang.StringIndexOutOfBoundsException occurred on robocode.ScannedRobotEvent", + "java.lang.StringIndexOutOfBoundsException: String index out of range: 18", + "SYSTEM: java.lang.StringIndexOutOfBoundsException occurred on robocode.ScannedRobotEvent", + "java.lang.StringIndexOutOfBoundsException: String index out of range: 19", + "SYSTEM: java.lang.StringIndexOutOfBoundsException occurred on robocode.ScannedRobotEvent", + "java.lang.StringIndexOutOfBoundsException: String index out of range: 20", + "SYSTEM: java.lang.StringIndexOutOfBoundsException occurred on robocode.ScannedRobotEvent", + "java.lang.StringIndexOutOfBoundsException: String index out of range: 21", + "SYSTEM: java.lang.StringIndexOutOfBoundsException occurred on robocode.ScannedRobotEvent", + "java.lang.StringIndexOutOfBoundsException: String index out of range: 22", + "SYSTEM: java.lang.StringIndexOutOfBoundsException occurred on robocode.ScannedRobotEvent", + "java.lang.StringIndexOutOfBoundsException: String index out of range: 23", + "SYSTEM: java.lang.StringIndexOutOfBoundsException occurred on robocode.ScannedRobotEvent", + "java.lang.StringIndexOutOfBoundsException: String index out of range: 24", + "SYSTEM: java.lang.StringIndexOutOfBoundsException occurred on robocode.ScannedRobotEvent", + "java.lang.StringIndexOutOfBoundsException: String index out of range: 25", + "SYSTEM: java.lang.StringIndexOutOfBoundsException occurred on robocode.ScannedRobotEvent", + "java.lang.StringIndexOutOfBoundsException: String index out of range: 26", + "SYSTEM: java.lang.StringIndexOutOfBoundsException occurred on robocode.ScannedRobotEvent", + "java.lang.StringIndexOutOfBoundsException: String index out of range: 27", + "SYSTEM: java.lang.StringIndexOutOfBoundsException occurred on robocode.ScannedRobotEvent", + "java.lang.StringIndexOutOfBoundsException: String index out of range: 16", + "SYSTEM: java.lang.StringIndexOutOfBoundsException occurred on robocode.ScannedRobotEvent", + "java.lang.StringIndexOutOfBoundsException: String index out of range: 17", + "SYSTEM: java.lang.StringIndexOutOfBoundsException occurred on robocode.ScannedRobotEvent", + "java.lang.StringIndexOutOfBoundsException: String index out of range: 18", + "SYSTEM: java.lang.StringIndexOutOfBoundsException occurred on robocode.ScannedRobotEvent", + "java.lang.StringIndexOutOfBoundsException: String index out of range: 19", + "SYSTEM: java.lang.StringIndexOutOfBoundsException occurred on robocode.ScannedRobotEvent", + "java.lang.StringIndexOutOfBoundsException: String index out of range: 20", + "SYSTEM: java.lang.StringIndexOutOfBoundsException occurred on robocode.ScannedRobotEvent", + "java.lang.StringIndexOutOfBoundsException: String index out of range: 21", + "SYSTEM: java.lang.StringIndexOutOfBoundsException occurred on robocode.ScannedRobotEvent", + "java.lang.StringIndexOutOfBoundsException: String index out of range: 22", + "SYSTEM: java.lang.StringIndexOutOfBoundsException occurred on robocode.ScannedRobotEvent", + "java.lang.StringIndexOutOfBoundsException: String index out of range: 23", + "SYSTEM: java.lang.StringIndexOutOfBoundsException occurred on robocode.ScannedRobotEvent", + "java.lang.StringIndexOutOfBoundsException: String index out of range: 24", + "SYSTEM: java.lang.StringIndexOutOfBoundsException occurred on robocode.ScannedRobotEvent", + "java.lang.StringIndexOutOfBoundsException: String index out of range: 25", + "SYSTEM: java.lang.StringIndexOutOfBoundsException occurred on robocode.ScannedRobotEvent", + "java.lang.StringIndexOutOfBoundsException: String index out of range: 26", + "SYSTEM: java.lang.StringIndexOutOfBoundsException occurred on robocode.ScannedRobotEvent", + "java.lang.StringIndexOutOfBoundsException: String index out of range: 27" + ], + "has_log": true, "ok": true, - "score": 4209.0, + "score": 5182.0, "scores": [ - 2194.0, - 2015.0 + 2595.0, + 2587.0 ], - "selected": "bayen.nano.Squirrel 0.2" + "selected": "kneels.nano.Derp 0.2" }, - "completed_at": "2026-09-08T20:50:00Z", - "delta_pct": -19.4, - "id": "6fcfbf55b4d8ff5c", + "completed_at": "2026-09-12T22:02:35Z", + "confirmation": null, + "delta_pct": -29.9, + "id": "cd4748fb78080dd6", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "07f66a1a2edceb2ac5f9350254c039775e045ebd", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -45635,90 +107210,110 @@ "width": 800 }, "source_identity": { - "classic_selected": "bayen.nano.Squirrel 0.2", + "classic_selected": "kneels.nano.Derp 0.2", "division": "roborumble", - "jar": "bayen.nano.Squirrel_0.2.jar", - "jar_sha256": "5207b14349401cf529947785f203d80e0bd5d21c2e42672ef6585686caa74e7f", - "key": "roborumble/bayen.nano.Squirrel_0.2.jar", + "jar": "kneels.nano.Derp_0.2.jar", + "jar_sha256": "a7d4b85627bde12745484df0fcff7088a2c626c4e8f6c9588c84bb87c1e88c1c", + "key": "roborumble/kneels.nano.Derp_0.2.jar", "kind": "robot" }, - "status": "PASS", + "status": "DISCREPANCY (score)", "tank_royale": { - "elapsed": 18.0, - "error_count": 0, - "errors": [], - "has_log": false, + "bridge_only_signatures": null, + "elapsed": 14.0, + "error_count": 14, + "error_signatures": [ + { + "exception": "java.lang.StringIndexOutOfBoundsException", + "origin": "kneels.nano.Derp.onScannedRobot" + } + ], + "errors": [ + "java.lang.StringIndexOutOfBoundsException: String index out of range: 16", + "java.lang.StringIndexOutOfBoundsException: String index out of range: 17", + "java.lang.StringIndexOutOfBoundsException: String index out of range: 18", + "java.lang.StringIndexOutOfBoundsException: String index out of range: 19", + "java.lang.StringIndexOutOfBoundsException: String index out of range: 20", + "java.lang.StringIndexOutOfBoundsException: String index out of range: 21", + "java.lang.StringIndexOutOfBoundsException: String index out of range: 22", + "java.lang.StringIndexOutOfBoundsException: String index out of range: 16", + "java.lang.StringIndexOutOfBoundsException: String index out of range: 17", + "java.lang.StringIndexOutOfBoundsException: String index out of range: 18", + "java.lang.StringIndexOutOfBoundsException: String index out of range: 19", + "java.lang.StringIndexOutOfBoundsException: String index out of range: 20", + "java.lang.StringIndexOutOfBoundsException: String index out of range: 21", + "java.lang.StringIndexOutOfBoundsException: String index out of range: 22" + ], + "has_log": true, "ok": true, - "score": 3391.0, + "score": 3634.0, "scores": [ - 2033.0, - 1358.0 + 1877.0, + 1757.0 ], "skipped": null } } ], - "status": "PASS" + "status": "score-review" }, - "roborumble/bayen.nut.Squirrel_1.621.jar": { + "roborumble/krillr.mega.Psyche_0.0.3.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "bayen.nut.Squirrel 1.621", + "classic_selected": "krillr.mega.Psyche 0.0.3", "division": "roborumble", - "jar": "bayen.nut.Squirrel_1.621.jar", - "jar_sha256": "a5a1b82535752ee271c91cdec18f433e21dcfe1efc46ed4001bed116eeca1f76", - "key": "roborumble/bayen.nut.Squirrel_1.621.jar", + "jar": "krillr.mega.Psyche_0.0.3.jar", + "jar_sha256": "843e33621f73b105c46c993abc96938a119d5595cffc3f5a965067cd5f310cf1", + "key": "roborumble/krillr.mega.Psyche_0.0.3.jar", "kind": "robot" }, - "latest_observation": "517b1c7cec309414", + "latest_observation": "3809aeaf0c65634c", "observations": [ { "classic": { - "elapsed": 4.4, + "elapsed": 3.6, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 5175.0, + "score": 5123.0, "scores": [ - 2188.0, - 2987.0 + 2909.0, + 2214.0 ], - "selected": "bayen.nut.Squirrel 1.621" + "selected": "krillr.mega.Psyche 0.0.3" }, - "completed_at": "2026-09-08T20:50:40Z", - "delta_pct": -100.0, - "id": "517b1c7cec309414", + "completed_at": "2026-09-12T22:04:25Z", + "confirmation": null, + "delta_pct": -9.1, + "id": "3809aeaf0c65634c", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "07f66a1a2edceb2ac5f9350254c039775e045ebd", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -45726,90 +107321,90 @@ "width": 800 }, "source_identity": { - "classic_selected": "bayen.nut.Squirrel 1.621", + "classic_selected": "krillr.mega.Psyche 0.0.3", "division": "roborumble", - "jar": "bayen.nut.Squirrel_1.621.jar", - "jar_sha256": "a5a1b82535752ee271c91cdec18f433e21dcfe1efc46ed4001bed116eeca1f76", - "key": "roborumble/bayen.nut.Squirrel_1.621.jar", + "jar": "krillr.mega.Psyche_0.0.3.jar", + "jar_sha256": "843e33621f73b105c46c993abc96938a119d5595cffc3f5a965067cd5f310cf1", + "key": "roborumble/krillr.mega.Psyche_0.0.3.jar", "kind": "robot" }, - "status": "DISCREPANCY (score)", + "status": "PASS", "tank_royale": { - "elapsed": 36.0, + "bridge_only_signatures": null, + "elapsed": 20.2, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 0.0, + "score": 4657.0, "scores": [ - 0.0, - 0.0 + 2339.0, + 2318.0 ], "skipped": null } } ], - "status": "score-review" + "status": "PASS" }, - "roborumble/bbo.RamboT_0.3.jar": { + "roborumble/krillr.mini.JointStrike_2.0.0.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "bbo.RamboT 0.3", + "classic_selected": "krillr.mini.JointStrike 2.0.0", "division": "roborumble", - "jar": "bbo.RamboT_0.3.jar", - "jar_sha256": "3c933f89750dfd882f03844f5fc83ae4bf36d5a6baca855251417b4a1457e6ed", - "key": "roborumble/bbo.RamboT_0.3.jar", + "jar": "krillr.mini.JointStrike_2.0.0.jar", + "jar_sha256": "752e6bfbd2ec642aa6e3a78eeb6e8ad4da60a7cf7d88b829da6c7cafc417bca9", + "key": "roborumble/krillr.mini.JointStrike_2.0.0.jar", "kind": "robot" }, - "latest_observation": "df99f8a1d6c00d7e", + "latest_observation": "cd44968f3f411b9a", "observations": [ { "classic": { - "elapsed": 2.5, + "elapsed": 2.7, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 9366.0, + "score": 5145.0, "scores": [ - 4626.0, - 4740.0 + 2029.0, + 3116.0 ], - "selected": "bbo.RamboT 0.3" + "selected": "krillr.mini.JointStrike 2.0.0" }, - "completed_at": "2026-09-08T20:51:30Z", - "delta_pct": 22.4, - "id": "df99f8a1d6c00d7e", + "completed_at": "2026-09-12T22:04:46Z", + "confirmation": null, + "delta_pct": -10.0, + "id": "cd44968f3f411b9a", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "07f66a1a2edceb2ac5f9350254c039775e045ebd", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -45817,24 +107412,26 @@ "width": 800 }, "source_identity": { - "classic_selected": "bbo.RamboT 0.3", + "classic_selected": "krillr.mini.JointStrike 2.0.0", "division": "roborumble", - "jar": "bbo.RamboT_0.3.jar", - "jar_sha256": "3c933f89750dfd882f03844f5fc83ae4bf36d5a6baca855251417b4a1457e6ed", - "key": "roborumble/bbo.RamboT_0.3.jar", + "jar": "krillr.mini.JointStrike_2.0.0.jar", + "jar_sha256": "752e6bfbd2ec642aa6e3a78eeb6e8ad4da60a7cf7d88b829da6c7cafc417bca9", + "key": "roborumble/krillr.mini.JointStrike_2.0.0.jar", "kind": "robot" }, "status": "PASS", "tank_royale": { - "elapsed": 14.0, + "bridge_only_signatures": null, + "elapsed": 18.1, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 11461.0, + "score": 4630.0, "scores": [ - 6133.0, - 5328.0 + 2599.0, + 2031.0 ], "skipped": null } @@ -45842,65 +107439,63 @@ ], "status": "PASS" }, - "roborumble/bbo.TheRoof_1.4.3.jar": { + "roborumble/kronenthaler.Basilisk_1.0.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "bbo.TheRoof 1.4.3", + "classic_selected": "kronenthaler.Basilisk 1.0", "division": "roborumble", - "jar": "bbo.TheRoof_1.4.3.jar", - "jar_sha256": "0d3aac41de0b798e76e684b60756f8fb8318c5c5dcf890f26ecfb8bea6d01076", - "key": "roborumble/bbo.TheRoof_1.4.3.jar", + "jar": "kronenthaler.Basilisk_1.0.jar", + "jar_sha256": "303ca7f685da16603f72cdf3e4905b949d16f37fc8b599777336148c92e5d750", + "key": "roborumble/kronenthaler.Basilisk_1.0.jar", "kind": "robot" }, - "latest_observation": "39adaf77fb8fca87", + "latest_observation": "6b8d1c60aef70f89", "observations": [ { "classic": { - "elapsed": 2.5, + "elapsed": 3.7, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 5240.0, + "score": 4776.0, "scores": [ - 2321.0, - 2919.0 + 2301.0, + 2475.0 ], - "selected": "bbo.TheRoof 1.4.3" + "selected": "kronenthaler.Basilisk 1.0" }, - "completed_at": "2026-09-08T20:51:47Z", - "delta_pct": 4.9, - "id": "39adaf77fb8fca87", + "completed_at": "2026-09-12T22:05:24Z", + "confirmation": null, + "delta_pct": null, + "id": "6b8d1c60aef70f89", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "07f66a1a2edceb2ac5f9350254c039775e045ebd", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -45908,90 +107503,94 @@ "width": 800 }, "source_identity": { - "classic_selected": "bbo.TheRoof 1.4.3", + "classic_selected": "kronenthaler.Basilisk 1.0", "division": "roborumble", - "jar": "bbo.TheRoof_1.4.3.jar", - "jar_sha256": "0d3aac41de0b798e76e684b60756f8fb8318c5c5dcf890f26ecfb8bea6d01076", - "key": "roborumble/bbo.TheRoof_1.4.3.jar", + "jar": "kronenthaler.Basilisk_1.0.jar", + "jar_sha256": "303ca7f685da16603f72cdf3e4905b949d16f37fc8b599777336148c92e5d750", + "key": "roborumble/kronenthaler.Basilisk_1.0.jar", "kind": "robot" }, - "status": "PASS", + "status": "DISCREPANCY (outcome)", "tank_royale": { - "elapsed": 14.0, - "error_count": 0, - "errors": [], - "has_log": false, - "ok": true, - "score": 5495.0, - "scores": [ - 2941.0, - 2554.0 + "bridge_only_signatures": null, + "elapsed": 34.0, + "error_count": 1, + "error_signatures": [ + { + "exception": "dev.robocode.tankroyale.runner.BattleException", + "origin": "TrBattleWorker.runBattle" + } ], + "errors": [ + "FATAL: dev.robocode.tankroyale.runner.BattleException: Bot connect timeout (30000ms): connected 0 of 2. Pending: [Basilisk 1.0 (kronenthaler\t) (\u00d72)]" + ], + "has_log": true, + "ok": false, + "score": null, + "scores": [], "skipped": null } } ], - "status": "PASS" + "status": "DISCREPANCY (outcome)" }, - "roborumble/benhorner.PureAggression_0.2.6.jar": { + "roborumble/krzysiek.robbo2.Robbo_1.0.0.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "benhorner.PureAggression 0.2.6", + "classic_selected": "krzysiek.robbo2.Robbo 1.0.0", "division": "roborumble", - "jar": "benhorner.PureAggression_0.2.6.jar", - "jar_sha256": "ff9129cad35f13a68dc008ab29e71e073ea28ff77fae33dba73846e4da0e041e", - "key": "roborumble/benhorner.PureAggression_0.2.6.jar", + "jar": "krzysiek.robbo2.Robbo_1.0.0.jar", + "jar_sha256": "876bb0035964899ab12c1b206948f4e943ffd3da48899ffe5e49b9733714ca26", + "key": "roborumble/krzysiek.robbo2.Robbo_1.0.0.jar", "kind": "robot" }, - "latest_observation": "ca5a8e78cc56d369", + "latest_observation": "f3397e3639521b5d", "observations": [ { "classic": { - "elapsed": 2.5, + "elapsed": 2.6, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 11194.0, + "score": 6822.0, "scores": [ - 5562.0, - 5632.0 + 3516.0, + 3306.0 ], - "selected": "benhorner.PureAggression 0.2.6" + "selected": "krzysiek.robbo2.Robbo 1.0.0" }, - "completed_at": "2026-09-08T20:51:58Z", - "delta_pct": 17.0, - "id": "ca5a8e78cc56d369", + "completed_at": "2026-09-12T22:05:45Z", + "confirmation": null, + "delta_pct": -5.5, + "id": "f3397e3639521b5d", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "07f66a1a2edceb2ac5f9350254c039775e045ebd", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -45999,24 +107598,26 @@ "width": 800 }, "source_identity": { - "classic_selected": "benhorner.PureAggression 0.2.6", + "classic_selected": "krzysiek.robbo2.Robbo 1.0.0", "division": "roborumble", - "jar": "benhorner.PureAggression_0.2.6.jar", - "jar_sha256": "ff9129cad35f13a68dc008ab29e71e073ea28ff77fae33dba73846e4da0e041e", - "key": "roborumble/benhorner.PureAggression_0.2.6.jar", + "jar": "krzysiek.robbo2.Robbo_1.0.0.jar", + "jar_sha256": "876bb0035964899ab12c1b206948f4e943ffd3da48899ffe5e49b9733714ca26", + "key": "roborumble/krzysiek.robbo2.Robbo_1.0.0.jar", "kind": "robot" }, "status": "PASS", "tank_royale": { - "elapsed": 8.0, + "bridge_only_signatures": null, + "elapsed": 18.0, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 13099.0, + "score": 6444.0, "scores": [ - 6661.0, - 6438.0 + 3234.0, + 3210.0 ], "skipped": null } @@ -46024,65 +107625,63 @@ ], "status": "PASS" }, - "roborumble/bigpete.Stewie_1.0.jar": { + "roborumble/kvk.HebusLeTroll_0.41.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "bigpete.Stewie 1.0", + "classic_selected": "kvk.HebusLeTroll 0.41", "division": "roborumble", - "jar": "bigpete.Stewie_1.0.jar", - "jar_sha256": "743ecaf04844e35915d24a80533652a29adaaf9539955f2178df0ef6148c481d", - "key": "roborumble/bigpete.Stewie_1.0.jar", + "jar": "kvk.HebusLeTroll_0.41.jar", + "jar_sha256": "57766c7b0e6b100680a3348411fef3a8ae52290f0d20cfda33c331b692da4958", + "key": "roborumble/kvk.HebusLeTroll_0.41.jar", "kind": "robot" }, - "latest_observation": "e8b293a979c1c0b4", + "latest_observation": "a603f37930217598", "observations": [ { "classic": { - "elapsed": 2.7, + "elapsed": 2.9, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 5593.0, + "score": 5374.0, "scores": [ - 2575.0, - 3018.0 + 3289.0, + 2085.0 ], - "selected": "bigpete.Stewie 1.0" + "selected": "kvk.HebusLeTroll 0.41" }, - "completed_at": "2026-09-08T20:52:39Z", - "delta_pct": -4.9, - "id": "e8b293a979c1c0b4", + "completed_at": "2026-09-12T22:06:06Z", + "confirmation": null, + "delta_pct": 0.6, + "id": "a603f37930217598", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "07f66a1a2edceb2ac5f9350254c039775e045ebd", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -46090,24 +107689,26 @@ "width": 800 }, "source_identity": { - "classic_selected": "bigpete.Stewie 1.0", + "classic_selected": "kvk.HebusLeTroll 0.41", "division": "roborumble", - "jar": "bigpete.Stewie_1.0.jar", - "jar_sha256": "743ecaf04844e35915d24a80533652a29adaaf9539955f2178df0ef6148c481d", - "key": "roborumble/bigpete.Stewie_1.0.jar", + "jar": "kvk.HebusLeTroll_0.41.jar", + "jar_sha256": "57766c7b0e6b100680a3348411fef3a8ae52290f0d20cfda33c331b692da4958", + "key": "roborumble/kvk.HebusLeTroll_0.41.jar", "kind": "robot" }, "status": "PASS", "tank_royale": { + "bridge_only_signatures": null, "elapsed": 18.0, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 5321.0, + "score": 5406.0, "scores": [ - 2839.0, - 2482.0 + 3022.0, + 2384.0 ], "skipped": null } @@ -46115,65 +107716,63 @@ ], "status": "PASS" }, - "roborumble/bing2.Melody_1.3.1.jar": { + "roborumble/labg.Cataclysm_2.05.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "bing2.Melody 1.3.1", + "classic_selected": "labg.Cataclysm 2.05", "division": "roborumble", - "jar": "bing2.Melody_1.3.1.jar", - "jar_sha256": "3a63316b12e61f4810fdb73e18bb068fb5bc0a78f82a2c9865be1aa22611137a", - "key": "roborumble/bing2.Melody_1.3.1.jar", + "jar": "labg.Cataclysm_2.05.jar", + "jar_sha256": "58d3884b4920b28f5f1af63f7d496712384ceb8b0455919763a3bfb93d851946", + "key": "roborumble/labg.Cataclysm_2.05.jar", "kind": "robot" }, - "latest_observation": "6d5c62b55bd1282c", + "latest_observation": "a9a0290c0e4c2314", "observations": [ { "classic": { - "elapsed": 3.7, + "elapsed": 4.6, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 2848.0, + "score": 5935.0, "scores": [ - 1643.0, - 1205.0 + 2728.0, + 3207.0 ], - "selected": "bing2.Melody 1.3.1" + "selected": "labg.Cataclysm 2.05" }, - "completed_at": "2026-09-08T20:52:59Z", - "delta_pct": 190.3, - "id": "6d5c62b55bd1282c", + "completed_at": "2026-09-12T22:06:35Z", + "confirmation": null, + "delta_pct": -3.7, + "id": "a9a0290c0e4c2314", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "07f66a1a2edceb2ac5f9350254c039775e045ebd", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -46181,90 +107780,90 @@ "width": 800 }, "source_identity": { - "classic_selected": "bing2.Melody 1.3.1", + "classic_selected": "labg.Cataclysm 2.05", "division": "roborumble", - "jar": "bing2.Melody_1.3.1.jar", - "jar_sha256": "3a63316b12e61f4810fdb73e18bb068fb5bc0a78f82a2c9865be1aa22611137a", - "key": "roborumble/bing2.Melody_1.3.1.jar", + "jar": "labg.Cataclysm_2.05.jar", + "jar_sha256": "58d3884b4920b28f5f1af63f7d496712384ceb8b0455919763a3bfb93d851946", + "key": "roborumble/labg.Cataclysm_2.05.jar", "kind": "robot" }, - "status": "DISCREPANCY (score)", + "status": "PASS", "tank_royale": { - "elapsed": 16.0, + "bridge_only_signatures": null, + "elapsed": 24.0, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 8268.0, + "score": 5713.0, "scores": [ - 4299.0, - 3969.0 + 2973.0, + 2740.0 ], "skipped": null } } ], - "status": "score-review" + "status": "PASS" }, - "roborumble/bjl.LoneDragon_0.5.jar": { + "roborumble/lancel.Lynx_1.09.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "bjl.LoneDragon 0.5", + "classic_selected": "lancel.Lynx 1.09", "division": "roborumble", - "jar": "bjl.LoneDragon_0.5.jar", - "jar_sha256": "016175c3d3f7c0522eebac3154f93c65abe35cc57bbdaee04e606f8d023e1efe", - "key": "roborumble/bjl.LoneDragon_0.5.jar", + "jar": "lancel.Lynx_1.09.jar", + "jar_sha256": "a8e549d2f4cf825531916f3bea09c602551944bafc92fcd9a688e704f6eb5b1b", + "key": "roborumble/lancel.Lynx_1.09.jar", "kind": "robot" }, - "latest_observation": "b407ed4b3237d3e7", + "latest_observation": "14c27a857675b4a8", "observations": [ { "classic": { - "elapsed": 7.3, + "elapsed": 5.9, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 5694.0, + "score": 5235.0, "scores": [ - 2412.0, - 3282.0 + 2885.0, + 2350.0 ], - "selected": "bjl.LoneDragon 0.5" + "selected": "lancel.Lynx 1.09" }, - "completed_at": "2026-09-08T20:54:27Z", - "delta_pct": 19.1, - "id": "b407ed4b3237d3e7", + "completed_at": "2026-09-12T22:07:08Z", + "confirmation": null, + "delta_pct": -6.2, + "id": "14c27a857675b4a8", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "07f66a1a2edceb2ac5f9350254c039775e045ebd", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -46272,24 +107871,26 @@ "width": 800 }, "source_identity": { - "classic_selected": "bjl.LoneDragon 0.5", + "classic_selected": "lancel.Lynx 1.09", "division": "roborumble", - "jar": "bjl.LoneDragon_0.5.jar", - "jar_sha256": "016175c3d3f7c0522eebac3154f93c65abe35cc57bbdaee04e606f8d023e1efe", - "key": "roborumble/bjl.LoneDragon_0.5.jar", + "jar": "lancel.Lynx_1.09.jar", + "jar_sha256": "a8e549d2f4cf825531916f3bea09c602551944bafc92fcd9a688e704f6eb5b1b", + "key": "roborumble/lancel.Lynx_1.09.jar", "kind": "robot" }, "status": "PASS", "tank_royale": { - "elapsed": 80.1, + "bridge_only_signatures": null, + "elapsed": 26.0, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 6781.0, + "score": 4913.0, "scores": [ - 3952.0, - 2829.0 + 2856.0, + 2057.0 ], "skipped": null } @@ -46297,65 +107898,63 @@ ], "status": "PASS" }, - "roborumble/bk.Shooter_1.0.jar": { + "roborumble/lazarecki.mega.PinkerStinker_0.7.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "bk.Shooter 1.0", + "classic_selected": "lazarecki.mega.PinkerStinker 0.7", "division": "roborumble", - "jar": "bk.Shooter_1.0.jar", - "jar_sha256": "0dfe57a84edd868ba0517b270c817bfdc9765139b6517fe4c7868110cf9c0e16", - "key": "roborumble/bk.Shooter_1.0.jar", + "jar": "lazarecki.mega.PinkerStinker_0.7.jar", + "jar_sha256": "6924c640accb0f17f1a5aba61905fe49ced403462421bba059fcb90d5e3534f4", + "key": "roborumble/lazarecki.mega.PinkerStinker_0.7.jar", "kind": "robot" }, - "latest_observation": "17eb9124acd74e55", + "latest_observation": "0e61361043708c08", "observations": [ { "classic": { - "elapsed": 3.2, + "elapsed": 3.8, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 7416.0, + "score": 4721.0, "scores": [ - 3476.0, - 3940.0 + 2079.0, + 2642.0 ], - "selected": "bk.Shooter 1.0" + "selected": "lazarecki.mega.PinkerStinker 0.7" }, - "completed_at": "2026-09-08T20:54:58Z", - "delta_pct": -25.3, - "id": "17eb9124acd74e55", + "completed_at": "2026-09-12T22:07:34Z", + "confirmation": null, + "delta_pct": 1.2, + "id": "0e61361043708c08", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "07f66a1a2edceb2ac5f9350254c039775e045ebd", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -46363,90 +107962,90 @@ "width": 800 }, "source_identity": { - "classic_selected": "bk.Shooter 1.0", + "classic_selected": "lazarecki.mega.PinkerStinker 0.7", "division": "roborumble", - "jar": "bk.Shooter_1.0.jar", - "jar_sha256": "0dfe57a84edd868ba0517b270c817bfdc9765139b6517fe4c7868110cf9c0e16", - "key": "roborumble/bk.Shooter_1.0.jar", + "jar": "lazarecki.mega.PinkerStinker_0.7.jar", + "jar_sha256": "6924c640accb0f17f1a5aba61905fe49ced403462421bba059fcb90d5e3534f4", + "key": "roborumble/lazarecki.mega.PinkerStinker_0.7.jar", "kind": "robot" }, - "status": "DISCREPANCY (score)", + "status": "PASS", "tank_royale": { - "elapsed": 28.0, + "bridge_only_signatures": null, + "elapsed": 22.0, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 5541.0, + "score": 4780.0, "scores": [ - 2915.0, - 2626.0 + 2663.0, + 2117.0 ], "skipped": null } } ], - "status": "score-review" + "status": "PASS" }, - "roborumble/blir.micro.blixi.Blixi_1.2.jar": { + "roborumble/leb.ShootAnArrow_0.1.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "blir.micro.blixi.Blixi 1.2", + "classic_selected": "leb.ShootAnArrow 0.1", "division": "roborumble", - "jar": "blir.micro.blixi.Blixi_1.2.jar", - "jar_sha256": "939340a6e589c7bd36ea58fb12018f4f4ee512bbaf8264c0fee5d706e2d6325b", - "key": "roborumble/blir.micro.blixi.Blixi_1.2.jar", + "jar": "leb.ShootAnArrow_0.1.jar", + "jar_sha256": "cda587546a722389d0afcba2e6ea3b46d13699a5d95d528f8e316b9999f94b80", + "key": "roborumble/leb.ShootAnArrow_0.1.jar", "kind": "robot" }, - "latest_observation": "32ac2de21087f5bd", + "latest_observation": "0698c06f0e3f3ad6", "observations": [ { "classic": { - "elapsed": 5.2, + "elapsed": 2.5, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 6468.0, + "score": 5791.0, "scores": [ - 1515.0, - 4953.0 + 3204.0, + 2587.0 ], - "selected": "blir.micro.blixi.Blixi 1.2" + "selected": "leb.ShootAnArrow 0.1" }, - "completed_at": "2026-09-08T20:55:40Z", - "delta_pct": -44.5, - "id": "32ac2de21087f5bd", + "completed_at": "2026-09-12T22:07:53Z", + "confirmation": null, + "delta_pct": -1.9, + "id": "0698c06f0e3f3ad6", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "07f66a1a2edceb2ac5f9350254c039775e045ebd", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -46454,90 +108053,90 @@ "width": 800 }, "source_identity": { - "classic_selected": "blir.micro.blixi.Blixi 1.2", + "classic_selected": "leb.ShootAnArrow 0.1", "division": "roborumble", - "jar": "blir.micro.blixi.Blixi_1.2.jar", - "jar_sha256": "939340a6e589c7bd36ea58fb12018f4f4ee512bbaf8264c0fee5d706e2d6325b", - "key": "roborumble/blir.micro.blixi.Blixi_1.2.jar", + "jar": "leb.ShootAnArrow_0.1.jar", + "jar_sha256": "cda587546a722389d0afcba2e6ea3b46d13699a5d95d528f8e316b9999f94b80", + "key": "roborumble/leb.ShootAnArrow_0.1.jar", "kind": "robot" }, - "status": "DISCREPANCY (score)", + "status": "PASS", "tank_royale": { - "elapsed": 36.0, + "bridge_only_signatures": null, + "elapsed": 16.0, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 3589.0, + "score": 5683.0, "scores": [ - 1820.0, - 1769.0 + 3091.0, + 2592.0 ], "skipped": null } } ], - "status": "score-review" + "status": "PASS" }, - "roborumble/blir.mini.oops.Splooshlu_2.0.jar": { + "roborumble/lechu.Ala_0.0.4.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "blir.mini.oops.Splooshlu 2.0", + "classic_selected": "lechu.Ala 0.0.4", "division": "roborumble", - "jar": "blir.mini.oops.Splooshlu_2.0.jar", - "jar_sha256": "43d728428624085e09e6bd3fa34ae9ed864b4d056959c207b3daa20c0ad6e42b", - "key": "roborumble/blir.mini.oops.Splooshlu_2.0.jar", + "jar": "lechu.Ala_0.0.4.jar", + "jar_sha256": "54a2d505e67b6a7393ed4ba00763754fa4c2e96f6435437a5c651732ca8b29a3", + "key": "roborumble/lechu.Ala_0.0.4.jar", "kind": "robot" }, - "latest_observation": "9d2209ef822252f0", + "latest_observation": "59668a0f570ebada", "observations": [ { "classic": { - "elapsed": 4.1, + "elapsed": 9.5, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 5726.0, + "score": 6034.0, "scores": [ - 2882.0, - 2844.0 + 2603.0, + 3431.0 ], - "selected": "blir.mini.oops.Splooshlu 2.0" + "selected": "lechu.Ala 0.0.4" }, - "completed_at": "2026-09-08T20:56:40Z", - "delta_pct": -19.6, - "id": "9d2209ef822252f0", + "completed_at": "2026-09-12T22:08:47Z", + "confirmation": null, + "delta_pct": -5.2, + "id": "59668a0f570ebada", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "07f66a1a2edceb2ac5f9350254c039775e045ebd", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -46545,24 +108144,26 @@ "width": 800 }, "source_identity": { - "classic_selected": "blir.mini.oops.Splooshlu 2.0", + "classic_selected": "lechu.Ala 0.0.4", "division": "roborumble", - "jar": "blir.mini.oops.Splooshlu_2.0.jar", - "jar_sha256": "43d728428624085e09e6bd3fa34ae9ed864b4d056959c207b3daa20c0ad6e42b", - "key": "roborumble/blir.mini.oops.Splooshlu_2.0.jar", + "jar": "lechu.Ala_0.0.4.jar", + "jar_sha256": "54a2d505e67b6a7393ed4ba00763754fa4c2e96f6435437a5c651732ca8b29a3", + "key": "roborumble/lechu.Ala_0.0.4.jar", "kind": "robot" }, "status": "PASS", "tank_royale": { - "elapsed": 56.1, + "bridge_only_signatures": null, + "elapsed": 44.0, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 4604.0, + "score": 5723.0, "scores": [ - 2341.0, - 2263.0 + 2897.0, + 2826.0 ], "skipped": null } @@ -46570,65 +108171,63 @@ ], "status": "PASS" }, - "roborumble/blir.nano.Bruce_R1.0.0.jar": { + "roborumble/lechu.Lechu_1.1.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "blir.nano.Bruce R1.0.0", + "classic_selected": "lechu.Lechu 1.1", "division": "roborumble", - "jar": "blir.nano.Bruce_R1.0.0.jar", - "jar_sha256": "380d1895fca7181874921c6b8735c9659ea3cb6e5d35d42799bab523dfdd1bae", - "key": "roborumble/blir.nano.Bruce_R1.0.0.jar", + "jar": "lechu.Lechu_1.1.jar", + "jar_sha256": "8533375040b9f858e480b423fff413460f20519ea11b41aeb0c1fae2367e3d0d", + "key": "roborumble/lechu.Lechu_1.1.jar", "kind": "robot" }, - "latest_observation": "e98608d4efb99503", + "latest_observation": "f47bc92c4d2ff2ae", "observations": [ { "classic": { - "elapsed": 2.4, + "elapsed": 3.1, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 12737.0, + "score": 634.0, "scores": [ - 6532.0, - 6205.0 + 482.0, + 152.0 ], - "selected": "blir.nano.Bruce R1.0.0" + "selected": "lechu.Lechu 1.1" }, - "completed_at": "2026-09-08T20:56:55Z", - "delta_pct": -3.5, - "id": "e98608d4efb99503", + "completed_at": "2026-09-12T22:09:14Z", + "confirmation": null, + "delta_pct": 261.8, + "id": "f47bc92c4d2ff2ae", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "07f66a1a2edceb2ac5f9350254c039775e045ebd", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -46636,90 +108235,90 @@ "width": 800 }, "source_identity": { - "classic_selected": "blir.nano.Bruce R1.0.0", + "classic_selected": "lechu.Lechu 1.1", "division": "roborumble", - "jar": "blir.nano.Bruce_R1.0.0.jar", - "jar_sha256": "380d1895fca7181874921c6b8735c9659ea3cb6e5d35d42799bab523dfdd1bae", - "key": "roborumble/blir.nano.Bruce_R1.0.0.jar", + "jar": "lechu.Lechu_1.1.jar", + "jar_sha256": "8533375040b9f858e480b423fff413460f20519ea11b41aeb0c1fae2367e3d0d", + "key": "roborumble/lechu.Lechu_1.1.jar", "kind": "robot" }, - "status": "PASS", + "status": "DISCREPANCY (score)", "tank_royale": { - "elapsed": 12.0, + "bridge_only_signatures": null, + "elapsed": 24.0, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 12287.0, + "score": 2294.0, "scores": [ - 6420.0, - 5867.0 + 1158.0, + 1136.0 ], "skipped": null } } ], - "status": "PASS" + "status": "score-review" }, - "roborumble/blir.nano.Cabbage_R1.0.1.jar": { + "roborumble/lessonz.robocode.Oz_0.5.0.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "blir.nano.Cabbage R1.0.1", + "classic_selected": "lessonz.robocode.Oz 0.5.0", "division": "roborumble", - "jar": "blir.nano.Cabbage_R1.0.1.jar", - "jar_sha256": "6048d93ca6c18440d2442930806a4edb783d6bc3e7b019f324fad7aebaccb222", - "key": "roborumble/blir.nano.Cabbage_R1.0.1.jar", + "jar": "lessonz.robocode.Oz_0.5.0.jar", + "jar_sha256": "4bd0078e14471f94a515e4d44b806a4e5cca3d65f75dc004d85ed802f25806fa", + "key": "roborumble/lessonz.robocode.Oz_0.5.0.jar", "kind": "robot" }, - "latest_observation": "14e36192003c6140", + "latest_observation": "3f66cee1b6bf3c7a", "observations": [ { "classic": { - "elapsed": 3.0, + "elapsed": 3.8, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 1399.0, + "score": 6231.0, "scores": [ - 510.0, - 889.0 + 2989.0, + 3242.0 ], - "selected": "blir.nano.Cabbage R1.0.1" + "selected": "lessonz.robocode.Oz 0.5.0" }, - "completed_at": "2026-09-08T20:57:18Z", - "delta_pct": 111.9, - "id": "14e36192003c6140", + "completed_at": "2026-09-12T22:11:49Z", + "confirmation": null, + "delta_pct": -38.9, + "id": "3f66cee1b6bf3c7a", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "3bcf7518cd5a07d1296e256ea4e102f9e3eabe38", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -46727,24 +108326,26 @@ "width": 800 }, "source_identity": { - "classic_selected": "blir.nano.Cabbage R1.0.1", + "classic_selected": "lessonz.robocode.Oz 0.5.0", "division": "roborumble", - "jar": "blir.nano.Cabbage_R1.0.1.jar", - "jar_sha256": "6048d93ca6c18440d2442930806a4edb783d6bc3e7b019f324fad7aebaccb222", - "key": "roborumble/blir.nano.Cabbage_R1.0.1.jar", + "jar": "lessonz.robocode.Oz_0.5.0.jar", + "jar_sha256": "4bd0078e14471f94a515e4d44b806a4e5cca3d65f75dc004d85ed802f25806fa", + "key": "roborumble/lessonz.robocode.Oz_0.5.0.jar", "kind": "robot" }, "status": "DISCREPANCY (score)", "tank_royale": { - "elapsed": 20.0, + "bridge_only_signatures": null, + "elapsed": 32.0, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 2965.0, + "score": 3805.0, "scores": [ - 1677.0, - 1288.0 + 2023.0, + 1782.0 ], "skipped": null } @@ -46752,65 +108353,63 @@ ], "status": "score-review" }, - "roborumble/blir.nano.inch.Inchworm_1.0.jar": { + "roborumble/lion.Kresnanano_1.0.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "blir.nano.inch.Inchworm 1.0", + "classic_selected": "lion.Kresnanano 1.0", "division": "roborumble", - "jar": "blir.nano.inch.Inchworm_1.0.jar", - "jar_sha256": "168c6b33a9c90cd70b268369ed7aedb8773e1f04c3b99382fcd2cf98d5b49bd4", - "key": "roborumble/blir.nano.inch.Inchworm_1.0.jar", + "jar": "lion.Kresnanano_1.0.jar", + "jar_sha256": "cce45a74564ff8b9d8920955b54b0857fd3dcb4b16b070d3d236a6c519525c98", + "key": "roborumble/lion.Kresnanano_1.0.jar", "kind": "robot" }, - "latest_observation": "7bd4cdf08768932e", + "latest_observation": "48ed3b0e1c077d70", "observations": [ { "classic": { "elapsed": 2.7, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 7657.0, + "score": 4834.0, "scores": [ - 3538.0, - 4119.0 + 2429.0, + 2405.0 ], - "selected": "blir.nano.inch.Inchworm 1.0" + "selected": "lion.Kresnanano 1.0" }, - "completed_at": "2026-09-08T20:57:41Z", - "delta_pct": -20.5, - "id": "7bd4cdf08768932e", + "completed_at": "2026-09-12T22:12:10Z", + "confirmation": null, + "delta_pct": 0.9, + "id": "48ed3b0e1c077d70", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "3bcf7518cd5a07d1296e256ea4e102f9e3eabe38", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -46818,24 +108417,26 @@ "width": 800 }, "source_identity": { - "classic_selected": "blir.nano.inch.Inchworm 1.0", + "classic_selected": "lion.Kresnanano 1.0", "division": "roborumble", - "jar": "blir.nano.inch.Inchworm_1.0.jar", - "jar_sha256": "168c6b33a9c90cd70b268369ed7aedb8773e1f04c3b99382fcd2cf98d5b49bd4", - "key": "roborumble/blir.nano.inch.Inchworm_1.0.jar", + "jar": "lion.Kresnanano_1.0.jar", + "jar_sha256": "cce45a74564ff8b9d8920955b54b0857fd3dcb4b16b070d3d236a6c519525c98", + "key": "roborumble/lion.Kresnanano_1.0.jar", "kind": "robot" }, "status": "PASS", "tank_royale": { - "elapsed": 20.0, + "bridge_only_signatures": null, + "elapsed": 18.0, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 6088.0, + "score": 4878.0, "scores": [ - 3161.0, - 2927.0 + 2483.0, + 2395.0 ], "skipped": null } @@ -46843,65 +108444,63 @@ ], "status": "PASS" }, - "roborumble/blr.Chicken001_0.1.jar": { + "roborumble/lk.nano.Avesnar_1.1.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "blr.Chicken001 0.1", + "classic_selected": "lk.nano.Avesnar 1.1", "division": "roborumble", - "jar": "blr.Chicken001_0.1.jar", - "jar_sha256": "b60dc3905b4861b427dae9e16d964f3978947773e5f9c3e5ae32f7c4182f976e", - "key": "roborumble/blr.Chicken001_0.1.jar", + "jar": "lk.nano.Avesnar_1.1.jar", + "jar_sha256": "5e93a830aad46fd45eac1ecdd0774b6b0bb8246b96a6a199609a0c78a08fc44a", + "key": "roborumble/lk.nano.Avesnar_1.1.jar", "kind": "robot" }, - "latest_observation": "fa1b7716484381ca", + "latest_observation": "43dd6d385a5afa38", "observations": [ { "classic": { "elapsed": 2.6, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 10637.0, + "score": 4747.0, "scores": [ - 5565.0, - 5072.0 + 2107.0, + 2640.0 ], - "selected": "blr.Chicken001 0.1" + "selected": "lk.nano.Avesnar 1.1" }, - "completed_at": "2026-09-08T20:58:00Z", - "delta_pct": -5.1, - "id": "fa1b7716484381ca", + "completed_at": "2026-09-12T22:12:25Z", + "confirmation": null, + "delta_pct": -45.9, + "id": "43dd6d385a5afa38", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "3bcf7518cd5a07d1296e256ea4e102f9e3eabe38", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -46909,90 +108508,90 @@ "width": 800 }, "source_identity": { - "classic_selected": "blr.Chicken001 0.1", + "classic_selected": "lk.nano.Avesnar 1.1", "division": "roborumble", - "jar": "blr.Chicken001_0.1.jar", - "jar_sha256": "b60dc3905b4861b427dae9e16d964f3978947773e5f9c3e5ae32f7c4182f976e", - "key": "roborumble/blr.Chicken001_0.1.jar", + "jar": "lk.nano.Avesnar_1.1.jar", + "jar_sha256": "5e93a830aad46fd45eac1ecdd0774b6b0bb8246b96a6a199609a0c78a08fc44a", + "key": "roborumble/lk.nano.Avesnar_1.1.jar", "kind": "robot" }, - "status": "PASS", + "status": "DISCREPANCY (score)", "tank_royale": { - "elapsed": 16.1, + "bridge_only_signatures": null, + "elapsed": 12.0, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 10090.0, + "score": 2568.0, "scores": [ - 5323.0, - 4767.0 + 1520.0, + 1048.0 ], "skipped": null } } ], - "status": "PASS" + "status": "score-review" }, - "roborumble/bndl.LostLion_1.2.jar": { + "roborumble/lmk.ACPFinal_0.2.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "bndl.LostLion 1.2", + "classic_selected": "lmk.ACPFinal 0.2", "division": "roborumble", - "jar": "bndl.LostLion_1.2.jar", - "jar_sha256": "991c707bd0af71a46d5fc34e4a34b0df2267f0ffc06567cdfaebfbea87f80cc2", - "key": "roborumble/bndl.LostLion_1.2.jar", + "jar": "lmk.ACPFinal_0.2.jar", + "jar_sha256": "6c4ab43731dcd0f838a10fcdb97cefbfccde6e4d37902fe9cb49d9790222aa3e", + "key": "roborumble/lmk.ACPFinal_0.2.jar", "kind": "robot" }, - "latest_observation": "1a29913b8f87ac3a", + "latest_observation": "c387423c5cc4d80c", "observations": [ { "classic": { - "elapsed": 17.4, + "elapsed": 3.0, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 6370.0, + "score": 8056.0, "scores": [ - 3271.0, - 3099.0 + 4454.0, + 3602.0 ], - "selected": "bndl.LostLion 1.2" + "selected": "lmk.ACPFinal 0.2" }, - "completed_at": "2026-09-08T20:58:46Z", - "delta_pct": -6.4, - "id": "1a29913b8f87ac3a", + "completed_at": "2026-09-12T22:12:46Z", + "confirmation": null, + "delta_pct": 5.8, + "id": "c387423c5cc4d80c", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "3bcf7518cd5a07d1296e256ea4e102f9e3eabe38", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -47000,24 +108599,26 @@ "width": 800 }, "source_identity": { - "classic_selected": "bndl.LostLion 1.2", + "classic_selected": "lmk.ACPFinal 0.2", "division": "roborumble", - "jar": "bndl.LostLion_1.2.jar", - "jar_sha256": "991c707bd0af71a46d5fc34e4a34b0df2267f0ffc06567cdfaebfbea87f80cc2", - "key": "roborumble/bndl.LostLion_1.2.jar", + "jar": "lmk.ACPFinal_0.2.jar", + "jar_sha256": "6c4ab43731dcd0f838a10fcdb97cefbfccde6e4d37902fe9cb49d9790222aa3e", + "key": "roborumble/lmk.ACPFinal_0.2.jar", "kind": "robot" }, "status": "PASS", "tank_royale": { - "elapsed": 28.0, + "bridge_only_signatures": null, + "elapsed": 18.1, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 5961.0, + "score": 8521.0, "scores": [ - 3239.0, - 2722.0 + 4495.0, + 4026.0 ], "skipped": null } @@ -47025,65 +108626,63 @@ ], "status": "PASS" }, - "roborumble/boe.Minerva_0.80.jar": { + "roborumble/logiblocs.Fire_1.0.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "boe.Minerva 0.80", + "classic_selected": "logiblocs.Fire 1.0", "division": "roborumble", - "jar": "boe.Minerva_0.80.jar", - "jar_sha256": "79dd5b1ad699fe82fc423f2a35d3264fd460c787fef7c528a9f897d88365a5d6", - "key": "roborumble/boe.Minerva_0.80.jar", + "jar": "logiblocs.Fire_1.0.jar", + "jar_sha256": "e7999754905f742a89d3b91a1574c3427f590262768b51c8c40088a7c387a3e6", + "key": "roborumble/logiblocs.Fire_1.0.jar", "kind": "robot" }, - "latest_observation": "8205a7ec0f3730f8", + "latest_observation": "4a263e819ee273fa", "observations": [ { "classic": { - "elapsed": 9.6, + "elapsed": 2.8, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 6318.0, + "score": 1486.0, "scores": [ - 3360.0, - 2958.0 + 610.0, + 876.0 ], - "selected": "boe.Minerva 0.80" + "selected": "logiblocs.Fire 1.0" }, - "completed_at": "2026-09-08T20:59:20Z", - "delta_pct": -9.3, - "id": "8205a7ec0f3730f8", + "completed_at": "2026-09-12T22:13:32Z", + "confirmation": null, + "delta_pct": 138.2, + "id": "4a263e819ee273fa", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "3bcf7518cd5a07d1296e256ea4e102f9e3eabe38", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -47091,90 +108690,90 @@ "width": 800 }, "source_identity": { - "classic_selected": "boe.Minerva 0.80", + "classic_selected": "logiblocs.Fire 1.0", "division": "roborumble", - "jar": "boe.Minerva_0.80.jar", - "jar_sha256": "79dd5b1ad699fe82fc423f2a35d3264fd460c787fef7c528a9f897d88365a5d6", - "key": "roborumble/boe.Minerva_0.80.jar", + "jar": "logiblocs.Fire_1.0.jar", + "jar_sha256": "e7999754905f742a89d3b91a1574c3427f590262768b51c8c40088a7c387a3e6", + "key": "roborumble/logiblocs.Fire_1.0.jar", "kind": "robot" }, - "status": "PASS", + "status": "DISCREPANCY (score)", "tank_royale": { - "elapsed": 24.2, + "bridge_only_signatures": null, + "elapsed": 20.0, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 5732.0, + "score": 3539.0, "scores": [ - 3019.0, - 2713.0 + 1845.0, + 1694.0 ], "skipped": null } } ], - "status": "PASS" + "status": "score-review" }, - "roborumble/bons.NanoStalker_1.2.jar": { + "roborumble/logiblocs.SittingDroid_1.0.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "bons.NanoStalker 1.2", + "classic_selected": "logiblocs.SittingDroid 1.0", "division": "roborumble", - "jar": "bons.NanoStalker_1.2.jar", - "jar_sha256": "25169213aa301260dbe320aab5011618b95dd7283102fc6272cdd2e5afdc0936", - "key": "roborumble/bons.NanoStalker_1.2.jar", + "jar": "logiblocs.SittingDroid_1.0.jar", + "jar_sha256": "e70415ac11e28151624b309c1006aab3dc7285e36083d6d5b98e3c31977c763c", + "key": "roborumble/logiblocs.SittingDroid_1.0.jar", "kind": "robot" }, - "latest_observation": "73559040c308ecc0", + "latest_observation": "aad8e7c68a03e5dd", "observations": [ { "classic": { - "elapsed": 2.4, + "elapsed": 3.8, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 7639.0, + "score": 0.0, "scores": [ - 3715.0, - 3924.0 + 0.0, + 0.0 ], - "selected": "bons.NanoStalker 1.2" + "selected": "logiblocs.SittingDroid 1.0" }, - "completed_at": "2026-09-08T20:59:33Z", - "delta_pct": -62.6, - "id": "73559040c308ecc0", + "completed_at": "2026-09-12T22:14:08Z", + "confirmation": null, + "delta_pct": null, + "id": "aad8e7c68a03e5dd", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "3bcf7518cd5a07d1296e256ea4e102f9e3eabe38", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -47182,90 +108781,90 @@ "width": 800 }, "source_identity": { - "classic_selected": "bons.NanoStalker 1.2", + "classic_selected": "logiblocs.SittingDroid 1.0", "division": "roborumble", - "jar": "bons.NanoStalker_1.2.jar", - "jar_sha256": "25169213aa301260dbe320aab5011618b95dd7283102fc6272cdd2e5afdc0936", - "key": "roborumble/bons.NanoStalker_1.2.jar", + "jar": "logiblocs.SittingDroid_1.0.jar", + "jar_sha256": "e70415ac11e28151624b309c1006aab3dc7285e36083d6d5b98e3c31977c763c", + "key": "roborumble/logiblocs.SittingDroid_1.0.jar", "kind": "robot" }, - "status": "DISCREPANCY (score)", + "status": "DISCREPANCY (no score)", "tank_royale": { - "elapsed": 10.0, + "bridge_only_signatures": null, + "elapsed": 32.0, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 2859.0, + "score": 0.0, "scores": [ - 1527.0, - 1332.0 + 0.0, + 0.0 ], "skipped": null } } ], - "status": "score-review" + "status": "DISCREPANCY (no score)" }, - "roborumble/bots.UberBot_1.2c.jar": { + "roborumble/lorneswork.Predator_1.0.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "bots.UberBot 1.2c", + "classic_selected": "lorneswork.Predator 1.0", "division": "roborumble", - "jar": "bots.UberBot_1.2c.jar", - "jar_sha256": "5406ba168c88b8e114b607bddd2959d76d4601740fe12236d5066d8a6bfcb556", - "key": "roborumble/bots.UberBot_1.2c.jar", + "jar": "lorneswork.Predator_1.0.jar", + "jar_sha256": "af75898eac7a0de312f3d96b701b8c1ae3c34152986b76fc4cd575c5a08ae07d", + "key": "roborumble/lorneswork.Predator_1.0.jar", "kind": "robot" }, - "latest_observation": "258737685abd4504", + "latest_observation": "93c5ace4d4087b33", "observations": [ { "classic": { - "elapsed": 2.7, + "elapsed": 2.6, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 6154.0, + "score": 6941.0, "scores": [ - 2720.0, - 3434.0 + 3567.0, + 3374.0 ], - "selected": "bots.UberBot 1.2c" + "selected": "lorneswork.Predator 1.0" }, - "completed_at": "2026-09-08T20:59:58Z", - "delta_pct": -8.6, - "id": "258737685abd4504", + "completed_at": "2026-09-12T22:14:36Z", + "confirmation": null, + "delta_pct": -57.2, + "id": "93c5ace4d4087b33", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "3bcf7518cd5a07d1296e256ea4e102f9e3eabe38", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -47273,90 +108872,90 @@ "width": 800 }, "source_identity": { - "classic_selected": "bots.UberBot 1.2c", + "classic_selected": "lorneswork.Predator 1.0", "division": "roborumble", - "jar": "bots.UberBot_1.2c.jar", - "jar_sha256": "5406ba168c88b8e114b607bddd2959d76d4601740fe12236d5066d8a6bfcb556", - "key": "roborumble/bots.UberBot_1.2c.jar", + "jar": "lorneswork.Predator_1.0.jar", + "jar_sha256": "af75898eac7a0de312f3d96b701b8c1ae3c34152986b76fc4cd575c5a08ae07d", + "key": "roborumble/lorneswork.Predator_1.0.jar", "kind": "robot" }, - "status": "PASS", + "status": "DISCREPANCY (score)", "tank_royale": { - "elapsed": 22.0, + "bridge_only_signatures": null, + "elapsed": 24.2, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 5625.0, + "score": 2974.0, "scores": [ - 3120.0, - 2505.0 + 1547.0, + 1427.0 ], "skipped": null } } ], - "status": "PASS" + "status": "score-review" }, - "roborumble/bots.UnterBot_1.0.jar": { + "roborumble/lrem.Spectre_0.4.4.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "bots.UnterBot 1.0", + "classic_selected": "lrem.Spectre 0.4.4", "division": "roborumble", - "jar": "bots.UnterBot_1.0.jar", - "jar_sha256": "7c24869acf14c596bca3c7eeb85b0dbab99b99e470f5df1bb886c4d101f1e66d", - "key": "roborumble/bots.UnterBot_1.0.jar", + "jar": "lrem.Spectre_0.4.4.jar", + "jar_sha256": "13908701ac6fc031eb4f4e1161869f0d6879a3b51c727ebf1aab3afaee2bce0d", + "key": "roborumble/lrem.Spectre_0.4.4.jar", "kind": "robot" }, - "latest_observation": "a57b9c4d5a68c0e3", + "latest_observation": "1d0e2d5ce38f97d9", "observations": [ { "classic": { - "elapsed": 2.3, + "elapsed": 3.2, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 7852.0, + "score": 5523.0, "scores": [ - 4216.0, - 3636.0 + 3518.0, + 2005.0 ], - "selected": "bots.UnterBot 1.0" + "selected": "lrem.Spectre 0.4.4" }, - "completed_at": "2026-09-08T21:00:22Z", - "delta_pct": -45.5, - "id": "a57b9c4d5a68c0e3", + "completed_at": "2026-09-12T22:16:23Z", + "confirmation": null, + "delta_pct": -3.6, + "id": "1d0e2d5ce38f97d9", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "3bcf7518cd5a07d1296e256ea4e102f9e3eabe38", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -47364,90 +108963,90 @@ "width": 800 }, "source_identity": { - "classic_selected": "bots.UnterBot 1.0", + "classic_selected": "lrem.Spectre 0.4.4", "division": "roborumble", - "jar": "bots.UnterBot_1.0.jar", - "jar_sha256": "7c24869acf14c596bca3c7eeb85b0dbab99b99e470f5df1bb886c4d101f1e66d", - "key": "roborumble/bots.UnterBot_1.0.jar", + "jar": "lrem.Spectre_0.4.4.jar", + "jar_sha256": "13908701ac6fc031eb4f4e1161869f0d6879a3b51c727ebf1aab3afaee2bce0d", + "key": "roborumble/lrem.Spectre_0.4.4.jar", "kind": "robot" }, - "status": "DISCREPANCY (score)", + "status": "PASS", "tank_royale": { - "elapsed": 22.0, + "bridge_only_signatures": null, + "elapsed": 26.2, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 4279.0, + "score": 5326.0, "scores": [ - 2713.0, - 1566.0 + 2691.0, + 2635.0 ], "skipped": null } } ], - "status": "score-review" + "status": "PASS" }, - "roborumble/bots.UnterExBot_1.0.jar": { + "roborumble/lrem.magic.TormentedAngel_Antiquitie.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "bots.UnterExBot 1.0", + "classic_selected": "lrem.magic.TormentedAngel Antiquitie", "division": "roborumble", - "jar": "bots.UnterExBot_1.0.jar", - "jar_sha256": "773aa3a9953e440b5e5464c54b5efbd269a15b17ab05f301d3401d16c263d25b", - "key": "roborumble/bots.UnterExBot_1.0.jar", + "jar": "lrem.magic.TormentedAngel_Antiquitie.jar", + "jar_sha256": "13db20fad5b82429eeb12231bab993a821dc4d87fd0f2eb9e1da0d5bdc867026", + "key": "roborumble/lrem.magic.TormentedAngel_Antiquitie.jar", "kind": "robot" }, - "latest_observation": "0eeef9f8e9a05217", + "latest_observation": "1a3635553148abba", "observations": [ { "classic": { - "elapsed": 2.3, + "elapsed": 2.9, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 9251.0, + "score": 4339.0, "scores": [ - 4666.0, - 4585.0 + 2165.0, + 2174.0 ], - "selected": "bots.UnterExBot 1.0" + "selected": "lrem.magic.TormentedAngel Antiquitie" }, - "completed_at": "2026-09-08T21:00:45Z", - "delta_pct": -47.8, - "id": "0eeef9f8e9a05217", + "completed_at": "2026-09-12T22:14:51Z", + "confirmation": null, + "delta_pct": null, + "id": "1a3635553148abba", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "3bcf7518cd5a07d1296e256ea4e102f9e3eabe38", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -47455,90 +109054,136 @@ "width": 800 }, "source_identity": { - "classic_selected": "bots.UnterExBot 1.0", + "classic_selected": "lrem.magic.TormentedAngel Antiquitie", "division": "roborumble", - "jar": "bots.UnterExBot_1.0.jar", - "jar_sha256": "773aa3a9953e440b5e5464c54b5efbd269a15b17ab05f301d3401d16c263d25b", - "key": "roborumble/bots.UnterExBot_1.0.jar", + "jar": "lrem.magic.TormentedAngel_Antiquitie.jar", + "jar_sha256": "13db20fad5b82429eeb12231bab993a821dc4d87fd0f2eb9e1da0d5bdc867026", + "key": "roborumble/lrem.magic.TormentedAngel_Antiquitie.jar", "kind": "robot" }, - "status": "DISCREPANCY (score)", + "status": "DISCREPANCY (outcome)", "tank_royale": { - "elapsed": 20.0, - "error_count": 0, - "errors": [], - "has_log": false, - "ok": true, - "score": 4833.0, - "scores": [ - 2438.0, - 2395.0 + "bridge_only_signatures": [ + [ + "java.lang.ArrayIndexOutOfBoundsException", + "lrem.magic.TormentedAngel.onScannedRobot" + ] + ], + "elapsed": 12.2, + "error_count": 38, + "error_signatures": [ + { + "exception": "java.lang.ArrayIndexOutOfBoundsException", + "origin": "lrem.magic.TormentedAngel.onScannedRobot" + } + ], + "errors": [ + "HARNESS: worker produced no result (exit code -1)", + "java.lang.ArrayIndexOutOfBoundsException: Index 74 out of bounds for length 73", + "java.lang.ArrayIndexOutOfBoundsException: Index 74 out of bounds for length 73", + "java.lang.ArrayIndexOutOfBoundsException: Index 73 out of bounds for length 73", + "java.lang.ArrayIndexOutOfBoundsException: Index 73 out of bounds for length 73", + "java.lang.ArrayIndexOutOfBoundsException: Index 73 out of bounds for length 73", + "java.lang.ArrayIndexOutOfBoundsException: Index 73 out of bounds for length 73", + "java.lang.ArrayIndexOutOfBoundsException: Index 74 out of bounds for length 73", + "java.lang.ArrayIndexOutOfBoundsException: Index 73 out of bounds for length 73", + "java.lang.ArrayIndexOutOfBoundsException: Index 73 out of bounds for length 73", + "java.lang.ArrayIndexOutOfBoundsException: Index 78 out of bounds for length 73", + "java.lang.ArrayIndexOutOfBoundsException: Index 78 out of bounds for length 73", + "java.lang.ArrayIndexOutOfBoundsException: Index 78 out of bounds for length 73", + "java.lang.ArrayIndexOutOfBoundsException: Index 78 out of bounds for length 73", + "java.lang.ArrayIndexOutOfBoundsException: Index 78 out of bounds for length 73", + "java.lang.ArrayIndexOutOfBoundsException: Index 78 out of bounds for length 73", + "java.lang.ArrayIndexOutOfBoundsException: Index 75 out of bounds for length 73", + "java.lang.ArrayIndexOutOfBoundsException: Index 75 out of bounds for length 73", + "java.lang.ArrayIndexOutOfBoundsException: Index 76 out of bounds for length 73", + "java.lang.ArrayIndexOutOfBoundsException: Index 76 out of bounds for length 73", + "java.lang.ArrayIndexOutOfBoundsException: Index 81 out of bounds for length 73", + "java.lang.ArrayIndexOutOfBoundsException: Index 79 out of bounds for length 73", + "java.lang.ArrayIndexOutOfBoundsException: Index 79 out of bounds for length 73", + "java.lang.ArrayIndexOutOfBoundsException: Index 80 out of bounds for length 73", + "java.lang.ArrayIndexOutOfBoundsException: Index 80 out of bounds for length 73", + "java.lang.ArrayIndexOutOfBoundsException: Index 80 out of bounds for length 73", + "java.lang.ArrayIndexOutOfBoundsException: Index 80 out of bounds for length 73", + "java.lang.ArrayIndexOutOfBoundsException: Index 80 out of bounds for length 73", + "java.lang.ArrayIndexOutOfBoundsException: Index 78 out of bounds for length 73", + "java.lang.ArrayIndexOutOfBoundsException: Index 77 out of bounds for length 73", + "java.lang.ArrayIndexOutOfBoundsException: Index 77 out of bounds for length 73", + "java.lang.ArrayIndexOutOfBoundsException: Index 79 out of bounds for length 73", + "java.lang.ArrayIndexOutOfBoundsException: Index 74 out of bounds for length 73", + "java.lang.ArrayIndexOutOfBoundsException: Index 75 out of bounds for length 73", + "java.lang.ArrayIndexOutOfBoundsException: Index 75 out of bounds for length 73", + "java.lang.ArrayIndexOutOfBoundsException: Index 75 out of bounds for length 73", + "java.lang.ArrayIndexOutOfBoundsException: Index 75 out of bounds for length 73", + "java.lang.ArrayIndexOutOfBoundsException: Index 75 out of bounds for length 73" ], + "has_log": true, + "ok": false, + "score": null, + "scores": [], "skipped": null } } ], - "status": "score-review" + "status": "DISCREPANCY (outcome)" }, - "roborumble/bp.Kuma_1.0.jar": { + "roborumble/lrem.micro.FalseProphet_Alpha.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "bp.Kuma 1.0", + "classic_selected": "lrem.micro.FalseProphet Alpha", "division": "roborumble", - "jar": "bp.Kuma_1.0.jar", - "jar_sha256": "2646c78e817ac3701fbd23306259844fdea377b82ac7748f8d3cf6ea36b4825e", - "key": "roborumble/bp.Kuma_1.0.jar", + "jar": "lrem.micro.FalseProphet_Alpha.jar", + "jar_sha256": "462500d1b015a45ed23ee01b9cf2040f3ccf4c754231e6f44905fd5b8cee1c7e", + "key": "roborumble/lrem.micro.FalseProphet_Alpha.jar", "kind": "robot" }, - "latest_observation": "a5efd143dba4df0f", + "latest_observation": "4b8e46bd1fa2a17e", "observations": [ { "classic": { - "elapsed": 2.7, + "elapsed": 3.4, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 3008.0, + "score": 7617.0, "scores": [ - 1726.0, - 1282.0 + 4170.0, + 3447.0 ], - "selected": "bp.Kuma 1.0" + "selected": "lrem.micro.FalseProphet Alpha" }, - "completed_at": "2026-09-08T21:01:06Z", - "delta_pct": 91.6, - "id": "a5efd143dba4df0f", + "completed_at": "2026-09-12T22:15:11Z", + "confirmation": null, + "delta_pct": 4.5, + "id": "4b8e46bd1fa2a17e", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "3bcf7518cd5a07d1296e256ea4e102f9e3eabe38", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -47546,90 +109191,90 @@ "width": 800 }, "source_identity": { - "classic_selected": "bp.Kuma 1.0", + "classic_selected": "lrem.micro.FalseProphet Alpha", "division": "roborumble", - "jar": "bp.Kuma_1.0.jar", - "jar_sha256": "2646c78e817ac3701fbd23306259844fdea377b82ac7748f8d3cf6ea36b4825e", - "key": "roborumble/bp.Kuma_1.0.jar", + "jar": "lrem.micro.FalseProphet_Alpha.jar", + "jar_sha256": "462500d1b015a45ed23ee01b9cf2040f3ccf4c754231e6f44905fd5b8cee1c7e", + "key": "roborumble/lrem.micro.FalseProphet_Alpha.jar", "kind": "robot" }, - "status": "DISCREPANCY (score)", + "status": "PASS", "tank_royale": { - "elapsed": 18.0, + "bridge_only_signatures": null, + "elapsed": 16.0, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 5762.0, + "score": 7960.0, "scores": [ - 3303.0, - 2459.0 + 4187.0, + 3773.0 ], "skipped": null } } ], - "status": "score-review" + "status": "PASS" }, - "roborumble/braaropolis.Abot_1.0.jar": { + "roborumble/lrem.micro.MoggFanatic_0.2.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "braaropolis.Abot 1.0", + "classic_selected": "lrem.micro.MoggFanatic 0.2", "division": "roborumble", - "jar": "braaropolis.Abot_1.0.jar", - "jar_sha256": "d8e61877edd6f98d13b8c78bce6fb1fa8930834ce8414b95f2f0c46f7dd9a8be", - "key": "roborumble/braaropolis.Abot_1.0.jar", + "jar": "lrem.micro.MoggFanatic_0.2.jar", + "jar_sha256": "d86851f162a0b4605b22eafc7ddb365c52914ad2ed05805a46bbc3ad8faedad5", + "key": "roborumble/lrem.micro.MoggFanatic_0.2.jar", "kind": "robot" }, - "latest_observation": "36610aff4c63ca29", + "latest_observation": "b7960b67823865c0", "observations": [ { "classic": { - "elapsed": 2.6, + "elapsed": 2.3, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 4862.0, + "score": 10477.0, "scores": [ - 1751.0, - 3111.0 + 5546.0, + 4931.0 ], - "selected": "braaropolis.Abot 1.0" + "selected": "lrem.micro.MoggFanatic 0.2" }, - "completed_at": "2026-09-08T21:01:31Z", - "delta_pct": -26.1, - "id": "36610aff4c63ca29", + "completed_at": "2026-09-12T22:15:25Z", + "confirmation": null, + "delta_pct": -0.4, + "id": "b7960b67823865c0", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "3bcf7518cd5a07d1296e256ea4e102f9e3eabe38", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -47637,90 +109282,90 @@ "width": 800 }, "source_identity": { - "classic_selected": "braaropolis.Abot 1.0", + "classic_selected": "lrem.micro.MoggFanatic 0.2", "division": "roborumble", - "jar": "braaropolis.Abot_1.0.jar", - "jar_sha256": "d8e61877edd6f98d13b8c78bce6fb1fa8930834ce8414b95f2f0c46f7dd9a8be", - "key": "roborumble/braaropolis.Abot_1.0.jar", + "jar": "lrem.micro.MoggFanatic_0.2.jar", + "jar_sha256": "d86851f162a0b4605b22eafc7ddb365c52914ad2ed05805a46bbc3ad8faedad5", + "key": "roborumble/lrem.micro.MoggFanatic_0.2.jar", "kind": "robot" }, - "status": "DISCREPANCY (score)", + "status": "PASS", "tank_royale": { - "elapsed": 22.0, + "bridge_only_signatures": null, + "elapsed": 12.0, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 3594.0, + "score": 10430.0, "scores": [ - 1866.0, - 1728.0 + 5295.0, + 5135.0 ], "skipped": null } } ], - "status": "score-review" + "status": "PASS" }, - "roborumble/brainfade.Fallen_0.63.jar": { + "roborumble/lrem.quickhack.QuickHack_1.0.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "brainfade.Fallen 0.63", + "classic_selected": "lrem.quickhack.QuickHack 1.0", "division": "roborumble", - "jar": "brainfade.Fallen_0.63.jar", - "jar_sha256": "7affe8566b9200ec51bc97f81bd7e3a98d5e9f2c011c70bd3331754bfc832373", - "key": "roborumble/brainfade.Fallen_0.63.jar", + "jar": "lrem.quickhack.QuickHack_1.0.jar", + "jar_sha256": "507384805e1ed95a3223f56e2a054c1013ace180c561fd2b4260f2ff880a161f", + "key": "roborumble/lrem.quickhack.QuickHack_1.0.jar", "kind": "robot" }, - "latest_observation": "cfd838bd46fc2f16", + "latest_observation": "28eb9e453aea91dd", "observations": [ { "classic": { - "elapsed": 2.9, + "elapsed": 3.4, "error_count": 0, - "errors": [], - "has_log": false, - "ok": true, - "score": 5630.0, - "scores": [ - 2323.0, - 3307.0 - ], - "selected": "brainfade.Fallen 0.63" - }, - "completed_at": "2026-09-08T21:01:54Z", - "delta_pct": -12.6, - "id": "cfd838bd46fc2f16", - "manifest": { - "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 6200.0, + "scores": [ + 3079.0, + 3121.0 + ], + "selected": "lrem.quickhack.QuickHack 1.0" + }, + "completed_at": "2026-09-12T22:15:53Z", + "confirmation": null, + "delta_pct": -36.7, + "id": "28eb9e453aea91dd", + "manifest": { + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "3bcf7518cd5a07d1296e256ea4e102f9e3eabe38", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -47728,90 +109373,90 @@ "width": 800 }, "source_identity": { - "classic_selected": "brainfade.Fallen 0.63", + "classic_selected": "lrem.quickhack.QuickHack 1.0", "division": "roborumble", - "jar": "brainfade.Fallen_0.63.jar", - "jar_sha256": "7affe8566b9200ec51bc97f81bd7e3a98d5e9f2c011c70bd3331754bfc832373", - "key": "roborumble/brainfade.Fallen_0.63.jar", + "jar": "lrem.quickhack.QuickHack_1.0.jar", + "jar_sha256": "507384805e1ed95a3223f56e2a054c1013ace180c561fd2b4260f2ff880a161f", + "key": "roborumble/lrem.quickhack.QuickHack_1.0.jar", "kind": "robot" }, - "status": "PASS", + "status": "DISCREPANCY (score)", "tank_royale": { - "elapsed": 20.0, + "bridge_only_signatures": null, + "elapsed": 24.0, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 4918.0, + "score": 3924.0, "scores": [ - 3163.0, - 1755.0 + 2151.0, + 1773.0 ], "skipped": null } } ], - "status": "PASS" + "status": "score-review" }, - "roborumble/brainfade.melee.Dusk_0.44.jar": { + "roborumble/lucasslf.Dodger_1.0.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "brainfade.melee.Dusk 0.44", + "classic_selected": "lucasslf.Dodger 1.0", "division": "roborumble", - "jar": "brainfade.melee.Dusk_0.44.jar", - "jar_sha256": "a9ebabb60c05453723be3680d718a93a6b212ecf13d3fc408b4e2ab88f5d853b", - "key": "roborumble/brainfade.melee.Dusk_0.44.jar", + "jar": "lucasslf.Dodger_1.0.jar", + "jar_sha256": "bfe4ab2ac20728b165653958203bfb9469d9bc66f5a8a9f44503863646ad3cc6", + "key": "roborumble/lucasslf.Dodger_1.0.jar", "kind": "robot" }, - "latest_observation": "c24d76413b604bbc", + "latest_observation": "7239cc6c0c46a0c8", "observations": [ { "classic": { - "elapsed": 3.5, + "elapsed": 3.1, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 5163.0, + "score": 5165.0, "scores": [ - 2822.0, - 2341.0 + 2708.0, + 2457.0 ], - "selected": "brainfade.melee.Dusk 0.44" + "selected": "lucasslf.Dodger 1.0" }, - "completed_at": "2026-09-08T21:02:28Z", - "delta_pct": -1.8, - "id": "c24d76413b604bbc", + "completed_at": "2026-09-12T22:16:52Z", + "confirmation": null, + "delta_pct": -4.4, + "id": "7239cc6c0c46a0c8", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "3bcf7518cd5a07d1296e256ea4e102f9e3eabe38", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -47819,23 +109464,25 @@ "width": 800 }, "source_identity": { - "classic_selected": "brainfade.melee.Dusk 0.44", + "classic_selected": "lucasslf.Dodger 1.0", "division": "roborumble", - "jar": "brainfade.melee.Dusk_0.44.jar", - "jar_sha256": "a9ebabb60c05453723be3680d718a93a6b212ecf13d3fc408b4e2ab88f5d853b", - "key": "roborumble/brainfade.melee.Dusk_0.44.jar", + "jar": "lucasslf.Dodger_1.0.jar", + "jar_sha256": "bfe4ab2ac20728b165653958203bfb9469d9bc66f5a8a9f44503863646ad3cc6", + "key": "roborumble/lucasslf.Dodger_1.0.jar", "kind": "robot" }, "status": "PASS", "tank_royale": { - "elapsed": 30.0, + "bridge_only_signatures": null, + "elapsed": 26.0, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 5071.0, + "score": 4937.0, "scores": [ - 2645.0, + 2511.0, 2426.0 ], "skipped": null @@ -47844,65 +109491,77 @@ ], "status": "PASS" }, - "roborumble/bts.mega.Gnarly_1.4.jar": { + "roborumble/lucasslf.HariSeldon_0.2.1.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "bts.mega.Gnarly 1.4", + "classic_selected": "lucasslf.HariSeldon 0.2.1", "division": "roborumble", - "jar": "bts.mega.Gnarly_1.4.jar", - "jar_sha256": "77d1f463511e268b1a020f8571fe932a03760447e30067846a3c1d6090368f81", - "key": "roborumble/bts.mega.Gnarly_1.4.jar", + "jar": "lucasslf.HariSeldon_0.2.1.jar", + "jar_sha256": "cd019d8e91c8b0b8fa2e6952fc72e0a7b6c6bd82a0fb12ac6f47d8aab2fffd60", + "key": "roborumble/lucasslf.HariSeldon_0.2.1.jar", "kind": "robot" }, - "latest_observation": "ea1a4d3c629039e8", + "latest_observation": "28509d8468b5a013", "observations": [ { "classic": { - "elapsed": 2.8, - "error_count": 0, - "errors": [], - "has_log": false, + "elapsed": 36.0, + "error_count": 8, + "error_signatures": [ + { + "exception": "java.lang.IllegalArgumentException", + "origin": "lucasslf.wavesurfing.BasicWaveSurfer.doSurfing" + } + ], + "errors": [ + "SYSTEM: java.lang.IllegalArgumentException occurred on robocode.ScannedRobotEvent", + "java.lang.IllegalArgumentException: Color parameter outside of expected range: Green Blue", + "SYSTEM: java.lang.IllegalArgumentException occurred on robocode.ScannedRobotEvent", + "java.lang.IllegalArgumentException: Color parameter outside of expected range: Green Blue", + "SYSTEM: java.lang.IllegalArgumentException occurred on robocode.ScannedRobotEvent", + "java.lang.IllegalArgumentException: Color parameter outside of expected range: Green Blue", + "SYSTEM: java.lang.IllegalArgumentException occurred on robocode.ScannedRobotEvent", + "java.lang.IllegalArgumentException: Color parameter outside of expected range: Green Blue" + ], + "has_log": true, "ok": true, - "score": 8473.0, + "score": 4832.0, "scores": [ - 4405.0, - 4068.0 + 2794.0, + 2038.0 ], - "selected": "bts.mega.Gnarly 1.4" + "selected": "lucasslf.HariSeldon 0.2.1" }, - "completed_at": "2026-09-08T21:02:45Z", - "delta_pct": 2.3, - "id": "ea1a4d3c629039e8", + "completed_at": "2026-09-12T22:19:19Z", + "confirmation": null, + "delta_pct": -28.9, + "id": "28509d8468b5a013", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "3bcf7518cd5a07d1296e256ea4e102f9e3eabe38", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -47910,90 +109569,90 @@ "width": 800 }, "source_identity": { - "classic_selected": "bts.mega.Gnarly 1.4", + "classic_selected": "lucasslf.HariSeldon 0.2.1", "division": "roborumble", - "jar": "bts.mega.Gnarly_1.4.jar", - "jar_sha256": "77d1f463511e268b1a020f8571fe932a03760447e30067846a3c1d6090368f81", - "key": "roborumble/bts.mega.Gnarly_1.4.jar", + "jar": "lucasslf.HariSeldon_0.2.1.jar", + "jar_sha256": "cd019d8e91c8b0b8fa2e6952fc72e0a7b6c6bd82a0fb12ac6f47d8aab2fffd60", + "key": "roborumble/lucasslf.HariSeldon_0.2.1.jar", "kind": "robot" }, - "status": "PASS", + "status": "DISCREPANCY (errors)", "tank_royale": { - "elapsed": 14.0, + "bridge_only_signatures": null, + "elapsed": 110.1, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 8671.0, + "score": 3437.0, "scores": [ - 4642.0, - 4029.0 + 1929.0, + 1508.0 ], "skipped": null } } ], - "status": "PASS" + "status": "DISCREPANCY (errors)" }, - "roborumble/bts.wiki.RipCurl_0.9b.jar": { + "roborumble/lucasslf.Wiggins_0.6.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "bts.wiki.RipCurl 0.9b", + "classic_selected": "lucasslf.Wiggins 0.6", "division": "roborumble", - "jar": "bts.wiki.RipCurl_0.9b.jar", - "jar_sha256": "1f9a52c3ea49c22e5755defaaf43f355801169537f7a9636d1708bd00064e4c9", - "key": "roborumble/bts.wiki.RipCurl_0.9b.jar", + "jar": "lucasslf.Wiggins_0.6.jar", + "jar_sha256": "0d6e10cf5b35b4dc1ab39f5c4655dfcd3006066a02a6d864883abf848eaac623", + "key": "roborumble/lucasslf.Wiggins_0.6.jar", "kind": "robot" }, - "latest_observation": "0b71b2a50f905e18", + "latest_observation": "b50943d38ca71c98", "observations": [ { "classic": { - "elapsed": 3.0, + "elapsed": 5.8, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 5000.0, + "score": 4737.0, "scores": [ - 1871.0, - 3129.0 + 2861.0, + 1876.0 ], - "selected": "bts.wiki.RipCurl 0.9b" + "selected": "lucasslf.Wiggins 0.6" }, - "completed_at": "2026-09-08T21:02:55Z", - "delta_pct": null, - "id": "0b71b2a50f905e18", + "completed_at": "2026-09-12T22:19:59Z", + "confirmation": null, + "delta_pct": -12.7, + "id": "b50943d38ca71c98", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "3bcf7518cd5a07d1296e256ea4e102f9e3eabe38", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -48001,90 +109660,90 @@ "width": 800 }, "source_identity": { - "classic_selected": "bts.wiki.RipCurl 0.9b", + "classic_selected": "lucasslf.Wiggins 0.6", "division": "roborumble", - "jar": "bts.wiki.RipCurl_0.9b.jar", - "jar_sha256": "1f9a52c3ea49c22e5755defaaf43f355801169537f7a9636d1708bd00064e4c9", - "key": "roborumble/bts.wiki.RipCurl_0.9b.jar", + "jar": "lucasslf.Wiggins_0.6.jar", + "jar_sha256": "0d6e10cf5b35b4dc1ab39f5c4655dfcd3006066a02a6d864883abf848eaac623", + "key": "roborumble/lucasslf.Wiggins_0.6.jar", "kind": "robot" }, - "status": "FAIL (TR)", + "status": "PASS", "tank_royale": { - "elapsed": 6.2, - "error_count": 2, - "errors": [ - "HARNESS: worker produced no result (exit code -1)", - "java.lang.ArrayIndexOutOfBoundsException: Index -1 out of bounds for length 2" + "bridge_only_signatures": null, + "elapsed": 34.3, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 4136.0, + "scores": [ + 2192.0, + 1944.0 ], - "has_log": true, - "ok": false, - "score": null, - "scores": [], "skipped": null } } ], - "status": "FAIL (TR)" + "status": "PASS" }, - "roborumble/buba.Archivist_0.1.jar": { + "roborumble/lunchie.Lunchbox_0.93.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "buba.Archivist 0.1", + "classic_selected": "lunchie.Lunchbox 0.93", "division": "roborumble", - "jar": "buba.Archivist_0.1.jar", - "jar_sha256": "16a0212d06836af24b9b7d351de52406e456804ede7c302e4cb85c75d2b08acc", - "key": "roborumble/buba.Archivist_0.1.jar", + "jar": "lunchie.Lunchbox_0.93.jar", + "jar_sha256": "f18a594374d37eb1d25870aa5cb66991ce69e95f25bd6e2c0697615d74385a37", + "key": "roborumble/lunchie.Lunchbox_0.93.jar", "kind": "robot" }, - "latest_observation": "d18c23f855ed3f66", + "latest_observation": "b31d8ac9eebc5fa9", "observations": [ { "classic": { "elapsed": 3.2, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 5379.0, + "score": 7198.0, "scores": [ - 2993.0, - 2386.0 + 3382.0, + 3816.0 ], - "selected": "buba.Archivist 0.1" + "selected": "lunchie.Lunchbox 0.93" }, - "completed_at": "2026-09-08T21:03:14Z", - "delta_pct": -9.6, - "id": "d18c23f855ed3f66", + "completed_at": "2026-09-12T22:20:21Z", + "confirmation": null, + "delta_pct": -21.3, + "id": "b31d8ac9eebc5fa9", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "3bcf7518cd5a07d1296e256ea4e102f9e3eabe38", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -48092,24 +109751,26 @@ "width": 800 }, "source_identity": { - "classic_selected": "buba.Archivist 0.1", + "classic_selected": "lunchie.Lunchbox 0.93", "division": "roborumble", - "jar": "buba.Archivist_0.1.jar", - "jar_sha256": "16a0212d06836af24b9b7d351de52406e456804ede7c302e4cb85c75d2b08acc", - "key": "roborumble/buba.Archivist_0.1.jar", + "jar": "lunchie.Lunchbox_0.93.jar", + "jar_sha256": "f18a594374d37eb1d25870aa5cb66991ce69e95f25bd6e2c0697615d74385a37", + "key": "roborumble/lunchie.Lunchbox_0.93.jar", "kind": "robot" }, "status": "PASS", "tank_royale": { - "elapsed": 16.0, + "bridge_only_signatures": null, + "elapsed": 18.0, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 4862.0, + "score": 5667.0, "scores": [ - 3109.0, - 1753.0 + 2876.0, + 2791.0 ], "skipped": null } @@ -48117,65 +109778,63 @@ ], "status": "PASS" }, - "roborumble/buba.Buba_0.3.jar": { + "roborumble/lundal.Mark8_2012.09.15.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "buba.Buba 0.3", + "classic_selected": "lundal.Mark8 2012.09.15", "division": "roborumble", - "jar": "buba.Buba_0.3.jar", - "jar_sha256": "ba2320e401f43470e16fa1253315b29b36047b22bac99ad62bed59bb014e1716", - "key": "roborumble/buba.Buba_0.3.jar", + "jar": "lundal.Mark8_2012.09.15.jar", + "jar_sha256": "c9c34fad58960fff2f8ed9e446f946a8b19f47f78c7b016ca8c9af1fc847504c", + "key": "roborumble/lundal.Mark8_2012.09.15.jar", "kind": "robot" }, - "latest_observation": "92de0a656f602dca", + "latest_observation": "d458f8fa15325d61", "observations": [ { "classic": { - "elapsed": 2.4, + "elapsed": 2.7, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 4975.0, + "score": 3036.0, "scores": [ - 1731.0, - 3244.0 + 1653.0, + 1383.0 ], - "selected": "buba.Buba 0.3" + "selected": "lundal.Mark8 2012.09.15" }, - "completed_at": "2026-09-08T21:03:31Z", - "delta_pct": -19.0, - "id": "92de0a656f602dca", + "completed_at": "2026-09-12T22:20:46Z", + "confirmation": null, + "delta_pct": -6.4, + "id": "d458f8fa15325d61", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "3bcf7518cd5a07d1296e256ea4e102f9e3eabe38", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -48183,24 +109842,26 @@ "width": 800 }, "source_identity": { - "classic_selected": "buba.Buba 0.3", + "classic_selected": "lundal.Mark8 2012.09.15", "division": "roborumble", - "jar": "buba.Buba_0.3.jar", - "jar_sha256": "ba2320e401f43470e16fa1253315b29b36047b22bac99ad62bed59bb014e1716", - "key": "roborumble/buba.Buba_0.3.jar", + "jar": "lundal.Mark8_2012.09.15.jar", + "jar_sha256": "c9c34fad58960fff2f8ed9e446f946a8b19f47f78c7b016ca8c9af1fc847504c", + "key": "roborumble/lundal.Mark8_2012.09.15.jar", "kind": "robot" }, "status": "PASS", "tank_royale": { - "elapsed": 14.0, + "bridge_only_signatures": null, + "elapsed": 22.0, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 4029.0, + "score": 2843.0, "scores": [ - 2290.0, - 1739.0 + 1588.0, + 1255.0 ], "skipped": null } @@ -48208,65 +109869,63 @@ ], "status": "PASS" }, - "roborumble/bumblebee.Bumblebee_1.0.jar": { + "roborumble/lw.LuthersTest_0.1.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "bumblebee.Bumblebee 1.0", + "classic_selected": "lw.LuthersTest 0.1", "division": "roborumble", - "jar": "bumblebee.Bumblebee_1.0.jar", - "jar_sha256": "13752cd9d2f4ffe2a675074b50ecca99b982f57bea36c1bac5e4f254cf0af9c5", - "key": "roborumble/bumblebee.Bumblebee_1.0.jar", + "jar": "lw.LuthersTest_0.1.jar", + "jar_sha256": "5feab551a19acdfce6b99b1f18654fd917b5795ea9fe87fcc09dc9c2468b340f", + "key": "roborumble/lw.LuthersTest_0.1.jar", "kind": "robot" }, - "latest_observation": "684d3891682e1261", + "latest_observation": "11df5e06936f47fb", "observations": [ { "classic": { - "elapsed": 2.3, + "elapsed": 3.7, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 7679.0, + "score": 10431.0, "scores": [ - 3456.0, - 4223.0 + 5271.0, + 5160.0 ], - "selected": "bumblebee.Bumblebee 1.0" + "selected": "lw.LuthersTest 0.1" }, - "completed_at": "2026-09-08T21:03:46Z", - "delta_pct": 0.1, - "id": "684d3891682e1261", + "completed_at": "2026-09-12T22:21:26Z", + "confirmation": null, + "delta_pct": -25.7, + "id": "11df5e06936f47fb", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "3bcf7518cd5a07d1296e256ea4e102f9e3eabe38", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -48274,90 +109933,90 @@ "width": 800 }, "source_identity": { - "classic_selected": "bumblebee.Bumblebee 1.0", + "classic_selected": "lw.LuthersTest 0.1", "division": "roborumble", - "jar": "bumblebee.Bumblebee_1.0.jar", - "jar_sha256": "13752cd9d2f4ffe2a675074b50ecca99b982f57bea36c1bac5e4f254cf0af9c5", - "key": "roborumble/bumblebee.Bumblebee_1.0.jar", + "jar": "lw.LuthersTest_0.1.jar", + "jar_sha256": "5feab551a19acdfce6b99b1f18654fd917b5795ea9fe87fcc09dc9c2468b340f", + "key": "roborumble/lw.LuthersTest_0.1.jar", "kind": "robot" }, - "status": "PASS", + "status": "DISCREPANCY (score)", "tank_royale": { - "elapsed": 12.0, + "bridge_only_signatures": null, + "elapsed": 36.0, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 7686.0, + "score": 7751.0, "scores": [ - 3977.0, - 3709.0 + 4175.0, + 3576.0 ], "skipped": null } } ], - "status": "PASS" + "status": "score-review" }, - "roborumble/bvh.fnr.Fenrir_0.36l.jar": { + "roborumble/lxx.ConceptA_0.8.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "bvh.fnr.Fenrir 0.36l", + "classic_selected": "lxx.ConceptA 0.8", "division": "roborumble", - "jar": "bvh.fnr.Fenrir_0.36l.jar", - "jar_sha256": "986ed898d1fa2556d204321e33139543a61c6ddda15b419b877cc7009e91b5d9", - "key": "roborumble/bvh.fnr.Fenrir_0.36l.jar", + "jar": "lxx.ConceptA_0.8.jar", + "jar_sha256": "d11a47c7e403047f1402873a421d106d1dee72f7b678222e47eed08ce83ff9a2", + "key": "roborumble/lxx.ConceptA_0.8.jar", "kind": "robot" }, - "latest_observation": "c42dcc45e38dcd92", + "latest_observation": "b533f0655584641d", "observations": [ { "classic": { - "elapsed": 3.7, + "elapsed": 3.6, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 5899.0, + "score": 3932.0, "scores": [ - 2726.0, - 3173.0 + 2330.0, + 1602.0 ], - "selected": "bvh.fnr.Fenrir 0.36l" + "selected": "lxx.ConceptA 0.8" }, - "completed_at": "2026-09-08T21:04:10Z", - "delta_pct": -7.8, - "id": "c42dcc45e38dcd92", + "completed_at": "2026-09-12T22:21:50Z", + "confirmation": null, + "delta_pct": 3.8, + "id": "b533f0655584641d", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "3bcf7518cd5a07d1296e256ea4e102f9e3eabe38", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -48365,24 +110024,26 @@ "width": 800 }, "source_identity": { - "classic_selected": "bvh.fnr.Fenrir 0.36l", + "classic_selected": "lxx.ConceptA 0.8", "division": "roborumble", - "jar": "bvh.fnr.Fenrir_0.36l.jar", - "jar_sha256": "986ed898d1fa2556d204321e33139543a61c6ddda15b419b877cc7009e91b5d9", - "key": "roborumble/bvh.fnr.Fenrir_0.36l.jar", + "jar": "lxx.ConceptA_0.8.jar", + "jar_sha256": "d11a47c7e403047f1402873a421d106d1dee72f7b678222e47eed08ce83ff9a2", + "key": "roborumble/lxx.ConceptA_0.8.jar", "kind": "robot" }, "status": "PASS", "tank_royale": { + "bridge_only_signatures": null, "elapsed": 20.0, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 5440.0, + "score": 4083.0, "scores": [ - 3191.0, - 2249.0 + 2044.0, + 2039.0 ], "skipped": null } @@ -48390,65 +110051,63 @@ ], "status": "PASS" }, - "roborumble/bvh.frg.Friga_0.112dev.jar": { + "roborumble/lxx.Emerald_0.6.5.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "bvh.frg.Friga 0.112dev", + "classic_selected": "lxx.Emerald 0.6.5", "division": "roborumble", - "jar": "bvh.frg.Friga_0.112dev.jar", - "jar_sha256": "a7bda40ea78e411a38c3d99bf52466b26ae5efe3df9dc432b48f6df388346d9f", - "key": "roborumble/bvh.frg.Friga_0.112dev.jar", + "jar": "lxx.Emerald_0.6.5.jar", + "jar_sha256": "77c49b0700265e1c9fffacddd55a78fefb2badbe60997284d27db31511064c92", + "key": "roborumble/lxx.Emerald_0.6.5.jar", "kind": "robot" }, - "latest_observation": "2c64749929672cae", + "latest_observation": "e1f2d59c5739168c", "observations": [ { "classic": { - "elapsed": 2.7, + "elapsed": 7.8, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 5674.0, + "score": 3981.0, "scores": [ - 2831.0, - 2843.0 + 1577.0, + 2404.0 ], - "selected": "bvh.frg.Friga 0.112dev" + "selected": "lxx.Emerald 0.6.5" }, - "completed_at": "2026-09-08T21:04:33Z", - "delta_pct": -9.2, - "id": "2c64749929672cae", + "completed_at": "2026-09-12T22:23:00Z", + "confirmation": null, + "delta_pct": -9.7, + "id": "e1f2d59c5739168c", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "3bcf7518cd5a07d1296e256ea4e102f9e3eabe38", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -48456,24 +110115,26 @@ "width": 800 }, "source_identity": { - "classic_selected": "bvh.frg.Friga 0.112dev", + "classic_selected": "lxx.Emerald 0.6.5", "division": "roborumble", - "jar": "bvh.frg.Friga_0.112dev.jar", - "jar_sha256": "a7bda40ea78e411a38c3d99bf52466b26ae5efe3df9dc432b48f6df388346d9f", - "key": "roborumble/bvh.frg.Friga_0.112dev.jar", + "jar": "lxx.Emerald_0.6.5.jar", + "jar_sha256": "77c49b0700265e1c9fffacddd55a78fefb2badbe60997284d27db31511064c92", + "key": "roborumble/lxx.Emerald_0.6.5.jar", "kind": "robot" }, "status": "PASS", "tank_royale": { - "elapsed": 20.0, + "bridge_only_signatures": null, + "elapsed": 62.0, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 5151.0, + "score": 3594.0, "scores": [ - 2893.0, - 2258.0 + 2252.0, + 1342.0 ], "skipped": null } @@ -48481,65 +110142,70 @@ ], "status": "PASS" }, - "roborumble/bvh.fry.Freya_0.82.jar": { + "roborumble/lxx.Tomcat_3.68.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "bvh.fry.Freya 0.82", + "classic_selected": "lxx.Tomcat 3.68", "division": "roborumble", - "jar": "bvh.fry.Freya_0.82.jar", - "jar_sha256": "2618ef3fb7cd8cb814b33be2531dc1e81661554362f93b29a80d1cce31f12fe5", - "key": "roborumble/bvh.fry.Freya_0.82.jar", + "jar": "lxx.Tomcat_3.68.jar", + "jar_sha256": "c549c10c5958f19440734d51361ce84c1608ca473dcacad3dc3e5124c035ee55", + "key": "roborumble/lxx.Tomcat_3.68.jar", "kind": "robot" }, - "latest_observation": "d32b1f5ce3e25f80", + "latest_observation": "e788aec118e82732", "observations": [ { "classic": { - "elapsed": 6.8, - "error_count": 0, - "errors": [], - "has_log": false, + "elapsed": 15.8, + "error_count": 1, + "error_signatures": [ + { + "exception": "java.lang.ArrayIndexOutOfBoundsException", + "origin": "lxx.bullets.enemy.EnemyBulletManager.getBulletShadows" + } + ], + "errors": [ + "java.lang.ArrayIndexOutOfBoundsException: Index 0 out of bounds for length 0" + ], + "has_log": true, "ok": true, - "score": 5546.0, + "score": 4949.0, "scores": [ - 2606.0, - 2940.0 + 2498.0, + 2451.0 ], - "selected": "bvh.fry.Freya 0.82" + "selected": "lxx.Tomcat 3.68" }, - "completed_at": "2026-09-08T21:04:44Z", - "delta_pct": null, - "id": "d32b1f5ce3e25f80", + "completed_at": "2026-09-12T22:24:14Z", + "confirmation": null, + "delta_pct": -4.8, + "id": "e788aec118e82732", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "3bcf7518cd5a07d1296e256ea4e102f9e3eabe38", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -48547,91 +110213,90 @@ "width": 800 }, "source_identity": { - "classic_selected": "bvh.fry.Freya 0.82", + "classic_selected": "lxx.Tomcat 3.68", "division": "roborumble", - "jar": "bvh.fry.Freya_0.82.jar", - "jar_sha256": "2618ef3fb7cd8cb814b33be2531dc1e81661554362f93b29a80d1cce31f12fe5", - "key": "roborumble/bvh.fry.Freya_0.82.jar", + "jar": "lxx.Tomcat_3.68.jar", + "jar_sha256": "c549c10c5958f19440734d51361ce84c1608ca473dcacad3dc3e5124c035ee55", + "key": "roborumble/lxx.Tomcat_3.68.jar", "kind": "robot" }, - "status": "FAIL (TR)", + "status": "DISCREPANCY (errors)", "tank_royale": { - "elapsed": 4.2, - "error_count": 3, - "errors": [ - "HARNESS: worker produced no result (exit code -1)", - "inlezenInitialisatieBestand(): IOException bij inlezen data Freya.ini: java.io.FileNotFoundException: C:\\Code\\robocode-api-bridge\\compat-test\\work\\tr-bots\\bvh.fry.Freya_0.82\\Freya.data\\Freya.ini (Den angivne fil blev ikke fundet)", - "inlezenInitialisatieBestand(): IOException bij inlezen data Freya.ini: java.io.FileNotFoundException: C:\\Code\\robocode-api-bridge\\compat-test\\work\\tr-bots\\bvh.fry.Freya_0.82-2\\Freya.data\\Freya.ini (Den angivne fil blev ikke fundet)" + "bridge_only_signatures": null, + "elapsed": 58.1, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 4712.0, + "scores": [ + 2420.0, + 2292.0 ], - "has_log": true, - "ok": false, - "score": null, - "scores": [], "skipped": null } } ], - "status": "FAIL (TR)" + "status": "DISCREPANCY (errors)" }, - "roborumble/bvh.hdr.Hodur_0.4.jar": { + "roborumble/m3thos.Eva00_1.1.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "bvh.hdr.Hodur 0.4", + "classic_selected": "m3thos.Eva00 1.1", "division": "roborumble", - "jar": "bvh.hdr.Hodur_0.4.jar", - "jar_sha256": "2bd6a9804697badcfad118f8c84db756b33cd9154144da4b19166f9f7caea94e", - "key": "roborumble/bvh.hdr.Hodur_0.4.jar", + "jar": "m3thos.Eva00_1.1.jar", + "jar_sha256": "b834a8def7ee3dd24725ebc7c2fa244c24185f898d4271e9de8905d3ff6d5ea1", + "key": "roborumble/m3thos.Eva00_1.1.jar", "kind": "robot" }, - "latest_observation": "bc89209e78a077fc", + "latest_observation": "dd5208c15051255e", "observations": [ { "classic": { - "elapsed": 6.2, + "elapsed": 2.5, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 1932.0, + "score": 4455.0, "scores": [ - 1011.0, - 921.0 + 2086.0, + 2369.0 ], - "selected": "bvh.hdr.Hodur 0.4" + "selected": "m3thos.Eva00 1.1" }, - "completed_at": "2026-09-08T21:05:24Z", - "delta_pct": -37.2, - "id": "bc89209e78a077fc", + "completed_at": "2026-09-12T22:24:31Z", + "confirmation": null, + "delta_pct": -16.8, + "id": "dd5208c15051255e", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "3bcf7518cd5a07d1296e256ea4e102f9e3eabe38", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -48639,90 +110304,90 @@ "width": 800 }, "source_identity": { - "classic_selected": "bvh.hdr.Hodur 0.4", + "classic_selected": "m3thos.Eva00 1.1", "division": "roborumble", - "jar": "bvh.hdr.Hodur_0.4.jar", - "jar_sha256": "2bd6a9804697badcfad118f8c84db756b33cd9154144da4b19166f9f7caea94e", - "key": "roborumble/bvh.hdr.Hodur_0.4.jar", + "jar": "m3thos.Eva00_1.1.jar", + "jar_sha256": "b834a8def7ee3dd24725ebc7c2fa244c24185f898d4271e9de8905d3ff6d5ea1", + "key": "roborumble/m3thos.Eva00_1.1.jar", "kind": "robot" }, - "status": "DISCREPANCY (score)", + "status": "PASS", "tank_royale": { - "elapsed": 34.0, + "bridge_only_signatures": null, + "elapsed": 14.0, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 1214.0, + "score": 3706.0, "scores": [ - 681.0, - 533.0 + 1899.0, + 1807.0 ], "skipped": null } } ], - "status": "score-review" + "status": "PASS" }, - "roborumble/bvh.loki.Loki_0.5.jar": { + "roborumble/m3thos.Eva02_0.7.1.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "bvh.loki.Loki 0.5", + "classic_selected": "m3thos.Eva02 0.7.1", "division": "roborumble", - "jar": "bvh.loki.Loki_0.5.jar", - "jar_sha256": "46f15811b1cbdfa571eca677320bd0efca497cfb6ed6b672e82f8c27dfb3f0c6", - "key": "roborumble/bvh.loki.Loki_0.5.jar", + "jar": "m3thos.Eva02_0.7.1.jar", + "jar_sha256": "a701e12fadda3d024e39051efa6ea34a3b042dbe21243c566753d9877bfb273f", + "key": "roborumble/m3thos.Eva02_0.7.1.jar", "kind": "robot" }, - "latest_observation": "c679e09780c18a52", + "latest_observation": "5ff80459c930a46d", "observations": [ { "classic": { - "elapsed": 2.6, + "elapsed": 3.0, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 8924.0, + "score": 5803.0, "scores": [ - 4303.0, - 4621.0 + 2701.0, + 3102.0 ], - "selected": "bvh.loki.Loki 0.5" + "selected": "m3thos.Eva02 0.7.1" }, - "completed_at": "2026-09-08T21:05:47Z", - "delta_pct": -47.3, - "id": "c679e09780c18a52", + "completed_at": "2026-09-12T22:25:34Z", + "confirmation": null, + "delta_pct": null, + "id": "5ff80459c930a46d", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "886afdcacd8ddb60c250bc4c7b00b518397968bf", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -48730,90 +110395,94 @@ "width": 800 }, "source_identity": { - "classic_selected": "bvh.loki.Loki 0.5", + "classic_selected": "m3thos.Eva02 0.7.1", "division": "roborumble", - "jar": "bvh.loki.Loki_0.5.jar", - "jar_sha256": "46f15811b1cbdfa571eca677320bd0efca497cfb6ed6b672e82f8c27dfb3f0c6", - "key": "roborumble/bvh.loki.Loki_0.5.jar", + "jar": "m3thos.Eva02_0.7.1.jar", + "jar_sha256": "a701e12fadda3d024e39051efa6ea34a3b042dbe21243c566753d9877bfb273f", + "key": "roborumble/m3thos.Eva02_0.7.1.jar", "kind": "robot" }, - "status": "DISCREPANCY (score)", + "status": "DISCREPANCY (outcome)", "tank_royale": { - "elapsed": 20.2, - "error_count": 0, - "errors": [], - "has_log": false, - "ok": true, - "score": 4699.0, - "scores": [ - 2780.0, - 1919.0 + "bridge_only_signatures": null, + "elapsed": 34.0, + "error_count": 1, + "error_signatures": [ + { + "exception": "dev.robocode.tankroyale.runner.BattleException", + "origin": "TrBattleWorker.runBattle" + } + ], + "errors": [ + "FATAL: dev.robocode.tankroyale.runner.BattleException: Bot connect timeout (30000ms): connected 0 of 2. Pending: [Eva02 0.7.1 (Miguel S. Filipe (miguel.filipe@gmail.com) ) (\u00d72)]" ], + "has_log": true, + "ok": false, + "score": null, + "scores": [], "skipped": null } } ], - "status": "score-review" + "status": "DISCREPANCY (outcome)" }, - "roborumble/bvh.micro.Freya_0.3.jar": { + "roborumble/m3thos.mini.Eva01_0.5.5.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "bvh.micro.Freya 0.3", + "classic_selected": "m3thos.mini.Eva01 0.5.5", "division": "roborumble", - "jar": "bvh.micro.Freya_0.3.jar", - "jar_sha256": "97868a0fa8ea022df4e19ae810f3a098da8c0d897ebd4564c1afe2b9f9002890", - "key": "roborumble/bvh.micro.Freya_0.3.jar", + "jar": "m3thos.mini.Eva01_0.5.5.jar", + "jar_sha256": "79258e6872e2b3d905481f6dbb5686c32a14b1ae8531c79c881fdbb16e0754a2", + "key": "roborumble/m3thos.mini.Eva01_0.5.5.jar", "kind": "robot" }, - "latest_observation": "2f1498ceffdac7e0", + "latest_observation": "b9e4c8f459ecab10", "observations": [ { "classic": { - "elapsed": 2.7, + "elapsed": 2.8, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 5721.0, + "score": 4884.0, "scores": [ - 2696.0, - 3025.0 + 2370.0, + 2514.0 ], - "selected": "bvh.micro.Freya 0.3" + "selected": "m3thos.mini.Eva01 0.5.5" }, - "completed_at": "2026-09-08T21:06:12Z", - "delta_pct": -6.4, - "id": "2f1498ceffdac7e0", + "completed_at": "2026-09-12T22:26:11Z", + "confirmation": null, + "delta_pct": null, + "id": "b9e4c8f459ecab10", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "886afdcacd8ddb60c250bc4c7b00b518397968bf", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -48821,90 +110490,94 @@ "width": 800 }, "source_identity": { - "classic_selected": "bvh.micro.Freya 0.3", + "classic_selected": "m3thos.mini.Eva01 0.5.5", "division": "roborumble", - "jar": "bvh.micro.Freya_0.3.jar", - "jar_sha256": "97868a0fa8ea022df4e19ae810f3a098da8c0d897ebd4564c1afe2b9f9002890", - "key": "roborumble/bvh.micro.Freya_0.3.jar", + "jar": "m3thos.mini.Eva01_0.5.5.jar", + "jar_sha256": "79258e6872e2b3d905481f6dbb5686c32a14b1ae8531c79c881fdbb16e0754a2", + "key": "roborumble/m3thos.mini.Eva01_0.5.5.jar", "kind": "robot" }, - "status": "PASS", + "status": "DISCREPANCY (outcome)", "tank_royale": { - "elapsed": 22.0, - "error_count": 0, - "errors": [], - "has_log": false, - "ok": true, - "score": 5354.0, - "scores": [ - 2752.0, - 2602.0 + "bridge_only_signatures": null, + "elapsed": 34.0, + "error_count": 1, + "error_signatures": [ + { + "exception": "dev.robocode.tankroyale.runner.BattleException", + "origin": "TrBattleWorker.runBattle" + } ], + "errors": [ + "FATAL: dev.robocode.tankroyale.runner.BattleException: Bot connect timeout (30000ms): connected 0 of 2. Pending: [Eva01 0.5.5 (Miguel S. Filipe (miguel.filipe@gmail.com) ) (\u00d72)]" + ], + "has_log": true, + "ok": false, + "score": null, + "scores": [], "skipped": null } } ], - "status": "PASS" + "status": "DISCREPANCY (outcome)" }, - "roborumble/bvh.micro.Svadilfari_0.2.jar": { + "roborumble/ma.is.fon.rs.RobotA_0.01.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "bvh.micro.Svadilfari 0.2", + "classic_selected": "ma.is.fon.rs.RobotA 0.01", "division": "roborumble", - "jar": "bvh.micro.Svadilfari_0.2.jar", - "jar_sha256": "29e9fea32030a66e7c1be3582f3e06fb461d760fb0d4457b420d30ed0cb2b12a", - "key": "roborumble/bvh.micro.Svadilfari_0.2.jar", + "jar": "ma.is.fon.rs.RobotA_0.01.jar", + "jar_sha256": "4462fc6c458c7a65d32345b0940116241c43416c7448dc02c7dd8c743c764f5b", + "key": "roborumble/ma.is.fon.rs.RobotA_0.01.jar", "kind": "robot" }, - "latest_observation": "4dadfc08d52161ce", + "latest_observation": "a074520b2159b864", "observations": [ { "classic": { - "elapsed": 2.5, + "elapsed": 2.2, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 8232.0, + "score": 12819.0, "scores": [ - 4101.0, - 4131.0 + 6432.0, + 6387.0 ], - "selected": "bvh.micro.Svadilfari 0.2" + "selected": "ma.is.fon.rs.RobotA 0.01" }, - "completed_at": "2026-09-08T21:06:31Z", - "delta_pct": 2.4, - "id": "4dadfc08d52161ce", + "completed_at": "2026-09-12T22:26:24Z", + "confirmation": null, + "delta_pct": -43.2, + "id": "a074520b2159b864", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "886afdcacd8ddb60c250bc4c7b00b518397968bf", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -48912,90 +110585,90 @@ "width": 800 }, "source_identity": { - "classic_selected": "bvh.micro.Svadilfari 0.2", + "classic_selected": "ma.is.fon.rs.RobotA 0.01", "division": "roborumble", - "jar": "bvh.micro.Svadilfari_0.2.jar", - "jar_sha256": "29e9fea32030a66e7c1be3582f3e06fb461d760fb0d4457b420d30ed0cb2b12a", - "key": "roborumble/bvh.micro.Svadilfari_0.2.jar", + "jar": "ma.is.fon.rs.RobotA_0.01.jar", + "jar_sha256": "4462fc6c458c7a65d32345b0940116241c43416c7448dc02c7dd8c743c764f5b", + "key": "roborumble/ma.is.fon.rs.RobotA_0.01.jar", "kind": "robot" }, - "status": "PASS", + "status": "DISCREPANCY (score)", "tank_royale": { - "elapsed": 16.0, + "bridge_only_signatures": null, + "elapsed": 10.0, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 8430.0, + "score": 7283.0, "scores": [ - 4518.0, - 3912.0 + 3907.0, + 3376.0 ], "skipped": null } } ], - "status": "PASS" + "status": "score-review" }, - "roborumble/bvh.mini.Fenrir_0.39.jar": { + "roborumble/madmath.Cow_0.1.1.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "bvh.mini.Fenrir 0.39", + "classic_selected": "madmath.Cow 0.1.1", "division": "roborumble", - "jar": "bvh.mini.Fenrir_0.39.jar", - "jar_sha256": "3d63cdf11e5846c7e295db9c27965b84e7d1944b923d09979819f188700220a1", - "key": "roborumble/bvh.mini.Fenrir_0.39.jar", + "jar": "madmath.Cow_0.1.1.jar", + "jar_sha256": "939c09b0fc2cd80d024bd286dd37cad3e78e0377b4d78a04ba29466c68d7d51c", + "key": "roborumble/madmath.Cow_0.1.1.jar", "kind": "robot" }, - "latest_observation": "ff57f8cea1909f17", + "latest_observation": "25cbd1ecf5367e95", "observations": [ { "classic": { "elapsed": 2.6, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 6512.0, + "score": 6666.0, "scores": [ - 3618.0, - 2894.0 + 3397.0, + 3269.0 ], - "selected": "bvh.mini.Fenrir 0.39" + "selected": "madmath.Cow 0.1.1" }, - "completed_at": "2026-09-08T21:06:50Z", - "delta_pct": -11.2, - "id": "ff57f8cea1909f17", + "completed_at": "2026-09-12T22:26:47Z", + "confirmation": null, + "delta_pct": -29.8, + "id": "25cbd1ecf5367e95", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "886afdcacd8ddb60c250bc4c7b00b518397968bf", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -49003,90 +110676,90 @@ "width": 800 }, "source_identity": { - "classic_selected": "bvh.mini.Fenrir 0.39", + "classic_selected": "madmath.Cow 0.1.1", "division": "roborumble", - "jar": "bvh.mini.Fenrir_0.39.jar", - "jar_sha256": "3d63cdf11e5846c7e295db9c27965b84e7d1944b923d09979819f188700220a1", - "key": "roborumble/bvh.mini.Fenrir_0.39.jar", + "jar": "madmath.Cow_0.1.1.jar", + "jar_sha256": "939c09b0fc2cd80d024bd286dd37cad3e78e0377b4d78a04ba29466c68d7d51c", + "key": "roborumble/madmath.Cow_0.1.1.jar", "kind": "robot" }, - "status": "PASS", + "status": "DISCREPANCY (score)", "tank_royale": { - "elapsed": 16.0, + "bridge_only_signatures": null, + "elapsed": 20.0, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 5782.0, + "score": 4679.0, "scores": [ - 3256.0, - 2526.0 + 2368.0, + 2311.0 ], "skipped": null } } ], - "status": "PASS" + "status": "score-review" }, - "roborumble/bvh.mini.Freya_0.55.jar": { + "roborumble/mae.Mae1_1.1.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "bvh.mini.Freya 0.55", + "classic_selected": "mae.Mae1 1.1", "division": "roborumble", - "jar": "bvh.mini.Freya_0.55.jar", - "jar_sha256": "4a3e45054c437df7ac073756d18ff8b6cf67ab4f9f686484a325afdd455c4452", - "key": "roborumble/bvh.mini.Freya_0.55.jar", + "jar": "mae.Mae1_1.1.jar", + "jar_sha256": "afb700570624c8e756276070b5990e844d915a3adce280e7e8210c20007734a3", + "key": "roborumble/mae.Mae1_1.1.jar", "kind": "robot" }, - "latest_observation": "815497cd00aa57b0", + "latest_observation": "a5d90777e3acda8b", "observations": [ { "classic": { - "elapsed": 2.7, + "elapsed": 3.3, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 5601.0, + "score": 4332.0, "scores": [ - 2929.0, - 2672.0 + 1860.0, + 2472.0 ], - "selected": "bvh.mini.Freya 0.55" + "selected": "mae.Mae1 1.1" }, - "completed_at": "2026-09-08T21:07:13Z", - "delta_pct": -21.3, - "id": "815497cd00aa57b0", + "completed_at": "2026-09-12T22:27:15Z", + "confirmation": null, + "delta_pct": 0.4, + "id": "a5d90777e3acda8b", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "886afdcacd8ddb60c250bc4c7b00b518397968bf", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -49094,24 +110767,26 @@ "width": 800 }, "source_identity": { - "classic_selected": "bvh.mini.Freya 0.55", + "classic_selected": "mae.Mae1 1.1", "division": "roborumble", - "jar": "bvh.mini.Freya_0.55.jar", - "jar_sha256": "4a3e45054c437df7ac073756d18ff8b6cf67ab4f9f686484a325afdd455c4452", - "key": "roborumble/bvh.mini.Freya_0.55.jar", + "jar": "mae.Mae1_1.1.jar", + "jar_sha256": "afb700570624c8e756276070b5990e844d915a3adce280e7e8210c20007734a3", + "key": "roborumble/mae.Mae1_1.1.jar", "kind": "robot" }, "status": "PASS", "tank_royale": { - "elapsed": 20.0, + "bridge_only_signatures": null, + "elapsed": 24.0, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 4407.0, + "score": 4348.0, "scores": [ - 2423.0, - 1984.0 + 2260.0, + 2088.0 ], "skipped": null } @@ -49119,65 +110794,63 @@ ], "status": "PASS" }, - "roborumble/bvh.mini.Mjolnir_0.3.jar": { + "roborumble/mahrgell.mahrram_1.3.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "bvh.mini.Mjolnir 0.3", + "classic_selected": "mahrgell.mahrram 1.3", "division": "roborumble", - "jar": "bvh.mini.Mjolnir_0.3.jar", - "jar_sha256": "00db20570e2aebaf5d4ead68f922b93bf07d4b6620524ea9655f8e24a51e8641", - "key": "roborumble/bvh.mini.Mjolnir_0.3.jar", + "jar": "mahrgell.mahrram_1.3.jar", + "jar_sha256": "c247e3f74c6df857559b04caf7ceab0e84377b7337696d14ec390ad4508552d6", + "key": "roborumble/mahrgell.mahrram_1.3.jar", "kind": "robot" }, - "latest_observation": "3d1c3e239d06d795", + "latest_observation": "8a064582ce83895d", "observations": [ { "classic": { - "elapsed": 2.3, + "elapsed": 2.1, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 9311.0, + "score": 10530.0, "scores": [ - 4758.0, - 4553.0 + 5158.0, + 5372.0 ], - "selected": "bvh.mini.Mjolnir 0.3" + "selected": "mahrgell.mahrram 1.3" }, - "completed_at": "2026-09-08T21:07:28Z", - "delta_pct": -26.4, - "id": "3d1c3e239d06d795", + "completed_at": "2026-09-12T22:27:27Z", + "confirmation": null, + "delta_pct": 49.4, + "id": "8a064582ce83895d", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "886afdcacd8ddb60c250bc4c7b00b518397968bf", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -49185,24 +110858,26 @@ "width": 800 }, "source_identity": { - "classic_selected": "bvh.mini.Mjolnir 0.3", + "classic_selected": "mahrgell.mahrram 1.3", "division": "roborumble", - "jar": "bvh.mini.Mjolnir_0.3.jar", - "jar_sha256": "00db20570e2aebaf5d4ead68f922b93bf07d4b6620524ea9655f8e24a51e8641", - "key": "roborumble/bvh.mini.Mjolnir_0.3.jar", + "jar": "mahrgell.mahrram_1.3.jar", + "jar_sha256": "c247e3f74c6df857559b04caf7ceab0e84377b7337696d14ec390ad4508552d6", + "key": "roborumble/mahrgell.mahrram_1.3.jar", "kind": "robot" }, "status": "DISCREPANCY (score)", "tank_royale": { - "elapsed": 12.0, + "bridge_only_signatures": null, + "elapsed": 10.0, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 6851.0, + "score": 15731.0, "scores": [ - 5183.0, - 1668.0 + 7927.0, + 7804.0 ], "skipped": null } @@ -49210,65 +110885,63 @@ ], "status": "score-review" }, - "roborumble/bvh.mini.Wodan_0.50.jar": { + "roborumble/marcinek.TopGun_1.3.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "bvh.mini.Wodan 0.50", + "classic_selected": "marcinek.TopGun 1.3", "division": "roborumble", - "jar": "bvh.mini.Wodan_0.50.jar", - "jar_sha256": "ee38f593b18a05e2a8864301c15e9106be792d1ab51f6f7cb6df64eb1eb8b435", - "key": "roborumble/bvh.mini.Wodan_0.50.jar", + "jar": "marcinek.TopGun_1.3.jar", + "jar_sha256": "fda768f7f481f2b58fe981313406b3df237d1e11ed3fa7ac1685bbbcac4c5bb8", + "key": "roborumble/marcinek.TopGun_1.3.jar", "kind": "robot" }, - "latest_observation": "d89e8a196146f1ec", + "latest_observation": "1753ac81f37305a4", "observations": [ { "classic": { - "elapsed": 2.7, + "elapsed": 2.4, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 7054.0, + "score": 7527.0, "scores": [ - 2923.0, - 4131.0 + 3574.0, + 3953.0 ], - "selected": "bvh.mini.Wodan 0.50" + "selected": "marcinek.TopGun 1.3" }, - "completed_at": "2026-09-08T21:07:47Z", - "delta_pct": 7.0, - "id": "d89e8a196146f1ec", + "completed_at": "2026-09-12T22:27:44Z", + "confirmation": null, + "delta_pct": -1.0, + "id": "1753ac81f37305a4", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "886afdcacd8ddb60c250bc4c7b00b518397968bf", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -49276,24 +110949,26 @@ "width": 800 }, "source_identity": { - "classic_selected": "bvh.mini.Wodan 0.50", + "classic_selected": "marcinek.TopGun 1.3", "division": "roborumble", - "jar": "bvh.mini.Wodan_0.50.jar", - "jar_sha256": "ee38f593b18a05e2a8864301c15e9106be792d1ab51f6f7cb6df64eb1eb8b435", - "key": "roborumble/bvh.mini.Wodan_0.50.jar", + "jar": "marcinek.TopGun_1.3.jar", + "jar_sha256": "fda768f7f481f2b58fe981313406b3df237d1e11ed3fa7ac1685bbbcac4c5bb8", + "key": "roborumble/marcinek.TopGun_1.3.jar", "kind": "robot" }, "status": "PASS", "tank_royale": { - "elapsed": 16.0, + "bridge_only_signatures": null, + "elapsed": 14.0, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 7550.0, + "score": 7449.0, "scores": [ - 3931.0, - 3619.0 + 4277.0, + 3172.0 ], "skipped": null } @@ -49301,65 +110976,63 @@ ], "status": "PASS" }, - "roborumble/bvh.tyr.Tyr_1.74.jar": { + "roborumble/maribo.FollowFire_1.11.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "bvh.tyr.Tyr 1.74", + "classic_selected": "maribo.FollowFire 1.11", "division": "roborumble", - "jar": "bvh.tyr.Tyr_1.74.jar", - "jar_sha256": "9a05860b706454676778504df31631db93837f284afb17359b9ddec691bce34a", - "key": "roborumble/bvh.tyr.Tyr_1.74.jar", + "jar": "maribo.FollowFire_1.11.jar", + "jar_sha256": "967c1664e3ae827c9fcec77b419184f6f65e737e18eb568d4ca1c48eba6b205e", + "key": "roborumble/maribo.FollowFire_1.11.jar", "kind": "robot" }, - "latest_observation": "f40bad8a5aff304f", + "latest_observation": "8c3f1a7c4da1872b", "observations": [ { "classic": { - "elapsed": 2.7, + "elapsed": 2.1, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 7879.0, + "score": 10474.0, "scores": [ - 3920.0, - 3959.0 + 4898.0, + 5576.0 ], - "selected": "bvh.tyr.Tyr 1.74" + "selected": "maribo.FollowFire 1.11" }, - "completed_at": "2026-09-08T21:08:08Z", - "delta_pct": -24.8, - "id": "f40bad8a5aff304f", + "completed_at": "2026-09-12T22:27:56Z", + "confirmation": null, + "delta_pct": 59.1, + "id": "8c3f1a7c4da1872b", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "886afdcacd8ddb60c250bc4c7b00b518397968bf", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -49367,90 +111040,90 @@ "width": 800 }, "source_identity": { - "classic_selected": "bvh.tyr.Tyr 1.74", + "classic_selected": "maribo.FollowFire 1.11", "division": "roborumble", - "jar": "bvh.tyr.Tyr_1.74.jar", - "jar_sha256": "9a05860b706454676778504df31631db93837f284afb17359b9ddec691bce34a", - "key": "roborumble/bvh.tyr.Tyr_1.74.jar", + "jar": "maribo.FollowFire_1.11.jar", + "jar_sha256": "967c1664e3ae827c9fcec77b419184f6f65e737e18eb568d4ca1c48eba6b205e", + "key": "roborumble/maribo.FollowFire_1.11.jar", "kind": "robot" }, - "status": "PASS", + "status": "DISCREPANCY (score)", "tank_royale": { - "elapsed": 18.0, + "bridge_only_signatures": null, + "elapsed": 10.0, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 5923.0, + "score": 16664.0, "scores": [ - 3174.0, - 2749.0 + 8452.0, + 8212.0 ], "skipped": null } } ], - "status": "PASS" + "status": "score-review" }, - "roborumble/bwbaugh.nano.Tirunculus_0.0.0a.jar": { + "roborumble/maribo.IotaCT_1.0.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "bwbaugh.nano.Tirunculus 0.0.0a", + "classic_selected": "maribo.IotaCT 1.0", "division": "roborumble", - "jar": "bwbaugh.nano.Tirunculus_0.0.0a.jar", - "jar_sha256": "d1fcb6072a0110947df39ad0db284f0fa4f229e7ef0f0d2502553ca0b2acb7d4", - "key": "roborumble/bwbaugh.nano.Tirunculus_0.0.0a.jar", + "jar": "maribo.IotaCT_1.0.jar", + "jar_sha256": "a771a4cc8c31356a8af7e1125f9cfabd9622c98c007726f2aa39eb7ec77e17c8", + "key": "roborumble/maribo.IotaCT_1.0.jar", "kind": "robot" }, - "latest_observation": "b935555308fc01c3", + "latest_observation": "99e8e67f560ef782", "observations": [ { "classic": { - "elapsed": 2.3, + "elapsed": 2.4, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 10796.0, + "score": 8989.0, "scores": [ - 5699.0, - 5097.0 + 4921.0, + 4068.0 ], - "selected": "bwbaugh.nano.Tirunculus 0.0.0a" + "selected": "maribo.IotaCT 1.0" }, - "completed_at": "2026-09-08T21:08:20Z", - "delta_pct": 53.7, - "id": "b935555308fc01c3", + "completed_at": "2026-09-12T22:28:13Z", + "confirmation": null, + "delta_pct": -14.7, + "id": "99e8e67f560ef782", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "886afdcacd8ddb60c250bc4c7b00b518397968bf", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -49458,90 +111131,90 @@ "width": 800 }, "source_identity": { - "classic_selected": "bwbaugh.nano.Tirunculus 0.0.0a", + "classic_selected": "maribo.IotaCT 1.0", "division": "roborumble", - "jar": "bwbaugh.nano.Tirunculus_0.0.0a.jar", - "jar_sha256": "d1fcb6072a0110947df39ad0db284f0fa4f229e7ef0f0d2502553ca0b2acb7d4", - "key": "roborumble/bwbaugh.nano.Tirunculus_0.0.0a.jar", + "jar": "maribo.IotaCT_1.0.jar", + "jar_sha256": "a771a4cc8c31356a8af7e1125f9cfabd9622c98c007726f2aa39eb7ec77e17c8", + "key": "roborumble/maribo.IotaCT_1.0.jar", "kind": "robot" }, - "status": "DISCREPANCY (score)", + "status": "PASS", "tank_royale": { - "elapsed": 10.0, + "bridge_only_signatures": null, + "elapsed": 14.0, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 16591.0, + "score": 7666.0, "scores": [ - 8399.0, - 8192.0 + 4014.0, + 3652.0 ], "skipped": null } } ], - "status": "score-review" + "status": "PASS" }, - "roborumble/bzdp.BoxCar_2.0.jar": { + "roborumble/maribo.Omicron_1.0.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "bzdp.BoxCar 2.0", + "classic_selected": "maribo.Omicron 1.0", "division": "roborumble", - "jar": "bzdp.BoxCar_2.0.jar", - "jar_sha256": "22e13c11b29fb3ed958288b38d67ab6ae02bd899f16ddcf96295f621e795ecb6", - "key": "roborumble/bzdp.BoxCar_2.0.jar", + "jar": "maribo.Omicron_1.0.jar", + "jar_sha256": "2079ad27794bd657b1e2aabe07afbb0e3800f05a9224b30a1aa4cb146d2ab922", + "key": "roborumble/maribo.Omicron_1.0.jar", "kind": "robot" }, - "latest_observation": "67c108afb1e67978", + "latest_observation": "531052ecdf1582a2", "observations": [ { "classic": { - "elapsed": 2.4, + "elapsed": 2.5, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 7919.0, + "score": 4613.0, "scores": [ - 3893.0, - 4026.0 + 2166.0, + 2447.0 ], - "selected": "bzdp.BoxCar 2.0" + "selected": "maribo.Omicron 1.0" }, - "completed_at": "2026-09-08T21:08:37Z", - "delta_pct": -9.8, - "id": "67c108afb1e67978", + "completed_at": "2026-09-12T22:29:01Z", + "confirmation": null, + "delta_pct": -41.6, + "id": "531052ecdf1582a2", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "886afdcacd8ddb60c250bc4c7b00b518397968bf", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -49549,90 +111222,90 @@ "width": 800 }, "source_identity": { - "classic_selected": "bzdp.BoxCar 2.0", + "classic_selected": "maribo.Omicron 1.0", "division": "roborumble", - "jar": "bzdp.BoxCar_2.0.jar", - "jar_sha256": "22e13c11b29fb3ed958288b38d67ab6ae02bd899f16ddcf96295f621e795ecb6", - "key": "roborumble/bzdp.BoxCar_2.0.jar", + "jar": "maribo.Omicron_1.0.jar", + "jar_sha256": "2079ad27794bd657b1e2aabe07afbb0e3800f05a9224b30a1aa4cb146d2ab922", + "key": "roborumble/maribo.Omicron_1.0.jar", "kind": "robot" }, - "status": "PASS", + "status": "DISCREPANCY (score)", "tank_royale": { - "elapsed": 14.0, + "bridge_only_signatures": null, + "elapsed": 26.0, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 7143.0, + "score": 2694.0, "scores": [ - 4080.0, - 3063.0 + 1516.0, + 1178.0 ], "skipped": null } } ], - "status": "PASS" + "status": "score-review" }, - "roborumble/bzdp.Pansy_2.1.jar": { + "roborumble/maribo.melee.BMV_0.1.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "bzdp.Pansy 2.1", + "classic_selected": "maribo.melee.BMV 0.1", "division": "roborumble", - "jar": "bzdp.Pansy_2.1.jar", - "jar_sha256": "71057e19022678ba19a873854afb4bd32a986ae77c5105c79cb549ab664ff939", - "key": "roborumble/bzdp.Pansy_2.1.jar", + "jar": "maribo.melee.BMV_0.1.jar", + "jar_sha256": "e18ed995c065ffd9746f408154bafefa34a02ae60945abc5fb5b20bffec21dd1", + "key": "roborumble/maribo.melee.BMV_0.1.jar", "kind": "robot" }, - "latest_observation": "a96b223336b776df", + "latest_observation": "cd6390b2871f4e30", "observations": [ { "classic": { - "elapsed": 2.3, + "elapsed": 2.5, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 7852.0, + "score": 6032.0, "scores": [ - 3771.0, - 4081.0 + 2583.0, + 3449.0 ], - "selected": "bzdp.Pansy 2.1" + "selected": "maribo.melee.BMV 0.1" }, - "completed_at": "2026-09-08T21:08:54Z", - "delta_pct": -1.3, - "id": "a96b223336b776df", + "completed_at": "2026-09-12T22:28:32Z", + "confirmation": null, + "delta_pct": 8.6, + "id": "cd6390b2871f4e30", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "886afdcacd8ddb60c250bc4c7b00b518397968bf", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -49640,24 +111313,26 @@ "width": 800 }, "source_identity": { - "classic_selected": "bzdp.Pansy 2.1", + "classic_selected": "maribo.melee.BMV 0.1", "division": "roborumble", - "jar": "bzdp.Pansy_2.1.jar", - "jar_sha256": "71057e19022678ba19a873854afb4bd32a986ae77c5105c79cb549ab664ff939", - "key": "roborumble/bzdp.Pansy_2.1.jar", + "jar": "maribo.melee.BMV_0.1.jar", + "jar_sha256": "e18ed995c065ffd9746f408154bafefa34a02ae60945abc5fb5b20bffec21dd1", + "key": "roborumble/maribo.melee.BMV_0.1.jar", "kind": "robot" }, "status": "PASS", "tank_royale": { - "elapsed": 14.0, + "bridge_only_signatures": null, + "elapsed": 16.0, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 7749.0, + "score": 6553.0, "scores": [ - 4975.0, - 2774.0 + 3666.0, + 2887.0 ], "skipped": null } @@ -49665,65 +111340,63 @@ ], "status": "PASS" }, - "roborumble/caimano.Furia_Ceca_0.22.jar": { + "roborumble/marksteam.Phoenix_1.0.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "caimano.Furia_Ceca 0.22", + "classic_selected": "marksteam.Phoenix 1.0", "division": "roborumble", - "jar": "caimano.Furia_Ceca_0.22.jar", - "jar_sha256": "c1ce5bbf430fe9edc12da1768284be6f3d5bc35a9f48c84819f21edd32241616", - "key": "roborumble/caimano.Furia_Ceca_0.22.jar", + "jar": "marksteam.Phoenix_1.0.jar", + "jar_sha256": "0e76127d76efd6fd593c51ea42574cb573df18bf94cbf78c4bddad0e08a60ff9", + "key": "roborumble/marksteam.Phoenix_1.0.jar", "kind": "robot" }, - "latest_observation": "99d4763f956857c8", + "latest_observation": "a07937e0978e74f3", "observations": [ { "classic": { - "elapsed": 2.4, + "elapsed": 2.5, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 5715.0, + "score": 6195.0, "scores": [ - 2046.0, - 3669.0 + 3182.0, + 3013.0 ], - "selected": "caimano.Furia_Ceca 0.22" + "selected": "marksteam.Phoenix 1.0" }, - "completed_at": "2026-09-08T21:09:08Z", - "delta_pct": -45.5, - "id": "99d4763f956857c8", + "completed_at": "2026-09-12T22:29:15Z", + "confirmation": null, + "delta_pct": 81.6, + "id": "a07937e0978e74f3", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "886afdcacd8ddb60c250bc4c7b00b518397968bf", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -49731,24 +111404,26 @@ "width": 800 }, "source_identity": { - "classic_selected": "caimano.Furia_Ceca 0.22", + "classic_selected": "marksteam.Phoenix 1.0", "division": "roborumble", - "jar": "caimano.Furia_Ceca_0.22.jar", - "jar_sha256": "c1ce5bbf430fe9edc12da1768284be6f3d5bc35a9f48c84819f21edd32241616", - "key": "roborumble/caimano.Furia_Ceca_0.22.jar", + "jar": "marksteam.Phoenix_1.0.jar", + "jar_sha256": "0e76127d76efd6fd593c51ea42574cb573df18bf94cbf78c4bddad0e08a60ff9", + "key": "roborumble/marksteam.Phoenix_1.0.jar", "kind": "robot" }, "status": "DISCREPANCY (score)", "tank_royale": { + "bridge_only_signatures": null, "elapsed": 12.0, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 3115.0, + "score": 11249.0, "scores": [ - 1628.0, - 1487.0 + 5631.0, + 5618.0 ], "skipped": null } @@ -49756,65 +111431,63 @@ ], "status": "score-review" }, - "roborumble/casey.Flee_1.0.jar": { + "roborumble/matt.BlueMind_0.8.00.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "casey.Flee 1.0", + "classic_selected": "matt.BlueMind 0.8.00", "division": "roborumble", - "jar": "casey.Flee_1.0.jar", - "jar_sha256": "5edafd751bd0f81632eecb11ea74c9bfbf3eb3b2c8e4aead9eaf7ec7cd41aecc", - "key": "roborumble/casey.Flee_1.0.jar", + "jar": "matt.BlueMind_0.8.00.jar", + "jar_sha256": "84de252b0cff76fe509e028185f385982f5a98d0330224e293dda027b8692b4b", + "key": "roborumble/matt.BlueMind_0.8.00.jar", "kind": "robot" }, - "latest_observation": "ad19841f89469280", + "latest_observation": "6a9e51857545b3d5", "observations": [ { "classic": { - "elapsed": 2.4, + "elapsed": 12.3, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 4964.0, + "score": 3556.0, "scores": [ - 2442.0, - 2522.0 + 1629.0, + 1927.0 ], - "selected": "casey.Flee 1.0" + "selected": "matt.BlueMind 0.8.00" }, - "completed_at": "2026-09-08T21:09:27Z", - "delta_pct": -5.1, - "id": "ad19841f89469280", + "completed_at": "2026-09-12T22:30:31Z", + "confirmation": null, + "delta_pct": 7.6, + "id": "6a9e51857545b3d5", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "886afdcacd8ddb60c250bc4c7b00b518397968bf", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -49822,24 +111495,26 @@ "width": 800 }, "source_identity": { - "classic_selected": "casey.Flee 1.0", + "classic_selected": "matt.BlueMind 0.8.00", "division": "roborumble", - "jar": "casey.Flee_1.0.jar", - "jar_sha256": "5edafd751bd0f81632eecb11ea74c9bfbf3eb3b2c8e4aead9eaf7ec7cd41aecc", - "key": "roborumble/casey.Flee_1.0.jar", + "jar": "matt.BlueMind_0.8.00.jar", + "jar_sha256": "84de252b0cff76fe509e028185f385982f5a98d0330224e293dda027b8692b4b", + "key": "roborumble/matt.BlueMind_0.8.00.jar", "kind": "robot" }, "status": "PASS", "tank_royale": { - "elapsed": 16.0, + "bridge_only_signatures": null, + "elapsed": 34.0, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 4710.0, + "score": 3828.0, "scores": [ - 2584.0, - 2126.0 + 1966.0, + 1862.0 ], "skipped": null } @@ -49847,67 +111522,63 @@ ], "status": "PASS" }, - "roborumble/cb.Domogled_1.2.jar": { + "roborumble/matt.UnderDark3_2.4.34.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "cb.Domogled 1.2", + "classic_selected": "matt.UnderDark3 2.4.34", "division": "roborumble", - "jar": "cb.Domogled_1.2.jar", - "jar_sha256": "75c374c61a80c5606d1ecd1220d80d663497eef1618b9a80f112c41e5b81e70a", - "key": "roborumble/cb.Domogled_1.2.jar", + "jar": "matt.UnderDark3_2.4.34.jar", + "jar_sha256": "81892db866c35728275e499c9e352dffbef5558376f9c32649e74ee98764ed7b", + "key": "roborumble/matt.UnderDark3_2.4.34.jar", "kind": "robot" }, - "latest_observation": "ab4a97816c447d60", + "latest_observation": "c992e509cf71f004", "observations": [ { "classic": { - "elapsed": 18.3, - "error_count": 1, - "errors": [ - "Unable to stop thread: cb.Domogled 1.2 (2)" - ], - "has_log": true, + "elapsed": 4.7, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, "ok": true, - "score": 4626.0, + "score": 5248.0, "scores": [ - 2097.0, - 2529.0 + 1926.0, + 3322.0 ], - "selected": "cb.Domogled 1.2" + "selected": "matt.UnderDark3 2.4.34" }, - "completed_at": "2026-09-08T21:09:50Z", - "delta_pct": null, - "id": "ab4a97816c447d60", + "completed_at": "2026-09-12T22:31:06Z", + "confirmation": null, + "delta_pct": -92.0, + "id": "c992e509cf71f004", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "886afdcacd8ddb60c250bc4c7b00b518397968bf", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -49915,91 +111586,90 @@ "width": 800 }, "source_identity": { - "classic_selected": "cb.Domogled 1.2", + "classic_selected": "matt.UnderDark3 2.4.34", "division": "roborumble", - "jar": "cb.Domogled_1.2.jar", - "jar_sha256": "75c374c61a80c5606d1ecd1220d80d663497eef1618b9a80f112c41e5b81e70a", - "key": "roborumble/cb.Domogled_1.2.jar", + "jar": "matt.UnderDark3_2.4.34.jar", + "jar_sha256": "81892db866c35728275e499c9e352dffbef5558376f9c32649e74ee98764ed7b", + "key": "roborumble/matt.UnderDark3_2.4.34.jar", "kind": "robot" }, - "status": "FAIL (TR)", + "status": "DISCREPANCY (score)", "tank_royale": { - "elapsed": 4.1, - "error_count": 3, - "errors": [ - "HARNESS: worker produced no result (exit code -1)", - "java.lang.NullPointerException: Cannot read field \"location\" because \"this.myState\" is null", - "java.lang.NullPointerException: Cannot read field \"location\" because \"this.myState\" is null" + "bridge_only_signatures": null, + "elapsed": 30.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 420.0, + "scores": [ + 240.0, + 180.0 ], - "has_log": true, - "ok": false, - "score": null, - "scores": [], "skipped": null } } ], - "status": "FAIL (TR)" + "status": "score-review" }, - "roborumble/cb.fire.Firestarter_2.0f.jar": { + "roborumble/matt.UnderDark4_0.4.00.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "cb.fire.Firestarter 2.0f", + "classic_selected": "matt.UnderDark4 0.4.00", "division": "roborumble", - "jar": "cb.fire.Firestarter_2.0f.jar", - "jar_sha256": "de45410b59fea6b8fad9463ece161e1e1656960129f1b9bc84791137d788325f", - "key": "roborumble/cb.fire.Firestarter_2.0f.jar", + "jar": "matt.UnderDark4_0.4.00.jar", + "jar_sha256": "26b701c897d4152b5ae6acbe8f85bd3c006a06f1ff5f5f809fef6f2a6fcb111c", + "key": "roborumble/matt.UnderDark4_0.4.00.jar", "kind": "robot" }, - "latest_observation": "2002e30ad998c641", + "latest_observation": "8ea191b9dc12b10f", "observations": [ { "classic": { - "elapsed": 65.0, + "elapsed": 3.0, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 4553.0, + "score": 3737.0, "scores": [ - 2228.0, - 2325.0 + 1552.0, + 2185.0 ], - "selected": "cb.fire.Firestarter 2.0f" + "selected": "matt.UnderDark4 0.4.00" }, - "completed_at": "2026-09-08T21:10:59Z", - "delta_pct": null, - "id": "2002e30ad998c641", + "completed_at": "2026-09-12T22:31:29Z", + "confirmation": null, + "delta_pct": 13.4, + "id": "8ea191b9dc12b10f", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "886afdcacd8ddb60c250bc4c7b00b518397968bf", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -50007,91 +111677,90 @@ "width": 800 }, "source_identity": { - "classic_selected": "cb.fire.Firestarter 2.0f", + "classic_selected": "matt.UnderDark4 0.4.00", "division": "roborumble", - "jar": "cb.fire.Firestarter_2.0f.jar", - "jar_sha256": "de45410b59fea6b8fad9463ece161e1e1656960129f1b9bc84791137d788325f", - "key": "roborumble/cb.fire.Firestarter_2.0f.jar", + "jar": "matt.UnderDark4_0.4.00.jar", + "jar_sha256": "26b701c897d4152b5ae6acbe8f85bd3c006a06f1ff5f5f809fef6f2a6fcb111c", + "key": "roborumble/matt.UnderDark4_0.4.00.jar", "kind": "robot" }, - "status": "FAIL (TR)", + "status": "PASS", "tank_royale": { - "elapsed": 4.2, - "error_count": 3, - "errors": [ - "HARNESS: worker produced no result (exit code -1)", - "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Rectangle2D$Double.contains(java.awt.geom.Point2D)\" because \"this.atan2\" is null", - "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Rectangle2D$Double.contains(java.awt.geom.Point2D)\" because \"this.atan2\" is null" + "bridge_only_signatures": null, + "elapsed": 20.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 4239.0, + "scores": [ + 2281.0, + 1958.0 ], - "has_log": true, - "ok": false, - "score": null, - "scores": [], "skipped": null } } ], - "status": "FAIL (TR)" + "status": "PASS" }, - "roborumble/cb.mega.RandomBot_1.0.jar": { + "roborumble/matt.advanced.Katana_1.0.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "cb.mega.RandomBot 1.0", + "classic_selected": "matt.advanced.Katana 1.0", "division": "roborumble", - "jar": "cb.mega.RandomBot_1.0.jar", - "jar_sha256": "34a1049d295fe3ae436785ef0ba1e74824f059c4b2478b9975522c1698816285", - "key": "roborumble/cb.mega.RandomBot_1.0.jar", + "jar": "matt.advanced.Katana_1.0.jar", + "jar_sha256": "7d562adb3ddb785b168de1746fe4a02ac9033fe1cb2839cd5c3a84ff9208ff65", + "key": "roborumble/matt.advanced.Katana_1.0.jar", "kind": "robot" }, - "latest_observation": "55bade0feb6ac865", + "latest_observation": "86798553d9132d2c", "observations": [ { "classic": { - "elapsed": 2.9, + "elapsed": 6.3, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 6116.0, + "score": 6644.0, "scores": [ - 3139.0, - 2977.0 + 2941.0, + 3703.0 ], - "selected": "cb.mega.RandomBot 1.0" + "selected": "matt.advanced.Katana 1.0" }, - "completed_at": "2026-09-08T21:11:07Z", - "delta_pct": null, - "id": "55bade0feb6ac865", + "completed_at": "2026-09-12T22:29:44Z", + "confirmation": null, + "delta_pct": 9.0, + "id": "86798553d9132d2c", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "886afdcacd8ddb60c250bc4c7b00b518397968bf", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -50099,91 +111768,90 @@ "width": 800 }, "source_identity": { - "classic_selected": "cb.mega.RandomBot 1.0", + "classic_selected": "matt.advanced.Katana 1.0", "division": "roborumble", - "jar": "cb.mega.RandomBot_1.0.jar", - "jar_sha256": "34a1049d295fe3ae436785ef0ba1e74824f059c4b2478b9975522c1698816285", - "key": "roborumble/cb.mega.RandomBot_1.0.jar", + "jar": "matt.advanced.Katana_1.0.jar", + "jar_sha256": "7d562adb3ddb785b168de1746fe4a02ac9033fe1cb2839cd5c3a84ff9208ff65", + "key": "roborumble/matt.advanced.Katana_1.0.jar", "kind": "robot" }, - "status": "FAIL (TR)", + "status": "PASS", "tank_royale": { - "elapsed": 4.2, - "error_count": 3, - "errors": [ - "HARNESS: worker produced no result (exit code -1)", - "java.lang.NullPointerException: Cannot invoke \"java.util.ArrayList.iterator()\" because \"cb.mega.ComponentRobot.append\" is null", - "java.lang.NullPointerException: Cannot invoke \"java.util.ArrayList.iterator()\" because \"cb.mega.ComponentRobot.append\" is null" + "bridge_only_signatures": null, + "elapsed": 22.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 7240.0, + "scores": [ + 3788.0, + 3452.0 ], - "has_log": true, - "ok": false, - "score": null, - "scores": [], "skipped": null } } ], - "status": "FAIL (TR)" + "status": "PASS" }, - "roborumble/cb.nano.Insomnia_1.0.jar": { + "roborumble/maye.SlashBot_1.0.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "cb.nano.Insomnia 1.0", + "classic_selected": "maye.SlashBot 1.0", "division": "roborumble", - "jar": "cb.nano.Insomnia_1.0.jar", - "jar_sha256": "dfaa0b7522185985faaaad2c8c8761b56ed6b2e31f9d256de0abbcf466863d30", - "key": "roborumble/cb.nano.Insomnia_1.0.jar", + "jar": "maye.SlashBot_1.0.jar", + "jar_sha256": "579543826757da37e36090fdd1ec57a4a1b13826fcb4a982405f36d1ee8fe4fb", + "key": "roborumble/maye.SlashBot_1.0.jar", "kind": "robot" }, - "latest_observation": "997241f811003c48", + "latest_observation": "d823d1afaaf2dcff", "observations": [ { "classic": { - "elapsed": 3.0, + "elapsed": 2.9, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 2400.0, + "score": 7348.0, "scores": [ - 1122.0, - 1278.0 + 2511.0, + 4837.0 ], - "selected": "cb.nano.Insomnia 1.0" + "selected": "maye.SlashBot 1.0" }, - "completed_at": "2026-09-08T21:11:30Z", - "delta_pct": 14.0, - "id": "997241f811003c48", + "completed_at": "2026-09-12T22:31:51Z", + "confirmation": null, + "delta_pct": -17.8, + "id": "d823d1afaaf2dcff", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "886afdcacd8ddb60c250bc4c7b00b518397968bf", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -50191,24 +111859,26 @@ "width": 800 }, "source_identity": { - "classic_selected": "cb.nano.Insomnia 1.0", + "classic_selected": "maye.SlashBot 1.0", "division": "roborumble", - "jar": "cb.nano.Insomnia_1.0.jar", - "jar_sha256": "dfaa0b7522185985faaaad2c8c8761b56ed6b2e31f9d256de0abbcf466863d30", - "key": "roborumble/cb.nano.Insomnia_1.0.jar", + "jar": "maye.SlashBot_1.0.jar", + "jar_sha256": "579543826757da37e36090fdd1ec57a4a1b13826fcb4a982405f36d1ee8fe4fb", + "key": "roborumble/maye.SlashBot_1.0.jar", "kind": "robot" }, "status": "PASS", "tank_royale": { - "elapsed": 20.0, + "bridge_only_signatures": null, + "elapsed": 18.0, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 2736.0, + "score": 6041.0, "scores": [ - 1421.0, - 1315.0 + 3286.0, + 2755.0 ], "skipped": null } @@ -50216,69 +111886,63 @@ ], "status": "PASS" }, - "roborumble/cbot.agile.Nibbler_0.2.jar": { + "roborumble/mb.Beast_0.4.1.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "cbot.agile.Nibbler 0.2", + "classic_selected": "mb.Beast 0.4.1", "division": "roborumble", - "jar": "cbot.agile.Nibbler_0.2.jar", - "jar_sha256": "b1b79c3c45f03c2098bee75bd1c379e51b8e45f66418b0ac15a9e9747fef1689", - "key": "roborumble/cbot.agile.Nibbler_0.2.jar", + "jar": "mb.Beast_0.4.1.jar", + "jar_sha256": "6a322f8ee9d004933c9db82d09e6e00eefd85536363ce32ecefba630a057dc2c", + "key": "roborumble/mb.Beast_0.4.1.jar", "kind": "robot" }, - "latest_observation": "50feb7c195d9d53e", + "latest_observation": "2d62fbf2e5074786", "observations": [ { "classic": { - "elapsed": 3.2, - "error_count": 3, - "errors": [ - "java.lang.NullPointerException: Cannot invoke \"cbot.agile.Pray.getDistance()\" because \"pray\" is null", - "java.lang.NullPointerException: Cannot invoke \"cbot.agile.Pray.getDistance()\" because \"pray\" is null", - "java.lang.NullPointerException: Cannot invoke \"cbot.agile.Pray.getDistance()\" because \"pray\" is null" - ], - "has_log": true, + "elapsed": 2.8, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, "ok": true, - "score": 5348.0, + "score": 6090.0, "scores": [ - 2800.0, - 2548.0 + 2414.0, + 3676.0 ], - "selected": "cbot.agile.Nibbler 0.2" + "selected": "mb.Beast 0.4.1" }, - "completed_at": "2026-09-08T21:11:48Z", - "delta_pct": 31.5, - "id": "50feb7c195d9d53e", + "completed_at": "2026-09-12T22:32:14Z", + "confirmation": null, + "delta_pct": -19.3, + "id": "2d62fbf2e5074786", "manifest": { - "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "artifacts": { + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "886afdcacd8ddb60c250bc4c7b00b518397968bf", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -50286,90 +111950,90 @@ "width": 800 }, "source_identity": { - "classic_selected": "cbot.agile.Nibbler 0.2", + "classic_selected": "mb.Beast 0.4.1", "division": "roborumble", - "jar": "cbot.agile.Nibbler_0.2.jar", - "jar_sha256": "b1b79c3c45f03c2098bee75bd1c379e51b8e45f66418b0ac15a9e9747fef1689", - "key": "roborumble/cbot.agile.Nibbler_0.2.jar", + "jar": "mb.Beast_0.4.1.jar", + "jar_sha256": "6a322f8ee9d004933c9db82d09e6e00eefd85536363ce32ecefba630a057dc2c", + "key": "roborumble/mb.Beast_0.4.1.jar", "kind": "robot" }, - "status": "DISCREPANCY (score)", + "status": "PASS", "tank_royale": { - "elapsed": 14.0, + "bridge_only_signatures": null, + "elapsed": 20.0, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 7030.0, + "score": 4916.0, "scores": [ - 3730.0, - 3300.0 + 2795.0, + 2121.0 ], "skipped": null } } ], - "status": "score-review" + "status": "PASS" }, - "roborumble/cbot.cbot.CBot_0.8.jar": { + "roborumble/mb.Monte_0.1.0.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "cbot.cbot.CBot 0.8", + "classic_selected": "mb.Monte 0.1.0", "division": "roborumble", - "jar": "cbot.cbot.CBot_0.8.jar", - "jar_sha256": "96f2840bf8bb3ecd5dcd7c8079cf0bc0d2a9a6ddfd4da5cb2e7a520b7c6a2ffc", - "key": "roborumble/cbot.cbot.CBot_0.8.jar", + "jar": "mb.Monte_0.1.0.jar", + "jar_sha256": "fcfc2b8af47f081d1c5de35a8c0ebc92109a74d78fa6e5d2716950894390ae73", + "key": "roborumble/mb.Monte_0.1.0.jar", "kind": "robot" }, - "latest_observation": "7337304cd84cf9c0", + "latest_observation": "f52fa9153bebc76b", "observations": [ { "classic": { - "elapsed": 2.9, + "elapsed": 2.5, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 5878.0, + "score": 6444.0, "scores": [ - 3222.0, - 2656.0 + 4324.0, + 2120.0 ], - "selected": "cbot.cbot.CBot 0.8" + "selected": "mb.Monte 0.1.0" }, - "completed_at": "2026-09-08T21:11:57Z", - "delta_pct": null, - "id": "7337304cd84cf9c0", + "completed_at": "2026-09-12T22:32:37Z", + "confirmation": null, + "delta_pct": -44.1, + "id": "f52fa9153bebc76b", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "886afdcacd8ddb60c250bc4c7b00b518397968bf", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -50377,90 +112041,90 @@ "width": 800 }, "source_identity": { - "classic_selected": "cbot.cbot.CBot 0.8", + "classic_selected": "mb.Monte 0.1.0", "division": "roborumble", - "jar": "cbot.cbot.CBot_0.8.jar", - "jar_sha256": "96f2840bf8bb3ecd5dcd7c8079cf0bc0d2a9a6ddfd4da5cb2e7a520b7c6a2ffc", - "key": "roborumble/cbot.cbot.CBot_0.8.jar", + "jar": "mb.Monte_0.1.0.jar", + "jar_sha256": "fcfc2b8af47f081d1c5de35a8c0ebc92109a74d78fa6e5d2716950894390ae73", + "key": "roborumble/mb.Monte_0.1.0.jar", "kind": "robot" }, - "status": "FAIL (TR)", + "status": "DISCREPANCY (score)", "tank_royale": { - "elapsed": 6.1, - "error_count": 2, - "errors": [ - "HARNESS: worker produced no result (exit code -1)", - "java.lang.NullPointerException: Cannot invoke \"cbot.cbot.Pray.getHittingRates()\" because \"this.currentPray\" is null" + "bridge_only_signatures": null, + "elapsed": 20.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 3602.0, + "scores": [ + 1949.0, + 1653.0 ], - "has_log": true, - "ok": false, - "score": null, - "scores": [], "skipped": null } } ], - "status": "FAIL (TR)" + "status": "score-review" }, - "roborumble/cf.OldMan.OldManXP_0.1.jar": { + "roborumble/mbh.Mbh_0.1.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "cf.OldMan.OldManXP 0.1", + "classic_selected": "mbh.Mbh 0.1", "division": "roborumble", - "jar": "cf.OldMan.OldManXP_0.1.jar", - "jar_sha256": "463822efc7f7fec009495fb2395ad09b36b081119df3e18d3b5044d58a562ce5", - "key": "roborumble/cf.OldMan.OldManXP_0.1.jar", + "jar": "mbh.Mbh_0.1.jar", + "jar_sha256": "e1799e6a6c996fb6c8464e38d6ff534339e297e306eef31f6db429d88696171a", + "key": "roborumble/mbh.Mbh_0.1.jar", "kind": "robot" }, - "latest_observation": "f54923f1b67ca9f0", + "latest_observation": "f93e22ed603d13d0", "observations": [ { "classic": { - "elapsed": 3.3, + "elapsed": 2.6, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 10602.0, + "score": 6234.0, "scores": [ - 5036.0, - 5566.0 + 2703.0, + 3531.0 ], - "selected": "cf.OldMan.OldManXP 0.1" + "selected": "mbh.Mbh 0.1" }, - "completed_at": "2026-09-08T21:12:34Z", - "delta_pct": -10.1, - "id": "f54923f1b67ca9f0", + "completed_at": "2026-09-12T22:32:56Z", + "confirmation": null, + "delta_pct": 12.0, + "id": "f93e22ed603d13d0", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "886afdcacd8ddb60c250bc4c7b00b518397968bf", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -50468,24 +112132,26 @@ "width": 800 }, "source_identity": { - "classic_selected": "cf.OldMan.OldManXP 0.1", + "classic_selected": "mbh.Mbh 0.1", "division": "roborumble", - "jar": "cf.OldMan.OldManXP_0.1.jar", - "jar_sha256": "463822efc7f7fec009495fb2395ad09b36b081119df3e18d3b5044d58a562ce5", - "key": "roborumble/cf.OldMan.OldManXP_0.1.jar", + "jar": "mbh.Mbh_0.1.jar", + "jar_sha256": "e1799e6a6c996fb6c8464e38d6ff534339e297e306eef31f6db429d88696171a", + "key": "roborumble/mbh.Mbh_0.1.jar", "kind": "robot" }, "status": "PASS", "tank_royale": { - "elapsed": 12.0, + "bridge_only_signatures": null, + "elapsed": 16.0, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 9531.0, + "score": 6983.0, "scores": [ - 4804.0, - 4727.0 + 3626.0, + 3357.0 ], "skipped": null } @@ -50493,65 +112159,63 @@ ], "status": "PASS" }, - "roborumble/cf.mini.Chiva_1.0.jar": { + "roborumble/mbro.BelajarBot_0.0.3.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "cf.mini.Chiva 1.0", + "classic_selected": "mbro.BelajarBot 0.0.3", "division": "roborumble", - "jar": "cf.mini.Chiva_1.0.jar", - "jar_sha256": "a0aef88f5c5fa4d6542a4e56c1576efb911d6bebb70da9676582c51bcef3c688", - "key": "roborumble/cf.mini.Chiva_1.0.jar", + "jar": "mbro.BelajarBot_0.0.3.jar", + "jar_sha256": "4a76b69c2e930cd6cf91c3d21af47c5bdd5b3878694b632ee205df7d185d158a", + "key": "roborumble/mbro.BelajarBot_0.0.3.jar", "kind": "robot" }, - "latest_observation": "336aaa29d4d4cb86", + "latest_observation": "533868a7667753bd", "observations": [ { "classic": { - "elapsed": 2.6, + "elapsed": 3.1, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 5151.0, + "score": 7394.0, "scores": [ - 2301.0, - 2850.0 + 3315.0, + 4079.0 ], - "selected": "cf.mini.Chiva 1.0" + "selected": "mbro.BelajarBot 0.0.3" }, - "completed_at": "2026-09-08T21:12:18Z", - "delta_pct": -8.7, - "id": "336aaa29d4d4cb86", + "completed_at": "2026-09-12T22:33:21Z", + "confirmation": null, + "delta_pct": 9.6, + "id": "533868a7667753bd", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "886afdcacd8ddb60c250bc4c7b00b518397968bf", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -50559,24 +112223,26 @@ "width": 800 }, "source_identity": { - "classic_selected": "cf.mini.Chiva 1.0", + "classic_selected": "mbro.BelajarBot 0.0.3", "division": "roborumble", - "jar": "cf.mini.Chiva_1.0.jar", - "jar_sha256": "a0aef88f5c5fa4d6542a4e56c1576efb911d6bebb70da9676582c51bcef3c688", - "key": "roborumble/cf.mini.Chiva_1.0.jar", + "jar": "mbro.BelajarBot_0.0.3.jar", + "jar_sha256": "4a76b69c2e930cd6cf91c3d21af47c5bdd5b3878694b632ee205df7d185d158a", + "key": "roborumble/mbro.BelajarBot_0.0.3.jar", "kind": "robot" }, "status": "PASS", "tank_royale": { - "elapsed": 18.0, + "bridge_only_signatures": null, + "elapsed": 22.0, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 4703.0, + "score": 8103.0, "scores": [ - 2536.0, - 2167.0 + 4230.0, + 3873.0 ], "skipped": null } @@ -50584,68 +112250,63 @@ ], "status": "PASS" }, - "roborumble/cf.proto.Shiva_2.2.jar": { + "roborumble/mbro.Detektor3_0.1.1.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "cf.proto.Shiva 2.2", + "classic_selected": "mbro.Detektor3 0.1.1", "division": "roborumble", - "jar": "cf.proto.Shiva_2.2.jar", - "jar_sha256": "b56a27faf5dcfcd10fa25ea0b3d1dd9bedb48eea0bf5e38e8ecb89b339827f61", - "key": "roborumble/cf.proto.Shiva_2.2.jar", + "jar": "mbro.Detektor3_0.1.1.jar", + "jar_sha256": "42143bc477c1f1ba2428bb0e97b6ae7618ddbdf3089bb8ee44518b1b084d7a44", + "key": "roborumble/mbro.Detektor3_0.1.1.jar", "kind": "robot" }, - "latest_observation": "92716decc58e938d", + "latest_observation": "ee61ca6f09d190f8", "observations": [ { "classic": { - "elapsed": 5.5, - "error_count": 2, - "errors": [ - "Error while reading:java.io.FileNotFoundException: C:\\Code\\robocode-api-bridge\\compat-test\\work\\rc-robots\\.data\\cf\\proto\\Shiva.data\\cf.proto.Shiva 2.2 (2).txt.gz (Den angivne fil blev ikke fundet)", - "Error while reading:java.io.FileNotFoundException: C:\\Code\\robocode-api-bridge\\compat-test\\work\\rc-robots\\.data\\cf\\proto\\Shiva.data\\cf.proto.Shiva 2.2 (1).txt.gz (Den angivne fil blev ikke fundet)" - ], - "has_log": true, + "elapsed": 3.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, "ok": true, - "score": 4670.0, + "score": 6284.0, "scores": [ - 2328.0, - 2342.0 + 2942.0, + 3342.0 ], - "selected": "cf.proto.Shiva 2.2" + "selected": "mbro.Detektor3 0.1.1" }, - "completed_at": "2026-09-08T21:16:01Z", - "delta_pct": -5.2, - "id": "92716decc58e938d", + "completed_at": "2026-09-12T22:33:51Z", + "confirmation": null, + "delta_pct": -19.0, + "id": "ee61ca6f09d190f8", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "886afdcacd8ddb60c250bc4c7b00b518397968bf", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -50653,27 +112314,26 @@ "width": 800 }, "source_identity": { - "classic_selected": "cf.proto.Shiva 2.2", + "classic_selected": "mbro.Detektor3 0.1.1", "division": "roborumble", - "jar": "cf.proto.Shiva_2.2.jar", - "jar_sha256": "b56a27faf5dcfcd10fa25ea0b3d1dd9bedb48eea0bf5e38e8ecb89b339827f61", - "key": "roborumble/cf.proto.Shiva_2.2.jar", + "jar": "mbro.Detektor3_0.1.1.jar", + "jar_sha256": "42143bc477c1f1ba2428bb0e97b6ae7618ddbdf3089bb8ee44518b1b084d7a44", + "key": "roborumble/mbro.Detektor3_0.1.1.jar", "kind": "robot" }, "status": "PASS", "tank_royale": { - "elapsed": 22.0, - "error_count": 2, - "errors": [ - "Error while reading:java.io.FileNotFoundException: C:\\Code\\robocode-api-bridge\\compat-test\\work\\tr-bots\\cf.proto.Shiva_2.2\\Shiva.data\\1.txt.gz (Den angivne fil blev ikke fundet)", - "Error while reading:java.io.FileNotFoundException: C:\\Code\\robocode-api-bridge\\compat-test\\work\\tr-bots\\cf.proto.Shiva_2.2-2\\Shiva.data\\2.txt.gz (Den angivne fil blev ikke fundet)" - ], - "has_log": true, + "bridge_only_signatures": null, + "elapsed": 26.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, "ok": true, - "score": 4427.0, + "score": 5092.0, "scores": [ - 2362.0, - 2065.0 + 2788.0, + 2304.0 ], "skipped": null } @@ -50681,65 +112341,63 @@ ], "status": "PASS" }, - "roborumble/cf.star.Star2_1.23.jar": { + "roborumble/mc.Messapia_0.1.8.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "cf.star.Star2 1.23", + "classic_selected": "mc.Messapia 0.1.8", "division": "roborumble", - "jar": "cf.star.Star2_1.23.jar", - "jar_sha256": "d1d945c1450132a1a072cb08465db641b83af579d8339115641632aa6e670a4e", - "key": "roborumble/cf.star.Star2_1.23.jar", + "jar": "mc.Messapia_0.1.8.jar", + "jar_sha256": "7cf3e05643b09c2673c0e28668923315b13bf05d7a8050c5e1a2c459a9e87666", + "key": "roborumble/mc.Messapia_0.1.8.jar", "kind": "robot" }, - "latest_observation": "8c06e2125b4e11c4", + "latest_observation": "d02c8b3b9aa53fe9", "observations": [ { "classic": { - "elapsed": 2.7, + "elapsed": 3.3, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 5134.0, + "score": 11284.0, "scores": [ - 2598.0, - 2536.0 + 5919.0, + 5365.0 ], - "selected": "cf.star.Star2 1.23" + "selected": "mc.Messapia 0.1.8" }, - "completed_at": "2026-09-08T21:16:20Z", - "delta_pct": 17.8, - "id": "8c06e2125b4e11c4", + "completed_at": "2026-09-12T22:34:28Z", + "confirmation": null, + "delta_pct": -26.6, + "id": "d02c8b3b9aa53fe9", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "886afdcacd8ddb60c250bc4c7b00b518397968bf", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -50747,90 +112405,90 @@ "width": 800 }, "source_identity": { - "classic_selected": "cf.star.Star2 1.23", + "classic_selected": "mc.Messapia 0.1.8", "division": "roborumble", - "jar": "cf.star.Star2_1.23.jar", - "jar_sha256": "d1d945c1450132a1a072cb08465db641b83af579d8339115641632aa6e670a4e", - "key": "roborumble/cf.star.Star2_1.23.jar", + "jar": "mc.Messapia_0.1.8.jar", + "jar_sha256": "7cf3e05643b09c2673c0e28668923315b13bf05d7a8050c5e1a2c459a9e87666", + "key": "roborumble/mc.Messapia_0.1.8.jar", "kind": "robot" }, - "status": "PASS", + "status": "DISCREPANCY (score)", "tank_royale": { - "elapsed": 16.0, + "bridge_only_signatures": null, + "elapsed": 34.0, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 6047.0, + "score": 8282.0, "scores": [ - 4090.0, - 1957.0 + 4146.0, + 4136.0 ], "skipped": null } } ], - "status": "PASS" + "status": "score-review" }, - "roborumble/ch.rhj.rbc.RHJ1_1.0.jar": { + "roborumble/mc2.enemy.Original_0.9.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "ch.rhj.rbc.RHJ1 1.0", + "classic_selected": "mc2.enemy.Original 0.9", "division": "roborumble", - "jar": "ch.rhj.rbc.RHJ1_1.0.jar", - "jar_sha256": "f45cba75cecd9459729641dab9cfc9830853d855888acbf42b612f74234e566d", - "key": "roborumble/ch.rhj.rbc.RHJ1_1.0.jar", + "jar": "mc2.enemy.Original_0.9.jar", + "jar_sha256": "ae1c21e590d274adabb63744faadac29d6fb8bf10e68cd4b2521d8cacea1f617", + "key": "roborumble/mc2.enemy.Original_0.9.jar", "kind": "robot" }, - "latest_observation": "09fc48a0219093cf", + "latest_observation": "d61d43fd7ce16b88", "observations": [ { "classic": { - "elapsed": 3.5, + "elapsed": 14.8, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 12947.0, + "score": 5192.0, "scores": [ - 6393.0, - 6554.0 + 2815.0, + 2377.0 ], - "selected": "ch.rhj.rbc.RHJ1 1.0" + "selected": "mc2.enemy.Original 0.9" }, - "completed_at": "2026-09-08T21:16:56Z", - "delta_pct": 0.5, - "id": "09fc48a0219093cf", + "completed_at": "2026-09-12T22:35:08Z", + "confirmation": null, + "delta_pct": null, + "id": "d61d43fd7ce16b88", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "886afdcacd8ddb60c250bc4c7b00b518397968bf", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -50838,90 +112496,101 @@ "width": 800 }, "source_identity": { - "classic_selected": "ch.rhj.rbc.RHJ1 1.0", + "classic_selected": "mc2.enemy.Original 0.9", "division": "roborumble", - "jar": "ch.rhj.rbc.RHJ1_1.0.jar", - "jar_sha256": "f45cba75cecd9459729641dab9cfc9830853d855888acbf42b612f74234e566d", - "key": "roborumble/ch.rhj.rbc.RHJ1_1.0.jar", + "jar": "mc2.enemy.Original_0.9.jar", + "jar_sha256": "ae1c21e590d274adabb63744faadac29d6fb8bf10e68cd4b2521d8cacea1f617", + "key": "roborumble/mc2.enemy.Original_0.9.jar", "kind": "robot" }, - "status": "PASS", + "status": "DISCREPANCY (outcome)", "tank_royale": { - "elapsed": 32.0, - "error_count": 0, - "errors": [], - "has_log": false, - "ok": true, - "score": 13008.0, - "scores": [ - 6950.0, - 6058.0 + "bridge_only_signatures": [ + [ + "java.util.ConcurrentModificationException", + "mc2.enemy.Original.PrintDebug" + ] + ], + "elapsed": 24.2, + "error_count": 3, + "error_signatures": [ + { + "exception": "java.util.ConcurrentModificationException", + "origin": "mc2.enemy.Original.PrintDebug" + } + ], + "errors": [ + "HARNESS: worker produced no result (exit code -1)", + "java.util.ConcurrentModificationException", + "java.util.ConcurrentModificationException" ], + "has_log": true, + "ok": false, + "score": null, + "scores": [], "skipped": null } } ], - "status": "PASS" + "status": "DISCREPANCY (outcome)" }, - "roborumble/chase.pm.Pytko_1.0.jar": { + "roborumble/mcb.Audace_1.3.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "chase.pm.Pytko 1.0", + "classic_selected": "mcb.Audace 1.3", "division": "roborumble", - "jar": "chase.pm.Pytko_1.0.jar", - "jar_sha256": "0bf2f81bd9c5ff44bcb27f2ce214eb769f1c7d2b91ad83a3880e8a17d0f193f3", - "key": "roborumble/chase.pm.Pytko_1.0.jar", + "jar": "mcb.Audace_1.3.jar", + "jar_sha256": "f0ca9f380e52d89d4ed2d3605d7c662015d59fb8dc536db16012e19a03ad43fd", + "key": "roborumble/mcb.Audace_1.3.jar", "kind": "robot" }, - "latest_observation": "5621c60c56abe7ae", + "latest_observation": "279a31189d233c25", "observations": [ { "classic": { - "elapsed": 4.2, + "elapsed": 3.8, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 4950.0, - "scores": [ - 2163.0, - 2787.0 + "score": 9509.0, + "scores": [ + 4700.0, + 4809.0 ], - "selected": "chase.pm.Pytko 1.0" + "selected": "mcb.Audace 1.3" }, - "completed_at": "2026-09-08T21:17:44Z", - "delta_pct": -5.2, - "id": "5621c60c56abe7ae", + "completed_at": "2026-09-12T22:35:28Z", + "confirmation": null, + "delta_pct": -14.4, + "id": "279a31189d233c25", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "886afdcacd8ddb60c250bc4c7b00b518397968bf", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -50929,24 +112598,26 @@ "width": 800 }, "source_identity": { - "classic_selected": "chase.pm.Pytko 1.0", + "classic_selected": "mcb.Audace 1.3", "division": "roborumble", - "jar": "chase.pm.Pytko_1.0.jar", - "jar_sha256": "0bf2f81bd9c5ff44bcb27f2ce214eb769f1c7d2b91ad83a3880e8a17d0f193f3", - "key": "roborumble/chase.pm.Pytko_1.0.jar", + "jar": "mcb.Audace_1.3.jar", + "jar_sha256": "f0ca9f380e52d89d4ed2d3605d7c662015d59fb8dc536db16012e19a03ad43fd", + "key": "roborumble/mcb.Audace_1.3.jar", "kind": "robot" }, "status": "PASS", "tank_royale": { - "elapsed": 22.0, + "bridge_only_signatures": null, + "elapsed": 16.0, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 4692.0, + "score": 8136.0, "scores": [ - 2644.0, - 2048.0 + 4096.0, + 4040.0 ], "skipped": null } @@ -50954,65 +112625,63 @@ ], "status": "PASS" }, - "roborumble/chickenfuego.UrChicken2_1.0.jar": { + "roborumble/md.November_1.0.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "chickenfuego.UrChicken2 1.0", + "classic_selected": "md.November 1.0", "division": "roborumble", - "jar": "chickenfuego.UrChicken2_1.0.jar", - "jar_sha256": "a56a6d6bbeae72501cb86c35621436e91b31686db0785cd3151512452bdf818f", - "key": "roborumble/chickenfuego.UrChicken2_1.0.jar", + "jar": "md.November_1.0.jar", + "jar_sha256": "0a7ef08b6a7ac31687828f073ecdb11b1f2ca949efbf7c38958e5cb08022ee91", + "key": "roborumble/md.November_1.0.jar", "kind": "robot" }, - "latest_observation": "ac7ec21a2a822b4f", + "latest_observation": "7c7d30be72480d9b", "observations": [ { "classic": { - "elapsed": 5.8, + "elapsed": 3.3, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 5804.0, + "score": 5550.0, "scores": [ - 2824.0, - 2980.0 + 2592.0, + 2958.0 ], - "selected": "chickenfuego.UrChicken2 1.0" + "selected": "md.November 1.0" }, - "completed_at": "2026-09-08T21:18:36Z", - "delta_pct": -8.7, - "id": "ac7ec21a2a822b4f", + "completed_at": "2026-09-12T22:36:48Z", + "confirmation": null, + "delta_pct": -10.9, + "id": "7c7d30be72480d9b", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "d177578b2a187aa1dbe524ffbb02f362b0241cfc", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -51020,24 +112689,26 @@ "width": 800 }, "source_identity": { - "classic_selected": "chickenfuego.UrChicken2 1.0", + "classic_selected": "md.November 1.0", "division": "roborumble", - "jar": "chickenfuego.UrChicken2_1.0.jar", - "jar_sha256": "a56a6d6bbeae72501cb86c35621436e91b31686db0785cd3151512452bdf818f", - "key": "roborumble/chickenfuego.UrChicken2_1.0.jar", + "jar": "md.November_1.0.jar", + "jar_sha256": "0a7ef08b6a7ac31687828f073ecdb11b1f2ca949efbf7c38958e5cb08022ee91", + "key": "roborumble/md.November_1.0.jar", "kind": "robot" }, "status": "PASS", "tank_royale": { - "elapsed": 46.0, + "bridge_only_signatures": null, + "elapsed": 18.0, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 5300.0, + "score": 4943.0, "scores": [ - 2887.0, - 2413.0 + 2830.0, + 2113.0 ], "skipped": null } @@ -51045,65 +112716,63 @@ ], "status": "PASS" }, - "roborumble/cjk.Merkava_0.1.1.jar": { + "roborumble/md.Pasta_1.1.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "cjk.Merkava 0.1.1", + "classic_selected": "md.Pasta 1.1", "division": "roborumble", - "jar": "cjk.Merkava_0.1.1.jar", - "jar_sha256": "5a16d1a4eaa4437b1552185a75d121a8153985febc5d3d215f94fc93dbd3f094", - "key": "roborumble/cjk.Merkava_0.1.1.jar", + "jar": "md.Pasta_1.1.jar", + "jar_sha256": "72ecdabbcaaeb3b4a4349d9bb37289bf4bcb93efe12ea67ec0093ad0302bca07", + "key": "roborumble/md.Pasta_1.1.jar", "kind": "robot" }, - "latest_observation": "ca8bad284ef8d30e", + "latest_observation": "7b288b050cf6c12e", "observations": [ { "classic": { - "elapsed": 2.5, + "elapsed": 2.6, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 5678.0, + "score": 5786.0, "scores": [ - 2936.0, - 2742.0 + 2998.0, + 2788.0 ], - "selected": "cjk.Merkava 0.1.1" + "selected": "md.Pasta 1.1" }, - "completed_at": "2026-09-08T21:18:55Z", - "delta_pct": -24.1, - "id": "ca8bad284ef8d30e", + "completed_at": "2026-09-12T22:37:07Z", + "confirmation": null, + "delta_pct": -8.8, + "id": "7b288b050cf6c12e", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "d177578b2a187aa1dbe524ffbb02f362b0241cfc", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -51111,24 +112780,26 @@ "width": 800 }, "source_identity": { - "classic_selected": "cjk.Merkava 0.1.1", + "classic_selected": "md.Pasta 1.1", "division": "roborumble", - "jar": "cjk.Merkava_0.1.1.jar", - "jar_sha256": "5a16d1a4eaa4437b1552185a75d121a8153985febc5d3d215f94fc93dbd3f094", - "key": "roborumble/cjk.Merkava_0.1.1.jar", + "jar": "md.Pasta_1.1.jar", + "jar_sha256": "72ecdabbcaaeb3b4a4349d9bb37289bf4bcb93efe12ea67ec0093ad0302bca07", + "key": "roborumble/md.Pasta_1.1.jar", "kind": "robot" }, "status": "PASS", "tank_royale": { + "bridge_only_signatures": null, "elapsed": 16.0, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 4311.0, + "score": 5274.0, "scores": [ - 2343.0, - 1968.0 + 2737.0, + 2537.0 ], "skipped": null } @@ -51136,65 +112807,63 @@ ], "status": "PASS" }, - "roborumble/cjm.Che_1.2.jar": { + "roborumble/md.VelociRaptor_1.3.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "cjm.Che 1.2", + "classic_selected": "md.VelociRaptor 1.3", "division": "roborumble", - "jar": "cjm.Che_1.2.jar", - "jar_sha256": "490b1e9e8d36ca42f225dd9cd2bd2033c9dee27ef24d71e2396e5eec5ae4565b", - "key": "roborumble/cjm.Che_1.2.jar", + "jar": "md.VelociRaptor_1.3.jar", + "jar_sha256": "cec3cfdcbc2d992cbdb16de07a68efc6c128a69a3acff120910767aa1a5ac791", + "key": "roborumble/md.VelociRaptor_1.3.jar", "kind": "robot" }, - "latest_observation": "30b3c8b16bb49f75", + "latest_observation": "57957c6dff810321", "observations": [ { "classic": { - "elapsed": 2.8, + "elapsed": 2.6, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 5896.0, + "score": 8922.0, "scores": [ - 3080.0, - 2816.0 + 4804.0, + 4118.0 ], - "selected": "cjm.Che 1.2" + "selected": "md.VelociRaptor 1.3" }, - "completed_at": "2026-09-08T21:19:16Z", - "delta_pct": -8.2, - "id": "30b3c8b16bb49f75", + "completed_at": "2026-09-12T22:37:22Z", + "confirmation": null, + "delta_pct": -6.3, + "id": "57957c6dff810321", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "d177578b2a187aa1dbe524ffbb02f362b0241cfc", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -51202,24 +112871,26 @@ "width": 800 }, "source_identity": { - "classic_selected": "cjm.Che 1.2", + "classic_selected": "md.VelociRaptor 1.3", "division": "roborumble", - "jar": "cjm.Che_1.2.jar", - "jar_sha256": "490b1e9e8d36ca42f225dd9cd2bd2033c9dee27ef24d71e2396e5eec5ae4565b", - "key": "roborumble/cjm.Che_1.2.jar", + "jar": "md.VelociRaptor_1.3.jar", + "jar_sha256": "cec3cfdcbc2d992cbdb16de07a68efc6c128a69a3acff120910767aa1a5ac791", + "key": "roborumble/md.VelociRaptor_1.3.jar", "kind": "robot" }, "status": "PASS", "tank_royale": { - "elapsed": 18.0, + "bridge_only_signatures": null, + "elapsed": 12.1, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 5415.0, + "score": 8362.0, "scores": [ - 3077.0, - 2338.0 + 4308.0, + 4054.0 ], "skipped": null } @@ -51227,65 +112898,63 @@ ], "status": "PASS" }, - "roborumble/cli.Dancer_1.1.jar": { + "roborumble/mdouet.BotKicker_2.0.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "cli.Dancer 1.1", + "classic_selected": "mdouet.BotKicker 2.0", "division": "roborumble", - "jar": "cli.Dancer_1.1.jar", - "jar_sha256": "6126e668dd994c5d3b47f50cad7e28313ad0b67ef1d5def7746846a35de8e07b", - "key": "roborumble/cli.Dancer_1.1.jar", + "jar": "mdouet.BotKicker_2.0.jar", + "jar_sha256": "8d82136a5e1ccc0c4c028d38a2bbca7be9c55f428591be367bec5e033e5fbe99", + "key": "roborumble/mdouet.BotKicker_2.0.jar", "kind": "robot" }, - "latest_observation": "75019a166932d5c2", + "latest_observation": "40c16d77c8c88342", "observations": [ { "classic": { "elapsed": 2.6, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 6556.0, + "score": 6108.0, "scores": [ - 3859.0, - 2697.0 + 2856.0, + 3252.0 ], - "selected": "cli.Dancer 1.1" + "selected": "mdouet.BotKicker 2.0" }, - "completed_at": "2026-09-08T21:19:35Z", - "delta_pct": 9.7, - "id": "75019a166932d5c2", + "completed_at": "2026-09-12T22:37:41Z", + "confirmation": null, + "delta_pct": -25.7, + "id": "40c16d77c8c88342", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "d177578b2a187aa1dbe524ffbb02f362b0241cfc", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -51293,90 +112962,90 @@ "width": 800 }, "source_identity": { - "classic_selected": "cli.Dancer 1.1", + "classic_selected": "mdouet.BotKicker 2.0", "division": "roborumble", - "jar": "cli.Dancer_1.1.jar", - "jar_sha256": "6126e668dd994c5d3b47f50cad7e28313ad0b67ef1d5def7746846a35de8e07b", - "key": "roborumble/cli.Dancer_1.1.jar", + "jar": "mdouet.BotKicker_2.0.jar", + "jar_sha256": "8d82136a5e1ccc0c4c028d38a2bbca7be9c55f428591be367bec5e033e5fbe99", + "key": "roborumble/mdouet.BotKicker_2.0.jar", "kind": "robot" }, - "status": "PASS", + "status": "DISCREPANCY (score)", "tank_royale": { - "elapsed": 16.0, + "bridge_only_signatures": null, + "elapsed": 16.1, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 7189.0, + "score": 4536.0, "scores": [ - 3657.0, - 3532.0 + 2675.0, + 1861.0 ], "skipped": null } } ], - "status": "PASS" + "status": "score-review" }, - "roborumble/cli.WasteOfAmmo_1.0.jar": { + "roborumble/metal.small.MCool_1.21.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "cli.WasteOfAmmo 1.0", + "classic_selected": "metal.small.MCool 1.21", "division": "roborumble", - "jar": "cli.WasteOfAmmo_1.0.jar", - "jar_sha256": "c899395217eb5b9a8c9bdcd3e8869616ec23576e787e4ce3e2c7c3263695b36f", - "key": "roborumble/cli.WasteOfAmmo_1.0.jar", + "jar": "metal.small.MCool_1.21.jar", + "jar_sha256": "cd1dd4593985a1a8f571acccf38afbc4ea9c45cf13bd9d9ad0d19c17bb9cd5f2", + "key": "roborumble/metal.small.MCool_1.21.jar", "kind": "robot" }, - "latest_observation": "ad72f39287f5b880", + "latest_observation": "2f3bc23f806cf0b6", "observations": [ { "classic": { - "elapsed": 3.1, + "elapsed": 3.7, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 0.0, + "score": 5031.0, "scores": [ - 0.0, - 0.0 + 2721.0, + 2310.0 ], - "selected": "cli.WasteOfAmmo 1.0" + "selected": "metal.small.MCool 1.21" }, - "completed_at": "2026-09-08T21:19:58Z", - "delta_pct": null, - "id": "ad72f39287f5b880", + "completed_at": "2026-09-12T22:38:08Z", + "confirmation": null, + "delta_pct": 26.3, + "id": "2f3bc23f806cf0b6", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "d177578b2a187aa1dbe524ffbb02f362b0241cfc", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -51384,90 +113053,118 @@ "width": 800 }, "source_identity": { - "classic_selected": "cli.WasteOfAmmo 1.0", + "classic_selected": "metal.small.MCool 1.21", "division": "roborumble", - "jar": "cli.WasteOfAmmo_1.0.jar", - "jar_sha256": "c899395217eb5b9a8c9bdcd3e8869616ec23576e787e4ce3e2c7c3263695b36f", - "key": "roborumble/cli.WasteOfAmmo_1.0.jar", + "jar": "metal.small.MCool_1.21.jar", + "jar_sha256": "cd1dd4593985a1a8f571acccf38afbc4ea9c45cf13bd9d9ad0d19c17bb9cd5f2", + "key": "roborumble/metal.small.MCool_1.21.jar", "kind": "robot" }, - "status": "DISCREPANCY (no score)", + "status": "DISCREPANCY (score)", "tank_royale": { - "elapsed": 20.0, + "bridge_only_signatures": null, + "elapsed": 14.0, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 1380.0, + "score": 6356.0, "scores": [ - 840.0, - 540.0 + 3295.0, + 3061.0 ], "skipped": null } } ], - "status": "DISCREPANCY (no score)" + "status": "score-review" }, - "roborumble/codemojo.nano.Woot_1.0.jar": { + "roborumble/metal.small.dna2.MCoolDNA_1.5.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "codemojo.nano.Woot 1.0", + "classic_selected": "metal.small.dna2.MCoolDNA 1.5", "division": "roborumble", - "jar": "codemojo.nano.Woot_1.0.jar", - "jar_sha256": "7f635dc2e4809d680d0bef2e71454a61c03051e0385ec3e11af10105b694c3d6", - "key": "roborumble/codemojo.nano.Woot_1.0.jar", + "jar": "metal.small.dna2.MCoolDNA_1.5.jar", + "jar_sha256": "17bd952dcf63cfa2a5343ac8bf58772bd5086be5b79f727d17caf8856541a124", + "key": "roborumble/metal.small.dna2.MCoolDNA_1.5.jar", "kind": "robot" }, - "latest_observation": "ec2f186e76fabdbc", + "latest_observation": "0f8532e1d0c50b95", "observations": [ { "classic": { - "elapsed": 2.5, - "error_count": 0, - "errors": [], - "has_log": false, + "elapsed": 2.9, + "error_count": 22, + "error_signatures": [ + { + "exception": "java.lang.NullPointerException", + "origin": "unknown" + } + ], + "errors": [ + "SYSTEM: Err: No bullets matched! 13.100 java.lang.NullPointerException: Cannot read field \"mySpeed\" because \"b\" is null", + "SYSTEM: Err: No bullets matched! 13.100 java.lang.NullPointerException: Cannot read field \"mySpeed\" because \"b\" is null", + "SYSTEM: Err: No bullets matched! 13.100 java.lang.NullPointerException: Cannot read field \"mySpeed\" because \"b\" is null", + "SYSTEM: Err: No bullets matched! 13.100 java.lang.NullPointerException: Cannot read field \"mySpeed\" because \"b\" is null", + "SYSTEM: Err: No bullets matched! 13.100 java.lang.NullPointerException: Cannot read field \"mySpeed\" because \"b\" is null", + "SYSTEM: Err: No bullets matched! 13.100 java.lang.NullPointerException: Cannot read field \"mySpeed\" because \"b\" is null", + "SYSTEM: Err: No bullets matched! 19.700 java.lang.NullPointerException: Cannot read field \"mySpeed\" because \"b\" is null", + "SYSTEM: Err: No bullets matched! 13.100 java.lang.NullPointerException: Cannot read field \"mySpeed\" because \"b\" is null", + "SYSTEM: Err: No bullets matched! 13.100 java.lang.NullPointerException: Cannot read field \"mySpeed\" because \"b\" is null", + "SYSTEM: Err: No bullets matched! 13.100 java.lang.NullPointerException: Cannot read field \"mySpeed\" because \"b\" is null", + "SYSTEM: Err: No bullets matched! 13.100 java.lang.NullPointerException: Cannot read field \"mySpeed\" because \"b\" is null", + "SYSTEM: Err: No bullets matched! 16.228 java.lang.NullPointerException: Cannot read field \"mySpeed\" because \"b\" is null", + "SYSTEM: Err: No bullets matched! 13.100 java.lang.NullPointerException: Cannot read field \"mySpeed\" because \"b\" is null", + "SYSTEM: Err: No bullets matched! 13.100 java.lang.NullPointerException: Cannot read field \"mySpeed\" because \"b\" is null", + "SYSTEM: Err: No bullets matched! 14.180 java.lang.NullPointerException: Cannot read field \"mySpeed\" because \"b\" is null", + "SYSTEM: Err: No bullets matched! 13.100 java.lang.NullPointerException: Cannot read field \"mySpeed\" because \"b\" is null", + "SYSTEM: Err: No bullets matched! 13.100 java.lang.NullPointerException: Cannot read field \"mySpeed\" because \"b\" is null", + "SYSTEM: Err: No bullets matched! 13.100 java.lang.NullPointerException: Cannot read field \"mySpeed\" because \"b\" is null", + "SYSTEM: Err: No bullets matched! 13.100 java.lang.NullPointerException: Cannot read field \"mySpeed\" because \"b\" is null", + "SYSTEM: Err: No bullets matched! 13.100 java.lang.NullPointerException: Cannot read field \"mySpeed\" because \"b\" is null", + "SYSTEM: Err: No bullets matched! 13.100 java.lang.NullPointerException: Cannot read field \"mySpeed\" because \"b\" is null", + "SYSTEM: Err: No bullets matched! 13.100 java.lang.NullPointerException: Cannot read field \"mySpeed\" because \"b\" is null" + ], + "has_log": true, "ok": true, - "score": 4048.0, + "score": 5837.0, "scores": [ - 2085.0, - 1963.0 + 2575.0, + 3262.0 ], - "selected": "codemojo.nano.Woot 1.0" + "selected": "metal.small.dna2.MCoolDNA 1.5" }, - "completed_at": "2026-09-08T21:20:15Z", - "delta_pct": -2.7, - "id": "ec2f186e76fabdbc", + "completed_at": "2026-09-12T22:37:50Z", + "confirmation": null, + "delta_pct": null, + "id": "0f8532e1d0c50b95", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "d177578b2a187aa1dbe524ffbb02f362b0241cfc", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -51475,101 +113172,115 @@ "width": 800 }, "source_identity": { - "classic_selected": "codemojo.nano.Woot 1.0", + "classic_selected": "metal.small.dna2.MCoolDNA 1.5", "division": "roborumble", - "jar": "codemojo.nano.Woot_1.0.jar", - "jar_sha256": "7f635dc2e4809d680d0bef2e71454a61c03051e0385ec3e11af10105b694c3d6", - "key": "roborumble/codemojo.nano.Woot_1.0.jar", + "jar": "metal.small.dna2.MCoolDNA_1.5.jar", + "jar_sha256": "17bd952dcf63cfa2a5343ac8bf58772bd5086be5b79f727d17caf8856541a124", + "key": "roborumble/metal.small.dna2.MCoolDNA_1.5.jar", "kind": "robot" }, - "status": "PASS", + "status": "DISCREPANCY (outcome)", "tank_royale": { - "elapsed": 14.0, - "error_count": 0, - "errors": [], - "has_log": false, - "ok": true, - "score": 3939.0, - "scores": [ - 2031.0, - 1908.0 + "bridge_only_signatures": [ + [ + "java.lang.ArrayIndexOutOfBoundsException", + "metal.small.dna2.GunWave.mostVisited" + ], + [ + "java.lang.NullPointerException", + "metal.small.dna2.GunWave.mostVisited" + ] + ], + "elapsed": 6.1, + "error_count": 5, + "error_signatures": [ + { + "exception": "java.lang.ArrayIndexOutOfBoundsException", + "origin": "metal.small.dna2.GunWave.mostVisited" + }, + { + "exception": "java.lang.NullPointerException", + "origin": "metal.small.dna2.GunWave.mostVisited" + }, + { + "exception": "java.lang.NullPointerException", + "origin": "unknown" + } + ], + "errors": [ + "HARNESS: worker produced no result (exit code -1)", + "SYSTEM: Err: No bullets matched! 13.100 java.lang.NullPointerException: Cannot read field \"mySpeed\" because \"b\" is null", + "java.lang.ArrayIndexOutOfBoundsException: Index -1 out of bounds for length 5", + "SYSTEM: Err: No bullets matched! 13.100 java.lang.NullPointerException: Cannot read field \"mySpeed\" because \"b\" is null", + "SYSTEM: Err: No bullets matched! 13.100 java.lang.NullPointerException: Cannot read field \"mySpeed\" because \"b\" is null" ], + "has_log": true, + "ok": false, + "score": null, + "scores": [], "skipped": null } } ], - "status": "PASS" + "status": "DISCREPANCY (outcome)" }, - "roborumble/com.arsenic.NewTest_1.0.jar": { + "roborumble/microtestbotpack.MicroTestBot_1.0.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "com.arsenic.NewTest 1.0", + "classic_selected": "microtestbotpack.MicroTestBot 1.0", "division": "roborumble", - "jar": "com.arsenic.NewTest_1.0.jar", - "jar_sha256": "0a5a9d382489ace685399cf9c5d709daa70f7e545ac85d54a1b0e81bf7d3a412", - "key": "roborumble/com.arsenic.NewTest_1.0.jar", + "jar": "microtestbotpack.MicroTestBot_1.0.jar", + "jar_sha256": "f027d5f302ba6cf0948138dbd5ee16e09db3cb2bc21f3e96ec1226162ece3756", + "key": "roborumble/microtestbotpack.MicroTestBot_1.0.jar", "kind": "robot" }, - "latest_observation": "bec9ffc1e65a95d1", + "latest_observation": "ce815daa6d066802", "observations": [ { "classic": { - "elapsed": 2.5, - "error_count": 10, - "errors": [ - "SYSTEM: java.lang.ArrayIndexOutOfBoundsException occurred on robocode.BulletHitEvent", - "java.lang.ArrayIndexOutOfBoundsException: Index -47 out of bounds for length 2", - "SYSTEM: java.lang.ArrayIndexOutOfBoundsException occurred on robocode.BulletHitEvent", - "java.lang.ArrayIndexOutOfBoundsException: Index -47 out of bounds for length 2", - "SYSTEM: java.lang.ArrayIndexOutOfBoundsException occurred on robocode.BulletHitEvent", - "java.lang.ArrayIndexOutOfBoundsException: Index -93 out of bounds for length 2", - "SYSTEM: java.lang.ArrayIndexOutOfBoundsException occurred on robocode.BulletHitEvent", - "java.lang.ArrayIndexOutOfBoundsException: Index -53 out of bounds for length 2", - "SYSTEM: java.lang.ArrayIndexOutOfBoundsException occurred on robocode.BulletMissedEvent", - "java.lang.ArrayIndexOutOfBoundsException: Index -47 out of bounds for length 2" - ], - "has_log": true, + "elapsed": 4.3, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, "ok": true, - "score": 6336.0, + "score": 5950.0, "scores": [ - 2876.0, - 3460.0 + 3370.0, + 2580.0 ], - "selected": "com.arsenic.NewTest 1.0" + "selected": "microtestbotpack.MicroTestBot 1.0" }, - "completed_at": "2026-09-08T21:20:32Z", - "delta_pct": 0.3, - "id": "bec9ffc1e65a95d1", + "completed_at": "2026-09-12T22:39:46Z", + "confirmation": null, + "delta_pct": -4.0, + "id": "ce815daa6d066802", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "d177578b2a187aa1dbe524ffbb02f362b0241cfc", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -51577,24 +113288,26 @@ "width": 800 }, "source_identity": { - "classic_selected": "com.arsenic.NewTest 1.0", + "classic_selected": "microtestbotpack.MicroTestBot 1.0", "division": "roborumble", - "jar": "com.arsenic.NewTest_1.0.jar", - "jar_sha256": "0a5a9d382489ace685399cf9c5d709daa70f7e545ac85d54a1b0e81bf7d3a412", - "key": "roborumble/com.arsenic.NewTest_1.0.jar", + "jar": "microtestbotpack.MicroTestBot_1.0.jar", + "jar_sha256": "f027d5f302ba6cf0948138dbd5ee16e09db3cb2bc21f3e96ec1226162ece3756", + "key": "roborumble/microtestbotpack.MicroTestBot_1.0.jar", "kind": "robot" }, "status": "PASS", "tank_royale": { - "elapsed": 14.0, + "bridge_only_signatures": null, + "elapsed": 92.8, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 6352.0, + "score": 5712.0, "scores": [ - 3403.0, - 2949.0 + 2985.0, + 2727.0 ], "skipped": null } @@ -51602,65 +113315,63 @@ ], "status": "PASS" }, - "roborumble/com.blogspot.malinkody.DestrobotMalin_1.0.jar": { + "roborumble/mjhjd.MattHussey1_1.1.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "com.blogspot.malinkody.DestrobotMalin 1.0", + "classic_selected": "mjhjd.MattHussey1 1.1", "division": "roborumble", - "jar": "com.blogspot.malinkody.DestrobotMalin_1.0.jar", - "jar_sha256": "d3205656d01007c800f5fa5549d247aa7030a40380277752ecd590e091339c27", - "key": "roborumble/com.blogspot.malinkody.DestrobotMalin_1.0.jar", + "jar": "mjhjd.MattHussey1_1.1.jar", + "jar_sha256": "ba188ee67f25df6ec75e4845d0ec829bfee2f63db49e541d35aec4c42eadef88", + "key": "roborumble/mjhjd.MattHussey1_1.1.jar", "kind": "robot" }, - "latest_observation": "41f11a8de1bd0c5b", + "latest_observation": "475b611d09ac7594", "observations": [ { "classic": { - "elapsed": 3.0, + "elapsed": 3.7, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 7820.0, + "score": 3054.0, "scores": [ - 3673.0, - 4147.0 + 1373.0, + 1681.0 ], - "selected": "com.blogspot.malinkody.DestrobotMalin 1.0" + "selected": "mjhjd.MattHussey1 1.1" }, - "completed_at": "2026-09-08T21:21:03Z", - "delta_pct": -58.8, - "id": "41f11a8de1bd0c5b", + "completed_at": "2026-09-12T22:40:20Z", + "confirmation": null, + "delta_pct": -13.7, + "id": "475b611d09ac7594", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "d177578b2a187aa1dbe524ffbb02f362b0241cfc", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -51668,95 +113379,90 @@ "width": 800 }, "source_identity": { - "classic_selected": "com.blogspot.malinkody.DestrobotMalin 1.0", + "classic_selected": "mjhjd.MattHussey1 1.1", "division": "roborumble", - "jar": "com.blogspot.malinkody.DestrobotMalin_1.0.jar", - "jar_sha256": "d3205656d01007c800f5fa5549d247aa7030a40380277752ecd590e091339c27", - "key": "roborumble/com.blogspot.malinkody.DestrobotMalin_1.0.jar", + "jar": "mjhjd.MattHussey1_1.1.jar", + "jar_sha256": "ba188ee67f25df6ec75e4845d0ec829bfee2f63db49e541d35aec4c42eadef88", + "key": "roborumble/mjhjd.MattHussey1_1.1.jar", "kind": "robot" }, - "status": "DISCREPANCY (score)", + "status": "PASS", "tank_royale": { - "elapsed": 28.0, + "bridge_only_signatures": null, + "elapsed": 30.0, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 3218.0, + "score": 2637.0, "scores": [ - 1747.0, - 1471.0 + 1322.0, + 1315.0 ], "skipped": null } } ], - "status": "score-review" + "status": "PASS" }, - "roborumble/com.cohesiva.robocode.ManOwaR_1.0.jar": { + "roborumble/mk.Alpha_0.2.1.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "com.cohesiva.robocode.ManOwaR 1.0", + "classic_selected": "mk.Alpha 0.2.1", "division": "roborumble", - "jar": "com.cohesiva.robocode.ManOwaR_1.0.jar", - "jar_sha256": "46519fab7d639e4d0a64afdd133618e92b7dcd923b8f252325098cc4a0e9031e", - "key": "roborumble/com.cohesiva.robocode.ManOwaR_1.0.jar", + "jar": "mk.Alpha_0.2.1.jar", + "jar_sha256": "b0c1973472f36b5e554e0e526841f6c16b66a043d3935567edb96ffd1d85b1af", + "key": "roborumble/mk.Alpha_0.2.1.jar", "kind": "robot" }, - "latest_observation": "b68f0a69b507a3fe", + "latest_observation": "71b934ed45a01855", "observations": [ { "classic": { - "elapsed": 3.3, - "error_count": 4, - "errors": [ - "SYSTEM: java.lang.IllegalArgumentException occurred on robocode.HitByBulletEvent", - "java.lang.IllegalArgumentException: bound must be positive", - "SYSTEM: java.lang.IllegalArgumentException occurred on robocode.HitByBulletEvent", - "java.lang.IllegalArgumentException: bound must be positive" - ], - "has_log": true, + "elapsed": 3.5, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, "ok": true, - "score": 4856.0, + "score": 5218.0, "scores": [ - 2550.0, - 2306.0 + 2501.0, + 2717.0 ], - "selected": "com.cohesiva.robocode.ManOwaR 1.0" + "selected": "mk.Alpha 0.2.1" }, - "completed_at": "2026-09-08T21:21:39Z", - "delta_pct": 0.4, - "id": "b68f0a69b507a3fe", + "completed_at": "2026-09-12T22:40:48Z", + "confirmation": null, + "delta_pct": -2.4, + "id": "71b934ed45a01855", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "d177578b2a187aa1dbe524ffbb02f362b0241cfc", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -51764,26 +113470,26 @@ "width": 800 }, "source_identity": { - "classic_selected": "com.cohesiva.robocode.ManOwaR 1.0", + "classic_selected": "mk.Alpha 0.2.1", "division": "roborumble", - "jar": "com.cohesiva.robocode.ManOwaR_1.0.jar", - "jar_sha256": "46519fab7d639e4d0a64afdd133618e92b7dcd923b8f252325098cc4a0e9031e", - "key": "roborumble/com.cohesiva.robocode.ManOwaR_1.0.jar", + "jar": "mk.Alpha_0.2.1.jar", + "jar_sha256": "b0c1973472f36b5e554e0e526841f6c16b66a043d3935567edb96ffd1d85b1af", + "key": "roborumble/mk.Alpha_0.2.1.jar", "kind": "robot" }, "status": "PASS", "tank_royale": { - "elapsed": 32.0, - "error_count": 1, - "errors": [ - "java.lang.IllegalArgumentException: bound must be positive" - ], - "has_log": true, + "bridge_only_signatures": null, + "elapsed": 24.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, "ok": true, - "score": 4873.0, + "score": 5092.0, "scores": [ - 2446.0, - 2427.0 + 2791.0, + 2301.0 ], "skipped": null } @@ -51791,65 +113497,63 @@ ], "status": "PASS" }, - "roborumble/com.sociesc.T1000_1.0.0.jar": { + "roborumble/mladjo.AIR_0.7.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "com.sociesc.T1000 1.0.0", + "classic_selected": "mladjo.AIR 0.7", "division": "roborumble", - "jar": "com.sociesc.T1000_1.0.0.jar", - "jar_sha256": "4398cb800fc016f19b0a9841c795e5bdf33ab65beaff628759abf81ce711732f", - "key": "roborumble/com.sociesc.T1000_1.0.0.jar", + "jar": "mladjo.AIR_0.7.jar", + "jar_sha256": "f4ea99871852823bfdc863adc7526a47ba7da0c05489f7594b4e3b48cc599ce6", + "key": "roborumble/mladjo.AIR_0.7.jar", "kind": "robot" }, - "latest_observation": "c50ef80274e4a320", + "latest_observation": "6861dd6a51c0545e", "observations": [ { "classic": { - "elapsed": 3.6, + "elapsed": 2.8, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 0.0, + "score": 5603.0, "scores": [ - 0.0, - 0.0 + 2532.0, + 3071.0 ], - "selected": "com.sociesc.T1000 1.0.0" + "selected": "mladjo.AIR 0.7" }, - "completed_at": "2026-09-08T21:22:15Z", - "delta_pct": null, - "id": "c50ef80274e4a320", + "completed_at": "2026-09-12T22:41:15Z", + "confirmation": null, + "delta_pct": -6.1, + "id": "6861dd6a51c0545e", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "d177578b2a187aa1dbe524ffbb02f362b0241cfc", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -51857,90 +113561,90 @@ "width": 800 }, "source_identity": { - "classic_selected": "com.sociesc.T1000 1.0.0", + "classic_selected": "mladjo.AIR 0.7", "division": "roborumble", - "jar": "com.sociesc.T1000_1.0.0.jar", - "jar_sha256": "4398cb800fc016f19b0a9841c795e5bdf33ab65beaff628759abf81ce711732f", - "key": "roborumble/com.sociesc.T1000_1.0.0.jar", + "jar": "mladjo.AIR_0.7.jar", + "jar_sha256": "f4ea99871852823bfdc863adc7526a47ba7da0c05489f7594b4e3b48cc599ce6", + "key": "roborumble/mladjo.AIR_0.7.jar", "kind": "robot" }, - "status": "DISCREPANCY (no score)", + "status": "PASS", "tank_royale": { - "elapsed": 32.1, + "bridge_only_signatures": null, + "elapsed": 24.0, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 362.0, + "score": 5262.0, "scores": [ - 181.0, - 181.0 + 2707.0, + 2555.0 ], "skipped": null } } ], - "status": "DISCREPANCY (no score)" + "status": "PASS" }, - "roborumble/com.spp.robocode.MostlyHarmless_010.jar": { + "roborumble/mladjo.GnuKlub_0.1.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "com.spp.robocode.MostlyHarmless 010", + "classic_selected": "mladjo.GnuKlub 0.1", "division": "roborumble", - "jar": "com.spp.robocode.MostlyHarmless_010.jar", - "jar_sha256": "79e3073e986fc6cdf59da91bb4f2b4c271770c7b31600fd2eafebb20bfca2710", - "key": "roborumble/com.spp.robocode.MostlyHarmless_010.jar", + "jar": "mladjo.GnuKlub_0.1.jar", + "jar_sha256": "fb5078072ff851d18e43064039a72ddc1ed1de1e4caa899dd6de76e8ad688cd7", + "key": "roborumble/mladjo.GnuKlub_0.1.jar", "kind": "robot" }, - "latest_observation": "7f12b894b7bb568c", + "latest_observation": "23029b18ae3acd53", "observations": [ { "classic": { - "elapsed": 3.6, + "elapsed": 2.7, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 7087.0, + "score": 4412.0, "scores": [ - 3817.0, - 3270.0 + 2318.0, + 2094.0 ], - "selected": "com.spp.robocode.MostlyHarmless 010" + "selected": "mladjo.GnuKlub 0.1" }, - "completed_at": "2026-09-08T21:22:39Z", - "delta_pct": 0.5, - "id": "7f12b894b7bb568c", + "completed_at": "2026-09-12T22:41:38Z", + "confirmation": null, + "delta_pct": -30.5, + "id": "23029b18ae3acd53", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "d177578b2a187aa1dbe524ffbb02f362b0241cfc", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -51948,90 +113652,90 @@ "width": 800 }, "source_identity": { - "classic_selected": "com.spp.robocode.MostlyHarmless 010", + "classic_selected": "mladjo.GnuKlub 0.1", "division": "roborumble", - "jar": "com.spp.robocode.MostlyHarmless_010.jar", - "jar_sha256": "79e3073e986fc6cdf59da91bb4f2b4c271770c7b31600fd2eafebb20bfca2710", - "key": "roborumble/com.spp.robocode.MostlyHarmless_010.jar", + "jar": "mladjo.GnuKlub_0.1.jar", + "jar_sha256": "fb5078072ff851d18e43064039a72ddc1ed1de1e4caa899dd6de76e8ad688cd7", + "key": "roborumble/mladjo.GnuKlub_0.1.jar", "kind": "robot" }, - "status": "PASS", + "status": "DISCREPANCY (score)", "tank_royale": { - "elapsed": 20.1, + "bridge_only_signatures": null, + "elapsed": 20.0, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 7123.0, + "score": 3068.0, "scores": [ - 3634.0, - 3489.0 + 1679.0, + 1389.0 ], "skipped": null } } ], - "status": "PASS" + "status": "score-review" }, - "roborumble/com.syncleus.robocode.Dreadnaught_0.1.jar": { + "roborumble/mladjo.Grrrrr_0.9.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "com.syncleus.robocode.Dreadnaught 0.1", + "classic_selected": "mladjo.Grrrrr 0.9", "division": "roborumble", - "jar": "com.syncleus.robocode.Dreadnaught_0.1.jar", - "jar_sha256": "4a2a9926375fca4cf32ea72bdc8ab43930223f2090bae428474eafb9a6dd823c", - "key": "roborumble/com.syncleus.robocode.Dreadnaught_0.1.jar", + "jar": "mladjo.Grrrrr_0.9.jar", + "jar_sha256": "550962059ce61663f81f3285f4bffd247f68f28dd65d1cea44740c81eae08e60", + "key": "roborumble/mladjo.Grrrrr_0.9.jar", "kind": "robot" }, - "latest_observation": "f963f02cb575c278", + "latest_observation": "0323d04c91b510a4", "observations": [ { "classic": { - "elapsed": 2.6, + "elapsed": 2.7, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 12138.0, + "score": 5941.0, "scores": [ - 5649.0, - 6489.0 + 3215.0, + 2726.0 ], - "selected": "com.syncleus.robocode.Dreadnaught 0.1" + "selected": "mladjo.Grrrrr 0.9" }, - "completed_at": "2026-09-08T21:22:56Z", - "delta_pct": 1.2, - "id": "f963f02cb575c278", + "completed_at": "2026-09-12T22:42:03Z", + "confirmation": null, + "delta_pct": -70.6, + "id": "0323d04c91b510a4", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "d177578b2a187aa1dbe524ffbb02f362b0241cfc", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -52039,90 +113743,90 @@ "width": 800 }, "source_identity": { - "classic_selected": "com.syncleus.robocode.Dreadnaught 0.1", + "classic_selected": "mladjo.Grrrrr 0.9", "division": "roborumble", - "jar": "com.syncleus.robocode.Dreadnaught_0.1.jar", - "jar_sha256": "4a2a9926375fca4cf32ea72bdc8ab43930223f2090bae428474eafb9a6dd823c", - "key": "roborumble/com.syncleus.robocode.Dreadnaught_0.1.jar", + "jar": "mladjo.Grrrrr_0.9.jar", + "jar_sha256": "550962059ce61663f81f3285f4bffd247f68f28dd65d1cea44740c81eae08e60", + "key": "roborumble/mladjo.Grrrrr_0.9.jar", "kind": "robot" }, - "status": "PASS", + "status": "DISCREPANCY (score)", "tank_royale": { - "elapsed": 14.0, + "bridge_only_signatures": null, + "elapsed": 22.0, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 12285.0, + "score": 1747.0, "scores": [ - 6150.0, - 6135.0 + 1038.0, + 709.0 ], "skipped": null } } ], - "status": "PASS" + "status": "score-review" }, - "roborumble/com.timothyveletta.FuzzyBot_1.1.jar": { + "roborumble/mladjo.Startko_1.0.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "com.timothyveletta.FuzzyBot 1.1", + "classic_selected": "mladjo.Startko 1.0", "division": "roborumble", - "jar": "com.timothyveletta.FuzzyBot_1.1.jar", - "jar_sha256": "4d2003ddcb53060505ae0c6c32b74ed389da21f047faba64f6fe03bb9488fa37", - "key": "roborumble/com.timothyveletta.FuzzyBot_1.1.jar", + "jar": "mladjo.Startko_1.0.jar", + "jar_sha256": "10af9c087dd7d2b5d1471dce8b1d2816266e2b728b27fd32aa565897f76bd95a", + "key": "roborumble/mladjo.Startko_1.0.jar", "kind": "robot" }, - "latest_observation": "f3979e1d91165e7b", + "latest_observation": "6b642e781008ae25", "observations": [ { "classic": { - "elapsed": 2.5, + "elapsed": 2.6, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 8421.0, + "score": 6357.0, "scores": [ - 4238.0, - 4183.0 + 3114.0, + 3243.0 ], - "selected": "com.timothyveletta.FuzzyBot 1.1" + "selected": "mladjo.Startko 1.0" }, - "completed_at": "2026-09-08T21:23:13Z", - "delta_pct": -3.5, - "id": "f3979e1d91165e7b", + "completed_at": "2026-09-12T22:42:53Z", + "confirmation": null, + "delta_pct": -18.6, + "id": "6b642e781008ae25", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "d177578b2a187aa1dbe524ffbb02f362b0241cfc", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -52130,24 +113834,26 @@ "width": 800 }, "source_identity": { - "classic_selected": "com.timothyveletta.FuzzyBot 1.1", + "classic_selected": "mladjo.Startko 1.0", "division": "roborumble", - "jar": "com.timothyveletta.FuzzyBot_1.1.jar", - "jar_sha256": "4d2003ddcb53060505ae0c6c32b74ed389da21f047faba64f6fe03bb9488fa37", - "key": "roborumble/com.timothyveletta.FuzzyBot_1.1.jar", + "jar": "mladjo.Startko_1.0.jar", + "jar_sha256": "10af9c087dd7d2b5d1471dce8b1d2816266e2b728b27fd32aa565897f76bd95a", + "key": "roborumble/mladjo.Startko_1.0.jar", "kind": "robot" }, "status": "PASS", "tank_royale": { - "elapsed": 14.0, + "bridge_only_signatures": null, + "elapsed": 20.0, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 8126.0, + "score": 5177.0, "scores": [ - 4244.0, - 3882.0 + 2619.0, + 2558.0 ], "skipped": null } @@ -52155,65 +113861,63 @@ ], "status": "PASS" }, - "roborumble/conscience.Bulldozer_1.0a.jar": { + "roborumble/mladjo.iRobot_0.3.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "conscience.Bulldozer 1.0a", + "classic_selected": "mladjo.iRobot 0.3", "division": "roborumble", - "jar": "conscience.Bulldozer_1.0a.jar", - "jar_sha256": "f822506ece11632ca21436cfede847408f696140c474ae3b35e25187fbe27875", - "key": "roborumble/conscience.Bulldozer_1.0a.jar", + "jar": "mladjo.iRobot_0.3.jar", + "jar_sha256": "97438c6b46ff1d122975ec726f10291e23db8d9e21956241dcd490d4cdabb1e0", + "key": "roborumble/mladjo.iRobot_0.3.jar", "kind": "robot" }, - "latest_observation": "34ee10313f50e735", + "latest_observation": "38dccf41ca9f4c06", "observations": [ { "classic": { - "elapsed": 2.2, + "elapsed": 2.9, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 10965.0, + "score": 5629.0, "scores": [ - 5873.0, - 5092.0 + 2402.0, + 3227.0 ], - "selected": "conscience.Bulldozer 1.0a" + "selected": "mladjo.iRobot 0.3" }, - "completed_at": "2026-09-08T21:23:25Z", - "delta_pct": 51.2, - "id": "34ee10313f50e735", + "completed_at": "2026-09-12T22:42:30Z", + "confirmation": null, + "delta_pct": -33.4, + "id": "38dccf41ca9f4c06", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "d177578b2a187aa1dbe524ffbb02f362b0241cfc", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -52221,24 +113925,26 @@ "width": 800 }, "source_identity": { - "classic_selected": "conscience.Bulldozer 1.0a", + "classic_selected": "mladjo.iRobot 0.3", "division": "roborumble", - "jar": "conscience.Bulldozer_1.0a.jar", - "jar_sha256": "f822506ece11632ca21436cfede847408f696140c474ae3b35e25187fbe27875", - "key": "roborumble/conscience.Bulldozer_1.0a.jar", + "jar": "mladjo.iRobot_0.3.jar", + "jar_sha256": "97438c6b46ff1d122975ec726f10291e23db8d9e21956241dcd490d4cdabb1e0", + "key": "roborumble/mladjo.iRobot_0.3.jar", "kind": "robot" }, "status": "DISCREPANCY (score)", "tank_royale": { - "elapsed": 10.0, + "bridge_only_signatures": null, + "elapsed": 24.0, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 16581.0, + "score": 3750.0, "scores": [ - 8305.0, - 8276.0 + 2074.0, + 1676.0 ], "skipped": null } @@ -52246,65 +113952,63 @@ ], "status": "score-review" }, - "roborumble/conscience.Electron_1.3g.jar": { + "roborumble/mld.DustBunny_3.8.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "conscience.Electron 1.3g", + "classic_selected": "mld.DustBunny 3.8", "division": "roborumble", - "jar": "conscience.Electron_1.3g.jar", - "jar_sha256": "a8d12ab9530cd0f748593ac3d04cd2cf0b563713905457257c3395b7ab7aaf9b", - "key": "roborumble/conscience.Electron_1.3g.jar", + "jar": "mld.DustBunny_3.8.jar", + "jar_sha256": "2ebc9519e346d2e2df59764f670bdedd131595cef3fc20719f6c1d6b1d603748", + "key": "roborumble/mld.DustBunny_3.8.jar", "kind": "robot" }, - "latest_observation": "60e25212f69814cd", + "latest_observation": "0f2a548789a3aab5", "observations": [ { "classic": { - "elapsed": 3.4, + "elapsed": 2.4, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 8619.0, + "score": 8464.0, "scores": [ - 4673.0, - 3946.0 + 3894.0, + 4570.0 ], - "selected": "conscience.Electron 1.3g" + "selected": "mld.DustBunny 3.8" }, - "completed_at": "2026-09-08T21:23:43Z", - "delta_pct": 6.9, - "id": "60e25212f69814cd", + "completed_at": "2026-09-12T22:43:12Z", + "confirmation": null, + "delta_pct": -17.3, + "id": "0f2a548789a3aab5", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "d177578b2a187aa1dbe524ffbb02f362b0241cfc", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -52312,24 +114016,26 @@ "width": 800 }, "source_identity": { - "classic_selected": "conscience.Electron 1.3g", + "classic_selected": "mld.DustBunny 3.8", "division": "roborumble", - "jar": "conscience.Electron_1.3g.jar", - "jar_sha256": "a8d12ab9530cd0f748593ac3d04cd2cf0b563713905457257c3395b7ab7aaf9b", - "key": "roborumble/conscience.Electron_1.3g.jar", + "jar": "mld.DustBunny_3.8.jar", + "jar_sha256": "2ebc9519e346d2e2df59764f670bdedd131595cef3fc20719f6c1d6b1d603748", + "key": "roborumble/mld.DustBunny_3.8.jar", "kind": "robot" }, "status": "PASS", "tank_royale": { - "elapsed": 14.0, + "bridge_only_signatures": null, + "elapsed": 16.0, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 9213.0, + "score": 7000.0, "scores": [ - 4903.0, - 4310.0 + 4111.0, + 2889.0 ], "skipped": null } @@ -52337,65 +114043,63 @@ ], "status": "PASS" }, - "roborumble/conscience.Idem_1.0a.jar": { + "roborumble/mld.Infinity_2.2.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "conscience.Idem 1.0a", + "classic_selected": "mld.Infinity 2.2", "division": "roborumble", - "jar": "conscience.Idem_1.0a.jar", - "jar_sha256": "1635ea6692d7c89d41d0e089fced55ac334f24f429380fb686590ca58cecfb2d", - "key": "roborumble/conscience.Idem_1.0a.jar", + "jar": "mld.Infinity_2.2.jar", + "jar_sha256": "c982f1fe1da7cc9dfd196d695c569695f110bd9147c5b428b261925691707fe4", + "key": "roborumble/mld.Infinity_2.2.jar", "kind": "robot" }, - "latest_observation": "2c5f75820a136af0", + "latest_observation": "e5b845799f252102", "observations": [ { "classic": { - "elapsed": 8.8, + "elapsed": 2.7, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 9441.0, + "score": 6038.0, "scores": [ - 4317.0, - 5124.0 + 2859.0, + 3179.0 ], - "selected": "conscience.Idem 1.0a" + "selected": "mld.Infinity 2.2" }, - "completed_at": "2026-09-08T21:26:24Z", - "delta_pct": -19.8, - "id": "2c5f75820a136af0", + "completed_at": "2026-09-12T22:43:47Z", + "confirmation": null, + "delta_pct": -59.8, + "id": "e5b845799f252102", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "d177578b2a187aa1dbe524ffbb02f362b0241cfc", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -52403,90 +114107,90 @@ "width": 800 }, "source_identity": { - "classic_selected": "conscience.Idem 1.0a", + "classic_selected": "mld.Infinity 2.2", "division": "roborumble", - "jar": "conscience.Idem_1.0a.jar", - "jar_sha256": "1635ea6692d7c89d41d0e089fced55ac334f24f429380fb686590ca58cecfb2d", - "key": "roborumble/conscience.Idem_1.0a.jar", + "jar": "mld.Infinity_2.2.jar", + "jar_sha256": "c982f1fe1da7cc9dfd196d695c569695f110bd9147c5b428b261925691707fe4", + "key": "roborumble/mld.Infinity_2.2.jar", "kind": "robot" }, - "status": "PASS", + "status": "DISCREPANCY (score)", "tank_royale": { - "elapsed": 152.2, + "bridge_only_signatures": null, + "elapsed": 32.0, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 7569.0, + "score": 2427.0, "scores": [ - 4064.0, - 3505.0 + 1453.0, + 974.0 ], "skipped": null } } ], - "status": "PASS" + "status": "score-review" }, - "roborumble/conscience.Suicidal_1.1.jar": { + "roborumble/mld.LittleBlackBook_1.69e.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "conscience.Suicidal 1.1", + "classic_selected": "mld.LittleBlackBook 1.69e", "division": "roborumble", - "jar": "conscience.Suicidal_1.1.jar", - "jar_sha256": "4650b8e8b5705e0fafb87fb4ffdcda77597f168c7c1c9272abae80691ad4f3d6", - "key": "roborumble/conscience.Suicidal_1.1.jar", + "jar": "mld.LittleBlackBook_1.69e.jar", + "jar_sha256": "d0ed49835588ab6b2a4162870fb805e0a3a7e611928e54b7f8e20a71a161d183", + "key": "roborumble/mld.LittleBlackBook_1.69e.jar", "kind": "robot" }, - "latest_observation": "126c32b41d68f5f3", + "latest_observation": "2974701ea33707c7", "observations": [ { "classic": { - "elapsed": 2.6, + "elapsed": 2.9, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 0.0, + "score": 1850.0, "scores": [ - 0.0, - 0.0 + 1036.0, + 814.0 ], - "selected": "conscience.Suicidal 1.1" + "selected": "mld.LittleBlackBook 1.69e" }, - "completed_at": "2026-09-08T21:26:39Z", - "delta_pct": null, - "id": "126c32b41d68f5f3", + "completed_at": "2026-09-12T22:44:22Z", + "confirmation": null, + "delta_pct": 241.8, + "id": "2974701ea33707c7", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "d177578b2a187aa1dbe524ffbb02f362b0241cfc", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -52494,90 +114198,90 @@ "width": 800 }, "source_identity": { - "classic_selected": "conscience.Suicidal 1.1", + "classic_selected": "mld.LittleBlackBook 1.69e", "division": "roborumble", - "jar": "conscience.Suicidal_1.1.jar", - "jar_sha256": "4650b8e8b5705e0fafb87fb4ffdcda77597f168c7c1c9272abae80691ad4f3d6", - "key": "roborumble/conscience.Suicidal_1.1.jar", + "jar": "mld.LittleBlackBook_1.69e.jar", + "jar_sha256": "d0ed49835588ab6b2a4162870fb805e0a3a7e611928e54b7f8e20a71a161d183", + "key": "roborumble/mld.LittleBlackBook_1.69e.jar", "kind": "robot" }, - "status": "DISCREPANCY (no score)", + "status": "DISCREPANCY (score)", "tank_royale": { - "elapsed": 12.0, + "bridge_only_signatures": null, + "elapsed": 14.0, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 2100.0, + "score": 6324.0, "scores": [ - 1260.0, - 840.0 + 4835.0, + 1489.0 ], "skipped": null } } ], - "status": "DISCREPANCY (no score)" + "status": "score-review" }, - "roborumble/cre.Karolos_0.32.jar": { + "roborumble/mld.Moebius_2.9.3.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "cre.Karolos 0.32", + "classic_selected": "mld.Moebius 2.9.3", "division": "roborumble", - "jar": "cre.Karolos_0.32.jar", - "jar_sha256": "9d35fbbe7c3c3a2d325d49028ea3c4be40906f0f5e919a49dd46f66ca734e7ca", - "key": "roborumble/cre.Karolos_0.32.jar", + "jar": "mld.Moebius_2.9.3.jar", + "jar_sha256": "96ff4607e694de627eca531b7d1b4c588b05347ca7a681a7407ea926b8dcbe3f", + "key": "roborumble/mld.Moebius_2.9.3.jar", "kind": "robot" }, - "latest_observation": "0c5b559772cf4ee1", + "latest_observation": "a8e588a36ad8a74b", "observations": [ { "classic": { - "elapsed": 9.2, + "elapsed": 2.9, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 6626.0, + "score": 6886.0, "scores": [ - 3289.0, - 3337.0 + 4079.0, + 2807.0 ], - "selected": "cre.Karolos 0.32" + "selected": "mld.Moebius 2.9.3" }, - "completed_at": "2026-09-08T21:26:53Z", - "delta_pct": null, - "id": "0c5b559772cf4ee1", + "completed_at": "2026-09-12T22:44:41Z", + "confirmation": null, + "delta_pct": -8.7, + "id": "a8e588a36ad8a74b", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "d177578b2a187aa1dbe524ffbb02f362b0241cfc", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -52585,188 +114289,90 @@ "width": 800 }, "source_identity": { - "classic_selected": "cre.Karolos 0.32", + "classic_selected": "mld.Moebius 2.9.3", "division": "roborumble", - "jar": "cre.Karolos_0.32.jar", - "jar_sha256": "9d35fbbe7c3c3a2d325d49028ea3c4be40906f0f5e919a49dd46f66ca734e7ca", - "key": "roborumble/cre.Karolos_0.32.jar", + "jar": "mld.Moebius_2.9.3.jar", + "jar_sha256": "96ff4607e694de627eca531b7d1b4c588b05347ca7a681a7407ea926b8dcbe3f", + "key": "roborumble/mld.Moebius_2.9.3.jar", "kind": "robot" }, - "status": "FAIL (TR)", + "status": "PASS", "tank_royale": { - "elapsed": 4.2, - "error_count": 370, - "errors": [ - "HARNESS: worker produced no result (exit code -1)", - "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", - "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", - "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", - "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", - "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", - "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", - "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", - "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", - "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", - "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", - "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", - "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", - "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", - "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", - "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", - "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", - "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", - "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", - "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", - "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", - "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", - "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", - "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", - "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", - "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", - "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", - "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", - "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", - "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", - "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", - "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", - "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", - "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", - "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", - "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", - "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", - "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", - "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", - "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", - "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", - "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", - "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", - "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", - "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", - "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", - "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", - "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", - "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", - "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", - "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", - "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", - "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", - "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", - "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", - "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", - "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", - "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", - "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", - "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", - "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", - "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", - "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", - "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", - "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", - "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", - "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", - "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", - "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", - "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", - "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", - "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", - "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", - "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", - "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", - "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", - "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", - "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", - "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", - "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", - "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", - "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", - "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", - "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", - "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", - "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", - "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", - "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", - "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", - "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", - "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", - "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", - "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", - "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", - "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", - "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", - "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", - "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", - "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null", - "java.lang.NullPointerException: Cannot invoke \"cre.e.e()\" because the return value of \"cre.e.a(long)\" is null" + "bridge_only_signatures": null, + "elapsed": 16.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 6285.0, + "scores": [ + 3252.0, + 3033.0 ], - "has_log": true, - "ok": false, - "score": null, - "scores": [], "skipped": null } } ], - "status": "FAIL (TR)" + "status": "PASS" }, - "roborumble/cs.Nene_1.0.5.jar": { + "roborumble/mld.Wisdom_1.0.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "cs.Nene 1.0.5", + "classic_selected": "mld.Wisdom 1.0", "division": "roborumble", - "jar": "cs.Nene_1.0.5.jar", - "jar_sha256": "9615be8f8f2bdf4f42a38f74b4b81d0944e86f06311582915a78af06d529e856", - "key": "roborumble/cs.Nene_1.0.5.jar", + "jar": "mld.Wisdom_1.0.jar", + "jar_sha256": "f98eb1af9da5861e0afad2df1afff07642377ab8cea81a09c2860e489e186544", + "key": "roborumble/mld.Wisdom_1.0.jar", "kind": "robot" }, - "latest_observation": "77f6703bbf53891a", + "latest_observation": "47a73446157b9ff6", "observations": [ { "classic": { - "elapsed": 11.0, + "elapsed": 2.7, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 4672.0, + "score": 2048.0, "scores": [ - 2424.0, - 2248.0 + 1032.0, + 1016.0 ], - "selected": "cs.Nene 1.0.5" + "selected": "mld.Wisdom 1.0" }, - "completed_at": "2026-09-08T21:27:36Z", - "delta_pct": -100.0, - "id": "77f6703bbf53891a", + "completed_at": "2026-09-12T22:45:00Z", + "confirmation": null, + "delta_pct": 37.5, + "id": "47a73446157b9ff6", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "d177578b2a187aa1dbe524ffbb02f362b0241cfc", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -52774,24 +114380,26 @@ "width": 800 }, "source_identity": { - "classic_selected": "cs.Nene 1.0.5", + "classic_selected": "mld.Wisdom 1.0", "division": "roborumble", - "jar": "cs.Nene_1.0.5.jar", - "jar_sha256": "9615be8f8f2bdf4f42a38f74b4b81d0944e86f06311582915a78af06d529e856", - "key": "roborumble/cs.Nene_1.0.5.jar", + "jar": "mld.Wisdom_1.0.jar", + "jar_sha256": "f98eb1af9da5861e0afad2df1afff07642377ab8cea81a09c2860e489e186544", + "key": "roborumble/mld.Wisdom_1.0.jar", "kind": "robot" }, "status": "DISCREPANCY (score)", "tank_royale": { - "elapsed": 32.1, + "bridge_only_signatures": null, + "elapsed": 16.0, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 0.0, + "score": 2816.0, "scores": [ - 0.0, - 0.0 + 1737.0, + 1079.0 ], "skipped": null } @@ -52799,65 +114407,63 @@ ], "status": "score-review" }, - "roborumble/cs.PumpkinPie_1.0.jar": { + "roborumble/mld.jdc.nano.LittleBlackBook_1.0.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "cs.PumpkinPie 1.0", + "classic_selected": "mld.jdc.nano.LittleBlackBook 1.0", "division": "roborumble", - "jar": "cs.PumpkinPie_1.0.jar", - "jar_sha256": "d395a080e3bfff0c30871bb5f5b255b824f5da4a72f4b0f77bab84cd8a9278fa", - "key": "roborumble/cs.PumpkinPie_1.0.jar", + "jar": "mld.jdc.nano.LittleBlackBook_1.0.jar", + "jar_sha256": "0324ec4208586f2a3fdcae83be7a721448291a15ebb44da4bc3b861ea8ddaff7", + "key": "roborumble/mld.jdc.nano.LittleBlackBook_1.0.jar", "kind": "robot" }, - "latest_observation": "90e4313a94769aff", + "latest_observation": "2ec30f004042b332", "observations": [ { "classic": { - "elapsed": 10.6, + "elapsed": 2.8, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 4960.0, + "score": 2239.0, "scores": [ - 2852.0, - 2108.0 + 1203.0, + 1036.0 ], - "selected": "cs.PumpkinPie 1.0" + "selected": "mld.jdc.nano.LittleBlackBook 1.0" }, - "completed_at": "2026-09-08T21:28:17Z", - "delta_pct": -3.4, - "id": "90e4313a94769aff", + "completed_at": "2026-09-12T22:44:04Z", + "confirmation": null, + "delta_pct": 191.8, + "id": "2ec30f004042b332", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "d177578b2a187aa1dbe524ffbb02f362b0241cfc", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -52865,90 +114471,90 @@ "width": 800 }, "source_identity": { - "classic_selected": "cs.PumpkinPie 1.0", + "classic_selected": "mld.jdc.nano.LittleBlackBook 1.0", "division": "roborumble", - "jar": "cs.PumpkinPie_1.0.jar", - "jar_sha256": "d395a080e3bfff0c30871bb5f5b255b824f5da4a72f4b0f77bab84cd8a9278fa", - "key": "roborumble/cs.PumpkinPie_1.0.jar", + "jar": "mld.jdc.nano.LittleBlackBook_1.0.jar", + "jar_sha256": "0324ec4208586f2a3fdcae83be7a721448291a15ebb44da4bc3b861ea8ddaff7", + "key": "roborumble/mld.jdc.nano.LittleBlackBook_1.0.jar", "kind": "robot" }, - "status": "PASS", + "status": "DISCREPANCY (score)", "tank_royale": { - "elapsed": 30.0, + "bridge_only_signatures": null, + "elapsed": 14.0, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 4790.0, + "score": 6533.0, "scores": [ - 2664.0, - 2126.0 + 4921.0, + 1612.0 ], "skipped": null } } ], - "status": "PASS" + "status": "score-review" }, - "roborumble/cs.Wren_1.0.jar": { + "roborumble/mmb.Roskilde_0.5.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "cs.Wren 1.0", + "classic_selected": "mmb.Roskilde 0.5", "division": "roborumble", - "jar": "cs.Wren_1.0.jar", - "jar_sha256": "89f30ea0d295bbc4516e9dad72426663fdf68707b2c733555e408c35679770ea", - "key": "roborumble/cs.Wren_1.0.jar", + "jar": "mmb.Roskilde_0.5.jar", + "jar_sha256": "ee006f3e8c68fc138e9d52f5a8f61e56331ad7d5738b392d885c8567de1813d9", + "key": "roborumble/mmb.Roskilde_0.5.jar", "kind": "robot" }, - "latest_observation": "c9973e9dd44d5919", + "latest_observation": "b23b95ce6ce7c9bf", "observations": [ { "classic": { - "elapsed": 2.9, + "elapsed": 3.2, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 7915.0, + "score": 5768.0, "scores": [ - 4387.0, - 3528.0 + 2945.0, + 2823.0 ], - "selected": "cs.Wren 1.0" + "selected": "mmb.Roskilde 0.5" }, - "completed_at": "2026-09-08T21:29:04Z", - "delta_pct": -4.4, - "id": "c9973e9dd44d5919", + "completed_at": "2026-09-12T22:45:38Z", + "confirmation": null, + "delta_pct": -7.3, + "id": "b23b95ce6ce7c9bf", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "d177578b2a187aa1dbe524ffbb02f362b0241cfc", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -52956,24 +114562,26 @@ "width": 800 }, "source_identity": { - "classic_selected": "cs.Wren 1.0", + "classic_selected": "mmb.Roskilde 0.5", "division": "roborumble", - "jar": "cs.Wren_1.0.jar", - "jar_sha256": "89f30ea0d295bbc4516e9dad72426663fdf68707b2c733555e408c35679770ea", - "key": "roborumble/cs.Wren_1.0.jar", + "jar": "mmb.Roskilde_0.5.jar", + "jar_sha256": "ee006f3e8c68fc138e9d52f5a8f61e56331ad7d5738b392d885c8567de1813d9", + "key": "roborumble/mmb.Roskilde_0.5.jar", "kind": "robot" }, "status": "PASS", "tank_royale": { - "elapsed": 18.0, + "bridge_only_signatures": null, + "elapsed": 34.0, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 7564.0, + "score": 5346.0, "scores": [ - 4552.0, - 3012.0 + 2707.0, + 2639.0 ], "skipped": null } @@ -52981,65 +114589,63 @@ ], "status": "PASS" }, - "roborumble/cs.s2.Seraphim_2.3.1.jar": { + "roborumble/mme.NikeEnhanced_2.0.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "cs.s2.Seraphim 2.3.1", + "classic_selected": "mme.NikeEnhanced 2.0", "division": "roborumble", - "jar": "cs.s2.Seraphim_2.3.1.jar", - "jar_sha256": "d5bc11f229b5e2727bae6f8065251ed72bb0cc51ce900684183832c9e45a9845", - "key": "roborumble/cs.s2.Seraphim_2.3.1.jar", + "jar": "mme.NikeEnhanced_2.0.jar", + "jar_sha256": "6a6c5762dd9c8c4bc47c8bf0fe9f8224534d7045ceaad3c79b969ebdf66d517a", + "key": "roborumble/mme.NikeEnhanced_2.0.jar", "kind": "robot" }, - "latest_observation": "de2ae85b37c1610b", + "latest_observation": "82d3439e0edbe4b4", "observations": [ { "classic": { - "elapsed": 4.9, + "elapsed": 2.8, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 4910.0, + "score": 3878.0, "scores": [ - 2613.0, - 2297.0 + 1650.0, + 2228.0 ], - "selected": "cs.s2.Seraphim 2.3.1" + "selected": "mme.NikeEnhanced 2.0" }, - "completed_at": "2026-09-08T21:28:42Z", - "delta_pct": -0.1, - "id": "de2ae85b37c1610b", + "completed_at": "2026-09-12T22:46:01Z", + "confirmation": null, + "delta_pct": 65.5, + "id": "82d3439e0edbe4b4", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "d177578b2a187aa1dbe524ffbb02f362b0241cfc", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -53047,90 +114653,90 @@ "width": 800 }, "source_identity": { - "classic_selected": "cs.s2.Seraphim 2.3.1", + "classic_selected": "mme.NikeEnhanced 2.0", "division": "roborumble", - "jar": "cs.s2.Seraphim_2.3.1.jar", - "jar_sha256": "d5bc11f229b5e2727bae6f8065251ed72bb0cc51ce900684183832c9e45a9845", - "key": "roborumble/cs.s2.Seraphim_2.3.1.jar", + "jar": "mme.NikeEnhanced_2.0.jar", + "jar_sha256": "6a6c5762dd9c8c4bc47c8bf0fe9f8224534d7045ceaad3c79b969ebdf66d517a", + "key": "roborumble/mme.NikeEnhanced_2.0.jar", "kind": "robot" }, - "status": "PASS", + "status": "DISCREPANCY (score)", "tank_royale": { + "bridge_only_signatures": null, "elapsed": 20.0, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 4904.0, + "score": 6418.0, "scores": [ - 2519.0, - 2385.0 + 3370.0, + 3048.0 ], "skipped": null } } ], - "status": "PASS" + "status": "score-review" }, - "roborumble/csm.NthGeneration_0.04.jar": { + "roborumble/mn.Combat_3.25.0.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "csm.NthGeneration 0.04", + "classic_selected": "mn.Combat 3.25.0", "division": "roborumble", - "jar": "csm.NthGeneration_0.04.jar", - "jar_sha256": "e7b92a77f2fe7f2c8c1cd2d4a90529f8c66551770a6f2d176b628217593226a4", - "key": "roborumble/csm.NthGeneration_0.04.jar", + "jar": "mn.Combat_3.25.0.jar", + "jar_sha256": "48ee3e5181f21644e2a2f04c75d8359d189af0f519d8aef065398f60dce443db", + "key": "roborumble/mn.Combat_3.25.0.jar", "kind": "robot" }, - "latest_observation": "e8bab6b8456b7c4a", + "latest_observation": "ec1cce937bc29b09", "observations": [ { "classic": { - "elapsed": 3.3, + "elapsed": 36.5, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 4659.0, + "score": 4469.0, "scores": [ - 2071.0, - 2588.0 + 1795.0, + 2674.0 ], - "selected": "csm.NthGeneration 0.04" + "selected": "mn.Combat 3.25.0" }, - "completed_at": "2026-09-08T21:29:45Z", - "delta_pct": -5.0, - "id": "e8bab6b8456b7c4a", + "completed_at": "2026-09-12T22:46:42Z", + "confirmation": null, + "delta_pct": null, + "id": "ec1cce937bc29b09", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "d177578b2a187aa1dbe524ffbb02f362b0241cfc", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -53138,90 +114744,101 @@ "width": 800 }, "source_identity": { - "classic_selected": "csm.NthGeneration 0.04", + "classic_selected": "mn.Combat 3.25.0", "division": "roborumble", - "jar": "csm.NthGeneration_0.04.jar", - "jar_sha256": "e7b92a77f2fe7f2c8c1cd2d4a90529f8c66551770a6f2d176b628217593226a4", - "key": "roborumble/csm.NthGeneration_0.04.jar", + "jar": "mn.Combat_3.25.0.jar", + "jar_sha256": "48ee3e5181f21644e2a2f04c75d8359d189af0f519d8aef065398f60dce443db", + "key": "roborumble/mn.Combat_3.25.0.jar", "kind": "robot" }, - "status": "PASS", + "status": "DISCREPANCY (outcome)", "tank_royale": { - "elapsed": 38.0, - "error_count": 0, - "errors": [], - "has_log": false, - "ok": true, - "score": 4426.0, - "scores": [ - 2381.0, - 2045.0 + "bridge_only_signatures": [ + [ + "java.lang.ArrayIndexOutOfBoundsException", + "mn.b.b.a" + ] + ], + "elapsed": 4.2, + "error_count": 3, + "error_signatures": [ + { + "exception": "java.lang.ArrayIndexOutOfBoundsException", + "origin": "mn.b.b.a" + } ], + "errors": [ + "HARNESS: worker produced no result (exit code -1)", + "java.lang.ArrayIndexOutOfBoundsException: Index 0 out of bounds for length 0", + "java.lang.ArrayIndexOutOfBoundsException: Index 0 out of bounds for length 0" + ], + "has_log": true, + "ok": false, + "score": null, + "scores": [], "skipped": null } } ], - "status": "PASS" + "status": "DISCREPANCY (outcome)" }, - "roborumble/csp.Eagle_3.30.jar": { + "roborumble/mn.micro.perceptual.Mimic_1.0.0.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "csp.Eagle 3.30", + "classic_selected": "mn.micro.perceptual.Mimic 1.0.0", "division": "roborumble", - "jar": "csp.Eagle_3.30.jar", - "jar_sha256": "8a09a1ad3e1e4eb01f84d98868d26db8c0e58b4900ca41ddc93ddf13a56fbcce", - "key": "roborumble/csp.Eagle_3.30.jar", + "jar": "mn.micro.perceptual.Mimic_1.0.0.jar", + "jar_sha256": "cdcd1e94be5288329d499a0dc3bad0524e9eb60fba4358d8c28933c94c7635ac", + "key": "roborumble/mn.micro.perceptual.Mimic_1.0.0.jar", "kind": "robot" }, - "latest_observation": "e0122d77dc924a71", + "latest_observation": "fa21dbaf21a76e1c", "observations": [ { "classic": { - "elapsed": 2.4, + "elapsed": 3.1, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 7114.0, + "score": 6048.0, "scores": [ - 3203.0, - 3911.0 + 2928.0, + 3120.0 ], - "selected": "csp.Eagle 3.30" + "selected": "mn.micro.perceptual.Mimic 1.0.0" }, - "completed_at": "2026-09-08T21:30:04Z", - "delta_pct": -37.0, - "id": "e0122d77dc924a71", + "completed_at": "2026-09-12T22:47:12Z", + "confirmation": null, + "delta_pct": -11.5, + "id": "fa21dbaf21a76e1c", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "d177578b2a187aa1dbe524ffbb02f362b0241cfc", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -53229,90 +114846,161 @@ "width": 800 }, "source_identity": { - "classic_selected": "csp.Eagle 3.30", + "classic_selected": "mn.micro.perceptual.Mimic 1.0.0", "division": "roborumble", - "jar": "csp.Eagle_3.30.jar", - "jar_sha256": "8a09a1ad3e1e4eb01f84d98868d26db8c0e58b4900ca41ddc93ddf13a56fbcce", - "key": "roborumble/csp.Eagle_3.30.jar", + "jar": "mn.micro.perceptual.Mimic_1.0.0.jar", + "jar_sha256": "cdcd1e94be5288329d499a0dc3bad0524e9eb60fba4358d8c28933c94c7635ac", + "key": "roborumble/mn.micro.perceptual.Mimic_1.0.0.jar", "kind": "robot" }, - "status": "DISCREPANCY (score)", + "status": "PASS", "tank_royale": { - "elapsed": 16.0, + "bridge_only_signatures": null, + "elapsed": 26.0, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 4484.0, + "score": 5350.0, "scores": [ - 2376.0, - 2108.0 + 2990.0, + 2360.0 ], "skipped": null } } ], - "status": "score-review" + "status": "PASS" }, - "roborumble/css.Delitioner_0.11.jar": { + "roborumble/mn.nano.SkippedTurns_1.1.0.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "css.Delitioner 0.11", + "classic_selected": "mn.nano.SkippedTurns 1.1.0", "division": "roborumble", - "jar": "css.Delitioner_0.11.jar", - "jar_sha256": "6c718a72f59cec4464649d650469adfcccaf0de0744d7fd3e3ef7a2c5ce28c0b", - "key": "roborumble/css.Delitioner_0.11.jar", + "jar": "mn.nano.SkippedTurns_1.1.0.jar", + "jar_sha256": "bbecf5479a0a5697cab6ca0dc03a290732ae5b304cb28eb450948e1941621e9b", + "key": "roborumble/mn.nano.SkippedTurns_1.1.0.jar", "kind": "robot" }, - "latest_observation": "9bf3a4bffbd5125f", + "latest_observation": "6575d76867504d26", "observations": [ { "classic": { - "elapsed": 3.1, - "error_count": 0, - "errors": [], - "has_log": false, + "elapsed": 15.5, + "error_count": 70, + "error_signatures": [], + "errors": [ + "Unable to stop thread: mn.nano.SkippedTurns 1.1.0 (2)", + "Unable to stop thread: mn.nano.SkippedTurns 1.1.0 (1)", + "Unable to stop thread: mn.nano.SkippedTurns 1.1.0 (1)", + "Unable to stop thread: mn.nano.SkippedTurns 1.1.0 (2)", + "Unable to stop thread: mn.nano.SkippedTurns 1.1.0 (1)", + "Unable to stop thread: mn.nano.SkippedTurns 1.1.0 (2)", + "Unable to stop thread: mn.nano.SkippedTurns 1.1.0 (2)", + "Unable to stop thread: mn.nano.SkippedTurns 1.1.0 (1)", + "Unable to stop thread: mn.nano.SkippedTurns 1.1.0 (2)", + "Unable to stop thread: mn.nano.SkippedTurns 1.1.0 (1)", + "Unable to stop thread: mn.nano.SkippedTurns 1.1.0 (1)", + "Unable to stop thread: mn.nano.SkippedTurns 1.1.0 (2)", + "Unable to stop thread: mn.nano.SkippedTurns 1.1.0 (2)", + "Unable to stop thread: mn.nano.SkippedTurns 1.1.0 (1)", + "Unable to stop thread: mn.nano.SkippedTurns 1.1.0 (1)", + "Unable to stop thread: mn.nano.SkippedTurns 1.1.0 (2)", + "Unable to stop thread: mn.nano.SkippedTurns 1.1.0 (1)", + "Unable to stop thread: mn.nano.SkippedTurns 1.1.0 (2)", + "Unable to stop thread: mn.nano.SkippedTurns 1.1.0 (2)", + "Unable to stop thread: mn.nano.SkippedTurns 1.1.0 (1)", + "Unable to stop thread: mn.nano.SkippedTurns 1.1.0 (1)", + "Unable to stop thread: mn.nano.SkippedTurns 1.1.0 (2)", + "Unable to stop thread: mn.nano.SkippedTurns 1.1.0 (2)", + "Unable to stop thread: mn.nano.SkippedTurns 1.1.0 (1)", + "Unable to stop thread: mn.nano.SkippedTurns 1.1.0 (1)", + "Unable to stop thread: mn.nano.SkippedTurns 1.1.0 (2)", + "Unable to stop thread: mn.nano.SkippedTurns 1.1.0 (1)", + "Unable to stop thread: mn.nano.SkippedTurns 1.1.0 (2)", + "Unable to stop thread: mn.nano.SkippedTurns 1.1.0 (2)", + "Unable to stop thread: mn.nano.SkippedTurns 1.1.0 (1)", + "Unable to stop thread: mn.nano.SkippedTurns 1.1.0 (2)", + "Unable to stop thread: mn.nano.SkippedTurns 1.1.0 (1)", + "Unable to stop thread: mn.nano.SkippedTurns 1.1.0 (1)", + "Unable to stop thread: mn.nano.SkippedTurns 1.1.0 (2)", + "Unable to stop thread: mn.nano.SkippedTurns 1.1.0 (2)", + "Unable to stop thread: mn.nano.SkippedTurns 1.1.0 (1)", + "Unable to stop thread: mn.nano.SkippedTurns 1.1.0 (1)", + "Unable to stop thread: mn.nano.SkippedTurns 1.1.0 (2)", + "Unable to stop thread: mn.nano.SkippedTurns 1.1.0 (2)", + "Unable to stop thread: mn.nano.SkippedTurns 1.1.0 (1)", + "Unable to stop thread: mn.nano.SkippedTurns 1.1.0 (2)", + "Unable to stop thread: mn.nano.SkippedTurns 1.1.0 (1)", + "Unable to stop thread: mn.nano.SkippedTurns 1.1.0 (1)", + "Unable to stop thread: mn.nano.SkippedTurns 1.1.0 (2)", + "Unable to stop thread: mn.nano.SkippedTurns 1.1.0 (2)", + "Unable to stop thread: mn.nano.SkippedTurns 1.1.0 (1)", + "Unable to stop thread: mn.nano.SkippedTurns 1.1.0 (1)", + "Unable to stop thread: mn.nano.SkippedTurns 1.1.0 (2)", + "Unable to stop thread: mn.nano.SkippedTurns 1.1.0 (2)", + "Unable to stop thread: mn.nano.SkippedTurns 1.1.0 (1)", + "Unable to stop thread: mn.nano.SkippedTurns 1.1.0 (1)", + "Unable to stop thread: mn.nano.SkippedTurns 1.1.0 (2)", + "Unable to stop thread: mn.nano.SkippedTurns 1.1.0 (1)", + "Unable to stop thread: mn.nano.SkippedTurns 1.1.0 (2)", + "Unable to stop thread: mn.nano.SkippedTurns 1.1.0 (2)", + "Unable to stop thread: mn.nano.SkippedTurns 1.1.0 (1)", + "Unable to stop thread: mn.nano.SkippedTurns 1.1.0 (1)", + "Unable to stop thread: mn.nano.SkippedTurns 1.1.0 (2)", + "Unable to stop thread: mn.nano.SkippedTurns 1.1.0 (1)", + "Unable to stop thread: mn.nano.SkippedTurns 1.1.0 (2)", + "Unable to stop thread: mn.nano.SkippedTurns 1.1.0 (2)", + "Unable to stop thread: mn.nano.SkippedTurns 1.1.0 (1)", + "Unable to stop thread: mn.nano.SkippedTurns 1.1.0 (1)", + "Unable to stop thread: mn.nano.SkippedTurns 1.1.0 (2)", + "Unable to stop thread: mn.nano.SkippedTurns 1.1.0 (2)", + "Unable to stop thread: mn.nano.SkippedTurns 1.1.0 (1)", + "Unable to stop thread: mn.nano.SkippedTurns 1.1.0 (1)", + "Unable to stop thread: mn.nano.SkippedTurns 1.1.0 (2)", + "Unable to stop thread: mn.nano.SkippedTurns 1.1.0 (2)", + "Unable to stop thread: mn.nano.SkippedTurns 1.1.0 (1)" + ], + "has_log": true, "ok": true, - "score": 6253.0, + "score": 2040.0, "scores": [ - 2997.0, - 3256.0 + 960.0, + 1080.0 ], - "selected": "css.Delitioner 0.11" + "selected": "mn.nano.SkippedTurns 1.1.0" }, - "completed_at": "2026-09-08T21:30:27Z", - "delta_pct": -5.4, - "id": "9bf3a4bffbd5125f", + "completed_at": "2026-09-12T22:48:05Z", + "confirmation": null, + "delta_pct": null, + "id": "6575d76867504d26", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "d30d1b3ceb92e6635d372a95dcf3f76a73bdd363", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -53320,90 +115008,103 @@ "width": 800 }, "source_identity": { - "classic_selected": "css.Delitioner 0.11", + "classic_selected": "mn.nano.SkippedTurns 1.1.0", "division": "roborumble", - "jar": "css.Delitioner_0.11.jar", - "jar_sha256": "6c718a72f59cec4464649d650469adfcccaf0de0744d7fd3e3ef7a2c5ce28c0b", - "key": "roborumble/css.Delitioner_0.11.jar", + "jar": "mn.nano.SkippedTurns_1.1.0.jar", + "jar_sha256": "bbecf5479a0a5697cab6ca0dc03a290732ae5b304cb28eb450948e1941621e9b", + "key": "roborumble/mn.nano.SkippedTurns_1.1.0.jar", "kind": "robot" }, - "status": "PASS", + "status": "DISCREPANCY (outcome)", "tank_royale": { - "elapsed": 20.0, - "error_count": 0, - "errors": [], - "has_log": false, - "ok": true, - "score": 5916.0, - "scores": [ - 2995.0, - 2921.0 + "bridge_only_signatures": [ + [ + "java.lang.IllegalArgumentException", + "mn.nano.SkippedTurns.run" + ] + ], + "elapsed": 6.1, + "error_count": 5, + "error_signatures": [ + { + "exception": "java.lang.IllegalArgumentException", + "origin": "mn.nano.SkippedTurns.run" + } ], + "errors": [ + "HARNESS: worker produced no result (exit code -1)", + "java.lang.IllegalArgumentException: nanosecond timeout value out of range", + "java.lang.IllegalArgumentException: nanosecond timeout value out of range", + "java.lang.IllegalArgumentException: nanosecond timeout value out of range", + "java.lang.IllegalArgumentException: nanosecond timeout value out of range" + ], + "has_log": true, + "ok": false, + "score": null, + "scores": [], "skipped": null } } ], - "status": "PASS" + "status": "DISCREPANCY (outcome)" }, - "roborumble/cuoq.Kakera_1.0.jar": { + "roborumble/mn.nano.perceptual.Impact_1.3.0.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "cuoq.Kakera 1.0", + "classic_selected": "mn.nano.perceptual.Impact 1.3.0", "division": "roborumble", - "jar": "cuoq.Kakera_1.0.jar", - "jar_sha256": "8e7d78ebb335e16e126036e8f66bc9a751c3059f0a310ebd5bf9b930a517b60b", - "key": "roborumble/cuoq.Kakera_1.0.jar", + "jar": "mn.nano.perceptual.Impact_1.3.0.jar", + "jar_sha256": "eafd877adc4d334a5c6543360fe34cb5c6a2f17c31c32dc7ab0cfcef6e071f15", + "key": "roborumble/mn.nano.perceptual.Impact_1.3.0.jar", "kind": "robot" }, - "latest_observation": "99a4b47c6b169333", + "latest_observation": "3eaffb97ae957a2d", "observations": [ { "classic": { - "elapsed": 5.1, + "elapsed": 2.2, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 6875.0, + "score": 10564.0, "scores": [ - 3376.0, - 3499.0 + 5052.0, + 5512.0 ], - "selected": "cuoq.Kakera 1.0" + "selected": "mn.nano.perceptual.Impact 1.3.0" }, - "completed_at": "2026-09-08T21:30:59Z", - "delta_pct": -10.6, - "id": "99a4b47c6b169333", + "completed_at": "2026-09-12T22:47:43Z", + "confirmation": null, + "delta_pct": 56.7, + "id": "3eaffb97ae957a2d", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "d30d1b3ceb92e6635d372a95dcf3f76a73bdd363", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -53411,90 +115112,90 @@ "width": 800 }, "source_identity": { - "classic_selected": "cuoq.Kakera 1.0", + "classic_selected": "mn.nano.perceptual.Impact 1.3.0", "division": "roborumble", - "jar": "cuoq.Kakera_1.0.jar", - "jar_sha256": "8e7d78ebb335e16e126036e8f66bc9a751c3059f0a310ebd5bf9b930a517b60b", - "key": "roborumble/cuoq.Kakera_1.0.jar", + "jar": "mn.nano.perceptual.Impact_1.3.0.jar", + "jar_sha256": "eafd877adc4d334a5c6543360fe34cb5c6a2f17c31c32dc7ab0cfcef6e071f15", + "key": "roborumble/mn.nano.perceptual.Impact_1.3.0.jar", "kind": "robot" }, - "status": "PASS", + "status": "DISCREPANCY (score)", "tank_royale": { - "elapsed": 26.0, + "bridge_only_signatures": null, + "elapsed": 10.0, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 6144.0, + "score": 16559.0, "scores": [ - 3173.0, - 2971.0 + 8451.0, + 8108.0 ], "skipped": null } } ], - "status": "PASS" + "status": "score-review" }, - "roborumble/cw.megas.Blade_0.8.jar": { + "roborumble/mnt.AHEB_0.6a.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "cw.megas.Blade 0.8", + "classic_selected": "mnt.AHEB 0.6a", "division": "roborumble", - "jar": "cw.megas.Blade_0.8.jar", - "jar_sha256": "4a50333c16fd0bdc02aca8c152e7017ede5c8e763ceaba42319867a5b256f830", - "key": "roborumble/cw.megas.Blade_0.8.jar", + "jar": "mnt.AHEB_0.6a.jar", + "jar_sha256": "67649dbd7f93cddb1af7ff35fe2a48b51c6319b5d613415867b8b6037d1c0bac", + "key": "roborumble/mnt.AHEB_0.6a.jar", "kind": "robot" }, - "latest_observation": "8fd749571b62d83f", + "latest_observation": "f17bdd7a3c104b3c", "observations": [ { "classic": { - "elapsed": 3.8, + "elapsed": 2.6, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 5684.0, + "score": 6328.0, "scores": [ - 2349.0, - 3335.0 + 3018.0, + 3310.0 ], - "selected": "cw.megas.Blade 0.8" + "selected": "mnt.AHEB 0.6a" }, - "completed_at": "2026-09-08T21:31:07Z", - "delta_pct": null, - "id": "8fd749571b62d83f", + "completed_at": "2026-09-12T22:48:34Z", + "confirmation": null, + "delta_pct": -60.4, + "id": "f17bdd7a3c104b3c", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "d30d1b3ceb92e6635d372a95dcf3f76a73bdd363", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -53502,219 +115203,90 @@ "width": 800 }, "source_identity": { - "classic_selected": "cw.megas.Blade 0.8", + "classic_selected": "mnt.AHEB 0.6a", "division": "roborumble", - "jar": "cw.megas.Blade_0.8.jar", - "jar_sha256": "4a50333c16fd0bdc02aca8c152e7017ede5c8e763ceaba42319867a5b256f830", - "key": "roborumble/cw.megas.Blade_0.8.jar", + "jar": "mnt.AHEB_0.6a.jar", + "jar_sha256": "67649dbd7f93cddb1af7ff35fe2a48b51c6319b5d613415867b8b6037d1c0bac", + "key": "roborumble/mnt.AHEB_0.6a.jar", "kind": "robot" }, - "status": "FAIL (TR)", + "status": "DISCREPANCY (score)", "tank_royale": { - "elapsed": 4.2, - "error_count": 30, - "errors": [ - "HARNESS: worker produced no result (exit code -1)", - "java.lang.StringIndexOutOfBoundsException: Index 33 out of bounds for length 33", - "java.lang.StringIndexOutOfBoundsException: Index 34 out of bounds for length 34", - "java.lang.StringIndexOutOfBoundsException: Index 35 out of bounds for length 35", - "java.lang.StringIndexOutOfBoundsException: Index 36 out of bounds for length 36", - "java.lang.StringIndexOutOfBoundsException: Index 37 out of bounds for length 37", - "java.lang.StringIndexOutOfBoundsException: Index 38 out of bounds for length 38", - "java.lang.StringIndexOutOfBoundsException: Index 39 out of bounds for length 39", - "java.lang.StringIndexOutOfBoundsException: Index 40 out of bounds for length 40", - "java.lang.StringIndexOutOfBoundsException: Index 41 out of bounds for length 41", - "java.lang.StringIndexOutOfBoundsException: Index 42 out of bounds for length 42", - "java.lang.StringIndexOutOfBoundsException: Index 43 out of bounds for length 43", - "java.lang.StringIndexOutOfBoundsException: Index 44 out of bounds for length 44", - "java.lang.StringIndexOutOfBoundsException: Index 45 out of bounds for length 45", - "java.lang.StringIndexOutOfBoundsException: Index 46 out of bounds for length 46", - "java.lang.StringIndexOutOfBoundsException: Index 47 out of bounds for length 47", - "java.lang.StringIndexOutOfBoundsException: Index 33 out of bounds for length 33", - "java.lang.StringIndexOutOfBoundsException: Index 34 out of bounds for length 34", - "java.lang.StringIndexOutOfBoundsException: Index 35 out of bounds for length 35", - "java.lang.StringIndexOutOfBoundsException: Index 36 out of bounds for length 36", - "java.lang.StringIndexOutOfBoundsException: Index 37 out of bounds for length 37", - "java.lang.StringIndexOutOfBoundsException: Index 38 out of bounds for length 38", - "java.lang.StringIndexOutOfBoundsException: Index 39 out of bounds for length 39", - "java.lang.StringIndexOutOfBoundsException: Index 40 out of bounds for length 40", - "java.lang.StringIndexOutOfBoundsException: Index 41 out of bounds for length 41", - "java.lang.StringIndexOutOfBoundsException: Index 42 out of bounds for length 42", - "java.lang.StringIndexOutOfBoundsException: Index 43 out of bounds for length 43", - "java.lang.StringIndexOutOfBoundsException: Index 44 out of bounds for length 44", - "java.lang.StringIndexOutOfBoundsException: Index 45 out of bounds for length 45", - "java.lang.StringIndexOutOfBoundsException: Index 46 out of bounds for length 46" + "bridge_only_signatures": null, + "elapsed": 26.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 2503.0, + "scores": [ + 1386.0, + 1117.0 ], - "has_log": true, - "ok": false, - "score": null, - "scores": [], "skipped": null } } ], - "status": "FAIL (TR)" + "status": "score-review" }, - "roborumble/cw.megas.GhostShell_GT.jar": { + "roborumble/mnt.SurferBot_0.2.5.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "cw.megas.GhostShell GT", + "classic_selected": "mnt.SurferBot 0.2.5", "division": "roborumble", - "jar": "cw.megas.GhostShell_GT.jar", - "jar_sha256": "f75b19028ba3d181ae70d87a380370cf53e535b49e87f9060069a8591bc5888a", - "key": "roborumble/cw.megas.GhostShell_GT.jar", + "jar": "mnt.SurferBot_0.2.5.jar", + "jar_sha256": "ef04532f1870591c78022863e369cf2af44f688f23969eb1a56a865c162f7d24", + "key": "roborumble/mnt.SurferBot_0.2.5.jar", "kind": "robot" }, - "latest_observation": "624c2e5957e9c806", + "latest_observation": "47a1e08efb5ca58c", "observations": [ { "classic": { - "elapsed": 2.9, - "error_count": 584, - "errors": [ - "SYSTEM: java.lang.NullPointerException occurred on robocode.ScannedRobotEvent", - "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", - "SYSTEM: java.lang.NullPointerException occurred on robocode.ScannedRobotEvent", - "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", - "SYSTEM: java.lang.NullPointerException occurred on robocode.ScannedRobotEvent", - "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", - "SYSTEM: java.lang.NullPointerException occurred on robocode.ScannedRobotEvent", - "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", - "SYSTEM: java.lang.NullPointerException occurred on robocode.ScannedRobotEvent", - "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", - "SYSTEM: java.lang.NullPointerException occurred on robocode.ScannedRobotEvent", - "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"p\" is null", - "SYSTEM: java.lang.NullPointerException occurred on robocode.ScannedRobotEvent", - "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"p\" is null", - "SYSTEM: java.lang.NullPointerException occurred on robocode.ScannedRobotEvent", - "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"p\" is null", - "SYSTEM: java.lang.NullPointerException occurred on robocode.ScannedRobotEvent", - "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"p\" is null", - "SYSTEM: java.lang.NullPointerException occurred on robocode.ScannedRobotEvent", - "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"p\" is null", - "SYSTEM: java.lang.NullPointerException occurred on robocode.ScannedRobotEvent", - "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"p\" is null", - "SYSTEM: java.lang.NullPointerException occurred on robocode.ScannedRobotEvent", - "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"p\" is null", - "SYSTEM: java.lang.NullPointerException occurred on robocode.ScannedRobotEvent", - "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"p\" is null", - "SYSTEM: java.lang.NullPointerException occurred on robocode.ScannedRobotEvent", - "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"p\" is null", - "SYSTEM: java.lang.NullPointerException occurred on robocode.ScannedRobotEvent", - "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"p\" is null", - "SYSTEM: java.lang.NullPointerException occurred on robocode.ScannedRobotEvent", - "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"p\" is null", - "SYSTEM: java.lang.NullPointerException occurred on robocode.ScannedRobotEvent", - "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"p\" is null", - "SYSTEM: java.lang.NullPointerException occurred on robocode.ScannedRobotEvent", - "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"p\" is null", - "SYSTEM: java.lang.NullPointerException occurred on robocode.ScannedRobotEvent", - "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"p\" is null", - "SYSTEM: java.lang.NullPointerException occurred on robocode.ScannedRobotEvent", - "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"p\" is null", - "SYSTEM: java.lang.NullPointerException occurred on robocode.ScannedRobotEvent", - "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"p\" is null", - "SYSTEM: java.lang.NullPointerException occurred on robocode.ScannedRobotEvent", - "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"p\" is null", - "SYSTEM: java.lang.NullPointerException occurred on robocode.ScannedRobotEvent", - "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"p\" is null", - "SYSTEM: java.lang.NullPointerException occurred on robocode.ScannedRobotEvent", - "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"p\" is null", - "SYSTEM: java.lang.NullPointerException occurred on robocode.ScannedRobotEvent", - "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"p\" is null", - "SYSTEM: java.lang.NullPointerException occurred on robocode.ScannedRobotEvent", - "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"p\" is null", - "SYSTEM: java.lang.NullPointerException occurred on robocode.ScannedRobotEvent", - "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"p\" is null", - "SYSTEM: java.lang.NullPointerException occurred on robocode.ScannedRobotEvent", - "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"p\" is null", - "SYSTEM: java.lang.NullPointerException occurred on robocode.ScannedRobotEvent", - "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"p\" is null", - "SYSTEM: java.lang.NullPointerException occurred on robocode.ScannedRobotEvent", - "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"p\" is null", - "SYSTEM: java.lang.NullPointerException occurred on robocode.ScannedRobotEvent", - "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"p\" is null", - "SYSTEM: java.lang.NullPointerException occurred on robocode.ScannedRobotEvent", - "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"p\" is null", - "SYSTEM: java.lang.NullPointerException occurred on robocode.ScannedRobotEvent", - "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"p\" is null", - "SYSTEM: java.lang.NullPointerException occurred on robocode.ScannedRobotEvent", - "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"p\" is null", - "SYSTEM: java.lang.NullPointerException occurred on robocode.ScannedRobotEvent", - "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"p\" is null", - "SYSTEM: java.lang.NullPointerException occurred on robocode.ScannedRobotEvent", - "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"p\" is null", - "SYSTEM: java.lang.NullPointerException occurred on robocode.ScannedRobotEvent", - "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"p\" is null", - "SYSTEM: java.lang.NullPointerException occurred on robocode.ScannedRobotEvent", - "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"p\" is null", - "SYSTEM: java.lang.NullPointerException occurred on robocode.ScannedRobotEvent", - "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"p\" is null", - "SYSTEM: java.lang.NullPointerException occurred on robocode.ScannedRobotEvent", - "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"p\" is null", - "SYSTEM: java.lang.NullPointerException occurred on robocode.ScannedRobotEvent", - "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"p\" is null", - "SYSTEM: java.lang.NullPointerException occurred on robocode.ScannedRobotEvent", - "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"p\" is null", - "SYSTEM: java.lang.NullPointerException occurred on robocode.ScannedRobotEvent", - "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"p\" is null", - "SYSTEM: java.lang.NullPointerException occurred on robocode.ScannedRobotEvent", - "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"p\" is null", - "SYSTEM: java.lang.NullPointerException occurred on robocode.ScannedRobotEvent", - "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"p\" is null", - "SYSTEM: java.lang.NullPointerException occurred on robocode.ScannedRobotEvent", - "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"p\" is null", - "SYSTEM: java.lang.NullPointerException occurred on robocode.ScannedRobotEvent", - "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"p\" is null", - "SYSTEM: java.lang.NullPointerException occurred on robocode.ScannedRobotEvent", - "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"p\" is null", - "SYSTEM: java.lang.NullPointerException occurred on robocode.ScannedRobotEvent", - "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"p\" is null", - "SYSTEM: java.lang.NullPointerException occurred on robocode.ScannedRobotEvent", - "java.lang.NullPointerException: Cannot invoke \"java.awt.geom.Point2D.getX()\" because \"p\" is null" - ], - "has_log": true, + "elapsed": 3.9, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, "ok": true, - "score": 10656.0, + "score": 6255.0, "scores": [ - 5978.0, - 4678.0 + 3099.0, + 3156.0 ], - "selected": "cw.megas.GhostShell GT" + "selected": "mnt.SurferBot 0.2.5" }, - "completed_at": "2026-09-08T21:31:26Z", - "delta_pct": -24.4, - "id": "624c2e5957e9c806", + "completed_at": "2026-09-12T22:48:49Z", + "confirmation": null, + "delta_pct": null, + "id": "47a1e08efb5ca58c", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "d30d1b3ceb92e6635d372a95dcf3f76a73bdd363", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -53722,191 +115294,100 @@ "width": 800 }, "source_identity": { - "classic_selected": "cw.megas.GhostShell GT", + "classic_selected": "mnt.SurferBot 0.2.5", "division": "roborumble", - "jar": "cw.megas.GhostShell_GT.jar", - "jar_sha256": "f75b19028ba3d181ae70d87a380370cf53e535b49e87f9060069a8591bc5888a", - "key": "roborumble/cw.megas.GhostShell_GT.jar", + "jar": "mnt.SurferBot_0.2.5.jar", + "jar_sha256": "ef04532f1870591c78022863e369cf2af44f688f23969eb1a56a865c162f7d24", + "key": "roborumble/mnt.SurferBot_0.2.5.jar", "kind": "robot" }, - "status": "PASS", + "status": "DISCREPANCY (outcome)", "tank_royale": { - "elapsed": 16.2, - "error_count": 1302, + "bridge_only_signatures": [ + [ + "java.lang.ArrayIndexOutOfBoundsException", + "mnt.utils.WaveGun.onScannedRobot" + ] + ], + "elapsed": 10.2, + "error_count": 2, + "error_signatures": [ + { + "exception": "java.lang.ArrayIndexOutOfBoundsException", + "origin": "mnt.utils.WaveGun.onScannedRobot" + } + ], "errors": [ - "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", - "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", - "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", - "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", - "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", - "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", - "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", - "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", - "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", - "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", - "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", - "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", - "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", - "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", - "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", - "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", - "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", - "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", - "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", - "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", - "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", - "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", - "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", - "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", - "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", - "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", - "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", - "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", - "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", - "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", - "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", - "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", - "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", - "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", - "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", - "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", - "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", - "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", - "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", - "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", - "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", - "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", - "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", - "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", - "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", - "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", - "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", - "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", - "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", - "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", - "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", - "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", - "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", - "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", - "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", - "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", - "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", - "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", - "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", - "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", - "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", - "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", - "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", - "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", - "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", - "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", - "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", - "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", - "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", - "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", - "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", - "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", - "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", - "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", - "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", - "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", - "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", - "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", - "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", - "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", - "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", - "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", - "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", - "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", - "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", - "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", - "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", - "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", - "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", - "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", - "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", - "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", - "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", - "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", - "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", - "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", - "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", - "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", - "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null", - "java.lang.NullPointerException: Cannot read field \"origin\" because \"w\" is null" + "HARNESS: worker produced no result (exit code -1)", + "java.lang.ArrayIndexOutOfBoundsException: Index -1 out of bounds for length 4" ], "has_log": true, - "ok": true, - "score": 8061.0, - "scores": [ - 4548.0, - 3513.0 - ], + "ok": false, + "score": null, + "scores": [], "skipped": null } } ], - "status": "PASS" + "status": "DISCREPANCY (outcome)" }, - "roborumble/cw.megas.Gridd_0.4.jar": { + "roborumble/morbid.MorbidPriest_1.0.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "cw.megas.Gridd 0.4", + "classic_selected": "morbid.MorbidPriest 1.0", "division": "roborumble", - "jar": "cw.megas.Gridd_0.4.jar", - "jar_sha256": "bfafc04f4fe6011bfa749f6895c02e6518cc2acb878f133200cd4a2778653edf", - "key": "roborumble/cw.megas.Gridd_0.4.jar", + "jar": "morbid.MorbidPriest_1.0.jar", + "jar_sha256": "5d3d7e516e50c6a8a31b65867ebc3e0a6ae212d85e8f0cff6b8ed76a843a5af2", + "key": "roborumble/morbid.MorbidPriest_1.0.jar", "kind": "robot" }, - "latest_observation": "b0e92913f32f5e4a", + "latest_observation": "fc177c15b82ca872", "observations": [ { "classic": { - "elapsed": 3.3, + "elapsed": 3.5, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 7366.0, + "score": 8364.0, "scores": [ - 4135.0, - 3231.0 + 4105.0, + 4259.0 ], - "selected": "cw.megas.Gridd 0.4" + "selected": "morbid.MorbidPriest 1.0" }, - "completed_at": "2026-09-08T21:31:46Z", - "delta_pct": 4.7, - "id": "b0e92913f32f5e4a", + "completed_at": "2026-09-12T22:49:09Z", + "confirmation": null, + "delta_pct": 7.4, + "id": "fc177c15b82ca872", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "d30d1b3ceb92e6635d372a95dcf3f76a73bdd363", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -53914,24 +115395,26 @@ "width": 800 }, "source_identity": { - "classic_selected": "cw.megas.Gridd 0.4", + "classic_selected": "morbid.MorbidPriest 1.0", "division": "roborumble", - "jar": "cw.megas.Gridd_0.4.jar", - "jar_sha256": "bfafc04f4fe6011bfa749f6895c02e6518cc2acb878f133200cd4a2778653edf", - "key": "roborumble/cw.megas.Gridd_0.4.jar", + "jar": "morbid.MorbidPriest_1.0.jar", + "jar_sha256": "5d3d7e516e50c6a8a31b65867ebc3e0a6ae212d85e8f0cff6b8ed76a843a5af2", + "key": "roborumble/morbid.MorbidPriest_1.0.jar", "kind": "robot" }, "status": "PASS", "tank_royale": { + "bridge_only_signatures": null, "elapsed": 16.0, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 7712.0, + "score": 8987.0, "scores": [ - 4048.0, - 3664.0 + 5027.0, + 3960.0 ], "skipped": null } @@ -53939,65 +115422,63 @@ ], "status": "PASS" }, - "roborumble/cw.megas.Polar_3.2.jar": { + "roborumble/mrm.MightyMoose_.2.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "cw.megas.Polar 3.2", + "classic_selected": "mrm.MightyMoose .2", "division": "roborumble", - "jar": "cw.megas.Polar_3.2.jar", - "jar_sha256": "5a65f71be6ed605815763385ebd3ed9db00f248a4e7f65ecc75a566fd317665e", - "key": "roborumble/cw.megas.Polar_3.2.jar", + "jar": "mrm.MightyMoose_.2.jar", + "jar_sha256": "e2654d99116488b64c2f250748331472846cdeef6034fee6f86b5bcabe111b1b", + "key": "roborumble/mrm.MightyMoose_.2.jar", "kind": "robot" }, - "latest_observation": "275e5d14496de98c", + "latest_observation": "87529bbdc6c32027", "observations": [ { "classic": { - "elapsed": 3.6, + "elapsed": 2.6, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 7521.0, + "score": 4296.0, "scores": [ - 3441.0, - 4080.0 + 1941.0, + 2355.0 ], - "selected": "cw.megas.Polar 3.2" + "selected": "mrm.MightyMoose .2" }, - "completed_at": "2026-09-08T21:32:18Z", - "delta_pct": 6.3, - "id": "275e5d14496de98c", + "completed_at": "2026-09-12T22:49:28Z", + "confirmation": null, + "delta_pct": 30.2, + "id": "87529bbdc6c32027", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "d30d1b3ceb92e6635d372a95dcf3f76a73bdd363", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -54005,90 +115486,90 @@ "width": 800 }, "source_identity": { - "classic_selected": "cw.megas.Polar 3.2", + "classic_selected": "mrm.MightyMoose .2", "division": "roborumble", - "jar": "cw.megas.Polar_3.2.jar", - "jar_sha256": "5a65f71be6ed605815763385ebd3ed9db00f248a4e7f65ecc75a566fd317665e", - "key": "roborumble/cw.megas.Polar_3.2.jar", + "jar": "mrm.MightyMoose_.2.jar", + "jar_sha256": "e2654d99116488b64c2f250748331472846cdeef6034fee6f86b5bcabe111b1b", + "key": "roborumble/mrm.MightyMoose_.2.jar", "kind": "robot" }, - "status": "PASS", + "status": "DISCREPANCY (score)", "tank_royale": { - "elapsed": 28.2, + "bridge_only_signatures": null, + "elapsed": 16.0, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 7996.0, + "score": 5593.0, "scores": [ - 4154.0, - 3842.0 + 3174.0, + 2419.0 ], "skipped": null } } ], - "status": "PASS" + "status": "score-review" }, - "roborumble/cw.megas.Silhouette_1.1.jar": { + "roborumble/ms.Ares_0.19.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "cw.megas.Silhouette 1.1", + "classic_selected": "ms.Ares 0.19", "division": "roborumble", - "jar": "cw.megas.Silhouette_1.1.jar", - "jar_sha256": "e6971a7232c957673e1db12aeb969835a5f33928ed6ed30d6f0a33144002b2c6", - "key": "roborumble/cw.megas.Silhouette_1.1.jar", + "jar": "ms.Ares_0.19.jar", + "jar_sha256": "29ac270fec16a09695a9ed0022f2d33b07adc7dce3fd11391ea458bb181c26a4", + "key": "roborumble/ms.Ares_0.19.jar", "kind": "robot" }, - "latest_observation": "c619f7cbb9bcea81", + "latest_observation": "d8663236bffd6ec7", "observations": [ { "classic": { - "elapsed": 3.4, + "elapsed": 3.3, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 6360.0, + "score": 5983.0, "scores": [ - 3297.0, - 3063.0 + 2916.0, + 3067.0 ], - "selected": "cw.megas.Silhouette 1.1" + "selected": "ms.Ares 0.19" }, - "completed_at": "2026-09-08T21:32:38Z", - "delta_pct": -3.9, - "id": "c619f7cbb9bcea81", + "completed_at": "2026-09-12T22:49:57Z", + "confirmation": null, + "delta_pct": -7.7, + "id": "d8663236bffd6ec7", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "d30d1b3ceb92e6635d372a95dcf3f76a73bdd363", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -54096,24 +115577,26 @@ "width": 800 }, "source_identity": { - "classic_selected": "cw.megas.Silhouette 1.1", + "classic_selected": "ms.Ares 0.19", "division": "roborumble", - "jar": "cw.megas.Silhouette_1.1.jar", - "jar_sha256": "e6971a7232c957673e1db12aeb969835a5f33928ed6ed30d6f0a33144002b2c6", - "key": "roborumble/cw.megas.Silhouette_1.1.jar", + "jar": "ms.Ares_0.19.jar", + "jar_sha256": "29ac270fec16a09695a9ed0022f2d33b07adc7dce3fd11391ea458bb181c26a4", + "key": "roborumble/ms.Ares_0.19.jar", "kind": "robot" }, "status": "PASS", "tank_royale": { - "elapsed": 16.0, + "bridge_only_signatures": null, + "elapsed": 26.0, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 6113.0, + "score": 5522.0, "scores": [ - 3383.0, - 2730.0 + 3670.0, + 1852.0 ], "skipped": null } @@ -54121,65 +115604,63 @@ ], "status": "PASS" }, - "roborumble/cx.BlestPain_1.41.jar": { + "roborumble/mue.Ascendant_1.2.27.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "cx.BlestPain 1.41", + "classic_selected": "mue.Ascendant 1.2.27", "division": "roborumble", - "jar": "cx.BlestPain_1.41.jar", - "jar_sha256": "6f6b974d5aa3cb4db450ab43a2c0425d55d654cb9b577171fd99c9fe094b08ba", - "key": "roborumble/cx.BlestPain_1.41.jar", + "jar": "mue.Ascendant_1.2.27.jar", + "jar_sha256": "66705bfbd6daa2b1f7470e9e17846a238b752fc3829227ddc7e67612c33117ff", + "key": "roborumble/mue.Ascendant_1.2.27.jar", "kind": "robot" }, - "latest_observation": "33f8afb939371ae3", + "latest_observation": "5707fc085104a700", "observations": [ { "classic": { - "elapsed": 4.0, + "elapsed": 3.4, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 4876.0, + "score": 5483.0, "scores": [ - 2640.0, - 2236.0 + 2571.0, + 2912.0 ], - "selected": "cx.BlestPain 1.41" + "selected": "mue.Ascendant 1.2.27" }, - "completed_at": "2026-09-08T21:33:02Z", - "delta_pct": -5.8, - "id": "33f8afb939371ae3", + "completed_at": "2026-09-12T22:50:19Z", + "confirmation": null, + "delta_pct": 28.0, + "id": "5707fc085104a700", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "d30d1b3ceb92e6635d372a95dcf3f76a73bdd363", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -54187,90 +115668,90 @@ "width": 800 }, "source_identity": { - "classic_selected": "cx.BlestPain 1.41", + "classic_selected": "mue.Ascendant 1.2.27", "division": "roborumble", - "jar": "cx.BlestPain_1.41.jar", - "jar_sha256": "6f6b974d5aa3cb4db450ab43a2c0425d55d654cb9b577171fd99c9fe094b08ba", - "key": "roborumble/cx.BlestPain_1.41.jar", + "jar": "mue.Ascendant_1.2.27.jar", + "jar_sha256": "66705bfbd6daa2b1f7470e9e17846a238b752fc3829227ddc7e67612c33117ff", + "key": "roborumble/mue.Ascendant_1.2.27.jar", "kind": "robot" }, - "status": "PASS", + "status": "DISCREPANCY (score)", "tank_royale": { - "elapsed": 20.0, + "bridge_only_signatures": null, + "elapsed": 18.0, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 4595.0, + "score": 7017.0, "scores": [ - 2456.0, - 2139.0 + 3557.0, + 3460.0 ], "skipped": null } } ], - "status": "PASS" + "status": "score-review" }, - "roborumble/cx.CigaretBH_1.03.jar": { + "roborumble/mue.Hyperion_0.8.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "cx.CigaretBH 1.03", + "classic_selected": "mue.Hyperion 0.8", "division": "roborumble", - "jar": "cx.CigaretBH_1.03.jar", - "jar_sha256": "8c107a759b229f8570dcce96ccedd8404545e7d3c6441a206c64d54a4209d678", - "key": "roborumble/cx.CigaretBH_1.03.jar", + "jar": "mue.Hyperion_0.8.jar", + "jar_sha256": "60efa86eaad475ff5f6216be62d714659c3c69a094019434441302d4efcfff1b", + "key": "roborumble/mue.Hyperion_0.8.jar", "kind": "robot" }, - "latest_observation": "1677b2a1b4827612", + "latest_observation": "46f8b66bc9b65f98", "observations": [ { "classic": { - "elapsed": 13.9, + "elapsed": 3.1, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 4902.0, + "score": 6068.0, "scores": [ - 2419.0, - 2483.0 + 2830.0, + 3238.0 ], - "selected": "cx.CigaretBH 1.03" + "selected": "mue.Hyperion 0.8" }, - "completed_at": "2026-09-08T21:33:44Z", - "delta_pct": -7.3, - "id": "1677b2a1b4827612", + "completed_at": "2026-09-12T22:50:39Z", + "confirmation": null, + "delta_pct": 50.3, + "id": "46f8b66bc9b65f98", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "d30d1b3ceb92e6635d372a95dcf3f76a73bdd363", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -54278,90 +115759,90 @@ "width": 800 }, "source_identity": { - "classic_selected": "cx.CigaretBH 1.03", + "classic_selected": "mue.Hyperion 0.8", "division": "roborumble", - "jar": "cx.CigaretBH_1.03.jar", - "jar_sha256": "8c107a759b229f8570dcce96ccedd8404545e7d3c6441a206c64d54a4209d678", - "key": "roborumble/cx.CigaretBH_1.03.jar", + "jar": "mue.Hyperion_0.8.jar", + "jar_sha256": "60efa86eaad475ff5f6216be62d714659c3c69a094019434441302d4efcfff1b", + "key": "roborumble/mue.Hyperion_0.8.jar", "kind": "robot" }, - "status": "PASS", + "status": "DISCREPANCY (score)", "tank_royale": { - "elapsed": 28.0, + "bridge_only_signatures": null, + "elapsed": 16.0, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 4542.0, + "score": 9122.0, "scores": [ - 2483.0, - 2059.0 + 5265.0, + 3857.0 ], "skipped": null } } ], - "status": "PASS" + "status": "score-review" }, - "roborumble/cx.Lacrimas_1.36.jar": { + "roborumble/muf.CrazyKitten_0.9.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "cx.Lacrimas 1.36", + "classic_selected": "muf.CrazyKitten 0.9", "division": "roborumble", - "jar": "cx.Lacrimas_1.36.jar", - "jar_sha256": "3f188597207790c81255c5b78a09002cc87527166c22b75915d63f1f25111dae", - "key": "roborumble/cx.Lacrimas_1.36.jar", + "jar": "muf.CrazyKitten_0.9.jar", + "jar_sha256": "f9e5f441fc73f2b878b613615632b20eb82b2b03dc54da4f39695300a2a9686b", + "key": "roborumble/muf.CrazyKitten_0.9.jar", "kind": "robot" }, - "latest_observation": "20139227a27029e4", + "latest_observation": "24ebb83f1f83c891", "observations": [ { "classic": { - "elapsed": 3.5, + "elapsed": 2.8, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 4503.0, + "score": 5365.0, "scores": [ - 2030.0, - 2473.0 + 2116.0, + 3249.0 ], - "selected": "cx.Lacrimas 1.36" + "selected": "muf.CrazyKitten 0.9" }, - "completed_at": "2026-09-08T21:34:10Z", - "delta_pct": 3.8, - "id": "20139227a27029e4", + "completed_at": "2026-09-12T22:51:02Z", + "confirmation": null, + "delta_pct": -10.4, + "id": "24ebb83f1f83c891", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "d30d1b3ceb92e6635d372a95dcf3f76a73bdd363", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -54369,24 +115850,26 @@ "width": 800 }, "source_identity": { - "classic_selected": "cx.Lacrimas 1.36", + "classic_selected": "muf.CrazyKitten 0.9", "division": "roborumble", - "jar": "cx.Lacrimas_1.36.jar", - "jar_sha256": "3f188597207790c81255c5b78a09002cc87527166c22b75915d63f1f25111dae", - "key": "roborumble/cx.Lacrimas_1.36.jar", + "jar": "muf.CrazyKitten_0.9.jar", + "jar_sha256": "f9e5f441fc73f2b878b613615632b20eb82b2b03dc54da4f39695300a2a9686b", + "key": "roborumble/muf.CrazyKitten_0.9.jar", "kind": "robot" }, "status": "PASS", "tank_royale": { - "elapsed": 22.0, + "bridge_only_signatures": null, + "elapsed": 20.0, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 4674.0, + "score": 4806.0, "scores": [ - 2642.0, - 2032.0 + 2483.0, + 2323.0 ], "skipped": null } @@ -54394,68 +115877,63 @@ ], "status": "PASS" }, - "roborumble/cx.Princess_1.0.jar": { + "roborumble/mwj.A1176183_1.0.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "cx.Princess 1.0", + "classic_selected": "mwj.A1176183 1.0", "division": "roborumble", - "jar": "cx.Princess_1.0.jar", - "jar_sha256": "8a5137dcb2d3075bf8b4aa5ec609d499a981f1ed6650641a10e3c95cfe2e7cec", - "key": "roborumble/cx.Princess_1.0.jar", + "jar": "mwj.A1176183_1.0.jar", + "jar_sha256": "f8ce952d18336b068f10ebb1eeed74639937a2fedfdcb95467c610542c885415", + "key": "roborumble/mwj.A1176183_1.0.jar", "kind": "robot" }, - "latest_observation": "ee8fec5f1ac10af9", + "latest_observation": "4e51a38a4bc47576", "observations": [ { "classic": { - "elapsed": 9.0, - "error_count": 2, - "errors": [ - "java.io.FileNotFoundException: C:\\Code\\robocode-api-bridge\\compat-test\\work\\rc-robots\\.data\\cx\\Princess.data\\score.dat (Den angivne fil blev ikke fundet)", - "java.io.FileNotFoundException: C:\\Code\\robocode-api-bridge\\compat-test\\work\\rc-robots\\.data\\cx\\Princess.data\\score.dat (Den angivne fil blev ikke fundet)" - ], - "has_log": true, + "elapsed": 3.7, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, "ok": true, - "score": 5862.0, + "score": 8628.0, "scores": [ - 3116.0, - 2746.0 + 4240.0, + 4388.0 ], - "selected": "cx.Princess 1.0" + "selected": "mwj.A1176183 1.0" }, - "completed_at": "2026-09-08T21:37:13Z", - "delta_pct": -9.6, - "id": "ee8fec5f1ac10af9", + "completed_at": "2026-09-12T22:51:30Z", + "confirmation": null, + "delta_pct": -52.5, + "id": "4e51a38a4bc47576", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "d30d1b3ceb92e6635d372a95dcf3f76a73bdd363", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -54463,93 +115941,90 @@ "width": 800 }, "source_identity": { - "classic_selected": "cx.Princess 1.0", + "classic_selected": "mwj.A1176183 1.0", "division": "roborumble", - "jar": "cx.Princess_1.0.jar", - "jar_sha256": "8a5137dcb2d3075bf8b4aa5ec609d499a981f1ed6650641a10e3c95cfe2e7cec", - "key": "roborumble/cx.Princess_1.0.jar", + "jar": "mwj.A1176183_1.0.jar", + "jar_sha256": "f8ce952d18336b068f10ebb1eeed74639937a2fedfdcb95467c610542c885415", + "key": "roborumble/mwj.A1176183_1.0.jar", "kind": "robot" }, - "status": "PASS", + "status": "DISCREPANCY (score)", "tank_royale": { - "elapsed": 20.0, - "error_count": 2, - "errors": [ - "java.io.FileNotFoundException: C:\\Code\\robocode-api-bridge\\compat-test\\work\\tr-bots\\cx.Princess_1.0\\Princess.data\\score.dat (Den angivne fil blev ikke fundet)", - "java.io.FileNotFoundException: C:\\Code\\robocode-api-bridge\\compat-test\\work\\tr-bots\\cx.Princess_1.0-2\\Princess.data\\score.dat (Den angivne fil blev ikke fundet)" - ], - "has_log": true, + "bridge_only_signatures": null, + "elapsed": 24.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, "ok": true, - "score": 5301.0, + "score": 4096.0, "scores": [ - 2866.0, - 2435.0 + 2113.0, + 1983.0 ], "skipped": null } } ], - "status": "PASS" + "status": "score-review" }, - "roborumble/cx.micro.Blur_0.2.jar": { + "roborumble/myl.micro.Avipes_1.00.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "cx.micro.Blur 0.2", + "classic_selected": "myl.micro.Avipes 1.00", "division": "roborumble", - "jar": "cx.micro.Blur_0.2.jar", - "jar_sha256": "a1d62b084d88196ff938d3f189e0f7a84f89e7f034bd21f83a8afb0bc20ba979", - "key": "roborumble/cx.micro.Blur_0.2.jar", + "jar": "myl.micro.Avipes_1.00.jar", + "jar_sha256": "0b745ae90c1cf9b6cd4d280095858bae3b70866acc139975f5ed0bc19a87ae5e", + "key": "roborumble/myl.micro.Avipes_1.00.jar", "kind": "robot" }, - "latest_observation": "cf57283fe7c065c6", + "latest_observation": "032e896324fbf636", "observations": [ { "classic": { - "elapsed": 2.3, + "elapsed": 3.9, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 7918.0, + "score": 4921.0, "scores": [ - 4451.0, - 3467.0 + 2989.0, + 1932.0 ], - "selected": "cx.micro.Blur 0.2" + "selected": "myl.micro.Avipes 1.00" }, - "completed_at": "2026-09-08T21:34:17Z", - "delta_pct": null, - "id": "cf57283fe7c065c6", + "completed_at": "2026-09-12T22:51:58Z", + "confirmation": null, + "delta_pct": -8.0, + "id": "032e896324fbf636", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "d30d1b3ceb92e6635d372a95dcf3f76a73bdd363", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -54557,90 +116032,90 @@ "width": 800 }, "source_identity": { - "classic_selected": "cx.micro.Blur 0.2", + "classic_selected": "myl.micro.Avipes 1.00", "division": "roborumble", - "jar": "cx.micro.Blur_0.2.jar", - "jar_sha256": "a1d62b084d88196ff938d3f189e0f7a84f89e7f034bd21f83a8afb0bc20ba979", - "key": "roborumble/cx.micro.Blur_0.2.jar", + "jar": "myl.micro.Avipes_1.00.jar", + "jar_sha256": "0b745ae90c1cf9b6cd4d280095858bae3b70866acc139975f5ed0bc19a87ae5e", + "key": "roborumble/myl.micro.Avipes_1.00.jar", "kind": "robot" }, - "status": "FAIL (TR)", + "status": "PASS", "tank_royale": { - "elapsed": 4.2, - "error_count": 2, - "errors": [ - "HARNESS: worker produced no result (exit code -1)", - "java.lang.NullPointerException: Cannot invoke \"cx.micro.Blur$Wave.rateHit()\" because \"cx.micro.Blur.closestWave\" is null" + "bridge_only_signatures": null, + "elapsed": 24.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 4527.0, + "scores": [ + 2710.0, + 1817.0 ], - "has_log": true, - "ok": false, - "score": null, - "scores": [], "skipped": null } } ], - "status": "FAIL (TR)" + "status": "PASS" }, - "roborumble/cx.micro.Smoke_0.96.jar": { + "roborumble/myl.micro.NekoNinja_1.30.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "cx.micro.Smoke 0.96", - "division": "roborumble", - "jar": "cx.micro.Smoke_0.96.jar", - "jar_sha256": "b18be3e111d1cfd9ed54c431d010e60368d9bffcbb06e38ac2c9bbf6c8243814", - "key": "roborumble/cx.micro.Smoke_0.96.jar", + "classic_selected": "myl.micro.NekoNinja 1.30", + "division": "roborumble", + "jar": "myl.micro.NekoNinja_1.30.jar", + "jar_sha256": "714d47481bf300a1c83ecda527ba4bdc6c00c48cc7150993dc1bc5fb92b120c0", + "key": "roborumble/myl.micro.NekoNinja_1.30.jar", "kind": "robot" }, - "latest_observation": "d0ce3ae37d563131", + "latest_observation": "9d230e4afbe3b6b4", "observations": [ { "classic": { - "elapsed": 3.4, + "elapsed": 2.9, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 5888.0, + "score": 5044.0, "scores": [ - 2873.0, - 3015.0 + 2655.0, + 2389.0 ], - "selected": "cx.micro.Smoke 0.96" + "selected": "myl.micro.NekoNinja 1.30" }, - "completed_at": "2026-09-08T21:34:41Z", - "delta_pct": -24.1, - "id": "d0ce3ae37d563131", + "completed_at": "2026-09-12T22:52:25Z", + "confirmation": null, + "delta_pct": -9.0, + "id": "9d230e4afbe3b6b4", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "d30d1b3ceb92e6635d372a95dcf3f76a73bdd363", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -54648,24 +116123,26 @@ "width": 800 }, "source_identity": { - "classic_selected": "cx.micro.Smoke 0.96", + "classic_selected": "myl.micro.NekoNinja 1.30", "division": "roborumble", - "jar": "cx.micro.Smoke_0.96.jar", - "jar_sha256": "b18be3e111d1cfd9ed54c431d010e60368d9bffcbb06e38ac2c9bbf6c8243814", - "key": "roborumble/cx.micro.Smoke_0.96.jar", + "jar": "myl.micro.NekoNinja_1.30.jar", + "jar_sha256": "714d47481bf300a1c83ecda527ba4bdc6c00c48cc7150993dc1bc5fb92b120c0", + "key": "roborumble/myl.micro.NekoNinja_1.30.jar", "kind": "robot" }, "status": "PASS", "tank_royale": { - "elapsed": 20.0, + "bridge_only_signatures": null, + "elapsed": 24.0, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 4468.0, + "score": 4588.0, "scores": [ - 2295.0, - 2173.0 + 2502.0, + 2086.0 ], "skipped": null } @@ -54673,65 +116150,63 @@ ], "status": "PASS" }, - "roborumble/cx.micro.Spark_0.6.jar": { + "roborumble/myl.micro.Predator_1.50.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "cx.micro.Spark 0.6", + "classic_selected": "myl.micro.Predator 1.50", "division": "roborumble", - "jar": "cx.micro.Spark_0.6.jar", - "jar_sha256": "dfcbbb2bb08ae6028e68178c3d9f80c0b1d0058ced7ab90bab2cade92f615d18", - "key": "roborumble/cx.micro.Spark_0.6.jar", + "jar": "myl.micro.Predator_1.50.jar", + "jar_sha256": "06511e01c940a7091a5fa9b94a1f584ba09864262cb4976349bc25a7f6d6ce8a", + "key": "roborumble/myl.micro.Predator_1.50.jar", "kind": "robot" }, - "latest_observation": "4a48d9ed154a3163", + "latest_observation": "0b94d58e2efb335f", "observations": [ { "classic": { - "elapsed": 4.2, + "elapsed": 2.7, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 5050.0, + "score": 4874.0, "scores": [ - 2918.0, - 2132.0 + 2563.0, + 2311.0 ], - "selected": "cx.micro.Spark 0.6" + "selected": "myl.micro.Predator 1.50" }, - "completed_at": "2026-09-08T21:35:01Z", - "delta_pct": 159.5, - "id": "4a48d9ed154a3163", + "completed_at": "2026-09-12T22:52:46Z", + "confirmation": null, + "delta_pct": -4.3, + "id": "0b94d58e2efb335f", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "d30d1b3ceb92e6635d372a95dcf3f76a73bdd363", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -54739,90 +116214,90 @@ "width": 800 }, "source_identity": { - "classic_selected": "cx.micro.Spark 0.6", + "classic_selected": "myl.micro.Predator 1.50", "division": "roborumble", - "jar": "cx.micro.Spark_0.6.jar", - "jar_sha256": "dfcbbb2bb08ae6028e68178c3d9f80c0b1d0058ced7ab90bab2cade92f615d18", - "key": "roborumble/cx.micro.Spark_0.6.jar", + "jar": "myl.micro.Predator_1.50.jar", + "jar_sha256": "06511e01c940a7091a5fa9b94a1f584ba09864262cb4976349bc25a7f6d6ce8a", + "key": "roborumble/myl.micro.Predator_1.50.jar", "kind": "robot" }, - "status": "DISCREPANCY (score)", + "status": "PASS", "tank_royale": { - "elapsed": 16.0, + "bridge_only_signatures": null, + "elapsed": 18.0, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 13104.0, + "score": 4662.0, "scores": [ - 6600.0, - 6504.0 + 2836.0, + 1826.0 ], "skipped": null } } ], - "status": "score-review" + "status": "PASS" }, - "roborumble/cx.mini.BlackSwans_0.60.jar": { + "roborumble/myl.micro.Troodon_1.10.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "cx.mini.BlackSwans 0.60", + "classic_selected": "myl.micro.Troodon 1.10", "division": "roborumble", - "jar": "cx.mini.BlackSwans_0.60.jar", - "jar_sha256": "6b80464c7c11ce945f726455d0d9d91190460d7a8f8687115651daff9784159b", - "key": "roborumble/cx.mini.BlackSwans_0.60.jar", + "jar": "myl.micro.Troodon_1.10.jar", + "jar_sha256": "78734fa04f764c9668c41ff1dbee9838863f829a506dbc21b8949f9195b72dbf", + "key": "roborumble/myl.micro.Troodon_1.10.jar", "kind": "robot" }, - "latest_observation": "6b425d3c251fa7bc", + "latest_observation": "7e319cec019dd57c", "observations": [ { "classic": { - "elapsed": 8.6, + "elapsed": 3.0, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 5617.0, + "score": 4359.0, "scores": [ - 3157.0, - 2460.0 + 2168.0, + 2191.0 ], - "selected": "cx.mini.BlackSwans 0.60" + "selected": "myl.micro.Troodon 1.10" }, - "completed_at": "2026-09-08T21:35:32Z", - "delta_pct": -5.1, - "id": "6b425d3c251fa7bc", + "completed_at": "2026-09-12T22:53:10Z", + "confirmation": null, + "delta_pct": -27.6, + "id": "7e319cec019dd57c", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "d30d1b3ceb92e6635d372a95dcf3f76a73bdd363", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -54830,90 +116305,90 @@ "width": 800 }, "source_identity": { - "classic_selected": "cx.mini.BlackSwans 0.60", + "classic_selected": "myl.micro.Troodon 1.10", "division": "roborumble", - "jar": "cx.mini.BlackSwans_0.60.jar", - "jar_sha256": "6b80464c7c11ce945f726455d0d9d91190460d7a8f8687115651daff9784159b", - "key": "roborumble/cx.mini.BlackSwans_0.60.jar", + "jar": "myl.micro.Troodon_1.10.jar", + "jar_sha256": "78734fa04f764c9668c41ff1dbee9838863f829a506dbc21b8949f9195b72dbf", + "key": "roborumble/myl.micro.Troodon_1.10.jar", "kind": "robot" }, - "status": "PASS", + "status": "DISCREPANCY (score)", "tank_royale": { - "elapsed": 22.0, + "bridge_only_signatures": null, + "elapsed": 20.0, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 5331.0, + "score": 3158.0, "scores": [ - 2719.0, - 2612.0 + 1667.0, + 1491.0 ], "skipped": null } } ], - "status": "PASS" + "status": "score-review" }, - "roborumble/cx.mini.Cigaret_1.31.jar": { + "roborumble/myl.nano.Graviton_1.10.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "cx.mini.Cigaret 1.31", + "classic_selected": "myl.nano.Graviton 1.10", "division": "roborumble", - "jar": "cx.mini.Cigaret_1.31.jar", - "jar_sha256": "273c4194d1b9f0687173158276802ff3456ec8343de62e80d2674e0960715612", - "key": "roborumble/cx.mini.Cigaret_1.31.jar", + "jar": "myl.nano.Graviton_1.10.jar", + "jar_sha256": "4c6f85e03f5f67e918674e9ef0b5ec259998422e354c8e95ee33a3347fbcc212", + "key": "roborumble/myl.nano.Graviton_1.10.jar", "kind": "robot" }, - "latest_observation": "8547c53305c88bf5", + "latest_observation": "42f21d05faa46521", "observations": [ { "classic": { - "elapsed": 10.2, + "elapsed": 3.3, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 5220.0, + "score": 3417.0, "scores": [ - 2470.0, - 2750.0 + 1503.0, + 1914.0 ], - "selected": "cx.mini.Cigaret 1.31" + "selected": "myl.nano.Graviton 1.10" }, - "completed_at": "2026-09-08T21:36:06Z", - "delta_pct": -4.7, - "id": "8547c53305c88bf5", + "completed_at": "2026-09-12T22:53:35Z", + "confirmation": null, + "delta_pct": 281.5, + "id": "42f21d05faa46521", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "d30d1b3ceb92e6635d372a95dcf3f76a73bdd363", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -54921,90 +116396,90 @@ "width": 800 }, "source_identity": { - "classic_selected": "cx.mini.Cigaret 1.31", + "classic_selected": "myl.nano.Graviton 1.10", "division": "roborumble", - "jar": "cx.mini.Cigaret_1.31.jar", - "jar_sha256": "273c4194d1b9f0687173158276802ff3456ec8343de62e80d2674e0960715612", - "key": "roborumble/cx.mini.Cigaret_1.31.jar", + "jar": "myl.nano.Graviton_1.10.jar", + "jar_sha256": "4c6f85e03f5f67e918674e9ef0b5ec259998422e354c8e95ee33a3347fbcc212", + "key": "roborumble/myl.nano.Graviton_1.10.jar", "kind": "robot" }, - "status": "PASS", + "status": "DISCREPANCY (score)", "tank_royale": { - "elapsed": 24.0, + "bridge_only_signatures": null, + "elapsed": 22.0, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 4974.0, + "score": 13037.0, "scores": [ - 2909.0, - 2065.0 + 7165.0, + 5872.0 ], "skipped": null } } ], - "status": "PASS" + "status": "score-review" }, - "roborumble/cx.mini.Nimrod_0.55.jar": { + "roborumble/myl.nano.Kakuru_1.20.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "cx.mini.Nimrod 0.55", + "classic_selected": "myl.nano.Kakuru 1.20", "division": "roborumble", - "jar": "cx.mini.Nimrod_0.55.jar", - "jar_sha256": "9ccc75f18f1ea296fefe441150fd552e546989e1e42af4abdc578f297564a321", - "key": "roborumble/cx.mini.Nimrod_0.55.jar", + "jar": "myl.nano.Kakuru_1.20.jar", + "jar_sha256": "053895d398527b04cfdcf527598ca547429566279511b93445e61c7eda72ab30", + "key": "roborumble/myl.nano.Kakuru_1.20.jar", "kind": "robot" }, - "latest_observation": "13e1779cf8e10822", + "latest_observation": "e3aebeeba9256a4e", "observations": [ { "classic": { - "elapsed": 6.0, + "elapsed": 3.2, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 4854.0, + "score": 4633.0, "scores": [ - 2357.0, - 2497.0 + 2610.0, + 2023.0 ], - "selected": "cx.mini.Nimrod 0.55" + "selected": "myl.nano.Kakuru 1.20" }, - "completed_at": "2026-09-08T21:36:29Z", - "delta_pct": 130.2, - "id": "13e1779cf8e10822", + "completed_at": "2026-09-12T22:53:55Z", + "confirmation": null, + "delta_pct": 6.2, + "id": "e3aebeeba9256a4e", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "d30d1b3ceb92e6635d372a95dcf3f76a73bdd363", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -55012,90 +116487,90 @@ "width": 800 }, "source_identity": { - "classic_selected": "cx.mini.Nimrod 0.55", + "classic_selected": "myl.nano.Kakuru 1.20", "division": "roborumble", - "jar": "cx.mini.Nimrod_0.55.jar", - "jar_sha256": "9ccc75f18f1ea296fefe441150fd552e546989e1e42af4abdc578f297564a321", - "key": "roborumble/cx.mini.Nimrod_0.55.jar", + "jar": "myl.nano.Kakuru_1.20.jar", + "jar_sha256": "053895d398527b04cfdcf527598ca547429566279511b93445e61c7eda72ab30", + "key": "roborumble/myl.nano.Kakuru_1.20.jar", "kind": "robot" }, - "status": "DISCREPANCY (score)", + "status": "PASS", "tank_royale": { + "bridge_only_signatures": null, "elapsed": 16.0, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 11172.0, + "score": 4919.0, "scores": [ - 5809.0, - 5363.0 + 2716.0, + 2203.0 ], "skipped": null } } ], - "status": "score-review" + "status": "PASS" }, - "roborumble/cx.nano.Smog_2.6.jar": { + "roborumble/myl.nano.KomoriNinja_1.1.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "cx.nano.Smog 2.6", + "classic_selected": "myl.nano.KomoriNinja 1.1", "division": "roborumble", - "jar": "cx.nano.Smog_2.6.jar", - "jar_sha256": "1bdea7a9d116c385e6d7dcd12014dc80270f619cf2b20046c5d85640aeda4bbf", - "key": "roborumble/cx.nano.Smog_2.6.jar", + "jar": "myl.nano.KomoriNinja_1.1.jar", + "jar_sha256": "d44ca5734824a7f7f7396016c47ed7d474751e775b1be11f1a6c22053db82f1b", + "key": "roborumble/myl.nano.KomoriNinja_1.1.jar", "kind": "robot" }, - "latest_observation": "c37a0d6ebee94fdf", + "latest_observation": "6a75615f456acc97", "observations": [ { "classic": { - "elapsed": 2.4, + "elapsed": 2.5, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 4138.0, + "score": 6461.0, "scores": [ - 1961.0, - 2177.0 + 2840.0, + 3621.0 ], - "selected": "cx.nano.Smog 2.6" + "selected": "myl.nano.KomoriNinja 1.1" }, - "completed_at": "2026-09-08T21:36:43Z", - "delta_pct": -27.5, - "id": "c37a0d6ebee94fdf", + "completed_at": "2026-09-12T22:54:28Z", + "confirmation": null, + "delta_pct": -70.8, + "id": "6a75615f456acc97", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "d30d1b3ceb92e6635d372a95dcf3f76a73bdd363", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -55103,24 +116578,26 @@ "width": 800 }, "source_identity": { - "classic_selected": "cx.nano.Smog 2.6", + "classic_selected": "myl.nano.KomoriNinja 1.1", "division": "roborumble", - "jar": "cx.nano.Smog_2.6.jar", - "jar_sha256": "1bdea7a9d116c385e6d7dcd12014dc80270f619cf2b20046c5d85640aeda4bbf", - "key": "roborumble/cx.nano.Smog_2.6.jar", + "jar": "myl.nano.KomoriNinja_1.1.jar", + "jar_sha256": "d44ca5734824a7f7f7396016c47ed7d474751e775b1be11f1a6c22053db82f1b", + "key": "roborumble/myl.nano.KomoriNinja_1.1.jar", "kind": "robot" }, "status": "DISCREPANCY (score)", "tank_royale": { - "elapsed": 12.0, + "bridge_only_signatures": null, + "elapsed": 30.0, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 2998.0, + "score": 1886.0, "scores": [ - 1829.0, - 1169.0 + 994.0, + 892.0 ], "skipped": null } @@ -55128,65 +116605,63 @@ ], "status": "score-review" }, - "roborumble/cyragia.Bot_1.1.jar": { + "roborumble/mym.EdgeStalker_1.0.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "cyragia.Bot 1.1", + "classic_selected": "mym.EdgeStalker 1.0", "division": "roborumble", - "jar": "cyragia.Bot_1.1.jar", - "jar_sha256": "a361becd83345726307c816da2247744cc4e94ddc2ce03b21ebee6d2957f93dc", - "key": "roborumble/cyragia.Bot_1.1.jar", + "jar": "mym.EdgeStalker_1.0.jar", + "jar_sha256": "3b5ee5c8982f2d8eb32b0d60476a78163b478423dcb6676ff6e4ecbb959cfaa3", + "key": "roborumble/mym.EdgeStalker_1.0.jar", "kind": "robot" }, - "latest_observation": "962c336578cde35f", + "latest_observation": "032038ab1ca0e462", "observations": [ { "classic": { - "elapsed": 2.4, + "elapsed": 3.2, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 9172.0, + "score": 10464.0, "scores": [ - 4633.0, - 4539.0 + 5691.0, + 4773.0 ], - "selected": "cyragia.Bot 1.1" + "selected": "mym.EdgeStalker 1.0" }, - "completed_at": "2026-09-08T21:37:29Z", - "delta_pct": -4.4, - "id": "962c336578cde35f", + "completed_at": "2026-09-12T22:54:36Z", + "confirmation": null, + "delta_pct": null, + "id": "032038ab1ca0e462", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "d30d1b3ceb92e6635d372a95dcf3f76a73bdd363", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -55194,90 +116669,101 @@ "width": 800 }, "source_identity": { - "classic_selected": "cyragia.Bot 1.1", + "classic_selected": "mym.EdgeStalker 1.0", "division": "roborumble", - "jar": "cyragia.Bot_1.1.jar", - "jar_sha256": "a361becd83345726307c816da2247744cc4e94ddc2ce03b21ebee6d2957f93dc", - "key": "roborumble/cyragia.Bot_1.1.jar", + "jar": "mym.EdgeStalker_1.0.jar", + "jar_sha256": "3b5ee5c8982f2d8eb32b0d60476a78163b478423dcb6676ff6e4ecbb959cfaa3", + "key": "roborumble/mym.EdgeStalker_1.0.jar", "kind": "robot" }, - "status": "PASS", + "status": "DISCREPANCY (outcome)", "tank_royale": { - "elapsed": 14.0, - "error_count": 0, - "errors": [], - "has_log": false, - "ok": true, - "score": 8768.0, - "scores": [ - 4547.0, - 4221.0 + "bridge_only_signatures": [ + [ + "java.lang.UnsupportedOperationException", + "mym.EdgeStalker.wallScan" + ] + ], + "elapsed": 4.2, + "error_count": 3, + "error_signatures": [ + { + "exception": "java.lang.UnsupportedOperationException", + "origin": "mym.EdgeStalker.wallScan" + } + ], + "errors": [ + "HARNESS: worker produced no result (exit code -1)", + "java.lang.UnsupportedOperationException: stop(overwrite=true) is unsupported. Contact Robocode Tank Royale author for support", + "java.lang.UnsupportedOperationException: stop(overwrite=true) is unsupported. Contact Robocode Tank Royale author for support" ], + "has_log": true, + "ok": false, + "score": null, + "scores": [], "skipped": null } } ], - "status": "PASS" + "status": "DISCREPANCY (outcome)" }, - "roborumble/da.NewBGank_1.4.jar": { + "roborumble/mz.AdeptBSB_1.03.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "da.NewBGank 1.4", + "classic_selected": "mz.AdeptBSB 1.03", "division": "roborumble", - "jar": "da.NewBGank_1.4.jar", - "jar_sha256": "e47b2ea746b5bd9680b8dd884b82b822857acbd31071bbec0d7b1647c461b194", - "key": "roborumble/da.NewBGank_1.4.jar", + "jar": "mz.AdeptBSB_1.03.jar", + "jar_sha256": "1b99f20dbc7ac14aa09dfcd38c95efdebcfebe16bc80927e277dd8c0a0f326b8", + "key": "roborumble/mz.AdeptBSB_1.03.jar", "kind": "robot" }, - "latest_observation": "a25291b7dea73bfb", + "latest_observation": "25ee22f1da166676", "observations": [ { "classic": { - "elapsed": 2.7, + "elapsed": 2.5, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 6054.0, - "scores": [ - 2818.0, - 3236.0 + "score": 7441.0, + "scores": [ + 4102.0, + 3339.0 ], - "selected": "da.NewBGank 1.4" + "selected": "mz.AdeptBSB 1.03" }, - "completed_at": "2026-09-08T21:37:53Z", - "delta_pct": -33.9, - "id": "a25291b7dea73bfb", + "completed_at": "2026-09-12T22:55:19Z", + "confirmation": null, + "delta_pct": -15.3, + "id": "25ee22f1da166676", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "d30d1b3ceb92e6635d372a95dcf3f76a73bdd363", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -55285,90 +116771,90 @@ "width": 800 }, "source_identity": { - "classic_selected": "da.NewBGank 1.4", + "classic_selected": "mz.AdeptBSB 1.03", "division": "roborumble", - "jar": "da.NewBGank_1.4.jar", - "jar_sha256": "e47b2ea746b5bd9680b8dd884b82b822857acbd31071bbec0d7b1647c461b194", - "key": "roborumble/da.NewBGank_1.4.jar", + "jar": "mz.AdeptBSB_1.03.jar", + "jar_sha256": "1b99f20dbc7ac14aa09dfcd38c95efdebcfebe16bc80927e277dd8c0a0f326b8", + "key": "roborumble/mz.AdeptBSB_1.03.jar", "kind": "robot" }, - "status": "DISCREPANCY (score)", + "status": "PASS", "tank_royale": { + "bridge_only_signatures": null, "elapsed": 20.0, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 4001.0, + "score": 6303.0, "scores": [ - 2324.0, - 1677.0 + 3398.0, + 2905.0 ], "skipped": null } } ], - "status": "score-review" + "status": "PASS" }, - "roborumble/daemons.DizzyA_1.0.jar": { + "roborumble/mz.Adept_2.65.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "daemons.DizzyA 1.0", + "classic_selected": "mz.Adept 2.65", "division": "roborumble", - "jar": "daemons.DizzyA_1.0.jar", - "jar_sha256": "aeba11ca1cd50603c4b74166f04dea30238c77faead6f6830874571bea4091ad", - "key": "roborumble/daemons.DizzyA_1.0.jar", + "jar": "mz.Adept_2.65.jar", + "jar_sha256": "32cd2ab01f017a2b01e28f9e3572f433d72113d06acdd1e00992f35f8ac36a79", + "key": "roborumble/mz.Adept_2.65.jar", "kind": "robot" }, - "latest_observation": "4fb778b08e7b30a5", + "latest_observation": "e3afcb98c1cb92f6", "observations": [ { "classic": { - "elapsed": 3.2, + "elapsed": 2.5, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 12263.0, + "score": 5680.0, "scores": [ - 6121.0, - 6142.0 + 3026.0, + 2654.0 ], - "selected": "daemons.DizzyA 1.0" + "selected": "mz.Adept 2.65" }, - "completed_at": "2026-09-08T21:38:28Z", - "delta_pct": -75.5, - "id": "4fb778b08e7b30a5", + "completed_at": "2026-09-12T22:54:56Z", + "confirmation": null, + "delta_pct": -9.4, + "id": "e3afcb98c1cb92f6", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "d30d1b3ceb92e6635d372a95dcf3f76a73bdd363", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -55376,115 +116862,90 @@ "width": 800 }, "source_identity": { - "classic_selected": "daemons.DizzyA 1.0", + "classic_selected": "mz.Adept 2.65", "division": "roborumble", - "jar": "daemons.DizzyA_1.0.jar", - "jar_sha256": "aeba11ca1cd50603c4b74166f04dea30238c77faead6f6830874571bea4091ad", - "key": "roborumble/daemons.DizzyA_1.0.jar", + "jar": "mz.Adept_2.65.jar", + "jar_sha256": "32cd2ab01f017a2b01e28f9e3572f433d72113d06acdd1e00992f35f8ac36a79", + "key": "roborumble/mz.Adept_2.65.jar", "kind": "robot" }, - "status": "DISCREPANCY (score)", + "status": "PASS", "tank_royale": { - "elapsed": 32.0, + "bridge_only_signatures": null, + "elapsed": 18.0, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 3000.0, + "score": 5145.0, "scores": [ - 1522.0, - 1478.0 + 2824.0, + 2321.0 ], "skipped": null } } ], - "status": "score-review" + "status": "PASS" }, - "roborumble/dam.MogBot_2.9.jar": { + "roborumble/mz.Movement_1.8.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "dam.MogBot 2.9", + "classic_selected": "mz.Movement 1.8", "division": "roborumble", - "jar": "dam.MogBot_2.9.jar", - "jar_sha256": "7afc716ca13e8918c6f19d5d04fb4119a1f8ce825cc44f873e48329233edc646", - "key": "roborumble/dam.MogBot_2.9.jar", + "jar": "mz.Movement_1.8.jar", + "jar_sha256": "63e5e41ced069d0069838a76f026084edb20efb436ae107b0356d413003da059", + "key": "roborumble/mz.Movement_1.8.jar", "kind": "robot" }, - "latest_observation": "d949ac75405a14c5", + "latest_observation": "4f0a6caf21085d4b", "observations": [ { "classic": { - "elapsed": 22.9, - "error_count": 24, - "errors": [ - "java.io.StreamCorruptedException: invalid type code: 00", - "java.io.StreamCorruptedException: invalid type code: BF", - "java.io.StreamCorruptedException: invalid type code: 4C", - "java.io.StreamCorruptedException: invalid type code: 6E", - "java.io.UTFDataFormatException", - "java.io.StreamCorruptedException: invalid type code: 00", - "java.io.StreamCorruptedException: invalid type code: BF", - "java.io.StreamCorruptedException: invalid type code: 80", - "java.io.StreamCorruptedException: invalid handle value: 007E0270", - "java.io.StreamCorruptedException: invalid type code: 00", - "java.io.StreamCorruptedException: invalid type code: 00", - "java.io.InvalidClassException: dam.util.GridPoint; enum descriptor has non-zero serialVersionUID: 4446615568564813939", - "java.io.StreamCorruptedException: invalid type code: 00", - "java.io.StreamCorruptedException: invalid type code: BF", - "java.io.StreamCorruptedException: invalid type code: 4C", - "java.io.StreamCorruptedException: invalid type code: 6E", - "java.io.UTFDataFormatException", - "java.io.StreamCorruptedException: invalid type code: 00", - "java.io.StreamCorruptedException: invalid type code: BF", - "java.io.StreamCorruptedException: invalid type code: 80", - "java.io.StreamCorruptedException: invalid handle value: 007E0270", - "java.io.StreamCorruptedException: invalid type code: 00", - "java.io.StreamCorruptedException: invalid type code: 00", - "java.io.InvalidClassException: dam.util.GridPoint; enum descriptor has non-zero serialVersionUID: 4446615568564813939" - ], - "has_log": true, + "elapsed": 2.5, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, "ok": true, - "score": 6025.0, + "score": 5615.0, "scores": [ - 3381.0, - 2644.0 + 2611.0, + 3004.0 ], - "selected": "dam.MogBot 2.9" + "selected": "mz.Movement 1.8" }, - "completed_at": "2026-09-08T21:39:18Z", - "delta_pct": null, - "id": "d949ac75405a14c5", + "completed_at": "2026-09-12T22:55:40Z", + "confirmation": null, + "delta_pct": -14.7, + "id": "4f0a6caf21085d4b", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "d30d1b3ceb92e6635d372a95dcf3f76a73bdd363", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -55492,91 +116953,90 @@ "width": 800 }, "source_identity": { - "classic_selected": "dam.MogBot 2.9", + "classic_selected": "mz.Movement 1.8", "division": "roborumble", - "jar": "dam.MogBot_2.9.jar", - "jar_sha256": "7afc716ca13e8918c6f19d5d04fb4119a1f8ce825cc44f873e48329233edc646", - "key": "roborumble/dam.MogBot_2.9.jar", + "jar": "mz.Movement_1.8.jar", + "jar_sha256": "63e5e41ced069d0069838a76f026084edb20efb436ae107b0356d413003da059", + "key": "roborumble/mz.Movement_1.8.jar", "kind": "robot" }, - "status": "FAIL (TR)", + "status": "PASS", "tank_royale": { - "elapsed": 6.2, - "error_count": 3, - "errors": [ - "HARNESS: worker produced no result (exit code -1)", - "java.io.EOFException: Unexpected end of ZLIB input stream", - "java.io.EOFException: Unexpected end of ZLIB input stream" + "bridge_only_signatures": null, + "elapsed": 18.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 4787.0, + "scores": [ + 2539.0, + 2248.0 ], - "has_log": true, - "ok": false, - "score": null, - "scores": [], "skipped": null } } ], - "status": "FAIL (TR)" + "status": "PASS" }, - "roborumble/dans.Cinnamon_1.2.jar": { + "roborumble/mz.NanoDeath_2.56.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "dans.Cinnamon 1.2", + "classic_selected": "mz.NanoDeath 2.56", "division": "roborumble", - "jar": "dans.Cinnamon_1.2.jar", - "jar_sha256": "cb352fa2412994d4160c5161124036464a48cc73b1725178a7ee048609c8b7da", - "key": "roborumble/dans.Cinnamon_1.2.jar", + "jar": "mz.NanoDeath_2.56.jar", + "jar_sha256": "932367d197007cea416947bb4c183c5dd10e25e40da2d6d364b818fa6261fbe8", + "key": "roborumble/mz.NanoDeath_2.56.jar", "kind": "robot" }, - "latest_observation": "4396cf2704a52d50", + "latest_observation": "03396c3d89c24579", "observations": [ { "classic": { - "elapsed": 2.9, + "elapsed": 2.2, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 8750.0, + "score": 11058.0, "scores": [ - 4450.0, - 4300.0 + 5284.0, + 5774.0 ], - "selected": "dans.Cinnamon 1.2" + "selected": "mz.NanoDeath 2.56" }, - "completed_at": "2026-09-08T21:39:31Z", - "delta_pct": -51.1, - "id": "4396cf2704a52d50", + "completed_at": "2026-09-12T22:55:53Z", + "confirmation": null, + "delta_pct": -5.1, + "id": "03396c3d89c24579", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "d30d1b3ceb92e6635d372a95dcf3f76a73bdd363", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -55584,90 +117044,90 @@ "width": 800 }, "source_identity": { - "classic_selected": "dans.Cinnamon 1.2", + "classic_selected": "mz.NanoDeath 2.56", "division": "roborumble", - "jar": "dans.Cinnamon_1.2.jar", - "jar_sha256": "cb352fa2412994d4160c5161124036464a48cc73b1725178a7ee048609c8b7da", - "key": "roborumble/dans.Cinnamon_1.2.jar", + "jar": "mz.NanoDeath_2.56.jar", + "jar_sha256": "932367d197007cea416947bb4c183c5dd10e25e40da2d6d364b818fa6261fbe8", + "key": "roborumble/mz.NanoDeath_2.56.jar", "kind": "robot" }, - "status": "DISCREPANCY (score)", + "status": "PASS", "tank_royale": { + "bridge_only_signatures": null, "elapsed": 10.0, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 4281.0, + "score": 10490.0, "scores": [ - 2197.0, - 2084.0 + 5598.0, + 4892.0 ], "skipped": null } } ], - "status": "score-review" + "status": "PASS" }, - "roborumble/darkcanuck.Gaff_1.50.jar": { + "roborumble/mz.NanoGod_2.02.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "darkcanuck.Gaff 1.50", + "classic_selected": "mz.NanoGod 2.02", "division": "roborumble", - "jar": "darkcanuck.Gaff_1.50.jar", - "jar_sha256": "64aeb84310e8951dfd7d3cd0bac948d5276e5da63f1fee4cb33419beca244ba8", - "key": "roborumble/darkcanuck.Gaff_1.50.jar", + "jar": "mz.NanoGod_2.02.jar", + "jar_sha256": "d2cc19a6395dd52f3f11a9a2265568b23bd836c710b1c0eeff7d6262d7e05e8a", + "key": "roborumble/mz.NanoGod_2.02.jar", "kind": "robot" }, - "latest_observation": "970cb17042cd15f3", + "latest_observation": "a6855f8135b53cb0", "observations": [ { "classic": { - "elapsed": 11.6, + "elapsed": 2.3, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 7402.0, + "score": 9667.0, "scores": [ - 4126.0, - 3276.0 + 5285.0, + 4382.0 ], - "selected": "darkcanuck.Gaff 1.50" + "selected": "mz.NanoGod 2.02" }, - "completed_at": "2026-09-08T21:39:48Z", - "delta_pct": null, - "id": "970cb17042cd15f3", + "completed_at": "2026-09-12T22:56:09Z", + "confirmation": null, + "delta_pct": -2.6, + "id": "a6855f8135b53cb0", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "d30d1b3ceb92e6635d372a95dcf3f76a73bdd363", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -55675,91 +117135,90 @@ "width": 800 }, "source_identity": { - "classic_selected": "darkcanuck.Gaff 1.50", + "classic_selected": "mz.NanoGod 2.02", "division": "roborumble", - "jar": "darkcanuck.Gaff_1.50.jar", - "jar_sha256": "64aeb84310e8951dfd7d3cd0bac948d5276e5da63f1fee4cb33419beca244ba8", - "key": "roborumble/darkcanuck.Gaff_1.50.jar", + "jar": "mz.NanoGod_2.02.jar", + "jar_sha256": "d2cc19a6395dd52f3f11a9a2265568b23bd836c710b1c0eeff7d6262d7e05e8a", + "key": "roborumble/mz.NanoGod_2.02.jar", "kind": "robot" }, - "status": "FAIL (TR)", + "status": "PASS", "tank_royale": { - "elapsed": 4.2, - "error_count": 3, - "errors": [ - "HARNESS: worker produced no result (exit code -1)", - "IOException trying to read: java.io.FileNotFoundException: C:\\Code\\robocode-api-bridge\\compat-test\\work\\tr-bots\\darkcanuck.Gaff_1.50\\Gaff.data\\Gaff.properties (Den angivne fil blev ikke fundet)", - "IOException trying to read: java.io.FileNotFoundException: C:\\Code\\robocode-api-bridge\\compat-test\\work\\tr-bots\\darkcanuck.Gaff_1.50-2\\Gaff.data\\Gaff.properties (Den angivne fil blev ikke fundet)" + "bridge_only_signatures": null, + "elapsed": 14.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 9411.0, + "scores": [ + 4991.0, + 4420.0 ], - "has_log": true, - "ok": false, - "score": null, - "scores": [], "skipped": null } } ], - "status": "FAIL (TR)" + "status": "PASS" }, - "roborumble/darkcanuck.Holden_1.13a.jar": { + "roborumble/nammyung.ModelT_0.23.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "darkcanuck.Holden 1.13a", + "classic_selected": "nammyung.ModelT 0.23", "division": "roborumble", - "jar": "darkcanuck.Holden_1.13a.jar", - "jar_sha256": "45996fda61b8ca3d0b807d791c79d2bd4dbff3043083bc99041d43ec01c40625", - "key": "roborumble/darkcanuck.Holden_1.13a.jar", + "jar": "nammyung.ModelT_0.23.jar", + "jar_sha256": "256c7541c76e78adec4a300e8c3c0934dd42fdd681ea75bc79922efb57011bb8", + "key": "roborumble/nammyung.ModelT_0.23.jar", "kind": "robot" }, - "latest_observation": "3e764de13ff9996b", + "latest_observation": "4c8a112e7dc35bd7", "observations": [ { "classic": { - "elapsed": 17.8, + "elapsed": 4.2, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 5920.0, + "score": 7742.0, "scores": [ - 3086.0, - 2834.0 + 3871.0, + 3871.0 ], - "selected": "darkcanuck.Holden 1.13a" + "selected": "nammyung.ModelT 0.23" }, - "completed_at": "2026-09-08T21:40:10Z", - "delta_pct": null, - "id": "3e764de13ff9996b", + "completed_at": "2026-09-12T22:56:40Z", + "confirmation": null, + "delta_pct": -28.8, + "id": "4c8a112e7dc35bd7", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "d30d1b3ceb92e6635d372a95dcf3f76a73bdd363", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -55767,91 +117226,90 @@ "width": 800 }, "source_identity": { - "classic_selected": "darkcanuck.Holden 1.13a", + "classic_selected": "nammyung.ModelT 0.23", "division": "roborumble", - "jar": "darkcanuck.Holden_1.13a.jar", - "jar_sha256": "45996fda61b8ca3d0b807d791c79d2bd4dbff3043083bc99041d43ec01c40625", - "key": "roborumble/darkcanuck.Holden_1.13a.jar", + "jar": "nammyung.ModelT_0.23.jar", + "jar_sha256": "256c7541c76e78adec4a300e8c3c0934dd42fdd681ea75bc79922efb57011bb8", + "key": "roborumble/nammyung.ModelT_0.23.jar", "kind": "robot" }, - "status": "FAIL (TR)", + "status": "DISCREPANCY (score)", "tank_royale": { - "elapsed": 4.2, - "error_count": 3, - "errors": [ - "HARNESS: worker produced no result (exit code -1)", - "IOException trying to read: java.io.FileNotFoundException: C:\\Code\\robocode-api-bridge\\compat-test\\work\\tr-bots\\darkcanuck.Holden_1.13a\\Holden.data\\Holden.properties (Den angivne fil blev ikke fundet)", - "IOException trying to read: java.io.FileNotFoundException: C:\\Code\\robocode-api-bridge\\compat-test\\work\\tr-bots\\darkcanuck.Holden_1.13a-2\\Holden.data\\Holden.properties (Den angivne fil blev ikke fundet)" + "bridge_only_signatures": null, + "elapsed": 26.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 5516.0, + "scores": [ + 3280.0, + 2236.0 ], - "has_log": true, - "ok": false, - "score": null, - "scores": [], "skipped": null } } ], - "status": "FAIL (TR)" + "status": "score-review" }, - "roborumble/darkcanuck.Pris_0.92.jar": { + "roborumble/nan.Ihivatar_Mk_1_1.0.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "darkcanuck.Pris 0.92", + "classic_selected": "nan.Ihivatar_Mk_1 1.0", "division": "roborumble", - "jar": "darkcanuck.Pris_0.92.jar", - "jar_sha256": "d545a4a58eff55fc4c24ea47ed12143c7208104ff223940017632c2b8742fdb9", - "key": "roborumble/darkcanuck.Pris_0.92.jar", + "jar": "nan.Ihivatar_Mk_1_1.0.jar", + "jar_sha256": "39e4a8100d3449e2887c11d3bfc5f49b1f17b8b1db639d5ff3b3525cf175bfa2", + "key": "roborumble/nan.Ihivatar_Mk_1_1.0.jar", "kind": "robot" }, - "latest_observation": "a1c846f8e60831ac", + "latest_observation": "eb5fed405cab9789", "observations": [ { "classic": { - "elapsed": 14.6, + "elapsed": 2.6, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 5105.0, + "score": 4695.0, "scores": [ - 2805.0, - 2300.0 + 1925.0, + 2770.0 ], - "selected": "darkcanuck.Pris 0.92" + "selected": "nan.Ihivatar_Mk_1 1.0" }, - "completed_at": "2026-09-08T21:40:29Z", - "delta_pct": null, - "id": "a1c846f8e60831ac", + "completed_at": "2026-09-12T22:57:30Z", + "confirmation": null, + "delta_pct": -4.9, + "id": "eb5fed405cab9789", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" + }, + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "eb9dd703d38041effb1c16d683502c797f9f95eb", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -55859,91 +117317,90 @@ "width": 800 }, "source_identity": { - "classic_selected": "darkcanuck.Pris 0.92", + "classic_selected": "nan.Ihivatar_Mk_1 1.0", "division": "roborumble", - "jar": "darkcanuck.Pris_0.92.jar", - "jar_sha256": "d545a4a58eff55fc4c24ea47ed12143c7208104ff223940017632c2b8742fdb9", - "key": "roborumble/darkcanuck.Pris_0.92.jar", + "jar": "nan.Ihivatar_Mk_1_1.0.jar", + "jar_sha256": "39e4a8100d3449e2887c11d3bfc5f49b1f17b8b1db639d5ff3b3525cf175bfa2", + "key": "roborumble/nan.Ihivatar_Mk_1_1.0.jar", "kind": "robot" }, - "status": "FAIL (TR)", + "status": "PASS", "tank_royale": { - "elapsed": 4.2, - "error_count": 3, - "errors": [ - "HARNESS: worker produced no result (exit code -1)", - "IOException trying to read: java.io.FileNotFoundException: C:\\Code\\robocode-api-bridge\\compat-test\\work\\tr-bots\\darkcanuck.Pris_0.92\\Pris.data\\Pris.properties (Den angivne fil blev ikke fundet)", - "IOException trying to read: java.io.FileNotFoundException: C:\\Code\\robocode-api-bridge\\compat-test\\work\\tr-bots\\darkcanuck.Pris_0.92-2\\Pris.data\\Pris.properties (Den angivne fil blev ikke fundet)" + "bridge_only_signatures": null, + "elapsed": 18.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 4464.0, + "scores": [ + 2668.0, + 1796.0 ], - "has_log": true, - "ok": false, - "score": null, - "scores": [], "skipped": null } } ], - "status": "FAIL (TR)" + "status": "PASS" }, - "roborumble/davidalves.Firebird_0.25.jar": { + "roborumble/nanoskank.NanoSkank_1.0.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "davidalves.Firebird 0.25", + "classic_selected": "nanoskank.NanoSkank 1.0", "division": "roborumble", - "jar": "davidalves.Firebird_0.25.jar", - "jar_sha256": "ecf5e584ad4d70023baacc9bd4b2ce6c65520675c91f542e21951e20be1243c9", - "key": "roborumble/davidalves.Firebird_0.25.jar", + "jar": "nanoskank.NanoSkank_1.0.jar", + "jar_sha256": "ff25e7106afa24ddb8aa3734df633aee53d3477a9b85f5af7a55059eed0f4867", + "key": "roborumble/nanoskank.NanoSkank_1.0.jar", "kind": "robot" }, - "latest_observation": "fae39438b7bb4d8a", + "latest_observation": "7e4a1ed5b2f0f40e", "observations": [ { "classic": { - "elapsed": 11.5, + "elapsed": 2.4, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 5111.0, + "score": 4898.0, "scores": [ - 2614.0, - 2497.0 + 1888.0, + 3010.0 ], - "selected": "davidalves.Firebird 0.25" + "selected": "nanoskank.NanoSkank 1.0" }, - "completed_at": "2026-09-08T21:41:01Z", - "delta_pct": 16.1, - "id": "fae39438b7bb4d8a", + "completed_at": "2026-09-12T22:57:49Z", + "confirmation": null, + "delta_pct": -5.6, + "id": "7e4a1ed5b2f0f40e", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "eb9dd703d38041effb1c16d683502c797f9f95eb", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -55951,24 +117408,26 @@ "width": 800 }, "source_identity": { - "classic_selected": "davidalves.Firebird 0.25", + "classic_selected": "nanoskank.NanoSkank 1.0", "division": "roborumble", - "jar": "davidalves.Firebird_0.25.jar", - "jar_sha256": "ecf5e584ad4d70023baacc9bd4b2ce6c65520675c91f542e21951e20be1243c9", - "key": "roborumble/davidalves.Firebird_0.25.jar", + "jar": "nanoskank.NanoSkank_1.0.jar", + "jar_sha256": "ff25e7106afa24ddb8aa3734df633aee53d3477a9b85f5af7a55059eed0f4867", + "key": "roborumble/nanoskank.NanoSkank_1.0.jar", "kind": "robot" }, "status": "PASS", "tank_royale": { - "elapsed": 20.1, + "bridge_only_signatures": null, + "elapsed": 16.0, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 5933.0, + "score": 4624.0, "scores": [ - 3115.0, - 2818.0 + 2898.0, + 1726.0 ], "skipped": null } @@ -55976,65 +117435,63 @@ ], "status": "PASS" }, - "roborumble/davidalves.PhoenixOS_1.1.jar": { + "roborumble/nat.BlackHole_2.0gamma.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "davidalves.PhoenixOS 1.1", + "classic_selected": "nat.BlackHole 2.0gamma", "division": "roborumble", - "jar": "davidalves.PhoenixOS_1.1.jar", - "jar_sha256": "fb4b5b7b628d818780a81818b30de9ae2cf10f54e66f6fbe6111dbb62b38a4c8", - "key": "roborumble/davidalves.PhoenixOS_1.1.jar", + "jar": "nat.BlackHole_2.0gamma.jar", + "jar_sha256": "beb0c6b240ff14085f2c2689879eaf962f59e4842cda14ccb2f4905901065460", + "key": "roborumble/nat.BlackHole_2.0gamma.jar", "kind": "robot" }, - "latest_observation": "8f13036b4836dcbf", + "latest_observation": "fdc28b7d03672f1d", "observations": [ { "classic": { - "elapsed": 3.9, + "elapsed": 4.1, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 4825.0, + "score": 4918.0, "scores": [ - 2716.0, - 2109.0 + 2454.0, + 2464.0 ], - "selected": "davidalves.PhoenixOS 1.1" + "selected": "nat.BlackHole 2.0gamma" }, - "completed_at": "2026-09-08T21:43:17Z", - "delta_pct": null, - "id": "8f13036b4836dcbf", + "completed_at": "2026-09-12T22:58:19Z", + "confirmation": null, + "delta_pct": -0.5, + "id": "fdc28b7d03672f1d", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "eb9dd703d38041effb1c16d683502c797f9f95eb", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -56042,91 +117499,90 @@ "width": 800 }, "source_identity": { - "classic_selected": "davidalves.PhoenixOS 1.1", + "classic_selected": "nat.BlackHole 2.0gamma", "division": "roborumble", - "jar": "davidalves.PhoenixOS_1.1.jar", - "jar_sha256": "fb4b5b7b628d818780a81818b30de9ae2cf10f54e66f6fbe6111dbb62b38a4c8", - "key": "roborumble/davidalves.PhoenixOS_1.1.jar", + "jar": "nat.BlackHole_2.0gamma.jar", + "jar_sha256": "beb0c6b240ff14085f2c2689879eaf962f59e4842cda14ccb2f4905901065460", + "key": "roborumble/nat.BlackHole_2.0gamma.jar", "kind": "robot" }, - "status": "FAIL (TR)", + "status": "PASS", "tank_royale": { - "elapsed": 4.2, - "error_count": 3, - "errors": [ - "HARNESS: worker produced no result (exit code -1)", - "java.lang.NullPointerException: Cannot invoke \"davidalves.net.gun.GuessFactorGun.miss()\" because \"gun\" is null", - "java.lang.NullPointerException: Cannot invoke \"davidalves.net.gun.GuessFactorGun.miss()\" because \"gun\" is null" + "bridge_only_signatures": null, + "elapsed": 26.0, + "error_count": 0, + "error_signatures": [], + "errors": [], + "has_log": false, + "ok": true, + "score": 4893.0, + "scores": [ + 2746.0, + 2147.0 ], - "has_log": true, - "ok": false, - "score": null, - "scores": [], "skipped": null } } ], - "status": "FAIL (TR)" + "status": "PASS" }, - "roborumble/davidalves.Phoenix_1.02.jar": { + "roborumble/nat.Hikari_dev0001.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "davidalves.Phoenix 1.02", + "classic_selected": "nat.Hikari dev0001", "division": "roborumble", - "jar": "davidalves.Phoenix_1.02.jar", - "jar_sha256": "89b46a3c5cd14c05e6ec5f59ab189852178cd2d774313ac2e0a2b3971ec0fb37", - "key": "roborumble/davidalves.Phoenix_1.02.jar", + "jar": "nat.Hikari_dev0001.jar", + "jar_sha256": "7de4b6596b0c31f08a09531fab2e87dd864dac978a25228b0ebba7d7e083d44e", + "key": "roborumble/nat.Hikari_dev0001.jar", "kind": "robot" }, - "latest_observation": "8abd22893c0c806b", + "latest_observation": "b8ce5e69e7e53f66", "observations": [ { "classic": { - "elapsed": 6.9, + "elapsed": 4.5, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 4975.0, + "score": 5306.0, "scores": [ - 2556.0, - 2419.0 + 3268.0, + 2038.0 ], - "selected": "davidalves.Phoenix 1.02" + "selected": "nat.Hikari dev0001" }, - "completed_at": "2026-09-08T21:43:08Z", - "delta_pct": 11.5, - "id": "8abd22893c0c806b", + "completed_at": "2026-09-12T22:58:50Z", + "confirmation": null, + "delta_pct": -44.9, + "id": "b8ce5e69e7e53f66", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "eb9dd703d38041effb1c16d683502c797f9f95eb", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -56134,90 +117590,90 @@ "width": 800 }, "source_identity": { - "classic_selected": "davidalves.Phoenix 1.02", + "classic_selected": "nat.Hikari dev0001", "division": "roborumble", - "jar": "davidalves.Phoenix_1.02.jar", - "jar_sha256": "89b46a3c5cd14c05e6ec5f59ab189852178cd2d774313ac2e0a2b3971ec0fb37", - "key": "roborumble/davidalves.Phoenix_1.02.jar", + "jar": "nat.Hikari_dev0001.jar", + "jar_sha256": "7de4b6596b0c31f08a09531fab2e87dd864dac978a25228b0ebba7d7e083d44e", + "key": "roborumble/nat.Hikari_dev0001.jar", "kind": "robot" }, - "status": "PASS", + "status": "DISCREPANCY (score)", "tank_royale": { - "elapsed": 20.0, + "bridge_only_signatures": null, + "elapsed": 26.0, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 5546.0, + "score": 2925.0, "scores": [ - 3453.0, - 2093.0 + 1699.0, + 1226.0 ], "skipped": null } } ], - "status": "PASS" + "status": "score-review" }, - "roborumble/davidalves.net.DuelistMicroMkII_1.1.jar": { + "roborumble/nat.Samekh_0.4.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "davidalves.net.DuelistMicroMkII 1.1", + "classic_selected": "nat.Samekh 0.4", "division": "roborumble", - "jar": "davidalves.net.DuelistMicroMkII_1.1.jar", - "jar_sha256": "0d3e784acde7d8156090280241668a002f890ee6d5d7fe6dadc971787f67b15e", - "key": "roborumble/davidalves.net.DuelistMicroMkII_1.1.jar", + "jar": "nat.Samekh_0.4.jar", + "jar_sha256": "eb83caeea9b7523193c003769787dc71bcb4fa524ab644d6a99ae3098d086cee", + "key": "roborumble/nat.Samekh_0.4.jar", "kind": "robot" }, - "latest_observation": "34cf1f962dcb1bcd", + "latest_observation": "bee07aa4157f7d5c", "observations": [ { "classic": { - "elapsed": 3.1, + "elapsed": 4.4, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 5188.0, + "score": 4673.0, "scores": [ - 2539.0, - 2649.0 + 2815.0, + 1858.0 ], - "selected": "davidalves.net.DuelistMicroMkII 1.1" + "selected": "nat.Samekh 0.4" }, - "completed_at": "2026-09-08T21:41:58Z", - "delta_pct": 138.5, - "id": "34cf1f962dcb1bcd", + "completed_at": "2026-09-12T23:00:40Z", + "confirmation": null, + "delta_pct": -3.9, + "id": "bee07aa4157f7d5c", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "eb9dd703d38041effb1c16d683502c797f9f95eb", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -56225,90 +117681,90 @@ "width": 800 }, "source_identity": { - "classic_selected": "davidalves.net.DuelistMicroMkII 1.1", + "classic_selected": "nat.Samekh 0.4", "division": "roborumble", - "jar": "davidalves.net.DuelistMicroMkII_1.1.jar", - "jar_sha256": "0d3e784acde7d8156090280241668a002f890ee6d5d7fe6dadc971787f67b15e", - "key": "roborumble/davidalves.net.DuelistMicroMkII_1.1.jar", + "jar": "nat.Samekh_0.4.jar", + "jar_sha256": "eb83caeea9b7523193c003769787dc71bcb4fa524ab644d6a99ae3098d086cee", + "key": "roborumble/nat.Samekh_0.4.jar", "kind": "robot" }, - "status": "DISCREPANCY (score)", + "status": "PASS", "tank_royale": { - "elapsed": 14.0, + "bridge_only_signatures": null, + "elapsed": 26.0, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 12373.0, + "score": 4492.0, "scores": [ - 6464.0, - 5909.0 + 2692.0, + 1800.0 ], "skipped": null } } ], - "status": "score-review" + "status": "PASS" }, - "roborumble/davidalves.net.DuelistMicro_1.22.jar": { + "roborumble/nat.micro.Reepicheep_0.1a.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "davidalves.net.DuelistMicro 1.22", + "classic_selected": "nat.micro.Reepicheep 0.1a", "division": "roborumble", - "jar": "davidalves.net.DuelistMicro_1.22.jar", - "jar_sha256": "e51b32ab504ef17c0bcd47bb7953ccdd07f7e050b0fa1a3478e63281eaa0fe2a", - "key": "roborumble/davidalves.net.DuelistMicro_1.22.jar", + "jar": "nat.micro.Reepicheep_0.1a.jar", + "jar_sha256": "d9c178a796a2505cf20eedc476fce5eabfd6bdeda5b776f40e623d3800307871", + "key": "roborumble/nat.micro.Reepicheep_0.1a.jar", "kind": "robot" }, - "latest_observation": "4d34a6e0b2152b18", + "latest_observation": "6c7f7a58d66f1262", "observations": [ { "classic": { - "elapsed": 3.2, + "elapsed": 2.4, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 5170.0, + "score": 7374.0, "scores": [ - 2389.0, - 2781.0 + 3655.0, + 3719.0 ], - "selected": "davidalves.net.DuelistMicro 1.22" + "selected": "nat.micro.Reepicheep 0.1a" }, - "completed_at": "2026-09-08T21:41:40Z", - "delta_pct": 69.6, - "id": "4d34a6e0b2152b18", + "completed_at": "2026-09-12T22:59:07Z", + "confirmation": null, + "delta_pct": -15.8, + "id": "6c7f7a58d66f1262", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "eb9dd703d38041effb1c16d683502c797f9f95eb", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -56316,90 +117772,90 @@ "width": 800 }, "source_identity": { - "classic_selected": "davidalves.net.DuelistMicro 1.22", + "classic_selected": "nat.micro.Reepicheep 0.1a", "division": "roborumble", - "jar": "davidalves.net.DuelistMicro_1.22.jar", - "jar_sha256": "e51b32ab504ef17c0bcd47bb7953ccdd07f7e050b0fa1a3478e63281eaa0fe2a", - "key": "roborumble/davidalves.net.DuelistMicro_1.22.jar", + "jar": "nat.micro.Reepicheep_0.1a.jar", + "jar_sha256": "d9c178a796a2505cf20eedc476fce5eabfd6bdeda5b776f40e623d3800307871", + "key": "roborumble/nat.micro.Reepicheep_0.1a.jar", "kind": "robot" }, - "status": "DISCREPANCY (score)", + "status": "PASS", "tank_royale": { - "elapsed": 12.0, + "bridge_only_signatures": null, + "elapsed": 14.0, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 8770.0, + "score": 6210.0, "scores": [ - 4535.0, - 4235.0 + 3879.0, + 2331.0 ], "skipped": null } } ], - "status": "score-review" + "status": "PASS" }, - "roborumble/davidalves.net.DuelistMini_1.1.jar": { + "roborumble/nat.nano.OcnirpPM_1.0.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "davidalves.net.DuelistMini 1.1", + "classic_selected": "nat.nano.OcnirpPM 1.0", "division": "roborumble", - "jar": "davidalves.net.DuelistMini_1.1.jar", - "jar_sha256": "9b2ccfee8ff26f622417b82fbe3634e7ff0b3c6693e5fcdd0f534f9a071d86b5", - "key": "roborumble/davidalves.net.DuelistMini_1.1.jar", + "jar": "nat.nano.OcnirpPM_1.0.jar", + "jar_sha256": "b884a1df0a5f1928a52a2c44d64f06cb9311a52da8d878a5a50c4d9f0c974215", + "key": "roborumble/nat.nano.OcnirpPM_1.0.jar", "kind": "robot" }, - "latest_observation": "6fb819cdb10fc868", + "latest_observation": "90c0cc386bc2e573", "observations": [ { "classic": { - "elapsed": 3.4, + "elapsed": 3.0, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 4765.0, + "score": 4464.0, "scores": [ - 2860.0, - 1905.0 + 1956.0, + 2508.0 ], - "selected": "davidalves.net.DuelistMini 1.1" + "selected": "nat.nano.OcnirpPM 1.0" }, - "completed_at": "2026-09-08T21:42:20Z", - "delta_pct": -10.0, - "id": "6fb819cdb10fc868", + "completed_at": "2026-09-12T22:59:47Z", + "confirmation": null, + "delta_pct": -2.9, + "id": "90c0cc386bc2e573", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "eb9dd703d38041effb1c16d683502c797f9f95eb", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -56407,24 +117863,26 @@ "width": 800 }, "source_identity": { - "classic_selected": "davidalves.net.DuelistMini 1.1", + "classic_selected": "nat.nano.OcnirpPM 1.0", "division": "roborumble", - "jar": "davidalves.net.DuelistMini_1.1.jar", - "jar_sha256": "9b2ccfee8ff26f622417b82fbe3634e7ff0b3c6693e5fcdd0f534f9a071d86b5", - "key": "roborumble/davidalves.net.DuelistMini_1.1.jar", + "jar": "nat.nano.OcnirpPM_1.0.jar", + "jar_sha256": "b884a1df0a5f1928a52a2c44d64f06cb9311a52da8d878a5a50c4d9f0c974215", + "key": "roborumble/nat.nano.OcnirpPM_1.0.jar", "kind": "robot" }, "status": "PASS", "tank_royale": { + "bridge_only_signatures": null, "elapsed": 18.0, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 4290.0, + "score": 4334.0, "scores": [ - 2273.0, - 2017.0 + 2287.0, + 2047.0 ], "skipped": null } @@ -56432,65 +117890,63 @@ ], "status": "PASS" }, - "roborumble/davidalves.net.DuelistNano_1.0.jar": { + "roborumble/nat.nano.OcnirpSNG_1.0b.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "davidalves.net.DuelistNano 1.0", + "classic_selected": "nat.nano.OcnirpSNG 1.0b", "division": "roborumble", - "jar": "davidalves.net.DuelistNano_1.0.jar", - "jar_sha256": "024b50bf85f17fa136ca87ba615701dd46473d8ef299c49794001271a9aa848e", - "key": "roborumble/davidalves.net.DuelistNano_1.0.jar", + "jar": "nat.nano.OcnirpSNG_1.0b.jar", + "jar_sha256": "4d6a5c5544ca504c660e68918464f33a9a05b069e036d6afadc493daf4221f52", + "key": "roborumble/nat.nano.OcnirpSNG_1.0b.jar", "kind": "robot" }, - "latest_observation": "eeb33d1a7dbabc53", + "latest_observation": "22d06f5de04df3f6", "observations": [ { "classic": { - "elapsed": 2.7, + "elapsed": 3.6, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 4314.0, + "score": 4941.0, "scores": [ - 2288.0, - 2026.0 + 2073.0, + 2868.0 ], - "selected": "davidalves.net.DuelistNano 1.0" + "selected": "nat.nano.OcnirpSNG 1.0b" }, - "completed_at": "2026-09-08T21:42:41Z", - "delta_pct": 4.2, - "id": "eeb33d1a7dbabc53", + "completed_at": "2026-09-12T23:00:09Z", + "confirmation": null, + "delta_pct": -4.8, + "id": "22d06f5de04df3f6", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "eb9dd703d38041effb1c16d683502c797f9f95eb", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -56498,24 +117954,26 @@ "width": 800 }, "source_identity": { - "classic_selected": "davidalves.net.DuelistNano 1.0", + "classic_selected": "nat.nano.OcnirpSNG 1.0b", "division": "roborumble", - "jar": "davidalves.net.DuelistNano_1.0.jar", - "jar_sha256": "024b50bf85f17fa136ca87ba615701dd46473d8ef299c49794001271a9aa848e", - "key": "roborumble/davidalves.net.DuelistNano_1.0.jar", + "jar": "nat.nano.OcnirpSNG_1.0b.jar", + "jar_sha256": "4d6a5c5544ca504c660e68918464f33a9a05b069e036d6afadc493daf4221f52", + "key": "roborumble/nat.nano.OcnirpSNG_1.0b.jar", "kind": "robot" }, "status": "PASS", "tank_royale": { + "bridge_only_signatures": null, "elapsed": 18.0, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 4495.0, + "score": 4703.0, "scores": [ - 2293.0, - 2202.0 + 2639.0, + 2064.0 ], "skipped": null } @@ -56523,65 +117981,63 @@ ], "status": "PASS" }, - "roborumble/davidalves.net.Duelist_0.1.6src.jar": { + "roborumble/nat.nano.Ocnirp_1.73.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "davidalves.net.Duelist 0.1.6src", + "classic_selected": "nat.nano.Ocnirp 1.73", "division": "roborumble", - "jar": "davidalves.net.Duelist_0.1.6src.jar", - "jar_sha256": "85c0efdc1a1c9e91b1d35ab906e794c255165f961ce6ad5271a564686ae623ae", - "key": "roborumble/davidalves.net.Duelist_0.1.6src.jar", + "jar": "nat.nano.Ocnirp_1.73.jar", + "jar_sha256": "c77d88209563972389d374f4d927380ac026da76db0b8129bf9458bbb542ba26", + "key": "roborumble/nat.nano.Ocnirp_1.73.jar", "kind": "robot" }, - "latest_observation": "da9c6f4187b20af6", + "latest_observation": "20ec467791831d64", "observations": [ { "classic": { - "elapsed": 3.8, + "elapsed": 2.9, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 4870.0, + "score": 4705.0, "scores": [ - 2256.0, - 2614.0 + 2729.0, + 1976.0 ], - "selected": "davidalves.net.Duelist 0.1.6src" + "selected": "nat.nano.Ocnirp 1.73" }, - "completed_at": "2026-09-08T21:41:25Z", - "delta_pct": 0.1, - "id": "da9c6f4187b20af6", + "completed_at": "2026-09-12T22:59:26Z", + "confirmation": null, + "delta_pct": -12.7, + "id": "20ec467791831d64", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "eb9dd703d38041effb1c16d683502c797f9f95eb", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -56589,24 +118045,26 @@ "width": 800 }, "source_identity": { - "classic_selected": "davidalves.net.Duelist 0.1.6src", + "classic_selected": "nat.nano.Ocnirp 1.73", "division": "roborumble", - "jar": "davidalves.net.Duelist_0.1.6src.jar", - "jar_sha256": "85c0efdc1a1c9e91b1d35ab906e794c255165f961ce6ad5271a564686ae623ae", - "key": "roborumble/davidalves.net.Duelist_0.1.6src.jar", + "jar": "nat.nano.Ocnirp_1.73.jar", + "jar_sha256": "c77d88209563972389d374f4d927380ac026da76db0b8129bf9458bbb542ba26", + "key": "roborumble/nat.nano.Ocnirp_1.73.jar", "kind": "robot" }, "status": "PASS", "tank_royale": { - "elapsed": 20.0, + "bridge_only_signatures": null, + "elapsed": 16.0, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 4877.0, + "score": 4106.0, "scores": [ - 2904.0, - 1973.0 + 2271.0, + 1835.0 ], "skipped": null } @@ -56614,65 +118072,63 @@ ], "status": "PASS" }, - "roborumble/davv.DOne_b002.jar": { + "roborumble/ncj.MoxieBot_1.0.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "davv.DOne b002", + "classic_selected": "ncj.MoxieBot 1.0", "division": "roborumble", - "jar": "davv.DOne_b002.jar", - "jar_sha256": "c4247ac7dade8278e7bdcb028af8c14d4850654318798c694a558df07d8b6a2e", - "key": "roborumble/davv.DOne_b002.jar", + "jar": "ncj.MoxieBot_1.0.jar", + "jar_sha256": "b8f6b2bcd2039b665d29a300a30d7c405bc90a332463af5350113b5d4545fa4d", + "key": "roborumble/ncj.MoxieBot_1.0.jar", "kind": "robot" }, - "latest_observation": "8948876072cf5515", + "latest_observation": "1a1bd5dc5e9ba681", "observations": [ { "classic": { - "elapsed": 4.0, + "elapsed": 28.7, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 5189.0, + "score": 1147.0, "scores": [ - 2593.0, - 2596.0 + 482.0, + 665.0 ], - "selected": "davv.DOne b002" + "selected": "ncj.MoxieBot 1.0" }, - "completed_at": "2026-09-08T21:43:51Z", - "delta_pct": -53.3, - "id": "8948876072cf5515", + "completed_at": "2026-09-12T23:02:01Z", + "confirmation": null, + "delta_pct": 30.9, + "id": "1a1bd5dc5e9ba681", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "eb9dd703d38041effb1c16d683502c797f9f95eb", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -56680,24 +118136,26 @@ "width": 800 }, "source_identity": { - "classic_selected": "davv.DOne b002", + "classic_selected": "ncj.MoxieBot 1.0", "division": "roborumble", - "jar": "davv.DOne_b002.jar", - "jar_sha256": "c4247ac7dade8278e7bdcb028af8c14d4850654318798c694a558df07d8b6a2e", - "key": "roborumble/davv.DOne_b002.jar", + "jar": "ncj.MoxieBot_1.0.jar", + "jar_sha256": "b8f6b2bcd2039b665d29a300a30d7c405bc90a332463af5350113b5d4545fa4d", + "key": "roborumble/ncj.MoxieBot_1.0.jar", "kind": "robot" }, "status": "DISCREPANCY (score)", "tank_royale": { - "elapsed": 30.0, + "bridge_only_signatures": null, + "elapsed": 52.0, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 2422.0, + "score": 1501.0, "scores": [ - 1387.0, - 1035.0 + 781.0, + 720.0 ], "skipped": null } @@ -56705,65 +118163,63 @@ ], "status": "score-review" }, - "roborumble/dcs.Eater_of_Worlds_1.1.3-A.jar": { + "roborumble/ndn.DyslexicMonkey_1.1.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "dcs.Eater_of_Worlds 1.1.3-A", + "classic_selected": "ndn.DyslexicMonkey 1.1", "division": "roborumble", - "jar": "dcs.Eater_of_Worlds_1.1.3-A.jar", - "jar_sha256": "b674714bdd8a9a3f2a422c44789ce0328e3c97db328d486b5a08e57c622bd1b8", - "key": "roborumble/dcs.Eater_of_Worlds_1.1.3-A.jar", + "jar": "ndn.DyslexicMonkey_1.1.jar", + "jar_sha256": "b9a7aaf79bc18b3482cfb350c2f8f64be79fd5baccd10fa4a8a4942c87a0b706", + "key": "roborumble/ndn.DyslexicMonkey_1.1.jar", "kind": "robot" }, - "latest_observation": "acfc2f677316f7a1", + "latest_observation": "aaffdedf8580c2bb", "observations": [ { "classic": { - "elapsed": 2.5, + "elapsed": 2.6, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 7446.0, + "score": 4331.0, "scores": [ - 3219.0, - 4227.0 + 2101.0, + 2230.0 ], - "selected": "dcs.Eater_of_Worlds 1.1.3-A" + "selected": "ndn.DyslexicMonkey 1.1" }, - "completed_at": "2026-09-08T21:44:08Z", - "delta_pct": 19.2, - "id": "acfc2f677316f7a1", + "completed_at": "2026-09-12T23:02:47Z", + "confirmation": null, + "delta_pct": 6.8, + "id": "aaffdedf8580c2bb", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "eb9dd703d38041effb1c16d683502c797f9f95eb", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -56771,24 +118227,26 @@ "width": 800 }, "source_identity": { - "classic_selected": "dcs.Eater_of_Worlds 1.1.3-A", + "classic_selected": "ndn.DyslexicMonkey 1.1", "division": "roborumble", - "jar": "dcs.Eater_of_Worlds_1.1.3-A.jar", - "jar_sha256": "b674714bdd8a9a3f2a422c44789ce0328e3c97db328d486b5a08e57c622bd1b8", - "key": "roborumble/dcs.Eater_of_Worlds_1.1.3-A.jar", + "jar": "ndn.DyslexicMonkey_1.1.jar", + "jar_sha256": "b9a7aaf79bc18b3482cfb350c2f8f64be79fd5baccd10fa4a8a4942c87a0b706", + "key": "roborumble/ndn.DyslexicMonkey_1.1.jar", "kind": "robot" }, "status": "PASS", "tank_royale": { - "elapsed": 14.0, + "bridge_only_signatures": null, + "elapsed": 22.0, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 8877.0, + "score": 4624.0, "scores": [ - 5234.0, - 3643.0 + 2491.0, + 2133.0 ], "skipped": null } @@ -56796,65 +118254,63 @@ ], "status": "PASS" }, - "roborumble/dcs.Eater_of_Worlds_Mini_1.0.jar": { + "roborumble/ne.Chimera_1.2.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "dcs.Eater_of_Worlds_Mini 1.0", + "classic_selected": "ne.Chimera 1.2", "division": "roborumble", - "jar": "dcs.Eater_of_Worlds_Mini_1.0.jar", - "jar_sha256": "424d954d97913eb026baa23b0a387bec3723e090b8c2619f83be76905a006b3d", - "key": "roborumble/dcs.Eater_of_Worlds_Mini_1.0.jar", + "jar": "ne.Chimera_1.2.jar", + "jar_sha256": "7cf5fbc2478a55e7e648fefe8f59e720bee17ed869fcb5e661e8a1af2ab35a54", + "key": "roborumble/ne.Chimera_1.2.jar", "kind": "robot" }, - "latest_observation": "aa8ea784d11f187f", + "latest_observation": "4b2e6452c51ec17c", "observations": [ { "classic": { - "elapsed": 2.5, + "elapsed": 4.7, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 8122.0, + "score": 7159.0, "scores": [ - 4301.0, - 3821.0 + 3398.0, + 3761.0 ], - "selected": "dcs.Eater_of_Worlds_Mini 1.0" + "selected": "ne.Chimera 1.2" }, - "completed_at": "2026-09-08T21:44:26Z", - "delta_pct": -3.7, - "id": "aa8ea784d11f187f", + "completed_at": "2026-09-12T23:03:06Z", + "confirmation": null, + "delta_pct": null, + "id": "4b2e6452c51ec17c", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "eb9dd703d38041effb1c16d683502c797f9f95eb", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -56862,90 +118318,105 @@ "width": 800 }, "source_identity": { - "classic_selected": "dcs.Eater_of_Worlds_Mini 1.0", + "classic_selected": "ne.Chimera 1.2", "division": "roborumble", - "jar": "dcs.Eater_of_Worlds_Mini_1.0.jar", - "jar_sha256": "424d954d97913eb026baa23b0a387bec3723e090b8c2619f83be76905a006b3d", - "key": "roborumble/dcs.Eater_of_Worlds_Mini_1.0.jar", + "jar": "ne.Chimera_1.2.jar", + "jar_sha256": "7cf5fbc2478a55e7e648fefe8f59e720bee17ed869fcb5e661e8a1af2ab35a54", + "key": "roborumble/ne.Chimera_1.2.jar", "kind": "robot" }, - "status": "PASS", + "status": "DISCREPANCY (outcome)", "tank_royale": { - "elapsed": 16.0, - "error_count": 0, - "errors": [], - "has_log": false, - "ok": true, - "score": 7824.0, - "scores": [ - 4118.0, - 3706.0 + "bridge_only_signatures": [ + [ + "java.io.IOException", + "unknown" + ] + ], + "elapsed": 14.2, + "error_count": 7, + "error_signatures": [ + { + "exception": "java.io.IOException", + "origin": "unknown" + } + ], + "errors": [ + "HARNESS: worker produced no result (exit code -1)", + "Error writing Object:java.io.IOException: You have reached your filesystem quota of: 200000 bytes.", + "Error writing Object:java.io.IOException: You have reached your filesystem quota of: 200000 bytes.", + "Error writing Object:java.io.IOException: You have reached your filesystem quota of: 200000 bytes.", + "Error writing Object:java.io.IOException: You have reached your filesystem quota of: 200000 bytes.", + "Error writing Object:java.io.IOException: You have reached your filesystem quota of: 200000 bytes.", + "Error writing Object:java.io.IOException: You have reached your filesystem quota of: 200000 bytes." ], + "has_log": true, + "ok": false, + "score": null, + "scores": [], "skipped": null } } ], - "status": "PASS" + "status": "DISCREPANCY (outcome)" }, - "roborumble/dcs.PM.Eater_of_Worlds_PM_1.2.jar": { + "roborumble/nexus.Experimental_0.2.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "dcs.PM.Eater_of_Worlds_PM 1.2", + "classic_selected": "nexus.Experimental 0.2", "division": "roborumble", - "jar": "dcs.PM.Eater_of_Worlds_PM_1.2.jar", - "jar_sha256": "103d8b2e0e831171d8bc2ad4d2272f17765dfc9ecc7075ee4cdbba2a1a7b3e85", - "key": "roborumble/dcs.PM.Eater_of_Worlds_PM_1.2.jar", + "jar": "nexus.Experimental_0.2.jar", + "jar_sha256": "4b6c922cd552aa8ae43c268df05121fa69f2ef903f4d2dfbfdef3da818740ff8", + "key": "roborumble/nexus.Experimental_0.2.jar", "kind": "robot" }, - "latest_observation": "ff977f89ff8c2e6b", + "latest_observation": "c7a8e0fdd71f81b9", "observations": [ { "classic": { - "elapsed": 2.9, + "elapsed": 2.5, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 5358.0, + "score": 3477.0, "scores": [ - 2593.0, - 2765.0 + 1906.0, + 1571.0 ], - "selected": "dcs.PM.Eater_of_Worlds_PM 1.2" + "selected": "nexus.Experimental 0.2" }, - "completed_at": "2026-09-08T21:44:42Z", - "delta_pct": 155.4, - "id": "ff977f89ff8c2e6b", + "completed_at": "2026-09-12T23:03:23Z", + "confirmation": null, + "delta_pct": -6.7, + "id": "c7a8e0fdd71f81b9", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "eb9dd703d38041effb1c16d683502c797f9f95eb", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -56953,90 +118424,90 @@ "width": 800 }, "source_identity": { - "classic_selected": "dcs.PM.Eater_of_Worlds_PM 1.2", + "classic_selected": "nexus.Experimental 0.2", "division": "roborumble", - "jar": "dcs.PM.Eater_of_Worlds_PM_1.2.jar", - "jar_sha256": "103d8b2e0e831171d8bc2ad4d2272f17765dfc9ecc7075ee4cdbba2a1a7b3e85", - "key": "roborumble/dcs.PM.Eater_of_Worlds_PM_1.2.jar", + "jar": "nexus.Experimental_0.2.jar", + "jar_sha256": "4b6c922cd552aa8ae43c268df05121fa69f2ef903f4d2dfbfdef3da818740ff8", + "key": "roborumble/nexus.Experimental_0.2.jar", "kind": "robot" }, - "status": "DISCREPANCY (score)", + "status": "PASS", "tank_royale": { - "elapsed": 12.0, + "bridge_only_signatures": null, + "elapsed": 14.0, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 13685.0, + "score": 3244.0, "scores": [ - 7034.0, - 6651.0 + 1753.0, + 1491.0 ], "skipped": null } } ], - "status": "score-review" + "status": "PASS" }, - "roborumble/de.erdega.robocode.Polyphemos_0.4.jar": { + "roborumble/nexus.One_1.0.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "de.erdega.robocode.Polyphemos 0.4", + "classic_selected": "nexus.One 1.0", "division": "roborumble", - "jar": "de.erdega.robocode.Polyphemos_0.4.jar", - "jar_sha256": "64765b6e60690f6889f1ef44ef0e8a566871eee38b280784e68900dff5d0e7be", - "key": "roborumble/de.erdega.robocode.Polyphemos_0.4.jar", + "jar": "nexus.One_1.0.jar", + "jar_sha256": "f55c857ccfac5d48c7c0c38ed37d68b89549633c56e116efd0a712a362f68b7e", + "key": "roborumble/nexus.One_1.0.jar", "kind": "robot" }, - "latest_observation": "2b4de671d6c6e4bf", + "latest_observation": "be225d1536d87a30", "observations": [ { "classic": { - "elapsed": 2.6, + "elapsed": 2.5, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 5160.0, + "score": 2771.0, "scores": [ - 2440.0, - 2720.0 + 1888.0, + 883.0 ], - "selected": "de.erdega.robocode.Polyphemos 0.4" + "selected": "nexus.One 1.0" }, - "completed_at": "2026-09-08T21:45:07Z", - "delta_pct": -35.0, - "id": "2b4de671d6c6e4bf", + "completed_at": "2026-09-12T23:03:44Z", + "confirmation": null, + "delta_pct": -24.9, + "id": "be225d1536d87a30", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "eb9dd703d38041effb1c16d683502c797f9f95eb", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -57044,181 +118515,181 @@ "width": 800 }, "source_identity": { - "classic_selected": "de.erdega.robocode.Polyphemos 0.4", + "classic_selected": "nexus.One 1.0", "division": "roborumble", - "jar": "de.erdega.robocode.Polyphemos_0.4.jar", - "jar_sha256": "64765b6e60690f6889f1ef44ef0e8a566871eee38b280784e68900dff5d0e7be", - "key": "roborumble/de.erdega.robocode.Polyphemos_0.4.jar", + "jar": "nexus.One_1.0.jar", + "jar_sha256": "f55c857ccfac5d48c7c0c38ed37d68b89549633c56e116efd0a712a362f68b7e", + "key": "roborumble/nexus.One_1.0.jar", "kind": "robot" }, - "status": "DISCREPANCY (score)", + "status": "PASS", "tank_royale": { - "elapsed": 22.0, + "bridge_only_signatures": null, + "elapsed": 18.0, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 3354.0, + "score": 2080.0, "scores": [ - 1829.0, - 1525.0 + 1100.0, + 980.0 ], "skipped": null } } ], - "status": "score-review" + "status": "PASS" }, - "roborumble/de.simpleworks.robocode.bots.swiBot_1.0.jar": { + "roborumble/nexus.Prototype_1.0.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "de.simpleworks.robocode.bots.swiBot 1.0", + "classic_selected": "nexus.Prototype 1.0", "division": "roborumble", - "jar": "de.simpleworks.robocode.bots.swiBot_1.0.jar", - "jar_sha256": "0f8ba834279b54d3494be8aeb57f35d557e8d05bb4075a832a76206b1fa89eef", - "key": "roborumble/de.simpleworks.robocode.bots.swiBot_1.0.jar", + "jar": "nexus.Prototype_1.0.jar", + "jar_sha256": "a2a7e695391135cefcbdcc5bf701910449b546988643ea8450defe918ea7b84c", + "key": "roborumble/nexus.Prototype_1.0.jar", "kind": "robot" }, - "latest_observation": "8a7446289797b1b0", + "latest_observation": "771ce88613c6fbc6", "observations": [ { "classic": { - "elapsed": 2.7, + "elapsed": 2.4, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 9417.0, + "score": 7625.0, "scores": [ - 4829.0, - 4588.0 + 3768.0, + 3857.0 ], - "selected": "de.simpleworks.robocode.bots.swiBot 1.0" + "selected": "nexus.Prototype 1.0" }, - "completed_at": "2026-09-08T21:45:32Z", - "delta_pct": -13.2, - "id": "8a7446289797b1b0", + "completed_at": "2026-09-12T23:04:15Z", + "confirmation": null, + "delta_pct": -50.0, + "id": "771ce88613c6fbc6", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "eb9dd703d38041effb1c16d683502c797f9f95eb", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, "rounds": 35, "width": 800 }, - "source_identity": { - "classic_selected": "de.simpleworks.robocode.bots.swiBot 1.0", - "division": "roborumble", - "jar": "de.simpleworks.robocode.bots.swiBot_1.0.jar", - "jar_sha256": "0f8ba834279b54d3494be8aeb57f35d557e8d05bb4075a832a76206b1fa89eef", - "key": "roborumble/de.simpleworks.robocode.bots.swiBot_1.0.jar", + "source_identity": { + "classic_selected": "nexus.Prototype 1.0", + "division": "roborumble", + "jar": "nexus.Prototype_1.0.jar", + "jar_sha256": "a2a7e695391135cefcbdcc5bf701910449b546988643ea8450defe918ea7b84c", + "key": "roborumble/nexus.Prototype_1.0.jar", "kind": "robot" }, - "status": "PASS", + "status": "DISCREPANCY (score)", "tank_royale": { - "elapsed": 22.0, + "bridge_only_signatures": null, + "elapsed": 28.0, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 8172.0, + "score": 3811.0, "scores": [ - 4378.0, - 3794.0 + 1908.0, + 1903.0 ], "skipped": null } } ], - "status": "PASS" + "status": "score-review" }, - "roborumble/deith.Czolgzilla_0.11.jar": { + "roborumble/nexus.Two_0.2.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "deith.Czolgzilla 0.11", + "classic_selected": "nexus.Two 0.2", "division": "roborumble", - "jar": "deith.Czolgzilla_0.11.jar", - "jar_sha256": "62fcf900acce6f57575b9f550455c49c70238555233b37a6687f979f9af91779", - "key": "roborumble/deith.Czolgzilla_0.11.jar", + "jar": "nexus.Two_0.2.jar", + "jar_sha256": "156aa2641cfd499cb2b8c80e4684d25d556424db64596776828ecd4ab28cbafb", + "key": "roborumble/nexus.Two_0.2.jar", "kind": "robot" }, - "latest_observation": "08cef06b36787464", + "latest_observation": "faf8e5dab6252c46", "observations": [ { "classic": { - "elapsed": 43.1, + "elapsed": 2.5, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 5143.0, + "score": 3173.0, "scores": [ - 3161.0, - 1982.0 + 1591.0, + 1582.0 ], - "selected": "deith.Czolgzilla 0.11" + "selected": "nexus.Two 0.2" }, - "completed_at": "2026-09-08T21:46:55Z", - "delta_pct": -5.6, - "id": "08cef06b36787464", + "completed_at": "2026-09-12T23:04:28Z", + "confirmation": null, + "delta_pct": -28.7, + "id": "faf8e5dab6252c46", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "eb9dd703d38041effb1c16d683502c797f9f95eb", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -57226,90 +118697,90 @@ "width": 800 }, "source_identity": { - "classic_selected": "deith.Czolgzilla 0.11", + "classic_selected": "nexus.Two 0.2", "division": "roborumble", - "jar": "deith.Czolgzilla_0.11.jar", - "jar_sha256": "62fcf900acce6f57575b9f550455c49c70238555233b37a6687f979f9af91779", - "key": "roborumble/deith.Czolgzilla_0.11.jar", + "jar": "nexus.Two_0.2.jar", + "jar_sha256": "156aa2641cfd499cb2b8c80e4684d25d556424db64596776828ecd4ab28cbafb", + "key": "roborumble/nexus.Two_0.2.jar", "kind": "robot" }, - "status": "PASS", + "status": "DISCREPANCY (score)", "tank_royale": { - "elapsed": 40.0, + "bridge_only_signatures": null, + "elapsed": 10.0, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 4853.0, + "score": 2262.0, "scores": [ - 2548.0, - 2305.0 + 1390.0, + 872.0 ], "skipped": null } } ], - "status": "PASS" + "status": "score-review" }, - "roborumble/demetrix.ForceMajeure_0.75.jar": { + "roborumble/ngf.nano.Sparky_0.1.5.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "demetrix.ForceMajeure 0.75", + "classic_selected": "ngf.nano.Sparky 0.1.5", "division": "roborumble", - "jar": "demetrix.ForceMajeure_0.75.jar", - "jar_sha256": "015c4cf71816f9b7ec45ca58c680054eada7157ea54b8eb29c33ec4a82be5011", - "key": "roborumble/demetrix.ForceMajeure_0.75.jar", + "jar": "ngf.nano.Sparky_0.1.5.jar", + "jar_sha256": "5756ae2ace8349776f4c1cefdefabc6aad575736993a7862f7e7ac57cc34c335", + "key": "roborumble/ngf.nano.Sparky_0.1.5.jar", "kind": "robot" }, - "latest_observation": "bbf69d95d8f28b8f", + "latest_observation": "b634538fb008be6f", "observations": [ { "classic": { - "elapsed": 8.9, + "elapsed": 2.7, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 5942.0, + "score": 6180.0, "scores": [ - 3395.0, - 2547.0 + 3204.0, + 2976.0 ], - "selected": "demetrix.ForceMajeure 0.75" + "selected": "ngf.nano.Sparky 0.1.5" }, - "completed_at": "2026-09-08T21:47:28Z", - "delta_pct": -0.5, - "id": "bbf69d95d8f28b8f", + "completed_at": "2026-09-12T23:05:08Z", + "confirmation": null, + "delta_pct": -50.1, + "id": "b634538fb008be6f", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "eb9dd703d38041effb1c16d683502c797f9f95eb", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -57317,90 +118788,90 @@ "width": 800 }, "source_identity": { - "classic_selected": "demetrix.ForceMajeure 0.75", + "classic_selected": "ngf.nano.Sparky 0.1.5", "division": "roborumble", - "jar": "demetrix.ForceMajeure_0.75.jar", - "jar_sha256": "015c4cf71816f9b7ec45ca58c680054eada7157ea54b8eb29c33ec4a82be5011", - "key": "roborumble/demetrix.ForceMajeure_0.75.jar", + "jar": "ngf.nano.Sparky_0.1.5.jar", + "jar_sha256": "5756ae2ace8349776f4c1cefdefabc6aad575736993a7862f7e7ac57cc34c335", + "key": "roborumble/ngf.nano.Sparky_0.1.5.jar", "kind": "robot" }, - "status": "PASS", + "status": "DISCREPANCY (score)", "tank_royale": { - "elapsed": 24.0, + "bridge_only_signatures": null, + "elapsed": 14.0, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 5913.0, + "score": 3082.0, "scores": [ - 3066.0, - 2847.0 + 1543.0, + 1539.0 ], "skipped": null } } ], - "status": "PASS" + "status": "score-review" }, - "roborumble/demetrix.nano.Neutrino_0.27.jar": { + "roborumble/nic.Nicator_2.4.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "demetrix.nano.Neutrino 0.27", + "classic_selected": "nic.Nicator 2.4", "division": "roborumble", - "jar": "demetrix.nano.Neutrino_0.27.jar", - "jar_sha256": "3ba40e81b6908456aad702dd6e8481f33d07898ac773a1307a20563157942a23", - "key": "roborumble/demetrix.nano.Neutrino_0.27.jar", + "jar": "nic.Nicator_2.4.jar", + "jar_sha256": "b95c3c76451969efe65a8c874e6bf45afc0bb5d6ed3de50493db9d74103ccc6f", + "key": "roborumble/nic.Nicator_2.4.jar", "kind": "robot" }, - "latest_observation": "c87a4b8d228674d0", + "latest_observation": "67338d8403618fc6", "observations": [ { "classic": { - "elapsed": 2.4, + "elapsed": 2.9, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 7673.0, + "score": 11009.0, "scores": [ - 4020.0, - 3653.0 + 5109.0, + 5900.0 ], - "selected": "demetrix.nano.Neutrino 0.27" + "selected": "nic.Nicator 2.4" }, - "completed_at": "2026-09-08T21:47:45Z", - "delta_pct": -17.5, - "id": "c87a4b8d228674d0", + "completed_at": "2026-09-12T23:05:15Z", + "confirmation": null, + "delta_pct": null, + "id": "67338d8403618fc6", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "eb9dd703d38041effb1c16d683502c797f9f95eb", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -57408,90 +118879,107 @@ "width": 800 }, "source_identity": { - "classic_selected": "demetrix.nano.Neutrino 0.27", + "classic_selected": "nic.Nicator 2.4", "division": "roborumble", - "jar": "demetrix.nano.Neutrino_0.27.jar", - "jar_sha256": "3ba40e81b6908456aad702dd6e8481f33d07898ac773a1307a20563157942a23", - "key": "roborumble/demetrix.nano.Neutrino_0.27.jar", + "jar": "nic.Nicator_2.4.jar", + "jar_sha256": "b95c3c76451969efe65a8c874e6bf45afc0bb5d6ed3de50493db9d74103ccc6f", + "key": "roborumble/nic.Nicator_2.4.jar", "kind": "robot" }, - "status": "PASS", + "status": "DISCREPANCY (outcome)", "tank_royale": { - "elapsed": 14.0, - "error_count": 0, - "errors": [], - "has_log": false, - "ok": true, - "score": 6329.0, - "scores": [ - 3688.0, - 2641.0 + "bridge_only_signatures": [ + [ + "java.lang.NullPointerException", + "nic.FireControlManager.bullethit" + ] + ], + "elapsed": 4.2, + "error_count": 9, + "error_signatures": [ + { + "exception": "java.lang.NullPointerException", + "origin": "nic.FireControlManager.bullethit" + } + ], + "errors": [ + "HARNESS: worker produced no result (exit code -1)", + "java.lang.NullPointerException: Cannot read field \"target\" because \"b\" is null", + "java.lang.NullPointerException: Cannot read field \"target\" because \"b\" is null", + "java.lang.NullPointerException: Cannot read field \"target\" because \"b\" is null", + "java.lang.NullPointerException: Cannot read field \"target\" because \"b\" is null", + "java.lang.NullPointerException: Cannot read field \"target\" because \"b\" is null", + "java.lang.NullPointerException: Cannot read field \"target\" because \"b\" is null", + "java.lang.NullPointerException: Cannot read field \"target\" because \"b\" is null", + "java.lang.NullPointerException: Cannot read field \"target\" because \"b\" is null" ], + "has_log": true, + "ok": false, + "score": null, + "scores": [], "skipped": null } } ], - "status": "PASS" + "status": "DISCREPANCY (outcome)" }, - "roborumble/demetrix.nano.SledgeHammer_0.22.jar": { + "roborumble/nic.SnippetBot_1.0.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "demetrix.nano.SledgeHammer 0.22", + "classic_selected": "nic.SnippetBot 1.0", "division": "roborumble", - "jar": "demetrix.nano.SledgeHammer_0.22.jar", - "jar_sha256": "8ca91c5c9cbe37fbd67f136a38ac4be45c2f8b9eb470367957c3fe20e0edd3cd", - "key": "roborumble/demetrix.nano.SledgeHammer_0.22.jar", + "jar": "nic.SnippetBot_1.0.jar", + "jar_sha256": "46ff983712f2ef6cae27780563dfcc1a6ec04662e2e728a7c70f7e46519c48ed", + "key": "roborumble/nic.SnippetBot_1.0.jar", "kind": "robot" }, - "latest_observation": "804cc154798fef47", + "latest_observation": "0c261ee7291c16e5", "observations": [ { "classic": { - "elapsed": 2.1, + "elapsed": 3.3, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 10442.0, + "score": 4229.0, "scores": [ - 4827.0, - 5615.0 + 2325.0, + 1904.0 ], - "selected": "demetrix.nano.SledgeHammer 0.22" + "selected": "nic.SnippetBot 1.0" }, - "completed_at": "2026-09-08T21:47:57Z", - "delta_pct": 58.1, - "id": "804cc154798fef47", + "completed_at": "2026-09-12T23:05:41Z", + "confirmation": null, + "delta_pct": 198.0, + "id": "0c261ee7291c16e5", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "eb9dd703d38041effb1c16d683502c797f9f95eb", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -57499,24 +118987,26 @@ "width": 800 }, "source_identity": { - "classic_selected": "demetrix.nano.SledgeHammer 0.22", + "classic_selected": "nic.SnippetBot 1.0", "division": "roborumble", - "jar": "demetrix.nano.SledgeHammer_0.22.jar", - "jar_sha256": "8ca91c5c9cbe37fbd67f136a38ac4be45c2f8b9eb470367957c3fe20e0edd3cd", - "key": "roborumble/demetrix.nano.SledgeHammer_0.22.jar", + "jar": "nic.SnippetBot_1.0.jar", + "jar_sha256": "46ff983712f2ef6cae27780563dfcc1a6ec04662e2e728a7c70f7e46519c48ed", + "key": "roborumble/nic.SnippetBot_1.0.jar", "kind": "robot" }, "status": "DISCREPANCY (score)", "tank_royale": { - "elapsed": 10.0, + "bridge_only_signatures": null, + "elapsed": 22.0, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 16508.0, + "score": 12603.0, "scores": [ - 8362.0, - 8146.0 + 6471.0, + 6132.0 ], "skipped": null } @@ -57524,65 +119014,63 @@ ], "status": "score-review" }, - "roborumble/deo.CloudBot_1.3.jar": { + "roborumble/nkn.mini.Jskr0_0.1.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "deo.CloudBot 1.3", + "classic_selected": "nkn.mini.Jskr0 0.1", "division": "roborumble", - "jar": "deo.CloudBot_1.3.jar", - "jar_sha256": "d62f0561529c81e5da65ad44c4c6db8b31dceca043ec2d9fcc4646aa15ed28f3", - "key": "roborumble/deo.CloudBot_1.3.jar", + "jar": "nkn.mini.Jskr0_0.1.jar", + "jar_sha256": "df2140c3759d5946eef47e1362b3b27c6a3e8e096c78a86d590e0634536b7c92", + "key": "roborumble/nkn.mini.Jskr0_0.1.jar", "kind": "robot" }, - "latest_observation": "78bba33b96e662cd", + "latest_observation": "c273fc1b4d424de2", "observations": [ { "classic": { - "elapsed": 2.8, + "elapsed": 3.0, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 5643.0, + "score": 4352.0, "scores": [ - 2950.0, - 2693.0 + 2333.0, + 2019.0 ], - "selected": "deo.CloudBot 1.3" + "selected": "nkn.mini.Jskr0 0.1" }, - "completed_at": "2026-09-08T21:48:20Z", - "delta_pct": -48.6, - "id": "78bba33b96e662cd", + "completed_at": "2026-09-12T23:06:01Z", + "confirmation": null, + "delta_pct": 31.7, + "id": "c273fc1b4d424de2", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "eb9dd703d38041effb1c16d683502c797f9f95eb", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -57590,24 +119078,26 @@ "width": 800 }, "source_identity": { - "classic_selected": "deo.CloudBot 1.3", + "classic_selected": "nkn.mini.Jskr0 0.1", "division": "roborumble", - "jar": "deo.CloudBot_1.3.jar", - "jar_sha256": "d62f0561529c81e5da65ad44c4c6db8b31dceca043ec2d9fcc4646aa15ed28f3", - "key": "roborumble/deo.CloudBot_1.3.jar", + "jar": "nkn.mini.Jskr0_0.1.jar", + "jar_sha256": "df2140c3759d5946eef47e1362b3b27c6a3e8e096c78a86d590e0634536b7c92", + "key": "roborumble/nkn.mini.Jskr0_0.1.jar", "kind": "robot" }, "status": "DISCREPANCY (score)", "tank_royale": { - "elapsed": 20.0, + "bridge_only_signatures": null, + "elapsed": 16.0, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 2899.0, + "score": 5733.0, "scores": [ - 1506.0, - 1393.0 + 3463.0, + 2270.0 ], "skipped": null } @@ -57615,65 +119105,63 @@ ], "status": "score-review" }, - "roborumble/deo.FlowerBot_1.0.jar": { + "roborumble/non.mega.NaN_0.1.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "deo.FlowerBot 1.0", + "classic_selected": "non.mega.NaN 0.1", "division": "roborumble", - "jar": "deo.FlowerBot_1.0.jar", - "jar_sha256": "b5546fad91b493970149f74a827f7080df7ada99a958deaeebbfcfc0c211a5e5", - "key": "roborumble/deo.FlowerBot_1.0.jar", + "jar": "non.mega.NaN_0.1.jar", + "jar_sha256": "d235d806c2e9c4d8b34898892b426ac62ee08d909e7917cb9d17245df10c8b65", + "key": "roborumble/non.mega.NaN_0.1.jar", "kind": "robot" }, - "latest_observation": "fc65e7d5693090d9", + "latest_observation": "8a21454d7a135902", "observations": [ { "classic": { - "elapsed": 3.3, + "elapsed": 3.0, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 6175.0, + "score": 11541.0, "scores": [ - 3231.0, - 2944.0 + 5565.0, + 5976.0 ], - "selected": "deo.FlowerBot 1.0" + "selected": "non.mega.NaN 0.1" }, - "completed_at": "2026-09-08T21:48:40Z", - "delta_pct": -11.2, - "id": "fc65e7d5693090d9", + "completed_at": "2026-09-12T23:06:20Z", + "confirmation": null, + "delta_pct": 2.4, + "id": "8a21454d7a135902", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "eb9dd703d38041effb1c16d683502c797f9f95eb", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -57681,24 +119169,26 @@ "width": 800 }, "source_identity": { - "classic_selected": "deo.FlowerBot 1.0", + "classic_selected": "non.mega.NaN 0.1", "division": "roborumble", - "jar": "deo.FlowerBot_1.0.jar", - "jar_sha256": "b5546fad91b493970149f74a827f7080df7ada99a958deaeebbfcfc0c211a5e5", - "key": "roborumble/deo.FlowerBot_1.0.jar", + "jar": "non.mega.NaN_0.1.jar", + "jar_sha256": "d235d806c2e9c4d8b34898892b426ac62ee08d909e7917cb9d17245df10c8b65", + "key": "roborumble/non.mega.NaN_0.1.jar", "kind": "robot" }, "status": "PASS", "tank_royale": { + "bridge_only_signatures": null, "elapsed": 16.0, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 5481.0, + "score": 11814.0, "scores": [ - 3215.0, - 2266.0 + 6023.0, + 5791.0 ], "skipped": null } @@ -57706,65 +119196,63 @@ ], "status": "PASS" }, - "roborumble/deo.virtual.RainbowBot_1.0.jar": { + "roborumble/non.mega.NoName_0.0.jar": { "diagnosis_events": [], "identity": { - "classic_selected": "deo.virtual.RainbowBot 1.0", + "classic_selected": "non.mega.NoName 0.0", "division": "roborumble", - "jar": "deo.virtual.RainbowBot_1.0.jar", - "jar_sha256": "3854b1a74b34f26b4fccfc997b5faadb4db60177cd48857d8bdba79e63f5bba4", - "key": "roborumble/deo.virtual.RainbowBot_1.0.jar", + "jar": "non.mega.NoName_0.0.jar", + "jar_sha256": "b57e6ba44039daf6e8f04d981dd3b9a1bdea158654b954633daf508b0feaee0f", + "key": "roborumble/non.mega.NoName_0.0.jar", "kind": "robot" }, - "latest_observation": "38ab74151e9be2ed", + "latest_observation": "41bc7d5ccd53bdbf", "observations": [ { "classic": { - "elapsed": 3.8, + "elapsed": 2.8, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 6603.0, + "score": 5867.0, "scores": [ - 2903.0, - 3700.0 + 2521.0, + 3346.0 ], - "selected": "deo.virtual.RainbowBot 1.0" + "selected": "non.mega.NoName 0.0" }, - "completed_at": "2026-09-08T21:49:04Z", - "delta_pct": -51.9, - "id": "38ab74151e9be2ed", + "completed_at": "2026-09-12T23:06:37Z", + "confirmation": null, + "delta_pct": 22.0, + "id": "41bc7d5ccd53bdbf", "manifest": { "artifacts": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" - }, - "bridge_commit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "official_parameters": true, - "supplied": { - "artifactSha256": { - "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar": "A92135B08DF77D80362D62035F8C7EE96266673FA2563A6C159C1ED4D36A115E", - "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar": "A6259E29CCAF9E710B1F5176B1FA3E1E6F97D14569E98A5E0A9E6C64CB5109E5", - "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar": "A855E74500F2D8F78F64574FC0CAE93D79B0AB35A1F74674789B7C878972052B", - "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar": "3B3212ADED7EDF2ECA481E2E536075F59E074993A85F87BA7F5BD0760892C151" + "bot_api_jar": { + "path": "C:\\Code\\tank-royale\\bot-api\\java\\build\\libs\\robocode-tankroyale-bot-api-1.2.0.jar", + "sha256": "5bb235600b59f7239457a12c387984264fe914285f8d7b8655c0373947ef8125" }, - "bridgeCommit": "59240f444c5182b7c15d856ac077e5b3116513ed", - "collectionDir": "C:\\Code\\LiteRumble robots", - "command": "python compat_test.py --limit 50", - "created": "2026-09-08T21:13:17.3265216Z", - "javaVersion": "openjdk version \"24.0.2\" 2025-07-15 OpenJDK Runtime Environment Temurin-24.0.2+12 (build 24.0.2+12) OpenJDK 64-Bit Server VM Temurin-24.0.2+12 (build 24.0.2+12, mixed mode, sharing)", - "pythonVersion": "Python 3.14.2", - "rcJava": "C:\\Program Files\\Eclipse Adoptium\\jdk-17.0.17.10-hotspot\\bin\\java.exe", - "robocodeHome": "C:\\robocode", - "tankRoyaleCommit": "249cdaf77678126d82f48e93f6e01434aee88823", - "tankRoyaleVersion": "1.2.0" + "bridge_api_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robocode-api\\build\\libs\\robocode-api-0.5.0.jar", + "sha256": "5c4abd10a629eeafed273018617e436e6267d17519092e70b68c094bed3cb9fd" + }, + "runner_jar": { + "path": "C:\\Code\\tank-royale\\runner\\examples\\lib\\robocode-tankroyale-runner.jar", + "sha256": "3b3212aded7edf2eca481e2e536075f59e074993a85f87ba7f5bd0760892c151" + }, + "wrapper_jar": { + "path": "C:\\Code\\robocode-api-bridge\\robots-wrapper\\build\\libs\\robots-wrapper-0.3.1.jar", + "sha256": "b98852075100ddf32d4d76fd8c3e2bb7992092c1f7b88e30138549534f1caa3e" + } }, - "tank_royale_commit": "249cdaf77678126d82f48e93f6e01434aee88823", + "bridge_commit": "eb9dd703d38041effb1c16d683502c797f9f95eb", + "official_parameters": true, + "robocode_version": "1.11.1", + "tank_royale_commit": "875f517f7d3a7a49b458c2164088d44058496f55", "threshold": 25.0 }, + "retest": null, "setup": { "height": 600, "participants": 2, @@ -57772,30 +119260,32 @@ "width": 800 }, "source_identity": { - "classic_selected": "deo.virtual.RainbowBot 1.0", + "classic_selected": "non.mega.NoName 0.0", "division": "roborumble", - "jar": "deo.virtual.RainbowBot_1.0.jar", - "jar_sha256": "3854b1a74b34f26b4fccfc997b5faadb4db60177cd48857d8bdba79e63f5bba4", - "key": "roborumble/deo.virtual.RainbowBot_1.0.jar", + "jar": "non.mega.NoName_0.0.jar", + "jar_sha256": "b57e6ba44039daf6e8f04d981dd3b9a1bdea158654b954633daf508b0feaee0f", + "key": "roborumble/non.mega.NoName_0.0.jar", "kind": "robot" }, - "status": "DISCREPANCY (score)", + "status": "PASS", "tank_royale": { - "elapsed": 20.0, + "bridge_only_signatures": null, + "elapsed": 14.0, "error_count": 0, + "error_signatures": [], "errors": [], "has_log": false, "ok": true, - "score": 3175.0, + "score": 7159.0, "scores": [ - 1712.0, - 1463.0 + 4249.0, + 2910.0 ], "skipped": null } } ], - "status": "score-review" + "status": "PASS" }, "teamrumble/CharlieN.OmegaTeam.OmegaTeam_1.0.jar": { "diagnosis_events": [], diff --git a/compat-test/parity-registry.md b/compat-test/parity-registry.md index 9de792a..7c83a12 100644 --- a/compat-test/parity-registry.md +++ b/compat-test/parity-registry.md @@ -6,12 +6,12 @@ This generated table is the reviewed index of the append-only observations in `p | Status | Subjects | |---|---:| -| DISCREPANCY (errors) | 16 | -| DISCREPANCY (no score) | 4 | -| DISCREPANCY (outcome) | 28 | -| FAIL (TR) | 19 | -| PASS | 144 | -| score-review | 76 | +| DISCREPANCY (errors) | 25 | +| DISCREPANCY (no score) | 32 | +| DISCREPANCY (outcome) | 83 | +| MATCHED (failure) | 49 | +| PASS | 363 | +| score-review | 177 | ## Subjects @@ -34,232 +34,674 @@ This generated table is the reviewed index of the append-only observations in `p | meleerumble/amk.Punbot.Punbot_0.01.jar | meleerumble | robot | DISCREPANCY (errors) | d8d5f7f19cea99d9 | robot-file-stream-limit | bridge | | meleerumble/amk.ShizzleStiX.ShizzleStiX_0.6.jar | meleerumble | robot | DISCREPANCY (errors) | 5db1d80aa5499f68 | robot-file-stream-limit | bridge | | meleerumble/amk.jointstrike.JointStrike_0.2.jar | meleerumble | robot | DISCREPANCY (errors) | d8d75fced51e8ee0 | robot-file-stream-limit | bridge | -| roborumble/AD.CodaFirst_1.1.jar | roborumble | robot | score-review | c64fb0b475ea6e81 | - | - | -| roborumble/AIR.iRobot_1.0.jar | roborumble | robot | FAIL (TR) | 30ccf919e98128fe | - | - | -| roborumble/And.BasicSurfer_FF1.6.jar | roborumble | robot | PASS | e10ba12633f28ccf | - | - | -| roborumble/ArchAlpha.ArchimedesAlpha_1.0.jar | roborumble | robot | DISCREPANCY (no score) | 8ee700d1da5ca3de | - | - | -| roborumble/CharlieN.Omega.Omega_1.03.jar | roborumble | robot | PASS | 23e880a8344ee3d9 | - | - | -| roborumble/a.FreyaOS_1.0.jar | roborumble | robot | score-review | 250efa0576cb1c56 | - | - | -| roborumble/aaa.r.ScalarR_0.005h.053.jar | roborumble | robot | score-review | 789ba80b28f3224a | - | - | -| roborumble/ab.DengerousRoBatra_1.3.jar | roborumble | robot | PASS | b9f7cc9d84668eb6 | - | - | -| roborumble/abud.ThirdRobo_1.0.jar | roborumble | robot | FAIL (TR) | b6434f799b62dbb9 | - | - | -| roborumble/acid.Bl4ck_1.0.jar | roborumble | robot | score-review | 7bbc287f8bfe56e4 | - | - | -| roborumble/acid.Null_1.0.jar | roborumble | robot | score-review | 590ef3a4eaca28e3 | - | - | -| roborumble/acid.Syzygy_1.0.4.jar | roborumble | robot | score-review | e0d888daca1f0456 | - | - | -| roborumble/ad.Quest_0.10.jar | roborumble | robot | PASS | 90b87fb62a5d8769 | - | - | -| roborumble/ad.last.Bottom_1.0.jar | roborumble | robot | score-review | 536581d29ac8b51f | - | - | -| roborumble/adt.Ar1_2.1.jar | roborumble | robot | PASS | a7544fcb7a16e1cc | - | - | -| roborumble/adt.Ar2_1.0.jar | roborumble | robot | PASS | f8dc415d3174e2bd | - | - | -| roborumble/aetos.AetosFirstBot_1.0.jar | roborumble | robot | PASS | adf8a34914ae5ddc | - | - | -| roborumble/ag.Gir_0.99.jar | roborumble | robot | FAIL (TR) | 6a92a7c896d886ac | - | - | -| roborumble/agd.Mooserwirt2_2.7.jar | roborumble | robot | score-review | ff9a91c9aed410ac | - | - | -| roborumble/agrach.Dalek_1.0.jar | roborumble | robot | score-review | ba3220036d56b733 | - | - | -| roborumble/agrach.MicroDalek_1.0.jar | roborumble | robot | PASS | 530461a54d8b1dad | - | - | -| roborumble/agrach.RobotSlayer_1.0.jar | roborumble | robot | score-review | 8f77756a222c2ed6 | - | - | -| roborumble/ags.Glacier_0.3.2.jar | roborumble | robot | score-review | 60be2730fb1d2100 | - | - | -| roborumble/ags.Midboss_1q.fast.jar | roborumble | robot | PASS | 7effb7a405de90e7 | - | - | -| roborumble/ags.micro.Carpet_1.1.jar | roborumble | robot | PASS | a5199bebb61593c0 | - | - | -| roborumble/ags.polished.PolishedRuby_1.jar | roborumble | robot | score-review | fc49d718cc3c93ac | - | - | -| roborumble/ags.rougedc.RougeDC_willow.jar | roborumble | robot | PASS | c007d142eae29d0a | - | - | -| roborumble/ahf.Acero_1.0.jar | roborumble | robot | PASS | 9a49d2334b9adb0e | - | - | -| roborumble/ahf.NanoAndrew_.4.jar | roborumble | robot | score-review | 06a1568606c64145 | - | - | -| roborumble/ahf.r2d2.R2d2_0.86.jar | roborumble | robot | score-review | b8a0807ea26810cb | - | - | -| roborumble/ahr.ice.Ice_1.0.jar | roborumble | robot | PASS | 230fd620dc49add2 | - | - | -| roborumble/ak.Fermat_2.0.jar | roborumble | robot | score-review | 2e184f3d97965168 | - | - | -| roborumble/alex.Diabolo5_1.1.jar | roborumble | robot | PASS | 9571152abf9a4117 | - | - | -| roborumble/alk.lap.LoudAndProud_2.23.jar | roborumble | robot | PASS | b7150fa0f8305e61 | - | - | -| roborumble/am.Miedzix_3.0.jar | roborumble | robot | PASS | 95ffe43ca9a2cd04 | - | - | -| roborumble/amarok.Rookie_1.1.jar | roborumble | robot | PASS | 4358feef92af528c | - | - | -| roborumble/amc.ROBv202_1.01.jar | roborumble | robot | PASS | 7af3d80d2aa0cb8e | - | - | -| roborumble/amc.ROBv203_1.0.jar | roborumble | robot | PASS | 5b13343a09625cb7 | - | - | -| roborumble/amc.ROBv300_1.1.jar | roborumble | robot | score-review | f9df3a01abc1f04f | - | - | -| roborumble/amc.ROBv301_1.1.jar | roborumble | robot | score-review | 8f84ca57fd472f5b | - | - | -| roborumble/amc.ROBv400_1.0.jar | roborumble | robot | score-review | 09be55e2c9b7d445 | - | - | -| roborumble/amk.ChumbaMini_0.2.jar | roborumble | robot | PASS | a2683415dda92a08 | - | - | -| roborumble/amk.ChumbaWumba_0.3.jar | roborumble | robot | PASS | 945bce04cca29751 | - | - | -| roborumble/amk.Punbot.Punbot_0.01.jar | roborumble | robot | PASS | 5cb33aff96c3e759 | - | - | -| roborumble/amk.ShizzleStiX.ShizzleStiX_0.6.jar | roborumble | robot | PASS | fcb8486e2c29e9dc | - | - | -| roborumble/amk.jointstrike.JointStrike_0.2.jar | roborumble | robot | PASS | 5c6c92d169d651d3 | - | - | -| roborumble/amk.superstrike.SuperStrike_0.3.jar | roborumble | robot | score-review | 54ea093325f72804 | - | - | -| roborumble/ao.T100_0.9.jar | roborumble | robot | score-review | 4ae1803915fa8384 | - | - | -| roborumble/ap.Frederick_1.1.jar | roborumble | robot | PASS | df6c7329f8f52c4e | - | - | -| roborumble/apc.Caan_1.0.jar | roborumble | robot | PASS | f844e4bc6aff7dc0 | - | - | -| roborumble/apc.Colossus2_0.12.jar | roborumble | robot | FAIL (TR) | 6234b82cd630f7c9 | - | - | -| roborumble/apc.LeeroyJenkins2_1.0.jar | roborumble | robot | PASS | c115dfcf1a4a4fdf | - | - | -| roborumble/apc.botM_3.0.jar | roborumble | robot | PASS | 4a1b06c7f3fd0456 | - | - | -| roborumble/apollokidd.ApolloKidd_0.9.jar | roborumble | robot | score-review | b90a01cef8102d4f | - | - | -| roborumble/apv.AspidReloaded_0.6.jar | roborumble | robot | PASS | 22f23ec4b2359408 | - | - | -| roborumble/apv.Aspid_1.7.jar | roborumble | robot | PASS | f0bfd59e67a0674e | - | - | -| roborumble/apv.LauLectrik_1.2.jar | roborumble | robot | PASS | 379bc7ba025c9021 | - | - | -| roborumble/apv.MicroAspid_1.8.jar | roborumble | robot | PASS | 683da02ff1de941a | - | - | -| roborumble/apv.NanoLauLectrikTheCannibal_1.1.jar | roborumble | robot | PASS | 15a460cbb677c889 | - | - | -| roborumble/apv.NanoLauLectrik_1.0.jar | roborumble | robot | PASS | 1aa9b09bc500fd4b | - | - | -| roborumble/apv.ScruchiPu_1.0.jar | roborumble | robot | PASS | d749a519d41481d5 | - | - | -| roborumble/apv.TheBrainPi_0.5fix.jar | roborumble | robot | PASS | 0b26bcefd7d92f4f | - | - | -| roborumble/apv.test.Virus_0.6.1.jar | roborumble | robot | PASS | fb63ed9dcd64d83b | - | - | -| roborumble/ar.QuantumChromodynamics_1.2.1.jar | roborumble | robot | PASS | 4ac5fb2477202c50 | - | - | -| roborumble/ar.TheoryOfEverything_1.2.1.jar | roborumble | robot | PASS | 9ace621bf12f4172 | - | - | -| roborumble/ar.horizon.Horizon_1.2.2.jar | roborumble | robot | score-review | 97286a0cb62861a8 | - | - | -| roborumble/ara.Shera_0.88.jar | roborumble | robot | PASS | b32a6997ff56c9af | - | - | -| roborumble/areb.Union_1.06.jar | roborumble | robot | PASS | e533066dda10e17a | - | - | -| roborumble/arthord.KostyaTszyu_Beta2.jar | roborumble | robot | score-review | 36f054afe6dfd556 | - | - | -| roborumble/arthord.NanoSatanMelee_Beta.jar | roborumble | robot | PASS | aee831eb589eb863 | - | - | -| roborumble/arthord.NanoSatan_Mu.jar | roborumble | robot | PASS | cb4397fbdd3591a9 | - | - | -| roborumble/arthord.micro.Apoptygma_0.4.jar | roborumble | robot | PASS | 3c369261b2915cd0 | - | - | -| roborumble/arthord.micro.Muffin_0.6.1.jar | roborumble | robot | score-review | a7b360b5da35fac2 | - | - | -| roborumble/ary.Crisis_1.0.jar | roborumble | robot | PASS | 2728b67184ef42c0 | - | - | -| roborumble/ary.FourWD_1.3d.jar | roborumble | robot | score-review | 10b51506f52cd1be | - | - | -| roborumble/ary.Help_1.0.jar | roborumble | robot | score-review | a5fc6afd26a475b9 | - | - | -| roborumble/ary.SMG_1.01.jar | roborumble | robot | score-review | 5df472261fca6166 | - | - | -| roborumble/ary.micro.Weak_1.2.jar | roborumble | robot | PASS | 371017386f1da182 | - | - | -| roborumble/ary.mini.Nimi_1.0.jar | roborumble | robot | score-review | e0d8d0f6f8806455 | - | - | -| roborumble/ary.nano.AceSurf_1.2.jar | roborumble | robot | score-review | bd77f78dc4f9642f | - | - | -| roborumble/ary.nano.ColorNanoP_1.1.jar | roborumble | robot | PASS | 7c40044d94ec9a01 | - | - | -| roborumble/as.xbots_1.0.jar | roborumble | robot | score-review | a84fbf62fb36b2a2 | - | - | -| roborumble/asd.Cthulhu_1.2.jar | roborumble | robot | PASS | 62a7416486d668ba | - | - | -| roborumble/asm.Statistas_0.1.jar | roborumble | robot | PASS | 1f68932ec9132d3a | - | - | -| roborumble/awl.Locutus_1.5.jar | roborumble | robot | PASS | 044a09527daed943 | - | - | -| roborumble/axeBots.HataMoto_3.09.jar | roborumble | robot | PASS | f3c9ed411fa769b7 | - | - | -| roborumble/axeBots.Musashi_2.18.jar | roborumble | robot | PASS | d96c381e473a9e9f | - | - | -| roborumble/axeBots.Okami_1.04.jar | roborumble | robot | PASS | 74bce683db58a4ec | - | - | -| roborumble/axeBots.SilverSurfer_2.53.33fix.jar | roborumble | robot | PASS | 9b6fc48236f56191 | - | - | -| roborumble/ayk.WallHugger_1.0.jar | roborumble | robot | PASS | 7d779898eaf34726 | - | - | -| roborumble/az.Ololobot_0.2.4.jar | roborumble | robot | FAIL (TR) | 5cf402dd473c1227 | - | - | -| roborumble/banshee.micro.Nexus6_0.3.0.jar | roborumble | robot | PASS | 0cf456b6f9cb9978 | - | - | -| roborumble/banshee.mini.Nexus6_0.2.0.jar | roborumble | robot | PASS | d4cda9b611b80d04 | - | - | -| roborumble/barontrozo.BaronTrozo_1.7.6.jar | roborumble | robot | PASS | 004179d3a54b0e5a | - | - | -| roborumble/bayen.UbaMicro_1.4.jar | roborumble | robot | PASS | 26edca5dc7a5d68a | - | - | -| roborumble/bayen.UbaRamLT_1.0.jar | roborumble | robot | score-review | 13b1bb4843e9815b | - | - | -| roborumble/bayen.nano.Squirrel_0.2.jar | roborumble | robot | PASS | 6fcfbf55b4d8ff5c | - | - | -| roborumble/bayen.nut.Squirrel_1.621.jar | roborumble | robot | score-review | 517b1c7cec309414 | - | - | -| roborumble/bbo.RamboT_0.3.jar | roborumble | robot | PASS | df99f8a1d6c00d7e | - | - | -| roborumble/bbo.TheRoof_1.4.3.jar | roborumble | robot | PASS | 39adaf77fb8fca87 | - | - | -| roborumble/benhorner.PureAggression_0.2.6.jar | roborumble | robot | PASS | ca5a8e78cc56d369 | - | - | -| roborumble/bigpete.Stewie_1.0.jar | roborumble | robot | PASS | e8b293a979c1c0b4 | - | - | -| roborumble/bing2.Melody_1.3.1.jar | roborumble | robot | score-review | 6d5c62b55bd1282c | - | - | -| roborumble/bjl.LoneDragon_0.5.jar | roborumble | robot | PASS | b407ed4b3237d3e7 | - | - | -| roborumble/bk.Shooter_1.0.jar | roborumble | robot | score-review | 17eb9124acd74e55 | - | - | -| roborumble/blir.micro.blixi.Blixi_1.2.jar | roborumble | robot | score-review | 32ac2de21087f5bd | - | - | -| roborumble/blir.mini.oops.Splooshlu_2.0.jar | roborumble | robot | PASS | 9d2209ef822252f0 | - | - | -| roborumble/blir.nano.Bruce_R1.0.0.jar | roborumble | robot | PASS | e98608d4efb99503 | - | - | -| roborumble/blir.nano.Cabbage_R1.0.1.jar | roborumble | robot | score-review | 14e36192003c6140 | - | - | -| roborumble/blir.nano.inch.Inchworm_1.0.jar | roborumble | robot | PASS | 7bd4cdf08768932e | - | - | -| roborumble/blr.Chicken001_0.1.jar | roborumble | robot | PASS | fa1b7716484381ca | - | - | -| roborumble/bndl.LostLion_1.2.jar | roborumble | robot | PASS | 1a29913b8f87ac3a | - | - | -| roborumble/boe.Minerva_0.80.jar | roborumble | robot | PASS | 8205a7ec0f3730f8 | - | - | -| roborumble/bons.NanoStalker_1.2.jar | roborumble | robot | score-review | 73559040c308ecc0 | - | - | -| roborumble/bots.UberBot_1.2c.jar | roborumble | robot | PASS | 258737685abd4504 | - | - | -| roborumble/bots.UnterBot_1.0.jar | roborumble | robot | score-review | a57b9c4d5a68c0e3 | - | - | -| roborumble/bots.UnterExBot_1.0.jar | roborumble | robot | score-review | 0eeef9f8e9a05217 | - | - | -| roborumble/bp.Kuma_1.0.jar | roborumble | robot | score-review | a5efd143dba4df0f | - | - | -| roborumble/braaropolis.Abot_1.0.jar | roborumble | robot | score-review | 36610aff4c63ca29 | - | - | -| roborumble/brainfade.Fallen_0.63.jar | roborumble | robot | PASS | cfd838bd46fc2f16 | - | - | -| roborumble/brainfade.melee.Dusk_0.44.jar | roborumble | robot | PASS | c24d76413b604bbc | - | - | -| roborumble/bts.mega.Gnarly_1.4.jar | roborumble | robot | PASS | ea1a4d3c629039e8 | - | - | -| roborumble/bts.wiki.RipCurl_0.9b.jar | roborumble | robot | FAIL (TR) | 0b71b2a50f905e18 | - | - | -| roborumble/buba.Archivist_0.1.jar | roborumble | robot | PASS | d18c23f855ed3f66 | - | - | -| roborumble/buba.Buba_0.3.jar | roborumble | robot | PASS | 92de0a656f602dca | - | - | -| roborumble/bumblebee.Bumblebee_1.0.jar | roborumble | robot | PASS | 684d3891682e1261 | - | - | -| roborumble/bvh.fnr.Fenrir_0.36l.jar | roborumble | robot | PASS | c42dcc45e38dcd92 | - | - | -| roborumble/bvh.frg.Friga_0.112dev.jar | roborumble | robot | PASS | 2c64749929672cae | - | - | -| roborumble/bvh.fry.Freya_0.82.jar | roborumble | robot | FAIL (TR) | d32b1f5ce3e25f80 | - | - | -| roborumble/bvh.hdr.Hodur_0.4.jar | roborumble | robot | score-review | bc89209e78a077fc | - | - | -| roborumble/bvh.loki.Loki_0.5.jar | roborumble | robot | score-review | c679e09780c18a52 | - | - | -| roborumble/bvh.micro.Freya_0.3.jar | roborumble | robot | PASS | 2f1498ceffdac7e0 | - | - | -| roborumble/bvh.micro.Svadilfari_0.2.jar | roborumble | robot | PASS | 4dadfc08d52161ce | - | - | -| roborumble/bvh.mini.Fenrir_0.39.jar | roborumble | robot | PASS | ff57f8cea1909f17 | - | - | -| roborumble/bvh.mini.Freya_0.55.jar | roborumble | robot | PASS | 815497cd00aa57b0 | - | - | -| roborumble/bvh.mini.Mjolnir_0.3.jar | roborumble | robot | score-review | 3d1c3e239d06d795 | - | - | -| roborumble/bvh.mini.Wodan_0.50.jar | roborumble | robot | PASS | d89e8a196146f1ec | - | - | -| roborumble/bvh.tyr.Tyr_1.74.jar | roborumble | robot | PASS | f40bad8a5aff304f | - | - | -| roborumble/bwbaugh.nano.Tirunculus_0.0.0a.jar | roborumble | robot | score-review | b935555308fc01c3 | - | - | -| roborumble/bzdp.BoxCar_2.0.jar | roborumble | robot | PASS | 67c108afb1e67978 | - | - | -| roborumble/bzdp.Pansy_2.1.jar | roborumble | robot | PASS | a96b223336b776df | - | - | -| roborumble/caimano.Furia_Ceca_0.22.jar | roborumble | robot | score-review | 99d4763f956857c8 | - | - | -| roborumble/casey.Flee_1.0.jar | roborumble | robot | PASS | ad19841f89469280 | - | - | -| roborumble/cb.Domogled_1.2.jar | roborumble | robot | FAIL (TR) | ab4a97816c447d60 | - | - | -| roborumble/cb.fire.Firestarter_2.0f.jar | roborumble | robot | FAIL (TR) | 2002e30ad998c641 | - | - | -| roborumble/cb.mega.RandomBot_1.0.jar | roborumble | robot | FAIL (TR) | 55bade0feb6ac865 | - | - | -| roborumble/cb.nano.Insomnia_1.0.jar | roborumble | robot | PASS | 997241f811003c48 | - | - | -| roborumble/cbot.agile.Nibbler_0.2.jar | roborumble | robot | score-review | 50feb7c195d9d53e | - | - | -| roborumble/cbot.cbot.CBot_0.8.jar | roborumble | robot | FAIL (TR) | 7337304cd84cf9c0 | - | - | -| roborumble/cf.OldMan.OldManXP_0.1.jar | roborumble | robot | PASS | f54923f1b67ca9f0 | - | - | -| roborumble/cf.mini.Chiva_1.0.jar | roborumble | robot | PASS | 336aaa29d4d4cb86 | - | - | -| roborumble/cf.proto.Shiva_2.2.jar | roborumble | robot | PASS | 92716decc58e938d | - | - | -| roborumble/cf.star.Star2_1.23.jar | roborumble | robot | PASS | 8c06e2125b4e11c4 | - | - | -| roborumble/ch.rhj.rbc.RHJ1_1.0.jar | roborumble | robot | PASS | 09fc48a0219093cf | - | - | -| roborumble/chase.pm.Pytko_1.0.jar | roborumble | robot | PASS | 5621c60c56abe7ae | - | - | -| roborumble/chickenfuego.UrChicken2_1.0.jar | roborumble | robot | PASS | ac7ec21a2a822b4f | - | - | -| roborumble/cjk.Merkava_0.1.1.jar | roborumble | robot | PASS | ca8bad284ef8d30e | - | - | -| roborumble/cjm.Che_1.2.jar | roborumble | robot | PASS | 30b3c8b16bb49f75 | - | - | -| roborumble/cli.Dancer_1.1.jar | roborumble | robot | PASS | 75019a166932d5c2 | - | - | -| roborumble/cli.WasteOfAmmo_1.0.jar | roborumble | robot | DISCREPANCY (no score) | ad72f39287f5b880 | - | - | -| roborumble/codemojo.nano.Woot_1.0.jar | roborumble | robot | PASS | ec2f186e76fabdbc | - | - | -| roborumble/com.arsenic.NewTest_1.0.jar | roborumble | robot | PASS | bec9ffc1e65a95d1 | - | - | -| roborumble/com.blogspot.malinkody.DestrobotMalin_1.0.jar | roborumble | robot | score-review | 41f11a8de1bd0c5b | - | - | -| roborumble/com.cohesiva.robocode.ManOwaR_1.0.jar | roborumble | robot | PASS | b68f0a69b507a3fe | - | - | -| roborumble/com.sociesc.T1000_1.0.0.jar | roborumble | robot | DISCREPANCY (no score) | c50ef80274e4a320 | - | - | -| roborumble/com.spp.robocode.MostlyHarmless_010.jar | roborumble | robot | PASS | 7f12b894b7bb568c | - | - | -| roborumble/com.syncleus.robocode.Dreadnaught_0.1.jar | roborumble | robot | PASS | f963f02cb575c278 | - | - | -| roborumble/com.timothyveletta.FuzzyBot_1.1.jar | roborumble | robot | PASS | f3979e1d91165e7b | - | - | -| roborumble/conscience.Bulldozer_1.0a.jar | roborumble | robot | score-review | 34ee10313f50e735 | - | - | -| roborumble/conscience.Electron_1.3g.jar | roborumble | robot | PASS | 60e25212f69814cd | - | - | -| roborumble/conscience.Idem_1.0a.jar | roborumble | robot | PASS | 2c5f75820a136af0 | - | - | -| roborumble/conscience.Suicidal_1.1.jar | roborumble | robot | DISCREPANCY (no score) | 126c32b41d68f5f3 | - | - | -| roborumble/cre.Karolos_0.32.jar | roborumble | robot | FAIL (TR) | 0c5b559772cf4ee1 | - | - | -| roborumble/cs.Nene_1.0.5.jar | roborumble | robot | score-review | 77f6703bbf53891a | - | - | -| roborumble/cs.PumpkinPie_1.0.jar | roborumble | robot | PASS | 90e4313a94769aff | - | - | -| roborumble/cs.Wren_1.0.jar | roborumble | robot | PASS | c9973e9dd44d5919 | - | - | -| roborumble/cs.s2.Seraphim_2.3.1.jar | roborumble | robot | PASS | de2ae85b37c1610b | - | - | -| roborumble/csm.NthGeneration_0.04.jar | roborumble | robot | PASS | e8bab6b8456b7c4a | - | - | -| roborumble/csp.Eagle_3.30.jar | roborumble | robot | score-review | e0122d77dc924a71 | - | - | -| roborumble/css.Delitioner_0.11.jar | roborumble | robot | PASS | 9bf3a4bffbd5125f | - | - | -| roborumble/cuoq.Kakera_1.0.jar | roborumble | robot | PASS | 99a4b47c6b169333 | - | - | -| roborumble/cw.megas.Blade_0.8.jar | roborumble | robot | FAIL (TR) | 8fd749571b62d83f | - | - | -| roborumble/cw.megas.GhostShell_GT.jar | roborumble | robot | PASS | 624c2e5957e9c806 | - | - | -| roborumble/cw.megas.Gridd_0.4.jar | roborumble | robot | PASS | b0e92913f32f5e4a | - | - | -| roborumble/cw.megas.Polar_3.2.jar | roborumble | robot | PASS | 275e5d14496de98c | - | - | -| roborumble/cw.megas.Silhouette_1.1.jar | roborumble | robot | PASS | c619f7cbb9bcea81 | - | - | -| roborumble/cx.BlestPain_1.41.jar | roborumble | robot | PASS | 33f8afb939371ae3 | - | - | -| roborumble/cx.CigaretBH_1.03.jar | roborumble | robot | PASS | 1677b2a1b4827612 | - | - | -| roborumble/cx.Lacrimas_1.36.jar | roborumble | robot | PASS | 20139227a27029e4 | - | - | -| roborumble/cx.Princess_1.0.jar | roborumble | robot | PASS | ee8fec5f1ac10af9 | - | - | -| roborumble/cx.micro.Blur_0.2.jar | roborumble | robot | FAIL (TR) | cf57283fe7c065c6 | - | - | -| roborumble/cx.micro.Smoke_0.96.jar | roborumble | robot | PASS | d0ce3ae37d563131 | - | - | -| roborumble/cx.micro.Spark_0.6.jar | roborumble | robot | score-review | 4a48d9ed154a3163 | - | - | -| roborumble/cx.mini.BlackSwans_0.60.jar | roborumble | robot | PASS | 6b425d3c251fa7bc | - | - | -| roborumble/cx.mini.Cigaret_1.31.jar | roborumble | robot | PASS | 8547c53305c88bf5 | - | - | -| roborumble/cx.mini.Nimrod_0.55.jar | roborumble | robot | score-review | 13e1779cf8e10822 | - | - | -| roborumble/cx.nano.Smog_2.6.jar | roborumble | robot | score-review | c37a0d6ebee94fdf | - | - | -| roborumble/cyragia.Bot_1.1.jar | roborumble | robot | PASS | 962c336578cde35f | - | - | -| roborumble/da.NewBGank_1.4.jar | roborumble | robot | score-review | a25291b7dea73bfb | - | - | -| roborumble/daemons.DizzyA_1.0.jar | roborumble | robot | score-review | 4fb778b08e7b30a5 | - | - | -| roborumble/dam.MogBot_2.9.jar | roborumble | robot | FAIL (TR) | d949ac75405a14c5 | - | - | -| roborumble/dans.Cinnamon_1.2.jar | roborumble | robot | score-review | 4396cf2704a52d50 | - | - | -| roborumble/darkcanuck.Gaff_1.50.jar | roborumble | robot | FAIL (TR) | 970cb17042cd15f3 | - | - | -| roborumble/darkcanuck.Holden_1.13a.jar | roborumble | robot | FAIL (TR) | 3e764de13ff9996b | - | - | -| roborumble/darkcanuck.Pris_0.92.jar | roborumble | robot | FAIL (TR) | a1c846f8e60831ac | - | - | -| roborumble/davidalves.Firebird_0.25.jar | roborumble | robot | PASS | fae39438b7bb4d8a | - | - | -| roborumble/davidalves.PhoenixOS_1.1.jar | roborumble | robot | FAIL (TR) | 8f13036b4836dcbf | - | - | -| roborumble/davidalves.Phoenix_1.02.jar | roborumble | robot | PASS | 8abd22893c0c806b | - | - | -| roborumble/davidalves.net.DuelistMicroMkII_1.1.jar | roborumble | robot | score-review | 34cf1f962dcb1bcd | - | - | -| roborumble/davidalves.net.DuelistMicro_1.22.jar | roborumble | robot | score-review | 4d34a6e0b2152b18 | - | - | -| roborumble/davidalves.net.DuelistMini_1.1.jar | roborumble | robot | PASS | 6fb819cdb10fc868 | - | - | -| roborumble/davidalves.net.DuelistNano_1.0.jar | roborumble | robot | PASS | eeb33d1a7dbabc53 | - | - | -| roborumble/davidalves.net.Duelist_0.1.6src.jar | roborumble | robot | PASS | da9c6f4187b20af6 | - | - | -| roborumble/davv.DOne_b002.jar | roborumble | robot | score-review | 8948876072cf5515 | - | - | -| roborumble/dcs.Eater_of_Worlds_1.1.3-A.jar | roborumble | robot | PASS | acfc2f677316f7a1 | - | - | -| roborumble/dcs.Eater_of_Worlds_Mini_1.0.jar | roborumble | robot | PASS | aa8ea784d11f187f | - | - | -| roborumble/dcs.PM.Eater_of_Worlds_PM_1.2.jar | roborumble | robot | score-review | ff977f89ff8c2e6b | - | - | -| roborumble/de.erdega.robocode.Polyphemos_0.4.jar | roborumble | robot | score-review | 2b4de671d6c6e4bf | - | - | -| roborumble/de.simpleworks.robocode.bots.swiBot_1.0.jar | roborumble | robot | PASS | 8a7446289797b1b0 | - | - | -| roborumble/deith.Czolgzilla_0.11.jar | roborumble | robot | PASS | 08cef06b36787464 | - | - | -| roborumble/demetrix.ForceMajeure_0.75.jar | roborumble | robot | PASS | bbf69d95d8f28b8f | - | - | -| roborumble/demetrix.nano.Neutrino_0.27.jar | roborumble | robot | PASS | c87a4b8d228674d0 | - | - | -| roborumble/demetrix.nano.SledgeHammer_0.22.jar | roborumble | robot | score-review | 804cc154798fef47 | - | - | -| roborumble/deo.CloudBot_1.3.jar | roborumble | robot | score-review | 78bba33b96e662cd | - | - | -| roborumble/deo.FlowerBot_1.0.jar | roborumble | robot | PASS | fc65e7d5693090d9 | - | - | -| roborumble/deo.virtual.RainbowBot_1.0.jar | roborumble | robot | score-review | 38ab74151e9be2ed | - | - | +| roborumble/AD.CodaFirst_1.1.jar | roborumble | robot | score-review | bf7472d00df944d2 | - | - | +| roborumble/AIR.iRobot_1.0.jar | roborumble | robot | PASS | 8cdfe3039b4b63e0 | - | - | +| roborumble/And.BasicSurfer_FF1.6.jar | roborumble | robot | PASS | 25437532193e134b | - | - | +| roborumble/ArchAlpha.ArchimedesAlpha_1.0.jar | roborumble | robot | DISCREPANCY (no score) | 0ecc7f5a72c1dac2 | - | - | +| roborumble/CharlieN.Omega.Omega_1.03.jar | roborumble | robot | PASS | 6c16b6ead3897593 | - | - | +| roborumble/DM.Capriite_3.7.2.jar | roborumble | robot | PASS | 63eec6535e7bcdb8 | - | - | +| roborumble/DM.Chicken_4.0.jar | roborumble | robot | score-review | f98b80f045eaa5ba | - | - | +| roborumble/DM.Mijit_.3.jar | roborumble | robot | score-review | 25e2318cd74f0417 | - | - | +| roborumble/DTF.Kludgy_1.2b.jar | roborumble | robot | PASS | a020ea383408d5e2 | - | - | +| roborumble/EBBU.Sim2_1.02.jar | roborumble | robot | score-review | 82308feb917d2c0a | - | - | +| roborumble/EE.LittleBig_1.0.jar | roborumble | robot | score-review | dd65d66b59ff8acb | - | - | +| roborumble/EFD.AdvancedEFD_0.4.5a.jar | roborumble | robot | PASS | 595afba07d52e536 | - | - | +| roborumble/EH.Fusion_0.32.jar | roborumble | robot | score-review | 96dd484b2b911c5d | - | - | +| roborumble/EH.Pegasus_0.113.jar | roborumble | robot | PASS | 2696bc59852c8d21 | - | - | +| roborumble/EH.kms.LightningStorm_0.11B.jar | roborumble | robot | PASS | 1ef751e58aaba9b3 | - | - | +| roborumble/EH.mini.Panther_0.2.jar | roborumble | robot | PASS | 871fe99089163f17 | - | - | +| roborumble/EH.nano.NightBird_M.jar | roborumble | robot | PASS | c796f14f9487fcd6 | - | - | +| roborumble/Ex.Survival_3.7.jar | roborumble | robot | MATCHED (failure) | 2221f19d53cb555a | - | - | +| roborumble/FatalFlaw.FatalFlaw_1.0.5.jar | roborumble | robot | MATCHED (failure) | eb875409279d0776 | - | - | +| roborumble/Fenix.FenixTrack_1.0.jar | roborumble | robot | MATCHED (failure) | b58617e0e3214317 | - | - | +| roborumble/Gecko.ultimateGeckoBot_1.0.jar | roborumble | robot | MATCHED (failure) | fc62b9d07f77cb43 | - | - | +| roborumble/Grystrion.RandomTrackerNOREV_1.0.jar | roborumble | robot | DISCREPANCY (no score) | a633af2142797af3 | - | - | +| roborumble/Grystrion.TrackerWO_1.0.jar | roborumble | robot | DISCREPANCY (no score) | ac36cf3c058f2c58 | - | - | +| roborumble/Heal.TekitokaBot_1.0.jar | roborumble | robot | PASS | 0c9e5c177bf4e9f4 | - | - | +| roborumble/ICS4U1.Patrick_White_Schrodinger_1.1.jar | roborumble | robot | PASS | 1bff846ea433bb4d | - | - | +| roborumble/KiraNL.Cataris_1.0.jar | roborumble | robot | PASS | bbdc8fb327126f89 | - | - | +| roborumble/KiraNL.ChupaLite_0.4.jar | roborumble | robot | PASS | ff15b24175432af1 | - | - | +| roborumble/KiraNL.Chupacabra_0.5.jar | roborumble | robot | PASS | 73beffa0841e520e | - | - | +| roborumble/KiraNL.SpaceKees_0.1.jar | roborumble | robot | PASS | 51a7d06b9bd85bee | - | - | +| roborumble/Krabb.fe4r.Fe4r_0.4.jar | roborumble | robot | PASS | 974a69b8c7986c2a | - | - | +| roborumble/Krabb.krabby.Krabby_1.18b.jar | roborumble | robot | PASS | 1f6ea5fdbb0c8d06 | - | - | +| roborumble/Krabb.sliNk.Garm_0.9u.jar | roborumble | robot | DISCREPANCY (outcome) | a51bebcb193de7f9 | - | - | +| roborumble/Legend.Biogon_1.5.jar | roborumble | robot | PASS | 182b54a548d2d2a1 | - | - | +| roborumble/Legend.BoulderZY_1.4.9.jar | roborumble | robot | PASS | 2bb7dd7a316d3f30 | - | - | +| roborumble/Legend.Qetro_1.6.jar | roborumble | robot | score-review | 198ccdef7a8da62a | - | - | +| roborumble/Legend.X_FireFly_1.3.jar | roborumble | robot | PASS | fdefe32978cfaead | - | - | +| roborumble/Lo_Ian.Gandalf_V4_4.0.jar | roborumble | robot | PASS | 8890f7a46ab1884b | - | - | +| roborumble/McS.Spanky_test_0.1a.jar | roborumble | robot | score-review | 97acd28e075752eb | - | - | +| roborumble/NDH.GuessFactor_1.0.jar | roborumble | robot | PASS | db031b6a71c48044 | - | - | +| roborumble/NG.LegatusLegionis_1.2.jar | roborumble | robot | PASS | e7e8907e9e62c644 | - | - | +| roborumble/Noran.BitchingElk_0.054.jar | roborumble | robot | score-review | 9d8e0d7d6484cf4e | - | - | +| roborumble/a.FreyaOS_1.0.jar | roborumble | robot | PASS | 9e1e7bb327ea3434 | - | - | +| roborumble/aaa.r.ScalarR_0.005h.053.jar | roborumble | robot | score-review | 7c97630f120460e2 | - | - | +| roborumble/ab.DengerousRoBatra_1.3.jar | roborumble | robot | PASS | b308807f77b31226 | - | - | +| roborumble/abud.ThirdRobo_1.0.jar | roborumble | robot | score-review | 04f683a09f60d02c | - | - | +| roborumble/acid.Bl4ck_1.0.jar | roborumble | robot | score-review | 910983132c52aca1 | - | - | +| roborumble/acid.Null_1.0.jar | roborumble | robot | PASS | 6653b72b8099b103 | - | - | +| roborumble/acid.Syzygy_1.0.4.jar | roborumble | robot | score-review | 08ce0a239cfd1fe9 | - | - | +| roborumble/ad.Quest_0.10.jar | roborumble | robot | PASS | ed5607f735d17e3f | - | - | +| roborumble/ad.last.Bottom_1.0.jar | roborumble | robot | PASS | e5b74746ffa765be | - | - | +| roborumble/adt.Ar1_2.1.jar | roborumble | robot | PASS | dc30e55fda4f71f3 | - | - | +| roborumble/adt.Ar2_1.0.jar | roborumble | robot | PASS | 50bd0c5dc7d1d237 | - | - | +| roborumble/aetos.AetosFirstBot_1.0.jar | roborumble | robot | PASS | fb18442d99e5c6e3 | - | - | +| roborumble/ag.Gir_0.99.jar | roborumble | robot | DISCREPANCY (outcome) | ecd7eb3ba841c2bb | - | - | +| roborumble/agd.Mooserwirt2_2.7.jar | roborumble | robot | score-review | 128d97164f6ee2be | - | - | +| roborumble/agrach.Dalek_1.0.jar | roborumble | robot | score-review | 201099c1c6bc733e | - | - | +| roborumble/agrach.MicroDalek_1.0.jar | roborumble | robot | PASS | 3406205b8980f6c5 | - | - | +| roborumble/agrach.RobotSlayer_1.0.jar | roborumble | robot | PASS | 91a43d1a02bcfa21 | - | - | +| roborumble/ags.Glacier_0.3.2.jar | roborumble | robot | score-review | 679d3bc94e9ff5e4 | - | - | +| roborumble/ags.Midboss_1q.fast.jar | roborumble | robot | PASS | 8fbe6c98e30835c0 | - | - | +| roborumble/ags.micro.Carpet_1.1.jar | roborumble | robot | PASS | 6558fc42dc0997e7 | - | - | +| roborumble/ags.polished.PolishedRuby_1.jar | roborumble | robot | score-review | 412e0d67086ec9c7 | - | - | +| roborumble/ags.rougedc.RougeDC_willow.jar | roborumble | robot | score-review | 253d1be0c6457917 | - | - | +| roborumble/ahf.Acero_1.0.jar | roborumble | robot | PASS | 80165f95df2a985d | - | - | +| roborumble/ahf.NanoAndrew_.4.jar | roborumble | robot | score-review | adf532334e8a79d3 | - | - | +| roborumble/ahf.r2d2.R2d2_0.86.jar | roborumble | robot | score-review | 1638eff4fd8ee776 | - | - | +| roborumble/ahr.ice.Ice_1.0.jar | roborumble | robot | PASS | 3a76f56e636e4829 | - | - | +| roborumble/ak.Fermat_2.0.jar | roborumble | robot | DISCREPANCY (outcome) | f0cf3c6272820446 | - | - | +| roborumble/alex.Diabolo5_1.1.jar | roborumble | robot | PASS | bf426b80c7e5c3f8 | - | - | +| roborumble/alk.lap.LoudAndProud_2.23.jar | roborumble | robot | PASS | c36eb610f9e6a0d7 | - | - | +| roborumble/am.Miedzix_3.0.jar | roborumble | robot | PASS | 32356b3362a6a0a9 | - | - | +| roborumble/amarok.Rookie_1.1.jar | roborumble | robot | PASS | c094847b79433e8f | - | - | +| roborumble/amc.ROBv202_1.01.jar | roborumble | robot | PASS | 39aea9433cd721c8 | - | - | +| roborumble/amc.ROBv203_1.0.jar | roborumble | robot | PASS | 2cc236c1d03f3e06 | - | - | +| roborumble/amc.ROBv300_1.1.jar | roborumble | robot | score-review | f9495f2dbd71e8f7 | - | - | +| roborumble/amc.ROBv301_1.1.jar | roborumble | robot | score-review | 17337652ea3548fe | - | - | +| roborumble/amc.ROBv400_1.0.jar | roborumble | robot | score-review | 045a5862fdac8d8a | - | - | +| roborumble/amk.ChumbaMini_0.2.jar | roborumble | robot | PASS | 05156dda8b04e557 | - | - | +| roborumble/amk.ChumbaWumba_0.3.jar | roborumble | robot | PASS | 4bffd0fc5046055a | - | - | +| roborumble/amk.Punbot.Punbot_0.01.jar | roborumble | robot | PASS | 5d74b515d19e7bd9 | - | - | +| roborumble/amk.ShizzleStiX.ShizzleStiX_0.6.jar | roborumble | robot | PASS | c618df752edf4a89 | - | - | +| roborumble/amk.jointstrike.JointStrike_0.2.jar | roborumble | robot | PASS | 921d60fa06a2d0d0 | - | - | +| roborumble/amk.superstrike.SuperStrike_0.3.jar | roborumble | robot | score-review | 3660875ea25882b0 | - | - | +| roborumble/ao.T100_0.9.jar | roborumble | robot | score-review | 9ef95c63d40b94a3 | - | - | +| roborumble/ap.Frederick_1.1.jar | roborumble | robot | score-review | 7b31b14ead78848b | - | - | +| roborumble/apc.Caan_1.0.jar | roborumble | robot | PASS | aabd00fd8b967bed | - | - | +| roborumble/apc.Colossus2_0.12.jar | roborumble | robot | DISCREPANCY (outcome) | 17f553f342c848ba | - | - | +| roborumble/apc.LeeroyJenkins2_1.0.jar | roborumble | robot | PASS | e8c0fd36dc3876f7 | - | - | +| roborumble/apc.botM_3.0.jar | roborumble | robot | PASS | a47d3ba08bb6086f | - | - | +| roborumble/apollokidd.ApolloKidd_0.9.jar | roborumble | robot | score-review | 5de5ad7ce505c6e1 | - | - | +| roborumble/apv.AspidReloaded_0.6.jar | roborumble | robot | PASS | 688a0cfa64404e92 | - | - | +| roborumble/apv.Aspid_1.7.jar | roborumble | robot | PASS | 77ebbfd405a05a87 | - | - | +| roborumble/apv.LauLectrik_1.2.jar | roborumble | robot | PASS | 2bc639b2fd4a5e1e | - | - | +| roborumble/apv.MicroAspid_1.8.jar | roborumble | robot | PASS | dc28c73552e12030 | - | - | +| roborumble/apv.NanoLauLectrikTheCannibal_1.1.jar | roborumble | robot | PASS | d4d54a7f0c4cca1f | - | - | +| roborumble/apv.NanoLauLectrik_1.0.jar | roborumble | robot | PASS | e99e4ba1fc2f5b9d | - | - | +| roborumble/apv.ScruchiPu_1.0.jar | roborumble | robot | PASS | 9d310b4632590234 | - | - | +| roborumble/apv.TheBrainPi_0.5fix.jar | roborumble | robot | PASS | 08e656dab9c01ad6 | - | - | +| roborumble/apv.test.Virus_0.6.1.jar | roborumble | robot | PASS | 8f66f63fe3488646 | - | - | +| roborumble/ar.QuantumChromodynamics_1.2.1.jar | roborumble | robot | PASS | 5a42afc5493f80c3 | - | - | +| roborumble/ar.TheoryOfEverything_1.2.1.jar | roborumble | robot | PASS | dfa914ac6eb69f9a | - | - | +| roborumble/ar.horizon.Horizon_1.2.2.jar | roborumble | robot | DISCREPANCY (outcome) | c2c7049ebf260676 | - | - | +| roborumble/ara.Shera_0.88.jar | roborumble | robot | PASS | e29ee3195aab9bde | - | - | +| roborumble/areb.Union_1.06.jar | roborumble | robot | PASS | 2f50bd8d2633f8ee | - | - | +| roborumble/arthord.KostyaTszyu_Beta2.jar | roborumble | robot | PASS | 7f550a50c453aa2f | - | - | +| roborumble/arthord.NanoSatanMelee_Beta.jar | roborumble | robot | PASS | 30a57ba1dde53f1c | - | - | +| roborumble/arthord.NanoSatan_Mu.jar | roborumble | robot | PASS | 98d37c469c94e71c | - | - | +| roborumble/arthord.micro.Apoptygma_0.4.jar | roborumble | robot | PASS | fcb58e94a0c3caa6 | - | - | +| roborumble/arthord.micro.Muffin_0.6.1.jar | roborumble | robot | score-review | 8fb3298c3a00ca19 | - | - | +| roborumble/ary.Crisis_1.0.jar | roborumble | robot | PASS | 49c18c2ef7546001 | - | - | +| roborumble/ary.FourWD_1.3d.jar | roborumble | robot | DISCREPANCY (errors) | 7b2b652b5bb199c0 | - | - | +| roborumble/ary.Help_1.0.jar | roborumble | robot | DISCREPANCY (outcome) | 3e13e72d5b4a27ae | - | - | +| roborumble/ary.SMG_1.01.jar | roborumble | robot | PASS | 65f473a89338e12c | - | - | +| roborumble/ary.micro.Weak_1.2.jar | roborumble | robot | PASS | d78349c330daf18b | - | - | +| roborumble/ary.mini.Nimi_1.0.jar | roborumble | robot | PASS | 4966fdf0a4ba6ee7 | - | - | +| roborumble/ary.nano.AceSurf_1.2.jar | roborumble | robot | PASS | b559364dc3bed001 | - | - | +| roborumble/ary.nano.ColorNanoP_1.1.jar | roborumble | robot | PASS | 4191bf3cb5bc4b66 | - | - | +| roborumble/as.xbots_1.0.jar | roborumble | robot | score-review | 533a30f3b2272199 | - | - | +| roborumble/asd.Cthulhu_1.2.jar | roborumble | robot | PASS | 1d42acb3db0ccb77 | - | - | +| roborumble/asm.Statistas_0.1.jar | roborumble | robot | PASS | 352c974a6d94c789 | - | - | +| roborumble/awl.Locutus_1.5.jar | roborumble | robot | PASS | 10f460339be51bf0 | - | - | +| roborumble/axeBots.HataMoto_3.09.jar | roborumble | robot | PASS | f9cf536953c45a91 | - | - | +| roborumble/axeBots.Musashi_2.18.jar | roborumble | robot | PASS | 40e7f2ea2300c8f4 | - | - | +| roborumble/axeBots.Okami_1.04.jar | roborumble | robot | DISCREPANCY (errors) | cf091ab89a700f92 | - | - | +| roborumble/axeBots.SilverSurfer_2.53.33fix.jar | roborumble | robot | PASS | 38162854ee54a334 | - | - | +| roborumble/ayk.WallHugger_1.0.jar | roborumble | robot | PASS | 630f1c58f42bbb9d | - | - | +| roborumble/az.Ololobot_0.2.4.jar | roborumble | robot | DISCREPANCY (outcome) | 90ed0c87e0e6d487 | - | - | +| roborumble/banshee.micro.Nexus6_0.3.0.jar | roborumble | robot | PASS | adcebd2fb3e2312d | - | - | +| roborumble/banshee.mini.Nexus6_0.2.0.jar | roborumble | robot | PASS | 0cf3d7725dede5d5 | - | - | +| roborumble/barontrozo.BaronTrozo_1.7.6.jar | roborumble | robot | PASS | b2c5048162694f75 | - | - | +| roborumble/bayen.UbaMicro_1.4.jar | roborumble | robot | PASS | e3cdf960bfb9afc4 | - | - | +| roborumble/bayen.UbaRamLT_1.0.jar | roborumble | robot | score-review | 34a30695ece53fb7 | - | - | +| roborumble/bayen.nano.Squirrel_0.2.jar | roborumble | robot | PASS | 2f9eb4f23c454774 | - | - | +| roborumble/bayen.nut.Squirrel_1.621.jar | roborumble | robot | score-review | 5853982276128593 | - | - | +| roborumble/bbo.RamboT_0.3.jar | roborumble | robot | score-review | aca48d105b06bcde | - | - | +| roborumble/bbo.TheRoof_1.4.3.jar | roborumble | robot | PASS | 48c972a2d69181bf | - | - | +| roborumble/benhorner.PureAggression_0.2.6.jar | roborumble | robot | PASS | cda71b473b262cf3 | - | - | +| roborumble/bigpete.Stewie_1.0.jar | roborumble | robot | PASS | 8d781fc673893f81 | - | - | +| roborumble/bing2.Melody_1.3.1.jar | roborumble | robot | score-review | 5b3b35ee945403ba | - | - | +| roborumble/bjl.LoneDragon_0.5.jar | roborumble | robot | PASS | 6c6d91b59c2d4dae | - | - | +| roborumble/bk.Shooter_1.0.jar | roborumble | robot | score-review | 81e101672cb7f9c8 | - | - | +| roborumble/blir.micro.blixi.Blixi_1.2.jar | roborumble | robot | PASS | 6e0ffccdcd38fada | - | - | +| roborumble/blir.mini.oops.Splooshlu_2.0.jar | roborumble | robot | PASS | 1b2a4d6c4330ef36 | - | - | +| roborumble/blir.nano.Bruce_R1.0.0.jar | roborumble | robot | PASS | 1842fd1571b0c43b | - | - | +| roborumble/blir.nano.Cabbage_R1.0.1.jar | roborumble | robot | score-review | 242021032b8974e3 | - | - | +| roborumble/blir.nano.inch.Inchworm_1.0.jar | roborumble | robot | PASS | 7f8e4239129f32f8 | - | - | +| roborumble/blr.Chicken001_0.1.jar | roborumble | robot | PASS | b36bd24ea7cdd125 | - | - | +| roborumble/bndl.LostLion_1.2.jar | roborumble | robot | PASS | fad1a48dcb20e058 | - | - | +| roborumble/boe.Minerva_0.80.jar | roborumble | robot | DISCREPANCY (outcome) | 06462108430f485c | - | - | +| roborumble/bons.NanoStalker_1.2.jar | roborumble | robot | score-review | 7fa967a48b2bdaa3 | - | - | +| roborumble/bots.UberBot_1.2c.jar | roborumble | robot | PASS | 72dbc427c019d828 | - | - | +| roborumble/bots.UnterBot_1.0.jar | roborumble | robot | PASS | 0e8217b8963172d1 | - | - | +| roborumble/bots.UnterExBot_1.0.jar | roborumble | robot | PASS | b21f0e7cab8945cc | - | - | +| roborumble/bp.Kuma_1.0.jar | roborumble | robot | score-review | 85f7f94a56f0d1c2 | - | - | +| roborumble/braaropolis.Abot_1.0.jar | roborumble | robot | PASS | a2df55df8d971459 | - | - | +| roborumble/brainfade.Fallen_0.63.jar | roborumble | robot | PASS | e28628d85d0c4a56 | - | - | +| roborumble/brainfade.melee.Dusk_0.44.jar | roborumble | robot | PASS | f8ee020df517510f | - | - | +| roborumble/bts.mega.Gnarly_1.4.jar | roborumble | robot | PASS | 867182c105c432de | - | - | +| roborumble/bts.wiki.RipCurl_0.9b.jar | roborumble | robot | DISCREPANCY (outcome) | 1a37177249ebafea | - | - | +| roborumble/buba.Archivist_0.1.jar | roborumble | robot | PASS | aa1f6c80b995d2cc | - | - | +| roborumble/buba.Buba_0.3.jar | roborumble | robot | PASS | 224194e7fcdb5495 | - | - | +| roborumble/bumblebee.Bumblebee_1.0.jar | roborumble | robot | PASS | 43be93c102edd078 | - | - | +| roborumble/bvh.fnr.Fenrir_0.36l.jar | roborumble | robot | PASS | b4921a3482058324 | - | - | +| roborumble/bvh.frg.Friga_0.112dev.jar | roborumble | robot | PASS | 76fc12ecb24aaeda | - | - | +| roborumble/bvh.fry.Freya_0.82.jar | roborumble | robot | DISCREPANCY (outcome) | d085ccd0fda17438 | - | - | +| roborumble/bvh.hdr.Hodur_0.4.jar | roborumble | robot | score-review | 8a25b46b587e2378 | - | - | +| roborumble/bvh.loki.Loki_0.5.jar | roborumble | robot | score-review | baababf4d63efaf4 | - | - | +| roborumble/bvh.micro.Freya_0.3.jar | roborumble | robot | PASS | cb8ffc8035b0b113 | - | - | +| roborumble/bvh.micro.Svadilfari_0.2.jar | roborumble | robot | PASS | 31e4d17c67a09cf7 | - | - | +| roborumble/bvh.mini.Fenrir_0.39.jar | roborumble | robot | PASS | a6a855c07fd9da46 | - | - | +| roborumble/bvh.mini.Freya_0.55.jar | roborumble | robot | PASS | faff76b00952488f | - | - | +| roborumble/bvh.mini.Mjolnir_0.3.jar | roborumble | robot | PASS | b8b6ef9147eb54d2 | - | - | +| roborumble/bvh.mini.Wodan_0.50.jar | roborumble | robot | PASS | ca182a611e34db8e | - | - | +| roborumble/bvh.tyr.Tyr_1.74.jar | roborumble | robot | PASS | 5b1f84ee29ac481a | - | - | +| roborumble/bwbaugh.nano.Tirunculus_0.0.0a.jar | roborumble | robot | score-review | 065a07920f011446 | - | - | +| roborumble/bzdp.BoxCar_2.0.jar | roborumble | robot | PASS | 158dc02a97104f42 | - | - | +| roborumble/bzdp.Pansy_2.1.jar | roborumble | robot | PASS | e5ecc6fe604d60b8 | - | - | +| roborumble/caimano.Furia_Ceca_0.22.jar | roborumble | robot | score-review | 4d5dd0574032c7bf | - | - | +| roborumble/casey.Flee_1.0.jar | roborumble | robot | PASS | a68f7fbc62aef405 | - | - | +| roborumble/cb.Domogled_1.2.jar | roborumble | robot | DISCREPANCY (outcome) | 5447e9339db7eccd | - | - | +| roborumble/cb.fire.Firestarter_2.0f.jar | roborumble | robot | DISCREPANCY (outcome) | 89623ea5edf609f2 | - | - | +| roborumble/cb.mega.RandomBot_1.0.jar | roborumble | robot | DISCREPANCY (outcome) | 9f919c351f22baa4 | - | - | +| roborumble/cb.nano.Insomnia_1.0.jar | roborumble | robot | score-review | 2b65230e01814b28 | - | - | +| roborumble/cbot.agile.Nibbler_0.2.jar | roborumble | robot | DISCREPANCY (errors) | a743104b456df95b | - | - | +| roborumble/cbot.cbot.CBot_0.8.jar | roborumble | robot | PASS | 72304543581f9b7b | - | - | +| roborumble/cf.OldMan.OldManXP_0.1.jar | roborumble | robot | PASS | 9ee75157b4ba10a1 | - | - | +| roborumble/cf.mini.Chiva_1.0.jar | roborumble | robot | PASS | 81ca35e884bdda0d | - | - | +| roborumble/cf.proto.Shiva_2.2.jar | roborumble | robot | PASS | 982c54f11f7bf862 | - | - | +| roborumble/cf.star.Star2_1.23.jar | roborumble | robot | PASS | f7ffd0788cc90587 | - | - | +| roborumble/ch.rhj.rbc.RHJ1_1.0.jar | roborumble | robot | PASS | 01de6468fb9276c1 | - | - | +| roborumble/chase.pm.Pytko_1.0.jar | roborumble | robot | PASS | f3341a46358cb3a8 | - | - | +| roborumble/chickenfuego.UrChicken2_1.0.jar | roborumble | robot | score-review | 728bbeb46f532bf2 | - | - | +| roborumble/cjk.Merkava_0.1.1.jar | roborumble | robot | PASS | 56e7d8dd5c969372 | - | - | +| roborumble/cjm.Che_1.2.jar | roborumble | robot | PASS | 08e3ebbb8e8cafec | - | - | +| roborumble/cli.Dancer_1.1.jar | roborumble | robot | PASS | 76d6527ba565e6e8 | - | - | +| roborumble/cli.WasteOfAmmo_1.0.jar | roborumble | robot | DISCREPANCY (no score) | 2f903f1fb948749b | - | - | +| roborumble/codemojo.nano.Woot_1.0.jar | roborumble | robot | PASS | 7b75c4d17e30213b | - | - | +| roborumble/com.arsenic.NewTest_1.0.jar | roborumble | robot | DISCREPANCY (errors) | d6d74c72cf5e95ab | - | - | +| roborumble/com.blogspot.malinkody.DestrobotMalin_1.0.jar | roborumble | robot | score-review | 5150f5d9febe75e6 | - | - | +| roborumble/com.cohesiva.robocode.ManOwaR_1.0.jar | roborumble | robot | PASS | 12786f49002d3554 | - | - | +| roborumble/com.sociesc.T1000_1.0.0.jar | roborumble | robot | score-review | 0f2d5c4b9089dfeb | - | - | +| roborumble/com.spp.robocode.MostlyHarmless_010.jar | roborumble | robot | PASS | bf9624b1e5be7364 | - | - | +| roborumble/com.syncleus.robocode.Dreadnaught_0.1.jar | roborumble | robot | PASS | 74e041fd9d303f18 | - | - | +| roborumble/com.timothyveletta.FuzzyBot_1.1.jar | roborumble | robot | PASS | 2725e155384329ea | - | - | +| roborumble/conscience.Bulldozer_1.0a.jar | roborumble | robot | score-review | d7ba964e4e43901c | - | - | +| roborumble/conscience.Electron_1.3g.jar | roborumble | robot | PASS | 19908c53a430749d | - | - | +| roborumble/conscience.Idem_1.0a.jar | roborumble | robot | score-review | eb8ec45277d96dfd | - | - | +| roborumble/conscience.Suicidal_1.1.jar | roborumble | robot | DISCREPANCY (no score) | a392eb662de14448 | - | - | +| roborumble/cre.Karolos_0.32.jar | roborumble | robot | DISCREPANCY (outcome) | 7bb15adf1502a23c | - | - | +| roborumble/cs.Nene_1.0.5.jar | roborumble | robot | score-review | 0beaabd2346d9730 | - | - | +| roborumble/cs.PumpkinPie_1.0.jar | roborumble | robot | PASS | c725fb8efdc81773 | - | - | +| roborumble/cs.Wren_1.0.jar | roborumble | robot | PASS | 038056ec38361bd3 | - | - | +| roborumble/cs.s2.Seraphim_2.3.1.jar | roborumble | robot | PASS | ea63d4fa2eac6c25 | - | - | +| roborumble/csm.NthGeneration_0.04.jar | roborumble | robot | PASS | f513f892fcf3c5dc | - | - | +| roborumble/csp.Eagle_3.30.jar | roborumble | robot | score-review | f1344f1c2958947d | - | - | +| roborumble/css.Delitioner_0.11.jar | roborumble | robot | PASS | 5011f2da71d38328 | - | - | +| roborumble/cuoq.Kakera_1.0.jar | roborumble | robot | PASS | 24bb72dfc648f37c | - | - | +| roborumble/cw.megas.Blade_0.8.jar | roborumble | robot | DISCREPANCY (errors) | 4aaeb14f0d7fe7cd | - | - | +| roborumble/cw.megas.GhostShell_GT.jar | roborumble | robot | DISCREPANCY (outcome) | cebc69d8bb954e71 | - | - | +| roborumble/cw.megas.Gridd_0.4.jar | roborumble | robot | PASS | 6f34f6ef130995c8 | - | - | +| roborumble/cw.megas.Polar_3.2.jar | roborumble | robot | DISCREPANCY (outcome) | 35a21885ebf299e0 | - | - | +| roborumble/cw.megas.Silhouette_1.1.jar | roborumble | robot | PASS | 25c5e3c9db55e253 | - | - | +| roborumble/cx.BlestPain_1.41.jar | roborumble | robot | PASS | f0e3210c128d5c6c | - | - | +| roborumble/cx.CigaretBH_1.03.jar | roborumble | robot | PASS | b3f0624de06e9e36 | - | - | +| roborumble/cx.Lacrimas_1.36.jar | roborumble | robot | PASS | 539ae590fae08967 | - | - | +| roborumble/cx.Princess_1.0.jar | roborumble | robot | PASS | 5d92f19933b9dea0 | - | - | +| roborumble/cx.micro.Blur_0.2.jar | roborumble | robot | score-review | e0eb72591fc796b8 | - | - | +| roborumble/cx.micro.Smoke_0.96.jar | roborumble | robot | PASS | 22c757bf2c791a1c | - | - | +| roborumble/cx.micro.Spark_0.6.jar | roborumble | robot | score-review | 33b8c433861acbd1 | - | - | +| roborumble/cx.mini.BlackSwans_0.60.jar | roborumble | robot | PASS | 8ff4ff433f3d1ef6 | - | - | +| roborumble/cx.mini.Cigaret_1.31.jar | roborumble | robot | PASS | dc070048cc9ba197 | - | - | +| roborumble/cx.mini.Nimrod_0.55.jar | roborumble | robot | score-review | 79c0ff02f62c13d6 | - | - | +| roborumble/cx.nano.Smog_2.6.jar | roborumble | robot | score-review | bc706ecbeb69a224 | - | - | +| roborumble/cyragia.Bot_1.1.jar | roborumble | robot | PASS | 21d0dade19312424 | - | - | +| roborumble/da.NewBGank_1.4.jar | roborumble | robot | score-review | 8b25ee1671f08bbe | - | - | +| roborumble/daemons.DizzyA_1.0.jar | roborumble | robot | score-review | fce67ed0d1b04c77 | - | - | +| roborumble/dam.MogBot_2.9.jar | roborumble | robot | DISCREPANCY (outcome) | 6003e69f1e0dcce6 | - | - | +| roborumble/dans.Cinnamon_1.2.jar | roborumble | robot | score-review | 3ddba38f0713acc3 | - | - | +| roborumble/darkcanuck.Gaff_1.50.jar | roborumble | robot | DISCREPANCY (outcome) | ce292f19f1f58ae4 | - | - | +| roborumble/darkcanuck.Holden_1.13a.jar | roborumble | robot | DISCREPANCY (outcome) | 2c000dadc48e9029 | - | - | +| roborumble/darkcanuck.Pris_0.92.jar | roborumble | robot | DISCREPANCY (outcome) | 84f686571606eda3 | - | - | +| roborumble/davidalves.Firebird_0.25.jar | roborumble | robot | score-review | fbca028f7a468788 | - | - | +| roborumble/davidalves.PhoenixOS_1.1.jar | roborumble | robot | DISCREPANCY (outcome) | d37fc2d466f2354b | - | - | +| roborumble/davidalves.Phoenix_1.02.jar | roborumble | robot | PASS | d15696e56af7ec73 | - | - | +| roborumble/davidalves.net.DuelistMicroMkII_1.1.jar | roborumble | robot | score-review | 40198e0e594d02d6 | - | - | +| roborumble/davidalves.net.DuelistMicro_1.22.jar | roborumble | robot | score-review | c28e90450fc99ae5 | - | - | +| roborumble/davidalves.net.DuelistMini_1.1.jar | roborumble | robot | PASS | cb584316a7ba79e0 | - | - | +| roborumble/davidalves.net.DuelistNano_1.0.jar | roborumble | robot | PASS | d29eb247c581f450 | - | - | +| roborumble/davidalves.net.Duelist_0.1.6src.jar | roborumble | robot | PASS | a1dd12d2d41bd3da | - | - | +| roborumble/davv.DOne_b002.jar | roborumble | robot | score-review | f60c95154076199f | - | - | +| roborumble/dcs.Eater_of_Worlds_1.1.3-A.jar | roborumble | robot | PASS | 6d03e404aa0e75d9 | - | - | +| roborumble/dcs.Eater_of_Worlds_Mini_1.0.jar | roborumble | robot | PASS | 2fe91471c7f09d1a | - | - | +| roborumble/dcs.PM.Eater_of_Worlds_PM_1.2.jar | roborumble | robot | score-review | f1ba2437b9b57a63 | - | - | +| roborumble/de.erdega.robocode.Polyphemos_0.4.jar | roborumble | robot | score-review | 4b2a42fea45ce2a9 | - | - | +| roborumble/de.simpleworks.robocode.bots.swiBot_1.0.jar | roborumble | robot | PASS | c1c1dba51c345138 | - | - | +| roborumble/deith.Czolgzilla_0.11.jar | roborumble | robot | PASS | 6a14a50736d181ca | - | - | +| roborumble/demetrix.ForceMajeure_0.75.jar | roborumble | robot | PASS | c99da6d0b2acb9c2 | - | - | +| roborumble/demetrix.nano.Neutrino_0.27.jar | roborumble | robot | score-review | c6d106d809914110 | - | - | +| roborumble/demetrix.nano.SledgeHammer_0.22.jar | roborumble | robot | score-review | 2dd6c1ce765e2145 | - | - | +| roborumble/deo.CloudBot_1.3.jar | roborumble | robot | score-review | 602f15d5ee46510e | - | - | +| roborumble/deo.FlowerBot_1.0.jar | roborumble | robot | PASS | 906c3cf350cdb490 | - | - | +| roborumble/deo.virtual.RainbowBot_1.0.jar | roborumble | robot | score-review | ec739c27975085dd | - | - | +| roborumble/dft.Calliope_5.6.jar | roborumble | robot | score-review | 1922e70abf214431 | - | - | +| roborumble/dft.Cyanide_1.90.jar | roborumble | robot | PASS | b56d225eda383ab9 | - | - | +| roborumble/dft.Cyprus_3.0.jar | roborumble | robot | PASS | 910fdb7758e78f46 | - | - | +| roborumble/dft.Freddie_1.32.jar | roborumble | robot | score-review | 341a18222d734d39 | - | - | +| roborumble/dft.Guppy_1.0.jar | roborumble | robot | PASS | e769ffce4e573dad | - | - | +| roborumble/dft.Immortal_1.40.jar | roborumble | robot | PASS | 1d36afbb67c11346 | - | - | +| roborumble/dft.Krazy_1.5.jar | roborumble | robot | score-review | 164440b187073126 | - | - | +| roborumble/dft.Virgin_1.25.jar | roborumble | robot | PASS | 36ab62179c948ed5 | - | - | +| roborumble/dggp.haiku.gpBot_0_1.1.jar | roborumble | robot | score-review | 8c9d984fdf0efc98 | - | - | +| roborumble/disan.Chair_2.2.0.jar | roborumble | robot | PASS | 208f62fdfb38e29f | - | - | +| roborumble/disan.Ghost_.01.jar | roborumble | robot | PASS | 939017536d62cb1b | - | - | +| roborumble/dittman.BlindSquirl_Retired.jar | roborumble | robot | score-review | bd4fb0e12b986401 | - | - | +| roborumble/divineomega.DivineBot_1.9.5.jar | roborumble | robot | DISCREPANCY (errors) | 4fd33ccfdaf0dab3 | - | - | +| roborumble/divineomega.PatrollerBot_1.0.jar | roborumble | robot | PASS | f0329aed308430d6 | - | - | +| roborumble/divineomega.TrialBot_0.003.jar | roborumble | robot | PASS | 9e9013ee655ba929 | - | - | +| roborumble/djc.Aardvark_0.3.6.jar | roborumble | robot | PASS | 0f5e762f770658d6 | - | - | +| roborumble/djdjdj.NanoSkunk10_1.0.jar | roborumble | robot | score-review | 584c9f0476f1fbd5 | - | - | +| roborumble/dk.stable.Gorgatron_1.1.jar | roborumble | robot | PASS | 26892e7aeaed0062 | - | - | +| roborumble/dks.MicroDanMK2_1.0.jar | roborumble | robot | PASS | d9aa07342e2c385f | - | - | +| roborumble/dmh.robocode.robot.BlackDeath_9.2.jar | roborumble | robot | DISCREPANCY (outcome) | 5a66d8e6f151150b | - | - | +| roborumble/dmh.robocode.robot.BlueBerry_0.5.jar | roborumble | robot | score-review | 41ff60750d06c66c | - | - | +| roborumble/dmh.robocode.robot.GreenDragon_1.0.jar | roborumble | robot | PASS | bcfc6d79e390b279 | - | - | +| roborumble/dmh.robocode.robot.PinkPanther_1.1.jar | roborumble | robot | PASS | 9b1fac585eb3cd2f | - | - | +| roborumble/dmh.robocode.robot.YellowBird_0.12.jar | roborumble | robot | PASS | 2b6f33428c15386e | - | - | +| roborumble/dmp.micro.Aurora_1.41.jar | roborumble | robot | score-review | 05310022c6d6c60c | - | - | +| roborumble/dmp.nano.Eve_3.41.jar | roborumble | robot | score-review | 3931602ad25b6a06 | - | - | +| roborumble/doka.KillerRabbit_1.0.jar | roborumble | robot | PASS | cf5897bf12f1cb30 | - | - | +| roborumble/doka.ShinigamiKNN_1.0.jar | roborumble | robot | DISCREPANCY (outcome) | 234f9c8e91875812 | - | - | +| roborumble/doka.Shinigami_2.2.jar | roborumble | robot | PASS | 4a188800060cdb57 | - | - | +| roborumble/doka.Test_1.0.jar | roborumble | robot | PASS | a5b782b719256b2f | - | - | +| roborumble/donjezza.Jezza_1.0.jar | roborumble | robot | score-review | ea54e870cda66d48 | - | - | +| roborumble/donjezza.Muncho_1.0.jar | roborumble | robot | score-review | 5621bc7c9b63b9bc | - | - | +| roborumble/dragonbyte.Neutrino_4.jar | roborumble | robot | score-review | 921a316d393ed969 | - | - | +| roborumble/drd.Dreadknoght_0.9.jar | roborumble | robot | PASS | fd5b89183aea86e8 | - | - | +| roborumble/drm.CobraBora_1.12.jar | roborumble | robot | score-review | 54f1d01d2403ba18 | - | - | +| roborumble/drm.Magazine_0.39.jar | roborumble | robot | score-review | e8b005bbf41df0df | - | - | +| roborumble/ds.OoV4_0.3b.jar | roborumble | robot | DISCREPANCY (outcome) | 65233acaa3f49f22 | - | - | +| roborumble/ds.Versatile_RB1.0.1.jar | roborumble | robot | DISCREPANCY (outcome) | e717799e2d1d178c | - | - | +| roborumble/dsekercioglu.mega.Raven_3.56j8.jar | roborumble | robot | PASS | a90d58c1d2d60969 | - | - | +| roborumble/dsekercioglu.mega.WhiteFang_2.8.1.jar | roborumble | robot | score-review | 4d83ffe42a94379f | - | - | +| roborumble/dsekercioglu.mini.Partial_0.1.3.jar | roborumble | robot | PASS | 5984357cffc8ce26 | - | - | +| roborumble/dsekercioglu.shield.ColdBreath_1.0.jar | roborumble | robot | DISCREPANCY (no score) | 854a73382e180a56 | - | - | +| roborumble/dsw.StaticD_1.0.jar | roborumble | robot | PASS | cb3c6574d929e48d | - | - | +| roborumble/dsx724.VSAB_EP3_ATR_1.1.jar | roborumble | robot | PASS | 3011583494eb7f17 | - | - | +| roborumble/dsx724.VSAB_EP3a_1.0.jar | roborumble | robot | PASS | 32cb33ffb5a19f76 | - | - | +| roborumble/dukie.Ambassador_1.0.jar | roborumble | robot | PASS | 96416db6612b9f6f | - | - | +| roborumble/dummy.micro.HummingBird_2.14.jar | roborumble | robot | PASS | 6a5102214fb7d514 | - | - | +| roborumble/dummy.micro.Sparrow_2.5.jar | roborumble | robot | PASS | b33016494688992d | - | - | +| roborumble/dummy.mini.Parakeet_2.40.jar | roborumble | robot | PASS | 861ff6f63daa9ac5 | - | - | +| roborumble/dvogon.GangBang_1.0.jar | roborumble | robot | score-review | 8e3f284de332c1dd | - | - | +| roborumble/dy.LevelOne_2.0.jar | roborumble | robot | PASS | 046a7885151acf3d | - | - | +| roborumble/dz.Caedo_1.4.jar | roborumble | robot | PASS | dd2709df3eee05f8 | - | - | +| roborumble/dz.GalbaMicro_0.11.jar | roborumble | robot | PASS | 9533cf29aaf81031 | - | - | +| roborumble/dz.GalbaMini_0.121.jar | roborumble | robot | PASS | fe7db6890b699ea8 | - | - | +| roborumble/dz.MostlyHarmlessNano_2.1.jar | roborumble | robot | PASS | 222b3c3860e9be2e | - | - | +| roborumble/dz.OthoMicro_0.12.jar | roborumble | robot | PASS | 87a618756a32d658 | - | - | +| roborumble/dz.OthoMini_0.15.jar | roborumble | robot | PASS | 1bf733ce688bea50 | - | - | +| roborumble/e32.Omni_0.04.jar | roborumble | robot | DISCREPANCY (outcome) | 93f7fce337a4cc1d | - | - | +| roborumble/eat.HumblePieLite_1.0.jar | roborumble | robot | PASS | a85c70974ba48767 | - | - | +| roborumble/ebo.Sparse_0.02.jar | roborumble | robot | score-review | 9da95784397a1e18 | - | - | +| roborumble/ebo.Tahoe_1.1.79.jar | roborumble | robot | PASS | 681b5afe8a64b645 | - | - | +| roborumble/eem.EvBotNG_v12.8.jar | roborumble | robot | PASS | 7ebb64d148b85617 | - | - | +| roborumble/eem.EvBot_v4.6.4.jar | roborumble | robot | PASS | f3b0485111bec962 | - | - | +| roborumble/eem.IWillFireNoBullet_v2.4.jar | roborumble | robot | score-review | 7cdf1837d55623fb | - | - | +| roborumble/eem.awful_v1.2.jar | roborumble | robot | DISCREPANCY (no score) | 59537630aafb178b | - | - | +| roborumble/eem.zapper_v4.17.jar | roborumble | robot | PASS | 9739522025a54af6 | - | - | +| roborumble/ej.ChocolateBar_1.1.jar | roborumble | robot | score-review | b47ad477d6bd24cb | - | - | +| roborumble/el.Attackr_0.1.jar | roborumble | robot | PASS | f2944dcec0666d53 | - | - | +| roborumble/el.JumpShoot_0.2.jar | roborumble | robot | PASS | 795d56a26238569f | - | - | +| roborumble/el33t.EL33tGangstarr2_2.0.jar | roborumble | robot | score-review | 791e673951bd2014 | - | - | +| roborumble/eld.Hmm_1.0.jar | roborumble | robot | PASS | 6429e35e8dc9bb33 | - | - | +| roborumble/element.Earth_1.1.jar | roborumble | robot | score-review | e9a5d46ed04f0534 | - | - | +| roborumble/elloco.Flower_0.1r1.jar | roborumble | robot | PASS | dc5eb966fb783139 | - | - | +| roborumble/elloco.Kabuto_0.2r.jar | roborumble | robot | PASS | 5558a61657f168c0 | - | - | +| roborumble/elvbot.ElverionBot_0.3.jar | roborumble | robot | PASS | 71e2df5b73f1ffcc | - | - | +| roborumble/emp.Yngwie_1.11.jar | roborumble | robot | PASS | 2b8bbf46a8f1d158 | - | - | +| roborumble/ender.EnderRobot_1.1.jar | roborumble | robot | PASS | bf1c109c4d17f836 | - | - | +| roborumble/ep.MyFirstRobot_1.0.jar | roborumble | robot | MATCHED (failure) | 09c6cfb05af392d7 | - | - | +| roborumble/ers.micro.ISuck.ISuckMicro_0.1f.jar | roborumble | robot | MATCHED (failure) | bdffea9c570eb754 | - | - | +| roborumble/ers.nano.ISuck.ISuckNano_0.1d.jar | roborumble | robot | MATCHED (failure) | 9a259f9c6c5ee751 | - | - | +| roborumble/ers.nano.Lig.LigMA_1.0.jar | roborumble | robot | MATCHED (failure) | 43759291daa44c50 | - | - | +| roborumble/ers.nano.Meroka.Meroka_1.1.jar | roborumble | robot | MATCHED (failure) | e6622eb45701b731 | - | - | +| roborumble/ers.nano.Sugma.SugmaVCS_1.1.jar | roborumble | robot | MATCHED (failure) | b4e347e3240cad13 | - | - | +| roborumble/ers.nano.Sunderer.Sunderer_1.2.jar | roborumble | robot | MATCHED (failure) | f5bdc5d5a7662f77 | - | - | +| roborumble/eskimo.micro.Echo_0.1.jar | roborumble | robot | MATCHED (failure) | fd95d2feff3f2fea | - | - | +| roborumble/et.Predator_1.8.jar | roborumble | robot | MATCHED (failure) | 875e0d05d23208c4 | - | - | +| roborumble/ethdsy.Malacka_2.4.jar | roborumble | robot | MATCHED (failure) | 986386c9abd2263c | - | - | +| roborumble/etienne72230.Wall_street_1.0.jar | roborumble | robot | MATCHED (failure) | 42eebf58778f64fb | - | - | +| roborumble/evd.X1_0.01.jar | roborumble | robot | MATCHED (failure) | 06854d9dbad423a8 | - | - | +| roborumble/exauge.GateKeeper_1.1.121g.jar | roborumble | robot | MATCHED (failure) | f4cfae2f888eb716 | - | - | +| roborumble/exauge.LemonDrop_1.6.130.jar | roborumble | robot | MATCHED (failure) | 86d70443e0197c47 | - | - | +| roborumble/exauge.Leopard_1.1.019.jar | roborumble | robot | MATCHED (failure) | d67bbe47d65abd53 | - | - | +| roborumble/extra.LightSauce_0.01.jar | roborumble | robot | MATCHED (failure) | e5c9ee7cfeed3b07 | - | - | +| roborumble/extra.Sauce_.01.jar | roborumble | robot | MATCHED (failure) | 7b2918a07def466d | - | - | +| roborumble/fala.robocode.FalaRobot_1.0.jar | roborumble | robot | MATCHED (failure) | 29a5601892a26834 | - | - | +| roborumble/fcr.First_1.0.jar | roborumble | robot | MATCHED (failure) | 8db47e2d9d62a27b | - | - | +| roborumble/fire219.CatBot_1.0.jar | roborumble | robot | MATCHED (failure) | 36add8be7ffef313 | - | - | +| roborumble/fire219.cymba.Cymba_1.8.jar | roborumble | robot | MATCHED (failure) | 131ec84edafe270b | - | - | +| roborumble/florent.FloatingTadpole_1.2.6.jar | roborumble | robot | MATCHED (failure) | 82b4ce7fc5742beb | - | - | +| roborumble/florent.XSeries.X2_0.17.jar | roborumble | robot | MATCHED (failure) | c9a80321ef9eab53 | - | - | +| roborumble/florent.small.LittleAngel_1.8.jar | roborumble | robot | DISCREPANCY (no score) | 3f8326a84f0bd900 | - | - | +| roborumble/florent.test.Toad_0.14t.jar | roborumble | robot | MATCHED (failure) | 13e6e0cdc1395289 | - | - | +| roborumble/fm.claire_1.7.jar | roborumble | robot | MATCHED (failure) | 70de3507acc20c29 | - | - | +| roborumble/fm.mammillarias_1.3.jar | roborumble | robot | MATCHED (failure) | d0cd14dbbf73d88b | - | - | +| roborumble/fnc.bandit.Bandit_5.2.0.jar | roborumble | robot | MATCHED (failure) | 1a80127f5f410c25 | - | - | +| roborumble/fnc.bandit2002.Bandit2002_4.0.2.jar | roborumble | robot | MATCHED (failure) | 18951e98762a9f79 | - | - | +| roborumble/frag.FragBot_1.0.jar | roborumble | robot | MATCHED (failure) | 47fa458493cbc45e | - | - | +| roborumble/franzor.Lizt_1.3.1.jar | roborumble | robot | MATCHED (failure) | c3f55886bc4b2329 | - | - | +| roborumble/froh.micro.Aversari_0.31.jar | roborumble | robot | MATCHED (failure) | fdd83abc5317dc7c | - | - | +| roborumble/fromHell.BlackBox_0.0.2.jar | roborumble | robot | MATCHED (failure) | 1ca9b10801992a11 | - | - | +| roborumble/fromHell.C22H30N2O2S_2.2.jar | roborumble | robot | MATCHED (failure) | b621bda1a3c49348 | - | - | +| roborumble/fromHell.C4H10O_1.5.1.jar | roborumble | robot | MATCHED (failure) | b8e9e74c1eec8204 | - | - | +| roborumble/fromHell.CHCl3_1.4.2.jar | roborumble | robot | MATCHED (failure) | bdc7925c24e2e3f3 | - | - | +| roborumble/fruits.NanoStrawbery_1.3.jar | roborumble | robot | MATCHED (failure) | 5b966841b00b16eb | - | - | +| roborumble/fullsail.LaxativeTeaTwo_1.0.jar | roborumble | robot | MATCHED (failure) | dd866b226f39b65e | - | - | +| roborumble/fullsail.SweetTea_1.1.jar | roborumble | robot | MATCHED (failure) | 936f481cf375afa4 | - | - | +| roborumble/fullsail.TimbotNoPrediction_1.0.jar | roborumble | robot | MATCHED (failure) | 7c615c99a39069ac | - | - | +| roborumble/fushi.PvP1.PvP1_2004-02-16.jar | roborumble | robot | MATCHED (failure) | 1b8259c3cfd580ce | - | - | +| roborumble/fw.Number1_1.0b.jar | roborumble | robot | MATCHED (failure) | 2cc6120e92d4b230 | - | - | +| roborumble/gadsky.Gadsky_1.01.jar | roborumble | robot | MATCHED (failure) | 79fa67574b3f574a | - | - | +| roborumble/geep.mini.GPBotA_1.0.jar | roborumble | robot | MATCHED (failure) | 0d25e3d2ded7c752 | - | - | +| roborumble/geep.mini.GPBotB_1.1.jar | roborumble | robot | MATCHED (failure) | 962021716e3e7eaf | - | - | +| roborumble/genprog.Gajeel_1.0.jar | roborumble | robot | MATCHED (failure) | ff92ee797e807b9c | - | - | +| roborumble/genprog.Rinmorikazu_1.0.jar | roborumble | robot | DISCREPANCY (no score) | e8721bfe1878ce0b | - | - | +| roborumble/genprog.Zafaran_1.0.jar | roborumble | robot | DISCREPANCY (no score) | 1945c190c76e6150 | - | - | +| roborumble/germ.TheMind_.2.jar | roborumble | robot | DISCREPANCY (no score) | f6001e8b572533b4 | - | - | +| roborumble/gf.Centaur.Centaur_0.6.7.jar | roborumble | robot | DISCREPANCY (no score) | 64630a3acc5ad08d | - | - | +| roborumble/gg.Squaraus_0.6.jar | roborumble | robot | DISCREPANCY (no score) | af5d371fd0d8ebc8 | - | - | +| roborumble/gg.Wolverine_2.0.jar | roborumble | robot | DISCREPANCY (no score) | 5a1633d8ea1a8831 | - | - | +| roborumble/gh.GresSuffurd_0.4.13.jar | roborumble | robot | DISCREPANCY (no score) | 422163e3feada153 | - | - | +| roborumble/gh.GrubbmGrb_1.2.4.jar | roborumble | robot | DISCREPANCY (outcome) | f2c1c5022a5838fb | - | - | +| roborumble/gh.GrypRepetyf_0.13.jar | roborumble | robot | DISCREPANCY (no score) | 43c8214c070a00fd | - | - | +| roborumble/gh.micro.Grinnik_1.0.jar | roborumble | robot | DISCREPANCY (no score) | e524b4d483d0635e | - | - | +| roborumble/gh.mini.Grimmig_0.3.6.jar | roborumble | robot | DISCREPANCY (no score) | 5f21e7bfd82d02e0 | - | - | +| roborumble/gh.nano.Grofvuil_0.2.jar | roborumble | robot | DISCREPANCY (no score) | 2d26131918c382a7 | - | - | +| roborumble/ghent.ArthurPanzergon_1.0.0.jar | roborumble | robot | DISCREPANCY (outcome) | dfa7800f0f04cab3 | - | - | +| roborumble/gimp.GimpBot_0.1.jar | roborumble | robot | DISCREPANCY (no score) | 971d83252cd783ae | - | - | +| roborumble/gio.RealGioBot_1.0.jar | roborumble | robot | DISCREPANCY (no score) | 5e1535e7c64aba59 | - | - | +| roborumble/gjr.Cephalosporin_0.2.jar | roborumble | robot | DISCREPANCY (no score) | db03f6ffc0fe3874 | - | - | +| roborumble/goblin.Bender_2.4.jar | roborumble | robot | DISCREPANCY (no score) | c974dc2f04983d30 | - | - | +| roborumble/gre.svman4.Leonidas_1.3.2.jar | roborumble | robot | DISCREPANCY (no score) | 58b0a10a9eac6c89 | - | - | +| roborumble/gre.svman4.Morfeas_1.4.3.jar | roborumble | robot | DISCREPANCY (outcome) | 414e70d87bc5aa3d | - | - | +| roborumble/grybgoofy.GoofyBot_0.10.jar | roborumble | robot | DISCREPANCY (no score) | 8ca01ec24f3ecc76 | - | - | +| roborumble/gtf.robocode.Strafer_2.1.1.jar | roborumble | robot | DISCREPANCY (no score) | 1b9743c2f5eaa391 | - | - | +| roborumble/gu.MicroScoob_1.3.jar | roborumble | robot | DISCREPANCY (no score) | 7c0c54c5c13d5050 | - | - | +| roborumble/gwah.GBotMarkIV_1.0.jar | roborumble | robot | DISCREPANCY (no score) | 8b1a6bdf876ed094 | - | - | +| roborumble/gwah.GerryBotMkII_1.5.1.jar | roborumble | robot | DISCREPANCY (no score) | f10a31cfcd02142e | - | - | +| roborumble/ha2.T2_0.2.jar | roborumble | robot | DISCREPANCY (no score) | 1bece4ef2e0c4719 | - | - | +| roborumble/ha2.T2b_0.2b.jar | roborumble | robot | DISCREPANCY (no score) | 15ea51b55ba7e79a | - | - | +| roborumble/ha2.T3_0.1.jar | roborumble | robot | PASS | 2c1320bf09ac71d5 | - | - | +| roborumble/ha2.T3_0.2.jar | roborumble | robot | score-review | d16bed013eca821a | - | - | +| roborumble/hamilton.Hamilton_1.0.jar | roborumble | robot | PASS | 11c09b304e986c4d | - | - | +| roborumble/hapiel.Spiral_0.1.jar | roborumble | robot | PASS | fdb4c259f116e43f | - | - | +| roborumble/hfgrobots.HFG_1.0.jar | roborumble | robot | score-review | 6421835506f37155 | - | - | +| roborumble/hirataatsushi.Neo_1.6.jar | roborumble | robot | PASS | 1a0cfd2f9819f9a5 | - | - | +| roborumble/hirataatsushi.Trinity_0.003.jar | roborumble | robot | score-review | acff8e25afd66c29 | - | - | +| roborumble/hlavko.micro.Flex_1.5.jar | roborumble | robot | score-review | c7bbcab70575bea1 | - | - | +| roborumble/hlavko.nano.Phoenix_1.0.jar | roborumble | robot | PASS | c439627c649a2174 | - | - | +| roborumble/hlavko.nano.Ringo_1.0d.jar | roborumble | robot | PASS | db5b621b966317d5 | - | - | +| roborumble/hlavko.nano.Ringo_2.0.jar | roborumble | robot | score-review | 9924522cdf6df090 | - | - | +| roborumble/homerbots.h1_1.0.jar | roborumble | robot | PASS | 02c3317ae696df0a | - | - | +| roborumble/hp.Athena_0.1.jar | roborumble | robot | PASS | 07e6a55f655750ec | - | - | +| roborumble/hs.SimpleHBot_1.3.jar | roborumble | robot | score-review | c9d49e297432faa4 | - | - | +| roborumble/hvilela.HVilela_0.9.jar | roborumble | robot | score-review | 5e7d6ba86fc06b0e | - | - | +| roborumble/infovk.s_schwarzm16.silverbird_1.0.jar | roborumble | robot | PASS | e9631ba098d70dcb | - | - | +| roborumble/ins.MobyNano_0.8.jar | roborumble | robot | score-review | 41a4925ee8539ff3 | - | - | +| roborumble/intruder.PrairieWolf_2.61.jar | roborumble | robot | PASS | a0d663f150aa09e7 | - | - | +| roborumble/is.fon.rs.FonDestroyer3084_1.0.jar | roborumble | robot | PASS | fb46403241162b0e | - | - | +| roborumble/is.fon.rs.Kamikaza_1.0.jar | roborumble | robot | PASS | 5e11553e3a29aca5 | - | - | +| roborumble/jaara.LambdaBot_1.1.jar | roborumble | robot | DISCREPANCY (outcome) | 0cd0ce600ce7a8cf | - | - | +| roborumble/jab.DiamondStealer_5.jar | roborumble | robot | PASS | 09312469b177eef5 | - | - | +| roborumble/jab.avk.ManuelGallegus_0.6.jar | roborumble | robot | DISCREPANCY (outcome) | a39df0f593fe2025 | - | - | +| roborumble/jab.micro.Sanguijuela_0.8.jar | roborumble | robot | score-review | ebb7d7c721bd2a3d | - | - | +| roborumble/jaemcrb.nano.M1Abrams_1.0.jar | roborumble | robot | PASS | 8de62d1e1e93edfe | - | - | +| roborumble/jam.RaikoMX_0.32.jar | roborumble | robot | PASS | eca974fa0fd37a28 | - | - | +| roborumble/jam.micro.RaikoMicro_1.44.jar | roborumble | robot | PASS | 3bfa49fd33c336b4 | - | - | +| roborumble/jam.mini.Raiko_0.43.jar | roborumble | robot | score-review | 6e101daed7168592 | - | - | +| roborumble/janm.Jammy_1.0.jar | roborumble | robot | PASS | d7331a446c291ea1 | - | - | +| roborumble/japs.Serenity_1.0.jar | roborumble | robot | score-review | f3a42e32015e55aa | - | - | +| roborumble/japs.Sjonniebot_0.9.1.jar | roborumble | robot | PASS | 9b13ea94574add37 | - | - | +| roborumble/jasolo.Sonda_0.55.jar | roborumble | robot | PASS | 01203ed3d41f66cd | - | - | +| roborumble/jaw.KarenCain_0.11.jar | roborumble | robot | PASS | a6b474d3d5900dca | - | - | +| roborumble/jaw.Mouse_0.11.jar | roborumble | robot | PASS | 5bdee286f6b42607 | - | - | +| roborumble/jaybot.adv.bots.JayBot_2.0.jar | roborumble | robot | PASS | 7ee52bd421251e91 | - | - | +| roborumble/jaybot.bots.Oddball_4.0.jar | roborumble | robot | DISCREPANCY (outcome) | ee5b6a1afcb7c6f8 | - | - | +| roborumble/jbot.Rabbit2_1.1.jar | roborumble | robot | PASS | 21054c5022752597 | - | - | +| roborumble/jcs.AutoBot_4.2.1.jar | roborumble | robot | score-review | d52f242b7cf667d0 | - | - | +| roborumble/jcs.Decepticon_2.5.3.jar | roborumble | robot | PASS | 9f21384be184c5c1 | - | - | +| roborumble/jcs.Megatron_1.2.jar | roborumble | robot | PASS | dfd70f66155cf480 | - | - | +| roborumble/jcs.Seth_1.8.jar | roborumble | robot | DISCREPANCY (outcome) | 7cbbe2b6780c0995 | - | - | +| roborumble/jcw.ArcherOne_1.0.jar | roborumble | robot | score-review | 3b8d0bac2d8b47ad | - | - | +| roborumble/jcz.linio.Linio_2.0.H.jar | roborumble | robot | PASS | a1f75e443bb759cf | - | - | +| roborumble/jdw.Hornet_1.0.jar | roborumble | robot | score-review | f6b616930407a978 | - | - | +| roborumble/jekl.DarkHallow_.90.9.jar | roborumble | robot | PASS | ef19377660a16a9a | - | - | +| roborumble/jekl.Jekyl_.70.jar | roborumble | robot | PASS | 746f7ebb593a6006 | - | - | +| roborumble/jekl.mini.BlackPearl_.91.jar | roborumble | robot | score-review | f83b97c8b3cce583 | - | - | +| roborumble/jep.Terrible_0.4.1.jar | roborumble | robot | score-review | 610b809670c3c242 | - | - | +| roborumble/jep.nano.Hawkwing_0.4.1.jar | roborumble | robot | PASS | 46f42695e1a7f118 | - | - | +| roborumble/jep.nano.Hotspur_0.1.jar | roborumble | robot | PASS | c2e419d7c5f31be0 | - | - | +| roborumble/jeremyreeder.Bully_1.jar | roborumble | robot | score-review | cfd4f9ecc5b1e9c5 | - | - | +| roborumble/jeremyreeder.Vincent_2011.12.09.jar | roborumble | robot | score-review | 5937f2ce8280ffed | - | - | +| roborumble/jeremyreeder.collective.Prophet_5.jar | roborumble | robot | score-review | 184353f9c23e961e | - | - | +| roborumble/jf.Dodger_1.3.jar | roborumble | robot | score-review | 92b831520dd0868f | - | - | +| roborumble/jgap.JGAP12584_1.0.jar | roborumble | robot | PASS | be1d9435f1ab4e2a | - | - | +| roborumble/jgap.JGAP130166_1.0.jar | roborumble | robot | PASS | 6683dc1cc9cc5218 | - | - | +| roborumble/jgap.JGAP23423_1.0.jar | roborumble | robot | score-review | 898e764b76e36455 | - | - | +| roborumble/jgap.JGAP6139_1.0.jar | roborumble | robot | score-review | 9d36b13a51ac844a | - | - | +| roborumble/jgap.JGAP7247_2_1.0.jar | roborumble | robot | DISCREPANCY (errors) | e199f80ecc172fca | - | - | +| roborumble/jgap.JGAP7958_1.0.jar | roborumble | robot | score-review | 68d33e4907c12469 | - | - | +| roborumble/jje.BagPuss_1.2.jar | roborumble | robot | score-review | 48caa85e1e1f702b | - | - | +| roborumble/jk.mega.DrussGT_3.1.7.jar | roborumble | robot | PASS | 7bd03a5c78b1cf12 | - | - | +| roborumble/jk.melee.Neuromancer_7.12.jar | roborumble | robot | PASS | a3becdc000776726 | - | - | +| roborumble/jk.micro.Cotillion_0.8.jar | roborumble | robot | PASS | ac423db318a7666c | - | - | +| roborumble/jk.mini.CunobelinDC_1.2.jar | roborumble | robot | PASS | a3251e634f8d649d | - | - | +| roborumble/jk.nano.Machete_2.0.jar | roborumble | robot | PASS | 9159148bd0131ead | - | - | +| roborumble/jk.precise.EnergyDome_1.6.jar | roborumble | robot | PASS | 9847c2cdcac260e3 | - | - | +| roborumble/jk.precise.Wintermute_0.8.jar | roborumble | robot | PASS | 58d7e52300e5940f | - | - | +| roborumble/jk.sheldor.nano.Yatagan_1.2.3.jar | roborumble | robot | PASS | 190529e94cc2061c | - | - | +| roborumble/jmcd.BeoWulf_2.8.jar | roborumble | robot | PASS | ad8b1f2666ea6051 | - | - | +| roborumble/joe.ADinosaur_1.0.jar | roborumble | robot | PASS | fba69a53a36df25b | - | - | +| roborumble/josago.Jorgito_0.16.jar | roborumble | robot | DISCREPANCY (outcome) | 3dce8987b150739e | - | - | +| roborumble/jp.Perpy_16.0.jar | roborumble | robot | PASS | 6123a16a81268bc9 | - | - | +| roborumble/jp.SineWall_1.0.jar | roborumble | robot | PASS | f525491d80c17dbd | - | - | +| roborumble/jrm.Test0_1.0.jar | roborumble | robot | score-review | 87280748930f85ca | - | - | +| roborumble/js.PinBall_1.6.jar | roborumble | robot | DISCREPANCY (outcome) | e13f3ced41c0f759 | - | - | +| roborumble/jsal.Jsalbot_1.0.jar | roborumble | robot | PASS | f729ebca3114899c | - | - | +| roborumble/jt.SpearmintCT_Alpha.jar | roborumble | robot | score-review | e663bf152188ba08 | - | - | +| roborumble/justin.DemonicRage_3.20.jar | roborumble | robot | DISCREPANCY (outcome) | 299c1957c0af6855 | - | - | +| roborumble/jw.Booring_1.11.jar | roborumble | robot | DISCREPANCY (outcome) | 523daa9bb1a66d82 | - | - | +| roborumble/jwst.DAD.DarkAndDarker_1.1.jar | roborumble | robot | PASS | 75967befc13ff72a | - | - | +| roborumble/kanishk.Fr0z3n_1.1.jar | roborumble | robot | PASS | 529babf01a0b4930 | - | - | +| roborumble/kano.gamma.KanoGamma_1.8.jar | roborumble | robot | PASS | 78295d7324f7da2d | - | - | +| roborumble/kawam.kmBot9_1.0.jar | roborumble | robot | PASS | acc0a8de12e6e0eb | - | - | +| roborumble/kawigi.f.FhqwhgadsMicro_1.0.jar | roborumble | robot | PASS | 939360d33239dc93 | - | - | +| roborumble/kawigi.micro.Shiz_1.1.jar | roborumble | robot | score-review | e2df7a9d6c23797e | - | - | +| roborumble/kawigi.mini.Coriantumr_1.1.jar | roborumble | robot | DISCREPANCY (outcome) | 28a7118ca364289e | - | - | +| roborumble/kawigi.mini.Fhqwhgads_1.1.jar | roborumble | robot | DISCREPANCY (outcome) | d4bf466a526e95db | - | - | +| roborumble/kawigi.nano.FunkyChicken_1.1.jar | roborumble | robot | PASS | 291eab4972832579 | - | - | +| roborumble/kawigi.nano.ThnikkaBot_0.9.jar | roborumble | robot | PASS | 038ecd73c09d8b0d | - | - | +| roborumble/kawigi.robot.Girl_1.2.jar | roborumble | robot | PASS | 7395d4249b4a692e | - | - | +| roborumble/kawigi.sbf.Barracuda_1.0.jar | roborumble | robot | PASS | d85142bfa8039f0d | - | - | +| roborumble/kawigi.sbf.FloodHT_0.9.2.jar | roborumble | robot | PASS | dadcf7bf4e0ecb8c | - | - | +| roborumble/kawigi.sbf.FloodMicro_1.5.jar | roborumble | robot | score-review | c9c40370dcf10011 | - | - | +| roborumble/kawigi.sbf.FloodMini_1.4.jar | roborumble | robot | PASS | 30197c435377ba69 | - | - | +| roborumble/kawigi.sbf.FloodNano_1.2.jar | roborumble | robot | score-review | 117a6d40be35854c | - | - | +| roborumble/kawigi.sbf.FloodSonnet_0.9.jar | roborumble | robot | DISCREPANCY (outcome) | 01421e46ea8b0558 | - | - | +| roborumble/kawigi.sbf.Teancum_1.3.jar | roborumble | robot | PASS | 48f06e2fa8400492 | - | - | +| roborumble/kawigi.spare.SpareParts_0.7.6nosnd.jar | roborumble | robot | PASS | e6f5801c8dbb526a | - | - | +| roborumble/kc.mega.BeepBoop_1.21.jar | roborumble | robot | DISCREPANCY (outcome) | 17cd4cf14dcc2da7 | - | - | +| roborumble/kc.micro.Needle_0.101.jar | roborumble | robot | PASS | 08a9125a7c4f78c8 | - | - | +| roborumble/kc.micro.Thorn_1.252.jar | roborumble | robot | PASS | 0c021dbb724f9eae | - | - | +| roborumble/kc.micro.WaveShark_0.4.jar | roborumble | robot | DISCREPANCY (outcome) | 57dd1774fc8cbf22 | - | - | +| roborumble/kc.micro.rammer.MaxRisk_0.6.jar | roborumble | robot | score-review | 1d7f127258dd610c | - | - | +| roborumble/kc.mini.Vyper_0.311.jar | roborumble | robot | PASS | 2a4e8fb340184b39 | - | - | +| roborumble/kc.nano.Splinter_1.2.jar | roborumble | robot | PASS | b397c0bf2d8d3823 | - | - | +| roborumble/kc.serpent.Hydra_0.21.jar | roborumble | robot | PASS | 040ddc882beec0c8 | - | - | +| roborumble/kc.serpent.WaveSerpent_2.11.jar | roborumble | robot | PASS | 6aa4e89482f2aa31 | - | - | +| roborumble/kcn.percept.PerceptBot_2.3.jar | roborumble | robot | PASS | 02d2572f64e2a5b4 | - | - | +| roborumble/kcn.unnamed.Unnamed_1.21.jar | roborumble | robot | PASS | 37c594ac3485e1e2 | - | - | +| roborumble/kenran.Bakko_v1.0.1.jar | roborumble | robot | PASS | cac1aa587d78087c | - | - | +| roborumble/kenran.mega.Pantheist_1.1.jar | roborumble | robot | PASS | 484f8c7a96a8da34 | - | - | +| roborumble/kid.Gladiator_.7.2.jar | roborumble | robot | PASS | 8b525bd3f6b28dfa | - | - | +| roborumble/kid.Toa_.0.5.jar | roborumble | robot | score-review | fba256d882f5f68e | - | - | +| roborumble/kinsen.melee.Angsaichmophobia_1.8c.jar | roborumble | robot | PASS | 0ed7850cf0a262d8 | - | - | +| roborumble/kinsen.nano.Charp_1.0.jar | roborumble | robot | score-review | 16fb9f8a0566af3d | - | - | +| roborumble/kinsen.nano.Hoplomachy_1.6.jar | roborumble | robot | PASS | 1bee697b81a6f927 | - | - | +| roborumble/kinsen.nano.Quarrelet_1.0.jar | roborumble | robot | score-review | 392cc7b5ec68cfab | - | - | +| roborumble/kinsen.nano.Senticous_1.0.jar | roborumble | robot | PASS | 2a603412d14a06c4 | - | - | +| roborumble/kjc.Karaykan_1.0.jar | roborumble | robot | PASS | 9fff8d83189d2ec9 | - | - | +| roborumble/kjc.MailManX_2.0.jar | roborumble | robot | PASS | a82056c6ad2ad5d3 | - | - | +| roborumble/kjc.etc.Dharok_1.0.jar | roborumble | robot | PASS | 6e18ec5d5036e689 | - | - | +| roborumble/klein.GottesKrieger_1.1.jar | roborumble | robot | DISCREPANCY (outcome) | ca30b7c68b5b10fc | - | - | +| roborumble/kms.Golden_0.10.jar | roborumble | robot | score-review | b5d6900c92396f8b | - | - | +| roborumble/kms.Royal_0.15M.jar | roborumble | robot | PASS | eab60f1e9e2e0f3e | - | - | +| roborumble/knackibot.KnackOnOne_0.8.1.jar | roborumble | robot | PASS | 624c9c4b63456f1e | - | - | +| roborumble/kneels.ToNoone_0.2.jar | roborumble | robot | score-review | ae62db4724a7b736 | - | - | +| roborumble/kneels.nano.Derp_0.2.jar | roborumble | robot | score-review | cd4748fb78080dd6 | - | - | +| roborumble/krillr.mega.Psyche_0.0.3.jar | roborumble | robot | PASS | 3809aeaf0c65634c | - | - | +| roborumble/krillr.mini.JointStrike_2.0.0.jar | roborumble | robot | PASS | cd44968f3f411b9a | - | - | +| roborumble/kronenthaler.Basilisk_1.0.jar | roborumble | robot | DISCREPANCY (outcome) | 6b8d1c60aef70f89 | - | - | +| roborumble/krzysiek.robbo2.Robbo_1.0.0.jar | roborumble | robot | PASS | f3397e3639521b5d | - | - | +| roborumble/kvk.HebusLeTroll_0.41.jar | roborumble | robot | PASS | a603f37930217598 | - | - | +| roborumble/labg.Cataclysm_2.05.jar | roborumble | robot | PASS | a9a0290c0e4c2314 | - | - | +| roborumble/lancel.Lynx_1.09.jar | roborumble | robot | PASS | 14c27a857675b4a8 | - | - | +| roborumble/lazarecki.mega.PinkerStinker_0.7.jar | roborumble | robot | PASS | 0e61361043708c08 | - | - | +| roborumble/leb.ShootAnArrow_0.1.jar | roborumble | robot | PASS | 0698c06f0e3f3ad6 | - | - | +| roborumble/lechu.Ala_0.0.4.jar | roborumble | robot | PASS | 59668a0f570ebada | - | - | +| roborumble/lechu.Lechu_1.1.jar | roborumble | robot | score-review | f47bc92c4d2ff2ae | - | - | +| roborumble/lessonz.robocode.Oz_0.5.0.jar | roborumble | robot | score-review | 3f66cee1b6bf3c7a | - | - | +| roborumble/lion.Kresnanano_1.0.jar | roborumble | robot | PASS | 48ed3b0e1c077d70 | - | - | +| roborumble/lk.nano.Avesnar_1.1.jar | roborumble | robot | score-review | 43dd6d385a5afa38 | - | - | +| roborumble/lmk.ACPFinal_0.2.jar | roborumble | robot | PASS | c387423c5cc4d80c | - | - | +| roborumble/logiblocs.Fire_1.0.jar | roborumble | robot | score-review | 4a263e819ee273fa | - | - | +| roborumble/logiblocs.SittingDroid_1.0.jar | roborumble | robot | DISCREPANCY (no score) | aad8e7c68a03e5dd | - | - | +| roborumble/lorneswork.Predator_1.0.jar | roborumble | robot | score-review | 93c5ace4d4087b33 | - | - | +| roborumble/lrem.Spectre_0.4.4.jar | roborumble | robot | PASS | 1d0e2d5ce38f97d9 | - | - | +| roborumble/lrem.magic.TormentedAngel_Antiquitie.jar | roborumble | robot | DISCREPANCY (outcome) | 1a3635553148abba | - | - | +| roborumble/lrem.micro.FalseProphet_Alpha.jar | roborumble | robot | PASS | 4b8e46bd1fa2a17e | - | - | +| roborumble/lrem.micro.MoggFanatic_0.2.jar | roborumble | robot | PASS | b7960b67823865c0 | - | - | +| roborumble/lrem.quickhack.QuickHack_1.0.jar | roborumble | robot | score-review | 28eb9e453aea91dd | - | - | +| roborumble/lucasslf.Dodger_1.0.jar | roborumble | robot | PASS | 7239cc6c0c46a0c8 | - | - | +| roborumble/lucasslf.HariSeldon_0.2.1.jar | roborumble | robot | DISCREPANCY (errors) | 28509d8468b5a013 | - | - | +| roborumble/lucasslf.Wiggins_0.6.jar | roborumble | robot | PASS | b50943d38ca71c98 | - | - | +| roborumble/lunchie.Lunchbox_0.93.jar | roborumble | robot | PASS | b31d8ac9eebc5fa9 | - | - | +| roborumble/lundal.Mark8_2012.09.15.jar | roborumble | robot | PASS | d458f8fa15325d61 | - | - | +| roborumble/lw.LuthersTest_0.1.jar | roborumble | robot | score-review | 11df5e06936f47fb | - | - | +| roborumble/lxx.ConceptA_0.8.jar | roborumble | robot | PASS | b533f0655584641d | - | - | +| roborumble/lxx.Emerald_0.6.5.jar | roborumble | robot | PASS | e1f2d59c5739168c | - | - | +| roborumble/lxx.Tomcat_3.68.jar | roborumble | robot | DISCREPANCY (errors) | e788aec118e82732 | - | - | +| roborumble/m3thos.Eva00_1.1.jar | roborumble | robot | PASS | dd5208c15051255e | - | - | +| roborumble/m3thos.Eva02_0.7.1.jar | roborumble | robot | DISCREPANCY (outcome) | 5ff80459c930a46d | - | - | +| roborumble/m3thos.mini.Eva01_0.5.5.jar | roborumble | robot | DISCREPANCY (outcome) | b9e4c8f459ecab10 | - | - | +| roborumble/ma.is.fon.rs.RobotA_0.01.jar | roborumble | robot | score-review | a074520b2159b864 | - | - | +| roborumble/madmath.Cow_0.1.1.jar | roborumble | robot | score-review | 25cbd1ecf5367e95 | - | - | +| roborumble/mae.Mae1_1.1.jar | roborumble | robot | PASS | a5d90777e3acda8b | - | - | +| roborumble/mahrgell.mahrram_1.3.jar | roborumble | robot | score-review | 8a064582ce83895d | - | - | +| roborumble/marcinek.TopGun_1.3.jar | roborumble | robot | PASS | 1753ac81f37305a4 | - | - | +| roborumble/maribo.FollowFire_1.11.jar | roborumble | robot | score-review | 8c3f1a7c4da1872b | - | - | +| roborumble/maribo.IotaCT_1.0.jar | roborumble | robot | PASS | 99e8e67f560ef782 | - | - | +| roborumble/maribo.Omicron_1.0.jar | roborumble | robot | score-review | 531052ecdf1582a2 | - | - | +| roborumble/maribo.melee.BMV_0.1.jar | roborumble | robot | PASS | cd6390b2871f4e30 | - | - | +| roborumble/marksteam.Phoenix_1.0.jar | roborumble | robot | score-review | a07937e0978e74f3 | - | - | +| roborumble/matt.BlueMind_0.8.00.jar | roborumble | robot | PASS | 6a9e51857545b3d5 | - | - | +| roborumble/matt.UnderDark3_2.4.34.jar | roborumble | robot | score-review | c992e509cf71f004 | - | - | +| roborumble/matt.UnderDark4_0.4.00.jar | roborumble | robot | PASS | 8ea191b9dc12b10f | - | - | +| roborumble/matt.advanced.Katana_1.0.jar | roborumble | robot | PASS | 86798553d9132d2c | - | - | +| roborumble/maye.SlashBot_1.0.jar | roborumble | robot | PASS | d823d1afaaf2dcff | - | - | +| roborumble/mb.Beast_0.4.1.jar | roborumble | robot | PASS | 2d62fbf2e5074786 | - | - | +| roborumble/mb.Monte_0.1.0.jar | roborumble | robot | score-review | f52fa9153bebc76b | - | - | +| roborumble/mbh.Mbh_0.1.jar | roborumble | robot | PASS | f93e22ed603d13d0 | - | - | +| roborumble/mbro.BelajarBot_0.0.3.jar | roborumble | robot | PASS | 533868a7667753bd | - | - | +| roborumble/mbro.Detektor3_0.1.1.jar | roborumble | robot | PASS | ee61ca6f09d190f8 | - | - | +| roborumble/mc.Messapia_0.1.8.jar | roborumble | robot | score-review | d02c8b3b9aa53fe9 | - | - | +| roborumble/mc2.enemy.Original_0.9.jar | roborumble | robot | DISCREPANCY (outcome) | d61d43fd7ce16b88 | - | - | +| roborumble/mcb.Audace_1.3.jar | roborumble | robot | PASS | 279a31189d233c25 | - | - | +| roborumble/md.November_1.0.jar | roborumble | robot | PASS | 7c7d30be72480d9b | - | - | +| roborumble/md.Pasta_1.1.jar | roborumble | robot | PASS | 7b288b050cf6c12e | - | - | +| roborumble/md.VelociRaptor_1.3.jar | roborumble | robot | PASS | 57957c6dff810321 | - | - | +| roborumble/mdouet.BotKicker_2.0.jar | roborumble | robot | score-review | 40c16d77c8c88342 | - | - | +| roborumble/metal.small.MCool_1.21.jar | roborumble | robot | score-review | 2f3bc23f806cf0b6 | - | - | +| roborumble/metal.small.dna2.MCoolDNA_1.5.jar | roborumble | robot | DISCREPANCY (outcome) | 0f8532e1d0c50b95 | - | - | +| roborumble/microtestbotpack.MicroTestBot_1.0.jar | roborumble | robot | PASS | ce815daa6d066802 | - | - | +| roborumble/mjhjd.MattHussey1_1.1.jar | roborumble | robot | PASS | 475b611d09ac7594 | - | - | +| roborumble/mk.Alpha_0.2.1.jar | roborumble | robot | PASS | 71b934ed45a01855 | - | - | +| roborumble/mladjo.AIR_0.7.jar | roborumble | robot | PASS | 6861dd6a51c0545e | - | - | +| roborumble/mladjo.GnuKlub_0.1.jar | roborumble | robot | score-review | 23029b18ae3acd53 | - | - | +| roborumble/mladjo.Grrrrr_0.9.jar | roborumble | robot | score-review | 0323d04c91b510a4 | - | - | +| roborumble/mladjo.Startko_1.0.jar | roborumble | robot | PASS | 6b642e781008ae25 | - | - | +| roborumble/mladjo.iRobot_0.3.jar | roborumble | robot | score-review | 38dccf41ca9f4c06 | - | - | +| roborumble/mld.DustBunny_3.8.jar | roborumble | robot | PASS | 0f2a548789a3aab5 | - | - | +| roborumble/mld.Infinity_2.2.jar | roborumble | robot | score-review | e5b845799f252102 | - | - | +| roborumble/mld.LittleBlackBook_1.69e.jar | roborumble | robot | score-review | 2974701ea33707c7 | - | - | +| roborumble/mld.Moebius_2.9.3.jar | roborumble | robot | PASS | a8e588a36ad8a74b | - | - | +| roborumble/mld.Wisdom_1.0.jar | roborumble | robot | score-review | 47a73446157b9ff6 | - | - | +| roborumble/mld.jdc.nano.LittleBlackBook_1.0.jar | roborumble | robot | score-review | 2ec30f004042b332 | - | - | +| roborumble/mmb.Roskilde_0.5.jar | roborumble | robot | PASS | b23b95ce6ce7c9bf | - | - | +| roborumble/mme.NikeEnhanced_2.0.jar | roborumble | robot | score-review | 82d3439e0edbe4b4 | - | - | +| roborumble/mn.Combat_3.25.0.jar | roborumble | robot | DISCREPANCY (outcome) | ec1cce937bc29b09 | - | - | +| roborumble/mn.micro.perceptual.Mimic_1.0.0.jar | roborumble | robot | PASS | fa21dbaf21a76e1c | - | - | +| roborumble/mn.nano.SkippedTurns_1.1.0.jar | roborumble | robot | DISCREPANCY (outcome) | 6575d76867504d26 | - | - | +| roborumble/mn.nano.perceptual.Impact_1.3.0.jar | roborumble | robot | score-review | 3eaffb97ae957a2d | - | - | +| roborumble/mnt.AHEB_0.6a.jar | roborumble | robot | score-review | f17bdd7a3c104b3c | - | - | +| roborumble/mnt.SurferBot_0.2.5.jar | roborumble | robot | DISCREPANCY (outcome) | 47a1e08efb5ca58c | - | - | +| roborumble/morbid.MorbidPriest_1.0.jar | roborumble | robot | PASS | fc177c15b82ca872 | - | - | +| roborumble/mrm.MightyMoose_.2.jar | roborumble | robot | score-review | 87529bbdc6c32027 | - | - | +| roborumble/ms.Ares_0.19.jar | roborumble | robot | PASS | d8663236bffd6ec7 | - | - | +| roborumble/mue.Ascendant_1.2.27.jar | roborumble | robot | score-review | 5707fc085104a700 | - | - | +| roborumble/mue.Hyperion_0.8.jar | roborumble | robot | score-review | 46f8b66bc9b65f98 | - | - | +| roborumble/muf.CrazyKitten_0.9.jar | roborumble | robot | PASS | 24ebb83f1f83c891 | - | - | +| roborumble/mwj.A1176183_1.0.jar | roborumble | robot | score-review | 4e51a38a4bc47576 | - | - | +| roborumble/myl.micro.Avipes_1.00.jar | roborumble | robot | PASS | 032e896324fbf636 | - | - | +| roborumble/myl.micro.NekoNinja_1.30.jar | roborumble | robot | PASS | 9d230e4afbe3b6b4 | - | - | +| roborumble/myl.micro.Predator_1.50.jar | roborumble | robot | PASS | 0b94d58e2efb335f | - | - | +| roborumble/myl.micro.Troodon_1.10.jar | roborumble | robot | score-review | 7e319cec019dd57c | - | - | +| roborumble/myl.nano.Graviton_1.10.jar | roborumble | robot | score-review | 42f21d05faa46521 | - | - | +| roborumble/myl.nano.Kakuru_1.20.jar | roborumble | robot | PASS | e3aebeeba9256a4e | - | - | +| roborumble/myl.nano.KomoriNinja_1.1.jar | roborumble | robot | score-review | 6a75615f456acc97 | - | - | +| roborumble/mym.EdgeStalker_1.0.jar | roborumble | robot | DISCREPANCY (outcome) | 032038ab1ca0e462 | - | - | +| roborumble/mz.AdeptBSB_1.03.jar | roborumble | robot | PASS | 25ee22f1da166676 | - | - | +| roborumble/mz.Adept_2.65.jar | roborumble | robot | PASS | e3afcb98c1cb92f6 | - | - | +| roborumble/mz.Movement_1.8.jar | roborumble | robot | PASS | 4f0a6caf21085d4b | - | - | +| roborumble/mz.NanoDeath_2.56.jar | roborumble | robot | PASS | 03396c3d89c24579 | - | - | +| roborumble/mz.NanoGod_2.02.jar | roborumble | robot | PASS | a6855f8135b53cb0 | - | - | +| roborumble/nammyung.ModelT_0.23.jar | roborumble | robot | score-review | 4c8a112e7dc35bd7 | - | - | +| roborumble/nan.Ihivatar_Mk_1_1.0.jar | roborumble | robot | PASS | eb5fed405cab9789 | - | - | +| roborumble/nanoskank.NanoSkank_1.0.jar | roborumble | robot | PASS | 7e4a1ed5b2f0f40e | - | - | +| roborumble/nat.BlackHole_2.0gamma.jar | roborumble | robot | PASS | fdc28b7d03672f1d | - | - | +| roborumble/nat.Hikari_dev0001.jar | roborumble | robot | score-review | b8ce5e69e7e53f66 | - | - | +| roborumble/nat.Samekh_0.4.jar | roborumble | robot | PASS | bee07aa4157f7d5c | - | - | +| roborumble/nat.micro.Reepicheep_0.1a.jar | roborumble | robot | PASS | 6c7f7a58d66f1262 | - | - | +| roborumble/nat.nano.OcnirpPM_1.0.jar | roborumble | robot | PASS | 90c0cc386bc2e573 | - | - | +| roborumble/nat.nano.OcnirpSNG_1.0b.jar | roborumble | robot | PASS | 22d06f5de04df3f6 | - | - | +| roborumble/nat.nano.Ocnirp_1.73.jar | roborumble | robot | PASS | 20ec467791831d64 | - | - | +| roborumble/ncj.MoxieBot_1.0.jar | roborumble | robot | score-review | 1a1bd5dc5e9ba681 | - | - | +| roborumble/ndn.DyslexicMonkey_1.1.jar | roborumble | robot | PASS | aaffdedf8580c2bb | - | - | +| roborumble/ne.Chimera_1.2.jar | roborumble | robot | DISCREPANCY (outcome) | 4b2e6452c51ec17c | - | - | +| roborumble/nexus.Experimental_0.2.jar | roborumble | robot | PASS | c7a8e0fdd71f81b9 | - | - | +| roborumble/nexus.One_1.0.jar | roborumble | robot | PASS | be225d1536d87a30 | - | - | +| roborumble/nexus.Prototype_1.0.jar | roborumble | robot | score-review | 771ce88613c6fbc6 | - | - | +| roborumble/nexus.Two_0.2.jar | roborumble | robot | score-review | faf8e5dab6252c46 | - | - | +| roborumble/ngf.nano.Sparky_0.1.5.jar | roborumble | robot | score-review | b634538fb008be6f | - | - | +| roborumble/nic.Nicator_2.4.jar | roborumble | robot | DISCREPANCY (outcome) | 67338d8403618fc6 | - | - | +| roborumble/nic.SnippetBot_1.0.jar | roborumble | robot | score-review | 0c261ee7291c16e5 | - | - | +| roborumble/nkn.mini.Jskr0_0.1.jar | roborumble | robot | score-review | c273fc1b4d424de2 | - | - | +| roborumble/non.mega.NaN_0.1.jar | roborumble | robot | PASS | 8a21454d7a135902 | - | - | +| roborumble/non.mega.NoName_0.0.jar | roborumble | robot | PASS | 41bc7d5ccd53bdbf | - | - | | teamrumble/CharlieN.OmegaTeam.OmegaTeam_1.0.jar | teamrumble | team | score-review | 6b043758c4fcae5a | - | - | | teamrumble/Krabb.sliNk.SlartibartfassTeam_0.5.jar | teamrumble | team | DISCREPANCY (outcome) | 5e806f4254aa254d | - | - | | teamrumble/Polkwane.PTeam_1.0.jar | teamrumble | team | DISCREPANCY (outcome) | c265ba7a00f77e4c | - | - | diff --git a/compat-test/test_parity_registry.py b/compat-test/test_parity_registry.py index e563e70..cd36688 100644 --- a/compat-test/test_parity_registry.py +++ b/compat-test/test_parity_registry.py @@ -1,9 +1,11 @@ import importlib.util +import json import sys import tempfile import unittest from pathlib import Path from types import SimpleNamespace +from unittest.mock import patch MODULE = Path(__file__).with_name("parity_registry.py") @@ -80,6 +82,88 @@ def testHARN001_UnitPositive_StateSyncAppendsWithoutReplacingEarlierObservation( self.assertEqual(0, registry.sync_state(data, state, Path("missing"), manifest)) self.assertEqual("PASS", data["subjects"]["roborumble/a.Bot_1.0.jar"]["status"]) + def testHARN001_UnitPositive_NormalCheckpointSyncDoesNotReplayAccumulatedProgress(self): + with tempfile.TemporaryDirectory() as directory: + root = Path(directory) + state_file = root / "test_progress.json" + state_file.write_text(json.dumps({ + "version": 1, + "settings": {}, + "robots": {"roborumble/prior.Bot_1.0.jar": { + "status": "PASS", "completed_at": "2026-09-10T00:00:00Z", + "setup": {}, "rc": {}, "tr": {}, + }}, + }), encoding="utf-8") + current_jar = root / "roborumble" / "current.Bot_1.0.jar" + current_jar.parent.mkdir() + current_jar.write_bytes(b"current") + captured = [] + + def result(): + return { + "ok": True, "score": 1.0, "scores": [1.0], "error_count": 0, + "elapsed": 0.0, "errors": [], "log_text": "", "selected": "current.Bot", + } + + with patch.object(harness, "STATE_FILE", state_file), \ + patch.object(harness, "discover_jars", return_value=[("roborumble", current_jar)]), \ + patch.object(harness, "check_prerequisites"), \ + patch.object(harness, "division_setup", return_value={}), \ + patch.object(harness, "run_rc_battle", side_effect=lambda *args, **kwargs: result()), \ + patch.object(harness, "run_tr_battle", side_effect=lambda *args, **kwargs: result()), \ + patch.object(harness, "write_error_log", return_value=False), \ + patch.object(harness, "evaluate", return_value=("PASS", 0.0)), \ + patch.object(harness, "regenerate_report"), \ + patch.object(harness, "sync_parity_registry", + side_effect=lambda checkpoint, opts: captured.append(checkpoint)), \ + patch.object(sys, "argv", ["compat_test.py", "--collections", "roborumble", "--limit", "1"]): + self.assertEqual(0, harness.main()) + + self.assertEqual( + {"roborumble/current.Bot_1.0.jar"}, + set(captured[0]["robots"]), + ) + + def testHARN001_UnitPositive_TeamMemberDirsReadWindows1252Metadata(self): + with tempfile.TemporaryDirectory() as directory: + root = Path(directory) + team_dir = root / "legacy.Team_1.0" + team_dir.mkdir() + member_dir = root / "membre-é" + member_dir.mkdir() + (team_dir / "legacy.Team_1.0.json").write_bytes( + json.dumps({"teamMembers": [member_dir.name]}).encode("cp1252")) + + self.assertEqual([member_dir], harness.team_member_dirs(team_dir)) + + def testHARN008_UnitPositive_RobocodeVersionReadsInstallReleaseHeading(self): + with tempfile.TemporaryDirectory() as directory: + root = Path(directory) + (root / "versions.md").write_text( + "## Version 1.11.1 (13-Jul-2026)\n", encoding="utf-8") + self.assertEqual("1.11.1", harness.resolve_robocode_version(root)) + self.assertIsNone(harness.robocode_version_error(root, "1.11.1")) + + def testHARN008_UnitPositive_RobocodeVersionFallsBackToUniqueEngineVersion(self): + with tempfile.TemporaryDirectory() as directory: + root = Path(directory) + (root / "libs").mkdir() + (root / "libs" / "robocode.core-1.11.1.jar").write_bytes(b"") + (root / "libs" / "robocode.host-1.11.1.jar").write_bytes(b"") + self.assertEqual("1.11.1", harness.resolve_robocode_version(root)) + + def testHARN008_UnitNegative_UnsupportedRobocodeVersionIsRejected(self): + with tempfile.TemporaryDirectory() as directory: + root = Path(directory) + (root / "versions.md").write_text("## Version 1.9.4.2\n", encoding="utf-8") + error = harness.robocode_version_error(root) + self.assertIn("not in LiteRumble's allowed client list", error) + + def testHARN008_UnitNegative_UnknownRobocodeVersionIsRejected(self): + with tempfile.TemporaryDirectory() as directory: + error = harness.robocode_version_error(Path(directory)) + self.assertIn("could not be determined", error) + def testHARN001_UnitNegative_FailedCasesRemainUnresolved(self): self.assertTrue(registry.is_unresolved("FAIL (TR)")) self.assertTrue(registry.is_unresolved("DISCREPANCY (score)")) diff --git a/docs/capabilities/CAP-007-compatibility-harness/design.md b/docs/capabilities/CAP-007-compatibility-harness/design.md index 45f0601..55322a4 100644 --- a/docs/capabilities/CAP-007-compatibility-harness/design.md +++ b/docs/capabilities/CAP-007-compatibility-harness/design.md @@ -30,7 +30,7 @@ Compare: scores as the sum of all staged participants' totals, errors as normali ## Durable parity registry -`compat-test/parity-registry.json` is append-only per subject. An observation carries the official setup, source jar digest, selected classic identity, team classification, both engine outcomes, normalized errors, and the bridge, Tank Royale, Bot API, wrapper, and runner fingerprints that produced it. `parity-registry.md` is generated from that JSON and is the review table for every subject. +`compat-test/parity-registry.json` is append-only per subject. An observation carries the official setup, source jar digest, selected classic identity, team classification, both engine outcomes, normalized errors, and the classic Robocode version plus bridge, Tank Royale, Bot API, wrapper, and runner fingerprints that produced it. The harness refuses to create LiteRumble evidence when the classic version is unknown or outside LiteRumble's allowed client list. `parity-registry.md` is generated from that JSON and is the review table for every subject. The harness imports an interrupted checkpoint with `--sync-registry`, runs new first-pass work in bounded `--limit` batches, and selects retests with `--retry-unresolved` or `--retest-cause`. Matched subjects stay recorded and are not selected after an unrelated repair. diff --git a/robots-wrapper/src/main/java/Main.java b/robots-wrapper/src/main/java/Main.java index 4cc7e27..1fd81fc 100644 --- a/robots-wrapper/src/main/java/Main.java +++ b/robots-wrapper/src/main/java/Main.java @@ -12,8 +12,6 @@ import java.util.zip.ZipFile; import java.util.zip.ZipInputStream; -// TODO: Handle robot.properties field `includeData` (boolean) - import org.apache.bcel.classfile.ClassParser; public class Main { @@ -59,6 +57,7 @@ static void processJar(Path jarPath) { classToBotDir.put(robotProps.classname, botDir); Files.copy(zipFile.getInputStream(zipEntry), botDir.resolve(robotProps.classname + ".properties")); + copyDataFiles(zipFile, robotProps, botDir); } } } @@ -254,7 +253,6 @@ static RobotProperties processProperties(InputStream is) throws IOException { String includeDataStr = props.getProperty("robot.include.data"); if (includeDataStr != null) { robotProps.includeData = Boolean.parseBoolean(includeDataStr); - System.err.println("Include data is not supported yet: " + robotProps.name()); } return robotProps; @@ -285,6 +283,47 @@ static Path createBotDir(Path botDirPath, String filename, RobotProperties robot return botDir; } + /** Copies the robot's packaged data resources into the runtime data directory. */ + static void copyDataFiles(ZipFile zipFile, RobotProperties robotProps, Path botDir) throws IOException { + String resourcePrefix = robotProps.classname.replace('.', '/') + ".data/"; + Path dataDir = botDir.resolve(robotProps.name() + ".data").normalize(); + int copied = 0; + + var entries = zipFile.entries(); + while (entries.hasMoreElements()) { + var entry = entries.nextElement(); + String entryName = entry.getName().replace('\\', '/'); + if (!entryName.startsWith(resourcePrefix)) { + continue; + } + + String relativeName = entryName.substring(resourcePrefix.length()); + if (relativeName.isEmpty()) { + continue; + } + Path target = dataDir.resolve(relativeName).normalize(); + if (!target.startsWith(dataDir)) { + throw new IOException("robot data entry escapes its data directory: " + entry.getName()); + } + if (entry.isDirectory()) { + Files.createDirectories(target); + continue; + } + + if (target.getParent() != null) { + Files.createDirectories(target.getParent()); + } + try (InputStream inputStream = zipFile.getInputStream(entry)) { + Files.copy(inputStream, target, java.nio.file.StandardCopyOption.REPLACE_EXISTING); + } + copied++; + } + + if (copied > 0) { + System.out.println(" copied " + copied + " packaged data file(s)"); + } + } + static void createJsonFile(Path botDir, RobotProperties robotProps) throws IOException { File file = createOrOverwriteFile(botDir, botDir.getFileName() + ".json");