Files
zeekayandHanzo Dev 01d52f0aec
Hanzo CI/CD / cicd (push) Failing after 54m52s
CI/CD / cicd (push) Failing after 54m52s
Declare operations on the group that serves them
zip's registration is a verb method on the group, so an operation reads as the
group answering it rather than a function taking the group, and a route that is
not a typed operation says which method it answers with. The package-level form
and the Router interface it existed to accept any target through are both gone.

The toolchain and the pin move together, deliberately. Below zip v1.36.50 the
JSON encoder was selected on a build tag, so a repo whose go directive rises
first writes a wire that is neither the old release's nor the new one's until the
pin catches up.

Co-authored-by: Hanzo Dev <[email protected]>
2026-09-17 06:03:33 -07:00

119 lines
5.1 KiB
AMPL

module github.com/hanzoai/kms
// Hanzo KMS is a thin wrapper over the canonical luxfi/kms implementation.
// All server logic lives in github.com/luxfi/kms. This module provides:
// - cmd/kmsd : daemon with Hanzo defaults (port 8443, /data/hanzo-kms, branding)
// - cmd/kms : admin CLI (uses pkg/kmsclient)
// - pkg/kmsclient : Go client library used by other Hanzo services
//
// Wire-compatible with luxfi clients on both HTTP (/v1/kms/*) and ZAP
// (opcodes 0x0040..0x0043).
go 1.27.1
// luxfi/keys + luxfi/kms drive the consensus-native ZAP secret surface.
// Threshold signing is delegated over ZAP to an external luxfi/mpc daemon
// (cfg.MPCAddr / MPCVaultID); this module links luxfi/kms's pkg/mpc client
// only — never the standalone luxfi/mpc daemon module. Versions live in the
// require block below (single source of truth).
require (
github.com/golang-jwt/jwt/v5 v5.3.1
github.com/hanzoai/kms/sdk/go v1.1.6
github.com/luxfi/crypto v1.20.5
github.com/luxfi/ids v1.3.2
github.com/luxfi/kms v1.12.26
github.com/luxfi/log v1.4.3
github.com/luxfi/trace v1.3.0
github.com/luxfi/zap v1.2.7
github.com/luxfi/zapdb v1.10.6
github.com/zap-proto/zip v1.37.3
)
require (
filippo.io/hpke v0.4.0 // indirect
github.com/andybalholm/brotli v1.2.1 // indirect
github.com/btcsuite/btcd/btcutil v1.1.6 // indirect
github.com/cenkalti/backoff v2.2.1+incompatible // indirect
github.com/cespare/xxhash/v2 v2.3.0 // indirect
github.com/cloudflare/circl v1.6.3 // indirect
github.com/decred/dcrd/dcrec/secp256k1/v4 v4.4.1 // indirect
github.com/dgraph-io/ristretto/v2 v2.4.0 // indirect
github.com/dustin/go-humanize v1.0.1 // 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/gofiber/schema v1.7.1 // indirect
github.com/gofiber/utils/v2 v2.0.4 // indirect
github.com/google/flatbuffers v25.12.19+incompatible // indirect
github.com/google/uuid v1.6.0 // indirect
github.com/gorilla/rpc v1.2.1 // indirect
github.com/grandcat/zeroconf v1.0.0 // indirect
github.com/hanzos3/crc64nvme v1.1.2 // indirect
github.com/hanzos3/go v1.0.2 // indirect
github.com/hanzos3/md5-simd v1.1.3 // indirect
github.com/holiman/uint256 v1.3.2 // indirect
github.com/klauspost/compress v1.18.6 // indirect
github.com/klauspost/cpuid/v2 v2.3.0 // indirect
github.com/klauspost/crc32 v1.3.0 // indirect
github.com/luxfi/accel v1.2.4 // indirect
github.com/luxfi/address v1.1.1 // indirect
github.com/luxfi/age v1.6.0 // indirect
github.com/luxfi/cache v1.3.1 // indirect
github.com/luxfi/constants v1.6.2 // indirect
github.com/luxfi/container v0.2.2 // indirect
github.com/luxfi/geth v1.20.2 // indirect
github.com/luxfi/go-bip32 v1.1.0 // indirect
github.com/luxfi/go-bip39 v1.2.0 // indirect
github.com/luxfi/keys v1.4.2 // indirect
github.com/luxfi/math v1.5.1 // indirect
github.com/luxfi/math/big v0.1.0 // indirect
github.com/luxfi/mdns v0.1.1 // indirect
github.com/luxfi/metric v1.10.0 // indirect
github.com/luxfi/mock v0.1.1 // indirect
github.com/luxfi/sampler v1.1.0 // indirect
github.com/luxfi/tls v1.1.1 // indirect
github.com/mattn/go-colorable v0.1.15 // indirect
github.com/mattn/go-isatty v0.0.22 // indirect
github.com/miekg/dns v1.1.72 // indirect
github.com/mr-tron/base58 v1.3.0 // indirect
github.com/philhofer/fwd v1.2.0 // indirect
github.com/rs/xid v1.6.0 // indirect
github.com/supranational/blst v0.3.16 // 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
github.com/zap-proto/fiber/v3 v3.2.1 // indirect
github.com/zap-proto/go v1.8.3 // indirect
github.com/zap-proto/http v0.3.9 // indirect
github.com/zap-proto/mcp v1.0.5 // indirect
go.opentelemetry.io/auto/sdk v1.2.1 // indirect
go.opentelemetry.io/otel v1.44.0 // indirect
go.opentelemetry.io/otel/metric v1.44.0 // indirect
go.opentelemetry.io/otel/sdk v1.44.0 // indirect
go.opentelemetry.io/otel/trace v1.44.0 // indirect
go.uber.org/mock v0.6.0 // indirect
go.yaml.in/yaml/v3 v3.0.4 // indirect
golang.org/x/crypto v0.52.0 // indirect
golang.org/x/exp v0.0.0-20260529124908-c761662dc8c9 // indirect
golang.org/x/mod v0.36.0 // indirect
golang.org/x/net v0.55.0 // indirect
golang.org/x/sync v0.20.0 // indirect
golang.org/x/sys v0.45.0 // indirect
golang.org/x/text v0.37.0 // indirect
golang.org/x/tools v0.45.0 // indirect
gonum.org/v1/gonum v0.17.0 // indirect
google.golang.org/protobuf v1.36.11 // indirect
gopkg.in/natefinch/lumberjack.v2 v2.2.1 // indirect
)
// The kmsclient library lives in this repo (sdk/go) and is released together
// with the server. Build the in-tree copy so cmd/kms and cmd/kms-fetch pick up
// the fix that sends env explicitly on the HTTP path (see sdk/go/kmsclient).
// The require above stays at the last published tag so dropping this replace
// falls back to a real version, never a missing one; publish the sdk/go tag and
// bump the require when cutting the next SDK release. It is v1.1.6 here because
// custody imports sdk/go/node, which first appears in that tag.
replace github.com/hanzoai/kms/sdk/go => ./sdk/go
exclude github.com/luxfi/genesis v1.5.21