# E2E Spec: Recovery Management

## Overview
Test recovery point validation and detached restore.
Covers `internal/agent/recovery.go`.

## Test Cases

### ValidateRecoveryCapability
- Valid runtime + strategy returns capability
- Empty runtime returns error
- Empty strategy returns error
- Unknown runtime returns error
- Unsupported strategy for known runtime returns error

### RestoreRecoveryPointDetached
- Unsupported runtime returns error
- Valid config calls driver's RestoreRecoveryPointDetached

### CleanupRecoveryArtifactsDetached
- Empty requests list is no-op
- Invalid entries (empty strategy/ref) are skipped
- Codex recovery refs are metadata-only and do not launch detached restore
- Valid runtime-owned artifacts are cleaned up

### Runtime Name Normalization (runtimeTypeFromName)
- "claude" and "claude-code" both map to TypeClaudeCode (backward compatible alias)
- Other names map directly
