)]}'
{
  "commit": "1ba8b36fef84bedb0a657b570076ec1a47e9061d",
  "tree": "5da2755a9d215d7eade3b3ffe1c332ba88ce7ac7",
  "parents": [
    "508ef1796cf3fb590c79e2c76bf3339d3e4a8739"
  ],
  "author": {
    "name": "Jonas Devlieghere",
    "email": "jonas@devlieghere.com",
    "time": "Mon Aug 25 16:18:21 2025 -0700"
  },
  "committer": {
    "name": "GitHub",
    "email": "noreply@github.com",
    "time": "Mon Aug 25 16:18:21 2025 -0700"
  },
  "message": "[lldb] Adopt JSONTransport in the MCP Server (Reland) (#155322)\n\nThis PR adopts JSONTransport in the MCP server implementation. It\nrequired a slight change in design in the relationship between the two\nserver classes. Previously, these two had an \"is-a\" connection, while\nnow they have a \"has-a\" connection.\n\nThe \"generic\" protocol server in Protocol/MCP now operates using a\nsingle connection (Transport). This matches the design in DAP where each\nDAP instance has its own connection. The protocol server in Plugins\nstill supports multiple clients and creates a new server instance for\neach connection.\n\nI believe the new design makes sense in the long term (as proved by DAP)\nand allows us to make the server stateful if we choose to do so. There\u0027s\nno reason that multiple client support can\u0027t live in the generic\nprotocol library, but for now I kept it in ProtocolServerMCP to avoid\ncreating unnecessary abstractions.\n\nThis is a reland of #155034 but with significant changes to the tests.\nThe unit tests now test the generic server implementation, which matches\nthe original intent. This also means the test are now single threaded\nand therefore fully deterministic using the MainLoop.",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "2ac05880de86b04ae6fa9f423da8d00d50d8e15e",
      "old_mode": 33188,
      "old_path": "lldb/include/lldb/Protocol/MCP/Server.h",
      "new_id": "2b9e919329752ca48a352116788421126f4e5c4e",
      "new_mode": 33188,
      "new_path": "lldb/include/lldb/Protocol/MCP/Server.h"
    },
    {
      "type": "modify",
      "old_id": "c359663239dcc43103b89700b3fdbb5c5ca4da0a",
      "old_mode": 33188,
      "old_path": "lldb/source/Plugins/Protocol/MCP/ProtocolServerMCP.cpp",
      "new_id": "57132534cf68066f61f209fa7979443a3250a2f7",
      "new_mode": 33188,
      "new_path": "lldb/source/Plugins/Protocol/MCP/ProtocolServerMCP.cpp"
    },
    {
      "type": "modify",
      "old_id": "7fe909a728b85b8cf4a1ccac43707adf7d8e3592",
      "old_mode": 33188,
      "old_path": "lldb/source/Plugins/Protocol/MCP/ProtocolServerMCP.h",
      "new_id": "fc650ffe0dfa7318e41486e25ff260a590646291",
      "new_mode": 33188,
      "new_path": "lldb/source/Plugins/Protocol/MCP/ProtocolServerMCP.h"
    },
    {
      "type": "modify",
      "old_id": "a9c1482e3e378bf8eb778ccc20ebd072fa2d4b90",
      "old_mode": 33188,
      "old_path": "lldb/source/Protocol/MCP/Server.cpp",
      "new_id": "c1a6026b11090a9af5a3e0ea8bdfe0b86a255080",
      "new_mode": 33188,
      "new_path": "lldb/source/Protocol/MCP/Server.cpp"
    },
    {
      "type": "modify",
      "old_id": "5533c73c3de87e357184329b072c0e8735c13478",
      "old_mode": 33188,
      "old_path": "lldb/unittests/CMakeLists.txt",
      "new_id": "4c5267ae25b74edf93b08674bc70c241778592f3",
      "new_mode": 33188,
      "new_path": "lldb/unittests/CMakeLists.txt"
    },
    {
      "type": "modify",
      "old_id": "bbac69611e011a0ae9afd611bdada14fe2f70a54",
      "old_mode": 33188,
      "old_path": "lldb/unittests/Protocol/CMakeLists.txt",
      "new_id": "f877517ea233d6ec613deb5ceb4b1421be1b7d0b",
      "new_mode": 33188,
      "new_path": "lldb/unittests/Protocol/CMakeLists.txt"
    },
    {
      "type": "rename",
      "old_id": "18112428950cef6bac2c84dfa8a8f95a66379f57",
      "old_mode": 33188,
      "old_path": "lldb/unittests/ProtocolServer/ProtocolMCPServerTest.cpp",
      "new_id": "b3fe22dbd38e5bfeabf51edc1d8465bd4e9beb36",
      "new_mode": 33188,
      "new_path": "lldb/unittests/Protocol/ProtocolMCPServerTest.cpp",
      "score": 65
    },
    {
      "type": "delete",
      "old_id": "6117430b35bf0234f502658ced1832f609f1b1eb",
      "old_mode": 33188,
      "old_path": "lldb/unittests/ProtocolServer/CMakeLists.txt",
      "new_id": "0000000000000000000000000000000000000000",
      "new_mode": 0,
      "new_path": "/dev/null"
    }
  ]
}
