ipa: fix stale banderwagon import path

Replace github.com/luxfi/crypto/ipa/banderwagon with the canonical
github.com/luxfi/crypto/banderwagon in ipa/batch.go and its test, plus
the verkle-ipa docs example and the rust spec_vectors comment. The old
ipa/banderwagon subdirectory was deleted in 5a1479b; banderwagon now
has a single canonical home at the top level of luxfi/crypto.

go.mod adds the indirect entries for go-verkle and go-ipa that the
rerouted test_helper graph now exercises. The luxfi-mirror replace
directives remain in place so all upstream go-ipa/go-verkle traffic
still flows through luxfi-maintained sources.

Build: go build ./... clean (one ld linker warning unrelated).
Tests: ./banderwagon/... ./ipa/... pass (7 ok, 2 no-test-files).

Pre-existing failure in ./verkle/ is unrelated: verkle_test.go
references BatchProof/VerifyBatch/ErrBatchLengthMismatch symbols that
were never implemented in the verkle package (separate gap, present on
main before this fix).
This commit is contained in:
Hanzo AI
2026-04-28 01:54:51 -07:00
parent a0cb110aca
commit a3dd3f991f
5 changed files with 6 additions and 4 deletions
+1 -1
View File
@@ -48,7 +48,7 @@ package main
import (
"fmt"
"github.com/luxfi/crypto/ipa/ipa"
"github.com/luxfi/crypto/ipa/banderwagon"
"github.com/luxfi/crypto/banderwagon"
"github.com/luxfi/crypto/ipa/bandersnatch/fr"
)
+2
View File
@@ -14,6 +14,7 @@ require (
github.com/decred/dcrd/dcrec/secp256k1/v4 v4.4.0
github.com/ethereum/c-kzg-4844/v2 v2.1.5
github.com/ethereum/go-bigmodexpfix v0.0.0-20250911101455-f9e208c548ab
github.com/ethereum/go-verkle v0.0.0-00010101000000-000000000000
github.com/google/btree v1.1.3
github.com/google/gofuzz v1.2.0
github.com/jedisct1/go-minisign v0.0.0-20241212093149-d2f9f49435c7
@@ -37,6 +38,7 @@ require (
require (
filippo.io/hpke v0.4.0 // indirect
github.com/bits-and-blooms/bitset v1.24.4 // indirect
github.com/crate-crypto/go-ipa v0.0.0-20240223125850-b1e8a79f509c // indirect
github.com/klauspost/cpuid/v2 v2.3.0 // indirect
github.com/luxfi/utils v1.1.0 // indirect
github.com/mattn/go-colorable v0.1.14 // indirect
+1 -1
View File
@@ -6,7 +6,7 @@ import (
"errors"
"fmt"
"github.com/luxfi/crypto/ipa/banderwagon"
"github.com/luxfi/crypto/banderwagon"
"github.com/luxfi/crypto/ipa/bandersnatch/fr"
"github.com/luxfi/crypto/ipa/common"
"github.com/luxfi/crypto/ipa/ipa"
+1 -1
View File
@@ -5,7 +5,7 @@ package multiproof
import (
"testing"
"github.com/luxfi/crypto/ipa/banderwagon"
"github.com/luxfi/crypto/banderwagon"
"github.com/luxfi/crypto/ipa/bandersnatch/fr"
"github.com/luxfi/crypto/ipa/common"
"github.com/luxfi/crypto/ipa/ipa"
@@ -3,7 +3,7 @@
//
// Banderwagon spec-vector integration test.
//
// Vectors are taken from luxfi/crypto/ipa/banderwagon/element_test.go
// Vectors are taken from luxfi/crypto/banderwagon/element_test.go
// (originally from crate-crypto/go-ipa, Apache-2.0). Each entry is the
// canonical 32-byte compressed encoding of `2^i * G` for i in 0..15.
// Reference output is byte-equal across go-ipa, gnark-crypto, and