{
 "repo": {
  "name": "analytics",
  "owner": "Rello",
  "stars": 138,
  "license": "AGPL-3.0",
  "full_name": "Rello/analytics",
  "fetched_at": "2026-11-08T10:58:29.233256+00:00",
  "primary_language": "JavaScript"
 },
 "burns": [],
 "total": 73,
 "agents": [
  {
   "agent": "openai-codex",
   "merged": 61,
   "flights": 71,
   "burn_rate": 0,
   "merge_rate": 0.859,
   "last_flight_at": "2025-07-29T14:20:07+00:00",
   "median_hours_to_merge": 0.1
  },
  {
   "agent": "github-copilot",
   "merged": 1,
   "flights": 2,
   "burn_rate": 0,
   "merge_rate": 0.5,
   "last_flight_at": "2025-07-16T08:44:06+00:00",
   "median_hours_to_merge": 9.9
  }
 ],
 "riders": [],
 "flights": [
  {
   "agent": "openai-codex",
   "state": "merged",
   "title": "Update threshold modal IDs",
   "number": 533,
   "outcome": "merged_clean",
   "index_ok": true,
   "additions": 203,
   "deletions": 234,
   "merged_at": "2025-07-29T16:55:28+00:00",
   "opened_at": "2025-07-29T14:20:07+00:00",
   "task_type": "refactor",
   "files_changed": 6,
   "hours_to_merge": 2.59
  },
  {
   "agent": "openai-codex",
   "state": "merged",
   "title": "Fix settings button spacing and add menu animations",
   "number": 532,
   "outcome": "merged_clean",
   "index_ok": true,
   "additions": 25,
   "deletions": 6,
   "merged_at": "2025-07-29T13:46:27+00:00",
   "opened_at": "2025-07-29T13:44:14+00:00",
   "task_type": "fix",
   "files_changed": 2,
   "hours_to_merge": 0.04
  },
  {
   "agent": "openai-codex",
   "state": "merged",
   "title": "Move thresholds management to modal",
   "number": 531,
   "outcome": "merged_clean",
   "index_ok": false,
   "additions": 115,
   "deletions": 20,
   "merged_at": "2025-07-28T20:01:33+00:00",
   "opened_at": "2025-07-28T17:25:16+00:00",
   "task_type": "feat",
   "files_changed": 9,
   "hours_to_merge": 2.6
  },
  {
   "agent": "openai-codex",
   "state": "merged",
   "title": "Fix threshold coloring in tables",
   "number": 530,
   "outcome": "merged_clean",
   "index_ok": false,
   "additions": 124,
   "deletions": 104,
   "merged_at": "2025-07-28T19:28:34+00:00",
   "opened_at": "2025-07-28T13:50:05+00:00",
   "task_type": "fix",
   "files_changed": 5,
   "hours_to_merge": 5.64
  },
  {
   "agent": "openai-codex",
   "state": "merged",
   "title": "Expand smart picker results",
   "number": 529,
   "outcome": "merged_clean",
   "index_ok": true,
   "additions": 45,
   "deletions": 16,
   "merged_at": "2025-07-28T13:16:50+00:00",
   "opened_at": "2025-07-28T11:04:28+00:00",
   "task_type": "feat",
   "files_changed": 4,
   "hours_to_merge": 2.21
  },
  {
   "agent": "openai-codex",
   "state": "closed",
   "title": "Fix panorama folder sharing",
   "number": 527,
   "outcome": "abandoned",
   "index_ok": false,
   "additions": 69,
   "deletions": 24,
   "merged_at": null,
   "opened_at": "2025-07-24T21:18:07+00:00",
   "task_type": "fix",
   "files_changed": 3,
   "hours_to_merge": null
  },
  {
   "agent": "openai-codex",
   "state": "merged",
   "title": "Codex/redesign dataset status icons",
   "number": 525,
   "outcome": "merged_clean",
   "index_ok": true,
   "additions": 447,
   "deletions": 477,
   "merged_at": "2025-07-22T19:58:12+00:00",
   "opened_at": "2025-07-22T19:57:10+00:00",
   "task_type": "feat",
   "files_changed": 7,
   "hours_to_merge": 0.02
  },
  {
   "agent": "openai-codex",
   "state": "merged",
   "title": "Update dataset schedule icon",
   "number": 524,
   "outcome": "merged_clean",
   "index_ok": true,
   "additions": 447,
   "deletions": 477,
   "merged_at": "2025-07-22T09:43:35+00:00",
   "opened_at": "2025-07-22T09:31:19+00:00",
   "task_type": "feat",
   "files_changed": 7,
   "hours_to_merge": 0.2
  },
  {
   "agent": "openai-codex",
   "state": "merged",
   "title": "Implement inline rename for navigation items",
   "number": 523,
   "outcome": "merged_clean",
   "index_ok": true,
   "additions": 542,
   "deletions": 118,
   "merged_at": "2025-07-21T15:48:31+00:00",
   "opened_at": "2025-07-20T08:44:45+00:00",
   "task_type": "feat",
   "files_changed": 91,
   "hours_to_merge": 31.06
  },
  {
   "agent": "openai-codex",
   "state": "merged",
   "title": "Improve indexing and sharing performance",
   "number": 522,
   "outcome": "merged_clean",
   "index_ok": false,
   "additions": 94,
   "deletions": 67,
   "merged_at": "2025-07-20T07:23:39+00:00",
   "opened_at": "2025-07-20T07:21:15+00:00",
   "task_type": "perf",
   "files_changed": 4,
   "hours_to_merge": 0.04
  },
  {
   "agent": "openai-codex",
   "state": "merged",
   "title": "Add installed version to settings",
   "number": 520,
   "outcome": "merged_clean",
   "index_ok": true,
   "additions": 19,
   "deletions": 4,
   "merged_at": "2025-07-17T20:24:35+00:00",
   "opened_at": "2025-07-17T19:46:10+00:00",
   "task_type": "feat",
   "files_changed": 4,
   "hours_to_merge": 0.64
  },
  {
   "agent": "github-copilot",
   "state": "closed",
   "title": "Fix NewGroupPlaceholder CSS overlap and enable grouping for all item types",
   "number": 519,
   "outcome": "abandoned",
   "index_ok": false,
   "additions": 35,
   "deletions": 5,
   "merged_at": null,
   "opened_at": "2025-07-16T08:44:06+00:00",
   "task_type": "fix",
   "files_changed": 3,
   "hours_to_merge": null
  },
  {
   "agent": "github-copilot",
   "state": "merged",
   "title": "Add threshold lines to charts using Chart.js annotation plugin",
   "number": 518,
   "outcome": "merged_clean",
   "index_ok": true,
   "additions": 901,
   "deletions": 692,
   "merged_at": "2025-07-16T17:26:02+00:00",
   "opened_at": "2025-07-16T07:34:53+00:00",
   "task_type": "feat",
   "files_changed": 9,
   "hours_to_merge": 9.85
  },
  {
   "agent": "openai-codex",
   "state": "merged",
   "title": "Enable grouping for all item types",
   "number": 517,
   "outcome": "merged_clean",
   "index_ok": true,
   "additions": 851,
   "deletions": 308,
   "merged_at": "2025-07-18T20:01:14+00:00",
   "opened_at": "2025-07-15T20:21:09+00:00",
   "task_type": "fix",
   "files_changed": 199,
   "hours_to_merge": 71.67
  },
  {
   "agent": "openai-codex",
   "state": "merged",
   "title": "Fix navigation for new items",
   "number": 511,
   "outcome": "merged_clean",
   "index_ok": true,
   "additions": 76,
   "deletions": 5,
   "merged_at": "2025-07-06T19:12:39+00:00",
   "opened_at": "2025-07-06T19:00:08+00:00",
   "task_type": "fix",
   "files_changed": 6,
   "hours_to_merge": 0.21
  },
  {
   "agent": "openai-codex",
   "state": "merged",
   "title": "Update panorama dashboard widget",
   "number": 510,
   "outcome": "merged_clean",
   "index_ok": true,
   "additions": 57,
   "deletions": 31,
   "merged_at": "2025-07-06T18:54:55+00:00",
   "opened_at": "2025-07-06T18:07:23+00:00",
   "task_type": "feat",
   "files_changed": 7,
   "hours_to_merge": 0.79
  },
  {
   "agent": "openai-codex",
   "state": "closed",
   "title": "Add panorama previews to dashboard",
   "number": 509,
   "outcome": "abandoned",
   "index_ok": false,
   "additions": 37,
   "deletions": 2,
   "merged_at": null,
   "opened_at": "2025-07-06T11:00:55+00:00",
   "task_type": "feat",
   "files_changed": 3,
   "hours_to_merge": null
  },
  {
   "agent": "openai-codex",
   "state": "closed",
   "title": "Enhance new item creation menu",
   "number": 506,
   "outcome": "abandoned",
   "index_ok": false,
   "additions": 66,
   "deletions": 20,
   "merged_at": null,
   "opened_at": "2025-07-05T11:39:48+00:00",
   "task_type": "feat",
   "files_changed": 6,
   "hours_to_merge": null
  },
  {
   "agent": "openai-codex",
   "state": "merged",
   "title": "Fix navigation open state behavior",
   "number": 505,
   "outcome": "merged_clean",
   "index_ok": true,
   "additions": 115,
   "deletions": 48,
   "merged_at": "2025-07-05T11:37:38+00:00",
   "opened_at": "2025-07-05T11:36:38+00:00",
   "task_type": "fix",
   "files_changed": 4,
   "hours_to_merge": 0.02
  },
  {
   "agent": "openai-codex",
   "state": "merged",
   "title": "Improve dataset maintenance navigation",
   "number": 504,
   "outcome": "merged_clean",
   "index_ok": true,
   "additions": 86,
   "deletions": 45,
   "merged_at": "2025-07-05T11:35:48+00:00",
   "opened_at": "2025-07-05T11:34:53+00:00",
   "task_type": "feat",
   "files_changed": 4,
   "hours_to_merge": 0.02
  },
  {
   "agent": "openai-codex",
   "state": "merged",
   "title": "Align sidebar buttons to the right",
   "number": 503,
   "outcome": "merged_clean",
   "index_ok": true,
   "additions": 62,
   "deletions": 41,
   "merged_at": "2025-07-05T11:34:08+00:00",
   "opened_at": "2025-07-05T11:33:28+00:00",
   "task_type": "feat",
   "files_changed": 3,
   "hours_to_merge": 0.01
  },
  {
   "agent": "openai-codex",
   "state": "merged",
   "title": "Modernize analytics modal style",
   "number": 502,
   "outcome": "merged_clean",
   "index_ok": true,
   "additions": 120,
   "deletions": 61,
   "merged_at": "2025-07-05T11:20:17+00:00",
   "opened_at": "2025-07-02T15:55:47+00:00",
   "task_type": "style",
   "files_changed": 9,
   "hours_to_merge": 67.41
  },
  {
   "agent": "openai-codex",
   "state": "merged",
   "title": "Modernize input styling",
   "number": 501,
   "outcome": "merged_clean",
   "index_ok": true,
   "additions": 68,
   "deletions": 27,
   "merged_at": "2025-07-02T16:37:12+00:00",
   "opened_at": "2025-07-02T14:23:36+00:00",
   "task_type": "style",
   "files_changed": 2,
   "hours_to_merge": 2.23
  },
  {
   "agent": "openai-codex",
   "state": "merged",
   "title": "Ensure editing loads selected report",
   "number": 500,
   "outcome": "merged_clean",
   "index_ok": true,
   "additions": 18,
   "deletions": 18,
   "merged_at": "2025-06-28T08:07:20+00:00",
   "opened_at": "2025-06-28T08:00:59+00:00",
   "task_type": "fix",
   "files_changed": 5,
   "hours_to_merge": 0.11
  },
  {
   "agent": "openai-codex",
   "state": "merged",
   "title": "Implement debounce and smooth updates for share search",
   "number": 499,
   "outcome": "merged_clean",
   "index_ok": true,
   "additions": 54,
   "deletions": 19,
   "merged_at": "2025-06-28T07:50:55+00:00",
   "opened_at": "2025-06-28T07:49:13+00:00",
   "task_type": "feat",
   "files_changed": 2,
   "hours_to_merge": 0.03
  },
  {
   "agent": "openai-codex",
   "state": "merged",
   "title": "Fix favorites navigation rendering",
   "number": 497,
   "outcome": "merged_clean",
   "index_ok": true,
   "additions": 63,
   "deletions": 23,
   "merged_at": "2025-06-28T07:28:58+00:00",
   "opened_at": "2025-06-28T07:25:50+00:00",
   "task_type": "fix",
   "files_changed": 2,
   "hours_to_merge": 0.05
  },
  {
   "agent": "openai-codex",
   "state": "merged",
   "title": "Fix favorites navigation rendering",
   "number": 496,
   "outcome": "merged_clean",
   "index_ok": true,
   "additions": 30,
   "deletions": 16,
   "merged_at": "2025-06-28T06:53:37+00:00",
   "opened_at": "2025-06-28T06:53:24+00:00",
   "task_type": "fix",
   "files_changed": 2,
   "hours_to_merge": 0
  },
  {
   "agent": "openai-codex",
   "state": "merged",
   "title": "Load panoramas in dashboard favorites",
   "number": 495,
   "outcome": "merged_clean",
   "index_ok": true,
   "additions": 29,
   "deletions": 15,
   "merged_at": "2025-06-28T06:31:56+00:00",
   "opened_at": "2025-06-28T06:31:43+00:00",
   "task_type": "feat",
   "files_changed": 2,
   "hours_to_merge": 0
  },
  {
   "agent": "openai-codex",
   "state": "merged",
   "title": "Unify navigation lists",
   "number": 493,
   "outcome": "merged_clean",
   "index_ok": true,
   "additions": 2787,
   "deletions": 2594,
   "merged_at": "2025-06-26T19:21:28+00:00",
   "opened_at": "2025-06-21T07:15:31+00:00",
   "task_type": "refactor",
   "files_changed": 210,
   "hours_to_merge": 132.1
  },
  {
   "agent": "openai-codex",
   "state": "closed",
   "title": "Unify dimension options",
   "number": 490,
   "outcome": "abandoned",
   "index_ok": false,
   "additions": 417,
   "deletions": 211,
   "merged_at": null,
   "opened_at": "2025-06-17T16:09:34+00:00",
   "task_type": "feat",
   "files_changed": 4,
   "hours_to_merge": null
  },
  {
   "agent": "openai-codex",
   "state": "merged",
   "title": "Highlight threshold selection",
   "number": 488,
   "outcome": "merged_clean",
   "index_ok": true,
   "additions": 31,
   "deletions": 2,
   "merged_at": "2025-06-10T20:19:39+00:00",
   "opened_at": "2025-06-10T20:08:40+00:00",
   "task_type": "feat",
   "files_changed": 3,
   "hours_to_merge": 0.18
  },
  {
   "agent": "openai-codex",
   "state": "merged",
   "title": "Add test for ExternalCsv delimiter detection",
   "number": 487,
   "outcome": "merged_clean",
   "index_ok": true,
   "additions": 46,
   "deletions": 6,
   "merged_at": "2025-06-08T09:56:54+00:00",
   "opened_at": "2025-06-08T09:54:16+00:00",
   "task_type": "test",
   "files_changed": 3,
   "hours_to_merge": 0.04
  },
  {
   "agent": "openai-codex",
   "state": "merged",
   "title": "Remove REST API modal",
   "number": 486,
   "outcome": "merged_clean",
   "index_ok": false,
   "additions": 40,
   "deletions": 29,
   "merged_at": "2025-06-08T10:01:54+00:00",
   "opened_at": "2025-06-08T09:49:40+00:00",
   "task_type": "refactor",
   "files_changed": 2,
   "hours_to_merge": 0.2
  },
  {
   "agent": "openai-codex",
   "state": "merged",
   "title": "Add active option indicators in report menu",
   "number": 485,
   "outcome": "merged_clean",
   "index_ok": true,
   "additions": 50,
   "deletions": 3,
   "merged_at": "2025-06-08T09:43:11+00:00",
   "opened_at": "2025-06-08T09:37:01+00:00",
   "task_type": "feat",
   "files_changed": 2,
   "hours_to_merge": 0.1
  },
  {
   "agent": "openai-codex",
   "state": "merged",
   "title": "Highlight selected report in panorama modal",
   "number": 484,
   "outcome": "merged_clean",
   "index_ok": true,
   "additions": 33,
   "deletions": 2,
   "merged_at": "2025-06-08T09:35:21+00:00",
   "opened_at": "2025-06-08T09:27:22+00:00",
   "task_type": "feat",
   "files_changed": 2,
   "hours_to_merge": 0.13
  },
  {
   "agent": "openai-codex",
   "state": "merged",
   "title": "Add timeSeries data model for e.g. Health data",
   "number": 483,
   "outcome": "merged_clean",
   "index_ok": true,
   "additions": 80,
   "deletions": 38,
   "merged_at": "2025-06-08T09:18:42+00:00",
   "opened_at": "2025-06-08T09:14:14+00:00",
   "task_type": "feat",
   "files_changed": 4,
   "hours_to_merge": 0.07
  },
  {
   "agent": "openai-codex",
   "state": "merged",
   "title": "Add legend selection for reports in panoramas",
   "number": 482,
   "outcome": "merged_clean",
   "index_ok": true,
   "additions": 112,
   "deletions": 23,
   "merged_at": "2025-06-07T17:35:34+00:00",
   "opened_at": "2025-06-07T10:27:16+00:00",
   "task_type": "feat",
   "files_changed": 4,
   "hours_to_merge": 7.14
  },
  {
   "agent": "openai-codex",
   "state": "merged",
   "title": "Add VariableService unit tests",
   "number": 481,
   "outcome": "merged_clean",
   "index_ok": true,
   "additions": 156,
   "deletions": 0,
   "merged_at": "2025-06-06T13:32:08+00:00",
   "opened_at": "2025-06-06T13:31:29+00:00",
   "task_type": "test",
   "files_changed": 1,
   "hours_to_merge": 0.01
  },
  {
   "agent": "openai-codex",
   "state": "merged",
   "title": "Add basic stubs and unit test",
   "number": 480,
   "outcome": "merged_clean",
   "index_ok": true,
   "additions": 233,
   "deletions": 53,
   "merged_at": "2025-06-06T08:01:53+00:00",
   "opened_at": "2025-06-06T06:00:22+00:00",
   "task_type": "test",
   "files_changed": 14,
   "hours_to_merge": 2.03
  },
  {
   "agent": "openai-codex",
   "state": "merged",
   "title": "Ordering of thresholds (validation sequence)",
   "number": 479,
   "outcome": "merged_clean",
   "index_ok": true,
   "additions": 169,
   "deletions": 11,
   "merged_at": "2025-06-04T18:39:30+00:00",
   "opened_at": "2025-06-04T18:39:22+00:00",
   "task_type": "feat",
   "files_changed": 8,
   "hours_to_merge": 0
  },
  {
   "agent": "openai-codex",
   "state": "merged",
   "title": "Update threshold validation logic",
   "number": 478,
   "outcome": "merged_clean",
   "index_ok": true,
   "additions": 97,
   "deletions": 43,
   "merged_at": "2025-06-04T18:38:11+00:00",
   "opened_at": "2025-06-04T18:37:56+00:00",
   "task_type": "refactor",
   "files_changed": 1,
   "hours_to_merge": 0
  },
  {
   "agent": "openai-codex",
   "state": "merged",
   "title": "Enable editing of existing thresholds",
   "number": 477,
   "outcome": "merged_clean",
   "index_ok": true,
   "additions": 63,
   "deletions": 18,
   "merged_at": "2025-06-01T19:43:19+00:00",
   "opened_at": "2025-06-01T19:43:06+00:00",
   "task_type": "feat",
   "files_changed": 3,
   "hours_to_merge": 0
  },
  {
   "agent": "openai-codex",
   "state": "merged",
   "title": "Update threshold color callback",
   "number": 475,
   "outcome": "merged_clean",
   "index_ok": true,
   "additions": 72,
   "deletions": 20,
   "merged_at": "2025-05-27T20:24:09+00:00",
   "opened_at": "2025-05-27T20:24:00+00:00",
   "task_type": "feat",
   "files_changed": 1,
   "hours_to_merge": 0
  },
  {
   "agent": "openai-codex",
   "state": "merged",
   "title": "Allow thresholds on any column",
   "number": 474,
   "outcome": "merged_clean",
   "index_ok": true,
   "additions": 1208,
   "deletions": 549,
   "merged_at": "2025-06-06T13:05:35+00:00",
   "opened_at": "2025-05-27T18:25:55+00:00",
   "task_type": "feat",
   "files_changed": 28,
   "hours_to_merge": 234.66
  },
  {
   "agent": "openai-codex",
   "state": "merged",
   "title": "Support multiple rows in filter dialog",
   "number": 472,
   "outcome": "merged_clean",
   "index_ok": true,
   "additions": 218,
   "deletions": 82,
   "merged_at": "2025-05-25T17:57:49+00:00",
   "opened_at": "2025-05-25T17:34:28+00:00",
   "task_type": "feat",
   "files_changed": 11,
   "hours_to_merge": 0.39
  },
  {
   "agent": "openai-codex",
   "state": "closed",
   "title": "Add Show All legend option",
   "number": 471,
   "outcome": "abandoned",
   "index_ok": false,
   "additions": 23,
   "deletions": 0,
   "merged_at": null,
   "opened_at": "2025-05-25T17:29:18+00:00",
   "task_type": "feat",
   "files_changed": 3,
   "hours_to_merge": null
  },
  {
   "agent": "openai-codex",
   "state": "merged",
   "title": "Limit filter removal action to icon",
   "number": 470,
   "outcome": "merged_clean",
   "index_ok": true,
   "additions": 32,
   "deletions": 12,
   "merged_at": "2025-05-25T17:27:48+00:00",
   "opened_at": "2025-05-25T17:25:20+00:00",
   "task_type": "refactor",
   "files_changed": 4,
   "hours_to_merge": 0.04
  },
  {
   "agent": "openai-codex",
   "state": "merged",
   "title": "Optimize dialog DOM handling",
   "number": 469,
   "outcome": "merged_clean",
   "index_ok": true,
   "additions": 198,
   "deletions": 60,
   "merged_at": "2025-05-23T20:37:45+00:00",
   "opened_at": "2025-05-23T18:42:53+00:00",
   "task_type": "perf",
   "files_changed": 1,
   "hours_to_merge": 1.91
  },
  {
   "agent": "openai-codex",
   "state": "merged",
   "title": "Add function docs",
   "number": 468,
   "outcome": "merged_clean",
   "index_ok": true,
   "additions": 153,
   "deletions": 0,
   "merged_at": "2025-05-21T20:33:21+00:00",
   "opened_at": "2025-05-21T20:32:40+00:00",
   "task_type": "docs",
   "files_changed": 1,
   "hours_to_merge": 0.01
  },
  {
   "agent": "openai-codex",
   "state": "merged",
   "title": "Add JSDoc comments for visualization functions",
   "number": 467,
   "outcome": "merged_clean",
   "index_ok": true,
   "additions": 116,
   "deletions": 0,
   "merged_at": "2025-05-21T20:32:57+00:00",
   "opened_at": "2025-05-21T20:28:31+00:00",
   "task_type": "docs",
   "files_changed": 1,
   "hours_to_merge": 0.07
  }
 ],
 "indexed": 47,
 "monthly": [
  {
   "burns": 0,
   "month": "2025-05",
   "merged": 25,
   "flights": 31
  },
  {
   "burns": 0,
   "month": "2025-06",
   "merged": 18,
   "flights": 19
  },
  {
   "burns": 0,
   "month": "2025-07",
   "merged": 19,
   "flights": 23
  }
 ],
 "top_authors": [
  {
   "name": null,
   "login": "Rello",
   "flights": 71,
   "indexed": 46
  }
 ],
 "page": "https://agentriders.com/logs/Rello/analytics/"
}