{
 "repo": {
  "name": "json-io",
  "owner": "jdereg",
  "stars": 389,
  "license": "Apache-2.0",
  "full_name": "jdereg/json-io",
  "fetched_at": "2026-11-08T11:00:38.517871+00:00",
  "primary_language": "Java"
 },
 "burns": [],
 "total": 105,
 "agents": [
  {
   "agent": "openai-codex",
   "merged": 105,
   "flights": 105,
   "burn_rate": 0,
   "merge_rate": 1,
   "last_flight_at": "2025-06-25T03:08:50+00:00",
   "median_hours_to_merge": 0
  }
 ],
 "riders": [],
 "flights": [
  {
   "agent": "openai-codex",
   "state": "merged",
   "title": "Fix ThrowableFactory null cause",
   "number": 418,
   "outcome": "merged_clean",
   "index_ok": false,
   "additions": 13,
   "deletions": 6,
   "merged_at": "2025-06-25T03:09:20+00:00",
   "opened_at": "2025-06-25T03:08:50+00:00",
   "task_type": "fix",
   "files_changed": 2,
   "hours_to_merge": 0.01
  },
  {
   "agent": "openai-codex",
   "state": "merged",
   "title": "Fix exception deserialization order",
   "number": 417,
   "outcome": "merged_clean",
   "index_ok": true,
   "additions": 25,
   "deletions": 11,
   "merged_at": "2025-06-25T01:17:00+00:00",
   "opened_at": "2025-06-25T01:16:50+00:00",
   "task_type": "fix",
   "files_changed": 2,
   "hours_to_merge": 0
  },
  {
   "agent": "openai-codex",
   "state": "merged",
   "title": "Fix ThrowableFactory cause handling",
   "number": 416,
   "outcome": "merged_clean",
   "index_ok": false,
   "additions": 3,
   "deletions": 3,
   "merged_at": "2025-06-25T01:04:15+00:00",
   "opened_at": "2025-06-25T01:04:01+00:00",
   "task_type": "fix",
   "files_changed": 2,
   "hours_to_merge": 0
  },
  {
   "agent": "openai-codex",
   "state": "merged",
   "title": "Fix throwable factory message resolution",
   "number": 415,
   "outcome": "merged_clean",
   "index_ok": false,
   "additions": 7,
   "deletions": 2,
   "merged_at": "2025-06-25T00:53:14+00:00",
   "opened_at": "2025-06-25T00:53:06+00:00",
   "task_type": "fix",
   "files_changed": 2,
   "hours_to_merge": 0
  },
  {
   "agent": "openai-codex",
   "state": "merged",
   "title": "Refactor ThrowableFactory",
   "number": 414,
   "outcome": "merged_clean",
   "index_ok": true,
   "additions": 14,
   "deletions": 15,
   "merged_at": "2025-06-25T00:39:19+00:00",
   "opened_at": "2025-06-25T00:39:10+00:00",
   "task_type": "refactor",
   "files_changed": 2,
   "hours_to_merge": 0
  },
  {
   "agent": "openai-codex",
   "state": "merged",
   "title": "Use ReflectionUtils APIs",
   "number": 413,
   "outcome": "merged_clean",
   "index_ok": true,
   "additions": 18,
   "deletions": 8,
   "merged_at": "2025-06-23T06:46:01+00:00",
   "opened_at": "2025-06-23T06:45:37+00:00",
   "task_type": "refactor",
   "files_changed": 3,
   "hours_to_merge": 0.01
  },
  {
   "agent": "openai-codex",
   "state": "merged",
   "title": "Update docs for -parameters support",
   "number": 412,
   "outcome": "merged_clean",
   "index_ok": false,
   "additions": 12,
   "deletions": 6,
   "merged_at": "2025-06-23T05:07:28+00:00",
   "opened_at": "2025-06-23T05:07:21+00:00",
   "task_type": "docs",
   "files_changed": 3,
   "hours_to_merge": 0
  },
  {
   "agent": "openai-codex",
   "state": "merged",
   "title": "Add regression test for timestamp map",
   "number": 411,
   "outcome": "merged_clean",
   "index_ok": true,
   "additions": 20,
   "deletions": 0,
   "merged_at": "2025-06-19T19:13:04+00:00",
   "opened_at": "2025-06-19T19:12:57+00:00",
   "task_type": "test",
   "files_changed": 2,
   "hours_to_merge": 0
  },
  {
   "agent": "openai-codex",
   "state": "merged",
   "title": "Add JsonObject map-view tests",
   "number": 410,
   "outcome": "merged_clean",
   "index_ok": true,
   "additions": 82,
   "deletions": 0,
   "merged_at": "2025-06-19T14:58:21+00:00",
   "opened_at": "2025-06-19T14:57:51+00:00",
   "task_type": "test",
   "files_changed": 2,
   "hours_to_merge": 0.01
  },
  {
   "agent": "openai-codex",
   "state": "merged",
   "title": "Fix injector reflection test",
   "number": 409,
   "outcome": "merged_clean",
   "index_ok": false,
   "additions": 13,
   "deletions": 4,
   "merged_at": "2025-06-19T14:41:46+00:00",
   "opened_at": "2025-06-19T14:41:33+00:00",
   "task_type": "fix",
   "files_changed": 2,
   "hours_to_merge": 0
  },
  {
   "agent": "openai-codex",
   "state": "merged",
   "title": "Add Javadoc for ZoneIdWriter",
   "number": 408,
   "outcome": "merged_clean",
   "index_ok": true,
   "additions": 21,
   "deletions": 1,
   "merged_at": "2025-06-19T14:39:33+00:00",
   "opened_at": "2025-06-19T14:39:23+00:00",
   "task_type": "docs",
   "files_changed": 2,
   "hours_to_merge": 0
  },
  {
   "agent": "openai-codex",
   "state": "merged",
   "title": "Add Javadoc for ByteArrayWriter",
   "number": 407,
   "outcome": "merged_clean",
   "index_ok": true,
   "additions": 21,
   "deletions": 0,
   "merged_at": "2025-06-19T14:38:51+00:00",
   "opened_at": "2025-06-19T14:38:39+00:00",
   "task_type": "docs",
   "files_changed": 2,
   "hours_to_merge": 0
  },
  {
   "agent": "openai-codex",
   "state": "merged",
   "title": "Add JsonObject null input tests",
   "number": 406,
   "outcome": "merged_clean",
   "index_ok": true,
   "additions": 41,
   "deletions": 1,
   "merged_at": "2025-06-19T14:36:45+00:00",
   "opened_at": "2025-06-19T14:35:35+00:00",
   "task_type": "test",
   "files_changed": 3,
   "hours_to_merge": 0.02
  },
  {
   "agent": "openai-codex",
   "state": "merged",
   "title": "Add tests for ReadOptions defaults",
   "number": 405,
   "outcome": "merged_clean",
   "index_ok": true,
   "additions": 28,
   "deletions": 0,
   "merged_at": "2025-06-19T14:34:33+00:00",
   "opened_at": "2025-06-19T14:33:54+00:00",
   "task_type": "test",
   "files_changed": 2,
   "hours_to_merge": 0.01
  },
  {
   "agent": "openai-codex",
   "state": "merged",
   "title": "Add missing converter options test",
   "number": 404,
   "outcome": "merged_clean",
   "index_ok": false,
   "additions": 18,
   "deletions": 0,
   "merged_at": "2025-06-19T14:31:09+00:00",
   "opened_at": "2025-06-19T14:30:57+00:00",
   "task_type": "test",
   "files_changed": 2,
   "hours_to_merge": 0
  },
  {
   "agent": "openai-codex",
   "state": "merged",
   "title": "Fix EnumSet traversal for missing names",
   "number": 403,
   "outcome": "merged_clean",
   "index_ok": false,
   "additions": 11,
   "deletions": 0,
   "merged_at": "2025-06-19T12:52:53+00:00",
   "opened_at": "2025-06-19T12:52:45+00:00",
   "task_type": "fix",
   "files_changed": 2,
   "hours_to_merge": 0
  },
  {
   "agent": "openai-codex",
   "state": "merged",
   "title": "Fix broken root type test",
   "number": 402,
   "outcome": "merged_clean",
   "index_ok": false,
   "additions": 4,
   "deletions": 1,
   "merged_at": "2025-06-19T12:50:31+00:00",
   "opened_at": "2025-06-19T12:50:19+00:00",
   "task_type": "fix",
   "files_changed": 2,
   "hours_to_merge": 0
  },
  {
   "agent": "openai-codex",
   "state": "merged",
   "title": "Fix TreeSet json mode test",
   "number": 401,
   "outcome": "merged_clean",
   "index_ok": false,
   "additions": 4,
   "deletions": 1,
   "merged_at": "2025-06-19T12:49:02+00:00",
   "opened_at": "2025-06-19T12:48:54+00:00",
   "task_type": "fix",
   "files_changed": 2,
   "hours_to_merge": 0
  },
  {
   "agent": "openai-codex",
   "state": "merged",
   "title": "Fix failing JsonReader test",
   "number": 400,
   "outcome": "merged_clean",
   "index_ok": false,
   "additions": 2,
   "deletions": 1,
   "merged_at": "2025-06-19T12:47:08+00:00",
   "opened_at": "2025-06-19T12:44:56+00:00",
   "task_type": "fix",
   "files_changed": 2,
   "hours_to_merge": 0.04
  },
  {
   "agent": "openai-codex",
   "state": "merged",
   "title": "Fix generics in MapResolver test",
   "number": 399,
   "outcome": "merged_clean",
   "index_ok": true,
   "additions": 115,
   "deletions": 2,
   "merged_at": "2025-06-19T12:35:01+00:00",
   "opened_at": "2025-06-19T12:34:18+00:00",
   "task_type": "fix",
   "files_changed": 3,
   "hours_to_merge": 0.01
  },
  {
   "agent": "openai-codex",
   "state": "merged",
   "title": "Improve handleObjectRoot coverage",
   "number": 398,
   "outcome": "merged_clean",
   "index_ok": true,
   "additions": 112,
   "deletions": 0,
   "merged_at": "2025-06-19T12:33:46+00:00",
   "opened_at": "2025-06-19T12:33:39+00:00",
   "task_type": "test",
   "files_changed": 2,
   "hours_to_merge": 0
  },
  {
   "agent": "openai-codex",
   "state": "merged",
   "title": "Add MapResolver traverseCollection tests",
   "number": 397,
   "outcome": "merged_clean",
   "index_ok": true,
   "additions": 173,
   "deletions": 1,
   "merged_at": "2025-06-19T12:29:09+00:00",
   "opened_at": "2025-06-19T12:28:28+00:00",
   "task_type": "test",
   "files_changed": 3,
   "hours_to_merge": 0.01
  },
  {
   "agent": "openai-codex",
   "state": "merged",
   "title": "Add DateAsLongWriter test",
   "number": 396,
   "outcome": "merged_clean",
   "index_ok": true,
   "additions": 36,
   "deletions": 0,
   "merged_at": "2025-06-19T12:25:56+00:00",
   "opened_at": "2025-06-19T12:25:39+00:00",
   "task_type": "test",
   "files_changed": 2,
   "hours_to_merge": 0
  },
  {
   "agent": "openai-codex",
   "state": "merged",
   "title": "Add unit test for permanent accessor removal",
   "number": 395,
   "outcome": "merged_clean",
   "index_ok": false,
   "additions": 18,
   "deletions": 0,
   "merged_at": "2025-06-19T12:11:16+00:00",
   "opened_at": "2025-06-19T12:11:08+00:00",
   "task_type": "test",
   "files_changed": 2,
   "hours_to_merge": 0
  },
  {
   "agent": "openai-codex",
   "state": "merged",
   "title": "Add tests for Pattern and Currency",
   "number": 394,
   "outcome": "merged_clean",
   "index_ok": true,
   "additions": 134,
   "deletions": 0,
   "merged_at": "2025-06-19T12:07:11+00:00",
   "opened_at": "2025-06-19T12:07:02+00:00",
   "task_type": "test",
   "files_changed": 3,
   "hours_to_merge": 0
  },
  {
   "agent": "openai-codex",
   "state": "merged",
   "title": "Fix primitive array handling in Resolver",
   "number": 393,
   "outcome": "merged_clean",
   "index_ok": false,
   "additions": 4,
   "deletions": 1,
   "merged_at": "2025-06-19T11:44:14+00:00",
   "opened_at": "2025-06-19T11:44:07+00:00",
   "task_type": "fix",
   "files_changed": 2,
   "hours_to_merge": 0
  },
  {
   "agent": "openai-codex",
   "state": "merged",
   "title": "Add tests for Resolver.valueToTarget",
   "number": 392,
   "outcome": "merged_clean",
   "index_ok": true,
   "additions": 80,
   "deletions": 0,
   "merged_at": "2025-06-19T11:37:41+00:00",
   "opened_at": "2025-06-19T11:37:10+00:00",
   "task_type": "test",
   "files_changed": 2,
   "hours_to_merge": 0.01
  },
  {
   "agent": "openai-codex",
   "state": "merged",
   "title": "Add tests for Resolver.setArrayElement",
   "number": 391,
   "outcome": "merged_clean",
   "index_ok": true,
   "additions": 123,
   "deletions": 0,
   "merged_at": "2025-06-19T11:28:22+00:00",
   "opened_at": "2025-06-19T11:28:10+00:00",
   "task_type": "test",
   "files_changed": 2,
   "hours_to_merge": 0
  },
  {
   "agent": "openai-codex",
   "state": "merged",
   "title": "Add unit tests for Resolver valueToTarget",
   "number": 390,
   "outcome": "merged_clean",
   "index_ok": true,
   "additions": 101,
   "deletions": 0,
   "merged_at": "2025-06-19T11:24:04+00:00",
   "opened_at": "2025-06-19T11:23:33+00:00",
   "task_type": "test",
   "files_changed": 2,
   "hours_to_merge": 0.01
  },
  {
   "agent": "openai-codex",
   "state": "merged",
   "title": "Fix enum field deserialization",
   "number": 389,
   "outcome": "merged_clean",
   "index_ok": false,
   "additions": 8,
   "deletions": 4,
   "merged_at": "2025-06-19T06:07:33+00:00",
   "opened_at": "2025-06-19T06:07:22+00:00",
   "task_type": "fix",
   "files_changed": 3,
   "hours_to_merge": 0
  },
  {
   "agent": "openai-codex",
   "state": "merged",
   "title": "Align enum test with default format",
   "number": 388,
   "outcome": "merged_clean",
   "index_ok": true,
   "additions": 12,
   "deletions": 11,
   "merged_at": "2025-06-19T06:01:29+00:00",
   "opened_at": "2025-06-19T06:00:58+00:00",
   "task_type": "test",
   "files_changed": 4,
   "hours_to_merge": 0.01
  },
  {
   "agent": "openai-codex",
   "state": "merged",
   "title": "Fix enum string conversion",
   "number": 387,
   "outcome": "merged_clean",
   "index_ok": false,
   "additions": 6,
   "deletions": 1,
   "merged_at": "2025-06-19T05:57:07+00:00",
   "opened_at": "2025-06-19T05:56:57+00:00",
   "task_type": "fix",
   "files_changed": 2,
   "hours_to_merge": 0
  },
  {
   "agent": "openai-codex",
   "state": "merged",
   "title": "Fix enum alias coercion test",
   "number": 386,
   "outcome": "merged_clean",
   "index_ok": true,
   "additions": 10,
   "deletions": 16,
   "merged_at": "2025-06-19T05:48:30+00:00",
   "opened_at": "2025-06-19T05:47:59+00:00",
   "task_type": "fix",
   "files_changed": 4,
   "hours_to_merge": 0.01
  },
  {
   "agent": "openai-codex",
   "state": "merged",
   "title": "Fix EnumBasicCreationTest for new default enum output",
   "number": 385,
   "outcome": "merged_clean",
   "index_ok": true,
   "additions": 25,
   "deletions": 24,
   "merged_at": "2025-06-19T05:55:46+00:00",
   "opened_at": "2025-06-19T05:46:39+00:00",
   "task_type": "fix",
   "files_changed": 9,
   "hours_to_merge": 0.15
  },
  {
   "agent": "openai-codex",
   "state": "merged",
   "title": "Fix enum round-trip test",
   "number": 384,
   "outcome": "merged_clean",
   "index_ok": false,
   "additions": 3,
   "deletions": 2,
   "merged_at": "2025-06-19T05:46:20+00:00",
   "opened_at": "2025-06-19T05:46:13+00:00",
   "task_type": "fix",
   "files_changed": 2,
   "hours_to_merge": 0
  },
  {
   "agent": "openai-codex",
   "state": "merged",
   "title": "Fix enum aliasing test",
   "number": 383,
   "outcome": "merged_clean",
   "index_ok": false,
   "additions": 1,
   "deletions": 0,
   "merged_at": "2025-06-19T05:45:37+00:00",
   "opened_at": "2025-06-19T05:45:28+00:00",
   "task_type": "fix",
   "files_changed": 1,
   "hours_to_merge": 0
  },
  {
   "agent": "openai-codex",
   "state": "merged",
   "title": "Fix enum alias serialization with coercion",
   "number": 382,
   "outcome": "merged_clean",
   "index_ok": true,
   "additions": 18,
   "deletions": 19,
   "merged_at": "2025-06-19T05:44:36+00:00",
   "opened_at": "2025-06-19T05:42:56+00:00",
   "task_type": "fix",
   "files_changed": 7,
   "hours_to_merge": 0.03
  },
  {
   "agent": "openai-codex",
   "state": "merged",
   "title": "Fix EnumWithValueField primitive test",
   "number": 381,
   "outcome": "merged_clean",
   "index_ok": false,
   "additions": 2,
   "deletions": 1,
   "merged_at": "2025-06-19T05:36:53+00:00",
   "opened_at": "2025-06-19T05:36:47+00:00",
   "task_type": "fix",
   "files_changed": 2,
   "hours_to_merge": 0
  },
  {
   "agent": "openai-codex",
   "state": "merged",
   "title": "Fix enum deserialization helper",
   "number": 380,
   "outcome": "merged_clean",
   "index_ok": false,
   "additions": 4,
   "deletions": 1,
   "merged_at": "2025-06-19T05:33:55+00:00",
   "opened_at": "2025-06-19T05:33:47+00:00",
   "task_type": "fix",
   "files_changed": 2,
   "hours_to_merge": 0
  },
  {
   "agent": "openai-codex",
   "state": "merged",
   "title": "Fix write options builder side effects",
   "number": 379,
   "outcome": "merged_clean",
   "index_ok": true,
   "additions": 35,
   "deletions": 2,
   "merged_at": "2025-06-19T05:27:38+00:00",
   "opened_at": "2025-06-19T05:27:27+00:00",
   "task_type": "fix",
   "files_changed": 4,
   "hours_to_merge": 0
  },
  {
   "agent": "openai-codex",
   "state": "merged",
   "title": "Replace println with JUL logging",
   "number": 378,
   "outcome": "merged_clean",
   "index_ok": true,
   "additions": 256,
   "deletions": 25,
   "merged_at": "2025-06-19T05:24:01+00:00",
   "opened_at": "2025-06-19T05:23:00+00:00",
   "task_type": "refactor",
   "files_changed": 9,
   "hours_to_merge": 0.02
  },
  {
   "agent": "openai-codex",
   "state": "merged",
   "title": "Fix enum writer root output",
   "number": 377,
   "outcome": "merged_clean",
   "index_ok": false,
   "additions": 16,
   "deletions": 3,
   "merged_at": "2025-06-19T05:19:48+00:00",
   "opened_at": "2025-06-19T05:19:39+00:00",
   "task_type": "fix",
   "files_changed": 3,
   "hours_to_merge": 0
  },
  {
   "agent": "openai-codex",
   "state": "merged",
   "title": "Fix WriteOptionsBuilder method filter test",
   "number": 376,
   "outcome": "merged_clean",
   "index_ok": false,
   "additions": 2,
   "deletions": 1,
   "merged_at": "2025-06-19T05:17:47+00:00",
   "opened_at": "2025-06-19T05:17:35+00:00",
   "task_type": "fix",
   "files_changed": 2,
   "hours_to_merge": 0
  },
  {
   "agent": "openai-codex",
   "state": "merged",
   "title": "Fix NamedMethodFilter test",
   "number": 375,
   "outcome": "merged_clean",
   "index_ok": false,
   "additions": 2,
   "deletions": 1,
   "merged_at": "2025-06-19T05:15:25+00:00",
   "opened_at": "2025-06-19T05:15:17+00:00",
   "task_type": "fix",
   "files_changed": 2,
   "hours_to_merge": 0
  },
  {
   "agent": "openai-codex",
   "state": "merged",
   "title": "Add WriteOptionsBuilder tests",
   "number": 374,
   "outcome": "merged_clean",
   "index_ok": true,
   "additions": 177,
   "deletions": 0,
   "merged_at": "2025-06-19T05:10:49+00:00",
   "opened_at": "2025-06-19T05:10:38+00:00",
   "task_type": "test",
   "files_changed": 2,
   "hours_to_merge": 0
  },
  {
   "agent": "openai-codex",
   "state": "merged",
   "title": "Add ReadOptionsBuilder unit tests",
   "number": 373,
   "outcome": "merged_clean",
   "index_ok": true,
   "additions": 99,
   "deletions": 0,
   "merged_at": "2025-06-19T05:06:22+00:00",
   "opened_at": "2025-06-19T05:06:13+00:00",
   "task_type": "test",
   "files_changed": 2,
   "hours_to_merge": 0
  },
  {
   "agent": "openai-codex",
   "state": "merged",
   "title": "Add tests for ObjectResolver.safeToString",
   "number": 372,
   "outcome": "merged_clean",
   "index_ok": true,
   "additions": 43,
   "deletions": 0,
   "merged_at": "2025-06-19T04:55:17+00:00",
   "opened_at": "2025-06-19T04:55:07+00:00",
   "task_type": "test",
   "files_changed": 2,
   "hours_to_merge": 0
  },
  {
   "agent": "openai-codex",
   "state": "merged",
   "title": "Add tests for JsonWriter value reflection",
   "number": 371,
   "outcome": "merged_clean",
   "index_ok": true,
   "additions": 88,
   "deletions": 1,
   "merged_at": "2025-06-19T04:50:13+00:00",
   "opened_at": "2025-06-19T04:48:28+00:00",
   "task_type": "test",
   "files_changed": 3,
   "hours_to_merge": 0.03
  },
  {
   "agent": "openai-codex",
   "state": "merged",
   "title": "Add unit test for DefaultReferenceTracker size",
   "number": 370,
   "outcome": "merged_clean",
   "index_ok": true,
   "additions": 28,
   "deletions": 0,
   "merged_at": "2025-06-19T04:47:25+00:00",
   "opened_at": "2025-06-19T04:47:16+00:00",
   "task_type": "test",
   "files_changed": 2,
   "hours_to_merge": 0
  },
  {
   "agent": "openai-codex",
   "state": "merged",
   "title": "Add default method tests for JsonReader",
   "number": 369,
   "outcome": "merged_clean",
   "index_ok": true,
   "additions": 34,
   "deletions": 0,
   "merged_at": "2025-06-19T04:38:48+00:00",
   "opened_at": "2025-06-19T04:38:39+00:00",
   "task_type": "test",
   "files_changed": 2,
   "hours_to_merge": 0
  }
 ],
 "indexed": 68,
 "monthly": [
  {
   "burns": 0,
   "month": "2025-05",
   "merged": 1,
   "flights": 1
  },
  {
   "burns": 0,
   "month": "2025-06",
   "merged": 104,
   "flights": 104
  }
 ],
 "top_authors": [
  {
   "name": null,
   "login": "jdereg",
   "flights": 105,
   "indexed": 68
  }
 ],
 "page": "https://agentriders.com/logs/jdereg/json-io/"
}