diff options
| author | Adam Soltys <[email protected]> | 2026-08-18 16:27:56 -0700 |
|---|---|---|
| committer | Adam Soltys <[email protected]> | 2026-08-18 16:27:56 -0700 |
| commit | ecf7da305d56cee8a8d2306ca7fa5dad4b2f0c39 (patch) | |
| tree | bafe19ba0d4f06124495266f2d05de56dd9246bc /src/features/ark.js | |
| parent | 1d21e3b9546496a4eccf8ec9ec45934999e07fd8 (diff) | |
| download | coinosv3-ecf7da305d56cee8a8d2306ca7fa5dad4b2f0c39.tar.gz coinosv3-ecf7da305d56cee8a8d2306ca7fa5dad4b2f0c39.zip | |
A refresh learns to let go: a participation rejected for unusable inputs asks the server which coins died and rebuilds around the survivors instead of resubmitting the doomed set every sync forever; the balance reconciles on a ten-minute cadence so ghosts can't pose as sats; and arkRescue() reclaims a round output whose action a device lost
Co-Authored-By: Claude Fable 5 <[email protected]>
Claude-Session: https://claude.ai/code/session_012u4oe1KPx9faCsDBLfZYqi
Diffstat (limited to 'src/features/ark.js')
| -rw-r--r-- | src/features/ark.js | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/src/features/ark.js b/src/features/ark.js index 66e4e44..30b167a 100644 --- a/src/features/ark.js +++ b/src/features/ark.js @@ -308,6 +308,16 @@ export function arkFeature(ctx) { initArk(); } + // Operator console rescue for a round participation stranded server-side + // 'unclaimed' (its action lost client-side): arkRescue('<unlockHash>', + // ['<vtxoId>', ...]) from devtools, ids supplied from the server's DB. + if (typeof globalThis !== 'undefined') { + globalThis.arkRescue = async (unlockHash, inputIds) => { + const mgr = await connectArk(); + return mgr.rescueParticipation(unlockHash, inputIds); + }; + } + function connectArk() { if (ark) return Promise.resolve(ark); if (arkConnectPromise) return arkConnectPromise; |
