Files
zeekay 9e49c5c602 warp-relayer: clean-room scaffold (Lux Ecosystem License v1.2)
Lux-native off-chain courier for cross-chain warp messages between
Lux-derived L1s. Asset-bridge teleport only — NOT for validator-set
management (Lux-derived L1s like  manage their validator
set in plain on-chain registry contracts on the same chain, no
courier needed).

Status: scaffold only. Subscriber / aggregator / broadcaster packages
are stubs documenting the intended layout. Real implementation lands
in follow-up commits as the first bridge consumer (likely ICTT
TokenHome/TokenRemote) comes online.

Why a new repo:
  ava-labs/awm-relayer is the obvious upstream reference but its
  Ecosystem License v1.1 restricts use to the Avalanche Public
  Blockchain platform (NetworkID 1 / 5) or non-commercial — fully
  incompatible with commercial Lux-derived L1s. We cannot fork it.
  Clean-room under Lux Ecosystem License v1.2 instead.

Authorized networks per LICENSE § 2(d): any L1/L2/L3 descending from
the Lux Primary Network. Covers , Hanzo, Zoo, Pars, etc.

Trust model: relayer holds NO trust beyond gas payment. Forgery
requires the BLS aggregate, which requires the source L1 validators'
actual sigs — relayer can only pass through what validators sign.

Gas-payer key MUST come from Lux KMS via AccountKeyRef — plaintext
private-key fields intentionally absent from the config schema.

Skeleton layout:
  cmd/warp-relayer/        entry point + flag parsing
  relayer/config/          per-source + per-destination config schema
  relayer/subscriber/      source-L1 event tail (websocket)
  relayer/aggregator/      BLS share collection + aggregation
  relayer/broadcaster/     destination-L1 tx builder + submitter

Composes against luxfi/warp for wire format + crypto primitives;
luxfi/kms for the gas-payer key.

go build ./... clean
go vet ./...   clean
2026-05-30 20:03:15 -07:00

16 lines
519 B
Go

// SPDX-License-Identifier: Lux-Ecosystem-1.2
// Copyright (c) 2020-2025 Lux Industries Inc.
// Package broadcaster builds + submits the destination L1 tx that
// includes the aggregated warp message in its access list, so the
// destination's getVerifiedWarpMessage precompile returns valid=true.
//
// Status: scaffold. Real builder + signer + submitter logic lands in
// follow-up commits.
package broadcaster
// Broadcaster submits to one destination L1.
type Broadcaster struct {
// Fields land in follow-up.
}