diff --git a/Framework/Core/scripts/dpl-mcp-server/dpl_mcp_server.py b/Framework/Core/scripts/dpl-mcp-server/dpl_mcp_server.py index ed457b8a57d9d..6ad91dd44764e 100644 --- a/Framework/Core/scripts/dpl-mcp-server/dpl_mcp_server.py +++ b/Framework/Core/scripts/dpl-mcp-server/dpl_mcp_server.py @@ -190,9 +190,10 @@ async def connect(port: int = 0, pid: int = 0, name: str = "") -> str: _workflows[wf_name] = conn devices = conn.snapshot.get("devices", []) + version = conn.snapshot.get("version", "unknown") return ( f"Connected to workflow '{wf_name}' on port {port} " - f"({len(devices)} device(s))." + f"({len(devices)} device(s), version: {version})." ) @@ -232,9 +233,10 @@ async def connect_hyperloop(url: str, name: str = "", token: str = "") -> str: _workflows[wf_name] = conn devices = conn.snapshot.get("devices", []) + version = conn.snapshot.get("version", "unknown") return ( f"Connected to Hyperloop workflow '{wf_name}' via {ws_url} " - f"({len(devices)} device(s))." + f"({len(devices)} device(s), version: {version})." ) diff --git a/Framework/Core/src/StatusWebSocketHandler.cxx b/Framework/Core/src/StatusWebSocketHandler.cxx index 065a6f4b05b4a..46c3e5d686c1a 100644 --- a/Framework/Core/src/StatusWebSocketHandler.cxx +++ b/Framework/Core/src/StatusWebSocketHandler.cxx @@ -23,6 +23,7 @@ #include "Framework/DeviceStateEnums.h" #include "Framework/LogParsingHelpers.h" #include "Framework/Signpost.h" +#include "O2Version.h" #include #include #include @@ -286,7 +287,9 @@ void StatusWebSocketHandler::sendSnapshot() std::string out; out.reserve(512 + specs.size() * 128); - out += R"({"type":"snapshot","devices":[)"; + out += R"({"type":"snapshot","version":")"; + out += jsonEscape(o2::gitRevision()); + out += R"(","devices":[)"; for (size_t di = 0; di < specs.size(); ++di) { if (di > 0) { out += ',';