{
 "flight": {
  "id": 349857,
  "agent": "openai-codex",
  "state": "merged",
  "title": "Add SimpleEnv base class",
  "number": 1440,
  "source": "aidev",
  "commits": 17,
  "debrief": null,
  "outcome": "merged_clean",
  "signals": [
   "aidev:OpenAI_Codex"
  ],
  "index_ok": false,
  "additions": 2857,
  "closed_at": "2025-07-08T19:40:09+00:00",
  "deletions": 279,
  "merged_at": "2025-07-08T19:40:09+00:00",
  "opened_at": "2025-07-07T18:52:38+00:00",
  "task_type": "feat",
  "body_chars": 385,
  "confidence": "dataset",
  "updated_at": "2026-11-03T22:39:21.63035+00:00",
  "enriched_at": null,
  "body_excerpt": "## Summary\n- add SimpleEnv that loops and calls `do_rollout`\n- refactor HelloWorldEnv to implement `do_rollout` using the new base\n- adjust SimpleEnv to let subclasses stay synchronous\n\n## Testing\n- `pre-commit run --files marin/rl/env.py marin/rl/envs/hello.py`\n- `pytest tests/rl/test_openai_env.py",
  "review_count": 1,
  "files_changed": 55,
  "hours_to_merge": 24.79,
  "metrics_source": "aidev_commit_sum",
  "change_requests": 0,
  "og_generated_at": null,
  "reviewer_excerpt": "Nice!",
  "review_comment_count": 0,
  "reviewer_excerpt_url": "https://github.com/marin-community/marin/pull/1440#pullrequestreview-2998821900"
 },
 "repo": {
  "name": "marin",
  "owner": "marin-community",
  "stars": 4080,
  "license": "Apache-2.0",
  "full_name": "marin-community/marin",
  "primary_language": "Python"
 },
 "author": {
  "login": "dlwh",
  "name": "David Hall",
  "github_profile": "https://github.com/dlwh",
  "page": "https://agentriders.com/logs/author/dlwh/"
 },
 "claim": null,
 "events": [
  {
   "at": null,
   "url": null,
   "kind": "committed",
   "actor_login": "David Hall"
  },
  {
   "at": null,
   "url": null,
   "kind": "committed",
   "actor_login": "David Hall"
  },
  {
   "at": null,
   "url": null,
   "kind": "committed",
   "actor_login": "David Hall"
  },
  {
   "at": null,
   "url": null,
   "kind": "committed",
   "actor_login": "David Hall"
  },
  {
   "at": null,
   "url": null,
   "kind": "committed",
   "actor_login": "David Hall"
  },
  {
   "at": null,
   "url": null,
   "kind": "committed",
   "actor_login": "David Hall"
  },
  {
   "at": null,
   "url": null,
   "kind": "committed",
   "actor_login": "David Hall"
  },
  {
   "at": null,
   "url": null,
   "kind": "committed",
   "actor_login": "David Hall"
  },
  {
   "at": null,
   "url": null,
   "kind": "committed",
   "actor_login": "David Hall"
  },
  {
   "at": null,
   "url": null,
   "kind": "committed",
   "actor_login": "David Hall"
  },
  {
   "at": null,
   "url": null,
   "kind": "committed",
   "actor_login": "David Hall"
  },
  {
   "at": null,
   "url": null,
   "kind": "committed",
   "actor_login": "David Hall"
  },
  {
   "at": null,
   "url": null,
   "kind": "committed",
   "actor_login": "David Hall"
  },
  {
   "at": null,
   "url": null,
   "kind": "committed",
   "actor_login": "David Hall"
  },
  {
   "at": null,
   "url": null,
   "kind": "committed",
   "actor_login": "David Hall"
  },
  {
   "at": null,
   "url": null,
   "kind": "committed",
   "actor_login": "David Hall"
  },
  {
   "at": null,
   "url": null,
   "kind": "committed",
   "actor_login": "David Hall"
  },
  {
   "at": null,
   "url": null,
   "kind": "reviewed",
   "actor_login": null
  },
  {
   "at": "2025-07-07T18:52:39+00:00",
   "url": null,
   "kind": "labeled",
   "actor_login": "dlwh"
  },
  {
   "at": "2025-07-08T19:40:09+00:00",
   "url": null,
   "kind": "merged",
   "actor_login": "dlwh"
  },
  {
   "at": "2025-07-08T19:40:09+00:00",
   "url": null,
   "kind": "closed",
   "actor_login": "dlwh"
  }
 ],
 "related": [
  {
   "agent": "openai-codex",
   "state": "merged",
   "title": "Handle empty glob in classification inference",
   "number": 1487,
   "outcome": "merged_clean",
   "index_ok": true,
   "additions": 28,
   "deletions": 0,
   "merged_at": "2025-07-28T04:32:12+00:00",
   "opened_at": "2025-07-26T21:52:57+00:00",
   "task_type": "fix",
   "files_changed": 2,
   "hours_to_merge": 30.65
  },
  {
   "agent": "openai-codex",
   "state": "merged",
   "title": "Fix vulnerable form-data version",
   "number": 1476,
   "outcome": "merged_clean",
   "index_ok": true,
   "additions": 96,
   "deletions": 47,
   "merged_at": "2025-07-23T03:33:36+00:00",
   "opened_at": "2025-07-23T02:39:34+00:00",
   "task_type": "fix",
   "files_changed": 2,
   "hours_to_merge": 0.9
  },
  {
   "agent": "openai-codex",
   "state": "merged",
   "title": "Fix broken doc link",
   "number": 1473,
   "outcome": "merged_clean",
   "index_ok": true,
   "additions": 1,
   "deletions": 1,
   "merged_at": "2025-07-23T01:22:51+00:00",
   "opened_at": "2025-07-22T21:16:09+00:00",
   "task_type": "fix",
   "files_changed": 1,
   "hours_to_merge": 4.11
  }
 ],
 "pr_url": "https://github.com/marin-community/marin/pull/1440",
 "page": "https://agentriders.com/logs/marin-community/marin/1440/"
}