> ## Documentation Index
> Fetch the complete documentation index at: https://docs.spellguard.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Commitments

> Cryptographic proofs of message existence

# Commitment Generation

Commitments are cryptographic proofs that a message existed at a specific time.

## AuditCommitment

```typescript theme={null}
interface AuditCommitment {
  /** Message ID this commitment refers to */
  messageId: string;
  /** Sender agent ID */
  sender: string;
  /** Recipient agent ID */
  recipient: string;
  /** SHA256 hash proving message existence */
  hash: string;
  /** Timestamp of commitment generation */
  timestamp: number;
  /** Attestation level for this communication */
  attestationLevel: 'bilateral' | 'unilateral' | 'none';

  // Unilateral-specific fields (present only for A2A-only recipients)
  /** Direction of unilateral interaction */
  direction?: 'outbound' | 'inbound';
  /** URL of the A2A-only agent */
  a2aAgentUrl?: string;
  /** Whether the A2A agent was reachable */
  reachable?: boolean;
  /** HTTP status code if a response was received */
  httpStatus?: number;
  /** Correlation ID linking outbound request to inbound response */
  correlationId?: string;
}
```

## Attestation Levels

| Level        | Badge                                                                                                                                | Description                         | Use Case                |
| ------------ | ------------------------------------------------------------------------------------------------------------------------------------ | ----------------------------------- | ----------------------- |
| `bilateral`  | <span style={{background: '#d1fae5', color: '#065f46', padding: '2px 8px', borderRadius: '4px', fontSize: '12px'}}>bilateral</span>  | Both agents are Spellguard-attested | Internal agent-to-agent |
| `unilateral` | <span style={{background: '#fef3c7', color: '#92400e', padding: '2px 8px', borderRadius: '4px', fontSize: '12px'}}>unilateral</span> | Only sender is attested             | External A2A agents     |
| `none`       | <span style={{background: '#dbeafe', color: '#1e40af', padding: '2px 8px', borderRadius: '4px', fontSize: '12px'}}>none</span>       | No attestation                      | Testing only            |
