{
  "schemaVersion": 1,
  "checkedAt": "2026-08-16T07:18:44.059Z",
  "operationId": "20260816070721-18885fcaa5",
  "subject": "GLM-5.2 repetition-penalty contract across hosted and local runtimes",
  "method": {
    "authenticatedApiCalls": 0,
    "modelCalls": 0,
    "tokenizerCalls": 0,
    "graderCalls": 0,
    "networkUse": "Public documentation and pinned public source files only",
    "bodyRetention": "Only URL, status, byte count, and SHA-256 receipts are retained"
  },
  "claimBoundary": [
    "A field missing from the checked Z.AI schema is undocumented, not proven rejected by every backend or proxy.",
    "The fixtures validate route contracts and local policy; they do not measure generated-text quality.",
    "A neutral default does not prove a wrapper, gateway, or future release leaves the value neutral.",
    "No numeric repetition-penalty recommendation is inferred for GLM-5.2."
  ],
  "sourceReceipts": {
    "chatCompletion": {
      "url": "https://docs.z.ai/api-reference/llm/chat-completion.md",
      "finalUrl": "https://docs.z.ai/api-reference/llm/chat-completion.md",
      "status": 200,
      "bytes": 42731,
      "sha256": "322c87b850c4504873b8c225b5b31266d90aa129f362134fa040c49c5943a7c9",
      "optional": false
    },
    "modelApi": {
      "url": "https://huggingface.co/api/models/zai-org/GLM-5.2",
      "finalUrl": "https://huggingface.co/api/models/zai-org/GLM-5.2",
      "status": 200,
      "bytes": 23604,
      "sha256": "7afac405a6c017487b62e0a3f332f252261807a2c9e767f633d9704970866bb8",
      "optional": false
    },
    "transformersGenerationConfig": {
      "url": "https://raw.githubusercontent.com/huggingface/transformers/v5.12.0/src/transformers/generation/configuration_utils.py",
      "finalUrl": "https://raw.githubusercontent.com/huggingface/transformers/v5.12.0/src/transformers/generation/configuration_utils.py",
      "status": 200,
      "bytes": 97025,
      "sha256": "5feaa3dd36a0f9096a0c92dcc8394db73a9d5e86bc21eeaaed69290cb6650e44",
      "optional": false
    },
    "transformersLogitsProcessor": {
      "url": "https://raw.githubusercontent.com/huggingface/transformers/v5.12.0/src/transformers/generation/logits_process.py",
      "finalUrl": "https://raw.githubusercontent.com/huggingface/transformers/v5.12.0/src/transformers/generation/logits_process.py",
      "status": 200,
      "bytes": 150114,
      "sha256": "3aefb9fd5d35a2efb37c2bde596b0a2c55ab1bfa82b55de2df2b16062b3eb957",
      "optional": false
    },
    "vllmSamplingParams": {
      "url": "https://raw.githubusercontent.com/vllm-project/vllm/v0.27.1/vllm/sampling_params.py",
      "finalUrl": "https://raw.githubusercontent.com/vllm-project/vllm/v0.27.1/vllm/sampling_params.py",
      "status": 200,
      "bytes": 48261,
      "sha256": "cc040f9b21e373be3fa5f47c0f3a50e77229dede20cae6a8019f2b7f5ce365cf",
      "optional": false
    },
    "sglangSamplingParams": {
      "url": "https://raw.githubusercontent.com/sgl-project/sglang/v0.5.17/python/sglang/srt/sampling/sampling_params.py",
      "finalUrl": "https://raw.githubusercontent.com/sgl-project/sglang/v0.5.17/python/sglang/srt/sampling/sampling_params.py",
      "status": 200,
      "bytes": 13031,
      "sha256": "9437125033cd7abe001689cef162ba558454fb455f577e7b36b4eaa4d3f95c24",
      "optional": false
    },
    "glm52Blog": {
      "url": "https://z.ai/blog/glm-5.2",
      "finalUrl": "https://z.ai/blog/glm-5.2",
      "status": 200,
      "bytes": 598,
      "sha256": "63e94b9e11a2db64243ff18418011577f2a98ca7851ce9dcb0e97cfe34cc245a",
      "optional": false
    },
    "zhipuResearch": {
      "url": "http://zhipuai.cn/zh/research",
      "finalUrl": "https://www.zhipuai.cn/zh/research",
      "status": 200,
      "bytes": 1243011,
      "sha256": "c9825ad32a505b312954e96db523aa18233301902cddb0a9b91244d939509402",
      "optional": true
    },
    "pinnedGenerationConfig": {
      "url": "https://huggingface.co/zai-org/GLM-5.2/resolve/b4734de4facf877f85769a911abafc5283eab3d9/generation_config.json",
      "finalUrl": "https://huggingface.co/api/resolve-cache/models/zai-org/GLM-5.2/b4734de4facf877f85769a911abafc5283eab3d9/generation_config.json?%2Fzai-org%2FGLM-5.2%2Fresolve%2Fb4734de4facf877f85769a911abafc5283eab3d9%2Fgeneration_config.json=&etag=%22216bbb092d0df0dda1dc4cedd789b92286c4c001%22",
      "status": 200,
      "bytes": 194,
      "sha256": "ac76b43d8683d3b930126870fc8be73d8679308fe752fa1f381096d8354f6a55",
      "optional": false
    },
    "pinnedReadme": {
      "url": "https://huggingface.co/zai-org/GLM-5.2/resolve/b4734de4facf877f85769a911abafc5283eab3d9/README.md",
      "finalUrl": "https://huggingface.co/api/resolve-cache/models/zai-org/GLM-5.2/b4734de4facf877f85769a911abafc5283eab3d9/README.md?%2Fzai-org%2FGLM-5.2%2Fresolve%2Fb4734de4facf877f85769a911abafc5283eab3d9%2FREADME.md=&etag=%224245dd1dded39efdc83b5d38354ffc1b14f1879c%22",
      "status": 200,
      "bytes": 10905,
      "sha256": "ed5aca8ce3dc5f8de626c87e488444343e43b1dcbdeb0e643dc72fea63ab06e8",
      "optional": false
    }
  },
  "findings": {
    "modelRevision": "b4734de4facf877f85769a911abafc5283eab3d9",
    "hosted": {
      "documentedPenaltyFields": {
        "frequency_penalty": false,
        "presence_penalty": false,
        "repetition_penalty": false
      },
      "documentedOtherFields": {
        "logprobs": false,
        "top_logprobs": false,
        "min_p": false,
        "seed": false
      },
      "documentsDoSample": true,
      "documentsTemperature": true,
      "documentsTopP": true
    },
    "checkpoint": {
      "generationConfigTransformersVersion": "5.12.0",
      "generationConfigTemperature": 1,
      "generationConfigTopP": 0.95,
      "hasRepetitionPenalty": false,
      "hasFrequencyPenalty": false,
      "hasPresencePenalty": false,
      "readmeMinimumVllmVersion": "0.23.0",
      "readmeMinimumSglangVersion": "0.5.13.post1"
    },
    "transformers": {
      "neutralRepetitionDefault": true,
      "noRepeatNgramDefault": true,
      "processorIncludesPromptByDefault": true,
      "processorAppliesOncePerToken": true,
      "oneMeansNoPenalty": true,
      "aboveOnePenalizes": true
    },
    "vllm": {
      "version": "0.27.1",
      "defaults": {
        "presencePenalty": true,
        "frequencyPenalty": true,
        "repetitionPenalty": true
      },
      "additiveRanges": true,
      "repetitionMustBePositive": true,
      "repetitionIncludesPrompt": true,
      "frequencyUsesGeneratedCount": true,
      "presenceUsesGeneratedMembership": true
    },
    "sglang": {
      "version": "0.5.17",
      "defaults": {
        "presencePenalty": true,
        "frequencyPenalty": true,
        "repetitionPenalty": true
      },
      "additiveRanges": true,
      "repetitionRange": true
    },
    "fixedDiscoveryChecks": {
      "glm52BlogReturned200": true,
      "glm52BlogNamesGlm52": false,
      "zhipuResearchReturned200": true,
      "zhipuResearchNamesGlm52": true
    }
  },
  "contract": {
    "zai_hosted": {
      "label": "Z.AI hosted Chat Completion",
      "defaults": {},
      "supported": [],
      "ranges": {}
    },
    "transformers_5_12": {
      "label": "Transformers 5.12 direct generation",
      "defaults": {
        "repetition_penalty": 1
      },
      "supported": [
        "repetition_penalty"
      ],
      "ranges": {
        "repetition_penalty": {
          "exclusiveMinimum": 0
        }
      }
    },
    "vllm_0_27_1": {
      "label": "vLLM 0.27.1 SamplingParams",
      "defaults": {
        "frequency_penalty": 0,
        "presence_penalty": 0,
        "repetition_penalty": 1
      },
      "supported": [
        "frequency_penalty",
        "presence_penalty",
        "repetition_penalty"
      ],
      "ranges": {
        "frequency_penalty": {
          "minimum": -2,
          "maximum": 2
        },
        "presence_penalty": {
          "minimum": -2,
          "maximum": 2
        },
        "repetition_penalty": {
          "exclusiveMinimum": 0
        }
      }
    },
    "sglang_0_5_17": {
      "label": "SGLang 0.5.17 SamplingParams",
      "defaults": {
        "frequency_penalty": 0,
        "presence_penalty": 0,
        "repetition_penalty": 1
      },
      "supported": [
        "frequency_penalty",
        "presence_penalty",
        "repetition_penalty"
      ],
      "ranges": {
        "frequency_penalty": {
          "minimum": -2,
          "maximum": 2
        },
        "presence_penalty": {
          "minimum": -2,
          "maximum": 2
        },
        "repetition_penalty": {
          "exclusiveMinimum": 0,
          "maximum": 2
        }
      }
    }
  },
  "fixtures": {
    "zaiOmitted": {
      "route": "zai_hosted",
      "input": {},
      "resolved": {},
      "active": [],
      "accepted": true,
      "errors": [],
      "warnings": []
    },
    "zaiRepetitionField": {
      "route": "zai_hosted",
      "input": {
        "repetition_penalty": 1.1
      },
      "resolved": {},
      "active": [],
      "accepted": false,
      "errors": [
        "UNDOCUMENTED_FOR_ZAI_HOSTED:repetition_penalty"
      ],
      "warnings": []
    },
    "zaiFrequencyField": {
      "route": "zai_hosted",
      "input": {
        "frequency_penalty": 0.5
      },
      "resolved": {},
      "active": [],
      "accepted": false,
      "errors": [
        "UNDOCUMENTED_FOR_ZAI_HOSTED:frequency_penalty"
      ],
      "warnings": []
    },
    "transformersOmitted": {
      "route": "transformers_5_12",
      "input": {},
      "resolved": {
        "repetition_penalty": 1
      },
      "active": [],
      "accepted": true,
      "errors": [],
      "warnings": []
    },
    "transformersActiveRepetition": {
      "route": "transformers_5_12",
      "input": {
        "repetition_penalty": 1.1
      },
      "resolved": {
        "repetition_penalty": 1.1
      },
      "active": [
        "repetition_penalty"
      ],
      "accepted": true,
      "errors": [],
      "warnings": []
    },
    "transformersRewardRepetition": {
      "route": "transformers_5_12",
      "input": {
        "repetition_penalty": 0.9
      },
      "resolved": {
        "repetition_penalty": 0.9
      },
      "active": [
        "repetition_penalty"
      ],
      "accepted": true,
      "errors": [],
      "warnings": []
    },
    "transformersZeroRepetition": {
      "route": "transformers_5_12",
      "input": {
        "repetition_penalty": 0
      },
      "resolved": {
        "repetition_penalty": 1
      },
      "active": [],
      "accepted": false,
      "errors": [
        "OUT_OF_RANGE:repetition_penalty"
      ],
      "warnings": []
    },
    "transformersPresenceField": {
      "route": "transformers_5_12",
      "input": {
        "presence_penalty": 0.5
      },
      "resolved": {
        "repetition_penalty": 1
      },
      "active": [],
      "accepted": false,
      "errors": [
        "UNDOCUMENTED_FOR_TRANSFORMERS_5_12:presence_penalty"
      ],
      "warnings": []
    },
    "vllmOmitted": {
      "route": "vllm_0_27_1",
      "input": {},
      "resolved": {
        "frequency_penalty": 0,
        "presence_penalty": 0,
        "repetition_penalty": 1
      },
      "active": [],
      "accepted": true,
      "errors": [],
      "warnings": []
    },
    "vllmActiveRepetition": {
      "route": "vllm_0_27_1",
      "input": {
        "repetition_penalty": 1.1
      },
      "resolved": {
        "frequency_penalty": 0,
        "presence_penalty": 0,
        "repetition_penalty": 1.1
      },
      "active": [
        "repetition_penalty"
      ],
      "accepted": true,
      "errors": [],
      "warnings": []
    },
    "vllmActiveFrequency": {
      "route": "vllm_0_27_1",
      "input": {
        "frequency_penalty": 0.5
      },
      "resolved": {
        "frequency_penalty": 0.5,
        "presence_penalty": 0,
        "repetition_penalty": 1
      },
      "active": [
        "frequency_penalty"
      ],
      "accepted": true,
      "errors": [],
      "warnings": []
    },
    "vllmActivePresence": {
      "route": "vllm_0_27_1",
      "input": {
        "presence_penalty": 0.5
      },
      "resolved": {
        "frequency_penalty": 0,
        "presence_penalty": 0.5,
        "repetition_penalty": 1
      },
      "active": [
        "presence_penalty"
      ],
      "accepted": true,
      "errors": [],
      "warnings": []
    },
    "vllmAdditiveLowerBoundary": {
      "route": "vllm_0_27_1",
      "input": {
        "frequency_penalty": -2
      },
      "resolved": {
        "frequency_penalty": -2,
        "presence_penalty": 0,
        "repetition_penalty": 1
      },
      "active": [
        "frequency_penalty"
      ],
      "accepted": true,
      "errors": [],
      "warnings": []
    },
    "vllmAdditiveUpperBoundary": {
      "route": "vllm_0_27_1",
      "input": {
        "presence_penalty": 2
      },
      "resolved": {
        "frequency_penalty": 0,
        "presence_penalty": 2,
        "repetition_penalty": 1
      },
      "active": [
        "presence_penalty"
      ],
      "accepted": true,
      "errors": [],
      "warnings": []
    },
    "vllmAdditiveAboveRange": {
      "route": "vllm_0_27_1",
      "input": {
        "frequency_penalty": 2.01
      },
      "resolved": {
        "frequency_penalty": 0,
        "presence_penalty": 0,
        "repetition_penalty": 1
      },
      "active": [],
      "accepted": false,
      "errors": [
        "OUT_OF_RANGE:frequency_penalty"
      ],
      "warnings": []
    },
    "vllmMixedFamilies": {
      "route": "vllm_0_27_1",
      "input": {
        "repetition_penalty": 1.1,
        "frequency_penalty": 0.5
      },
      "resolved": {
        "frequency_penalty": 0.5,
        "presence_penalty": 0,
        "repetition_penalty": 1.1
      },
      "active": [
        "frequency_penalty",
        "repetition_penalty"
      ],
      "accepted": true,
      "errors": [],
      "warnings": [
        "MIXED_PENALTY_FAMILIES_ACTIVE"
      ]
    },
    "sglangOmitted": {
      "route": "sglang_0_5_17",
      "input": {},
      "resolved": {
        "frequency_penalty": 0,
        "presence_penalty": 0,
        "repetition_penalty": 1
      },
      "active": [],
      "accepted": true,
      "errors": [],
      "warnings": []
    },
    "sglangRepetitionUpperBoundary": {
      "route": "sglang_0_5_17",
      "input": {
        "repetition_penalty": 2
      },
      "resolved": {
        "frequency_penalty": 0,
        "presence_penalty": 0,
        "repetition_penalty": 2
      },
      "active": [
        "repetition_penalty"
      ],
      "accepted": true,
      "errors": [],
      "warnings": []
    },
    "sglangRepetitionAboveRange": {
      "route": "sglang_0_5_17",
      "input": {
        "repetition_penalty": 2.01
      },
      "resolved": {
        "frequency_penalty": 0,
        "presence_penalty": 0,
        "repetition_penalty": 1
      },
      "active": [],
      "accepted": false,
      "errors": [
        "OUT_OF_RANGE:repetition_penalty"
      ],
      "warnings": []
    },
    "sglangPresenceLowerBoundary": {
      "route": "sglang_0_5_17",
      "input": {
        "presence_penalty": -2
      },
      "resolved": {
        "frequency_penalty": 0,
        "presence_penalty": -2,
        "repetition_penalty": 1
      },
      "active": [
        "presence_penalty"
      ],
      "accepted": true,
      "errors": [],
      "warnings": []
    },
    "sglangPresenceBelowRange": {
      "route": "sglang_0_5_17",
      "input": {
        "presence_penalty": -2.01
      },
      "resolved": {
        "frequency_penalty": 0,
        "presence_penalty": 0,
        "repetition_penalty": 1
      },
      "active": [],
      "accepted": false,
      "errors": [
        "OUT_OF_RANGE:presence_penalty"
      ],
      "warnings": []
    },
    "sglangBothAdditive": {
      "route": "sglang_0_5_17",
      "input": {
        "presence_penalty": 0.4,
        "frequency_penalty": 0.4
      },
      "resolved": {
        "frequency_penalty": 0.4,
        "presence_penalty": 0.4,
        "repetition_penalty": 1
      },
      "active": [
        "frequency_penalty",
        "presence_penalty"
      ],
      "accepted": true,
      "errors": [],
      "warnings": [
        "BOTH_ADDITIVE_PENALTIES_ACTIVE"
      ]
    },
    "invalidString": {
      "route": "vllm_0_27_1",
      "input": {
        "repetition_penalty": "1.1"
      },
      "resolved": {
        "frequency_penalty": 0,
        "presence_penalty": 0,
        "repetition_penalty": 1
      },
      "active": [],
      "accepted": false,
      "errors": [
        "INVALID_NUMBER:repetition_penalty"
      ],
      "warnings": []
    }
  },
  "assertions": {
    "hostedDocumentsNoPenaltyFields": true,
    "hostedStillDocumentsSamplingControls": true,
    "checkpointPinsNoPenaltyOverride": true,
    "transformersNeutralDefaultVerified": true,
    "transformersProcessorScopeVerified": true,
    "vllmContractVerified": true,
    "sglangContractVerified": true,
    "unsupportedHostedFieldRejected": true,
    "neutralLocalProfilesAccepted": true,
    "runtimeBoundsEnforced": true,
    "mixedFamilyWarningRaised": true,
    "nonNumericValueRejected": true
  },
  "summary": {
    "fixtureCount": 23,
    "assertionCount": 12,
    "failedAssertionCount": 0,
    "allAssertionsPassed": true
  }
}
