{
  "format": "vercy-model-allocation-candidate/v1",
  "contourId": "EM-PEO-08",
  "proposedName": "Grade Scheme",
  "modelId": null,
  "registryId": null,
  "allocationState": "unassigned",
  "decision": "NEW MODEL",
  "canonicalPublishable": false,
  "identityTest": {
    "stableIdentity": "A governed grading framework remains identifiable independently of people, positions, assignments and compensation while its level semantics evolve through immutable releases.",
    "versionIdentity": "Any change to axes, levels, ordering, applicability or crosswalk semantics creates a successor scheme version.",
    "independentLifecycle": [
      "draft",
      "reviewed",
      "approved",
      "published",
      "effective",
      "deprecated",
      "superseded",
      "retired"
    ],
    "mastership": "enterprise grade architecture authority"
  },
  "boundary": {
    "owns": [
      "grade-scheme identity",
      "immutable scheme versions",
      "scheme-version-owned grade levels",
      "axis and ordering semantics",
      "applicability and jurisdiction",
      "directional purpose-qualified crosswalk assertions",
      "deprecation and successor history"
    ],
    "references": [
      {
        "target": "WM-ORG-004",
        "purpose": "Position and job-evaluation context",
        "contractState": "provisional"
      },
      {
        "target": "WM-REC-010",
        "purpose": "Freeze and crosswalk approval decision",
        "contractState": "provisional"
      },
      {
        "target": "WM-ACT-034",
        "purpose": "Moderation evidence evaluated against a pinned scheme version",
        "contractState": "provisional"
      }
    ],
    "excludes": [
      "person or position identity",
      "person grade assignment",
      "role profile",
      "performance rating",
      "qualification or credential",
      "compensation band or payroll fact"
    ]
  },
  "objects": {
    "GradeScheme": {
      "identity": [
        "gradeSchemeId"
      ],
      "required": [
        "name",
        "ownerRef",
        "status",
        "createdAt"
      ],
      "optional": [
        "jurisdiction",
        "successorRef"
      ]
    },
    "GradeSchemeVersion": {
      "identity": [
        "gradeSchemeId",
        "versionId"
      ],
      "required": [
        "tracksOrAxes",
        "levels",
        "status",
        "effectiveFrom",
        "contentDigest",
        "freezeDecisionRef"
      ],
      "optional": [
        "effectiveTo",
        "supersedesVersionRef"
      ],
      "assignmentTargetWhen": "status is frozen or effective",
      "statusVocabulary": [
        "draft",
        "reviewed",
        "frozen",
        "effective",
        "deprecated",
        "superseded",
        "retired"
      ],
      "transitionRules": [
        "draft->reviewed",
        "reviewed->frozen",
        "frozen->effective",
        "effective->deprecated|superseded|retired"
      ],
      "terminalStates": [
        "retired"
      ]
    },
    "GradeLevel": {
      "identity": [
        "gradeSchemeId",
        "versionId",
        "trackOrAxisKey",
        "levelKey"
      ],
      "required": [
        "label",
        "semantics"
      ],
      "optional": [
        "ordinal",
        "axisCoordinates"
      ],
      "root": false,
      "singleLadderTrackKey": "default"
    },
    "GradeCrosswalk": {
      "identity": [
        "crosswalkOwnerRef",
        "crosswalkId",
        "revision"
      ],
      "required": [
        "sourceVersionRef",
        "targetVersionRef",
        "direction",
        "purpose",
        "authorityRef",
        "mappingRows",
        "semanticLoss",
        "contentDigest",
        "decisionRef",
        "effectiveFrom"
      ],
      "optional": [
        "effectiveTo",
        "supersedesRef"
      ],
      "root": false,
      "ownerPolicy": "an authorized scheme or third-party mapping authority; owner need not equal source scheme",
      "mappingRowSchema": {
        "required": [
          "sourceLevelRef",
          "mappingState"
        ],
        "mappingStates": [
          "mapped",
          "unmappable"
        ],
        "mappedRequires": [
          "targetLevelRefs",
          "strength",
          "rowSemanticLoss"
        ],
        "unmappableRequires": [
          "reason"
        ],
        "strengthVocabulary": [
          "exact",
          "narrow",
          "broad",
          "related"
        ]
      },
      "purposeVocabulary": [
        "merger-consolidation",
        "reporting-roll-up",
        "mobility-interpretation"
      ]
    }
  },
  "invariants": [
    "GradeLevel identity is local to exactly one scheme version and track or axis; it is not a root.",
    "A single-ladder scheme uses the reserved track key default.",
    "A dual-track ladder is one scheme with multiple tracks, not multiple schemes.",
    "A levelRef must resolve inside the cited scheme version and its trackOrAxisKey must agree with that level.",
    "Labels and ordinals never prove cross-scheme equivalence.",
    "Frozen or effective scheme versions are immutable.",
    "Only frozen or effective scheme versions are assignment and RoleProfile expectation targets.",
    "Relabeling, reordering or adding levels creates a successor version.",
    "Historical assignments and profiles retain their cited version unless an explicit successor decision is recorded.",
    "Crosswalk identity includes an authorized owner that may differ from either scheme.",
    "Crosswalks are directed, source-and-target-version-pinned, purpose-pinned and semantic-loss declaring.",
    "Crosswalk purpose is one allowedCrosswalkPurposes value; pay, access and pay-eligibility-hint are forbidden.",
    "Each mapped row pins target levels, strength and row-level semantic loss.",
    "Unmappable is explicit with a reason; neighbor ordinals are never coerced.",
    "Many-to-one and one-to-many mappings declare loss.",
    "Crosswalk approval creates no GradeAssignment and changes no pay or access.",
    "Crosswalk effectiveFrom cannot precede its approval and crosswalks never alter prior as-of results.",
    "Retirement preserves historical resolution.",
    "Scheme changes mutate no person, employment, position, GradeAssignment, compensation or access master.",
    "No identifier is allocated without registry reservation."
  ],
  "holds": [
    "Registry allocation is pending; no identifier is guessed.",
    "No approved relation row exists for any proposed edge; every relation is provisional.",
    "WM-ACT-034 retains a single-provider waiver and access-dimension downgrade hold; WM-PER-008, WM-ORG-005, WM-ECO-031 and WM-XCT-017 remain waived drafts.",
    "WM-PER-009 has no current specification; competency-typed relations are deferred.",
    "HR Open, ESCO, SFIA and SPACE crosswalks and all source pins remain unverified.",
    "Privacy authority, retention enforcement, package conversion and live conformance remain pending.",
    "Frozen audit returned REVISE at revision 2; its closed checklist was remediated once without audit rerun."
  ],
  "candidateRevision": 3,
  "relationPolicy": "Every external relation is provisional until reciprocal registry approval.",
  "digestPolicy": {
    "algorithm": "SHA-256",
    "canonicalization": "UTF-8 canonical JSON, sorted keys, no insignificant whitespace",
    "coverage": "all released semantic fields",
    "verification": "unverified until live conformance"
  },
  "privacyPolicy": {
    "access": "deny-by-default and purpose-limited",
    "minimumDisclosure": true,
    "disclosureScopes": [
      "level",
      "rationale",
      "comparative-ranking",
      "dissent"
    ],
    "subjectContestRead": true,
    "recordedByProtected": true,
    "retentionClocks": "separate for assertion, decision and evidence",
    "legalHoldSuspendsDisposition": true,
    "disposalNonCascading": true,
    "unknownDistinctFromAbsent": true
  },
  "allowedCrosswalkPurposes": [
    "merger-consolidation",
    "reporting-roll-up",
    "mobility-interpretation"
  ],
  "forbiddenCrosswalkPurposes": [
    "pay",
    "access",
    "pay-eligibility-hint"
  ],
  "datetimePolicy": "RFC 3339 with explicit offset; effective time and recorded knowledge time are distinct.",
  "lifecycles": {
    "scheme": [
      "draft",
      "reviewed",
      "approved",
      "published",
      "effective",
      "deprecated",
      "superseded",
      "retired"
    ],
    "version": [
      "draft",
      "reviewed",
      "frozen",
      "effective",
      "deprecated",
      "superseded",
      "retired"
    ],
    "crosswalk": [
      "draft",
      "reviewed",
      "approved",
      "effective",
      "superseded",
      "retired"
    ]
  },
  "mastership": {
    "schemeAndVersion": "enterprise grade architecture authority",
    "levels": "owning GradeSchemeVersion",
    "crosswalk": "crosswalkOwnerRef under WM-REC-010 approval"
  },
  "unownedScopeRegister": [
    "calibration deliberative occasion including composition and recusal",
    "performance rating",
    "job-family architecture",
    "pay-band master data",
    "access master"
  ],
  "invariantRules": [
    {
      "id": "GS-INV-01",
      "text": "GradeLevel identity is local to exactly one scheme version and track or axis; it is not a root.",
      "fixturable": true
    },
    {
      "id": "GS-INV-02",
      "text": "A single-ladder scheme uses the reserved track key default.",
      "fixturable": true
    },
    {
      "id": "GS-INV-03",
      "text": "A dual-track ladder is one scheme with multiple tracks, not multiple schemes.",
      "fixturable": true
    },
    {
      "id": "GS-INV-04",
      "text": "A levelRef must resolve inside the cited scheme version and its trackOrAxisKey must agree with that level.",
      "fixturable": true
    },
    {
      "id": "GS-INV-05",
      "text": "Labels and ordinals never prove cross-scheme equivalence.",
      "fixturable": true
    },
    {
      "id": "GS-INV-06",
      "text": "Frozen or effective scheme versions are immutable.",
      "fixturable": true
    },
    {
      "id": "GS-INV-07",
      "text": "Only frozen or effective scheme versions are assignment and RoleProfile expectation targets.",
      "fixturable": true
    },
    {
      "id": "GS-INV-08",
      "text": "Relabeling, reordering or adding levels creates a successor version.",
      "fixturable": true
    },
    {
      "id": "GS-INV-09",
      "text": "Historical assignments and profiles retain their cited version unless an explicit successor decision is recorded.",
      "fixturable": true
    },
    {
      "id": "GS-INV-10",
      "text": "Crosswalk identity includes an authorized owner that may differ from either scheme.",
      "fixturable": true
    },
    {
      "id": "GS-INV-11",
      "text": "Crosswalks are directed, source-and-target-version-pinned, purpose-pinned and semantic-loss declaring.",
      "fixturable": true
    },
    {
      "id": "GS-INV-12",
      "text": "Crosswalk purpose is one allowedCrosswalkPurposes value; pay, access and pay-eligibility-hint are forbidden.",
      "fixturable": true
    },
    {
      "id": "GS-INV-13",
      "text": "Each mapped row pins target levels, strength and row-level semantic loss.",
      "fixturable": true
    },
    {
      "id": "GS-INV-14",
      "text": "Unmappable is explicit with a reason; neighbor ordinals are never coerced.",
      "fixturable": true
    },
    {
      "id": "GS-INV-15",
      "text": "Many-to-one and one-to-many mappings declare loss.",
      "fixturable": true
    },
    {
      "id": "GS-INV-16",
      "text": "Crosswalk approval creates no GradeAssignment and changes no pay or access.",
      "fixturable": true
    },
    {
      "id": "GS-INV-17",
      "text": "Crosswalk effectiveFrom cannot precede its approval and crosswalks never alter prior as-of results.",
      "fixturable": true
    },
    {
      "id": "GS-INV-18",
      "text": "Retirement preserves historical resolution.",
      "fixturable": true
    },
    {
      "id": "GS-INV-19",
      "text": "Scheme changes mutate no person, employment, position, GradeAssignment, compensation or access master.",
      "fixturable": true
    },
    {
      "id": "GS-INV-20",
      "text": "No identifier is allocated without registry reservation.",
      "fixturable": false
    }
  ]
}
