# Kairan's Seat v3: post-release transfers are permanently locked Target: [`kairan-seat-lab-ocifarsito-v3.clar` at `b2ca6974`](https://github.com/Rapha-btc/jing-contracts-v3/blob/b2ca6974b681bc7ad7c948604cd7bf5945492c9e/contracts/charity/kairan-seat-lab-ocifarsito-v3.clar). Severity: **Low** (accidental or unsolicited transfers after a successful release are unrecoverable; the ordinary deposit/release path works). This is a static, source-level reproduction, not a claim of an executed mainnet transaction. The v3 contract pays its entire STX and sBTC balance to LAB in `release-reserve` (lines 119–153) and sets `claim`. After that, both `deposit-reserve` (line 80) and `release-reserve` (line 125) return `ERR_CLAIMED`. There is no `sweep` or other public outflow function. Yet a sender can transfer STX directly to the contract principal, without calling `deposit-reserve`; the sBTC token's `transfer` likewise accepts a contract principal as recipient. Such a transfer after the release increases the contract balance but cannot be sent to LAB. `get-status` (lines 61–70) will show `claimed: true` and a nonzero `stx` or `sats` indefinitely. Minimal reproduction for a local Clarity simulation: 1. Fund the FUNDRAISER test principal; call `deposit-reserve` with a positive STX amount. 2. As LAB, call `request-reserve` with a nonempty description and `true`. As OWNER, call `release-reserve` with the same description. Assert `get-claim` is `some` and the contract balance is zero. 3. From any funded test principal, transfer 1 micro-STX **directly to the v3 contract principal** (a normal token transfer, not `deposit-reserve`). Assert `get-status` reports `claimed: true` and `stx: u1`. 4. Calling `release-reserve` again returns `(err u106)`; `deposit-reserve` also returns `(err u106)`. No remaining public method can move that 1 micro-STX to LAB. Repeat with sBTC for the same result. This is specifically a regression in the new v3 contract, not a resubmission of the old v2 implementation: the round-1 [finding #5 and fix](https://github.com/Rapha-btc/jing-contracts-v3/blob/b2ca6974b681bc7ad7c948604cd7bf5945492c9e/contracts/charity/README-bounty-mvllpu.md) added `sweep` to v2 for direct post-claim transfers, but v3 has no equivalent. The v3 header and TERMS say funds in the contract only ever go to LAB. A minimal fix is a post-claim `sweep` callable by OWNER (or anyone) that sends only the current STX/sBTC balances to the fixed LAB principal, following v2's guarded pattern. It must not allow another reserve release or change the recorded claim.