Component: ghost-dao-interface @ a911859, src/hooks/bonds/index.js:275-294 (purchaseBond), src/containers/Bond/components/BondConfirmModal.jsx:111-120.
Description: The bond purchase UI exposes a recipient address field. BondConfirmModal passes user: recipientAddress and sender (the connected wallet) as separate parameters to purchaseBond, but purchaseBond passes account: user to executeOnChainTransaction. When the recipient differs from the connected wallet, the transaction is prepared from an account the wallet does not control, and @wagmi/core 2.17 getConnectorClient throws for unauthorized accounts before anything is signed. The advertised feature is dead: any custom recipient fails with “Bond transaction failed”.
Impact: Broken advertised feature. No fund loss: it fails loudly before signing.
Reproduction: Code read of the call chain above; set a recipient address different from the connected wallet and observe the pre-sign failure.
Severity: Low. Reason: no fund loss, fails loudly, but a visible setting is non-functional.
Recommendation: Pass account: sender so the connected wallet signs and the bond vests to the recipient.
Verification: VERIFIED (code read, coordinator-verified).