{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "title": "Combot Automation Compact v3 - safe LLM generation profile",
  "description": "Supplementary documentation schema for new disabled Compact v3 bundles. Editorial revision: 2026-09-09. This is not the complete product validator or a schema accepting every legacy/export payload. Nested export-only filters remain semantically unchecked. Read the accompanying Combot Automation LLM specification for field meanings and verification boundaries. Do not import this schema itself.",
  "type": "object",
  "properties": {
    "v": {
      "const": 3
    },
    "dv": {
      "const": "t3.compact.3"
    },
    "t": {
      "type": "array",
      "items": {
        "$ref": "#/$defs/trigger"
      },
      "minItems": 1,
      "maxItems": 100
    }
  },
  "required": [
    "v",
    "t"
  ],
  "additionalProperties": false,
  "$defs": {
    "trigger": {
      "type": "object",
      "properties": {
        "n": {
          "type": "string",
          "minLength": 1,
          "maxLength": 80
        },
        "d": {
          "type": "string",
          "maxLength": 280
        },
        "en": {
          "const": false,
          "description": "Safety policy for newly generated rules, not a product restriction."
        },
        "k": {
          "const": "c"
        },
        "cm": {
          "type": "array",
          "items": {
            "type": "string",
            "pattern": "^/[a-z0-9_]+$"
          },
          "minItems": 1,
          "maxItems": 500,
          "uniqueItems": true
        },
        "ctm": {
          "const": "p"
        },
        "e": {
          "enum": [
            [
              "m"
            ],
            [
              "em"
            ],
            [
              "m",
              "em"
            ],
            [
              "lc"
            ],
            [
              "el"
            ],
            [
              "lc",
              "el"
            ],
            [
              "cp"
            ],
            [
              "ec"
            ],
            [
              "cp",
              "ec"
            ],
            [
              "jr"
            ],
            [
              "nm"
            ],
            [
              "ml"
            ],
            [
              "cb"
            ],
            [
              "rb"
            ],
            [
              "mr"
            ],
            [
              "rc"
            ],
            [
              "ck"
            ],
            [
              "cd"
            ],
            [
              "ca"
            ]
          ],
          "description": "Only editor-supported event selections; do not combine unrelated event kinds."
        },
        "at": {
          "$ref": "#/$defs/time"
        },
        "cl": {
          "enum": [
            "n",
            "ps"
          ]
        },
        "s": {
          "enum": [
            "sc",
            "st",
            "gn"
          ]
        },
        "ti": {
          "type": "array",
          "items": {
            "type": "integer",
            "minimum": 1
          },
          "maxItems": 500,
          "uniqueItems": true
        },
        "a": {
          "type": "object",
          "properties": {
            "m": {
              "enum": [
                "a",
                "r"
              ]
            },
            "r": {
              "type": "array",
              "items": {
                "$ref": "#/$defs/action"
              },
              "minItems": 1,
              "maxItems": 100
            }
          },
          "required": [
            "m",
            "r"
          ],
          "additionalProperties": false
        },
        "ov": {
          "type": "array",
          "items": {
            "type": "object",
            "description": "Export-only extension in this generation profile. Preserve a real editor export; this schema does not validate nested filter semantics."
          },
          "minItems": 1,
          "maxItems": 5,
          "description": "Export-only condition alternatives: same event and parent actions. No nested OR generation."
        },
        "chl": {
          "type": "string",
          "pattern": "^https://t\\.me/(?:c/[0-9]+|[A-Za-z0-9_]+)/(?:[0-9]+/)?[0-9]+$"
        },
        "il": {
          "enum": [
            "Any source",
            "Known Combot links",
            "External invite link"
          ]
        },
        "ilc": {
          "type": "array",
          "items": {
            "type": "string",
            "maxLength": 4096
          },
          "maxItems": 500,
          "uniqueItems": true
        },
        "ilx": {
          "type": "array",
          "items": {
            "type": "string",
            "maxLength": 4096
          },
          "maxItems": 500,
          "uniqueItems": true
        },
        "wh": {
          "type": "array",
          "items": {
            "enum": [
              "Anyone",
              "New members",
              "Regular members",
              "Ex-members",
              "Whitelisted users",
              "Admins",
              "Telegram admins",
              "Combot custom admins",
              "Owner",
              "Target self",
              "Target members",
              "Target bots",
              "Target non-admins",
              "Target Combot",
              "Target linked channel post",
              "Target channel sender"
            ]
          },
          "maxItems": 500,
          "uniqueItems": true
        },
        "wx": {
          "type": "array",
          "items": {
            "enum": [
              "Anyone",
              "New members",
              "Regular members",
              "Ex-members",
              "Whitelisted users",
              "Admins",
              "Telegram admins",
              "Combot custom admins",
              "Owner",
              "Target self",
              "Target members",
              "Target bots",
              "Target non-admins",
              "Target Combot",
              "Target linked channel post",
              "Target channel sender"
            ]
          },
          "maxItems": 500,
          "uniqueItems": true
        },
        "wm": {
          "enum": [
            "a",
            "o"
          ]
        },
        "cgr": {
          "$ref": "#/$defs/customGroups"
        },
        "ua": {
          "type": "array",
          "items": {
            "enum": [
              "Any username",
              "Telegram Premium",
              "Bot account",
              "Any last name"
            ]
          },
          "maxItems": 500,
          "uniqueItems": true
        },
        "ux": {
          "type": "array",
          "items": {
            "enum": [
              "Any username",
              "Telegram Premium",
              "Bot account",
              "Any last name"
            ]
          },
          "maxItems": 500,
          "uniqueItems": true
        },
        "uar": {
          "$ref": "#/$defs/attributeRules"
        },
        "ual": {
          "enum": [
            "a",
            "o"
          ]
        },
        "uag": {
          "type": "array",
          "items": {
            "type": "object",
            "description": "Export-only extension in this generation profile. Preserve a real editor export; this schema does not validate nested filter semantics."
          },
          "maxItems": 500,
          "description": "Use a matching real editor export. Do not invent nested filter keys."
        },
        "ul": {
          "type": "array",
          "items": {
            "type": "string",
            "maxLength": 4096
          },
          "maxItems": 500,
          "uniqueItems": true
        },
        "ulx": {
          "type": "array",
          "items": {
            "type": "string",
            "maxLength": 4096
          },
          "maxItems": 500,
          "uniqueItems": true
        },
        "twh": {
          "type": "array",
          "items": {
            "enum": [
              "Anyone",
              "New members",
              "Regular members",
              "Ex-members",
              "Whitelisted users",
              "Admins",
              "Telegram admins",
              "Combot custom admins",
              "Owner",
              "Target self",
              "Target members",
              "Target bots",
              "Target non-admins",
              "Target Combot",
              "Target linked channel post",
              "Target channel sender"
            ]
          },
          "maxItems": 500,
          "uniqueItems": true
        },
        "twx": {
          "type": "array",
          "items": {
            "enum": [
              "Anyone",
              "New members",
              "Regular members",
              "Ex-members",
              "Whitelisted users",
              "Admins",
              "Telegram admins",
              "Combot custom admins",
              "Owner",
              "Target self",
              "Target members",
              "Target bots",
              "Target non-admins",
              "Target Combot",
              "Target linked channel post",
              "Target channel sender"
            ]
          },
          "maxItems": 500,
          "uniqueItems": true
        },
        "twm": {
          "enum": [
            "a",
            "o"
          ]
        },
        "tcg": {
          "$ref": "#/$defs/customGroups"
        },
        "tua": {
          "type": "array",
          "items": {
            "enum": [
              "Any username",
              "Telegram Premium",
              "Bot account",
              "Any last name"
            ]
          },
          "maxItems": 500,
          "uniqueItems": true
        },
        "tux": {
          "type": "array",
          "items": {
            "enum": [
              "Any username",
              "Telegram Premium",
              "Bot account",
              "Any last name"
            ]
          },
          "maxItems": 500,
          "uniqueItems": true
        },
        "tur": {
          "$ref": "#/$defs/attributeRules"
        },
        "tul": {
          "enum": [
            "a",
            "o"
          ]
        },
        "tug": {
          "type": "array",
          "items": {
            "type": "object",
            "description": "Export-only extension in this generation profile. Preserve a real editor export; this schema does not validate nested filter semantics."
          },
          "maxItems": 500,
          "description": "Use a matching real editor export. Do not invent nested filter keys."
        },
        "tlg": {
          "type": "array",
          "items": {
            "type": "string",
            "maxLength": 4096
          },
          "maxItems": 500,
          "uniqueItems": true
        },
        "tlx": {
          "type": "array",
          "items": {
            "type": "string",
            "maxLength": 4096
          },
          "maxItems": 500,
          "uniqueItems": true
        },
        "rct": {
          "type": "array",
          "items": {
            "enum": [
              "added",
              "removed"
            ]
          },
          "maxItems": 500,
          "uniqueItems": true
        },
        "rnt": {
          "type": "array",
          "items": {
            "type": "string",
            "maxLength": 4096
          },
          "maxItems": 500,
          "uniqueItems": true
        },
        "rnx": {
          "type": "array",
          "items": {
            "type": "string",
            "maxLength": 4096
          },
          "maxItems": 500,
          "uniqueItems": true
        },
        "rcy": {
          "type": "array",
          "items": {
            "type": "string",
            "maxLength": 4096
          },
          "maxItems": 500,
          "uniqueItems": true
        },
        "rcx": {
          "type": "array",
          "items": {
            "type": "string",
            "maxLength": 4096
          },
          "maxItems": 500,
          "uniqueItems": true
        },
        "rcn": {
          "type": "integer",
          "minimum": 0
        },
        "rcm": {
          "type": "integer",
          "minimum": 0
        },
        "t": {
          "type": "string",
          "maxLength": 4096
        },
        "tr": {
          "enum": [
            "p",
            "w",
            "r"
          ]
        },
        "tv": {
          "type": "array",
          "items": {
            "type": "string",
            "maxLength": 4096
          },
          "maxItems": 500,
          "uniqueItems": true
        },
        "ty": {
          "enum": [
            "f",
            "p",
            "r",
            "s",
            "e"
          ]
        },
        "cs": {
          "type": "boolean"
        },
        "lmin": {
          "type": "integer",
          "minimum": 0
        },
        "lmax": {
          "type": "integer",
          "minimum": 0
        },
        "rm": {
          "enum": [
            "a",
            "r",
            "rb",
            "rc",
            "nr"
          ]
        },
        "rmi": {
          "type": "array",
          "items": {
            "type": "string",
            "maxLength": 4096
          },
          "maxItems": 500,
          "uniqueItems": true
        },
        "rme": {
          "type": "array",
          "items": {
            "type": "string",
            "maxLength": 4096
          },
          "maxItems": 500,
          "uniqueItems": true
        },
        "am": {
          "enum": [
            "a",
            "o",
            "n"
          ]
        },
        "mt": {
          "enum": [
            "text",
            "caption",
            "photo",
            "video",
            "animation",
            "audio",
            "document",
            "sticker",
            "voice",
            "video_note",
            "contact",
            "location",
            "poll",
            "dice",
            "game",
            "paid_media"
          ]
        },
        "mti": {
          "type": "array",
          "items": {
            "enum": [
              "text",
              "caption",
              "photo",
              "video",
              "animation",
              "audio",
              "document",
              "sticker",
              "voice",
              "video_note",
              "contact",
              "location",
              "poll",
              "dice",
              "game",
              "paid_media"
            ]
          },
          "maxItems": 500,
          "uniqueItems": true
        },
        "mtx": {
          "type": "array",
          "items": {
            "enum": [
              "text",
              "caption",
              "photo",
              "video",
              "animation",
              "audio",
              "document",
              "sticker",
              "voice",
              "video_note",
              "contact",
              "location",
              "poll",
              "dice",
              "game",
              "paid_media"
            ]
          },
          "maxItems": 500,
          "uniqueItems": true
        },
        "mtl": {
          "enum": [
            "a",
            "o"
          ]
        },
        "mtg": {
          "type": "array",
          "items": {
            "type": "object",
            "description": "Export-only extension in this generation profile. Preserve a real editor export; this schema does not validate nested filter semantics."
          },
          "maxItems": 500,
          "description": "Use a matching real editor export. Do not invent nested filter keys."
        },
        "me": {
          "type": "array",
          "items": {
            "enum": [
              "bot_command",
              "url",
              "text_link",
              "mention",
              "hashtag",
              "cashtag",
              "email",
              "phone_number",
              "emoji",
              "custom_emoji",
              "bold",
              "italic",
              "underline",
              "strikethrough",
              "code",
              "pre",
              "spoiler",
              "blockquote",
              "expandable_blockquote"
            ]
          },
          "maxItems": 500,
          "uniqueItems": true
        },
        "mex": {
          "type": "array",
          "items": {
            "enum": [
              "bot_command",
              "url",
              "text_link",
              "mention",
              "hashtag",
              "cashtag",
              "email",
              "phone_number",
              "emoji",
              "custom_emoji",
              "bold",
              "italic",
              "underline",
              "strikethrough",
              "code",
              "pre",
              "spoiler",
              "blockquote",
              "expandable_blockquote"
            ]
          },
          "maxItems": 500,
          "uniqueItems": true
        },
        "mel": {
          "enum": [
            "a",
            "o"
          ]
        },
        "mef": {
          "type": "object",
          "description": "Export-only extension in this generation profile. Preserve a real editor export; this schema does not validate nested filter semantics."
        },
        "mmo": {
          "type": "object",
          "description": "Export-only extension in this generation profile. Preserve a real editor export; this schema does not validate nested filter semantics."
        },
        "mog": {
          "type": "array",
          "items": {
            "type": "object",
            "description": "Export-only extension in this generation profile. Preserve a real editor export; this schema does not validate nested filter semantics."
          },
          "maxItems": 500,
          "description": "Use a matching real editor export. Do not invent nested filter keys."
        },
        "csx": {
          "type": "array",
          "items": {
            "type": "string",
            "maxLength": 4096
          },
          "maxItems": 500,
          "uniqueItems": true
        },
        "cse": {
          "type": "array",
          "items": {
            "type": "string",
            "maxLength": 4096
          },
          "maxItems": 500,
          "uniqueItems": true
        }
      },
      "required": [
        "n",
        "en",
        "a"
      ],
      "additionalProperties": false,
      "oneOf": [
        {
          "required": [
            "k",
            "cm"
          ],
          "not": {
            "required": [
              "e"
            ]
          }
        },
        {
          "required": [
            "e"
          ],
          "not": {
            "anyOf": [
              {
                "required": [
                  "k"
                ]
              },
              {
                "required": [
                  "cm"
                ]
              },
              {
                "required": [
                  "ctm"
                ]
              }
            ]
          }
        }
      ]
    },
    "time": {
      "oneOf": [
        {
          "type": "object",
          "properties": {
            "m": {
              "const": "w"
            },
            "wd": {
              "type": "array",
              "items": {
                "type": "integer",
                "minimum": 0,
                "maximum": 6
              },
              "minItems": 1,
              "maxItems": 7,
              "uniqueItems": true
            },
            "tw": {
              "type": "array",
              "items": {
                "type": "object",
                "properties": {
                  "startMinute": {
                    "type": "integer",
                    "minimum": 0,
                    "maximum": 1439
                  },
                  "endMinute": {
                    "type": "integer",
                    "minimum": 0,
                    "maximum": 1439
                  }
                },
                "required": [
                  "startMinute",
                  "endMinute"
                ],
                "additionalProperties": false
              },
              "minItems": 1,
              "maxItems": 500
            }
          },
          "required": [
            "m",
            "wd",
            "tw"
          ],
          "additionalProperties": false
        },
        {
          "type": "object",
          "properties": {
            "m": {
              "const": "d"
            },
            "s": {
              "type": "string",
              "format": "date-time",
              "pattern": "Z$"
            },
            "e": {
              "type": "string",
              "format": "date-time",
              "pattern": "Z$"
            }
          },
          "required": [
            "m",
            "s",
            "e"
          ],
          "additionalProperties": false
        },
        {
          "type": "object",
          "properties": {
            "m": {
              "const": "c"
            },
            "i": {
              "type": "boolean"
            }
          },
          "required": [
            "m"
          ],
          "additionalProperties": false
        }
      ]
    },
    "action": {
      "oneOf": [
        {
          "type": "object",
          "properties": {
            "i": {
              "type": "string",
              "pattern": "^[A-Za-z0-9_-]{1,80}$"
            },
            "t": {
              "const": "s"
            },
            "fr": {
              "const": 1
            },
            "v": {
              "$ref": "#/$defs/send"
            }
          },
          "required": [
            "i",
            "t",
            "v"
          ],
          "additionalProperties": false
        },
        {
          "type": "object",
          "properties": {
            "i": {
              "type": "string",
              "pattern": "^[A-Za-z0-9_-]{1,80}$"
            },
            "t": {
              "enum": [
                "d",
                "ja",
                "jd"
              ]
            },
            "fr": {
              "const": 1
            }
          },
          "required": [
            "i",
            "t"
          ],
          "additionalProperties": false
        },
        {
          "type": "object",
          "properties": {
            "i": {
              "type": "string",
              "pattern": "^[A-Za-z0-9_-]{1,80}$"
            },
            "t": {
              "enum": [
                "w",
                "rw"
              ]
            },
            "fr": {
              "const": 1
            },
            "v": {
              "type": "object",
              "properties": {
                "tg": {
                  "enum": [
                    "u",
                    "t",
                    "l",
                    "b"
                  ]
                },
                "c": {
                  "type": "integer",
                  "minimum": 1
                }
              },
              "required": [
                "tg"
              ],
              "additionalProperties": false
            }
          },
          "required": [
            "i",
            "t",
            "v"
          ],
          "additionalProperties": false
        },
        {
          "type": "object",
          "properties": {
            "i": {
              "type": "string",
              "pattern": "^[A-Za-z0-9_-]{1,80}$"
            },
            "t": {
              "enum": [
                "m",
                "b"
              ]
            },
            "fr": {
              "const": 1
            },
            "v": {
              "type": "object",
              "properties": {
                "tg": {
                  "enum": [
                    "u",
                    "t",
                    "l",
                    "b"
                  ]
                },
                "du": {
                  "type": "integer",
                  "minimum": 0
                }
              },
              "required": [
                "tg",
                "du"
              ],
              "additionalProperties": false
            }
          },
          "required": [
            "i",
            "t",
            "v"
          ],
          "additionalProperties": false
        },
        {
          "type": "object",
          "properties": {
            "i": {
              "type": "string",
              "pattern": "^[A-Za-z0-9_-]{1,80}$"
            },
            "t": {
              "enum": [
                "k",
                "um",
                "ub",
                "du"
              ]
            },
            "fr": {
              "const": 1
            },
            "v": {
              "type": "object",
              "properties": {
                "tg": {
                  "enum": [
                    "u",
                    "t",
                    "l",
                    "b"
                  ]
                }
              },
              "required": [
                "tg"
              ],
              "additionalProperties": false
            }
          },
          "required": [
            "i",
            "t",
            "v"
          ],
          "additionalProperties": false
        },
        {
          "type": "object",
          "properties": {
            "i": {
              "type": "string",
              "pattern": "^[A-Za-z0-9_-]{1,80}$"
            },
            "t": {
              "enum": [
                "x"
              ]
            },
            "fr": {
              "const": 1
            },
            "v": {
              "type": "object",
              "properties": {
                "tg": {
                  "enum": [
                    "u",
                    "t",
                    "l",
                    "b"
                  ]
                },
                "v": {
                  "type": "integer",
                  "minimum": -99999,
                  "maximum": 99999,
                  "not": {
                    "const": 0
                  }
                }
              },
              "required": [
                "tg",
                "v"
              ],
              "additionalProperties": false
            }
          },
          "required": [
            "i",
            "t",
            "v"
          ],
          "additionalProperties": false
        },
        {
          "type": "object",
          "properties": {
            "i": {
              "type": "string",
              "pattern": "^[A-Za-z0-9_-]{1,80}$"
            },
            "t": {
              "enum": [
                "r"
              ]
            },
            "fr": {
              "const": 1
            },
            "v": {
              "type": "object",
              "properties": {
                "tg": {
                  "enum": [
                    "u",
                    "t",
                    "l",
                    "b"
                  ]
                },
                "v": {
                  "type": "integer",
                  "minimum": -999,
                  "maximum": 999,
                  "not": {
                    "const": 0
                  }
                }
              },
              "required": [
                "tg",
                "v"
              ],
              "additionalProperties": false
            }
          },
          "required": [
            "i",
            "t",
            "v"
          ],
          "additionalProperties": false
        }
      ]
    },
    "send": {
      "type": "object",
      "properties": {
        "tx": {
          "type": "string",
          "minLength": 1,
          "maxLength": 4096
        },
        "d": {
          "enum": [
            "sc",
            "lg"
          ]
        },
        "tp": {
          "enum": [
            "ct",
            "st",
            "gn"
          ]
        },
        "to": {
          "type": "array",
          "items": {
            "type": "integer",
            "minimum": 1
          },
          "maxItems": 500,
          "uniqueItems": true
        },
        "rp": {
          "enum": [
            "n",
            "r"
          ]
        },
        "cl": {
          "enum": [
            "n",
            "ps"
          ]
        },
        "bt": {
          "type": "array",
          "items": {
            "type": "array",
            "items": {
              "$ref": "#/$defs/button"
            },
            "minItems": 1,
            "maxItems": 500
          },
          "maxItems": 500
        },
        "ph": {
          "type": "array",
          "items": {
            "type": "string",
            "format": "uri",
            "maxLength": 4096
          },
          "maxItems": 500,
          "uniqueItems": true
        },
        "pa": {
          "type": "boolean"
        }
      },
      "required": [
        "tx"
      ],
      "additionalProperties": false
    },
    "button": {
      "type": "object",
      "properties": {
        "text": {
          "type": "string",
          "minLength": 1,
          "maxLength": 4096
        },
        "url": {
          "type": "string",
          "format": "uri",
          "maxLength": 4096
        },
        "icon_custom_emoji_id": {
          "type": "string",
          "pattern": "^[0-9]+$"
        }
      },
      "required": [
        "text",
        "url"
      ],
      "additionalProperties": false
    },
    "comparison": {
      "type": "object",
      "properties": {
        "join": {
          "enum": [
            "and",
            "or"
          ]
        },
        "mode": {
          "enum": [
            "include",
            "exclude"
          ]
        },
        "op": {
          "enum": [
            "eq",
            "gte",
            "lte"
          ]
        },
        "value": {
          "anyOf": [
            {
              "type": "number"
            },
            {
              "type": "string",
              "pattern": "^[+-]?(?:[0-9]+(?:\\.[0-9]+)?|\\.[0-9]+)$"
            }
          ]
        }
      },
      "required": [
        "op",
        "value"
      ],
      "additionalProperties": false
    },
    "comparisonSection": {
      "type": "object",
      "properties": {
        "rules": {
          "type": "array",
          "items": {
            "$ref": "#/$defs/comparison"
          },
          "minItems": 1,
          "maxItems": 500
        }
      },
      "required": [
        "rules"
      ],
      "additionalProperties": false
    },
    "statistic": {
      "type": "object",
      "properties": {
        "join": {
          "enum": [
            "and",
            "or"
          ]
        },
        "mode": {
          "enum": [
            "include",
            "exclude"
          ]
        },
        "op": {
          "enum": [
            "eq",
            "gte",
            "lte"
          ]
        },
        "value": {
          "anyOf": [
            {
              "type": "number"
            },
            {
              "type": "string",
              "pattern": "^[+-]?(?:[0-9]+(?:\\.[0-9]+)?|\\.[0-9]+)$"
            }
          ]
        },
        "metric": {
          "enum": [
            "joinedDays",
            "messageCount",
            "warns"
          ]
        },
        "unit": {
          "enum": [
            "s",
            "m",
            "h",
            "d",
            "w",
            "mo",
            "c"
          ]
        }
      },
      "required": [
        "metric",
        "unit",
        "op",
        "value"
      ],
      "additionalProperties": false,
      "allOf": [
        {
          "if": {
            "properties": {
              "metric": {
                "const": "joinedDays"
              }
            }
          },
          "then": {
            "properties": {
              "unit": {
                "enum": [
                  "s",
                  "m",
                  "h",
                  "d",
                  "w",
                  "mo"
                ]
              }
            }
          },
          "else": {
            "properties": {
              "unit": {
                "const": "c"
              }
            }
          }
        }
      ]
    },
    "customGroups": {
      "type": "object",
      "properties": {
        "logic": {
          "enum": [
            "All",
            "Any"
          ]
        },
        "xp": {
          "type": "object",
          "properties": {
            "xp": {
              "$ref": "#/$defs/comparisonSection"
            },
            "rank": {
              "$ref": "#/$defs/comparisonSection"
            }
          },
          "additionalProperties": false
        },
        "reputation": {
          "type": "object",
          "properties": {
            "reputation": {
              "$ref": "#/$defs/comparisonSection"
            }
          },
          "additionalProperties": false
        },
        "statistics": {
          "type": "object",
          "properties": {
            "rules": {
              "type": "array",
              "items": {
                "$ref": "#/$defs/statistic"
              },
              "minItems": 1,
              "maxItems": 500
            }
          },
          "required": [
            "rules"
          ],
          "additionalProperties": false
        }
      },
      "additionalProperties": false
    },
    "attributeRow": {
      "type": "object",
      "properties": {
        "join": {
          "enum": [
            "and",
            "or"
          ]
        },
        "mode": {
          "enum": [
            "include",
            "exclude"
          ]
        },
        "matchType": {
          "enum": [
              "Exact match",
              "Partial match",
              "Regular expression"
          ]
        },
        "values": {
          "type": "array",
          "items": {
            "type": "string",
            "maxLength": 4096
          },
          "maxItems": 500,
          "uniqueItems": true
        }
      },
      "required": [
        "matchType",
        "values"
      ],
      "additionalProperties": false
    },
    "attributeRules": {
      "type": "object",
      "properties": {
        "user_id": {
          "type": "object",
          "properties": {
            "rules": {
              "type": "array",
              "items": {
                "$ref": "#/$defs/attributeRow"
              },
              "minItems": 1,
              "maxItems": 500
            }
          },
          "required": [
            "rules"
          ],
          "additionalProperties": false
        },
        "name": {
          "type": "object",
          "properties": {
            "rules": {
              "type": "array",
              "items": {
                "$ref": "#/$defs/attributeRow"
              },
              "minItems": 1,
              "maxItems": 500
            }
          },
          "required": [
            "rules"
          ],
          "additionalProperties": false
        },
        "username": {
          "type": "object",
          "properties": {
            "rules": {
              "type": "array",
              "items": {
                "$ref": "#/$defs/attributeRow"
              },
              "minItems": 1,
              "maxItems": 500
            }
          },
          "required": [
            "rules"
          ],
          "additionalProperties": false
        },
        "last_name": {
          "type": "object",
          "properties": {
            "rules": {
              "type": "array",
              "items": {
                "$ref": "#/$defs/attributeRow"
              },
              "minItems": 1,
              "maxItems": 500
            }
          },
          "required": [
            "rules"
          ],
          "additionalProperties": false
        },
        "bio": {
          "type": "object",
          "properties": {
            "rules": {
              "type": "array",
              "items": {
                "$ref": "#/$defs/attributeRow"
              },
              "minItems": 1,
              "maxItems": 500
            }
          },
          "required": [
            "rules"
          ],
          "additionalProperties": false
        }
      },
      "additionalProperties": false
    }
  }
}
