{
  "name": "Human Control Plane",
  "canonical_url": "https://kevinastuhuaman.github.io/human-in-the-loop-patterns/",
  "repository": "https://github.com/kevinastuhuaman/human-in-the-loop-patterns",
  "author": {
    "name": "Kevin Astuhuaman",
    "role": "AI Product Manager",
    "education": "Berkeley Haas MBA '26"
  },
  "summary": "Interactive control-policy lab for designing human oversight into consequential AI actions.",
  "capabilities": [
    "policy simulation",
    "human-in-the-loop UX",
    "approval invalidation",
    "recovery design",
    "audit records",
    "responsive product design"
  ],
  "inputs": [
    "consequence",
    "reversibility",
    "model uncertainty",
    "intent freshness"
  ],
  "policies": {
    "undo": {
      "label": "Auto-execute with Undo",
      "shortLabel": "Execute + Undo",
      "description": "Proceed immediately because harm is bounded and the action can be cleanly reversed.",
      "owner": "Operator can reverse"
    },
    "confirm": {
      "label": "Preview and confirm",
      "shortLabel": "Preview + Confirm",
      "description": "Expose the proposed change and uncertainty before a lightweight confirmation.",
      "owner": "Requesting user"
    },
    "fresh-approval": {
      "label": "Preview + fresh approval",
      "shortLabel": "Fresh approval",
      "description": "Pause before the consequential action and bind approval to the exact committed state.",
      "owner": "Accountable user"
    },
    "accountable-approval": {
      "label": "Accountable approval",
      "shortLabel": "Escalate",
      "description": "The agent may recommend, but a named owner must approve and the system records the decision.",
      "owner": "Policy owner"
    }
  },
  "policy_thresholds": {
    "accountable": {
      "consequence": 90,
      "reversibility": 20
    },
    "freshApproval": {
      "consequence": 65,
      "reversibility": 30,
      "intentFreshness": 50
    },
    "undo": {
      "consequence": 35,
      "reversibility": 65,
      "uncertainty": 30
    }
  },
  "scenarios": [
    {
      "id": "application",
      "label": "Job application",
      "eyebrow": "Browser agent",
      "action": "Submit application",
      "context": "A browser agent prepared a selected role using profile context and ATS-specific form rules.",
      "consequence": 78,
      "reversibility": 12,
      "uncertainty": 46,
      "intentFreshness": 38,
      "autonomous": [
        "Fill reusable profile facts",
        "Draft role-specific answers",
        "Validate required fields"
      ],
      "human": [
        "Review subjective answers",
        "Resolve salary and sponsorship",
        "Issue a fresh submit instruction"
      ]
    },
    {
      "id": "refund",
      "label": "Customer refund",
      "eyebrow": "Support operations",
      "action": "Issue a $28 refund",
      "context": "The order is eligible under policy and the agent has complete transaction evidence.",
      "consequence": 28,
      "reversibility": 84,
      "uncertainty": 14,
      "intentFreshness": 92,
      "autonomous": [
        "Verify eligibility",
        "Issue the bounded refund",
        "Notify the customer"
      ],
      "human": [
        "Undo within the review window",
        "Handle policy exceptions",
        "Review repeat-abuse signals"
      ]
    },
    {
      "id": "crm",
      "label": "CRM enrichment",
      "eyebrow": "Revenue operations",
      "action": "Update account ownership",
      "context": "The agent inferred a territory change from two public sources and an internal routing rule.",
      "consequence": 48,
      "reversibility": 72,
      "uncertainty": 42,
      "intentFreshness": 78,
      "autonomous": [
        "Gather public evidence",
        "Draft the field changes",
        "Show the affected workflows"
      ],
      "human": [
        "Confirm the proposed owner",
        "Resolve conflicting evidence",
        "Approve downstream notifications"
      ]
    },
    {
      "id": "access",
      "label": "Access change",
      "eyebrow": "Security operations",
      "action": "Grant production access",
      "context": "A role change created a request for privileged access to a sensitive environment.",
      "consequence": 97,
      "reversibility": 8,
      "uncertainty": 18,
      "intentFreshness": 66,
      "autonomous": [
        "Verify prerequisites",
        "Assemble the audit packet",
        "Recommend the narrowest scope"
      ],
      "human": [
        "Confirm business need",
        "Approve as named owner",
        "Set expiry and review date"
      ]
    }
  ],
  "principles": [
    {
      "id": "authority",
      "title": "Match authority to consequence",
      "body": "A model's capability does not grant it permission. The product assigns authority based on potential harm."
    },
    {
      "id": "state",
      "title": "Bind approval to state",
      "body": "Approval expires when inputs, evidence, navigation, or the proposed action changes."
    },
    {
      "id": "recovery",
      "title": "Design recovery with execution",
      "body": "Undo, reject, escalate, and fail-closed states belong in the primary workflow."
    }
  ],
  "public_safe": true,
  "synthetic_data": true,
  "updated": "2026-07-12"
}