{
  "founder": "achow101",
  "channel": "#bitcoin-core-dev",
  "network": "libera",
  "id": "55f6be41df474cbfb5e8f3f87fe8e592",
  "name": "#bitcoin-core-dev",
  "chair": "achow101",
  "chairs": [
    "achow101"
  ],
  "nicks": {
    "achow101": 16,
    "corebot": 13,
    "hebasto": 1,
    "cfields": 1,
    "johnny9dev": 3,
    "laanwj": 1,
    "abubakarsadiq": 14,
    "lightlike": 1,
    "sr_gi[m]1": 4,
    "pinheadmz": 1,
    "stickies-v": 1,
    "janb84": 1,
    "danielabrozzoni": 1,
    "brunoerg": 1,
    "vasild": 1,
    "sipa": 20,
    "dergoegge": 5,
    "instagibbs": 6,
    "Murch[m]": 1,
    "pablomartin4btc": 1,
    "glozow": 19,
    "l0rinc": 12,
    "jonatack": 1
  },
  "start_time": "2025-07-03T16:00:24.360759+00:00",
  "end_time": "2025-07-03T16:46:22.031810+00:00",
  "active": false,
  "original_topic": "Bitcoin Core development discussion and commit log | 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/ | Weekly Meeting Thursday @ 16:00 UTC | Meeting topics http://gnusha.org/bitcoin-core-dev/proposedmeetingtopics.txt",
  "current_topic": "mempool in ibd",
  "messages": [
    {
      "id": "80b90406240c4b00b6cdd0b3508bb527",
      "sender": "achow101",
      "payload": "#startmeeting",
      "action": false,
      "timestamp": "2025-07-03T16:00:24.360179+00:00"
    },
    {
      "id": "ca8159b5c5134869ad9832255556fb8d",
      "sender": "corebot",
      "payload": "achow101: Meeting started at 2025-07-03T16:00+0000",
      "action": false,
      "timestamp": "2025-07-03T16:00:24.365280+00:00"
    },
    {
      "id": "e4421c456b4a441db34221e013d06ee3",
      "sender": "corebot",
      "payload": "achow101: Current chairs: achow101",
      "action": false,
      "timestamp": "2025-07-03T16:00:25.368864+00:00"
    },
    {
      "id": "958803bc354340ca88af30c00795efad",
      "sender": "corebot",
      "payload": "achow101: Useful commands: #action #info #idea #link #topic #motion #vote #close #endmeeting",
      "action": false,
      "timestamp": "2025-07-03T16:00:26.373011+00:00"
    },
    {
      "id": "9771f6d3427d4347a70d5cb3ad156245",
      "sender": "corebot",
      "payload": "achow101: See also: https://hcoop-meetbot.readthedocs.io/en/stable/",
      "action": false,
      "timestamp": "2025-07-03T16:00:27.377028+00:00"
    },
    {
      "id": "98ea141c9648428598f5ac242da63748",
      "sender": "corebot",
      "payload": "achow101: Participants should now identify themselves with '#here' or with an alias like '#here FirstLast'",
      "action": false,
      "timestamp": "2025-07-03T16:00:28.381609+00:00"
    },
    {
      "id": "f530dbdc8833478fa03de6f302628d5a",
      "sender": "achow101",
      "payload": "#bitcoin-core-dev Meeting: abubakarsadiq achow101 _aj_ ajonas b10c brunoerg cfields darosior dergoegge fanquake fjahr furszy gleb glozow hebasto hodlinator instagibbs jarolrod jonatack josibake kanzure laanwj LarryRuane lightlike luke-jr maflcko marcofleon maxedw Murch pinheadmz provoostenator ryanofsky sdaftuar S3RK stickies-v sipa sr_gi tdb3 theStack TheCharlatan vasild willcl-ark",
      "action": false,
      "timestamp": "2025-07-03T16:00:32.626363+00:00"
    },
    {
      "id": "6bea669f419e4adc97d1786eb1554c1e",
      "sender": "hebasto",
      "payload": "hi",
      "action": false,
      "timestamp": "2025-07-03T16:00:34.485664+00:00"
    },
    {
      "id": "082954cca51e498b82c985ccc2dbddff",
      "sender": "cfields",
      "payload": "hi",
      "action": false,
      "timestamp": "2025-07-03T16:00:37.179765+00:00"
    },
    {
      "id": "b187c405e63b4112871d0f48df107a4f",
      "sender": "johnny9dev",
      "payload": "Hi",
      "action": false,
      "timestamp": "2025-07-03T16:00:37.754345+00:00"
    },
    {
      "id": "02431813fd664fdc88303129abe2a834",
      "sender": "laanwj",
      "payload": "hi",
      "action": false,
      "timestamp": "2025-07-03T16:00:38.854187+00:00"
    },
    {
      "id": "8207b6ee800444be937d4cefc8a209d3",
      "sender": "abubakarsadiq",
      "payload": "hi",
      "action": false,
      "timestamp": "2025-07-03T16:00:41.996925+00:00"
    },
    {
      "id": "443c01f3a8294d4b845d27789caaf304",
      "sender": "lightlike",
      "payload": "hi",
      "action": false,
      "timestamp": "2025-07-03T16:00:42.110917+00:00"
    },
    {
      "id": "15747b7c089a4efab57f9738cb1a8cb3",
      "sender": "sr_gi[m]1",
      "payload": "hi",
      "action": false,
      "timestamp": "2025-07-03T16:00:42.483032+00:00"
    },
    {
      "id": "c70b6171ecff4c3d8c1cf8b2dab0df20",
      "sender": "pinheadmz",
      "payload": "hi",
      "action": false,
      "timestamp": "2025-07-03T16:00:44.044835+00:00"
    },
    {
      "id": "7f89a46a64114b378d3d57249f803429",
      "sender": "stickies-v",
      "payload": "hi",
      "action": false,
      "timestamp": "2025-07-03T16:00:46.781654+00:00"
    },
    {
      "id": "3b209981fd5046f48cae12a44c3fb068",
      "sender": "achow101",
      "payload": "There are no pre-proposed meeting topics this week. Any last minute ones to add?",
      "action": false,
      "timestamp": "2025-07-03T16:00:46.785673+00:00"
    },
    {
      "id": "68421e85383849bd876748649eb64fac",
      "sender": "janb84",
      "payload": "hi",
      "action": false,
      "timestamp": "2025-07-03T16:00:46.895885+00:00"
    },
    {
      "id": "036e2afe09c741c0b070a5c13a1a22f3",
      "sender": "danielabrozzoni",
      "payload": "hi",
      "action": false,
      "timestamp": "2025-07-03T16:00:56.025376+00:00"
    },
    {
      "id": "dc20a589843e410b835015f46af753c8",
      "sender": "brunoerg",
      "payload": "hi",
      "action": false,
      "timestamp": "2025-07-03T16:01:06.376244+00:00"
    },
    {
      "id": "5ad406f17fc049b79fdd800b656ec263",
      "sender": "achow101",
      "payload": "#topic Erlay WG Update (sr_gi, gleb)",
      "action": false,
      "timestamp": "2025-07-03T16:01:20.154675+00:00"
    },
    {
      "id": "b902baac430f4eb780954105b45811ff",
      "sender": "vasild",
      "payload": "hi",
      "action": false,
      "timestamp": "2025-07-03T16:01:35.185667+00:00"
    },
    {
      "id": "ee6a6ac900b84678817c0e41fb27c0d3",
      "sender": "sipa",
      "payload": "hi",
      "action": false,
      "timestamp": "2025-07-03T16:02:56.333439+00:00"
    },
    {
      "id": "441004039cf849eb9a6f6f76b456dddb",
      "sender": "dergoegge",
      "payload": "hi",
      "action": false,
      "timestamp": "2025-07-03T16:03:51.907640+00:00"
    },
    {
      "id": "6b10b4c7f9b4435aa6761bdae99f43f7",
      "sender": "instagibbs",
      "payload": "hi",
      "action": false,
      "timestamp": "2025-07-03T16:03:56.588627+00:00"
    },
    {
      "id": "42bd153f086b446593d57f0f9588a25b",
      "sender": "Murch[m]",
      "payload": "Hi",
      "action": false,
      "timestamp": "2025-07-03T16:03:58.860811+00:00"
    },
    {
      "id": "3d54ffaf1fb746d5b95d357d2c4824be",
      "sender": "sr_gi[m]1",
      "payload": "It seems the propagation time issue I found last week may be what was making erlay times too good to be true. I've been re-running the simulations for small (50 nodes) and medium-size (200 nodes) networks. I'm currently re-working part of the warnet simulations so they can handle bigger networks (500 nodes is the most I've done, but the sims are a bit unreliable)",
      "action": false,
      "timestamp": "2025-07-03T16:04:03.244589+00:00"
    },
    {
      "id": "e4769beea95f47ee8c5fcf3ace5581b2",
      "sender": "pablomartin4btc",
      "payload": "hi",
      "action": false,
      "timestamp": "2025-07-03T16:04:18.773340+00:00"
    },
    {
      "id": "352db7db640b465fad6f2c81eaca7934",
      "sender": "sr_gi[m]1",
      "payload": "My goal is having the sims for all of them in the upcoming days so I can report back hopefully next week, and start moving forward",
      "action": false,
      "timestamp": "2025-07-03T16:04:28.729373+00:00"
    },
    {
      "id": "c93e990521fb43a19a2880ee706191e5",
      "sender": "sr_gi[m]1",
      "payload": "That's it on my end",
      "action": false,
      "timestamp": "2025-07-03T16:05:09.154341+00:00"
    },
    {
      "id": "69f6c667ea644b11a48f123d176e1270",
      "sender": "achow101",
      "payload": "#topic Fuzzing WG Update (dergoegge)",
      "action": false,
      "timestamp": "2025-07-03T16:05:25.056319+00:00"
    },
    {
      "id": "d22f397653b64fad9d050869b89195d6",
      "sender": "dergoegge",
      "payload": "Found 2 bugs on PRs with fuzzamoto in the last two weeks. One really shallow one in the erlay sketch deserialization code and one in the cluster mempool PR. The mempool bug specifically is a nice example for the complex inputs that fuzzamoto can generate.",
      "action": false,
      "timestamp": "2025-07-03T16:05:37.426374+00:00"
    },
    {
      "id": "a74b2e4af9d84eb2bdae953e3243444a",
      "sender": "dergoegge",
      "payload": "Also implemented a \u201cnetsplit\u201d oracle, which already found a minor issue, fixed by instagibbs here: https://github.com/bitcoin/bitcoin/pull/32869 (would be nice to get some review on that)",
      "action": false,
      "timestamp": "2025-07-03T16:05:46.766500+00:00"
    },
    {
      "id": "ee6e22fb8db0443cbe7fcef0bab357f8",
      "sender": "dergoegge",
      "payload": "More updates (and links to the above): https://gist.github.com/dergoegge/0f732c440c19d02cf5eb6059ee90147c",
      "action": false,
      "timestamp": "2025-07-03T16:05:56.940746+00:00"
    },
    {
      "id": "47cdb0a6638949f48b21a0e602bb90da",
      "sender": "sipa",
      "payload": "nice!",
      "action": false,
      "timestamp": "2025-07-03T16:06:22.969923+00:00"
    },
    {
      "id": "ecfcdb067c6b4fc6b563872d212020a8",
      "sender": "dergoegge",
      "payload": "(that's it on my end)",
      "action": false,
      "timestamp": "2025-07-03T16:07:02.857200+00:00"
    },
    {
      "id": "9b6371d801b04bad9b6da1b8c4c467b3",
      "sender": "achow101",
      "payload": "#topic Cluster Mempool WG Update (sdaftuar, sipa)",
      "action": false,
      "timestamp": "2025-07-03T16:07:22.231690+00:00"
    },
    {
      "id": "62a48b5ff69a4071a125b53d5866d7fd",
      "sender": "sipa",
      "payload": "hi",
      "action": false,
      "timestamp": "2025-07-03T16:07:45.309298+00:00"
    },
    {
      "id": "1cbe7ba94b10471aa600aa65d3dbb81f",
      "sender": "sipa",
      "payload": "i think both #31553 and #30605 are really close",
      "action": false,
      "timestamp": "2025-07-03T16:08:11.892672+00:00"
    },
    {
      "id": "47a40ef472cc4e9e8aaac3641825df4a",
      "sender": "corebot",
      "payload": "https://github.com/bitcoin/bitcoin/issues/31553 | cluster mempool: add TxGraph reorg functionality by sipa \u00b7 Pull Request #31553 \u00b7 bitcoin/bitcoin \u00b7 GitHub",
      "action": false,
      "timestamp": "2025-07-03T16:08:14.897189+00:00"
    },
    {
      "id": "e3f3f0b93de345b2a5aecdf474f27bb8",
      "sender": "corebot",
      "payload": "https://github.com/bitcoin/bitcoin/issues/30605 | Cluster linearization: separate tests from tests-of-tests by sipa \u00b7 Pull Request #30605 \u00b7 bitcoin/bitcoin \u00b7 GitHub",
      "action": false,
      "timestamp": "2025-07-03T16:08:16.902659+00:00"
    },
    {
      "id": "86f2f7fcb92e4b409d353c067a91e886",
      "sender": "sipa",
      "payload": "the past week some extra benchmarks are tests were added, but i don't expect many further changes",
      "action": false,
      "timestamp": "2025-07-03T16:08:40.091979+00:00"
    },
    {
      "id": "57f04f2a21324b44ac7d3ecfc8650f1d",
      "sender": "glozow",
      "payload": "hi",
      "action": false,
      "timestamp": "2025-07-03T16:08:51.472501+00:00"
    },
    {
      "id": "e137b6f566724f378edc2daee1df31a9",
      "sender": "instagibbs",
      "payload": "try not to rebase on master if possible :P",
      "action": false,
      "timestamp": "2025-07-03T16:09:02.661918+00:00"
    },
    {
      "id": "e18af5bfee8d4bce9371fc073a361f6c",
      "sender": "sipa",
      "payload": "after that, the txgraph API will be largely complete, and i think we can start focusing on getting parts of the full cluster mempool implementation (#28676) in",
      "action": false,
      "timestamp": "2025-07-03T16:09:38.203661+00:00"
    },
    {
      "id": "ac9ce861509e47c8a067b377f3668b02",
      "sender": "corebot",
      "payload": "https://github.com/bitcoin/bitcoin/issues/28676 | [WIP] Cluster mempool implementation by sdaftuar \u00b7 Pull Request #28676 \u00b7 bitcoin/bitcoin \u00b7 GitHub",
      "action": false,
      "timestamp": "2025-07-03T16:09:40.207959+00:00"
    },
    {
      "id": "9fd3cf326677496d8367c2b2c02663fe",
      "sender": "glozow",
      "payload": "sipa: would the plan be to do that PR all together?",
      "action": false,
      "timestamp": "2025-07-03T16:09:59.946742+00:00"
    },
    {
      "id": "abdaa8ec8327428b914a65d4cbdc664f",
      "sender": "glozow",
      "payload": "(all of 28676)",
      "action": false,
      "timestamp": "2025-07-03T16:10:08.832420+00:00"
    },
    {
      "id": "20734bd83fb14a53a4e4646de63abe75",
      "sender": "sipa",
      "payload": "unsure, i assume it contains some amount of preparatory work that can be split off",
      "action": false,
      "timestamp": "2025-07-03T16:10:36.414842+00:00"
    },
    {
      "id": "bd074cb8e23d4f94afef1cd8bcff4dc4",
      "sender": "sipa",
      "payload": "but the bulk, adding the cluster tracking, and switching out the mempool tracking, will need to be one PR I think (or at least a sequence of PRs that are all expected to go into the same release)",
      "action": false,
      "timestamp": "2025-07-03T16:11:16.967842+00:00"
    },
    {
      "id": "bc20e5317eec4fc798fc0e276d1ef352",
      "sender": "glozow",
      "payload": "makes sense",
      "action": false,
      "timestamp": "2025-07-03T16:12:01.556926+00:00"
    },
    {
      "id": "e46de245fb3041a2b54f3e238c0f70dc",
      "sender": "sipa",
      "payload": "that's it for me, unless more questions",
      "action": false,
      "timestamp": "2025-07-03T16:12:09.872599+00:00"
    },
    {
      "id": "cceb4363d7dd4fedab5204cf413550df",
      "sender": "achow101",
      "payload": "#topic MuSig2 WG Update (achow101, rkrux)",
      "action": false,
      "timestamp": "2025-07-03T16:12:42.837820+00:00"
    },
    {
      "id": "8c893a30cd41469092b852011d7aa41c",
      "sender": "abubakarsadiq",
      "payload": "On the process of re-reviewing  #31553,  https://github.com/bitcoin/bitcoin/pull/31553/commits/938e86f8fecd65ca90b97e6cf896f8c59fb590ba",
      "action": false,
      "timestamp": "2025-07-03T16:12:45.198998+00:00"
    },
    {
      "id": "507520d3562c486faa5649c4c2edc802",
      "sender": "abubakarsadiq",
      "payload": "I like the test one transaction forming huge cluster by spending them. and then in trim we don't just evict it alone.",
      "action": false,
      "timestamp": "2025-07-03T16:12:45.274679+00:00"
    },
    {
      "id": "ff12b2746d2b4befa6e922f5f100c5e3",
      "sender": "abubakarsadiq",
      "payload": "we evict others, I think that should not be the case?",
      "action": false,
      "timestamp": "2025-07-03T16:12:45.279241+00:00"
    },
    {
      "id": "919e5b136447443fbfc2e5d2bb54d540",
      "sender": "corebot",
      "payload": "https://github.com/bitcoin/bitcoin/issues/31553 | cluster mempool: add TxGraph reorg functionality by sipa \u00b7 Pull Request #31553 \u00b7 bitcoin/bitcoin \u00b7 GitHub",
      "action": false,
      "timestamp": "2025-07-03T16:12:47.283449+00:00"
    },
    {
      "id": "f262407357f74501abe95003a9304d3d",
      "sender": "sipa",
      "payload": "abubakarsadiq: an optimal eviction algorithm could avoid that, but the trim algorithm is really just a best-effort of what we can accomplish in O(n log n)",
      "action": false,
      "timestamp": "2025-07-03T16:14:08.002713+00:00"
    },
    {
      "id": "2674b0ca7fe4426cabf9fc2a4efdc471",
      "sender": "sipa",
      "payload": "with proper linearization we could do a lot better - but the whole point of trim is that it can work with much larger numbers of transactions than what fit in a cluster",
      "action": false,
      "timestamp": "2025-07-03T16:14:48.067201+00:00"
    },
    {
      "id": "31c57d54982049218a48ec397f490fdb",
      "sender": "achow101",
      "payload": "#topic cluster mempool still",
      "action": false,
      "timestamp": "2025-07-03T16:14:48.196147+00:00"
    },
    {
      "id": "7d3fdfb046ef4ac7b96603d7262ffe6a",
      "sender": "abubakarsadiq",
      "payload": "yep, could just throw txs in compact block reconstruction txs with a bound if thats the case.",
      "action": false,
      "timestamp": "2025-07-03T16:15:53.835861+00:00"
    },
    {
      "id": "23865e82e4824393a4a4326a32186099",
      "sender": "sipa",
      "payload": "right",
      "action": false,
      "timestamp": "2025-07-03T16:16:05.869224+00:00"
    },
    {
      "id": "c27fd941797d48d9b47ce12bee1bbaf3",
      "sender": "abubakarsadiq",
      "payload": "Also I think if we evict children first, we could avoid that but the current best effort algorithm is better in terms of incentive compatibility I think",
      "action": false,
      "timestamp": "2025-07-03T16:17:06.868914+00:00"
    },
    {
      "id": "c268aeee1e7840dc8112db7126f820fd",
      "sender": "sipa",
      "payload": "i'm not too worried about this, in practice i think the amount of oversized would-be clusters formed by reorged will be pretty small in non-attack scenarios",
      "action": false,
      "timestamp": "2025-07-03T16:17:18.310811+00:00"
    },
    {
      "id": "4b6f88a04fc84762915f09daba08601e",
      "sender": "instagibbs",
      "payload": "most clusters are singletons after all",
      "action": false,
      "timestamp": "2025-07-03T16:17:35.181656+00:00"
    },
    {
      "id": "86548c83850b4c84a6eec2548d871b04",
      "sender": "abubakarsadiq",
      "payload": "\ud83d\udc4d",
      "action": false,
      "timestamp": "2025-07-03T16:17:35.392365+00:00"
    },
    {
      "id": "eb6bb8638d654011829f75485c36029b",
      "sender": "sipa",
      "payload": "and it costs creating a block to do something deliberately crazy",
      "action": false,
      "timestamp": "2025-07-03T16:17:38.215460+00:00"
    },
    {
      "id": "5def67bd00364783a8f0b7a3c8e23047",
      "sender": "sipa",
      "payload": "abubakarsadiq: we're not restricted to the current Trim algorithm too; we could experiment with better algorithms later, or even have multiple algorithms depending on the size (e.g. have a medium-size trim algorithm that works acceptably fast for say ~200 transactions, but not 5000, for which we can still fall back to the current Trim one)",
      "action": false,
      "timestamp": "2025-07-03T16:18:46.152690+00:00"
    },
    {
      "id": "40e15462707b4607abc2a5cead1d5845",
      "sender": "sipa",
      "payload": "but those don't affect the API, so wouldn't block further cluster mempool progress",
      "action": false,
      "timestamp": "2025-07-03T16:19:03.793153+00:00"
    },
    {
      "id": "6fe3e665db0946ed9b9115aad5814f86",
      "sender": "abubakarsadiq",
      "payload": "yes please",
      "action": false,
      "timestamp": "2025-07-03T16:19:14.737444+00:00"
    },
    {
      "id": "fc93d405a4c644529a5a3c00dbc97f0d",
      "sender": "sipa",
      "payload": "now back to your regularly scheduled MuSig2",
      "action": false,
      "timestamp": "2025-07-03T16:19:32.529817+00:00"
    },
    {
      "id": "394c11b39d734c65a982a52dcb17e408",
      "sender": "achow101",
      "payload": "#topic MuSig2 WG Update (achow101, rkrux)",
      "action": false,
      "timestamp": "2025-07-03T16:19:57.850037+00:00"
    },
    {
      "id": "9281d3593ccd4be283ef19e1c2d79dfd",
      "sender": "achow101",
      "payload": "#31244 is probably rfm, otherwise, no updates",
      "action": false,
      "timestamp": "2025-07-03T16:20:11.892940+00:00"
    },
    {
      "id": "5d7828687ed842cb840a98164448f7e3",
      "sender": "corebot",
      "payload": "https://github.com/bitcoin/bitcoin/issues/31244 | descriptors: MuSig2 by achow101 \u00b7 Pull Request #31244 \u00b7 bitcoin/bitcoin \u00b7 GitHub",
      "action": false,
      "timestamp": "2025-07-03T16:20:14.898552+00:00"
    },
    {
      "id": "b9853be5ae5a465eb34b40cd4e84f9f9",
      "sender": "achow101",
      "payload": "#topic orphan resolution WG Update (glozow)",
      "action": false,
      "timestamp": "2025-07-03T16:20:23.521673+00:00"
    },
    {
      "id": "ea531edd6dac486d8eed3a329d132649",
      "sender": "glozow",
      "payload": "I've been working on benchmarks for #31829, and have been chatting with sipa about potentially baking number of inputs into the dos score",
      "action": false,
      "timestamp": "2025-07-03T16:21:19.129236+00:00"
    },
    {
      "id": "1eb2527ca6ef4189ade7b5dde99bcdf3",
      "sender": "corebot",
      "payload": "https://github.com/bitcoin/bitcoin/issues/31829 | p2p: improve TxOrphanage denial of service bounds by glozow \u00b7 Pull Request #31829 \u00b7 bitcoin/bitcoin \u00b7 GitHub",
      "action": false,
      "timestamp": "2025-07-03T16:21:21.133533+00:00"
    },
    {
      "id": "7a62cc98bc624e4397e131de87ad8f05",
      "sender": "instagibbs",
      "payload": "for the eraseforblock case?",
      "action": false,
      "timestamp": "2025-07-03T16:21:39.050042+00:00"
    },
    {
      "id": "70ab7504f3e541a19775768053c2b277",
      "sender": "glozow",
      "payload": "Worst case EraseForBlock times were pretty bad (if you have tons of transactions each spending hundreds of inputs all conflicting with the block)",
      "action": false,
      "timestamp": "2025-07-03T16:21:40.743885+00:00"
    },
    {
      "id": "a5fb3b1853fc4d369d451c5e78177397",
      "sender": "glozow",
      "payload": "yeah, I'm getting 35ms on my machine",
      "action": false,
      "timestamp": "2025-07-03T16:21:48.762289+00:00"
    },
    {
      "id": "92e17b2f1f404f84a122a9a619ccfb0f",
      "sender": "sipa",
      "payload": "EraseForBlock, but also EraseForPeer could trigger most (but not all) of the same work, which is potentially triggerable by non-miners",
      "action": false,
      "timestamp": "2025-07-03T16:22:25.414304+00:00"
    },
    {
      "id": "3d020c72b18c4d49bdd605af7b51f5b7",
      "sender": "instagibbs",
      "payload": "due to outpoint map?",
      "action": false,
      "timestamp": "2025-07-03T16:23:19.341568+00:00"
    },
    {
      "id": "f7991aca4a2449a2a1c8299491859f14",
      "sender": "glozow",
      "payload": "Yes. EraseForBlock is slightly worse because it has the loop that builds the set of wtxids to erase (each of the 1750 wtxids is added ~180 times). And then it has to erase all of those entries from the outpoints map",
      "action": false,
      "timestamp": "2025-07-03T16:23:38.368178+00:00"
    },
    {
      "id": "0eba954d476e4fd4b9853534a6081052",
      "sender": "instagibbs",
      "payload": "\ud83d\udc4d",
      "action": false,
      "timestamp": "2025-07-03T16:24:52.534323+00:00"
    },
    {
      "id": "8669933033df4631908846907a96b7a8",
      "sender": "glozow",
      "payload": "The current ideated formula is that \"announcement count\" becomes 1 + floor(vin.size() / 10) for each tx. So the first 9 inputs are \"free\" and this limit is hopefully not relevant to normal transactions",
      "action": false,
      "timestamp": "2025-07-03T16:24:55.285612+00:00"
    },
    {
      "id": "1bde11e105e249b89e2c205f44b6acb4",
      "sender": "sipa",
      "payload": "the vin.size()/10 would be deduplicated across peers, while the 1 part isn't",
      "action": false,
      "timestamp": "2025-07-03T16:26:03.369728+00:00"
    },
    {
      "id": "efd648c37f0e4966a7aa1aa6aa0d4140",
      "sender": "sipa",
      "payload": "as each tx's inputs only appear once in the outpoint index",
      "action": false,
      "timestamp": "2025-07-03T16:26:18.353391+00:00"
    },
    {
      "id": "0a5091a639c8430ea42886a998367750",
      "sender": "glozow",
      "payload": "right that part is similar to the memusage metric",
      "action": false,
      "timestamp": "2025-07-03T16:27:55.323592+00:00"
    },
    {
      "id": "bdffca5a6d0b43a8bbed67c0a37d42c2",
      "sender": "glozow",
      "payload": "Since last week I've also added sipa's simulation fuzzer + a few small tweaks and tests",
      "action": false,
      "timestamp": "2025-07-03T16:28:56.990391+00:00"
    },
    {
      "id": "f0eb0e64e42f410898962b55e3e10c02",
      "sender": "glozow",
      "payload": "that's all the updates",
      "action": false,
      "timestamp": "2025-07-03T16:29:04.432684+00:00"
    },
    {
      "id": "013ab3d36e864f1296ad84114008f5c3",
      "sender": "achow101",
      "payload": "#topic QML GUI WG Update (jarolrod, johnny9dev)",
      "action": false,
      "timestamp": "2025-07-03T16:29:45.136863+00:00"
    },
    {
      "id": "31ef7a2892074a19b928d2aa5441d860",
      "sender": "johnny9dev",
      "payload": "Not much this week on QML work. bitcoin-core/gui-qml#450 got merged and hebasto and pinheadmz are making good progress on  bitcoin-core/gui-qml#472.",
      "action": false,
      "timestamp": "2025-07-03T16:30:11.603396+00:00"
    },
    {
      "id": "1aef93f4017741348f4dec6c13cf448c",
      "sender": "johnny9dev",
      "payload": "Thats all for now",
      "action": false,
      "timestamp": "2025-07-03T16:30:11.693668+00:00"
    },
    {
      "id": "172c0232560f45debc89b7aa870d17cb",
      "sender": "corebot",
      "payload": "https://github.com/bitcoin-core/gui-qml/issues/450 | Add Multiple Recipients option to the Send form by johnny9 \u00b7 Pull Request #450 \u00b7 bitcoin-core/gui-qml \u00b7 GitHub",
      "action": false,
      "timestamp": "2025-07-03T16:30:13.697589+00:00"
    },
    {
      "id": "bd86a7a43b274166ae3fe10145ee5ec6",
      "sender": "corebot",
      "payload": "https://github.com/bitcoin-core/gui-qml/issues/472 | Rebase gui-qml on bitcoin/bitcoin, include qt6 and cmake by pinheadmz \u00b7 Pull Request #472 \u00b7 bitcoin-core/gui-qml \u00b7 GitHub",
      "action": false,
      "timestamp": "2025-07-03T16:30:19.707729+00:00"
    },
    {
      "id": "efd6d5a7fa664ee386973a0a1380c4dc",
      "sender": "achow101",
      "payload": "Any other topics to discuss?",
      "action": false,
      "timestamp": "2025-07-03T16:30:30.548524+00:00"
    },
    {
      "id": "edb6dbe65d714ccdaf03d70496f88c91",
      "sender": "l0rinc",
      "payload": "I have a mempool related question regarding https://github.com/bitcoin/bitcoin/pull/32827#issue-3186436123",
      "action": false,
      "timestamp": "2025-07-03T16:31:13.892686+00:00"
    },
    {
      "id": "9e99f36448db4048a133f225db82b3c1",
      "sender": "l0rinc",
      "payload": "do we need to keep the mempool stats up-to-date when the mempool is still empty? My understanding is that when it becomes empty we definitely need to keep the fee estimation state updated, but not sure if that's necessary during IBD. And if I try skipping `MempoolTransactionsRemovedForBlock` notification for the resulting empty vector of removals, I'm getting a test failure and need some help in deciding if the test shows a representative behavior",
      "action": false,
      "timestamp": "2025-07-03T16:31:47.221314+00:00"
    },
    {
      "id": "ca883f9da39645f0a5881f8fb59ee563",
      "sender": "l0rinc",
      "payload": "or not - would be nice if we could avoid adding another callback into the validation queue...",
      "action": false,
      "timestamp": "2025-07-03T16:31:47.335315+00:00"
    },
    {
      "id": "aff4312ee7e54c16be3098a5310c5baa",
      "sender": "achow101",
      "payload": "#topic mempool in ibd",
      "action": false,
      "timestamp": "2025-07-03T16:31:49.293442+00:00"
    },
    {
      "id": "c4a8fe59a2f34a598370832305625e8a",
      "sender": "glozow",
      "payload": "Is the question whether the fee estimator needs to know about every `MempoolTransactionsRemovedForBlock`?",
      "action": false,
      "timestamp": "2025-07-03T16:33:01.275197+00:00"
    },
    {
      "id": "76e08eb8fe3a4351ba0a88ae52e56162",
      "sender": "l0rinc",
      "payload": "yes, in case of no removals",
      "action": false,
      "timestamp": "2025-07-03T16:33:29.859797+00:00"
    },
    {
      "id": "3b756dbb7d5f41359ed919acbe9fb906",
      "sender": "l0rinc",
      "payload": "as is the case as far as I can tell during IBD before any mempool activity",
      "action": false,
      "timestamp": "2025-07-03T16:33:57.870569+00:00"
    },
    {
      "id": "3145f4bddce34e3cb3dfddddb874ceaf",
      "sender": "abubakarsadiq",
      "payload": "l0rinc: is it the fee estimator test that is failing?",
      "action": false,
      "timestamp": "2025-07-03T16:33:59.049265+00:00"
    },
    {
      "id": "7d3593b043fe47c4a0cca9975bdbf5e0",
      "sender": "l0rinc",
      "payload": "it's feature_fee_estimation",
      "action": false,
      "timestamp": "2025-07-03T16:34:28.368422+00:00"
    },
    {
      "id": "b591df55bc974e97b75a00021e62cf8e",
      "sender": "glozow",
      "payload": "I think this is the only way the fee estimator updates `txHeight`",
      "action": false,
      "timestamp": "2025-07-03T16:34:50.991305+00:00"
    },
    {
      "id": "e08ceacd1d714904937b8bd56d00d1ce",
      "sender": "glozow",
      "payload": "Is this slowing IBD down though? Doesn't this happen on a background thread?",
      "action": false,
      "timestamp": "2025-07-03T16:35:20.041594+00:00"
    },
    {
      "id": "71013882cdc24c5eaee77d5543275e82",
      "sender": "abubakarsadiq",
      "payload": "shouldn't it be no-op when their is no data on mempool, is their a measurable improvement from skipping that?",
      "action": false,
      "timestamp": "2025-07-03T16:35:28.565346+00:00"
    },
    {
      "id": "fb6ff0dc9bc04931a6a171235c08145c",
      "sender": "jonatack",
      "payload": "hi",
      "action": false,
      "timestamp": "2025-07-03T16:36:05.011019+00:00"
    },
    {
      "id": "71b45831228e428890c0d9339291c332",
      "sender": "l0rinc",
      "payload": "glozow: it's blocking the queue, as furzsy sais:",
      "action": false,
      "timestamp": "2025-07-03T16:36:27.430335+00:00"
    },
    {
      "id": "aeef4e9cf5c04f7cb59020c7535aa735",
      "sender": "l0rinc",
      "payload": "> First quick glance it seems that if the mempool is empty; we could avoid calling removeForBlock entirely. Which will save us from adding another callback into the validation queue too, which will leave space for processing another block during ibd.",
      "action": false,
      "timestamp": "2025-07-03T16:36:32.761989+00:00"
    },
    {
      "id": "c86355b8f48447e186b820ea126f8955",
      "sender": "l0rinc",
      "payload": "> Yet, that was a fast check. Should check who is using the MempoolTransactionsRemovedForBlock event.",
      "action": false,
      "timestamp": "2025-07-03T16:36:32.875861+00:00"
    },
    {
      "id": "b1a9fe4bc07448fb918d6a71ab3130f5",
      "sender": "l0rinc",
      "payload": "https://github.com/bitcoin/bitcoin/pull/32730#discussion_r2140931183",
      "action": false,
      "timestamp": "2025-07-03T16:36:38.710949+00:00"
    },
    {
      "id": "c11e7230eff0450e94124f9bb7c1f3b4",
      "sender": "l0rinc",
      "payload": "We don't have to resolve it here, if anyone has insights, please add it to the PR - otherwise I will keep the MempoolTransactionsRemovedForBlock call for empty txs_removed_for_block as well",
      "action": false,
      "timestamp": "2025-07-03T16:38:03.728953+00:00"
    },
    {
      "id": "59bfb0d8cfc44b69ab2efb300557510c",
      "sender": "abubakarsadiq",
      "payload": "glozow: yes, we update `nHeight` after we are done with ibd and update the fee estimator stats for the first time it recorded data is marked as confirmed because of a new block.",
      "action": false,
      "timestamp": "2025-07-03T16:38:10.122456+00:00"
    },
    {
      "id": "9f2807c51a8846dd96cd3a0b38465870",
      "sender": "glozow",
      "payload": "so the fee estimator doesn't do anything during IBD?",
      "action": false,
      "timestamp": "2025-07-03T16:38:40.879059+00:00"
    },
    {
      "id": "dc3a4375fd0845d6bd2ffe745d11e267",
      "sender": "abubakarsadiq",
      "payload": "yes it does not, it has to see transaction enter mempool first.",
      "action": false,
      "timestamp": "2025-07-03T16:40:17.420978+00:00"
    },
    {
      "id": "73eab69dc39a4a78abc3556c8b5d042f",
      "sender": "glozow",
      "payload": "I meant to ask if the fee estimator gated on IBD?",
      "action": false,
      "timestamp": "2025-07-03T16:41:11.606715+00:00"
    },
    {
      "id": "7f6774ee71fe45e68b589bb23eb11fd2",
      "sender": "glozow",
      "payload": "if its functions are gated*",
      "action": false,
      "timestamp": "2025-07-03T16:41:28.073505+00:00"
    },
    {
      "id": "e8888d16b7cb47e49ef7f74cc4147646",
      "sender": "glozow",
      "payload": "nvm, can look at this later",
      "action": false,
      "timestamp": "2025-07-03T16:42:34.505494+00:00"
    },
    {
      "id": "1b1d8118cee647ea8f35085565dd1812",
      "sender": "abubakarsadiq",
      "payload": "the updates are redundant, we don't do anything and can be avoided I think.",
      "action": false,
      "timestamp": "2025-07-03T16:42:42.625599+00:00"
    },
    {
      "id": "a47342577f06438aa37e81872ca1401c",
      "sender": "abubakarsadiq",
      "payload": "I started looking at it in https://github.com/bitcoin/bitcoin/pull/32748",
      "action": false,
      "timestamp": "2025-07-03T16:42:51.796876+00:00"
    },
    {
      "id": "331b72c1ea0c4543829fd9ddd1c10324",
      "sender": "l0rinc",
      "payload": "thanks, that's it from me",
      "action": false,
      "timestamp": "2025-07-03T16:43:58.439354+00:00"
    },
    {
      "id": "e5eb3d051d51414391b01f1ccfa5f587",
      "sender": "achow101",
      "payload": "Any other topics?",
      "action": false,
      "timestamp": "2025-07-03T16:44:36.330927+00:00"
    },
    {
      "id": "e00d1abb9123422c89e62b0a3469fc90",
      "sender": "achow101",
      "payload": "#endmeeting",
      "action": false,
      "timestamp": "2025-07-03T16:46:22.031257+00:00"
    }
  ],
  "events": [
    {
      "event_type": "START_MEETING",
      "message": {
        "id": "80b90406240c4b00b6cdd0b3508bb527",
        "sender": "achow101",
        "payload": "#startmeeting",
        "action": false,
        "timestamp": "2025-07-03T16:00:24.360179+00:00"
      },
      "operand": null,
      "id": "80b90406240c4b00b6cdd0b3508bb527",
      "timestamp": "2025-07-03T16:00:24.360179+00:00"
    },
    {
      "event_type": "TOPIC",
      "message": {
        "id": "5ad406f17fc049b79fdd800b656ec263",
        "sender": "achow101",
        "payload": "#topic Erlay WG Update (sr_gi, gleb)",
        "action": false,
        "timestamp": "2025-07-03T16:01:20.154675+00:00"
      },
      "operand": "Erlay WG Update (sr_gi, gleb)",
      "id": "5ad406f17fc049b79fdd800b656ec263",
      "timestamp": "2025-07-03T16:01:20.154675+00:00"
    },
    {
      "event_type": "TOPIC",
      "message": {
        "id": "69f6c667ea644b11a48f123d176e1270",
        "sender": "achow101",
        "payload": "#topic Fuzzing WG Update (dergoegge)",
        "action": false,
        "timestamp": "2025-07-03T16:05:25.056319+00:00"
      },
      "operand": "Fuzzing WG Update (dergoegge)",
      "id": "69f6c667ea644b11a48f123d176e1270",
      "timestamp": "2025-07-03T16:05:25.056319+00:00"
    },
    {
      "event_type": "TOPIC",
      "message": {
        "id": "9b6371d801b04bad9b6da1b8c4c467b3",
        "sender": "achow101",
        "payload": "#topic Cluster Mempool WG Update (sdaftuar, sipa)",
        "action": false,
        "timestamp": "2025-07-03T16:07:22.231690+00:00"
      },
      "operand": "Cluster Mempool WG Update (sdaftuar, sipa)",
      "id": "9b6371d801b04bad9b6da1b8c4c467b3",
      "timestamp": "2025-07-03T16:07:22.231690+00:00"
    },
    {
      "event_type": "TOPIC",
      "message": {
        "id": "cceb4363d7dd4fedab5204cf413550df",
        "sender": "achow101",
        "payload": "#topic MuSig2 WG Update (achow101, rkrux)",
        "action": false,
        "timestamp": "2025-07-03T16:12:42.837820+00:00"
      },
      "operand": "MuSig2 WG Update (achow101, rkrux)",
      "id": "cceb4363d7dd4fedab5204cf413550df",
      "timestamp": "2025-07-03T16:12:42.837820+00:00"
    },
    {
      "event_type": "TOPIC",
      "message": {
        "id": "31c57d54982049218a48ec397f490fdb",
        "sender": "achow101",
        "payload": "#topic cluster mempool still",
        "action": false,
        "timestamp": "2025-07-03T16:14:48.196147+00:00"
      },
      "operand": "cluster mempool still",
      "id": "31c57d54982049218a48ec397f490fdb",
      "timestamp": "2025-07-03T16:14:48.196147+00:00"
    },
    {
      "event_type": "TOPIC",
      "message": {
        "id": "394c11b39d734c65a982a52dcb17e408",
        "sender": "achow101",
        "payload": "#topic MuSig2 WG Update (achow101, rkrux)",
        "action": false,
        "timestamp": "2025-07-03T16:19:57.850037+00:00"
      },
      "operand": "MuSig2 WG Update (achow101, rkrux)",
      "id": "394c11b39d734c65a982a52dcb17e408",
      "timestamp": "2025-07-03T16:19:57.850037+00:00"
    },
    {
      "event_type": "TOPIC",
      "message": {
        "id": "b9853be5ae5a465eb34b40cd4e84f9f9",
        "sender": "achow101",
        "payload": "#topic orphan resolution WG Update (glozow)",
        "action": false,
        "timestamp": "2025-07-03T16:20:23.521673+00:00"
      },
      "operand": "orphan resolution WG Update (glozow)",
      "id": "b9853be5ae5a465eb34b40cd4e84f9f9",
      "timestamp": "2025-07-03T16:20:23.521673+00:00"
    },
    {
      "event_type": "TOPIC",
      "message": {
        "id": "013ab3d36e864f1296ad84114008f5c3",
        "sender": "achow101",
        "payload": "#topic QML GUI WG Update (jarolrod, johnny9dev)",
        "action": false,
        "timestamp": "2025-07-03T16:29:45.136863+00:00"
      },
      "operand": "QML GUI WG Update (jarolrod, johnny9dev)",
      "id": "013ab3d36e864f1296ad84114008f5c3",
      "timestamp": "2025-07-03T16:29:45.136863+00:00"
    },
    {
      "event_type": "TOPIC",
      "message": {
        "id": "aff4312ee7e54c16be3098a5310c5baa",
        "sender": "achow101",
        "payload": "#topic mempool in ibd",
        "action": false,
        "timestamp": "2025-07-03T16:31:49.293442+00:00"
      },
      "operand": "mempool in ibd",
      "id": "aff4312ee7e54c16be3098a5310c5baa",
      "timestamp": "2025-07-03T16:31:49.293442+00:00"
    },
    {
      "event_type": "LINK",
      "message": {
        "id": "b1a9fe4bc07448fb918d6a71ab3130f5",
        "sender": "l0rinc",
        "payload": "https://github.com/bitcoin/bitcoin/pull/32730#discussion_r2140931183",
        "action": false,
        "timestamp": "2025-07-03T16:36:38.710949+00:00"
      },
      "operand": "https://github.com/bitcoin/bitcoin/pull/32730#discussion_r2140931183",
      "id": "b1a9fe4bc07448fb918d6a71ab3130f5",
      "timestamp": "2025-07-03T16:36:38.710949+00:00"
    },
    {
      "event_type": "END_MEETING",
      "message": {
        "id": "e00d1abb9123422c89e62b0a3469fc90",
        "sender": "achow101",
        "payload": "#endmeeting",
        "action": false,
        "timestamp": "2025-07-03T16:46:22.031257+00:00"
      },
      "operand": null,
      "id": "e00d1abb9123422c89e62b0a3469fc90",
      "timestamp": "2025-07-03T16:46:22.031257+00:00"
    }
  ],
  "aliases": {},
  "vote_in_progress": false,
  "motion_index": null
}