Files
AetherForge/agent/deploy/fleet_torrent_seeder.go
AetherForge 894b7a50ae
Some checks failed
CI Docker Mining Proof / Linux agent hashrate proof (push) Has been cancelled
Add Fleet Torrent erasure extension with shard DHT and gossip.
Content-addressed shard DHT on seeder agents with subnet_primary_seeder election, cross-subnet fleet_torrent_gossip, BGP swarm magnets, C2 torrent manifest, and k-of-n peer fetch with C2 fallback.
2026-06-07 09:24:55 -07:00

33 lines
885 B
Go

package deploy
import (
"log"
"crypto-miner-agent/config"
)
var fleetTorrentGossipFn func([]FleetGossipRecord)
// SetFleetTorrentGossipFn injects WS gossip broadcast for seeder shard fan-out (client wires at runtime).
func SetFleetTorrentGossipFn(fn func([]FleetGossipRecord)) {
fleetTorrentGossipFn = fn
}
// StartFleetTorrentSeederService announces healthy status and enables zero-server reconnect for seeders.
func StartFleetTorrentSeederService(cfg config.RuntimeConfig) {
if !config.FleetTorrentEnabled(cfg) {
return
}
log.Printf("[fleet-torrent] seeder service active primary=%v", cfg.SubnetPrimarySeeder)
if fleetTorrentGossipFn != nil {
fleetTorrentGossipFn([]FleetGossipRecord{{
Kind: FleetGossipHealthy,
Healthy: true,
}})
}
StartZeroServerReconnect(func() error {
log.Printf("[fleet-torrent] zero-server reconnect attempt")
return nil
})
}