mirror of
https://github.com/openai/codex.git
synced 2026-09-03 14:59:03 +00:00
## What changed - Change `ReviewDecision::Denied` to carry a rejection string and update the generated protocol schemas. - Preserve specific rejection reasons through command, patch, network, MCP, delegated, and automatic approval flows so tool results can return them to the model. - Distinguish invalid approval responses from user declines and truncate oversized rejection messages before adding them to model context. ## Testing - Add coverage for denial serialization, invalid app-server approval responses, dropped automatic reviews, network rejection propagation, and rejection-message truncation. GitOrigin-RevId: d48a55643aa03c7ecfa08a8e4b669913eec5464a
139 lines
3.9 KiB
JSON
Generated
139 lines
3.9 KiB
JSON
Generated
{
|
|
"$schema": "http://json-schema.org/draft-07/schema#",
|
|
"definitions": {
|
|
"NetworkPolicyAmendment": {
|
|
"properties": {
|
|
"action": {
|
|
"$ref": "#/definitions/NetworkPolicyRuleAction"
|
|
},
|
|
"host": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"action",
|
|
"host"
|
|
],
|
|
"type": "object"
|
|
},
|
|
"NetworkPolicyRuleAction": {
|
|
"enum": [
|
|
"allow",
|
|
"deny"
|
|
],
|
|
"type": "string"
|
|
},
|
|
"ReviewDecision": {
|
|
"description": "User's decision in response to an ExecApprovalRequest.",
|
|
"oneOf": [
|
|
{
|
|
"description": "User has approved this command and the agent should execute it.",
|
|
"enum": [
|
|
"approved"
|
|
],
|
|
"type": "string"
|
|
},
|
|
{
|
|
"additionalProperties": false,
|
|
"description": "User has approved this command and wants to apply the proposed execpolicy amendment so future matching commands are permitted.",
|
|
"properties": {
|
|
"approved_execpolicy_amendment": {
|
|
"properties": {
|
|
"proposed_execpolicy_amendment": {
|
|
"items": {
|
|
"type": "string"
|
|
},
|
|
"type": "array"
|
|
}
|
|
},
|
|
"required": [
|
|
"proposed_execpolicy_amendment"
|
|
],
|
|
"type": "object"
|
|
}
|
|
},
|
|
"required": [
|
|
"approved_execpolicy_amendment"
|
|
],
|
|
"title": "ApprovedExecpolicyAmendmentReviewDecision",
|
|
"type": "object"
|
|
},
|
|
{
|
|
"description": "User has approved this request and wants future prompts in the same session-scoped approval cache to be automatically approved for the remainder of the session.",
|
|
"enum": [
|
|
"approved_for_session"
|
|
],
|
|
"type": "string"
|
|
},
|
|
{
|
|
"additionalProperties": false,
|
|
"description": "User chose to persist a network policy rule (allow/deny) for future requests to the same host.",
|
|
"properties": {
|
|
"network_policy_amendment": {
|
|
"properties": {
|
|
"network_policy_amendment": {
|
|
"$ref": "#/definitions/NetworkPolicyAmendment"
|
|
}
|
|
},
|
|
"required": [
|
|
"network_policy_amendment"
|
|
],
|
|
"type": "object"
|
|
}
|
|
},
|
|
"required": [
|
|
"network_policy_amendment"
|
|
],
|
|
"title": "NetworkPolicyAmendmentReviewDecision",
|
|
"type": "object"
|
|
},
|
|
{
|
|
"additionalProperties": false,
|
|
"description": "User has denied this command and the agent should not execute it, but it should continue the session and try something else.",
|
|
"properties": {
|
|
"denied": {
|
|
"properties": {
|
|
"rejection": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"required": [
|
|
"rejection"
|
|
],
|
|
"type": "object"
|
|
}
|
|
},
|
|
"required": [
|
|
"denied"
|
|
],
|
|
"title": "DeniedReviewDecision",
|
|
"type": "object"
|
|
},
|
|
{
|
|
"description": "Automatic approval review timed out before reaching a decision.",
|
|
"enum": [
|
|
"timed_out"
|
|
],
|
|
"type": "string"
|
|
},
|
|
{
|
|
"description": "User has denied this command and the agent should not do anything until the user's next command.",
|
|
"enum": [
|
|
"abort"
|
|
],
|
|
"type": "string"
|
|
}
|
|
]
|
|
}
|
|
},
|
|
"properties": {
|
|
"decision": {
|
|
"$ref": "#/definitions/ReviewDecision"
|
|
}
|
|
},
|
|
"required": [
|
|
"decision"
|
|
],
|
|
"title": "ExecCommandApprovalResponse",
|
|
"type": "object"
|
|
} |