{
  "format": "vercy-enterprise-allocation-fixtures/v2",
  "candidateName": "Calibration Event",
  "cases": [
    {
      "id": "traceable-calibration",
      "kind": "positive",
      "input": "One instrument is calibrated against pinned standards and method.",
      "expect": "Results, uncertainty, decision and certificate bindings are retained.",
      "target": "Calibration Event",
      "violates": "Method, standards and units are pinned.",
      "closesDefect": "D17"
    },
    {
      "id": "expired",
      "kind": "positive",
      "input": "The certificate validity ends.",
      "expect": "Historical evidence remains while current fitness support ceases.",
      "target": "Calibration Event",
      "violates": "Expiry ends fitness support without deleting history.",
      "closesDefect": "D17"
    },
    {
      "id": "configuration-change",
      "kind": "positive",
      "input": "The measuring subsystem is replaced.",
      "expect": "Dependent fitness is invalidated pending recalibration.",
      "target": "Calibration Event",
      "violates": "Configuration change invalidates dependent fitness.",
      "closesDefect": "D17"
    },
    {
      "id": "model-inheritance",
      "kind": "negative",
      "input": "All instruments of the same model inherit one result.",
      "expect": "The inheritance is rejected.",
      "target": "Calibration Event",
      "violates": "Calibration never transfers to sibling instances.",
      "closesDefect": "D17",
      "expectedCode": "EM_OPS_03_CALIBRATION_CLASS_PROPAGATION"
    },
    {
      "id": "timeless-fitness",
      "kind": "negative",
      "input": "Calibration creates an unconditional permanent fitness property.",
      "expect": "The claim is rejected.",
      "target": "Calibration Event",
      "violates": "Fitness is derived for a stated use.",
      "closesDefect": "D17",
      "expectedCode": "EM_OPS_03_FITNESS_STORED_AS_PROPERTY"
    },
    {
      "id": "missing-uncertainty",
      "kind": "negative",
      "input": "A conformity result omits required uncertainty.",
      "expect": "The result is rejected.",
      "target": "Calibration Event",
      "violates": "Uncertainty accompanies interpreted results.",
      "closesDefect": "D17",
      "expectedCode": "EM_OPS_03_CALIBRATION_UNCERTAINTY_MISSING"
    },
    {
      "id": "A-REF-01",
      "target": "Calibration Event",
      "kind": "negative",
      "input": "The candidate references WM-KNW-013, WM-REC-010 and WM-REC-001 as method, decision and certificate targets although no admitted evidence supplies them.",
      "expect": "The reference targets are rejected and replaced by unresolved role slots.",
      "violates": "Registry allocation is pending and no identifier may be guessed.",
      "closesDefect": "D03",
      "expectedCode": "EM_OPS_03_UNVERIFIED_REFERENCE_TARGET"
    },
    {
      "id": "A-DEP-01",
      "target": "Calibration Event",
      "kind": "negative",
      "input": "configurationRef is resolved by allocating a new configuration model instead of citing the reserved WM-OBJ-023 boundary.",
      "expect": "The allocation is rejected and the dependency remains open.",
      "violates": "WM-OBJ-023 is the reserved measuring-instrument/configuration boundary, is a completion dependency of EM-OPS-03, and receives no allocation here.",
      "closesDefect": "D04",
      "expectedCode": "EM_OPS_03_OBJ023_TREATED_AS_ALLOCATION"
    },
    {
      "id": "A-DEP-02",
      "target": "Calibration Event",
      "kind": "positive",
      "input": "The candidate declares completionDependencies WM-OBJ-023 and leaves configurationRef resolution open.",
      "expect": "The candidate remains valid, incomplete and explicitly non-publishable.",
      "violates": "WM-OBJ-023 is the reserved measuring-instrument/configuration boundary, is a completion dependency of EM-OPS-03, and receives no allocation here.",
      "closesDefect": "D04"
    },
    {
      "id": "A-EVT-04",
      "target": "Calibration Event",
      "kind": "negative",
      "input": "A WM-ACT-034 assessment of instrument condition is registered as the calibration event itself.",
      "expect": "The substitution is rejected.",
      "violates": "WM-MAT-008 observations and WM-ACT-034 assessments may be cited as evidence and never constitute event identity.",
      "closesDefect": "D09",
      "expectedCode": "EM_OPS_03_EVIDENCE_SUBSTITUTES_EVENT"
    },
    {
      "id": "A-CAL-01",
      "target": "Calibration Event",
      "kind": "negative",
      "input": "A conformity statement is issued with no decisionRule recorded.",
      "expect": "The conformity statement is rejected.",
      "violates": "Determination, decision and attestation remain separable.",
      "closesDefect": "D05",
      "expectedCode": "EM_OPS_03_CALIBRATION_DECISION_RULE_MISSING"
    },
    {
      "id": "A-CAL-02",
      "target": "Calibration Event",
      "kind": "negative",
      "input": "Results are released without calibratedRange or calibrationPoints.",
      "expect": "The release is rejected.",
      "violates": "Range and calibration points are explicit.",
      "closesDefect": "D05",
      "expectedCode": "EM_OPS_03_CALIBRATION_RANGE_MISSING"
    },
    {
      "id": "A-CAL-03",
      "target": "Calibration Event",
      "kind": "negative",
      "input": "validityState is set to valid while validityConditions are absent.",
      "expect": "The validity assertion is rejected.",
      "violates": "Expiry ends fitness support without deleting history.",
      "closesDefect": "D05",
      "expectedCode": "EM_OPS_03_CALIBRATION_VALIDITY_CONDITIONS_MISSING"
    },
    {
      "id": "A-CAL-04",
      "target": "Calibration Event",
      "kind": "negative",
      "input": "A declared break in the traceability chain is recorded and dependent fitness is left asserted.",
      "expect": "The retained fitness is rejected.",
      "violates": "Broken traceability invalidates dependent fitness.",
      "closesDefect": "D05",
      "expectedCode": "EM_OPS_03_CALIBRATION_TRACEABILITY_BROKEN"
    },
    {
      "id": "A-CAL-05",
      "target": "Calibration Event",
      "kind": "negative",
      "input": "A single lifecycle state encodes determination, conformity decision, attestation and validity together.",
      "expect": "The state model is rejected.",
      "violates": "The four lifecycle axes advance independently and no single state may encode determination, decision, attestation and validity together.",
      "closesDefect": "D06",
      "expectedCode": "EM_OPS_03_CALIBRATION_AXES_CONFLATED"
    },
    {
      "id": "A-CAL-06",
      "target": "Calibration Event",
      "kind": "positive",
      "input": "An event records determinationState evaluated, decisionState nonconforming, attestationState attested and validityState valid.",
      "expect": "All four axes are stored separately and the nonconforming decision does not withdraw the attestation.",
      "violates": "Determination, decision and attestation remain separable.",
      "closesDefect": "D06"
    },
    {
      "id": "A-CAL-07",
      "target": "Calibration Event",
      "kind": "negative",
      "input": "A certificate artifact is treated as the calibration event, with no event record created.",
      "expect": "The substitution is rejected.",
      "violates": "A certificate is the immutable artifact of exactly one calibration event and never substitutes for the event.",
      "closesDefect": "D09",
      "expectedCode": "EM_OPS_03_CERTIFICATE_SUBSTITUTES_EVENT"
    }
  ]
}
