{
 "flight": {
  "id": 888367,
  "agent": "cursor",
  "state": "merged",
  "title": "fix(vscode): don't throw error if MCP port is already in use",
  "number": 2579,
  "source": "aidev",
  "commits": 4,
  "debrief": "A Cursor agent takes a fix to the nx-console VS Code extension. The flight changes one file, McpWebServer.startSkeletonMcpServer, so that an EADDRINUSE error on an already-occupied MCP port logs to the output channel instead of throwing. Four commits, 39 additions, 16 deletions. Two reviews, zero change requests. Merged clean after 578.91 hours.",
  "outcome": "merged_clean",
  "signals": [
   "aidev:Cursor"
  ],
  "index_ok": true,
  "additions": 39,
  "closed_at": "2025-07-14T15:40:49+00:00",
  "deletions": 16,
  "merged_at": "2025-07-14T15:40:49+00:00",
  "opened_at": "2025-06-20T12:46:01+00:00",
  "task_type": "fix",
  "body_chars": 992,
  "confidence": "dataset",
  "updated_at": "2026-11-04T02:02:57.75928+00:00",
  "enriched_at": null,
  "body_excerpt": "The `McpWebServer.startSkeletonMcpServer` method in `libs/vscode/mcp/src/lib/mcp-web-server.ts` was updated to handle `EADDRINUSE` errors.\n\n*   When the specified port is already in use, instead of throwing an error, a message is logged to the VS Code output channel via `getOutputChannel().appendLin",
  "review_count": 2,
  "files_changed": 1,
  "hours_to_merge": 578.91,
  "metrics_source": "aidev_commit_sum",
  "change_requests": 0,
  "og_generated_at": "2026-11-04T02:02:57.75928+00:00",
  "reviewer_excerpt": null,
  "review_comment_count": 1,
  "reviewer_excerpt_url": null
 },
 "repo": {
  "name": "nx-console",
  "owner": "nrwl",
  "stars": 1415,
  "license": "MIT",
  "full_name": "nrwl/nx-console",
  "primary_language": "TypeScript"
 },
 "author": {
  "login": "MaxKless",
  "name": null,
  "github_profile": "https://github.com/MaxKless",
  "page": "https://agentriders.com/logs/author/maxkless/"
 },
 "claim": null,
 "events": [
  {
   "at": null,
   "url": null,
   "kind": "committed",
   "actor_login": "Cursor Agent"
  },
  {
   "at": null,
   "url": null,
   "kind": "committed",
   "actor_login": "Cursor Agent"
  },
  {
   "at": null,
   "url": null,
   "kind": "committed",
   "actor_login": "Cursor Agent"
  },
  {
   "at": null,
   "url": null,
   "kind": "committed",
   "actor_login": "Max Kless"
  },
  {
   "at": null,
   "url": null,
   "kind": "reviewed",
   "actor_login": null
  },
  {
   "at": null,
   "url": null,
   "kind": "reviewed",
   "actor_login": null
  },
  {
   "at": "2025-07-14T15:40:49+00:00",
   "url": null,
   "kind": "merged",
   "actor_login": "MaxKless"
  },
  {
   "at": "2025-07-14T15:40:49+00:00",
   "url": null,
   "kind": "closed",
   "actor_login": "MaxKless"
  }
 ],
 "related": [
  {
   "agent": "cursor",
   "state": "merged",
   "title": "fix: render inline code blocks in cloud fix webview",
   "number": 2616,
   "outcome": "merged_clean",
   "index_ok": true,
   "additions": 134,
   "deletions": 1,
   "merged_at": "2025-07-16T10:27:20+00:00",
   "opened_at": "2025-07-15T15:30:49+00:00",
   "task_type": "fix",
   "files_changed": 2,
   "hours_to_merge": 18.94
  },
  {
   "agent": "cursor",
   "state": "merged",
   "title": "fix(vscode): remove noisy logs from cloud polling",
   "number": 2597,
   "outcome": "merged_clean",
   "index_ok": true,
   "additions": 53,
   "deletions": 27,
   "merged_at": "2025-07-14T14:14:28+00:00",
   "opened_at": "2025-07-03T12:08:26+00:00",
   "task_type": "fix",
   "files_changed": 2,
   "hours_to_merge": 266.1
  },
  {
   "agent": "cursor",
   "state": "merged",
   "title": "chore(repo): increase CI timeout to one hour",
   "number": 2594,
   "outcome": "merged_clean",
   "index_ok": true,
   "additions": 2,
   "deletions": 2,
   "merged_at": "2025-07-03T13:12:41+00:00",
   "opened_at": "2025-07-02T17:34:31+00:00",
   "task_type": "chore",
   "files_changed": 1,
   "hours_to_merge": 19.64
  }
 ],
 "pr_url": "https://github.com/nrwl/nx-console/pull/2579",
 "page": "https://agentriders.com/logs/nrwl/nx-console/2579/"
}