diff options
| author | Adam Soltys <[email protected]> | 2026-06-15 17:00:47 +0000 |
|---|---|---|
| committer | Adam Soltys <[email protected]> | 2026-06-15 17:00:47 +0000 |
| commit | 9595de876df5264846227f6f80a7306df9154278 (patch) | |
| tree | a86d3ecd1289db95efccfa42dfa9efe3b4448429 | |
| parent | 7c34b4312c8aafc7643a5192d54daea14cfc1559 (diff) | |
| download | coinos-server-9595de876df5264846227f6f80a7306df9154278.tar.gz coinos-server-9595de876df5264846227f6f80a7306df9154278.zip | |
ark: skip refresh when ark unconfigured; document LN listener watchdog
Guard refreshArkWallet against running when config.ark.arkPrivateKey is
unset, and add a comment explaining the ensureListenerAlive watchdog's
zombie-socket recovery.
Co-Authored-By: Claude Opus 4.8 (1M context) <[email protected]>
| -rw-r--r-- | lib/ark.ts | 1 | ||||
| -rw-r--r-- | lib/lightning.ts | 3 |
2 files changed, 4 insertions, 0 deletions
@@ -59,6 +59,7 @@ const withTimeout = <T>(promise: Promise<T>, ms: number, label: string) => ]); export const refreshArkWallet = async (force = false) => { + if (!config.ark?.arkPrivateKey) return; // ark disabled const now = Date.now(); if (refreshing || (!force && now - lastRefresh < REFRESH_COOLDOWN)) return; try { diff --git a/lib/lightning.ts b/lib/lightning.ts index 9e259ed5..2f5f4f00 100644 --- a/lib/lightning.ts +++ b/lib/lightning.ts @@ -127,6 +127,9 @@ export async function listenForLightning() { } } +// Watchdog (run periodically): restart a dead listener, or recycle a zombie one +// that's been blocked in waitanyinvoice far past any normal quiet period while cl +// is actually alive (the dead-listen-socket case). export async function ensureListenerAlive() { if (!listenerActive) { warn("lightning listener: not active, restarting"); |
