mirror of
https://github.com/luxfi/bridge.git
synced 2026-09-24 00:26:46 +00:00
Consolidates origin/z/bridgev2-xrp-broadcast. Conflicts resolved: - internal/broadcast/client.go: XRP case added alongside EVM/BTC/SOL/DOT; ErrFamilyNotImplemented now lists only TON as pending - cmd/bridge/release_pool.go: dropped XRP agent's PubKeyHex field + AcquireForFamily/SizeByFamily/Reload accessors that re-implemented family routing inside ReleasePool. Kept BTC's family-keyed store approach (LoadEntries(ctx, family)) as the single source of truth. XRP pubkey persistence rides on ReleasePoolEntry.ECDSAPubKey (hex string field added by DOT merge — XRP signing driver reads the same field for its SigningPubKey embedding). Added FamilyXRP constant. - cmd/bridge/release_pool_set.go: added XRP slot to ReleasePoolSet + Size/FamilySizes/PoolFor/poolFor coverage - cmd/bridge/signing_driver.go: XRP dispatch added before EVM/DOT assembler path; threaded poolEntry through both poolSet acquire and legacy fallback acquire so signOneXRP can read poolEntry.ECDSAPubKey - cmd/bridge/main.go: XRP release pool wired through releasePoolSet.XRP via the same NewReleasePoolForFamily(store, FamilyXRP, …) shape as BTC/SOL/DOT — no more shared-store-with-different-indices hack - internal/mchain/client.go: Wallet.ECDSAPubKey stays []byte (BTC's choice) — XRP consumers hex-encode when persisting. XRP r-address derivation runs in pickAddress when ECDSAPubKey present, falls back to ETHAddress otherwise (matches the merged-state shape-only tests) - cmd/bridge/broadcast_driver.go: humanizeBroadcastErr merges BTC's txn-* rejections with XRP's tecINSUFFICIENT_FUNDS / tecUNFUNDED - go.mod: added rubblelabs/ripple + bits-and-blooms/bitset to union of all branches' deps - Test refactors: ECDSAPubKeyHex → ECDSAPubKey ([]byte); PutEntry takes family arg; XRP-specific tests using AcquireForFamily/SizeByFamily replaced with TestReleasePool_XRPFamily_BootstrapAndAcquire matching the BTC family-pool shape
81 lines
3.4 KiB
AMPL
81 lines
3.4 KiB
AMPL
module github.com/luxfi/bridge
|
|
|
|
go 1.26.3
|
|
|
|
require (
|
|
github.com/btcsuite/btcd v0.25.0
|
|
github.com/btcsuite/btcd/btcutil v1.2.0
|
|
github.com/btcsuite/btcd/chaincfg/chainhash v1.2.0
|
|
github.com/gagliardetto/binary v0.8.0
|
|
github.com/gagliardetto/solana-go v1.20.0
|
|
github.com/gofiber/fiber/v3 v3.2.0
|
|
github.com/hanzoai/zip v0.2.0
|
|
github.com/luxfi/log v1.4.3
|
|
github.com/luxfi/zapdb v1.8.0
|
|
github.com/rubblelabs/ripple v0.0.0-20240324121851-6816ca31ba51
|
|
golang.org/x/crypto v0.50.0
|
|
gopkg.in/yaml.v3 v3.0.1
|
|
)
|
|
|
|
require (
|
|
filippo.io/hpke v0.4.0 // indirect
|
|
github.com/andybalholm/brotli v1.2.1 // indirect
|
|
github.com/benbjohnson/clock v1.3.5 // indirect
|
|
github.com/bits-and-blooms/bitset v1.2.1 // indirect
|
|
github.com/blendle/zapdriver v1.3.1 // indirect
|
|
github.com/btcsuite/btcd/btcec/v2 v2.3.5 // indirect
|
|
github.com/btcsuite/btclog v0.0.0-20170628155309-84c8d2346e9f // indirect
|
|
github.com/cespare/xxhash/v2 v2.3.0 // indirect
|
|
github.com/davecgh/go-spew v1.1.1 // indirect
|
|
github.com/decred/dcrd/crypto/blake256 v1.0.0 // indirect
|
|
github.com/decred/dcrd/dcrec/secp256k1/v4 v4.0.1 // indirect
|
|
github.com/dgraph-io/ristretto/v2 v2.2.0 // indirect
|
|
github.com/dustin/go-humanize v1.0.1 // indirect
|
|
github.com/fatih/color v1.18.0 // indirect
|
|
github.com/gagliardetto/treeout v0.1.4 // indirect
|
|
github.com/go-ini/ini v1.67.0 // indirect
|
|
github.com/go-logr/logr v1.4.3 // indirect
|
|
github.com/go-logr/stdr v1.2.2 // indirect
|
|
github.com/goccy/go-json v0.10.6 // indirect
|
|
github.com/gofiber/schema v1.7.1 // indirect
|
|
github.com/gofiber/utils/v2 v2.0.4 // indirect
|
|
github.com/google/flatbuffers v25.2.10+incompatible // indirect
|
|
github.com/google/uuid v1.6.0 // indirect
|
|
github.com/kcalvinalvin/anet v0.0.0-20251112173137-d8ddc1f6dbee // indirect
|
|
github.com/klauspost/compress v1.18.5 // indirect
|
|
github.com/klauspost/cpuid/v2 v2.2.11 // indirect
|
|
github.com/klauspost/crc32 v1.3.0 // indirect
|
|
github.com/logrusorgru/aurora v2.0.3+incompatible // indirect
|
|
github.com/luxfi/age v1.4.0 // indirect
|
|
github.com/mattn/go-colorable v0.1.14 // indirect
|
|
github.com/mattn/go-isatty v0.0.21 // indirect
|
|
github.com/minio/crc64nvme v1.1.1 // indirect
|
|
github.com/minio/md5-simd v1.1.2 // indirect
|
|
github.com/minio/minio-go/v7 v7.0.100 // indirect
|
|
github.com/mitchellh/go-testing-interface v1.14.1 // indirect
|
|
github.com/mostynb/zstdpool-freelist v0.0.0-20201229113212-927304c0c3b1 // indirect
|
|
github.com/oasisprotocol/curve25519-voi v0.0.0-20251114093237-2ab5a27a1729 // indirect
|
|
github.com/philhofer/fwd v1.2.0 // indirect
|
|
github.com/rs/xid v1.6.0 // indirect
|
|
github.com/streamingfast/logging v0.0.0-20250404134358-92b15d2fbd2e // indirect
|
|
github.com/tinylib/msgp v1.6.4 // indirect
|
|
github.com/valyala/bytebufferpool v1.0.0 // indirect
|
|
github.com/valyala/fasthttp v1.70.0 // indirect
|
|
go.mongodb.org/mongo-driver/v2 v2.5.0 // indirect
|
|
go.opentelemetry.io/auto/sdk v1.2.1 // indirect
|
|
go.opentelemetry.io/otel v1.39.0 // indirect
|
|
go.opentelemetry.io/otel/metric v1.39.0 // indirect
|
|
go.opentelemetry.io/otel/trace v1.39.0 // indirect
|
|
go.uber.org/multierr v1.11.0 // indirect
|
|
go.uber.org/ratelimit v0.3.1 // indirect
|
|
go.uber.org/zap v1.27.0 // indirect
|
|
go.yaml.in/yaml/v3 v3.0.4 // indirect
|
|
golang.org/x/net v0.53.0 // indirect
|
|
golang.org/x/sys v0.43.0 // indirect
|
|
golang.org/x/term v0.42.0 // indirect
|
|
golang.org/x/text v0.36.0 // indirect
|
|
golang.org/x/time v0.11.0 // indirect
|
|
google.golang.org/protobuf v1.36.11 // indirect
|
|
gopkg.in/natefinch/lumberjack.v2 v2.2.1 // indirect
|
|
)
|