Option A: CosmWasm Vault + Watcher (hardest guarantees)

When the source chain supports CosmWasm with staking calls.

Architecture

How the watcher controls ratio safely

Redemption

Failure containment

Mermaid: Vault + Watcher

sequenceDiagram
  autonumber
  participant U as User
  participant Vault as Wasm Vault (Source)
  participant Stk as Staking Module
  participant W as Watcher Committee
  participant Rel as Relayer
  participant Dst as Destination
  participant Rec as Receipt (non-transferable)

  U->>Vault: Deposit native
  W-->>Vault: Signed ratio hint {target, epoch}
  Vault->>Vault: Verify threshold, epoch, rate limits, proofs
  Vault->>Stk: Delegate or Undelegate to reach target band
  Vault-->>Dst: IBC packet: credit receipt
  Rel-->>Dst: Relay packet
  Dst->>Rec: Mint receipt to U

  U->>Rec: Burn for redemption
  Rec-->>Vault: IBC redeem request
  Vault->>Stk: Undelegate queued amount
  Stk-->>Vault: Unbond complete
  Vault-->>U: Withdraw underlying

Option B: User ICA Address + Controller + Watcher (works without Wasm)