# Нарушение Unmanaged ownership balance

RuleID: lifetime.unmanaged-ownership-balance@1.0.0
Status: recovery-required
Catalog snapshot: 4558458d

Accepted subset is bounded. If required evidence is incomplete, the affected result is unknown.

## V-LIFE-05 — Нарушение Unmanaged ownership balance

Unmanaged переносит ответственность за retain/release на код. Несбалансированная передача приводит к утечке или преждевременному освобождению.

Status: recovery-required

Scope notes: Source producer требует восстановления и квалификации. Если необходимые факты не получены, результат — unknown, а не «ошибки нет».

### Before (illustrative)

```swift
let token = Unmanaged.passRetained(object)
// C API только заимствует token; release нигде нет.
```

### After (illustrative)

```swift
let token = Unmanaged.passRetained(object)
defer { token.release() }
callSynchronousBorrowingAPI(token.toOpaque())
```

Boundary: Opaque foreign ownership — unknown

---
Language: ru
Canonical: https://docs.swift-analyzer.com/catalog/lifetime.unmanaged-ownership-balance/
Source revision: 4558458d
