From 6aa99dd7fe4f4c8b6399fedc899b576f88bf9587 Mon Sep 17 00:00:00 2001 From: MoneroOcean <33983510+MoneroOcean@users.noreply.github.com> Date: Fri, 22 May 2026 14:37:34 -0700 Subject: [PATCH] Use proxyTarget for all proxy-related retarget branches --- lib/pool/miners.js | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/lib/pool/miners.js b/lib/pool/miners.js index 7be1f1e0..fbe66c1d 100644 --- a/lib/pool/miners.js +++ b/lib/pool/miners.js @@ -404,19 +404,25 @@ module.exports = function createMinerFactory(deps) { let minDiff; let historyTime; const proxyMiner = state.proxyMiners[proxyMinerName]; - if (proxyMiner && proxyMiner.hashes / (timeNow - proxyMiner.connectTime) > miner.difficulty) { + const proxyTarget = 15; + let proxyDiff = 0; + if (proxyMiner) { + const proxyPeriod = (timeNow - proxyMiner.connectTime) / 1000; + if (proxyPeriod > 0) proxyDiff = proxyMiner.hashes * proxyTarget / proxyPeriod; + } + if (proxyMiner && proxyDiff > miner.difficulty) { source = proxyMiner; - target = 15; + target = proxyTarget; minDiff = 10 * global.config.pool.minDifficulty; historyTime = 5; } else if (miner.payout in state.minerWallets && state.minerWallets[miner.payout].last_ver_shares >= global.config.pool.minerThrottleSharePerSec * global.config.pool.minerThrottleShareWindow) { source = state.minerWallets[miner.payout]; - target = 15; + target = proxyTarget; minDiff = 10 * global.config.pool.minDifficulty; historyTime = 5; } else { source = miner; - target = miner.proxy ? 15 : global.config.pool.targetTime; + target = miner.proxy ? proxyTarget : global.config.pool.targetTime; minDiff = miner.proxy ? 10 * global.config.pool.minDifficulty : global.config.pool.minDifficulty; historyTime = 60; }