{
  "founder": "meshcollider",
  "channel": "#bitcoin-core-dev",
  "network": "freenode",
  "id": "e961ad6ba2214a3abc05563f1a2cfc8c",
  "name": "#bitcoin-core-dev",
  "chair": "meshcollider",
  "chairs": [
    "meshcollider"
  ],
  "nicks": {
    "meshcollider": 23,
    "lightningbot": 2,
    "BlueMatt": 4,
    "achow101": 43,
    "sipa": 36,
    "luke-jr": 46,
    "gribble": 1,
    "jonatack": 1
  },
  "start_time": "2020-07-03T19:00:31+00:00",
  "end_time": "2020-07-03T19:47:02+00:00",
  "active": false,
  "original_topic": "Bitcoin Core development discussion and commit log | This is the channel for developing Bitcoin Core. Feel free to watch, but please take commentary and usage questions to #bitcoin | Channel logs: http://www.erisian.com.au/bitcoin-core-dev/, http://gnusha.org/bitcoin-core-dev/ | Meeting topics https://gist.github.com/moneyball/071d608fdae217c2a6d7c35955881d8a",
  "current_topic": "legacy to descriptor wallet migration (achow101)",
  "messages": [
    {
      "id": "f95d128972c546788fc4725626edbf44",
      "sender": "meshcollider",
      "payload": "#startmeeting",
      "action": false,
      "timestamp": "2020-07-03T19:00:31+00:00"
    },
    {
      "id": "2c22ae84895347d9b98027625cd02248",
      "sender": "lightningbot",
      "payload": "Meeting started Fri Jul  3 19:00:31 2020 UTC.  The chair is meshcollider. Information about MeetBot at http://wiki.debian.org/MeetBot.",
      "action": false,
      "timestamp": "2020-07-03T19:00:31+00:00"
    },
    {
      "id": "435a82a11671485bbcc8905eaeb6b1cd",
      "sender": "lightningbot",
      "payload": "Useful Commands: #action #agreed #help #info #idea #link #topic.",
      "action": false,
      "timestamp": "2020-07-03T19:00:31+00:00"
    },
    {
      "id": "70a266a99ce3413f9aeba1d4b82ecd10",
      "sender": "meshcollider",
      "payload": "#bitcoin-core-dev Wallet Meeting: wumpus sipa gmaxwell jonasschnelli morcos luke-jr sdaftuar jtimon cfields petertodd kanzure bluematt instagibbs phantomcircuit codeshark michagogo marcofalke paveljanik NicolasDorier jl2012 achow101 meshcollider jnewbery maaku fanquake promag provoostenator aj Chris_Stewart_5 dongcarl gwillen jamesob ken281221 ryanofsky gleb moneyball ariard digi_james amiti fjahr",
      "action": false,
      "timestamp": "2020-07-03T19:00:36+00:00"
    },
    {
      "id": "69ace1ddd36d4b1bb35f5df24b2917ad",
      "sender": "meshcollider",
      "payload": "jeremyrubin emilengler jonatack hebasto jb55",
      "action": false,
      "timestamp": "2020-07-03T19:00:36+00:00"
    },
    {
      "id": "77c5b586705f40d29194725388157fae",
      "sender": "BlueMatt",
      "payload": "sipa: yes, afaict, once you 'find them' you're good, but essentially its super, super, super difficult to find onions from square 1",
      "action": false,
      "timestamp": "2020-07-03T19:00:41+00:00"
    },
    {
      "id": "1a5c2cc2258545b1a044f8c96bd51d94",
      "sender": "achow101",
      "payload": "hi",
      "action": false,
      "timestamp": "2020-07-03T19:00:45+00:00"
    },
    {
      "id": "9320ea78547e4ef1b53c6019ac7647be",
      "sender": "sipa",
      "payload": "BlueMatt: they only really propagate through onion-enabled peers",
      "action": false,
      "timestamp": "2020-07-03T19:01:04+00:00"
    },
    {
      "id": "3bc87faa21324deb81903aee58215a96",
      "sender": "BlueMatt",
      "payload": "(presumably because they dont relay between non-onion peers nearly at all, and unless you are onion-only you'll be largely blind)",
      "action": false,
      "timestamp": "2020-07-03T19:01:07+00:00"
    },
    {
      "id": "b7a09194e5a74f069b46e179808f54ac",
      "sender": "meshcollider",
      "payload": "Now, I know luke-jr still has a proposed topic, were there any more?",
      "action": false,
      "timestamp": "2020-07-03T19:01:10+00:00"
    },
    {
      "id": "d3cbfd2773794fc8b4ac1449159ed6f7",
      "sender": "BlueMatt",
      "payload": "right, but my observations seem to indicate that you almost have to be onion-only, or at least connect to onion only to learn any, really",
      "action": false,
      "timestamp": "2020-07-03T19:01:36+00:00"
    },
    {
      "id": "93f5f613902b457db6ec6c31b9e66d5d",
      "sender": "BlueMatt",
      "payload": "all anecdotal, of course",
      "action": false,
      "timestamp": "2020-07-03T19:01:50+00:00"
    },
    {
      "id": "88e3e3472275401389ba8b60079dbb73",
      "sender": "achow101",
      "payload": "is it too early to discuss deprecating and removing the legacy wallet?",
      "action": false,
      "timestamp": "2020-07-03T19:02:02+00:00"
    },
    {
      "id": "b7593d28e46a4891ab5324cdeb4a932a",
      "sender": "meshcollider",
      "payload": "Yes :p",
      "action": false,
      "timestamp": "2020-07-03T19:02:10+00:00"
    },
    {
      "id": "f48154a359c6476cab8d37596233f70b",
      "sender": "sipa",
      "payload": "achow101: yes",
      "action": false,
      "timestamp": "2020-07-03T19:02:13+00:00"
    },
    {
      "id": "e09057a8acdc486f89b945e8f9cac532",
      "sender": "meshcollider",
      "payload": "Try again in v0.27",
      "action": false,
      "timestamp": "2020-07-03T19:02:58+00:00"
    },
    {
      "id": "a1f021143d3c412ab6ccf878ffbad655",
      "sender": "achow101",
      "payload": "i'll try again next year",
      "action": false,
      "timestamp": "2020-07-03T19:03:30+00:00"
    },
    {
      "id": "ac628ecd45044c4289c2553b34e22ddf",
      "sender": "meshcollider",
      "payload": "Is luke-jr here this time for his topic",
      "action": false,
      "timestamp": "2020-07-03T19:03:44+00:00"
    },
    {
      "id": "bbf24a032bd04a36b2612b6c409c5300",
      "sender": "meshcollider",
      "payload": "I guess not",
      "action": false,
      "timestamp": "2020-07-03T19:04:39+00:00"
    },
    {
      "id": "17d0625558394d0288b8e1fe0b1d878f",
      "sender": "achow101",
      "payload": "maybe if we say luke-jr enough times he'll show up",
      "action": false,
      "timestamp": "2020-07-03T19:04:56+00:00"
    },
    {
      "id": "e9160e413a384861a2900356ed4b8779",
      "sender": "sipa",
      "payload": "tonal tonal tonal",
      "action": false,
      "timestamp": "2020-07-03T19:05:08+00:00"
    },
    {
      "id": "be665029b2134cf58b443dd442a39953",
      "sender": "meshcollider",
      "payload": "Alright, short meeting again then :)",
      "action": false,
      "timestamp": "2020-07-03T19:05:52+00:00"
    },
    {
      "id": "6df46a389d684f109c136eb7af85ecd8",
      "sender": "luke-jr",
      "payload": "achow101 must be joking",
      "action": false,
      "timestamp": "2020-07-03T19:05:55+00:00"
    },
    {
      "id": "c80f1d1c13ab4f0091685a09d7572dcb",
      "sender": "luke-jr",
      "payload": "I need a reminder what my topic is :D",
      "action": false,
      "timestamp": "2020-07-03T19:06:11+00:00"
    },
    {
      "id": "3f51394283a544e88852c2a1a1222b1b",
      "sender": "luke-jr",
      "payload": "\u00c3\u00a2\u00c2\u0080\u00c2\u00a6",
      "action": false,
      "timestamp": "2020-07-03T19:06:12+00:00"
    },
    {
      "id": "1641a5c1cea64ea582d6f22ad7d53f50",
      "sender": "luke-jr",
      "payload": "is my IRC broken?",
      "action": false,
      "timestamp": "2020-07-03T19:06:14+00:00"
    },
    {
      "id": "61709e27b781411faaed8a0ed9debc66",
      "sender": "achow101",
      "payload": "luke-jr: not anymore",
      "action": false,
      "timestamp": "2020-07-03T19:06:19+00:00"
    },
    {
      "id": "2b6868cf824c4f7aab0827f240e9dc37",
      "sender": "sipa",
      "payload": "we can read you",
      "action": false,
      "timestamp": "2020-07-03T19:06:23+00:00"
    },
    {
      "id": "bd7ef085d6bd4c68bae4e65f92b424dc",
      "sender": "achow101",
      "payload": "2020-06-17.log:12:15 < luke-jr> #proposedwalletmeetingtopic revert #6550 (conceptually) - merkle branches stored in the wallet would be useful for pruned nodes [w/ watch-only wallets]",
      "action": false,
      "timestamp": "2020-07-03T19:06:27+00:00"
    },
    {
      "id": "382eaae37a264139a4bf8ad0d5cde97d",
      "sender": "gribble",
      "payload": "https://github.com/bitcoin/bitcoin/issues/6550 | Do not store Merkle branches in the wallet. by sipa \u00c3\u0082\u00c2\u00b7 Pull Request #6550 \u00c3\u0082\u00c2\u00b7 bitcoin/bitcoin \u00c3\u0082\u00c2\u00b7 GitHub",
      "action": false,
      "timestamp": "2020-07-03T19:06:31+00:00"
    },
    {
      "id": "04f858936994445681443cda1c18781d",
      "sender": "luke-jr",
      "payload": "ah right",
      "action": false,
      "timestamp": "2020-07-03T19:06:58+00:00"
    },
    {
      "id": "5989dc7eff9346d086b172100cb55d64",
      "sender": "luke-jr",
      "payload": "apparently Electrum-Personal-Server and similar projects could really use those merkle branches",
      "action": false,
      "timestamp": "2020-07-03T19:07:14+00:00"
    },
    {
      "id": "b23c93d2a0c44835949bb33f387a62aa",
      "sender": "meshcollider",
      "payload": "#topic Merkle branches stored in wallet (luke-jr)",
      "action": false,
      "timestamp": "2020-07-03T19:07:41+00:00"
    },
    {
      "id": "ab48d8a0ca084c0c90db969f8cb7fea1",
      "sender": "luke-jr",
      "payload": "sipa: what was the motivation for removing them? is it okay to add them back?",
      "action": false,
      "timestamp": "2020-07-03T19:08:17+00:00"
    },
    {
      "id": "084d223820e24f49aa53b6044c8d507c",
      "sender": "achow101",
      "payload": "I can see the case for wanting these for pruned wallets in general",
      "action": false,
      "timestamp": "2020-07-03T19:08:18+00:00"
    },
    {
      "id": "19e8c6fa03294ba790439faa676e3473",
      "sender": "achow101",
      "payload": "it seems like the original motivation was that they were useless",
      "action": false,
      "timestamp": "2020-07-03T19:08:36+00:00"
    },
    {
      "id": "9f7ef9822b5c4c1a88c572ff598550c9",
      "sender": "sipa",
      "payload": "luke-jr: they were just not used by anything at the time",
      "action": false,
      "timestamp": "2020-07-03T19:08:36+00:00"
    },
    {
      "id": "5d3581c011f64b5f84c0cd25f86739cf",
      "sender": "sipa",
      "payload": "no objection to adding them back if that is no longer the case",
      "action": false,
      "timestamp": "2020-07-03T19:08:49+00:00"
    },
    {
      "id": "fe15bc41a486434599b8aa542e1ad108",
      "sender": "luke-jr",
      "payload": "should we bother to try to make it compatible with the old thing?",
      "action": false,
      "timestamp": "2020-07-03T19:09:21+00:00"
    },
    {
      "id": "80df8893dd0c4f768df0c9ce9d3bdb3d",
      "sender": "sipa",
      "payload": "vaguely related: we should also store the network fee for wallet transactions",
      "action": false,
      "timestamp": "2020-07-03T19:09:24+00:00"
    },
    {
      "id": "260982e65f1c4f94a157b02d1f1ec314",
      "sender": "sipa",
      "payload": "i don't think so",
      "action": false,
      "timestamp": "2020-07-03T19:09:30+00:00"
    },
    {
      "id": "7622510e5ac14c7b8d7a1f57937fd85f",
      "sender": "achow101",
      "payload": "i would prefer to be wholly new",
      "action": false,
      "timestamp": "2020-07-03T19:09:46+00:00"
    },
    {
      "id": "c211a833621240de927de171e0076448",
      "sender": "achow101",
      "payload": "less headaches with possible compatibility states",
      "action": false,
      "timestamp": "2020-07-03T19:09:59+00:00"
    },
    {
      "id": "f1036aa3a08b4628af4504234cad143d",
      "sender": "luke-jr",
      "payload": "k",
      "action": false,
      "timestamp": "2020-07-03T19:10:10+00:00"
    },
    {
      "id": "7ff8b44ef7d64da4ac2fd9094fbfd125",
      "sender": "luke-jr",
      "payload": "what to do with wallets missing the info?",
      "action": false,
      "timestamp": "2020-07-03T19:10:27+00:00"
    },
    {
      "id": "cbd31fff194746aaa10f67ac49e51bca",
      "sender": "sipa",
      "payload": "a rescan will fix it",
      "action": false,
      "timestamp": "2020-07-03T19:10:41+00:00"
    },
    {
      "id": "5ba13449e71c4649bdd5bc6d5fb540e2",
      "sender": "luke-jr",
      "payload": "but pruned wallets can't rescan necessarily",
      "action": false,
      "timestamp": "2020-07-03T19:11:00+00:00"
    },
    {
      "id": "e88b291dce5e4a9f8add20f7779dac7d",
      "sender": "luke-jr",
      "payload": "and this is mainly for them..",
      "action": false,
      "timestamp": "2020-07-03T19:11:03+00:00"
    },
    {
      "id": "dd240e6ae8224c03ae3725d0afea680b",
      "sender": "achow101",
      "payload": "for not pruned wallets, it's easy to compute",
      "action": false,
      "timestamp": "2020-07-03T19:11:12+00:00"
    },
    {
      "id": "24579df9b3c54702a744cb878fbe4ff4",
      "sender": "sipa",
      "payload": "well if the data isn't there, there is nothing we can do",
      "action": false,
      "timestamp": "2020-07-03T19:11:25+00:00"
    },
    {
      "id": "7fddf05c50c644e7be19b054a69c608a",
      "sender": "achow101",
      "payload": "i suppose a related feature would be the fetching of individual blocks over p2p for pruned nodes",
      "action": false,
      "timestamp": "2020-07-03T19:11:57+00:00"
    },
    {
      "id": "b7fb133049e64bd48cfc287ccb1fa968",
      "sender": "luke-jr",
      "payload": "so maybe just omit it in RPC requests for txs missing it?",
      "action": false,
      "timestamp": "2020-07-03T19:12:00+00:00"
    },
    {
      "id": "1bc1f8bed8594e5d90acad13ef936f8f",
      "sender": "sipa",
      "payload": "achow101: ah the perennial feature request",
      "action": false,
      "timestamp": "2020-07-03T19:12:11+00:00"
    },
    {
      "id": "fdb0492c42904e80a8534f1097fe6890",
      "sender": "luke-jr",
      "payload": "should it be an optional wallet feature?",
      "action": false,
      "timestamp": "2020-07-03T19:12:12+00:00"
    },
    {
      "id": "0183b1b849df4961a0273cca0dffe774",
      "sender": "luke-jr",
      "payload": "achow101: hmm, I suppose if we know the height it's possible, but seems complex",
      "action": false,
      "timestamp": "2020-07-03T19:12:38+00:00"
    },
    {
      "id": "0e1268c97f5c4f6290110c456d62bcb1",
      "sender": "luke-jr",
      "payload": "and even if we get that, there's a period of time before the request is fulfilled",
      "action": false,
      "timestamp": "2020-07-03T19:12:59+00:00"
    },
    {
      "id": "e68a6e5150214a30878027d5c6e7040e",
      "sender": "achow101",
      "payload": "luke-jr: I think we know the hash",
      "action": false,
      "timestamp": "2020-07-03T19:13:00+00:00"
    },
    {
      "id": "4b86fc9e56374b7eabe49561a1fb7097",
      "sender": "sipa",
      "payload": "that's not enough to fetch it",
      "action": false,
      "timestamp": "2020-07-03T19:13:26+00:00"
    },
    {
      "id": "10f6d810c4ef44328904a9a2700eeffb",
      "sender": "luke-jr",
      "payload": "there's no way to get just the merkle tree I suspect",
      "action": false,
      "timestamp": "2020-07-03T19:14:33+00:00"
    },
    {
      "id": "bafe855b43604bf5bf9305c9a3fa1bec",
      "sender": "luke-jr",
      "payload": "bloom would get us exactly what we need, but has privacy problems",
      "action": false,
      "timestamp": "2020-07-03T19:14:43+00:00"
    },
    {
      "id": "029d00295ece420a92080fa1fa0ccef8",
      "sender": "luke-jr",
      "payload": "in any case, I suspect all such fetching can be a later PR - it doesn't simplify the upfront feature",
      "action": false,
      "timestamp": "2020-07-03T19:15:00+00:00"
    },
    {
      "id": "ceec262bb6864a95ab3b4974401a8012",
      "sender": "achow101",
      "payload": "it can just be one of those features that we do from now on and for old wallets that we can get the merkle branch for",
      "action": false,
      "timestamp": "2020-07-03T19:15:41+00:00"
    },
    {
      "id": "5d312beaf9c04c34845817af3169ce47",
      "sender": "achow101",
      "payload": "but for pruned nodes where those blocks have already been disarded, they're SOL",
      "action": false,
      "timestamp": "2020-07-03T19:16:12+00:00"
    },
    {
      "id": "06989255e7c149d6b835087a6cc480f3",
      "sender": "luke-jr",
      "payload": "achow101: I thought we weren't going to try to be compatible? besides, I think 0.12+ deleted that info even in old wallets?",
      "action": false,
      "timestamp": "2020-07-03T19:16:21+00:00"
    },
    {
      "id": "7f7f150084384d0f8dbf253b84ad40f2",
      "sender": "achow101",
      "payload": "luke-jr: if you're adding a new record, it'll still be openable in old wallets, just not useful data",
      "action": false,
      "timestamp": "2020-07-03T19:16:50+00:00"
    },
    {
      "id": "a72a13010be7471295130df6afd4e7f4",
      "sender": "luke-jr",
      "payload": "wonders if we should have a pruning setting to never discard blocks your wallet is involved in",
      "action": true,
      "timestamp": "2020-07-03T19:17:03+00:00"
    },
    {
      "id": "9b41a4f4359f4ca6b71633d1a1aefe82",
      "sender": "achow101",
      "payload": "so it's not a version bump or an incompatible wallet flag",
      "action": false,
      "timestamp": "2020-07-03T19:17:05+00:00"
    },
    {
      "id": "23290a6041f347be87166362431b5316",
      "sender": "luke-jr",
      "payload": "achow101: oh, I misunderstood \"old wallets that we can get the merkle branch for\"",
      "action": false,
      "timestamp": "2020-07-03T19:17:41+00:00"
    },
    {
      "id": "5d44228a89704ff8b635c8bcd6d101df",
      "sender": "jonatack",
      "payload": "hi",
      "action": false,
      "timestamp": "2020-07-03T19:17:44+00:00"
    },
    {
      "id": "797f8acf06bf4fdfa7b89233d478cc2b",
      "sender": "achow101",
      "payload": "right",
      "action": false,
      "timestamp": "2020-07-03T19:17:49+00:00"
    },
    {
      "id": "2ba2333a0ced41f7bed5f5ee14931723",
      "sender": "luke-jr",
      "payload": "is there any other info we might want to save?",
      "action": false,
      "timestamp": "2020-07-03T19:18:18+00:00"
    },
    {
      "id": "82e69f5567a04b62bea5a2ec804e265c",
      "sender": "luke-jr",
      "payload": "perhaps the transactions used as inputs?",
      "action": false,
      "timestamp": "2020-07-03T19:18:33+00:00"
    },
    {
      "id": "6e1001322f7d425ebf129bdd9ede3750",
      "sender": "meshcollider",
      "payload": "I feel like keeping the entire blocks your wallet is involved in would not be useful other than in weird cases like right now",
      "action": false,
      "timestamp": "2020-07-03T19:18:37+00:00"
    },
    {
      "id": "7b65279721ac49dc839833c1fcfc8e4e",
      "sender": "luke-jr",
      "payload": "meshcollider: definitely don't want to do that \u00c3\u00a2\u00c2\u0098\u00c2\u00ba",
      "action": false,
      "timestamp": "2020-07-03T19:18:51+00:00"
    },
    {
      "id": "024ef89de0b742fab336c26798aa781a",
      "sender": "achow101",
      "payload": "didn't we use to save transactions used as inputs",
      "action": false,
      "timestamp": "2020-07-03T19:18:53+00:00"
    },
    {
      "id": "804460c307a04cf1af8fd76bf2eb034d",
      "sender": "luke-jr",
      "payload": "oh, not in the wallet",
      "action": false,
      "timestamp": "2020-07-03T19:19:00+00:00"
    },
    {
      "id": "784b30a3ef9942338719ba9d124b55c7",
      "sender": "luke-jr",
      "payload": "achow101: I think so",
      "action": false,
      "timestamp": "2020-07-03T19:19:05+00:00"
    },
    {
      "id": "8527f27b4cf3487f880b565cf2169f64",
      "sender": "sipa",
      "payload": "we should store unconfirmed inputs too, i think",
      "action": false,
      "timestamp": "2020-07-03T19:19:09+00:00"
    },
    {
      "id": "bc2bcde5cb8041009f4ae6f2f8b38cd0",
      "sender": "sipa",
      "payload": "but not using the exponential-blowup-fest approach that was used before",
      "action": false,
      "timestamp": "2020-07-03T19:19:24+00:00"
    },
    {
      "id": "739a58ebd5414e30a935ee9c00826373",
      "sender": "luke-jr",
      "payload": "sipa: I forget what we had before for this",
      "action": false,
      "timestamp": "2020-07-03T19:19:41+00:00"
    },
    {
      "id": "a933220afede4d4582ef6a9b42d933fa",
      "sender": "luke-jr",
      "payload": "was the problem it saved the txs in the wallettx?",
      "action": false,
      "timestamp": "2020-07-03T19:20:01+00:00"
    },
    {
      "id": "223d45e3feb64579b3bcd73795ecfbe6",
      "sender": "sipa",
      "payload": "yes",
      "action": false,
      "timestamp": "2020-07-03T19:20:08+00:00"
    },
    {
      "id": "c71db1cea72147a3a2f5429f33ec9c95",
      "sender": "luke-jr",
      "payload": "so a new db entry per txid should fix that, right?",
      "action": false,
      "timestamp": "2020-07-03T19:20:19+00:00"
    },
    {
      "id": "4ff0f1fff95143b4ae73a2811c4e9297",
      "sender": "achow101",
      "payload": "CWalletTx needs to be trimmed",
      "action": false,
      "timestamp": "2020-07-03T19:20:20+00:00"
    },
    {
      "id": "ce8e7fbbbdae4eaa9ba2a235e395f69f",
      "sender": "luke-jr",
      "payload": "refcounted I suppose",
      "action": false,
      "timestamp": "2020-07-03T19:20:51+00:00"
    },
    {
      "id": "d2752fccf71647c9bbf71fe704caa30c",
      "sender": "luke-jr",
      "payload": "feels like he's had this discussion recently already :x",
      "action": true,
      "timestamp": "2020-07-03T19:21:07+00:00"
    },
    {
      "id": "b693e175b841443db42ba01f190283ec",
      "sender": "sipa",
      "payload": "i think we can just store the inputs as wallet txn",
      "action": false,
      "timestamp": "2020-07-03T19:21:50+00:00"
    },
    {
      "id": "81679f42fbd946a0a723b024fa59bdfe",
      "sender": "achow101",
      "payload": "We might want to store just the prev txos?",
      "action": false,
      "timestamp": "2020-07-03T19:22:04+00:00"
    },
    {
      "id": "ac6dfae6dbca414ca9086e6830212abd",
      "sender": "sipa",
      "payload": "which won't be IsMine(), but just there to fetch",
      "action": false,
      "timestamp": "2020-07-03T19:22:12+00:00"
    },
    {
      "id": "715bcd562973448ba47122ab36d11295",
      "sender": "luke-jr",
      "payload": "hmm",
      "action": false,
      "timestamp": "2020-07-03T19:22:18+00:00"
    },
    {
      "id": "0bc1ff86ad0846319b906c032e0aa5be",
      "sender": "luke-jr",
      "payload": "achow101: that won't work if we need to send the entire tx to the hw wallet?",
      "action": false,
      "timestamp": "2020-07-03T19:22:30+00:00"
    },
    {
      "id": "3fba2de67924429d96e53c2dac56a2be",
      "sender": "sipa",
      "payload": "achow101: i don't think that's useful",
      "action": false,
      "timestamp": "2020-07-03T19:22:31+00:00"
    },
    {
      "id": "e793b13f43f54782b5999115d1103109",
      "sender": "sipa",
      "payload": "ah, in taproot it may be",
      "action": false,
      "timestamp": "2020-07-03T19:22:50+00:00"
    },
    {
      "id": "f41ba2003d7f4515bbe2a8e4c8fe6bb5",
      "sender": "sipa",
      "payload": "but i was more thinking that this can help rebroadcasting",
      "action": false,
      "timestamp": "2020-07-03T19:23:04+00:00"
    },
    {
      "id": "2deb1066713347ec87ba09a2e30de0e7",
      "sender": "achow101",
      "payload": "ah.",
      "action": false,
      "timestamp": "2020-07-03T19:23:26+00:00"
    },
    {
      "id": "64ddbf0382744a9485f941eaf6169892",
      "sender": "luke-jr",
      "payload": "it used to be your wallet would keep the transactions it has an interest in alive..",
      "action": false,
      "timestamp": "2020-07-03T19:23:50+00:00"
    },
    {
      "id": "46839d7b091540e897e6faba79f1b04d",
      "sender": "luke-jr",
      "payload": "I guess we lost that",
      "action": false,
      "timestamp": "2020-07-03T19:23:58+00:00"
    },
    {
      "id": "4a59c32a7dc7428f996ca5a847230f04",
      "sender": "achow101",
      "payload": "I think storing the prevtxs as a wallet txn will confuse many things",
      "action": false,
      "timestamp": "2020-07-03T19:24:12+00:00"
    },
    {
      "id": "217e1770c3f449f2bfde7088292499f5",
      "sender": "sipa",
      "payload": "it may be, i'm not sure",
      "action": false,
      "timestamp": "2020-07-03T19:24:23+00:00"
    },
    {
      "id": "1bd0d3953c314d109a1399b9a082e35e",
      "sender": "achow101",
      "payload": "I'm pretty sure there's an implicit assumption that things in mapWalletTxs are actually involved in your wallet",
      "action": false,
      "timestamp": "2020-07-03T19:24:45+00:00"
    },
    {
      "id": "eece513f426b41daa5d25d4632de7011",
      "sender": "achow101",
      "payload": "as in an input or output is yours",
      "action": false,
      "timestamp": "2020-07-03T19:24:49+00:00"
    },
    {
      "id": "1575740adaf84b849593a08117d236c1",
      "sender": "sipa",
      "payload": "maybe - but i think most things still filter using IsMine",
      "action": false,
      "timestamp": "2020-07-03T19:25:09+00:00"
    },
    {
      "id": "95e1afa9ee7245278743bfd161a0c0ed",
      "sender": "luke-jr",
      "payload": "harmless to just change the db key",
      "action": false,
      "timestamp": "2020-07-03T19:25:21+00:00"
    },
    {
      "id": "dfa97c07b2cf4507aca80e2f90e65c31",
      "sender": "achow101",
      "payload": "I'd like to not do that (as much) in the future :)",
      "action": false,
      "timestamp": "2020-07-03T19:25:27+00:00"
    },
    {
      "id": "97e99bda915942e2be9fc7c6336d726f",
      "sender": "luke-jr",
      "payload": "can read it as a wallettx type if that's useful",
      "action": false,
      "timestamp": "2020-07-03T19:25:28+00:00"
    },
    {
      "id": "52a6e862699045aeb766ae670b04124e",
      "sender": "achow101",
      "payload": "right, just have it as another record would probably be better",
      "action": false,
      "timestamp": "2020-07-03T19:25:56+00:00"
    },
    {
      "id": "a4840165e8d8452fac1a8f384511573e",
      "sender": "sipa",
      "payload": "perhaps yes",
      "action": false,
      "timestamp": "2020-07-03T19:26:03+00:00"
    },
    {
      "id": "424239284ea745a1981efd88031ae0b9",
      "sender": "sipa",
      "payload": "that also has less risk causing backward compatibility issues",
      "action": false,
      "timestamp": "2020-07-03T19:26:23+00:00"
    },
    {
      "id": "a705707e8b074978ac07a5a788b33bbf",
      "sender": "achow101",
      "payload": "topic suggestion: legacy to descriptor wallet migration",
      "action": false,
      "timestamp": "2020-07-03T19:28:14+00:00"
    },
    {
      "id": "11abc3f53764404c92ce8b97a61172fb",
      "sender": "meshcollider",
      "payload": "#topic legacy to descriptor wallet migration (achow101)",
      "action": false,
      "timestamp": "2020-07-03T19:29:23+00:00"
    },
    {
      "id": "3c9ef9a893ca49af93ed98c788af73a9",
      "sender": "achow101",
      "payload": "did we determine whether it was possible to make all of the legacy things fit into descriptors?",
      "action": false,
      "timestamp": "2020-07-03T19:30:08+00:00"
    },
    {
      "id": "8fb2b50028654176a01774cd2c33638e",
      "sender": "meshcollider",
      "payload": "What do you mean by possible",
      "action": false,
      "timestamp": "2020-07-03T19:30:44+00:00"
    },
    {
      "id": "257148c02f52421982c47b859574eb22",
      "sender": "achow101",
      "payload": "I would actually like to figure out how/if we can migrate people's wallets to descriptors so they don't lose anything",
      "action": false,
      "timestamp": "2020-07-03T19:30:55+00:00"
    },
    {
      "id": "6566c67769c04e698c082c12c9e678be",
      "sender": "sipa",
      "payload": "sure, but it may need a huge amount of descriptors",
      "action": false,
      "timestamp": "2020-07-03T19:31:21+00:00"
    },
    {
      "id": "971085f9886b4e028f6a31f4416290ec",
      "sender": "achow101",
      "payload": "as in can we represent everything that could be in a legacy wallet as descriptors, and preferably not as thousands of descriptors",
      "action": false,
      "timestamp": "2020-07-03T19:31:39+00:00"
    },
    {
      "id": "dfef1a4aeef34515837cf6242217a5af",
      "sender": "achow101",
      "payload": "I think we previously had concern that IsMine would match to a nearly infinite number of scripts, but I don't think that's possible anymore?",
      "action": false,
      "timestamp": "2020-07-03T19:32:12+00:00"
    },
    {
      "id": "848edba629b445fba101038899556733",
      "sender": "sipa",
      "payload": "i believe that's not the case anymore since bare multisig matching is gone",
      "action": false,
      "timestamp": "2020-07-03T19:32:31+00:00"
    },
    {
      "id": "bd0fc8aabc41495d99f997c764b82537",
      "sender": "achow101",
      "payload": "s/possible/concern",
      "action": false,
      "timestamp": "2020-07-03T19:32:34+00:00"
    },
    {
      "id": "ec81cab8a8644b0a85066b7a8871669b",
      "sender": "meshcollider",
      "payload": "You can probably turn an HD wallet into a descriptor wallet okay",
      "action": false,
      "timestamp": "2020-07-03T19:33:38+00:00"
    },
    {
      "id": "afcc7589dbe045f1b02e0d1f8e5bd3b6",
      "sender": "luke-jr",
      "payload": "still prefers JBOK wallets",
      "action": true,
      "timestamp": "2020-07-03T19:33:48+00:00"
    },
    {
      "id": "eced1ea63195444abc3b4155fd7c26cd",
      "sender": "sipa",
      "payload": "infer a descriptor from HD information, expand it, see which scriptpubkeys it does not cover",
      "action": false,
      "timestamp": "2020-07-03T19:34:08+00:00"
    },
    {
      "id": "ac87a75259d941f597190ca65cd0e136",
      "sender": "sipa",
      "payload": "store the remaining ones as additional descriptors",
      "action": false,
      "timestamp": "2020-07-03T19:34:26+00:00"
    },
    {
      "id": "6fb38841c03b417fa7e3157fcc35f179",
      "sender": "meshcollider",
      "payload": "Obviously a non-HD wallet it's gonna be thousands of individual descriptors",
      "action": false,
      "timestamp": "2020-07-03T19:34:29+00:00"
    },
    {
      "id": "4490bdb27ce540a2967288ba0784b61f",
      "sender": "achow101",
      "payload": "for non-HD, that's going to be a lot of descriptors",
      "action": false,
      "timestamp": "2020-07-03T19:34:30+00:00"
    },
    {
      "id": "1e087f38abfd44e3961bb3760514cd9f",
      "sender": "sipa",
      "payload": "yes",
      "action": false,
      "timestamp": "2020-07-03T19:34:37+00:00"
    },
    {
      "id": "652e19cbe66e474cb6a5bc31dc685768",
      "sender": "achow101",
      "payload": "what about imports?",
      "action": false,
      "timestamp": "2020-07-03T19:34:50+00:00"
    },
    {
      "id": "673ac827fe0946d583424474782c5916",
      "sender": "sipa",
      "payload": "perhaps it makes sense to have a list() descriptor or something, which contains a list of non-ranged descriptors",
      "action": false,
      "timestamp": "2020-07-03T19:35:13+00:00"
    },
    {
      "id": "1ae10d23ed3142f3b2fb56e3b8ff9557",
      "sender": "sipa",
      "payload": "so that you can have one thing that represents an entire wallet, but still expose it as a \"list\"",
      "action": false,
      "timestamp": "2020-07-03T19:35:28+00:00"
    },
    {
      "id": "8086c5dcb7d1455baac5f5c35e88033d",
      "sender": "sipa",
      "payload": "s/list/range/",
      "action": false,
      "timestamp": "2020-07-03T19:35:54+00:00"
    },
    {
      "id": "73973dcf228740f997018143ef145c17",
      "sender": "meshcollider",
      "payload": "And have a similar range index thing as a ranged descriptor?",
      "action": false,
      "timestamp": "2020-07-03T19:35:56+00:00"
    },
    {
      "id": "f142438947e14d7691a5adb1965114ba",
      "sender": "sipa",
      "payload": "right",
      "action": false,
      "timestamp": "2020-07-03T19:36:00+00:00"
    },
    {
      "id": "8910fb0a2cbc4aa6ab408c1c432da058",
      "sender": "achow101",
      "payload": "also, with descriptors we don't have the address type mutation thing, so I think migrating would require generating new active descriptors and all the old stuff is no longer used",
      "action": false,
      "timestamp": "2020-07-03T19:36:21+00:00"
    },
    {
      "id": "6dbfc4fe6a324f40abee548bda8641a1",
      "sender": "luke-jr",
      "payload": "achow101: that was never *supposed* to work though",
      "action": false,
      "timestamp": "2020-07-03T19:37:34+00:00"
    },
    {
      "id": "e28ad96f45e24d3ebfe971848bcae466",
      "sender": "luke-jr",
      "payload": "do we need to support it?",
      "action": false,
      "timestamp": "2020-07-03T19:37:36+00:00"
    },
    {
      "id": "81a26332824b43cca595f51bccb842b2",
      "sender": "achow101",
      "payload": "luke-jr: i mean retaining possible mutations on the old stuff that has already been used",
      "action": false,
      "timestamp": "2020-07-03T19:38:24+00:00"
    },
    {
      "id": "cb9ed4f0ab81465388d9eb7aae7ed94a",
      "sender": "sipa",
      "payload": "luke-jr: i think it's dangerous to remove things that were treated as IsMine",
      "action": false,
      "timestamp": "2020-07-03T19:38:38+00:00"
    },
    {
      "id": "0be7f6d52f414eb98cf07146e30bd9ae",
      "sender": "luke-jr",
      "payload": "I think once an address is used, we don't need to look for it in new blocks anymore <.<",
      "action": false,
      "timestamp": "2020-07-03T19:39:14+00:00"
    },
    {
      "id": "55df14248c8e41cb8236dec555fa37c3",
      "sender": "achow101",
      "payload": "unfortunately that's not a reasonable assumption",
      "action": false,
      "timestamp": "2020-07-03T19:39:30+00:00"
    },
    {
      "id": "4002db3bd7bc4ff1815cdecc29d1652c",
      "sender": "sipa",
      "payload": "yeah",
      "action": false,
      "timestamp": "2020-07-03T19:39:48+00:00"
    },
    {
      "id": "eb41d6b9f33f4e868a77442b869f0f67",
      "sender": "achow101",
      "payload": "so I think it should be possible to migrate, but it might be a bit ugly",
      "action": false,
      "timestamp": "2020-07-03T19:41:49+00:00"
    },
    {
      "id": "ddd353e3feb24c4fabd83c394db4e3b4",
      "sender": "achow101",
      "payload": "that's good to know",
      "action": false,
      "timestamp": "2020-07-03T19:42:01+00:00"
    },
    {
      "id": "40ac324c99324086a3b826205efcbb52",
      "sender": "meshcollider",
      "payload": "The list descriptor is worth thinking about imo",
      "action": false,
      "timestamp": "2020-07-03T19:42:25+00:00"
    },
    {
      "id": "b5df4ad537de4b8da0732c7c8e2da45d",
      "sender": "sipa",
      "payload": "it's easy to add, but may become huge :)",
      "action": false,
      "timestamp": "2020-07-03T19:42:54+00:00"
    },
    {
      "id": "80978452a1134bf0a3943aa32c9967af",
      "sender": "meshcollider",
      "payload": "Certainly would become huge in a lot of cases :p",
      "action": false,
      "timestamp": "2020-07-03T19:43:18+00:00"
    },
    {
      "id": "96082c5e10904d15a5b21a7ae975306c",
      "sender": "luke-jr",
      "payload": "I don't really get what there is to gain from this",
      "action": false,
      "timestamp": "2020-07-03T19:43:27+00:00"
    },
    {
      "id": "93c4ed2c4f504a8798fde6f1ac1688b3",
      "sender": "meshcollider",
      "payload": "Achow just wants eventual legacy deprecation",
      "action": false,
      "timestamp": "2020-07-03T19:43:45+00:00"
    },
    {
      "id": "9f0f51a6eb6a4fbcb642a641310e9ddb",
      "sender": "achow101",
      "payload": "it's so we can ditch the legacy wallet in the future without forcing people to make wholly new wallets",
      "action": false,
      "timestamp": "2020-07-03T19:44:16+00:00"
    },
    {
      "id": "943e2eee347844ab836e76a2fa081fba",
      "sender": "luke-jr",
      "payload": "why?",
      "action": false,
      "timestamp": "2020-07-03T19:44:22+00:00"
    },
    {
      "id": "43659a4dfb7840dd9be56fce46df032e",
      "sender": "meshcollider",
      "payload": "Because descriptor wallets are better",
      "action": false,
      "timestamp": "2020-07-03T19:44:43+00:00"
    },
    {
      "id": "ebdf1c45b8d842a08d2d305cc87776f3",
      "sender": "luke-jr",
      "payload": "\u00c3\u00a2\u00c2\u0080\u00c2\u00a6",
      "action": false,
      "timestamp": "2020-07-03T19:44:48+00:00"
    },
    {
      "id": "328f237592c04afaab1e5b0dca89476d",
      "sender": "achow101",
      "payload": "less stuff to maintaini",
      "action": false,
      "timestamp": "2020-07-03T19:44:56+00:00"
    },
    {
      "id": "811043bfeb1f48aea4a56f715df08422",
      "sender": "luke-jr",
      "payload": "couldn't we just load the old keys as descriptors in memory?",
      "action": false,
      "timestamp": "2020-07-03T19:45:13+00:00"
    },
    {
      "id": "87876d29f1d44ca3a08d67da73ac43f5",
      "sender": "achow101",
      "payload": "yes but that's (probably) expensive",
      "action": false,
      "timestamp": "2020-07-03T19:45:31+00:00"
    },
    {
      "id": "88b8a647a3924a92b60a515fa125c86c",
      "sender": "meshcollider",
      "payload": "That loses most of the benefits",
      "action": false,
      "timestamp": "2020-07-03T19:45:33+00:00"
    },
    {
      "id": "9e5d1be405334e71a8c20cecb2364315",
      "sender": "meshcollider",
      "payload": "Anyway any other topics?",
      "action": false,
      "timestamp": "2020-07-03T19:45:43+00:00"
    },
    {
      "id": "801a658595344047ae4e3022ca01a584",
      "sender": "meshcollider",
      "payload": "#endmeeting",
      "action": false,
      "timestamp": "2020-07-03T19:47:02+00:00"
    }
  ],
  "events": [
    {
      "event_type": "START_MEETING",
      "message": {
        "id": "f95d128972c546788fc4725626edbf44",
        "sender": "meshcollider",
        "payload": "#startmeeting",
        "action": false,
        "timestamp": "2020-07-03T19:00:31+00:00"
      },
      "operand": null,
      "id": "f95d128972c546788fc4725626edbf44",
      "timestamp": "2020-07-03T19:00:31+00:00"
    },
    {
      "event_type": "LINK",
      "message": {
        "id": "382eaae37a264139a4bf8ad0d5cde97d",
        "sender": "gribble",
        "payload": "https://github.com/bitcoin/bitcoin/issues/6550 | Do not store Merkle branches in the wallet. by sipa \u00c3\u0082\u00c2\u00b7 Pull Request #6550 \u00c3\u0082\u00c2\u00b7 bitcoin/bitcoin \u00c3\u0082\u00c2\u00b7 GitHub",
        "action": false,
        "timestamp": "2020-07-03T19:06:31+00:00"
      },
      "operand": "https://github.com/bitcoin/bitcoin/issues/6550",
      "id": "382eaae37a264139a4bf8ad0d5cde97d",
      "timestamp": "2020-07-03T19:06:31+00:00"
    },
    {
      "event_type": "TOPIC",
      "message": {
        "id": "b23c93d2a0c44835949bb33f387a62aa",
        "sender": "meshcollider",
        "payload": "#topic Merkle branches stored in wallet (luke-jr)",
        "action": false,
        "timestamp": "2020-07-03T19:07:41+00:00"
      },
      "operand": "Merkle branches stored in wallet (luke-jr)",
      "id": "b23c93d2a0c44835949bb33f387a62aa",
      "timestamp": "2020-07-03T19:07:41+00:00"
    },
    {
      "event_type": "TOPIC",
      "message": {
        "id": "11abc3f53764404c92ce8b97a61172fb",
        "sender": "meshcollider",
        "payload": "#topic legacy to descriptor wallet migration (achow101)",
        "action": false,
        "timestamp": "2020-07-03T19:29:23+00:00"
      },
      "operand": "legacy to descriptor wallet migration (achow101)",
      "id": "11abc3f53764404c92ce8b97a61172fb",
      "timestamp": "2020-07-03T19:29:23+00:00"
    },
    {
      "event_type": "END_MEETING",
      "message": {
        "id": "801a658595344047ae4e3022ca01a584",
        "sender": "meshcollider",
        "payload": "#endmeeting",
        "action": false,
        "timestamp": "2020-07-03T19:47:02+00:00"
      },
      "operand": null,
      "id": "801a658595344047ae4e3022ca01a584",
      "timestamp": "2020-07-03T19:47:02+00:00"
    }
  ],
  "aliases": {},
  "vote_in_progress": false,
  "motion_index": null
}