Required option on fields is not working at all

sure

{
  "kind": "collectionType",
  "collectionName": "newsletters",
  "info": {
    "name": "Newsletter",
    "description": ""
  },
  "options": {
    "increments": true,
    "timestamps": true,
    "draftAndPublish": true
  },
  "attributes": {
    "InternalTitle": {
      "type": "string",
      "unique": true,
      "required": true
    },
    "Image1": {
      "model": "file",
      "via": "related",
      "allowedTypes": [
        "images"
      ],
      "plugin": "upload",
      "required": false
    },
    "Image2": {
      "model": "file",
      "via": "related",
      "allowedTypes": [
        "images"
      ],
      "plugin": "upload",
      "required": false
    },
    "Data": {
      "type": "json"
    },
    "Tags": {
      "type": "string"
    },
    "pool": {
      "type": "enumeration",
      "enum": [
        "aaa",
        "bbb"
      ],
      "required": true
    },
    "subject": {
      "type": "string",
      "required": true,
      "minLength": 100
    }
  }
}

So InternalTitle, pool, subject are all required.