{"record":{"id":"94736f126d797187","repo":"mem0ai/mem0","slug":"invalid-metadata-key-metadata-key-only-letter","errorCode":null,"errorMessage":"Invalid metadata key '{metadata_key}'. Only letters, numbers, underscores, nesting via '.', and array wildcards '[*]' are allowed.","messagePattern":"Invalid metadata key '(.+?)'\\. Only letters, numbers, underscores, nesting via '\\.', and array wildcards '\\[\\*\\]' are allowed\\.","errorType":"validation","errorClass":"ValueError","httpStatus":null,"severity":"error","filePath":"mem0/vector_stores/oracledb.py","lineNumber":40,"sourceCode":"\nlogger = logging.getLogger(__name__)\n\n\nclass OutputData(BaseModel):\n    \"\"\"Standard output structure returned from vector operations.\"\"\"\n\n    id: Optional[str]\n    score: Optional[float]\n    payload: Optional[Dict[str, Any]]\n\n\n# Allow letters, digits, underscore, dot, brackets, comma, *, space (for 'to')\nMETADATA_PATTERN = re.compile(r\"[a-zA-Z0-9_\\.\\[\\],\\s\\*]+\")\n\n\ndef _validate_metadata_key(metadata_key: str) -> None:\n    if not METADATA_PATTERN.fullmatch(metadata_key):\n        raise ValueError(\n            f\"Invalid metadata key '{metadata_key}'. \"\n            \"Only letters, numbers, underscores, nesting via '.', \"\n            \"and array wildcards '[*]' are allowed.\"\n        )\n\n\n_SCORE_FROM_DISTANCE = {\n    \"COSINE\": lambda d: max(0.0, min(1.0, 1.0 - d)),\n    \"EUCLIDEAN\": lambda d: 1.0 / (1.0 + max(0.0, d)),\n    \"EUCLIDEAN_SQUARED\": lambda d: 1.0 / (1.0 + math.sqrt(max(0.0, d))),\n    \"HAMMING\": lambda d: 1.0 / (1.0 + max(0.0, d)),\n    \"MANHATTAN\": lambda d: 1.0 / (1.0 + max(0.0, d)),\n    \"DOT\": lambda d: -d,\n}\n\n\ndef _convert_distance_to_score(distance: float, metric: str) -> float:\n    try:","sourceCodeStart":22,"sourceCodeEnd":58,"githubUrl":"https://github.com/mem0ai/mem0/blob/001c235229be8795e3834520467bd0d661ed8f34/mem0/vector_stores/oracledb.py#L22-L58","documentation":"Error \"Invalid metadata key '{metadata_key}'. Only letters, numbers, underscores, nesting via '.', and array wildcards '[*]' are allowed.\" thrown in mem0ai/mem0.","triggerScenarios":"Thrown at mem0/vector_stores/oracledb.py:40 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Use metadata keys with only letters, numbers, underscores, '.' for nesting, and '[*]' for array wildcards."],"exampleFix":null,"handlingStrategy":null,"validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"001c235229be8795e3834520467bd0d661ed8f34","analyzedAt":"2026-08-15T01:55:42.685Z","schemaVersion":2},"datasetVersion":"2026-08-15T22:17:37.221Z"}