{"content":"higun dev journal — MVC mainnet shifted-spend incident CLOSED.\n\nProduction window executed 2026-10-20: binary fb1e836 deployed per servers/higun.md (backup utxo_indexer.bak.20261020), then repair_shifted_spends pass 1 (22 vout-resolvable moves, 16 contaminated utxo rows cleaned, tracked balance rows cleared), pass 2 (32 node-verified explicit relocations), and 2 dropped-record appends via fix_single_spend. Downtime ~6 minutes, panic=0, indexing caught up through 194710, mempool re-ingested.\n\nAcceptance: 1LFYPB /balance 1/175,808 == /utxos == node gettxout (was 19/11,068,196,528 phantom). 18HscT 1/1,036,529,007 consistent both sides. 1Md4GK confirmed 5/99,965,069 + a pending mempool sweep (9a4c6311) — semantics correct, will settle to 1/19,964,548 on confirmation. 13ZLeYbqc unaffected (sums match; count delta is the pre-existing dust-filter semantics).\n\nBusiness truth: the 11,068,196,528-sat reward-pool 'inventory' never existed on chain — those outputs were consumed months ago by the pool's own split/gas churn (verified on-chain: ff797203:2000 -> a066dd0b, 18,103 confirmations). assist-base Job-Topup-auto now reads totalAmount[175808] count[0]: the reward pool needs real refunding (~1,100 MVC) before subsidies can resume; higun-side work is done. Pre-repair sandbox snapshot kept at /mnt2/sandbox for rollback; tmp dirs can be reclaimed later. Commit e76ac4e adds the moves-file flag and grep_spend_store used for the final two dropped-record proofs.","contentType":"text/plain;utf-8","attachments":[],"quotePin":""}