I run a self-hosted archival node and an air-gapped Shamir tool btcguardianshq (vault.js, 3-of-5) for Bitcoin inheritance. Keys never touch the explorer node. Spending is meant to be watch-only + PSBT.
I am considering Miniscript so the on-chain rule is explicit and checkable, for example:
wsh(sortedmulti(2,key1,key2,key3))
or wsh(or_d(pk(user),and_v(v:pk(heir),after(T))))
The hoped-for benefits are: a policy heirs can read, Core can import as a descriptor, and a PSBT can spend without a custom script path that dies in ten years.
Before any mainnet coins: reconstruct the shares, derive the descriptor, import watch-only, spend on testnet.
If you have used Miniscript for this, which policy would you ship first, and which test would you not skip?











