{"record":{"id":"b987541cbf14633b","repo":"alibaba/nacos","slug":"invalid-endpoint-metadata-value-for-key-key","errorCode":null,"errorMessage":"Invalid Endpoint metadata value for key: {key}","messagePattern":"Invalid Endpoint metadata value for key: (.+?)","errorType":"validation","errorClass":"IllegalArgumentException","httpStatus":null,"severity":"error","filePath":"api/src/main/java/com/alibaba/nacos/api/ai/utils/AgentValidationUtils.java","lineNumber":252,"sourceCode":"     * @throws IllegalArgumentException when invalid or using a reserved key\n     */\n    public static void validateEndpointMetadata(Map<String, String> metadata) {\n        if (metadata == null) {\n            return;\n        }\n        if (metadata.size() > MAX_METADATA_SIZE) {\n            throw new IllegalArgumentException(\n                \"Endpoint metadata exceeds \" + MAX_METADATA_SIZE + \" entries\");\n        }\n        for (Map.Entry<String, String> entry : metadata.entrySet()) {\n            String key = entry.getKey();\n            String value = entry.getValue();\n            if (key == null || key.isEmpty() || codePointLength(key) > MAX_METADATA_KEY_LENGTH\n                || isReservedMetadataKey(key)) {\n                throw new IllegalArgumentException(\"Invalid Endpoint metadata key: \" + key);\n            }\n            if (value == null || codePointLength(value) > MAX_METADATA_VALUE_LENGTH) {\n                throw new IllegalArgumentException(\n                    \"Invalid Endpoint metadata value for key: \" + key);\n            }\n        }\n    }\n    \n    private static boolean isReservedMetadataKey(String key) {\n        return \"preserved.heart.beat.interval\".equals(key)\n            || \"preserved.heart.beat.timeout\".equals(key)\n            || \"preserved.ip.delete.timeout\".equals(key)\n            || key.startsWith(INTERNAL_ENDPOINT_METADATA_PREFIX);\n    }\n    \n    private static int codePointLength(String value) {\n        return value.codePointCount(0, value.length());\n    }\n    \n    private static void validatePrintableAscii(String value, String fieldName) {\n        for (int i = 0; i < value.length(); i++) {","sourceCodeStart":234,"sourceCodeEnd":270,"githubUrl":"https://github.com/alibaba/nacos/blob/9b989acdf181d00898f2e8839257bb2b2a3cefe3/api/src/main/java/com/alibaba/nacos/api/ai/utils/AgentValidationUtils.java#L234-L270","documentation":"Error \"Invalid Endpoint metadata value for key: {key}\" thrown in alibaba/nacos.","triggerScenarios":"Thrown at api/src/main/java/com/alibaba/nacos/api/ai/utils/AgentValidationUtils.java:252 when the library encounters an invalid state.","commonSituations":"Endpoint metadata uses a value that fails the value syntax rules.","solutions":["Correct the invalid value for endpoint metadata value to match the expected format or allowed set, then retry."],"exampleFix":null,"handlingStrategy":null,"validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"9b989acdf181d00898f2e8839257bb2b2a3cefe3","analyzedAt":"2026-08-14T07:17:31.569Z","schemaVersion":2},"datasetVersion":"2026-08-14T10:17:34.591Z"}