{
  "format": "vercy-model-allocation-candidate/v1",
  "contourId": "EM-TEC-09",
  "proposedName": "Technology Adoption",
  "modelId": null,
  "registryId": null,
  "allocationState": "unassigned",
  "decision": "NEW MODEL",
  "canonicalPublishable": false,
  "identityTest": {
    "stableIdentity": "An organization-scoped standing adoption state remains identifiable independently of the technology, products and authorizing decisions.",
    "versionIdentity": "Stage, scope, effective interval or authority changes append successor adoption episodes.",
    "independentLifecycle": [
      "draft",
      "effective",
      "superseded",
      "retired"
    ],
    "mastership": "enterprise technology governance authority",
    "recordLifecycle": [
      "draft",
      "effective",
      "superseded",
      "retired"
    ]
  },
  "boundary": {
    "owns": [
      "technology-adoption identity",
      "organization and scope binding",
      "stage scheme and version binding",
      "effective intervals",
      "decision and authority binding",
      "successor history"
    ],
    "references": [
      {
        "target": null,
        "targetName": "Organization",
        "allocationState": "unassigned",
        "purpose": "Organization scope"
      },
      {
        "target": "WM-KNW-010 / WM-ACT-024 / WM-REC-010",
        "purpose": "Authorizing decision triad"
      },
      {
        "target": "WM-KNW-012",
        "purpose": "Architecture standard"
      },
      {
        "target": "WM-ACT-034",
        "purpose": "Conformance assessment"
      }
    ],
    "excludes": [
      "technology definition",
      "vendor support status",
      "product or release",
      "deployment instance",
      "conformance result",
      "standard definition"
    ]
  },
  "objects": {
    "TechnologyAdoption": {
      "identity": [
        "technologyAdoptionId"
      ],
      "required": [
        "organizationRef",
        "technologyRef",
        "stageSchemeVersionRef",
        "stage",
        "scope",
        "validFrom",
        "decisionRef"
      ],
      "optional": [
        "validTo",
        "supersedesRef"
      ]
    }
  },
  "invariants": [
    "Every adoption pins one organization and technology.",
    "Stage pins a named scheme and version.",
    "Scope and effective interval are explicit.",
    "Each transition requires authority and decision.",
    "Upstream lifecycle and local stage remain separate.",
    "Vendor support and local stage remain separate.",
    "Adoption never implies conformance.",
    "Conformance never implies adoption.",
    "Product use does not silently create adoption.",
    "Transitions append successor episodes.",
    "Historical stages remain resolvable.",
    "Missing stage evidence remains unknown.",
    "No stage value is enumerated in this candidate; stage values resolve only from the pinned stage scheme version, and the record lifecycle and the stage vocabulary are disjoint.",
    "For one organization, technology and scope, at most one episode is effective at any instant, and a successor episode's validFrom equals the predecessor's validTo.",
    "An episode's validFrom is not earlier than the time of its authorizing decision.",
    "A decision reference resolves the rationale, the authorized occurrence and the issued record; a reference that resolves only the issued record is incomplete."
  ],
  "holds": [
    "Registry allocation is pending and no identifier may be guessed.",
    "Independent Grok review and one frozen semantic audit are pending.",
    "Base specifications and approved relations remain incomplete.",
    "Package conversion and live verification are pending."
  ]
}
