{
  "schemaVersion": "ga-separation-of-duties-matrix-v1.0",
  "sourceSchemas": {
    "decisionPacket": "ga-decision-packet-v1.0",
    "humanReviewAgenda": "ga-human-review-agenda-v1.0",
    "launchAuthorizationSeparation": "ga-launch-authorization-separation-envelope-v1.0",
    "authorityBoundaryLedger": "ga-authority-boundary-ledger-v1.0"
  },
  "mode": "deterministic_separation_of_duties_matrix_only",
  "generatedAt": "2026-08-02T22:41:00-06:00",
  "status": "blocked_no_assignments_or_independence_verification",
  "targetRing": "controlled_ga",
  "prerequisiteSnapshot": {
    "requiredApprovalRoles": 6,
    "assignedParticipants": 0,
    "recordedAuthorizationSignoffs": 0,
    "authorizedAuthorityDomains": 0,
    "authorityHolders": 0,
    "executionEvents": 0
  },
  "requiredRoleTypes": [
    "product_owner",
    "independent_security_reviewer",
    "operations_lead",
    "commercial_owner",
    "legal_reviewer",
    "customer_success_lead"
  ],
  "duties": [
    {
      "id": "evidence_submitter",
      "order": 1,
      "label": "Evidence submitter",
      "holderId": null,
      "role": null,
      "assigned": false,
      "assignmentRef": null,
      "verifiedBy": null,
      "verifiedAt": null,
      "independenceVerified": false
    },
    {
      "id": "evidence_acceptor",
      "order": 2,
      "label": "Evidence acceptor",
      "holderId": null,
      "role": null,
      "assigned": false,
      "assignmentRef": null,
      "verifiedBy": null,
      "verifiedAt": null,
      "independenceVerified": false
    },
    {
      "id": "gate_owner",
      "order": 3,
      "label": "Gate owner",
      "holderId": null,
      "role": null,
      "assigned": false,
      "assignmentRef": null,
      "verifiedBy": null,
      "verifiedAt": null,
      "independenceVerified": false
    },
    {
      "id": "independent_gate_reviewer",
      "order": 4,
      "label": "Independent gate reviewer",
      "holderId": null,
      "role": null,
      "assigned": false,
      "assignmentRef": null,
      "verifiedBy": null,
      "verifiedAt": null,
      "independenceVerified": false
    },
    {
      "id": "human_review_chair",
      "order": 5,
      "label": "Human review chair",
      "holderId": null,
      "role": null,
      "assigned": false,
      "assignmentRef": null,
      "verifiedBy": null,
      "verifiedAt": null,
      "independenceVerified": false
    },
    {
      "id": "final_decision_signer",
      "order": 6,
      "label": "Final decision signer",
      "holderId": null,
      "role": null,
      "assigned": false,
      "assignmentRef": null,
      "verifiedBy": null,
      "verifiedAt": null,
      "independenceVerified": false
    },
    {
      "id": "launch_authorizer",
      "order": 7,
      "label": "Launch authorizer",
      "holderId": null,
      "role": null,
      "assigned": false,
      "assignmentRef": null,
      "verifiedBy": null,
      "verifiedAt": null,
      "independenceVerified": false
    },
    {
      "id": "executor",
      "order": 8,
      "label": "Execution actor",
      "holderId": null,
      "role": null,
      "assigned": false,
      "assignmentRef": null,
      "verifiedBy": null,
      "verifiedAt": null,
      "independenceVerified": false
    },
    {
      "id": "rollback_authorizer",
      "order": 9,
      "label": "Rollback authorizer",
      "holderId": null,
      "role": null,
      "assigned": false,
      "assignmentRef": null,
      "verifiedBy": null,
      "verifiedAt": null,
      "independenceVerified": false
    }
  ],
  "constraints": [
    {
      "id": "sod-evidence-submit-accept",
      "order": 1,
      "leftDuty": "evidence_submitter",
      "rightDuty": "evidence_acceptor",
      "rationale": "Evidence submission and acceptance require separate accountable identities.",
      "status": "not_evaluated",
      "leftHolderId": null,
      "rightHolderId": null,
      "evidenceRef": null,
      "evaluatedBy": null,
      "evaluatedAt": null,
      "satisfied": false
    },
    {
      "id": "sod-gate-owner-reviewer",
      "order": 2,
      "leftDuty": "gate_owner",
      "rightDuty": "independent_gate_reviewer",
      "rationale": "A gate owner cannot provide the independent gate review.",
      "status": "not_evaluated",
      "leftHolderId": null,
      "rightHolderId": null,
      "evidenceRef": null,
      "evaluatedBy": null,
      "evaluatedAt": null,
      "satisfied": false
    },
    {
      "id": "sod-reviewer-decision",
      "order": 3,
      "leftDuty": "independent_gate_reviewer",
      "rightDuty": "final_decision_signer",
      "rationale": "Independent review must remain separate from the final decision signature.",
      "status": "not_evaluated",
      "leftHolderId": null,
      "rightHolderId": null,
      "evidenceRef": null,
      "evaluatedBy": null,
      "evaluatedAt": null,
      "satisfied": false
    },
    {
      "id": "sod-decision-authorization",
      "order": 4,
      "leftDuty": "final_decision_signer",
      "rightDuty": "launch_authorizer",
      "rationale": "A final decision is distinct from the separate launch authorization.",
      "status": "not_evaluated",
      "leftHolderId": null,
      "rightHolderId": null,
      "evidenceRef": null,
      "evaluatedBy": null,
      "evaluatedAt": null,
      "satisfied": false
    },
    {
      "id": "sod-authorization-execution",
      "order": 5,
      "leftDuty": "launch_authorizer",
      "rightDuty": "executor",
      "rationale": "The launch authorizer cannot be the execution actor.",
      "status": "not_evaluated",
      "leftHolderId": null,
      "rightHolderId": null,
      "evidenceRef": null,
      "evaluatedBy": null,
      "evaluatedAt": null,
      "satisfied": false
    },
    {
      "id": "sod-rollback-execution",
      "order": 6,
      "leftDuty": "rollback_authorizer",
      "rightDuty": "executor",
      "rationale": "Rollback authorization must remain separate from rollback execution.",
      "status": "not_evaluated",
      "leftHolderId": null,
      "rightHolderId": null,
      "evidenceRef": null,
      "evaluatedBy": null,
      "evaluatedAt": null,
      "satisfied": false
    }
  ],
  "prohibitedClaims": [
    "blank_assignments_as_verified_separation",
    "different_role_labels_as_different_people",
    "ci_success_as_independence_verification",
    "draft_pr_as_authority_assignment"
  ],
  "summary": {
    "requiredRoles": 6,
    "duties": 9,
    "assignedDuties": 0,
    "constraints": 6,
    "evaluatedConstraints": 0,
    "satisfiedConstraints": 0,
    "detectedConflicts": 0,
    "identityRefs": 0,
    "evidenceRefs": 0
  },
  "nextHumanAction": {
    "action": "Assign real accountable humans only after separate authorization, then verify every prohibited duty pair against stable identities before any decision, authorization or execution.",
    "executed": false
  },
  "recommendation": {
    "value": "do_not_assign_or_authorize",
    "reasonCodes": [
      "duty_holders_absent",
      "identity_refs_absent",
      "constraints_not_evaluated",
      "independence_not_verified",
      "authority_grants_absent"
    ],
    "canOverrideHumanDecision": false
  },
  "authority": {
    "dutyAssignmentAllowed": false,
    "roleBindingAllowed": false,
    "identityReferenceRecordingAllowed": false,
    "assignmentReferenceRecordingAllowed": false,
    "constraintEvaluationAllowed": false,
    "evidenceLinkingAllowed": false,
    "independenceVerificationAllowed": false,
    "participantAssignmentAllowed": false,
    "signoffRecordingAllowed": false,
    "decisionRecordingAllowed": false,
    "launchAuthorizationAllowed": false,
    "executorAssignmentAllowed": false,
    "rollbackAuthorizationAllowed": false,
    "transitionExecutionAllowed": false,
    "rollbackExecutionAllowed": false,
    "audienceOrCustomerActivationAllowed": false,
    "communicationDispatchAllowed": false,
    "billingConnectorOrCustomerDataMutationAllowed": false,
    "productionMutationAllowed": false,
    "readyForReviewAllowed": false,
    "mergeAllowed": false,
    "deploymentAllowed": false,
    "productionReleaseAllowed": false,
    "externalEffect": false,
    "separateHumanIdentitiesRequired": true,
    "independentVerificationRequired": true
  }
}
