{
  "lexicon": 1,
  "id": "ai.syui.log.chat",
  "defs": {
    "main": {
      "type": "record",
      "description": "Record containing a chat message in a conversation.",
      "key": "tid",
      "record": {
        "type": "object",
        "required": ["content", "author", "createdAt"],
        "properties": {
          "content": {
            "type": "string",
            "maxLength": 100000,
            "maxGraphemes": 10000,
            "description": "The content of the message."
          },
          "author": {
            "type": "string",
            "format": "did",
            "description": "DID of the message author."
          },
          "root": {
            "type": "string",
            "format": "at-uri",
            "description": "AT-URI of the root message in the thread."
          },
          "parent": {
            "type": "string",
            "format": "at-uri",
            "description": "AT-URI of the parent message being replied to."
          },
          "createdAt": {
            "type": "string",
            "format": "datetime",
            "description": "Client-declared timestamp when this message was created."
          },
          "lang": {
            "type": "string",
            "maxLength": 10,
            "description": "Language code of the original content (e.g., 'ja', 'en')."
          },
          "translations": {
            "type": "ref",
            "ref": "#translationMap",
            "description": "Translations of the message in other languages."
          }
        }
      }
    },
    "translationMap": {
      "type": "object",
      "description": "Map of language codes to translations.",
      "properties": {
        "en": { "type": "ref", "ref": "#translation" },
        "ja": { "type": "ref", "ref": "#translation" }
      }
    },
    "translation": {
      "type": "object",
      "description": "A translation of a chat message.",
      "properties": {
        "content": {
          "type": "string",
          "maxLength": 100000,
          "maxGraphemes": 10000
        }
      }
    }
  }
}
