)]}'
{
  "commit": "774df846557ac02b647f3d79ae88319bb4344686",
  "tree": "c4ea76fdb805e08bd52b16976bbfd3aedcf43e58",
  "parents": [
    "0028439a3692b0e919b6cec53b03285d07c5d431"
  ],
  "author": {
    "name": "Hao Jiang",
    "email": "jianghao@google.com",
    "time": "Thu Apr 23 18:07:43 2026 +0000"
  },
  "committer": {
    "name": "Muhammad Usama Chaudhry",
    "email": "muhammadusama@google.com",
    "time": "Wed Jul 29 10:17:32 2026 -0700"
  },
  "message": "mctp: fix E-M configuration reading for nvmed and mctpreactor\n\nFixed a mismatch in how Entity Manager configurations are read for MCTP\ndevices in both nvmesensor and mctpreactor. The previous\nimplementation failed to handle different schema structures (e.g.,\nnested BusInfo vs flat properties directly on the interface).\n\nTo resolve this, the bus information extraction was refactored:\n- Added AbstractBusInfo and MctpReactorBusInfo in MctpUtil to target\n  mctpreactor expectations (USB/I2C/I3C).\n- Created a dedicated extractNVMeBusInfo in NVMeSensorMain.cpp to\n  handle the nested NVME1000.BusInfo0 structure.\n\nThis ensures both applications can correctly parse their respective\nconfigurations from Entity Manager. Tests and mock server were updated\nto reflect these changes.\n\nTested: All tests passed in Docker container.\nChange-Id: I28d5b196c5316974d689689304f52148d4617099\nGoogle-Bug-Id: 490106522\nSigned-off-by: Hao Jiang \u003cjianghao@google.com\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "6ed3d880e821dd03a6210d5f0651dc788f6e023d",
      "old_mode": 33188,
      "old_path": "src/MctpReactorDevice.cpp",
      "new_id": "e6afac5af98001f86f4931ea35eedb179a218d24",
      "new_mode": 33188,
      "new_path": "src/MctpReactorDevice.cpp"
    },
    {
      "type": "modify",
      "old_id": "8b19eae19ebbb06f1ff14796fff4f799a6880675",
      "old_mode": 33188,
      "old_path": "src/MctpUtil.cpp",
      "new_id": "1d2aa968cd3ba529d1be80155a4269c426142e9d",
      "new_mode": 33188,
      "new_path": "src/MctpUtil.cpp"
    },
    {
      "type": "modify",
      "old_id": "5180e6b85da0017b8693cf140aebf9f365e62f22",
      "old_mode": 33188,
      "old_path": "src/MctpUtil.hpp",
      "new_id": "4d63c3fee8cf1eb2d94f7f1887d05e08dbc6b376",
      "new_mode": 33188,
      "new_path": "src/MctpUtil.hpp"
    },
    {
      "type": "modify",
      "old_id": "2821207606d085af86cccc3340c3bed925651406",
      "old_mode": 33188,
      "old_path": "src/NVMeSensorMain.cpp",
      "new_id": "0b082a4ed7215f1d251da6513886866876f9843b",
      "new_mode": 33188,
      "new_path": "src/NVMeSensorMain.cpp"
    },
    {
      "type": "modify",
      "old_id": "65801e76bd8f5f5657e8937295a24a35a9390b5f",
      "old_mode": 33188,
      "old_path": "tests/mock_mctpd.py",
      "new_id": "965c4c6cd72df214f1ff6f35ea435a3bc7841e20",
      "new_mode": 33188,
      "new_path": "tests/mock_mctpd.py"
    },
    {
      "type": "modify",
      "old_id": "05a4a502e89921d40c4abe0b87941d01d813c61c",
      "old_mode": 33188,
      "old_path": "tests/test_MctpUtil.cpp",
      "new_id": "5a0cc3c409259cd3909c69357ebf5f6af23584d2",
      "new_mode": 33188,
      "new_path": "tests/test_MctpUtil.cpp"
    }
  ]
}
