chainIntegrity
chainIntegrity: ApprovalInboxIntegrity
contextIntegrity
contextIntegrity: ApprovalInboxIntegrity
decisions
decisions: {
agentId: string;
approvalDecisionId: string;
approvalRequestId: string;
decision: "DENY" | "APPROVE_EXECUTE" | "APPROVE_SIMULATE";
decisionTs: number;
reason: string;
requestDigestSha256?: string;
roles: ("OWNER" | "AUDITOR" | "APPROVER" | "OPERATOR" | "VIEWER" | "AGENT")[];
userId: string;
username: string;
v: 1;
}[]
executionReady
executionReady: boolean
quorum
quorum: {
received: number;
required: number;
status:
| "EXPIRED"
| "DENIED"
| "CANCELLED"
| "PENDING"
| "QUORUM_MET"
| "CONSUMED";
}
request
request: {
actionClass:
| "READ_ONLY"
| "WRITE_LOW"
| "WRITE_HIGH"
| "DEPLOY"
| "SECURITY"
| "FINANCIAL"
| "NETWORK_EXTERNAL"
| "DATA_EXPORT"
| "IDENTITY";
agentId: string;
approvalRequestId: string;
boundHashes: {
budgetsHash: string;
intentHash: string;
leaseConstraintsHash: string;
policyHash: string;
toolsHash: string;
workOrderHash?: string
| null;
};
createdTs: number;
effectiveMode: "SIMULATE"
| "EXECUTE";
expiresTs: number;
intentId: string;
requestedMode: "SIMULATE" | "EXECUTE";
requiredApprovals: number;
requiredAssurancePacks?: Record<
string,
{ maxSucceeded: number; minScore: number },
>;
requireDistinctUsers: boolean;
riskTier: "low" | "high" | "critical" | "medium";
rolesAllowed: (
"OWNER"
| "AUDITOR"
| "APPROVER"
| "OPERATOR"
| "VIEWER"
| "AGENT"
)[];
status:
| "EXPIRED"
| "DENIED"
| "CANCELLED"
| "PENDING"
| "QUORUM_MET"
| "CONSUMED";
toolName: string;
v: 1;
workOrderId?: string
| null;
}
requestDigestSha256
requestDigestSha256: string
requestIntegrity
requestIntegrity: ApprovalInboxIntegrity
status
status:
| "EXPIRED"
| "DENIED"
| "CANCELLED"
| "PENDING"
| "QUORUM_MET"
| "CONSUMED"