{
 "repo": {
  "name": "ml",
  "owner": "Kanaries",
  "stars": 13,
  "license": "MIT",
  "full_name": "Kanaries/ml",
  "fetched_at": null,
  "primary_language": "TypeScript"
 },
 "burns": [],
 "total": 52,
 "agents": [
  {
   "agent": "openai-codex",
   "merged": 51,
   "flights": 52,
   "burn_rate": 0,
   "merge_rate": 0.981,
   "last_flight_at": "2025-06-23T12:49:23+00:00",
   "median_hours_to_merge": 0
  }
 ],
 "riders": [],
 "flights": [
  {
   "agent": "openai-codex",
   "state": "merged",
   "title": "Add logistic regression visualization",
   "number": 70,
   "outcome": null,
   "index_ok": false,
   "additions": null,
   "deletions": null,
   "merged_at": "2025-06-23T12:52:56+00:00",
   "opened_at": "2025-06-23T12:49:23+00:00",
   "task_type": null,
   "files_changed": null,
   "hours_to_merge": 0.06
  },
  {
   "agent": "openai-codex",
   "state": "merged",
   "title": "Add LabelSpreading algorithm",
   "number": 69,
   "outcome": null,
   "index_ok": false,
   "additions": null,
   "deletions": null,
   "merged_at": "2025-06-22T14:22:07+00:00",
   "opened_at": "2025-06-22T14:21:30+00:00",
   "task_type": null,
   "files_changed": null,
   "hours_to_merge": 0.01
  },
  {
   "agent": "openai-codex",
   "state": "merged",
   "title": "Implement label propagation",
   "number": 68,
   "outcome": null,
   "index_ok": false,
   "additions": null,
   "deletions": null,
   "merged_at": "2025-06-21T15:33:22+00:00",
   "opened_at": "2025-06-21T15:31:49+00:00",
   "task_type": null,
   "files_changed": null,
   "hours_to_merge": 0.03
  },
  {
   "agent": "openai-codex",
   "state": "merged",
   "title": "Add LinearSVR implementation",
   "number": 67,
   "outcome": null,
   "index_ok": false,
   "additions": null,
   "deletions": null,
   "merged_at": "2025-06-21T15:32:45+00:00",
   "opened_at": "2025-06-21T15:31:41+00:00",
   "task_type": null,
   "files_changed": null,
   "hours_to_merge": 0.02
  },
  {
   "agent": "openai-codex",
   "state": "merged",
   "title": "Add BernoulliRBM algorithm",
   "number": 66,
   "outcome": null,
   "index_ok": false,
   "additions": null,
   "deletions": null,
   "merged_at": "2025-06-21T15:32:36+00:00",
   "opened_at": "2025-06-21T15:29:38+00:00",
   "task_type": null,
   "files_changed": null,
   "hours_to_merge": 0.05
  },
  {
   "agent": "openai-codex",
   "state": "merged",
   "title": "Fix docs build by transpiling package",
   "number": 65,
   "outcome": null,
   "index_ok": false,
   "additions": null,
   "deletions": null,
   "merged_at": "2025-06-17T18:15:04+00:00",
   "opened_at": "2025-06-17T18:14:49+00:00",
   "task_type": null,
   "files_changed": null,
   "hours_to_merge": 0
  },
  {
   "agent": "openai-codex",
   "state": "merged",
   "title": "Improve ensemble docs",
   "number": 62,
   "outcome": null,
   "index_ok": false,
   "additions": null,
   "deletions": null,
   "merged_at": "2025-06-17T16:16:32+00:00",
   "opened_at": "2025-06-17T16:15:06+00:00",
   "task_type": null,
   "files_changed": null,
   "hours_to_merge": 0.02
  },
  {
   "agent": "openai-codex",
   "state": "merged",
   "title": "Improve linear docs",
   "number": 61,
   "outcome": null,
   "index_ok": false,
   "additions": null,
   "deletions": null,
   "merged_at": "2025-06-17T16:16:24+00:00",
   "opened_at": "2025-06-17T16:14:59+00:00",
   "task_type": null,
   "files_changed": null,
   "hours_to_merge": 0.02
  },
  {
   "agent": "openai-codex",
   "state": "merged",
   "title": "Improve manifold API docs",
   "number": 60,
   "outcome": null,
   "index_ok": false,
   "additions": null,
   "deletions": null,
   "merged_at": "2025-06-17T16:16:16+00:00",
   "opened_at": "2025-06-17T16:14:54+00:00",
   "task_type": null,
   "files_changed": null,
   "hours_to_merge": 0.02
  },
  {
   "agent": "openai-codex",
   "state": "merged",
   "title": "Update neighbors docs",
   "number": 59,
   "outcome": null,
   "index_ok": false,
   "additions": null,
   "deletions": null,
   "merged_at": "2025-06-17T16:16:06+00:00",
   "opened_at": "2025-06-17T16:14:49+00:00",
   "task_type": null,
   "files_changed": null,
   "hours_to_merge": 0.02
  },
  {
   "agent": "openai-codex",
   "state": "merged",
   "title": "Improve SVM API docs",
   "number": 58,
   "outcome": null,
   "index_ok": false,
   "additions": null,
   "deletions": null,
   "merged_at": "2025-06-17T16:15:57+00:00",
   "opened_at": "2025-06-17T16:14:40+00:00",
   "task_type": null,
   "files_changed": null,
   "hours_to_merge": 0.02
  },
  {
   "agent": "openai-codex",
   "state": "merged",
   "title": "Improve decomposition docs",
   "number": 57,
   "outcome": null,
   "index_ok": false,
   "additions": null,
   "deletions": null,
   "merged_at": "2025-06-17T16:15:45+00:00",
   "opened_at": "2025-06-17T07:29:33+00:00",
   "task_type": null,
   "files_changed": null,
   "hours_to_merge": 8.77
  },
  {
   "agent": "openai-codex",
   "state": "merged",
   "title": "Improve bayes docs",
   "number": 54,
   "outcome": null,
   "index_ok": false,
   "additions": null,
   "deletions": null,
   "merged_at": "2025-06-17T02:55:32+00:00",
   "opened_at": "2025-06-17T02:55:04+00:00",
   "task_type": null,
   "files_changed": null,
   "hours_to_merge": 0.01
  },
  {
   "agent": "openai-codex",
   "state": "merged",
   "title": "Fix AdaBoostRegressor algorithm",
   "number": 53,
   "outcome": null,
   "index_ok": false,
   "additions": null,
   "deletions": null,
   "merged_at": "2025-06-17T02:46:59+00:00",
   "opened_at": "2025-06-17T02:41:33+00:00",
   "task_type": null,
   "files_changed": null,
   "hours_to_merge": 0.09
  },
  {
   "agent": "openai-codex",
   "state": "merged",
   "title": "Improve AdaBoost alpha calculation",
   "number": 52,
   "outcome": null,
   "index_ok": false,
   "additions": null,
   "deletions": null,
   "merged_at": "2025-06-17T02:45:43+00:00",
   "opened_at": "2025-06-17T02:41:28+00:00",
   "task_type": null,
   "files_changed": null,
   "hours_to_merge": 0.07
  },
  {
   "agent": "openai-codex",
   "state": "merged",
   "title": "Add TruncatedSVD algorithm",
   "number": 51,
   "outcome": null,
   "index_ok": false,
   "additions": null,
   "deletions": null,
   "merged_at": "2025-06-17T02:45:17+00:00",
   "opened_at": "2025-06-17T02:41:16+00:00",
   "task_type": null,
   "files_changed": null,
   "hours_to_merge": 0.07
  },
  {
   "agent": "openai-codex",
   "state": "merged",
   "title": "Add ExtraTreeRegressor implementation",
   "number": 47,
   "outcome": null,
   "index_ok": false,
   "additions": null,
   "deletions": null,
   "merged_at": "2025-06-16T18:58:44+00:00",
   "opened_at": "2025-06-16T18:56:22+00:00",
   "task_type": null,
   "files_changed": null,
   "hours_to_merge": 0.04
  },
  {
   "agent": "openai-codex",
   "state": "merged",
   "title": "Add ExtraTreeClassifier",
   "number": 46,
   "outcome": null,
   "index_ok": false,
   "additions": null,
   "deletions": null,
   "merged_at": "2025-06-16T18:55:14+00:00",
   "opened_at": "2025-06-16T18:54:58+00:00",
   "task_type": null,
   "files_changed": null,
   "hours_to_merge": 0
  },
  {
   "agent": "openai-codex",
   "state": "merged",
   "title": "Add SparsePCA",
   "number": 45,
   "outcome": null,
   "index_ok": false,
   "additions": null,
   "deletions": null,
   "merged_at": "2025-06-16T18:48:54+00:00",
   "opened_at": "2025-06-16T18:48:41+00:00",
   "task_type": null,
   "files_changed": null,
   "hours_to_merge": 0
  },
  {
   "agent": "openai-codex",
   "state": "merged",
   "title": "Fix PCA sign instability",
   "number": 41,
   "outcome": null,
   "index_ok": false,
   "additions": null,
   "deletions": null,
   "merged_at": "2025-06-01T05:05:56+00:00",
   "opened_at": "2025-06-01T05:05:49+00:00",
   "task_type": null,
   "files_changed": null,
   "hours_to_merge": 0
  },
  {
   "agent": "openai-codex",
   "state": "merged",
   "title": "Improve README with algorithm list",
   "number": 40,
   "outcome": null,
   "index_ok": false,
   "additions": null,
   "deletions": null,
   "merged_at": "2025-06-01T04:11:08+00:00",
   "opened_at": "2025-06-01T04:10:55+00:00",
   "task_type": null,
   "files_changed": null,
   "hours_to_merge": 0
  },
  {
   "agent": "openai-codex",
   "state": "merged",
   "title": "Add asyncMode tests and docs",
   "number": 39,
   "outcome": null,
   "index_ok": false,
   "additions": null,
   "deletions": null,
   "merged_at": "2025-06-01T03:02:33+00:00",
   "opened_at": "2025-06-01T03:01:07+00:00",
   "task_type": null,
   "files_changed": null,
   "hours_to_merge": 0.02
  },
  {
   "agent": "openai-codex",
   "state": "merged",
   "title": "Add asyncMode wrapper",
   "number": 38,
   "outcome": null,
   "index_ok": false,
   "additions": null,
   "deletions": null,
   "merged_at": "2025-06-01T02:43:22+00:00",
   "opened_at": "2025-06-01T02:43:11+00:00",
   "task_type": null,
   "files_changed": null,
   "hours_to_merge": 0
  },
  {
   "agent": "openai-codex",
   "state": "merged",
   "title": "Add CategoricalNB",
   "number": 37,
   "outcome": null,
   "index_ok": false,
   "additions": null,
   "deletions": null,
   "merged_at": "2025-05-31T15:52:44+00:00",
   "opened_at": "2025-05-31T15:48:09+00:00",
   "task_type": null,
   "files_changed": null,
   "hours_to_merge": 0.08
  },
  {
   "agent": "openai-codex",
   "state": "merged",
   "title": "Add KDTree algorithm",
   "number": 36,
   "outcome": null,
   "index_ok": false,
   "additions": null,
   "deletions": null,
   "merged_at": "2025-05-31T15:52:54+00:00",
   "opened_at": "2025-05-31T15:47:56+00:00",
   "task_type": null,
   "files_changed": null,
   "hours_to_merge": 0.08
  },
  {
   "agent": "openai-codex",
   "state": "merged",
   "title": "Add BallTree neighbors algorithm",
   "number": 35,
   "outcome": null,
   "index_ok": false,
   "additions": null,
   "deletions": null,
   "merged_at": "2025-05-31T15:37:32+00:00",
   "opened_at": "2025-05-31T15:35:13+00:00",
   "task_type": null,
   "files_changed": null,
   "hours_to_merge": 0.04
  },
  {
   "agent": "openai-codex",
   "state": "merged",
   "title": "Add BernoulliNB classifier",
   "number": 34,
   "outcome": null,
   "index_ok": false,
   "additions": null,
   "deletions": null,
   "merged_at": "2025-05-31T15:37:21+00:00",
   "opened_at": "2025-05-31T15:34:53+00:00",
   "task_type": null,
   "files_changed": null,
   "hours_to_merge": 0.04
  },
  {
   "agent": "openai-codex",
   "state": "merged",
   "title": "Add SEO metadata",
   "number": 33,
   "outcome": null,
   "index_ok": false,
   "additions": null,
   "deletions": null,
   "merged_at": "2025-05-30T11:09:15+00:00",
   "opened_at": "2025-05-30T11:08:56+00:00",
   "task_type": null,
   "files_changed": null,
   "hours_to_merge": 0.01
  },
  {
   "agent": "openai-codex",
   "state": "merged",
   "title": "Update docs structure",
   "number": 32,
   "outcome": null,
   "index_ok": false,
   "additions": null,
   "deletions": null,
   "merged_at": "2025-05-30T10:58:34+00:00",
   "opened_at": "2025-05-30T10:58:23+00:00",
   "task_type": null,
   "files_changed": null,
   "hours_to_merge": 0
  },
  {
   "agent": "openai-codex",
   "state": "merged",
   "title": "Improve docs homepage",
   "number": 31,
   "outcome": null,
   "index_ok": false,
   "additions": null,
   "deletions": null,
   "merged_at": "2025-05-30T10:58:43+00:00",
   "opened_at": "2025-05-30T10:58:08+00:00",
   "task_type": null,
   "files_changed": null,
   "hours_to_merge": 0.01
  },
  {
   "agent": "openai-codex",
   "state": "merged",
   "title": "Fix script list bug",
   "number": 30,
   "outcome": null,
   "index_ok": false,
   "additions": null,
   "deletions": null,
   "merged_at": "2025-05-30T10:47:17+00:00",
   "opened_at": "2025-05-30T10:47:05+00:00",
   "task_type": null,
   "files_changed": null,
   "hours_to_merge": 0
  },
  {
   "agent": "openai-codex",
   "state": "merged",
   "title": "Add SpectralEmbedding",
   "number": 29,
   "outcome": null,
   "index_ok": false,
   "additions": null,
   "deletions": null,
   "merged_at": "2025-05-30T07:50:59+00:00",
   "opened_at": "2025-05-30T07:48:50+00:00",
   "task_type": null,
   "files_changed": null,
   "hours_to_merge": 0.04
  },
  {
   "agent": "openai-codex",
   "state": "merged",
   "title": "Add classical MDS algorithm",
   "number": 28,
   "outcome": null,
   "index_ok": false,
   "additions": null,
   "deletions": null,
   "merged_at": "2025-05-30T07:46:53+00:00",
   "opened_at": "2025-05-30T07:46:05+00:00",
   "task_type": null,
   "files_changed": null,
   "hours_to_merge": 0.01
  },
  {
   "agent": "openai-codex",
   "state": "merged",
   "title": "Add Locally Linear Embedding",
   "number": 27,
   "outcome": null,
   "index_ok": false,
   "additions": null,
   "deletions": null,
   "merged_at": "2025-05-30T07:44:39+00:00",
   "opened_at": "2025-05-30T07:43:16+00:00",
   "task_type": null,
   "files_changed": null,
   "hours_to_merge": 0.02
  },
  {
   "agent": "openai-codex",
   "state": "merged",
   "title": "Add TSNE algorithm",
   "number": 26,
   "outcome": null,
   "index_ok": false,
   "additions": null,
   "deletions": null,
   "merged_at": "2025-05-30T07:43:36+00:00",
   "opened_at": "2025-05-30T07:40:04+00:00",
   "task_type": null,
   "files_changed": null,
   "hours_to_merge": 0.06
  },
  {
   "agent": "openai-codex",
   "state": "merged",
   "title": "Improve README",
   "number": 23,
   "outcome": null,
   "index_ok": false,
   "additions": null,
   "deletions": null,
   "merged_at": "2025-05-23T11:12:07+00:00",
   "opened_at": "2025-05-23T11:11:58+00:00",
   "task_type": null,
   "files_changed": null,
   "hours_to_merge": 0
  },
  {
   "agent": "openai-codex",
   "state": "merged",
   "title": "Fix docs path for GitHub Pages",
   "number": 22,
   "outcome": null,
   "index_ok": false,
   "additions": null,
   "deletions": null,
   "merged_at": "2025-05-22T17:25:50+00:00",
   "opened_at": "2025-05-22T17:24:52+00:00",
   "task_type": null,
   "files_changed": null,
   "hours_to_merge": 0.02
  },
  {
   "agent": "openai-codex",
   "state": "merged",
   "title": "Add PCA algorithm",
   "number": 21,
   "outcome": null,
   "index_ok": false,
   "additions": null,
   "deletions": null,
   "merged_at": "2025-05-22T16:05:31+00:00",
   "opened_at": "2025-05-22T16:05:18+00:00",
   "task_type": null,
   "files_changed": null,
   "hours_to_merge": 0
  },
  {
   "agent": "openai-codex",
   "state": "merged",
   "title": "Fix docs URL",
   "number": 20,
   "outcome": null,
   "index_ok": false,
   "additions": null,
   "deletions": null,
   "merged_at": "2025-05-22T15:24:47+00:00",
   "opened_at": "2025-05-22T15:24:37+00:00",
   "task_type": null,
   "files_changed": null,
   "hours_to_merge": 0
  },
  {
   "agent": "openai-codex",
   "state": "merged",
   "title": "Fix tests using sklearn comparisons",
   "number": 19,
   "outcome": null,
   "index_ok": false,
   "additions": null,
   "deletions": null,
   "merged_at": "2025-05-21T15:51:08+00:00",
   "opened_at": "2025-05-21T15:50:46+00:00",
   "task_type": null,
   "files_changed": null,
   "hours_to_merge": 0.01
  },
  {
   "agent": "openai-codex",
   "state": "merged",
   "title": "Add sklearn comparison tests",
   "number": 18,
   "outcome": null,
   "index_ok": false,
   "additions": null,
   "deletions": null,
   "merged_at": "2025-05-21T15:52:34+00:00",
   "opened_at": "2025-05-21T15:05:54+00:00",
   "task_type": null,
   "files_changed": null,
   "hours_to_merge": 0.78
  },
  {
   "agent": "openai-codex",
   "state": "merged",
   "title": "Add SVM classifiers",
   "number": 17,
   "outcome": null,
   "index_ok": false,
   "additions": null,
   "deletions": null,
   "merged_at": "2025-05-20T14:42:50+00:00",
   "opened_at": "2025-05-20T14:40:53+00:00",
   "task_type": null,
   "files_changed": null,
   "hours_to_merge": 0.03
  },
  {
   "agent": "openai-codex",
   "state": "merged",
   "title": "Add docs for more clustering and tree algorithms",
   "number": 16,
   "outcome": null,
   "index_ok": false,
   "additions": null,
   "deletions": null,
   "merged_at": "2025-05-20T03:29:42+00:00",
   "opened_at": "2025-05-20T03:29:28+00:00",
   "task_type": null,
   "files_changed": null,
   "hours_to_merge": 0
  },
  {
   "agent": "openai-codex",
   "state": "merged",
   "title": "Add missing algorithm docs",
   "number": 15,
   "outcome": null,
   "index_ok": false,
   "additions": null,
   "deletions": null,
   "merged_at": "2025-05-20T02:54:55+00:00",
   "opened_at": "2025-05-20T02:51:06+00:00",
   "task_type": null,
   "files_changed": null,
   "hours_to_merge": 0.06
  },
  {
   "agent": "openai-codex",
   "state": "merged",
   "title": "Add MeanShift clustering",
   "number": 14,
   "outcome": null,
   "index_ok": false,
   "additions": null,
   "deletions": null,
   "merged_at": "2025-05-20T02:56:14+00:00",
   "opened_at": "2025-05-20T02:50:37+00:00",
   "task_type": null,
   "files_changed": null,
   "hours_to_merge": 0.09
  },
  {
   "agent": "openai-codex",
   "state": "merged",
   "title": "Add OPTICS clustering algorithm",
   "number": 13,
   "outcome": null,
   "index_ok": false,
   "additions": null,
   "deletions": null,
   "merged_at": "2025-05-20T02:57:03+00:00",
   "opened_at": "2025-05-20T02:50:20+00:00",
   "task_type": null,
   "files_changed": null,
   "hours_to_merge": 0.11
  },
  {
   "agent": "openai-codex",
   "state": "merged",
   "title": "Add kmeans++ initialization function",
   "number": 12,
   "outcome": null,
   "index_ok": false,
   "additions": null,
   "deletions": null,
   "merged_at": "2025-05-20T02:57:54+00:00",
   "opened_at": "2025-05-20T02:50:03+00:00",
   "task_type": null,
   "files_changed": null,
   "hours_to_merge": 0.13
  },
  {
   "agent": "openai-codex",
   "state": "merged",
   "title": "Fix noisy regressor tests",
   "number": 11,
   "outcome": null,
   "index_ok": false,
   "additions": null,
   "deletions": null,
   "merged_at": "2025-05-20T02:48:34+00:00",
   "opened_at": "2025-05-20T02:20:47+00:00",
   "task_type": null,
   "files_changed": null,
   "hours_to_merge": 0.46
  },
  {
   "agent": "openai-codex",
   "state": "merged",
   "title": "Add HDBScan clustering algorithm",
   "number": 10,
   "outcome": null,
   "index_ok": false,
   "additions": null,
   "deletions": null,
   "merged_at": "2025-05-20T02:48:47+00:00",
   "opened_at": "2025-05-20T01:57:18+00:00",
   "task_type": null,
   "files_changed": null,
   "hours_to_merge": 0.86
  },
  {
   "agent": "openai-codex",
   "state": "closed",
   "title": "Fix Jest config and add Node 20 CI",
   "number": 5,
   "outcome": null,
   "index_ok": false,
   "additions": null,
   "deletions": null,
   "merged_at": null,
   "opened_at": "2025-05-19T16:27:25+00:00",
   "task_type": null,
   "files_changed": null,
   "hours_to_merge": null
  }
 ],
 "indexed": 0,
 "monthly": [
  {
   "burns": 0,
   "month": "2025-05",
   "merged": 28,
   "flights": 29
  },
  {
   "burns": 0,
   "month": "2025-06",
   "merged": 23,
   "flights": 23
  }
 ],
 "top_authors": [
  {
   "name": "Elwynn Chen",
   "login": "ObservedObserver",
   "flights": 52,
   "indexed": 0
  }
 ],
 "page": "https://agentriders.com/logs/Kanaries/ml/"
}