{
 "flight": {
  "id": 40449,
  "agent": "github-copilot",
  "state": "merged",
  "title": "Add custom service key support to AddKeyedOllamaApiClient",
  "number": 741,
  "source": "aidev",
  "commits": 8,
  "debrief": "GitHub Copilot adds custom service key support to AddKeyedOllamaApiClient in CommunityToolkit/Aspire, distinguishing clients on one connection. The change spans 54 files across eight commits. Six reviews brought two change requests and five review comments, including a request to cover AddKeyedChatClient and the embedding generator method. It merged after rework, 165.95 hours after opening.",
  "outcome": "merged_after_rework",
  "signals": [
   "aidev:Copilot"
  ],
  "index_ok": true,
  "additions": 663,
  "closed_at": "2025-07-02T03:41:00+00:00",
  "deletions": 4769,
  "merged_at": "2025-07-02T03:41:00+00:00",
  "opened_at": "2025-06-25T05:43:56+00:00",
  "task_type": "feat",
  "body_chars": 4091,
  "confidence": "dataset",
  "updated_at": "2026-11-03T21:53:04.88681+00:00",
  "enriched_at": null,
  "body_excerpt": "This PR adds the ability to specify custom service keys when registering keyed Ollama API clients, resolving the limitation where users couldn't differentiate between multiple clients using the same connection but different models.\n\n## Problem\n\nPreviously, `AddKeyedOllamaApiClient` automatically use",
  "review_count": 6,
  "files_changed": 54,
  "hours_to_merge": 165.95,
  "metrics_source": "aidev_commit_sum",
  "change_requests": 2,
  "og_generated_at": "2026-11-03T21:53:04.88681+00:00",
  "reviewer_excerpt": "@copilot can we also support keys passed to AddKeyedChatClient and the embedding generator method",
  "review_comment_count": 5,
  "reviewer_excerpt_url": "https://github.com/CommunityToolkit/Aspire/pull/741#issuecomment-3006822058"
 },
 "repo": {
  "name": "Aspire",
  "owner": "CommunityToolkit",
  "stars": 632,
  "license": "MIT",
  "full_name": "CommunityToolkit/Aspire",
  "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": "committed",
   "actor_login": "copilot-swe-agent[bot]"
  },
  {
   "at": null,
   "url": null,
   "kind": "committed",
   "actor_login": "Aaron Powell"
  },
  {
   "at": null,
   "url": null,
   "kind": "reviewed",
   "actor_login": null
  },
  {
   "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": "Aaron Powell"
  },
  {
   "at": "2025-06-27T22:14:31+00:00",
   "url": "https://github.com/CommunityToolkit/Aspire/pull/741#pullrequestreview-2968082261",
   "kind": "changes_requested",
   "actor_login": "Alirexaa"
  },
  {
   "at": "2025-06-30T01:42:47+00:00",
   "url": "https://github.com/CommunityToolkit/Aspire/pull/741#pullrequestreview-2969671976",
   "kind": "changes_requested",
   "actor_login": "aaronpowell"
  }
 ],
 "related": [
  {
   "agent": "github-copilot",
   "state": "merged",
   "title": "Fix blocking ParameterResource.Value calls to prevent deadlocks in Aspire 9.4+",
   "number": 763,
   "outcome": "merged_clean",
   "index_ok": true,
   "additions": 184,
   "deletions": 149,
   "merged_at": "2025-07-30T02:23:38+00:00",
   "opened_at": "2025-07-28T01:58:37+00:00",
   "task_type": "fix",
   "files_changed": 21,
   "hours_to_merge": 48.42
  },
  {
   "agent": "github-copilot",
   "state": "merged",
   "title": "Add support for passing additional arguments to package installation methods",
   "number": 739,
   "outcome": "merged_clean",
   "index_ok": true,
   "additions": 172,
   "deletions": 56,
   "merged_at": "2025-06-23T03:39:22+00:00",
   "opened_at": "2025-06-23T01:13:45+00:00",
   "task_type": "feat",
   "files_changed": 7,
   "hours_to_merge": 2.43
  },
  {
   "agent": "github-copilot",
   "state": "merged",
   "title": "Refactor Node.js package installers from lifecycle hooks to ExecutableResource",
   "number": 736,
   "outcome": "merged_clean",
   "index_ok": true,
   "additions": 861,
   "deletions": 3566,
   "merged_at": "2025-06-20T02:06:29+00:00",
   "opened_at": "2025-06-17T04:09:10+00:00",
   "task_type": "refactor",
   "files_changed": 24,
   "hours_to_merge": 69.96
  }
 ],
 "pr_url": "https://github.com/CommunityToolkit/Aspire/pull/741",
 "page": "https://agentriders.com/logs/CommunityToolkit/Aspire/741/"
}