Skip to content

Commit f3c6f09

Browse files
committed
Skip 1DEV burn verification for genesis bootstrap nodes
1 parent 814eed6 commit f3c6f09

1 file changed

Lines changed: 16 additions & 4 deletions

File tree

development/qnet-integration/src/bin/qnet-node.rs

Lines changed: 16 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -426,11 +426,13 @@ async fn validate_activation_code_comprehensive(
426426
}
427427
}
428428

429-
// 6. Burn verification for production
430-
if std::env::var("QNET_PRODUCTION").unwrap_or_default() == "1" {
429+
// 6. Burn verification for production (skip for genesis nodes)
430+
if std::env::var("QNET_PRODUCTION").unwrap_or_default() == "1" && !is_genesis_bootstrap_node() {
431431
if let Err(e) = verify_activation_burn(code, &node_type).await {
432432
return Err(format!("Burn verification failed: {}", e));
433433
}
434+
} else if is_genesis_bootstrap_node() {
435+
println!("🚀 Genesis node - skipping burn verification");
434436
}
435437

436438
println!("✅ All activation code validations passed");
@@ -1938,9 +1940,11 @@ async fn main() -> Result<(), Box<dyn std::error::Error>> {
19381940
println!(" 🔐 Using quantum-secure activation codes with permanent validity");
19391941
println!(" 🛡️ Light node blocking: Enforced on server hardware");
19401942

1941-
// Verify 1DEV burn if required for production
1942-
if std::env::var("QNET_PRODUCTION").unwrap_or_default() == "1" {
1943+
// Verify 1DEV burn if required for production (skip for genesis nodes)
1944+
if std::env::var("QNET_PRODUCTION").unwrap_or_default() == "1" && !is_genesis_bootstrap_node() {
19431945
verify_1dev_burn(&node_type).await?;
1946+
} else if is_genesis_bootstrap_node() {
1947+
println!("🚀 Genesis bootstrap node - skipping 1DEV burn verification for production startup");
19441948
}
19451949

19461950
// Create blockchain node with production optimizations
@@ -2620,6 +2624,14 @@ fn display_node_config(config: &AutoConfig, node_type: &NodeType, region: &Regio
26202624
}
26212625

26222626
async fn verify_1dev_burn(node_type: &NodeType) -> Result<(), String> {
2627+
// GENESIS NODES: Skip burn verification for bootstrap nodes
2628+
if is_genesis_bootstrap_node() {
2629+
println!("🚀 Genesis bootstrap node detected - skipping 1DEV burn verification");
2630+
println!(" [GENESIS] Bootstrap nodes don't require burn transactions");
2631+
println!(" [NETWORK] Initializing new blockchain network");
2632+
return Ok(());
2633+
}
2634+
26232635
// Production 1DEV burn verification - Universal pricing for all node types
26242636
let required_burn = match node_type {
26252637
NodeType::Light => 1500.0,

0 commit comments

Comments
 (0)