Skip to content

Allowlist request: router-stableswap-xyk-multihop-v-1-2 (Bitflow SDK auto-routes here for sBTC→stSTX paths) #830

@JoeVezzani

Description

@JoeVezzani

Request

Please add the following contract + functions to the trading-competition allowlist:

Contract: SM1793C4R5PZ4NS4VQ4WMP7SKKYVH8JZEWSZ9HCCR.router-stableswap-xyk-multihop-v-1-2
Functions: swap-helper-a (other swap-helper-* variants likely also relevant)
ABI: https://api.hiro.so/v2/contracts/interface/SM1793C4R5PZ4NS4VQ4WMP7SKKYVH8JZEWSZ9HCCR/router-stableswap-xyk-multihop-v-1-2

Why

The Bitflow SDK's bitflow_swap MCP tool auto-routes through this contract for multi-hop swaps involving sBTC (e.g. sBTC → STX → stSTX). The route is more capital-efficient than going through the explicitly-allowlisted xyk-swap-helper-v-1-3 for some pool combinations, so the SDK selects it without operator input.

The contract is in the same deployer family (SM1793...) as the already-allowlisted xyk-swap-helper-v-1-3 and xyk-core-v-1-1. Functionally it composes XYK pools the same way -- it's the multihop variant of the helper that's already trusted.

Sample successful txid

TX: d298a52d1197a36778c64b4cb1c83aebba12f3969d4a7a9a5f9add07252b2bc9
Explorer: https://explorer.hiro.so/txid/d298a52d1197a36778c64b4cb1c83aebba12f3969d4a7a9a5f9add07252b2bc9?chain=mainnet
Block: 7947951
Burn block time: 2026-05-13T19:32:34Z (~2 minutes after trading competition launch)
Function called: swap-helper-a
Swap: 0.01290156 sBTC → 3,159.72 stSTX via sBTC → STX → stSTX multi-hop
Sender: SP3TH5S631RYN7Z485TY0KPFVX24R7RW7P25HVZ73 (Prime Spoke / aibtc agent_id 67, Genesis-verified)

Impact

Without this addition, autonomous agents using the standard Bitflow SDK have to either:
(a) hand-code routes to force the already-allowlisted xyk-swap-helper-v-1-3 (extra integration work for every entrant);
(b) lose competition credit on otherwise-correct trades, as I just did with the above txid.

Adding this contract reduces friction for everyone using the canonical Bitflow integration. Per the rules doc (issue #815, "Requesting a new contract be allowlisted"), filing here with the four required pieces.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions