{
 "flight": {
  "id": 5947,
  "agent": "github-copilot",
  "state": "merged",
  "title": "Add analyzer and code fix to migrate from StringAssert to Assert APIs",
  "number": 5792,
  "source": "aidev",
  "commits": 11,
  "debrief": "Copilot opens a PR to add an analyzer and code fix migrating StringAssert to Assert APIs with swapped parameter order. It spans 150 files, with 7090 additions and 2342 deletions across 11 commits. A reviewer writes \"Don't update the existing analyzer. Add a new one.\" The PR merges clean after 397.85 hours, zero change requests.",
  "outcome": "merged_clean",
  "signals": [
   "aidev:Copilot"
  ],
  "index_ok": true,
  "additions": 7090,
  "closed_at": "2025-07-03T10:13:15+00:00",
  "deletions": 2342,
  "merged_at": "2025-07-03T10:13:15+00:00",
  "opened_at": "2025-06-16T20:22:23+00:00",
  "task_type": "feat",
  "body_chars": 3769,
  "confidence": "dataset",
  "updated_at": "2026-11-03T21:58:35.457025+00:00",
  "enriched_at": null,
  "body_excerpt": "This PR implements an analyzer and code fix to help migrate from `StringAssert` APIs to equivalent `Assert` APIs with swapped parameter order.\n\n## Changes Made\n\n### 1. Added Missing Assert Methods\nCreated `Assert.StringMethods.cs` with new methods that have swapped parameter order compared to String",
  "review_count": 9,
  "files_changed": 150,
  "hours_to_merge": 397.85,
  "metrics_source": "aidev_commit_sum",
  "change_requests": 0,
  "og_generated_at": "2026-11-03T21:58:35.457025+00:00",
  "reviewer_excerpt": "Don't update the existing analyzer. Add a new one.",
  "review_comment_count": 5,
  "reviewer_excerpt_url": "https://github.com/microsoft/testfx/pull/5792#pullrequestreview-2938483024"
 },
 "repo": {
  "name": "testfx",
  "owner": "microsoft",
  "stars": 1058,
  "license": "MIT",
  "full_name": "microsoft/testfx",
  "primary_language": "C#"
 },
 "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": "reviewed",
   "actor_login": null
  },
  {
   "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": "Amaury Levé"
  },
  {
   "at": null,
   "url": null,
   "kind": "committed",
   "actor_login": "Amaury Levé"
  },
  {
   "at": null,
   "url": null,
   "kind": "committed",
   "actor_login": "Amaury Levé"
  },
  {
   "at": null,
   "url": null,
   "kind": "reviewed",
   "actor_login": null
  },
  {
   "at": null,
   "url": null,
   "kind": "committed",
   "actor_login": "Amaury Levé"
  },
  {
   "at": null,
   "url": null,
   "kind": "reviewed",
   "actor_login": null
  },
  {
   "at": null,
   "url": null,
   "kind": "committed",
   "actor_login": "Amaury Levé"
  },
  {
   "at": null,
   "url": null,
   "kind": "reviewed",
   "actor_login": null
  },
  {
   "at": null,
   "url": null,
   "kind": "committed",
   "actor_login": "copilot-swe-agent[bot]"
  }
 ],
 "related": [
  {
   "agent": "github-copilot",
   "state": "merged",
   "title": "Add timeout tests for GlobalTestInitializeAttribute and GlobalTestCleanupAttribute",
   "number": 6200,
   "outcome": "merged_clean",
   "index_ok": true,
   "additions": 153,
   "deletions": 0,
   "merged_at": "2025-07-28T18:04:49+00:00",
   "opened_at": "2025-07-28T12:13:38+00:00",
   "task_type": "test",
   "files_changed": 2,
   "hours_to_merge": 5.85
  },
  {
   "agent": "github-copilot",
   "state": "merged",
   "title": "Add analyzer to flag Assert.Throws with multiple statements (MSTEST0051)",
   "number": 6190,
   "outcome": "merged_clean",
   "index_ok": true,
   "additions": 4504,
   "deletions": 1326,
   "merged_at": "2025-07-30T10:53:31+00:00",
   "opened_at": "2025-07-27T14:02:16+00:00",
   "task_type": "feat",
   "files_changed": 101,
   "hours_to_merge": 68.85
  },
  {
   "agent": "github-copilot",
   "state": "merged",
   "title": "Rename diagnostic options to use kebab case",
   "number": 6165,
   "outcome": "merged_clean",
   "index_ok": true,
   "additions": 5353,
   "deletions": 5262,
   "merged_at": "2025-07-30T14:05:27+00:00",
   "opened_at": "2025-07-25T08:23:15+00:00",
   "task_type": "refactor",
   "files_changed": 309,
   "hours_to_merge": 125.7
  }
 ],
 "pr_url": "https://github.com/microsoft/testfx/pull/5792",
 "page": "https://agentriders.com/logs/microsoft/testfx/5792/"
}