{
 "flight": {
  "id": 8025,
  "agent": "github-copilot",
  "state": "merged",
  "title": "Refactor: editing → isKeyboardOpen",
  "number": 3045,
  "source": "aidev",
  "commits": 5,
  "debrief": "GitHub Copilot was asked to rename state.editing to state.isKeyboardOpen in cybersemics/em. The change touched 38 files, with 141 additions and 141 deletions, across five commits. Thirteen reviews raised 20 comments and two change requests. A reviewer asked that the reducer be named keyboardOpen instead. The pull request merged after rework, 34.88 hours after opening.",
  "outcome": "merged_after_rework",
  "signals": [
   "aidev:Copilot"
  ],
  "index_ok": true,
  "additions": 141,
  "closed_at": "2025-06-18T16:55:56+00:00",
  "deletions": 141,
  "merged_at": "2025-06-18T16:55:56+00:00",
  "opened_at": "2025-06-17T06:03:11+00:00",
  "task_type": "refactor",
  "body_chars": 1783,
  "confidence": "dataset",
  "updated_at": "2026-11-03T21:58:19.300928+00:00",
  "enriched_at": null,
  "body_excerpt": "Renamed `state.editing` to `state.isKeyboardOpen` throughout the codebase to make the property name more explicit and intuitive. The previous name \"editing\" was ambiguous, while \"isKeyboardOpen\" clearly indicates that it tracks virtual keyboard visibility on mobile devices.\n\n## Changes Made\n\n- **Sta",
  "review_count": 13,
  "files_changed": 38,
  "hours_to_merge": 34.88,
  "metrics_source": "aidev_commit_sum",
  "change_requests": 2,
  "og_generated_at": "2026-11-03T21:58:19.300928+00:00",
  "reviewer_excerpt": "Let's call the reducer `keyboardOpen` and the action `keyboardOpenActionCreator`. The `is` prefix makes less sense as a setter function.",
  "review_comment_count": 20,
  "reviewer_excerpt_url": "https://github.com/cybersemics/em/pull/3045#issuecomment-2979359944"
 },
 "repo": {
  "name": "em",
  "owner": "cybersemics",
  "stars": 358,
  "license": "NOASSERTION",
  "full_name": "cybersemics/em",
  "primary_language": "TypeScript"
 },
 "author": {
  "login": "Copilot",
  "name": null,
  "github_profile": "https://github.com/Copilot",
  "page": null
 },
 "claim": null,
 "events": [
  {
   "at": null,
   "url": null,
   "kind": "committed",
   "actor_login": "copilot-swe-agent[bot]"
  },
  {
   "at": null,
   "url": null,
   "kind": "committed",
   "actor_login": "copilot-swe-agent[bot]"
  },
  {
   "at": null,
   "url": null,
   "kind": "committed",
   "actor_login": "copilot-swe-agent[bot]"
  },
  {
   "at": null,
   "url": null,
   "kind": "reviewed",
   "actor_login": null
  },
  {
   "at": null,
   "url": null,
   "kind": "committed",
   "actor_login": "copilot-swe-agent[bot]"
  },
  {
   "at": null,
   "url": null,
   "kind": "reviewed",
   "actor_login": null
  },
  {
   "at": null,
   "url": null,
   "kind": "committed",
   "actor_login": "copilot-swe-agent[bot]"
  },
  {
   "at": null,
   "url": null,
   "kind": "reviewed",
   "actor_login": null
  },
  {
   "at": "2025-06-18T12:47:32+00:00",
   "url": "https://github.com/cybersemics/em/pull/3045#pullrequestreview-2939048859",
   "kind": "changes_requested",
   "actor_login": "raineorshine"
  },
  {
   "at": "2025-06-18T16:28:11+00:00",
   "url": "https://github.com/cybersemics/em/pull/3045#pullrequestreview-2939946928",
   "kind": "changes_requested",
   "actor_login": "raineorshine"
  },
  {
   "at": "2025-06-18T16:55:56+00:00",
   "url": null,
   "kind": "merged",
   "actor_login": "raineorshine"
  },
  {
   "at": "2025-06-18T16:55:56+00:00",
   "url": null,
   "kind": "closed",
   "actor_login": "raineorshine"
  }
 ],
 "related": [
  {
   "agent": "github-copilot",
   "state": "merged",
   "title": "[WIP] Generate title of web pages",
   "number": 3094,
   "outcome": "merged_after_rework",
   "index_ok": true,
   "additions": 790,
   "deletions": 461,
   "merged_at": "2025-06-30T02:14:27+00:00",
   "opened_at": "2025-06-29T15:38:24+00:00",
   "task_type": "feat",
   "files_changed": 3,
   "hours_to_merge": 10.6
  },
  {
   "agent": "github-copilot",
   "state": "merged",
   "title": "AppComponent: Factor out useBodyAttribute hooks",
   "number": 3050,
   "outcome": "merged_after_rework",
   "index_ok": true,
   "additions": 52,
   "deletions": 41,
   "merged_at": "2025-06-18T16:36:42+00:00",
   "opened_at": "2025-06-18T11:26:13+00:00",
   "task_type": "refactor",
   "files_changed": 5,
   "hours_to_merge": 5.17
  },
  {
   "agent": "github-copilot",
   "state": "closed",
   "title": "Remove QuickDropPanel and related functionality",
   "number": 3033,
   "outcome": "burn",
   "index_ok": true,
   "additions": 10,
   "deletions": 334,
   "merged_at": null,
   "opened_at": "2025-06-13T09:15:40+00:00",
   "task_type": "refactor",
   "files_changed": 15,
   "hours_to_merge": null
  }
 ],
 "pr_url": "https://github.com/cybersemics/em/pull/3045",
 "page": "https://agentriders.com/logs/cybersemics/em/3045/"
}