import os file_path = r"C:\Users\Admin\.gemini\antigravity\scratch\axhub-backend-main\axhub-tool-core\src\main\java\io\shinhanlife\axhub\biz\mcp\tool\presentation\BusinessToolController.java" with open(file_path, "r", encoding="utf-8") as f: content = f.read() old_block = """ Map innerResult = new HashMap<>(); if (methodResult instanceof Map) { innerResult.putAll((Map) methodResult); } if (!innerResult.containsKey("contracts")) { List contracts = new ArrayList<>(); if (methodResult != null) { contracts.add(methodResult); } innerResult.put("contracts", contracts); }""" new_block = """ Map innerResult = new HashMap<>(); if (methodResult instanceof Map && ((Map) methodResult).containsKey("contracts")) { innerResult.putAll((Map) methodResult); } else { List contracts = new ArrayList<>(); if (methodResult != null) { contracts.add(methodResult); } innerResult.put("contracts", contracts); if (methodResult instanceof Map && ((Map) methodResult).containsKey("status")) { innerResult.put("status", ((Map) methodResult).get("status")); } else { innerResult.put("status", "SUCCESS"); } }""" old_size = 'resultPayload.put("original_size", 0);' new_size = """ int originalSize = 0; try { if (methodResult instanceof Map && ((Map) methodResult).containsKey("legacy_response")) { Object legacyResp = ((Map) methodResult).get("legacy_response"); if (legacyResp instanceof String) { originalSize = ((String) legacyResp).getBytes(java.nio.charset.StandardCharsets.UTF_8).length; } } else { String jsonStr = objectMapper.writeValueAsString(innerResult); originalSize = jsonStr.getBytes(java.nio.charset.StandardCharsets.UTF_8).length; } } catch (Exception e) { log.warn("Failed to calculate original_size", e); } resultPayload.put("original_size", originalSize);""" content = content.replace(old_block, new_block) content = content.replace(old_size, new_size) with open(file_path, "w", encoding="utf-8") as f: f.write(content) print("Patch applied to BusinessToolController.java")