{
  "repo": "core",
  "version": "7.34.0",
  "from": "92063bf2bf1abbb0630ef206c6cd2f2ab23de0d0",
  "to": "v7.34.0",
  "added": [
    {
      "name": "ACCEPT_EDITS_FILE_COMMANDS",
      "kind": "variable",
      "tier": "advanced",
      "at": [
        "src/core/mode-policy.ts:50",
        "src/index.ts:1449"
      ],
      "criteriaCovered": false,
      "breaking": false
    },
    {
      "name": "ASK_CLASSES",
      "kind": "variable",
      "tier": "advanced",
      "at": [
        "src/core/ask-origin.ts:569",
        "src/index.ts:1447"
      ],
      "criteriaCovered": false,
      "breaking": false
    },
    {
      "name": "ASK_UNRESOLVABLE_CAUSES",
      "kind": "variable",
      "tier": "advanced",
      "at": [
        "src/core/ask-unresolvable-notice.ts:32",
        "src/index.ts:359"
      ],
      "criteriaCovered": false,
      "breaking": false
    },
    {
      "name": "Arbitration",
      "kind": "type",
      "tier": "advanced",
      "at": [
        "src/core/ask-origin.ts:806",
        "src/index.ts:1447"
      ],
      "criteriaCovered": false,
      "breaking": false
    },
    {
      "name": "AskClass",
      "kind": "type",
      "tier": "advanced",
      "at": [
        "src/core/ask-class.ts:27",
        "src/core/ask-origin.ts:591",
        "src/index.ts:1447"
      ],
      "criteriaCovered": false,
      "breaking": false
    },
    {
      "name": "AskClassFacts",
      "kind": "interface",
      "tier": "advanced",
      "at": [
        "src/core/ask-origin.ts:659",
        "src/index.ts:1447"
      ],
      "criteriaCovered": false,
      "breaking": false
    },
    {
      "name": "AskClassification",
      "kind": "interface",
      "tier": "advanced",
      "at": [
        "src/core/ask-origin.ts:667",
        "src/index.ts:1447"
      ],
      "criteriaCovered": false,
      "breaking": false
    },
    {
      "name": "ClassifierUnavailableDisposition",
      "kind": "type",
      "tier": "advanced",
      "at": [
        "src/core/classifier-unavailable-arm.ts:23",
        "src/index.ts:1518"
      ],
      "criteriaCovered": false,
      "breaking": false
    },
    {
      "name": "ClassifierUnavailableInfo",
      "kind": "interface",
      "tier": "advanced",
      "at": [
        "src/core/classifier-unavailable-arm.ts:26",
        "src/index.ts:1518"
      ],
      "criteriaCovered": false,
      "breaking": false
    },
    {
      "name": "ClassifierUnavailableObserver",
      "kind": "type",
      "tier": "advanced",
      "at": [
        "src/core/classifier-unavailable-arm.ts:33",
        "src/index.ts:1518"
      ],
      "criteriaCovered": false,
      "breaking": false
    },
    {
      "name": "ClassifierUnavailableSeat",
      "kind": "interface",
      "tier": "advanced",
      "at": [
        "src/core/classifier-unavailable-arm.ts:37",
        "src/index.ts:1518"
      ],
      "criteriaCovered": false,
      "breaking": false
    },
    {
      "name": "DENY_FACES",
      "kind": "variable",
      "tier": "advanced",
      "at": [
        "src/index.ts:633",
        "src/tools/fs/read-deny.ts:93"
      ],
      "criteriaCovered": false,
      "breaking": false
    },
    {
      "name": "DURABLE_MANDATE_SOURCES",
      "kind": "variable",
      "tier": "advanced",
      "at": [
        "src/core/tool-policy.ts:3275",
        "src/index.ts:360"
      ],
      "criteriaCovered": false,
      "breaking": false
    },
    {
      "name": "DenyFace",
      "kind": "type",
      "tier": "advanced",
      "at": [
        "src/index.ts:634",
        "src/tools/fs/read-deny.ts:94"
      ],
      "criteriaCovered": false,
      "breaking": false
    },
    {
      "name": "DerivedDenyRule",
      "kind": "interface",
      "tier": "advanced",
      "at": [
        "src/core/auto-mode-prompt.ts:103",
        "src/index.ts:1451"
      ],
      "criteriaCovered": false,
      "breaking": false
    },
    {
      "name": "ENGINE_AUTHORITY_ENVELOPE_TAGS",
      "kind": "variable",
      "tier": "advanced",
      "at": [
        "src/core/untrusted-text.ts:545",
        "src/index.ts:364"
      ],
      "criteriaCovered": false,
      "breaking": false
    },
    {
      "name": "MODE_ARBITRATION",
      "kind": "variable",
      "tier": "advanced",
      "at": [
        "src/core/ask-origin.ts:619",
        "src/index.ts:1447"
      ],
      "criteriaCovered": false,
      "breaking": false
    },
    {
      "name": "ModeArbitrationRow",
      "kind": "interface",
      "tier": "advanced",
      "at": [
        "src/core/ask-origin.ts:599",
        "src/index.ts:1447"
      ],
      "criteriaCovered": false,
      "breaking": false
    },
    {
      "name": "ModePolicy",
      "kind": "interface",
      "tier": "advanced",
      "at": [
        "src/core/mode-policy.ts:42",
        "src/index.ts:1449"
      ],
      "criteriaCovered": true,
      "breaking": false
    },
    {
      "name": "ModeRefusal",
      "kind": "interface",
      "tier": "advanced",
      "at": [
        "src/core/gate-outcome.ts:324",
        "src/index.ts:1458"
      ],
      "criteriaCovered": true,
      "breaking": false
    },
    {
      "name": "ModeRelease",
      "kind": "interface",
      "tier": "advanced",
      "at": [
        "src/core/gate-outcome.ts:314",
        "src/index.ts:1458"
      ],
      "criteriaCovered": true,
      "breaking": false
    },
    {
      "name": "PERMISSION_MODES",
      "kind": "variable",
      "tier": "advanced",
      "at": [
        "src/core/ask-origin.ts:525",
        "src/index.ts:1447"
      ],
      "criteriaCovered": false,
      "breaking": false
    },
    {
      "name": "PERMISSION_MODE_FOLD_REASONS",
      "kind": "variable",
      "tier": "advanced",
      "at": [
        "src/core/mode-policy.ts:31",
        "src/index.ts:1449"
      ],
      "criteriaCovered": false,
      "breaking": false
    },
    {
      "name": "PERMISSION_MODE_RANK",
      "kind": "variable",
      "tier": "advanced",
      "at": [
        "src/core/ask-origin.ts:539",
        "src/index.ts:1447"
      ],
      "criteriaCovered": false,
      "breaking": false
    },
    {
      "name": "PathRuleDenyRow",
      "kind": "interface",
      "tier": "advanced",
      "at": [
        "src/index.ts:635",
        "src/tools/fs/read-deny.ts:107"
      ],
      "criteriaCovered": false,
      "breaking": false
    },
    {
      "name": "PermissionMode",
      "kind": "type",
      "tier": "advanced",
      "at": [
        "src/core/ask-origin.ts:526",
        "src/core/types.ts:24",
        "src/index.ts:1447"
      ],
      "criteriaCovered": false,
      "breaking": false
    },
    {
      "name": "PermissionModeFoldReason",
      "kind": "type",
      "tier": "advanced",
      "at": [
        "src/core/mode-policy.ts:32",
        "src/index.ts:1449"
      ],
      "criteriaCovered": false,
      "breaking": false
    },
    {
      "name": "PermissionModeReceipt",
      "kind": "interface",
      "tier": "advanced",
      "at": [
        "src/core/mode-policy.ts:183",
        "src/index.ts:1449"
      ],
      "criteriaCovered": true,
      "breaking": false
    },
    {
      "name": "READ_DENY_HOME_WORD",
      "kind": "variable",
      "tier": "advanced",
      "at": [
        "src/index.ts:628",
        "src/tools/fs/read-deny.ts:57"
      ],
      "criteriaCovered": false,
      "breaking": false
    },
    {
      "name": "RELEASABLE_ASK_CLASSES",
      "kind": "variable",
      "tier": "advanced",
      "at": [
        "src/core/ask-origin.ts:651",
        "src/index.ts:1447"
      ],
      "criteriaCovered": false,
      "breaking": false
    },
    {
      "name": "RESERVED_AGENT_NAMES",
      "kind": "variable",
      "tier": "advanced",
      "at": [
        "src/agents/subagent.ts:937",
        "src/index.ts:362"
      ],
      "criteriaCovered": false,
      "breaking": false
    },
    {
      "name": "RRA_EXPLAINERS",
      "kind": "variable",
      "tier": "advanced",
      "at": [
        "src/core/ask-origin.ts:647",
        "src/index.ts:1447"
      ],
      "criteriaCovered": false,
      "breaking": false
    },
    {
      "name": "TERMINAL_CAUSE_IS_REPLAYABLE",
      "kind": "variable",
      "tier": "advanced",
      "at": [
        "src/core/terminal-cause.ts:133",
        "src/index.ts:361"
      ],
      "criteriaCovered": false,
      "breaking": false
    },
    {
      "name": "ToolMarkSource",
      "kind": "type",
      "tier": "advanced",
      "at": [
        "src/core/ask-origin.ts:559",
        "src/index.ts:1447"
      ],
      "criteriaCovered": false,
      "breaking": false
    },
    {
      "name": "WORKFLOW_SIZE_GUIDELINE_AGENT_CAPS",
      "kind": "variable",
      "tier": "advanced",
      "at": [
        "src/index.ts:363",
        "src/orchestration/workflow-size-guideline.ts:57"
      ],
      "criteriaCovered": false,
      "breaking": false
    },
    {
      "name": "WriteDenyMatcher",
      "kind": "interface",
      "tier": "advanced",
      "at": [
        "src/index.ts:636",
        "src/tools/fs/read-deny.ts:211"
      ],
      "criteriaCovered": false,
      "breaking": false
    },
    {
      "name": "arbitrateByMode",
      "kind": "function",
      "tier": "advanced",
      "at": [
        "src/core/ask-origin.ts:822",
        "src/index.ts:1447"
      ],
      "criteriaCovered": false,
      "breaking": false
    },
    {
      "name": "clampPermissionMode",
      "kind": "function",
      "tier": "advanced",
      "at": [
        "src/core/ask-origin.ts:549",
        "src/index.ts:1447"
      ],
      "criteriaCovered": false,
      "breaking": false
    },
    {
      "name": "classifyAsk",
      "kind": "function",
      "tier": "advanced",
      "at": [
        "src/core/ask-origin.ts:724",
        "src/index.ts:1447"
      ],
      "criteriaCovered": false,
      "breaking": false
    },
    {
      "name": "compileWriteDeny",
      "kind": "function",
      "tier": "advanced",
      "at": [
        "src/index.ts:632",
        "src/tools/fs/read-deny.ts:221"
      ],
      "criteriaCovered": false,
      "breaking": false
    },
    {
      "name": "fileCommandOptionsSentence",
      "kind": "function",
      "tier": "advanced",
      "at": [
        "src/core/ask-origin.ts:797",
        "src/index.ts:1447"
      ],
      "criteriaCovered": false,
      "breaking": false
    },
    {
      "name": "foldArbitrationRow",
      "kind": "function",
      "tier": "advanced",
      "at": [
        "src/core/ask-origin.ts:704",
        "src/index.ts:1447"
      ],
      "criteriaCovered": false,
      "breaking": false
    },
    {
      "name": "isAskClass",
      "kind": "function",
      "tier": "advanced",
      "at": [
        "src/core/ask-origin.ts:594",
        "src/index.ts:1447"
      ],
      "criteriaCovered": false,
      "breaking": false
    },
    {
      "name": "isPermissionMode",
      "kind": "function",
      "tier": "advanced",
      "at": [
        "src/core/ask-origin.ts:529",
        "src/index.ts:1447"
      ],
      "criteriaCovered": false,
      "breaking": false
    },
    {
      "name": "modeAcceptsFileCommand",
      "kind": "function",
      "tier": "advanced",
      "at": [
        "src/core/mode-policy.ts:76",
        "src/index.ts:1449"
      ],
      "criteriaCovered": false,
      "breaking": false
    },
    {
      "name": "modePolicyOf",
      "kind": "function",
      "tier": "advanced",
      "at": [
        "src/core/mode-policy.ts:62",
        "src/index.ts:1449"
      ],
      "criteriaCovered": false,
      "breaking": false
    },
    {
      "name": "readDenyClassifierRules",
      "kind": "function",
      "tier": "advanced",
      "at": [
        "src/core/auto-mode-prompt.ts:138",
        "src/index.ts:1451"
      ],
      "criteriaCovered": false,
      "breaking": false
    },
    {
      "name": "readDenyHomesOf",
      "kind": "function",
      "tier": "advanced",
      "at": [
        "src/index.ts:630",
        "src/tools/fs/index.ts:18",
        "src/tools/fs/read-deny-home.ts:27"
      ],
      "criteriaCovered": false,
      "breaking": false
    },
    {
      "name": "readDenyPatternRun",
      "kind": "function",
      "tier": "advanced",
      "at": [
        "src/index.ts:629",
        "src/tools/fs/read-deny.ts:62"
      ],
      "criteriaCovered": false,
      "breaking": false
    },
    {
      "name": "renderClassifierDenyRules",
      "kind": "function",
      "tier": "advanced",
      "at": [
        "src/core/auto-mode-prompt.ts:183",
        "src/index.ts:1451"
      ],
      "criteriaCovered": false,
      "breaking": false
    },
    {
      "name": "toolPolicyPathDenyRules",
      "kind": "function",
      "tier": "advanced",
      "at": [
        "src/core/tool-policy.ts:711",
        "src/index.ts:1397"
      ],
      "criteriaCovered": false,
      "breaking": false
    }
  ],
  "removed": [
    {
      "name": "ApproverPosture",
      "kind": "type",
      "tier": "advanced",
      "at": [
        "src/core/task-spec.ts:53",
        "src/core/types.ts:23",
        "src/index.ts:3403"
      ],
      "breaking": true
    },
    {
      "name": "RULE_STORE_UNREADABLE_KINDS",
      "kind": "variable",
      "tier": "advanced",
      "at": [
        "src/core/ask-origin.ts:107",
        "src/index.ts:1426"
      ],
      "breaking": true
    },
    {
      "name": "RuleStoreUnreadable",
      "kind": "type",
      "tier": "advanced",
      "at": [
        "src/core/ask-origin.ts:108",
        "src/index.ts:1426"
      ],
      "breaking": true
    },
    {
      "name": "classifierMayAnswer",
      "kind": "function",
      "tier": "advanced",
      "at": [
        "src/core/ask-origin.ts:413",
        "src/index.ts:1426"
      ],
      "breaking": true
    },
    {
      "name": "isRuleStoreUnreadable",
      "kind": "function",
      "tier": "advanced",
      "at": [
        "src/core/ask-origin.ts:111",
        "src/index.ts:1426"
      ],
      "breaking": true
    }
  ],
  "changed": [],
  "narrowed": [],
  "closedSetMembers": [
    {
      "set": "ACCEPT_EDITS_FILE_COMMANDS",
      "at": [
        "src/core/mode-policy.ts:50"
      ],
      "newSet": true,
      "added": [
        "cp",
        "mkdir",
        "mv",
        "rm",
        "rmdir",
        "sed",
        "touch"
      ],
      "removed": [],
      "breaking": false,
      "criteriaCovered": false
    },
    {
      "set": "APPROVER_POSTURES",
      "at": [
        "src/core/auto-mode-directive.ts:50"
      ],
      "newSet": false,
      "added": [],
      "removed": [
        "bypass"
      ],
      "persistedBy": "none",
      "breaking": true,
      "criteriaCovered": false
    },
    {
      "set": "ASK_CLASSES",
      "at": [
        "src/core/ask-origin.ts:569"
      ],
      "newSet": true,
      "added": [
        "ancestor",
        "artifact_shared_read",
        "ask_rule",
        "content_question",
        "denial_limit_fallback",
        "governance_unavailable",
        "hook",
        "mode",
        "operator_forced",
        "ordinary",
        "org_rule",
        "policy_rra",
        "probe",
        "rule_unreadable",
        "tool_marks_a2a",
        "tool_marks_mcp",
        "transcript_write",
        "unverifiable_delete",
        "write_protection",
        "write_protection_unresolved"
      ],
      "removed": [],
      "breaking": false,
      "criteriaCovered": false
    },
    {
      "set": "ClassifierUnavailableDisposition",
      "at": [
        "src/core/classifier-unavailable-arm.ts:23"
      ],
      "newSet": true,
      "added": [
        "asked",
        "denied"
      ],
      "removed": [],
      "breaking": false,
      "criteriaCovered": false
    },
    {
      "set": "DENIED_BY_VALUES",
      "at": [
        "src/core/gate-outcome.ts:220"
      ],
      "newSet": false,
      "added": [
        "mode"
      ],
      "removed": [
        "plan_mode"
      ],
      "persistedBy": "none",
      "breaking": true,
      "criteriaCovered": false
    },
    {
      "set": "DENY_FACES",
      "at": [
        "src/tools/fs/read-deny.ts:93"
      ],
      "newSet": true,
      "added": [
        "read",
        "write"
      ],
      "removed": [],
      "breaking": false,
      "criteriaCovered": false
    },
    {
      "set": "DenyFace",
      "at": [
        "src/index.ts:634",
        "src/tools/fs/read-deny.ts:94"
      ],
      "newSet": true,
      "added": [
        "read",
        "write"
      ],
      "removed": [],
      "breaking": false,
      "criteriaCovered": false
    },
    {
      "set": "ENGINE_NOTICE_CODES",
      "at": [
        "src/core/governance-codes.ts:319"
      ],
      "newSet": false,
      "added": [
        "classifier.unavailable",
        "config.permission_mode_unavailable",
        "permission.ask_released_by_mode",
        "permission.read_deny_unapplied",
        "permission.rule_store_unavailable",
        "resume.legacy_mode_seed_migrated"
      ],
      "removed": [],
      "breaking": false,
      "criteriaCovered": true
    },
    {
      "set": "PERMISSION_MODES",
      "at": [
        "src/core/ask-origin.ts:525"
      ],
      "newSet": true,
      "added": [
        "acceptEdits",
        "auto",
        "bypassPermissions",
        "default",
        "dontAsk",
        "plan"
      ],
      "removed": [],
      "breaking": false,
      "criteriaCovered": false
    },
    {
      "set": "PERMISSION_MODE_FOLD_REASONS",
      "at": [
        "src/core/mode-policy.ts:31"
      ],
      "newSet": true,
      "added": [
        "face_absent",
        "inherited_ceiling",
        "operator_deny"
      ],
      "removed": [],
      "breaking": false,
      "criteriaCovered": false
    },
    {
      "set": "PermissionMode",
      "at": [
        "src/core/ask-origin.ts:526",
        "src/core/types.ts:24",
        "src/index.ts:1447"
      ],
      "newSet": true,
      "added": [
        "acceptEdits",
        "auto",
        "bypassPermissions",
        "default",
        "dontAsk",
        "plan"
      ],
      "removed": [],
      "breaking": false,
      "criteriaCovered": false
    },
    {
      "set": "PermissionModeFoldReason",
      "at": [
        "src/core/mode-policy.ts:32",
        "src/index.ts:1449"
      ],
      "newSet": true,
      "added": [
        "face_absent",
        "inherited_ceiling",
        "operator_deny"
      ],
      "removed": [],
      "breaking": false,
      "criteriaCovered": false
    },
    {
      "set": "READ_DENY_DEFAULT_TIERS",
      "at": [
        "src/tools/fs/read-deny.ts:537"
      ],
      "newSet": false,
      "added": [
        "agent-config",
        "credentials"
      ],
      "removed": [],
      "breaking": false,
      "criteriaCovered": false
    },
    {
      "set": "SHELL_READ_SEATS",
      "at": [
        "src/tools/fs/shell-read-judge.ts:38"
      ],
      "newSet": false,
      "added": [
        "full_shell"
      ],
      "removed": [
        "bash_classify",
        "bash_off"
      ],
      "persistedBy": "none",
      "breaking": true,
      "criteriaCovered": false
    },
    {
      "set": "SHELL_WRITE_COMMANDS",
      "at": [
        "src/tools/fs/shell-read-write-targets.ts:18"
      ],
      "newSet": true,
      "added": [
        "cp",
        "mkdir",
        "mv",
        "rm",
        "rmdir",
        "sed",
        "tee",
        "touch"
      ],
      "removed": [],
      "breaking": false,
      "criteriaCovered": false
    },
    {
      "set": "ShellGateDoctrine",
      "at": [
        "src/core/task-spec.ts:50"
      ],
      "newSet": false,
      "added": [],
      "removed": [
        "classify",
        "off"
      ],
      "persistedBy": "none",
      "breaking": true,
      "criteriaCovered": false
    },
    {
      "set": "ToolMarkSource",
      "at": [
        "src/core/ask-origin.ts:559"
      ],
      "newSet": true,
      "added": [
        "a2a_default",
        "deployment",
        "mcp_annotation"
      ],
      "removed": [],
      "breaking": false,
      "criteriaCovered": false
    },
    {
      "set": "WriteSeat",
      "at": [
        "src/tools/fs/shell-read-write-targets.ts:153"
      ],
      "newSet": true,
      "added": [
        "entry",
        "landing"
      ],
      "removed": [],
      "breaking": false,
      "criteriaCovered": false
    }
  ],
  "closedSetsUnreadable": [],
  "typeKeys": [
    {
      "type": "AgentTool",
      "at": [
        "src/engine/loop/types.ts:768"
      ],
      "via": "A2aRefreshResult.tools",
      "added": [
        "mcpReadOnlyHint"
      ],
      "addedDetail": [
        {
          "key": "mcpReadOnlyHint",
          "optional": true
        }
      ],
      "addedRequired": [],
      "removed": [],
      "breaking": false,
      "criteriaCovered": false
    },
    {
      "type": "ArtifactToolOptions",
      "at": [
        "src/tools/artifact/artifact-tool.ts:49"
      ],
      "added": [
        "onNotice",
        "permissionMode"
      ],
      "addedDetail": [
        {
          "key": "onNotice",
          "optional": true
        },
        {
          "key": "permissionMode",
          "optional": true
        }
      ],
      "addedRequired": [],
      "removed": [],
      "breaking": false,
      "criteriaCovered": false
    },
    {
      "type": "AskCarry",
      "at": [
        "src/core/hooks.ts:2164"
      ],
      "added": [
        "authoredBy"
      ],
      "addedDetail": [
        {
          "key": "authoredBy",
          "optional": true
        }
      ],
      "addedRequired": [],
      "removed": [
        "ruleStoreUnreadable"
      ],
      "breaking": true,
      "criteriaCovered": false
    },
    {
      "type": "AskRequest",
      "at": [
        "src/core/tool-policy.ts:2750"
      ],
      "added": [
        "authoredBy"
      ],
      "addedDetail": [
        {
          "key": "authoredBy",
          "optional": true
        }
      ],
      "addedRequired": [],
      "removed": [
        "ruleStoreUnreadable"
      ],
      "breaking": true,
      "criteriaCovered": true
    },
    {
      "type": "AskUnresolvableFacts",
      "at": [
        "src/core/ask-unresolvable-notice.ts:42"
      ],
      "added": [
        "remedy"
      ],
      "addedDetail": [
        {
          "key": "remedy",
          "optional": true
        }
      ],
      "addedRequired": [],
      "removed": [],
      "breaking": false,
      "criteriaCovered": true
    },
    {
      "type": "AutoModeArmingRecipe",
      "at": [
        "src/core/auto-mode-arming.ts:72"
      ],
      "added": [
        "derivedDenyRules"
      ],
      "addedDetail": [
        {
          "key": "derivedDenyRules",
          "optional": true
        }
      ],
      "addedRequired": [],
      "removed": [],
      "breaking": false,
      "criteriaCovered": false
    },
    {
      "type": "AutoModeDecider",
      "at": [
        "src/core/auto-mode.ts:542"
      ],
      "added": [
        "timeoutMs"
      ],
      "addedDetail": [
        {
          "key": "timeoutMs",
          "optional": true
        }
      ],
      "addedRequired": [],
      "removed": [],
      "breaking": false,
      "criteriaCovered": true
    },
    {
      "type": "BuildAutoModePromptOptions",
      "at": [
        "src/core/auto-mode-prompt.ts:54"
      ],
      "added": [
        "derivedDenyRules"
      ],
      "addedDetail": [
        {
          "key": "derivedDenyRules",
          "optional": true
        }
      ],
      "addedRequired": [],
      "removed": [],
      "breaking": false,
      "criteriaCovered": false
    },
    {
      "type": "CheckpointSummary",
      "at": [
        "src/core/checkpoint-store.ts:2082"
      ],
      "added": [
        "authoredBy"
      ],
      "addedDetail": [
        {
          "key": "authoredBy",
          "optional": true
        }
      ],
      "addedRequired": [],
      "removed": [
        "ruleStoreUnreadable"
      ],
      "breaking": true,
      "criteriaCovered": false
    },
    {
      "type": "ContainmentFaceInputs",
      "at": [
        "src/tools/fs/containment-face.ts:119"
      ],
      "added": [
        "modeFace"
      ],
      "addedDetail": [
        {
          "key": "modeFace",
          "optional": true
        }
      ],
      "addedRequired": [],
      "removed": [],
      "breaking": false,
      "criteriaCovered": false
    },
    {
      "type": "EffectivePermissionRules",
      "at": [
        "src/core/permission-rule-provider.ts:88"
      ],
      "added": [
        "unreadableSources"
      ],
      "addedDetail": [
        {
          "key": "unreadableSources",
          "optional": true
        }
      ],
      "addedRequired": [],
      "removed": [],
      "breaking": false,
      "criteriaCovered": true
    },
    {
      "type": "EstablishedRead",
      "at": [
        "src/tools/fs/shell-read-judge.ts:138"
      ],
      "added": [
        "walked",
        "written"
      ],
      "addedDetail": [
        {
          "key": "walked",
          "optional": true
        },
        {
          "key": "written",
          "optional": true
        }
      ],
      "addedRequired": [],
      "removed": [],
      "breaking": false,
      "criteriaCovered": true
    },
    {
      "type": "ExecutionEnv",
      "at": [
        "src/engine/harness/types.ts:603"
      ],
      "added": [
        "fileIdentity"
      ],
      "addedDetail": [
        {
          "key": "fileIdentity",
          "optional": true
        }
      ],
      "addedRequired": [],
      "removed": [],
      "breaking": false,
      "criteriaCovered": true
    },
    {
      "type": "FileSystem",
      "at": [
        "src/engine/harness/types.ts:457"
      ],
      "via": "ExecutionEnv.FileSystem",
      "added": [
        "fileIdentity"
      ],
      "addedDetail": [
        {
          "key": "fileIdentity",
          "optional": true
        }
      ],
      "addedRequired": [],
      "removed": [],
      "breaking": false,
      "criteriaCovered": false
    },
    {
      "type": "FsWriteGatePolicyOptions",
      "at": [
        "src/core/fs-write-gate-policy.ts:54"
      ],
      "added": [
        "defaultAsk"
      ],
      "addedDetail": [
        {
          "key": "defaultAsk",
          "optional": true
        }
      ],
      "addedRequired": [],
      "removed": [],
      "breaking": false,
      "criteriaCovered": false
    },
    {
      "type": "GateDisposition",
      "at": [
        "src/core/gate-outcome.ts:304"
      ],
      "added": [
        "allowed.released",
        "denied.askClass",
        "denied.classes",
        "denied.mode"
      ],
      "addedDetail": [
        {
          "key": "allowed.released",
          "optional": true
        },
        {
          "key": "denied.askClass",
          "optional": true
        },
        {
          "key": "denied.classes",
          "optional": true
        },
        {
          "key": "denied.mode",
          "optional": true
        }
      ],
      "addedRequired": [],
      "removed": [],
      "breaking": false,
      "criteriaCovered": false
    },
    {
      "type": "InheritedGate",
      "at": [
        "src/core/runner/contracts.ts:1195"
      ],
      "via": "RunInternals.inheritedGate",
      "added": [
        "permissionMode",
        "permissionModeCeiling"
      ],
      "addedDetail": [
        {
          "key": "permissionMode",
          "optional": true
        },
        {
          "key": "permissionModeCeiling",
          "optional": true
        }
      ],
      "addedRequired": [],
      "removed": [
        "approverPosture",
        "autoModeRequested"
      ],
      "breaking": true,
      "criteriaCovered": false
    },
    {
      "type": "NamedToolPolicy",
      "at": [
        "src/core/tool-policy.ts:1210"
      ],
      "added": [
        "pathDenyRules",
        "writeTargetGuard"
      ],
      "addedDetail": [
        {
          "key": "pathDenyRules",
          "optional": true
        },
        {
          "key": "writeTargetGuard",
          "optional": true
        }
      ],
      "addedRequired": [],
      "removed": [],
      "breaking": false,
      "criteriaCovered": false
    },
    {
      "type": "PendingAction",
      "at": [
        "src/core/checkpoint-store.ts:961"
      ],
      "added": [
        "tool_approval.authoredBy"
      ],
      "addedDetail": [
        {
          "key": "tool_approval.authoredBy",
          "optional": true
        }
      ],
      "addedRequired": [],
      "removed": [
        "tool_approval.ruleStoreUnreadable"
      ],
      "breaking": true,
      "criteriaCovered": false
    },
    {
      "type": "PermissionResult",
      "at": [
        "src/core/tool-policy.ts:448"
      ],
      "added": [
        "ask.authoredBy",
        "ask.foldedAskClasses",
        "ask.guard",
        "ask.ruleUnreadable"
      ],
      "addedDetail": [
        {
          "key": "ask.authoredBy",
          "optional": true
        },
        {
          "key": "ask.foldedAskClasses",
          "optional": true
        },
        {
          "key": "ask.guard",
          "optional": true
        },
        {
          "key": "ask.ruleUnreadable",
          "optional": true
        }
      ],
      "addedRequired": [],
      "removed": [
        "ask.ruleStoreUnreadable"
      ],
      "breaking": true,
      "criteriaCovered": false
    },
    {
      "type": "PreToolUseResult",
      "at": [
        "src/core/hooks.ts:1159"
      ],
      "added": [
        "ask.authoredBy",
        "ask.foldedAskClasses",
        "ask.guard",
        "ask.ruleUnreadable"
      ],
      "addedDetail": [
        {
          "key": "ask.authoredBy",
          "optional": true
        },
        {
          "key": "ask.foldedAskClasses",
          "optional": true
        },
        {
          "key": "ask.guard",
          "optional": true
        },
        {
          "key": "ask.ruleUnreadable",
          "optional": true
        }
      ],
      "addedRequired": [],
      "removed": [
        "ask.ruleStoreUnreadable"
      ],
      "breaking": true,
      "criteriaCovered": false
    },
    {
      "type": "Prepared",
      "at": [
        "src/core/runner/contracts.ts:243"
      ],
      "via": "Runner.SuspendReap.env",
      "added": [
        "permissionMode"
      ],
      "addedDetail": [
        {
          "key": "permissionMode",
          "optional": false
        }
      ],
      "addedRequired": [
        "permissionMode"
      ],
      "removed": [
        "planModeRef"
      ],
      "breaking": true,
      "criteriaCovered": false
    },
    {
      "type": "ReadCandidate",
      "at": [
        "src/tools/fs/shell-read-plan.ts:109"
      ],
      "added": [
        "face"
      ],
      "addedDetail": [
        {
          "key": "face",
          "optional": true
        }
      ],
      "addedRequired": [],
      "removed": [],
      "breaking": false,
      "criteriaCovered": false
    },
    {
      "type": "ReadDenyMatcher",
      "at": [
        "src/tools/fs/read-deny.ts:266"
      ],
      "added": [
        "rowAtOrBelow",
        "ruleRows",
        "unexcludableUnder"
      ],
      "addedDetail": [
        {
          "key": "rowAtOrBelow",
          "optional": true
        },
        {
          "key": "ruleRows",
          "optional": true
        },
        {
          "key": "unexcludableUnder",
          "optional": true
        }
      ],
      "addedRequired": [],
      "removed": [],
      "breaking": false,
      "criteriaCovered": true
    },
    {
      "type": "RemoteExecutionEnv",
      "at": [
        "src/core/remote-env.ts:313"
      ],
      "added": [
        "fileIdentity"
      ],
      "addedDetail": [
        {
          "key": "fileIdentity",
          "optional": true
        }
      ],
      "addedRequired": [],
      "removed": [],
      "breaking": false,
      "criteriaCovered": false
    },
    {
      "type": "RunnerDeps",
      "at": [
        "src/core/runner-deps.ts:105"
      ],
      "added": [
        "a2a"
      ],
      "addedDetail": [
        {
          "key": "a2a",
          "optional": true
        }
      ],
      "addedRequired": [],
      "removed": [
        "graderEnvFactory"
      ],
      "breaking": true,
      "criteriaCovered": false
    },
    {
      "type": "RuntimeCaps",
      "at": [
        "src/core/runtime-caps.ts:108"
      ],
      "added": [
        "bypassPermissions"
      ],
      "addedDetail": [
        {
          "key": "bypassPermissions",
          "optional": true
        }
      ],
      "addedRequired": [],
      "removed": [],
      "breaking": false,
      "criteriaCovered": true
    },
    {
      "type": "ShellReadBoundary",
      "at": [
        "src/tools/fs/shell-read-judge.ts:110"
      ],
      "added": [
        "denyAtOrBelow",
        "writeDenyMatch",
        "writeProtectionJudge",
        "writeRoots",
        "writeTargetGuard"
      ],
      "addedDetail": [
        {
          "key": "denyAtOrBelow",
          "optional": true
        },
        {
          "key": "writeDenyMatch",
          "optional": true
        },
        {
          "key": "writeProtectionJudge",
          "optional": true
        },
        {
          "key": "writeRoots",
          "optional": true
        },
        {
          "key": "writeTargetGuard",
          "optional": true
        }
      ],
      "addedRequired": [],
      "removed": [],
      "breaking": false,
      "criteriaCovered": false
    },
    {
      "type": "ShellReadVerdict",
      "at": [
        "src/tools/fs/shell-read-check.ts:70"
      ],
      "added": [
        "admit",
        "unestablished",
        "unplacedOptions",
        "writeProtected",
        "writesPlaced"
      ],
      "addedDetail": [
        {
          "key": "admit",
          "optional": true
        },
        {
          "key": "unestablished",
          "optional": true
        },
        {
          "key": "unplacedOptions",
          "optional": true
        },
        {
          "key": "writeProtected",
          "optional": true
        },
        {
          "key": "writesPlaced",
          "optional": true
        }
      ],
      "addedRequired": [],
      "removed": [],
      "breaking": false,
      "criteriaCovered": true
    },
    {
      "type": "TaskSpec",
      "at": [
        "src/core/task-spec.ts:52"
      ],
      "added": [
        "permissionMode"
      ],
      "addedDetail": [
        {
          "key": "permissionMode",
          "optional": true
        }
      ],
      "addedRequired": [],
      "removed": [
        "approverPosture",
        "autoModeRequested"
      ],
      "breaking": true,
      "criteriaCovered": true
    },
    {
      "type": "TaskStream",
      "at": [
        "src/core/task-stream.ts:13"
      ],
      "added": [
        "setPermissionMode"
      ],
      "addedDetail": [
        {
          "key": "setPermissionMode",
          "optional": false
        }
      ],
      "addedRequired": [
        "setPermissionMode"
      ],
      "removed": [],
      "breaking": true,
      "criteriaCovered": true
    },
    {
      "type": "ToolGateInput",
      "at": [
        "src/core/hooks.ts:1445"
      ],
      "via": "runToolGate.ToolGateInput",
      "added": [
        "a2aIsolatePeers",
        "ancestorArbitrationOf",
        "onModeReleased",
        "permissionMode",
        "toolMarkSources"
      ],
      "addedDetail": [
        {
          "key": "a2aIsolatePeers",
          "optional": true
        },
        {
          "key": "ancestorArbitrationOf",
          "optional": true
        },
        {
          "key": "onModeReleased",
          "optional": true
        },
        {
          "key": "permissionMode",
          "optional": true
        },
        {
          "key": "toolMarkSources",
          "optional": true
        }
      ],
      "addedRequired": [],
      "removed": [],
      "breaking": false,
      "criteriaCovered": false
    },
    {
      "type": "ToolPolicy",
      "at": [
        "src/core/tool-policy.ts:680"
      ],
      "added": [
        "pathDenyRules",
        "writeTargetGuard"
      ],
      "addedDetail": [
        {
          "key": "pathDenyRules",
          "optional": true
        },
        {
          "key": "writeTargetGuard",
          "optional": true
        }
      ],
      "addedRequired": [],
      "removed": [],
      "breaking": false,
      "criteriaCovered": true
    },
    {
      "type": "WiringFacts",
      "at": [
        "src/core/wiring-manifest.ts:465"
      ],
      "added": [
        "permissionMode"
      ],
      "addedDetail": [
        {
          "key": "permissionMode",
          "optional": true
        }
      ],
      "addedRequired": [],
      "removed": [],
      "breaking": false,
      "criteriaCovered": false
    },
    {
      "type": "WiringManifest",
      "at": [
        "src/core/wiring-manifest.ts:195"
      ],
      "added": [
        "permissionMode"
      ],
      "addedDetail": [
        {
          "key": "permissionMode",
          "optional": true
        }
      ],
      "addedRequired": [],
      "removed": [],
      "breaking": false,
      "criteriaCovered": true
    },
    {
      "type": "WriteProtectionJudgeContext",
      "at": [
        "src/core/write-protect.ts:590"
      ],
      "added": [
        "canonical"
      ],
      "addedDetail": [
        {
          "key": "canonical",
          "optional": true
        }
      ],
      "addedRequired": [],
      "removed": [],
      "breaking": false,
      "criteriaCovered": false
    }
  ],
  "typeKeysUnreadableArms": [
    {
      "type": "ShellGateDoctrine",
      "at": "src/core/task-spec.ts:50",
      "reasons": [
        "the two refs do not name this type's union arms the same way (flat -> no union read), so the delta below is stated at UNION level, with arm prefixes dropped — a key that moved between arms without leaving the union is not visible in it"
      ]
    }
  ],
  "typeKeysFlattenedCount": 215,
  "declarationMoves": [
    {
      "name": "ASK_UNRESOLVABLE_CAUSES",
      "kind": "variable",
      "onSurface": true,
      "from": [
        "src/core/ask-unresolvable-notice.ts"
      ],
      "to": [
        "src/core/ask-unresolvable-notice.ts",
        "src/index.ts"
      ]
    },
    {
      "name": "AskClass",
      "kind": "type",
      "onSurface": true,
      "from": [
        "src/core/ask-class.ts"
      ],
      "to": [
        "src/core/ask-class.ts",
        "src/core/ask-origin.ts",
        "src/index.ts"
      ]
    },
    {
      "name": "DURABLE_MANDATE_SOURCES",
      "kind": "variable",
      "onSurface": true,
      "from": [
        "src/core/tool-policy.ts"
      ],
      "to": [
        "src/core/tool-policy.ts",
        "src/index.ts"
      ]
    },
    {
      "name": "ENGINE_AUTHORITY_ENVELOPE_TAGS",
      "kind": "variable",
      "onSurface": true,
      "from": [
        "src/core/untrusted-text.ts"
      ],
      "to": [
        "src/core/untrusted-text.ts",
        "src/index.ts"
      ]
    },
    {
      "name": "TERMINAL_CAUSE_IS_REPLAYABLE",
      "kind": "variable",
      "onSurface": true,
      "from": [
        "src/core/terminal-cause.ts"
      ],
      "to": [
        "src/core/terminal-cause.ts",
        "src/index.ts"
      ]
    },
    {
      "name": "WORKFLOW_SIZE_GUIDELINE_AGENT_CAPS",
      "kind": "variable",
      "onSurface": true,
      "from": [
        "src/orchestration/workflow-size-guideline.ts"
      ],
      "to": [
        "src/index.ts",
        "src/orchestration/workflow-size-guideline.ts"
      ]
    }
  ],
  "mintMoves": [],
  "criteriaObserves": [
    {
      "kind": "engineNoticeCode",
      "name": "approval.read_root_granted",
      "assertions": [
        "G4.z"
      ]
    },
    {
      "kind": "engineNoticeCode",
      "name": "classifier.unavailable",
      "assertions": [
        "G2.e",
        "G2.f",
        "G2.h",
        "G2.j",
        "G2.m",
        "G2.o"
      ]
    },
    {
      "kind": "engineNoticeCode",
      "name": "config.permission_mode_unavailable",
      "assertions": [
        "G6.c",
        "G7.a",
        "G9.a",
        "G9.b"
      ]
    },
    {
      "kind": "engineNoticeCode",
      "name": "delegation.ask_unresolvable",
      "assertions": [
        "G3.e",
        "G4.h",
        "G5.c"
      ]
    },
    {
      "kind": "engineNoticeCode",
      "name": "permission.ask_released_by_mode",
      "assertions": [
        "G1.a"
      ]
    },
    {
      "kind": "engineNoticeCode",
      "name": "permission.read_deny_unapplied",
      "assertions": [
        "G1.g"
      ]
    },
    {
      "kind": "engineNoticeCode",
      "name": "permission.rule_store_unavailable",
      "assertions": [
        "G16.a"
      ]
    },
    {
      "kind": "engineNoticeCode",
      "name": "resume.legacy_mode_seed_migrated",
      "assertions": [
        "G9.a"
      ]
    },
    {
      "kind": "taskEventField",
      "name": "tool_end.errorCode",
      "assertions": [
        "G1.d",
        "G1.f",
        "G3.c",
        "G4.a",
        "G4.b",
        "G4.g",
        "G4.h",
        "G4.i",
        "G4.k",
        "G4.l",
        "G4.n",
        "G4.v",
        "G4.x",
        "G4.y",
        "G4.z",
        "G10.a",
        "G12.b",
        "G12.c",
        "G12.g",
        "G12.h",
        "G13.a",
        "G14.a",
        "G15.a"
      ]
    },
    {
      "kind": "taskEventField",
      "name": "tool_end.gate",
      "assertions": [
        "G1.a",
        "G1.b",
        "G1.c",
        "G1.d",
        "G1.f",
        "G1.g",
        "G2.a",
        "G2.b",
        "G2.c",
        "G2.e",
        "G2.f",
        "G2.g",
        "G2.h",
        "G2.l",
        "G2.m",
        "G3.a",
        "G3.c",
        "G3.f",
        "G3.g",
        "G3.h",
        "G4.a",
        "G4.b",
        "G4.c",
        "G4.d",
        "G4.e",
        "G4.f",
        "G4.g",
        "G4.h",
        "G4.i",
        "G4.k",
        "G4.l",
        "G4.m",
        "G4.n",
        "G4.t",
        "G4.u",
        "G4.p",
        "G4.q",
        "G4.r",
        "G4.s",
        "G4.v",
        "G4.w",
        "G4.x",
        "G4.y",
        "G4.z",
        "G5.a",
        "G5.b",
        "G5.c",
        "G6.b",
        "G6.d",
        "G7.a",
        "G7.b",
        "G8.a",
        "G8.b",
        "G8.c",
        "G12.a",
        "G12.c",
        "G12.d",
        "G12.e",
        "G12.f",
        "G12.g",
        "G12.h",
        "G12.j",
        "G12.k",
        "G14.a",
        "G15.a",
        "G16.a"
      ]
    },
    {
      "kind": "taskEventField",
      "name": "tool_end.output",
      "assertions": [
        "G3.h"
      ]
    },
    {
      "kind": "taskEventField",
      "name": "tool_end.structured",
      "assertions": [
        "G13.a"
      ]
    },
    {
      "kind": "typeMember",
      "name": "AskRequest.authoredBy",
      "assertions": [
        "G6.d"
      ]
    },
    {
      "kind": "typeMember",
      "name": "AskRequest.mandate",
      "assertions": [
        "G3.a",
        "G4.h",
        "G4.i",
        "G6.a"
      ]
    },
    {
      "kind": "typeMember",
      "name": "AskRequest.mandated",
      "assertions": [
        "G1.b",
        "G5.a",
        "G6.a",
        "G12.g",
        "G14.a"
      ]
    },
    {
      "kind": "typeMember",
      "name": "AskRequest.message",
      "assertions": [
        "G2.e",
        "G2.o",
        "G3.f",
        "G4.w",
        "G12.i"
      ]
    },
    {
      "kind": "typeMember",
      "name": "AskRequest.origin",
      "assertions": [
        "G2.b",
        "G3.a",
        "G5.a",
        "G5.b",
        "G16.a"
      ]
    },
    {
      "kind": "typeMember",
      "name": "AskRequest.readRootCandidate",
      "assertions": [
        "G4.z"
      ]
    },
    {
      "kind": "typeMember",
      "name": "AskRequest.requiresRealApproval",
      "assertions": [
        "G2.g",
        "G2.l"
      ]
    },
    {
      "kind": "typeMember",
      "name": "AskRequest.ruleOffersAbsence",
      "assertions": [
        "G4.h",
        "G4.i"
      ]
    },
    {
      "kind": "typeMember",
      "name": "AskUnresolvableFacts.remedy",
      "assertions": [
        "G3.e"
      ]
    },
    {
      "kind": "typeMember",
      "name": "AutoModeClassified.notAsked",
      "assertions": [
        "G2.m"
      ]
    },
    {
      "kind": "typeMember",
      "name": "AutoModeDecider.timeoutMs",
      "assertions": [
        "G2.j"
      ]
    },
    {
      "kind": "typeMember",
      "name": "AutoModeRebuildResult.reason",
      "assertions": [
        "G2.n"
      ]
    },
    {
      "kind": "typeMember",
      "name": "CheckpointSummary.gateKind",
      "assertions": [
        "G2.g"
      ]
    },
    {
      "kind": "typeMember",
      "name": "EffectivePermissionRule.source",
      "assertions": [
        "G4.j"
      ]
    },
    {
      "kind": "typeMember",
      "name": "EffectivePermissionRule.status",
      "assertions": [
        "G4.j"
      ]
    },
    {
      "kind": "typeMember",
      "name": "EffectivePermissionRules.rules",
      "assertions": [
        "G4.j"
      ]
    },
    {
      "kind": "typeMember",
      "name": "EffectivePermissionRules.unreadableSources",
      "assertions": [
        "G16.a"
      ]
    },
    {
      "kind": "typeMember",
      "name": "EstablishedRead.walked",
      "assertions": [
        "G4.v"
      ]
    },
    {
      "kind": "typeMember",
      "name": "ExecutionEnv.fileIdentity",
      "assertions": [
        "G4.k",
        "G4.n"
      ]
    },
    {
      "kind": "typeMember",
      "name": "ModePolicy.fileCommands",
      "assertions": [
        "G4.d"
      ]
    },
    {
      "kind": "typeMember",
      "name": "ModePolicy.writeFace",
      "assertions": [
        "G1.f"
      ]
    },
    {
      "kind": "typeMember",
      "name": "ModePolicy.writeGate",
      "assertions": [
        "G3.c",
        "G12.c",
        "G12.d",
        "G12.e"
      ]
    },
    {
      "kind": "typeMember",
      "name": "ModeRefusal.askClass",
      "assertions": [
        "G4.c",
        "G12.a",
        "G12.b"
      ]
    },
    {
      "kind": "typeMember",
      "name": "ModeRefusal.mode",
      "assertions": [
        "G4.c",
        "G12.a"
      ]
    },
    {
      "kind": "typeMember",
      "name": "ModeRelease.askClass",
      "assertions": [
        "G1.a",
        "G1.b",
        "G1.c",
        "G1.d"
      ]
    },
    {
      "kind": "typeMember",
      "name": "ModeRelease.mandate",
      "assertions": [
        "G1.a"
      ]
    },
    {
      "kind": "typeMember",
      "name": "ModeRelease.reason",
      "assertions": [
        "G1.c"
      ]
    },
    {
      "kind": "typeMember",
      "name": "PermissionModeReceipt.effective",
      "assertions": [
        "G3.b",
        "G8.a"
      ]
    },
    {
      "kind": "typeMember",
      "name": "PermissionModeReceipt.foldedBy",
      "assertions": [
        "G6.c"
      ]
    },
    {
      "kind": "typeMember",
      "name": "PermissionModeReceipt.requested",
      "assertions": [
        "G3.b",
        "G8.a"
      ]
    },
    {
      "kind": "typeMember",
      "name": "ReadDenyMatcher.matchTarget",
      "assertions": [
        "G4.o"
      ]
    },
    {
      "kind": "typeMember",
      "name": "ReadDenyMatcher.rowAtOrBelow",
      "assertions": [
        "G4.o"
      ]
    },
    {
      "kind": "typeMember",
      "name": "RunnerDeps.autoMode.classifierFallback",
      "assertions": [
        "G2.i"
      ]
    },
    {
      "kind": "typeMember",
      "name": "RunnerDeps.autoMode.denialLimit",
      "assertions": [
        "G2.i"
      ]
    },
    {
      "kind": "typeMember",
      "name": "RunnerDeps.autoMode.timeoutMs",
      "assertions": [
        "G2.c",
        "G2.d",
        "G2.i"
      ]
    },
    {
      "kind": "typeMember",
      "name": "RunnerDeps.onError",
      "assertions": [
        "G2.k"
      ]
    },
    {
      "kind": "typeMember",
      "name": "RunnerDeps.readDenyBuiltinExclude",
      "assertions": [
        "G4.g",
        "G4.n"
      ]
    },
    {
      "kind": "typeMember",
      "name": "RunnerDeps.readDenyBuiltinTiers",
      "assertions": [
        "G4.g",
        "G4.n"
      ]
    },
    {
      "kind": "typeMember",
      "name": "RunnerDeps.writeProtectedPaths",
      "assertions": [
        "G4.n"
      ]
    },
    {
      "kind": "typeMember",
      "name": "RuntimeCaps.bypassPermissions",
      "assertions": [
        "G6.c",
        "G9.b"
      ]
    },
    {
      "kind": "typeMember",
      "name": "ShellReadBoundary.denyMatch",
      "assertions": [
        "G4.v"
      ]
    },
    {
      "kind": "typeMember",
      "name": "ShellReadVerdict.unplacedOptions",
      "assertions": [
        "G4.w"
      ]
    },
    {
      "kind": "typeMember",
      "name": "ShellReadVerdict.writesPlaced",
      "assertions": [
        "G4.e",
        "G4.f",
        "G4.t",
        "G4.u",
        "G4.p",
        "G4.q",
        "G4.r",
        "G4.s"
      ]
    },
    {
      "kind": "typeMember",
      "name": "TaskResult.terminal",
      "assertions": [
        "G2.i",
        "G3.d",
        "G7.b",
        "G9.a",
        "G10.a",
        "G12.h",
        "G12.i"
      ]
    },
    {
      "kind": "typeMember",
      "name": "TaskSpec.permissionMode",
      "assertions": [
        "G3.b"
      ]
    },
    {
      "kind": "typeMember",
      "name": "TaskSpec.readDenyPatterns",
      "assertions": [
        "G4.a"
      ]
    },
    {
      "kind": "typeMember",
      "name": "TaskSpec.shellGate",
      "assertions": [
        "G3.d",
        "G6.a"
      ]
    },
    {
      "kind": "typeMember",
      "name": "TaskStream.setPermissionMode",
      "assertions": [
        "G2.k",
        "G8.a",
        "G8.c",
        "G12.g"
      ]
    },
    {
      "kind": "typeMember",
      "name": "ToolPolicy.writeTargetGuard",
      "assertions": [
        "G4.d"
      ]
    },
    {
      "kind": "typeMember",
      "name": "WiringManifest.ask.effective",
      "assertions": [
        "G2.e"
      ]
    },
    {
      "kind": "typeMember",
      "name": "WiringManifest.autoMode",
      "assertions": [
        "G2.a"
      ]
    },
    {
      "kind": "typeMember",
      "name": "WiringManifest.permissionMode",
      "assertions": [
        "G1.e",
        "G3.b",
        "G7.a",
        "G11.a"
      ]
    },
    {
      "kind": "typeMember",
      "name": "WiringManifest.readDeny",
      "assertions": [
        "G4.g"
      ]
    },
    {
      "kind": "typeMember",
      "name": "WiringManifest.tools",
      "assertions": [
        "G12.f",
        "G12.g"
      ]
    }
  ],
  "consumersHint": {
    "cli": [
      "APPROVER_POSTURES",
      "ASK_UNRESOLVABLE_CAUSES",
      "AgentTool",
      "ApproverPosture",
      "ArtifactToolOptions",
      "AskCarry",
      "AskRequest",
      "AutoModeArmingRecipe",
      "CheckpointSummary",
      "DENIED_BY_VALUES",
      "DURABLE_MANDATE_SOURCES",
      "ENGINE_NOTICE_CODES",
      "EstablishedRead",
      "ExecutionEnv",
      "FileSystem",
      "FsWriteGatePolicyOptions",
      "GateDisposition",
      "PERMISSION_MODES",
      "PendingAction",
      "PermissionMode",
      "PermissionResult",
      "PreToolUseResult",
      "Prepared",
      "READ_DENY_DEFAULT_TIERS",
      "RULE_STORE_UNREADABLE_KINDS",
      "ReadCandidate",
      "ReadDenyMatcher",
      "RemoteExecutionEnv",
      "RunnerDeps",
      "RuntimeCaps",
      "SHELL_READ_SEATS",
      "ShellReadVerdict",
      "TaskSpec",
      "TaskStream",
      "ToolPolicy",
      "WORKFLOW_SIZE_GUIDELINE_AGENT_CAPS",
      "WiringFacts",
      "WiringManifest",
      "WriteProtectionJudgeContext",
      "isPermissionMode"
    ],
    "server": [
      "APPROVER_POSTURES",
      "ASK_UNRESOLVABLE_CAUSES",
      "AgentTool",
      "ApproverPosture",
      "AskCarry",
      "AskRequest",
      "AskUnresolvableFacts",
      "AutoModeDecider",
      "CheckpointSummary",
      "DENIED_BY_VALUES",
      "DURABLE_MANDATE_SOURCES",
      "ENGINE_NOTICE_CODES",
      "ExecutionEnv",
      "FileSystem",
      "GateDisposition",
      "InheritedGate",
      "PendingAction",
      "PermissionResult",
      "PreToolUseResult",
      "Prepared",
      "READ_DENY_DEFAULT_TIERS",
      "RULE_STORE_UNREADABLE_KINDS",
      "ReadCandidate",
      "RemoteExecutionEnv",
      "RunnerDeps",
      "RuntimeCaps",
      "ShellGateDoctrine",
      "TaskSpec",
      "TaskStream",
      "ToolGateInput",
      "ToolPolicy",
      "WiringFacts",
      "WiringManifest",
      "classifierMayAnswer",
      "isRuleStoreUnreadable"
    ],
    "sdk": [
      "ApproverPosture",
      "AskRequest",
      "CheckpointSummary",
      "DENIED_BY_VALUES",
      "ENGINE_NOTICE_CODES",
      "FileSystem",
      "GateDisposition",
      "PERMISSION_MODES",
      "PendingAction",
      "PermissionMode",
      "PermissionResult",
      "PreToolUseResult",
      "RunnerDeps",
      "TaskSpec",
      "TaskStream",
      "ToolPolicy",
      "WiringManifest"
    ],
    "note": "scanned cli@6b6025f7 server@a99e8fb3 sdk@df458ed — a name listed is MENTIONED there today, which is evidence of consumption, not proof of it. Ledger files (**/docs/core-consumption/**, **/docs/wire-consumption/**, **/*LEDGER*.json) are not evidence of use — server: 14 name(s) matched ONLY in bookkeeping files and were set aside (ArtifactToolOptions, AutoModeArmingRecipe, BuildAutoModePromptOptions, ContainmentFaceInputs, EffectivePermissionRules, EstablishedRead, FsWriteGatePolicyOptions, NamedToolPolicy, ReadDenyMatcher, RuleStoreUnreadable, SHELL_READ_SEATS, ShellReadBoundary, ShellReadVerdict, WriteProtectionJudgeContext)"
  },
  "breakingCount": 21,
  "breakingItems": [
    "closed set lost members: APPROVER_POSTURES -bypass",
    "closed set lost members: DENIED_BY_VALUES -plan_mode",
    "closed set lost members: SHELL_READ_SEATS -bash_classify,bash_off",
    "closed set lost members: ShellGateDoctrine -classify,off",
    "export removed: ApproverPosture (type)",
    "export removed: RULE_STORE_UNREADABLE_KINDS (variable)",
    "export removed: RuleStoreUnreadable (type)",
    "export removed: classifierMayAnswer (function)",
    "export removed: isRuleStoreUnreadable (function)",
    "type gained required keys: Prepared +permissionMode",
    "type gained required keys: TaskStream +setPermissionMode",
    "type lost keys: AskCarry -ruleStoreUnreadable",
    "type lost keys: AskRequest -ruleStoreUnreadable",
    "type lost keys: CheckpointSummary -ruleStoreUnreadable",
    "type lost keys: InheritedGate -approverPosture,autoModeRequested",
    "type lost keys: PendingAction -tool_approval.ruleStoreUnreadable",
    "type lost keys: PermissionResult -ask.ruleStoreUnreadable",
    "type lost keys: PreToolUseResult -ask.ruleStoreUnreadable",
    "type lost keys: Prepared -planModeRef",
    "type lost keys: RunnerDeps -graderEnvFactory",
    "type lost keys: TaskSpec -approverPosture,autoModeRequested"
  ],
  "toResolvedAt": "45197fb366d1b766a4755c76115a1fdd062bd06c"
}
