{
 "flight": {
  "id": 17883,
  "agent": "github-copilot",
  "state": "merged",
  "title": "Implement analyzer/codefix to move from DataTestMethodAttribute to TestMethodAttribute",
  "number": 5706,
  "source": "aidev",
  "commits": 19,
  "debrief": "AgentRiders logs a Copilot feature PR in microsoft/testfx that adds an analyzer and codefix moving DataTestMethodAttribute to TestMethodAttribute, marking the former obsolete with a diagnostic. The change spans 41 files with 1050 additions and 445 deletions across 19 commits. It drew 30 review comments and zero change requests, merging clean after 112.18 hours.",
  "outcome": "merged_clean",
  "signals": [
   "aidev:Copilot"
  ],
  "index_ok": true,
  "additions": 1050,
  "closed_at": "2025-06-12T08:38:58+00:00",
  "deletions": 445,
  "merged_at": "2025-06-12T08:38:58+00:00",
  "opened_at": "2025-06-07T16:28:24+00:00",
  "task_type": "feat",
  "body_chars": 1771,
  "confidence": "dataset",
  "updated_at": "2026-11-03T22:03:41.763259+00:00",
  "enriched_at": null,
  "body_excerpt": "This PR implements the analyzer/codefix approach for obsoleting `[DataTestMethod]` in favor of `[TestMethod]` as discussed in issue #4166.\n\n## Changes Made\n\n### 1. Mark DataTestMethodAttribute as Obsolete\n- Added `[Obsolete]` attribute to `DataTestMethodAttribute` with diagnostic ID `MSTEST0044`\n- P",
  "review_count": 30,
  "files_changed": 41,
  "hours_to_merge": 112.18,
  "metrics_source": "aidev_commit_sum",
  "change_requests": 0,
  "og_generated_at": "2026-11-03T22:03:41.763259+00:00",
  "reviewer_excerpt": "> Possible to bump this to warning in the recommended profile in mstest analysis? That should already be the case (hopefully)",
  "review_comment_count": 30,
  "reviewer_excerpt_url": "https://github.com/microsoft/testfx/pull/5706#issuecomment-2965598927"
 },
 "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": "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": "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": "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": "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]"
  }
 ],
 "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/5706",
 "page": "https://agentriders.com/logs/microsoft/testfx/5706/"
}