<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0" xmlns:itunes="http://www.itunes.com/dtds/podcast-1.0.dtd" xmlns:googleplay="http://www.google.com/schemas/play-podcasts/1.0"><channel><title><![CDATA[bitcoin++'s Insider Edition: Last Week In Bitcoin]]></title><description><![CDATA[The "Last Week In Bitcoin" newsletter is a weekly publication from Bitcoin++'s open-source reporter, Tuma. Tuma brings you the key points from open-source developer calls in the bitcoin space.]]></description><link>https://insider.btcpp.dev/s/last-week-in-bitcoin</link><image><url>https://substackcdn.com/image/fetch/$s_!Y_ng!,w_256,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F30eeeceb-d343-4c5d-93d2-4da0d7357725_650x650.png</url><title>bitcoin++&apos;s Insider Edition: Last Week In Bitcoin</title><link>https://insider.btcpp.dev/s/last-week-in-bitcoin</link></image><generator>Substack</generator><lastBuildDate>Wed, 04 Nov 2026 11:22:45 GMT</lastBuildDate><atom:link href="https://insider.btcpp.dev/feed" rel="self" type="application/rss+xml"/><copyright><![CDATA[btcplusplus LLC]]></copyright><language><![CDATA[en]]></language><webMaster><![CDATA[hello@btcpp.dev]]></webMaster><itunes:owner><itunes:email><![CDATA[hello@btcpp.dev]]></itunes:email><itunes:name><![CDATA[~nifty~]]></itunes:name></itunes:owner><itunes:author><![CDATA[~nifty~]]></itunes:author><googleplay:owner><![CDATA[hello@btcpp.dev]]></googleplay:owner><googleplay:email><![CDATA[hello@btcpp.dev]]></googleplay:email><googleplay:author><![CDATA[~nifty~]]></googleplay:author><itunes:block><![CDATA[Yes]]></itunes:block><item><title><![CDATA[New Security Policy — Last Week in Bitcoin (Oct 26 - Nov 01)]]></title><description><![CDATA[Hi Insiders.]]></description><link>https://insider.btcpp.dev/p/new-security-policy-last-week-in</link><guid isPermaLink="false">https://insider.btcpp.dev/p/new-security-policy-last-week-in</guid><dc:creator><![CDATA[Tuma (I WILL NEVER DM YOU)]]></dc:creator><pubDate>Mon, 02 Nov 2026 15:03:00 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!1zTq!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2ec7f58c-4a32-419f-b80a-78c2a7765b80_1600x900.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p><em>Hi Insiders. This is Tuma, open-source reporter from the Insider Edition.</em></p><p><em>In this week&#8217;s update we feature Nut November, the month-long hackathon of the Cashu ecosystem coming back for the second edition.</em></p><p><em>We also cover several news from the Bitcoin ecosystem. A new BTCPay Server vulnerability has been discovered, Fedimint is experimenting with the Ark protocol through Bark, Librer&#237;a de Satoshi is rebranding to ISMOS, and the updated security policy in Bitcoin Core.</em></p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!1zTq!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2ec7f58c-4a32-419f-b80a-78c2a7765b80_1600x900.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!1zTq!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2ec7f58c-4a32-419f-b80a-78c2a7765b80_1600x900.jpeg 424w, https://substackcdn.com/image/fetch/$s_!1zTq!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2ec7f58c-4a32-419f-b80a-78c2a7765b80_1600x900.jpeg 848w, https://substackcdn.com/image/fetch/$s_!1zTq!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2ec7f58c-4a32-419f-b80a-78c2a7765b80_1600x900.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!1zTq!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2ec7f58c-4a32-419f-b80a-78c2a7765b80_1600x900.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!1zTq!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2ec7f58c-4a32-419f-b80a-78c2a7765b80_1600x900.jpeg" width="1456" height="819" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/2ec7f58c-4a32-419f-b80a-78c2a7765b80_1600x900.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:819,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:347184,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/jpeg&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://insider.btcpp.dev/i/223152949?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2ec7f58c-4a32-419f-b80a-78c2a7765b80_1600x900.jpeg&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!1zTq!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2ec7f58c-4a32-419f-b80a-78c2a7765b80_1600x900.jpeg 424w, https://substackcdn.com/image/fetch/$s_!1zTq!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2ec7f58c-4a32-419f-b80a-78c2a7765b80_1600x900.jpeg 848w, https://substackcdn.com/image/fetch/$s_!1zTq!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2ec7f58c-4a32-419f-b80a-78c2a7765b80_1600x900.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!1zTq!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F2ec7f58c-4a32-419f-b80a-78c2a7765b80_1600x900.jpeg 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image buttonBase-GK1x3M"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg" class="icon-noB79L"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image buttonBase-GK1x3M"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2 icon-noB79L"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><div><hr></div><h1><strong>Highlights from the Bitcoin developer ecosystem</strong></h1><p><em>I spent 10+ hours in open-source developer calls in the Bitcoin ecosystem last week. Here is what caught my eye</em>:</p><ul><li><p><a href="https://nutnovember.org/">Nut November</a> &#8212; the month-long hackathon of the Cashu ecosystem &#8212; comes back for its second edition.</p><ul><li><p>During the monthly call, on Thursday 29th, Cashu developers announced the second edition of Nut November, a month-long hackathon focused on Cashu.</p></li><li><p>The event features 6 different prizes. Other than the best overall, developers can participate to win a prize for the most difficult technical challenge, the craziest experiment, the best design, and the best tool for value4value. A special prize will also be awarded to first-time contributors to the Cashu ecosystem.</p></li><li><p>At the time of writing, the prize-pool amounts to more than 1 milion sats. It is possible to contribute directly to the pool on the hackathon website.</p></li></ul></li></ul><div><hr></div><h1><strong>A BIPs Update</strong></h1><p><em>In the last days there was some movement in the <a href="https://github.com/bitcoin/bips">BIP repository</a>. Specifically, one new BIP has been assigned a number by BIP maintainer <a href="https://github.com/murchandamus">Murchandamus</a>.</em></p><h2><strong>Numbered BIPs</strong></h2><p><em>A list of recently published BIPs</em></p><h3><strong>BIP333: BIP324 One-Byte Message Type ID Alias Assignment</strong></h3><p><strong>Authors</strong>: <a href="https://github.com/ajtowns">Anthony Towns</a></p><p><strong>Assigned On</strong>: October 28th, 2026</p><p><strong>Layer</strong>: Peer Services</p><p><a href="https://github.com/bitcoin/bips/pull/2301">PR2301</a> introduces BIP333, which defines a new <code>set324alias</code> message that permits peers using <a href="https://github.com/bitcoin/bips/blob/master/bip-0324.mediawiki">BIP324</a> &#8212; version 2 of the P2P encrypted transport protocol &#8212; to assign one-byte message type ID aliases to improve bandwidth usage for their outbound messages. BIP324 assigns one-byte IDs via a fixed table, requiring centralized coordination and introducing risks of conflicts. This new proposal allows peers to choose their own one-byte IDs at runtime for their own outgoing messages.</p><div><hr></div><h1>Other News from the Bitcoin World</h1><ul><li><p><strong>BTCPay Server Vulnerability</strong>: On Sunday, November 1st, the BTCPay Server team <a href="https://x.com/BtcpayServer/status/2117020340815819262">warned users</a> that they were receiving reports of hot wallets being drained. The team recommended to shut down instances to prevent loss of funds</p><ul><li><p>The vulnerability <a href="https://x.com/BtcpayServer/status/2117106238123123008">was confirmed</a> this morning, November 2nd. The BTCPay Server team identified an attack vector targeting instances of the software running versions v2.4.1 and older. At the time of writing, no details about the vulnerability were released.</p></li><li><p>According to the team, users running v2.4.7 &#8212; the latest release &#8212; seems not to be affected by the vulnerability, since no credible report has been produced. The team recommends keeping instances up-to-date with the latest security releases.</p></li></ul></li><li><p><strong>Fedimint &lt;&gt; Bark</strong>: Fedimint creator Eric Sirion <a href="https://x.com/EricSirion/status/2115903835621171395">published</a> a video demoing a Fedimint Lightning Gateway based on Bark &#8212; the Ark implementation by Second.</p><ul><li><p>A Federation usually needs to run a Lightning Node to connect its users to the Lightning Network. This experiment demonstrated the possibility to run a Federation&#8217;s Gateway based on a simple Ark wallet.</p></li></ul></li><li><p><strong>Librer&#237;a de Satoshi is now ISMOS</strong>: From the largest technical education organization focused on teaching Bitcoin to Spanish-speaking individuals, Librer&#237;a de Satoshi is evolving into a global, full developer pipeline that aims to bootstrap careers in the freedom tech and open-source as ecosystem, called ISMOS. Check out my <a href="https://x.com/btcinsider__/status/2116214127173525790">latest article</a> about ISMOS.</p></li><li><p><strong>Security policy update in Bitcoin Core</strong>: Following the wave of LLM-assisted vulnerability reports, Bitcoin Core developers <a href="https://groups.google.com/g/bitcoindev/c/70VSp_ARD5Q">decided</a> to update the security policy of the reference implementation.</p><ul><li><p>The update covers those vulnerabilities that are deemed &#8220;easily discoverable&#8221; thanks to the help of LLM-assisted tools. For this specific case, security patches will be releases as soon as possible and the fix backported to any maintained version.</p></li><li><p>The new rule has already been applied. Three vulnerabilities have been fixed and disclosed right away &#8212; namely <a href="https://github.com/bitcoin/bitcoin/pull/36665">PR3665</a>, <a href="https://github.com/bitcoin/bitcoin/pull/36667">PR36667</a>, and <a href="https://github.com/bitcoin/bitcoin/pull/36669">PR36669</a>. Since these fixes have been merged after v32.0 had already been tagged, the major release was never published. Instead, <a href="https://github.com/bitcoin/bitcoin/releases/tag/v32.1">v32.1</a> &#8212; containing those fixes &#8212; has been officially published this week.</p></li></ul></li></ul><div><hr></div><h1>More from BTC++ Insider Edition</h1><h3>News Hour</h3><ul><li><p><a href="https://x.com/btcinsider__/status/2116214009187959182">BTC++ News Hour</a>: Check out our Friday livestream, where Matthew Vuk and I discuss the most interesting news of the week from the Bitcoin developer ecosystem. This time, we hosted <a href="https://x.com/Dulce_xyz">Dulce Villarreal</a> to discuss the recent rebranding of Librer&#237;a de Satoshi to <a href="https://x.com/ISMOSxyz">ISMOS</a>.</p></li></ul><h3>Videos</h3><ul><li><p><a href="https://x.com/btcinsider__/status/2114779092163682619">James Pierog &#8212; BTC++ Insider Interviews</a>: James Pierog &#8212; co-founder and CEO of Glimpse &#8212; talks to the Insider about the motivations behind building a prediction market on Bitcoin.</p></li><li><p><a href="https://x.com/btcinsider__/status/2115093267876581447">Jesse Shrader &#8212; BTC++ Insider Interviews</a>: Jesse Shrader &#8212; Amboss co-founder &#8212; explains to the Insider why he believes embracing stablecoins can benefit Bitcoin and the Lightning Network, and why he&#8217;s excited about Wavelength.</p></li><li><p><a href="https://x.com/btcinsider__/status/2115141482042855544">Dario Nakamoto &#8212; BTC++ Insider Interviews</a>: Dario Nakamoto of Lightning Labs explains to the Insider how Wavelength works and how VTXOs carry Taproot Assets, secured by the Ark policy tree.</p></li><li><p><a href="https://x.com/btcinsider__/status/2115443479702872137">Alessandro Grasso &#8212; BTC++ Insider Interviews</a>: Alessandro Grasso &#8212; Career Service Specialist of Blox Space &#8212; talks to the Insider about how the Turin hub channels the city&#8217;s Bitcoin ecosystem by connecting local talent with the companies hiring them.</p></li><li><p><a href="https://x.com/btcinsider__/status/2115503866573701624">Birk &#8212; BTC++ Insider Interviews</a>: Birk &#8212; COO of the RGB Association &#8212; explains to the Insider how RGB brings digital assets and private contracts to Bitcoin through client-side validation and off-chain, UTXO-based transfers.</p></li><li><p><a href="https://x.com/btcinsider__/status/2115852654295257339">Dario Zeugmaster&#8212; BTC++ Insider Interviews</a>: Cashu developer Dario demos live to the Insider tap-to-pay UX on Nucula: open hardware for &#8220;everything that used to have a coin slot.&#8221; Vending machines, laundromats, ticketing.</p></li></ul><h3>Articles</h3><ul><li><p><a href="https://insider.btcpp.dev/p/fail-does-not-fail-the-process-this">&#127875; FAIL does not fail the process - This Week in Bitcoin Core #64</a></p></li><li><p><a href="https://x.com/btcinsider__/status/2116214127173525790">Librer&#237;a de Satoshi is now ISMOS</a></p></li></ul><div><hr></div><p><em>Looking for an opportunity to join up with some bitcoin devs in person? Join us in</em> <a href="https://btcpp.dev/seoul?code=TUMA20">Seoul</a> <em>this November 5-6 to talk about privacy in Bitcoin!</em></p>]]></content:encoded></item><item><title><![CDATA[🎃 FAIL does not fail the process - This Week in Bitcoin Core #64]]></title><description><![CDATA[A ghostly FAIL haunts stderr, and the process lives on &#128123;]]></description><link>https://insider.btcpp.dev/p/fail-does-not-fail-the-process-this</link><guid isPermaLink="false">https://insider.btcpp.dev/p/fail-does-not-fail-the-process-this</guid><dc:creator><![CDATA[kevkevin]]></dc:creator><pubDate>Fri, 30 Oct 2026 14:17:44 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!Y_ng!,w_256,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F30eeeceb-d343-4c5d-93d2-4da0d7357725_650x650.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>Hello &#128075; folks, I&#8217;m Kevkevin. I&#8217;m an open-source developer and reporter for Insider Edition. Happy Halloween &#127875;! The scariest thing this week was a memory bug, and Bitcoin Core moved fast to put it to rest.</p><p><code>32.1</code> came out quickly because of security fixes. <a href="https://bitcoincore.org/en/2026/10/28/disclose-tcp-oom/">CVE-2026-117350</a> let a peer exhaust a node&#8217;s memory by sending TCP urgent data on anything other than Linux. It was reported on 2026-10-23, and <code>32.1</code>, <code>31.2</code>, <code>30.4</code>, and <code>29.5</code> were all out by 2026-10-28.</p><p>On the merge side, the fuzz targets got a reachability tracker. A missed goal leaves a ghostly <code>FAIL</code> on stderr, but the process still exits zero unless <code>FUZZ_ENFORCE_REACHABILITY=1</code>. And <code>-acceptnonstdtxn=1</code> on test nets now checks only consensus flags, so non-standard scripts can be relayed and mined.</p><h4>Merged PR&#8217;s</h4><h5>Every week, several changes are officially added to Bitcoin Core. This week, 27 changes were merged. Here are some I found interesting this week.</h5><ul><li><p><strong><a href="https://github.com/bitcoin/bitcoin/pull/36098">fuzz: add corpus reachability checks</a></strong> by <strong><a href="https://github.com/HowHsu">Hao Xu</a></strong></p></li></ul><p>A <code>ReachabilityGoal</code> is identified by the <code>std::source_location</code> of its declaration: file, line, and column. <code>RegisterReachabilityGoal</code> runs before any input, and <code>ObserveReachabilityGoal</code> ORs a hit into that goal for the life of the process. The tracker destructor writes one line per goal, <code>PASS</code> or <code>FAIL reachability goal "..."</code>, with the file, line, and column.</p><p><code>FUZZ_ENFORCE_REACHABILITY</code> is read in the constructor. Unset or <code>0</code> leaves enforcement off, so a miss is only that line. <code>1</code> makes a miss call <code>std::_Exit(EXIT_FAILURE)</code> after flushing stderr. Any other value aborts immediately. The instrumented targets include <code>cmpctblock</code>, <code>p2p_handshake</code>, <code>package_eval</code>, <code>process_message</code>, <code>tx_pool</code>, <code>utxo_snapshot</code>, and <code>validation_load_mempool</code>. He replayed the current qa-assets corpora for those targets with <code>FUZZ_ENFORCE_REACHABILITY=1</code>.</p><ul><li><p><strong><a href="https://github.com/bitcoin/bitcoin/pull/29843">policy: Allow non-standard scripts with -acceptnonstdtxn=1 (test nets only)</a></strong> by <strong><a href="https://github.com/ajtowns">Anthony Towns</a></strong></p></li></ul><p><code>-acceptnonstdtxn=1</code> now also skips non-mandatory script checks. The option stays test-net only. <code>MemPoolAccept::PolicyScriptChecks</code> used to call <code>CheckInputScripts</code> with <code>STANDARD_SCRIPT_VERIFY_FLAGS</code> unconditionally. The flag set is now <code>STANDARD_SCRIPT_VERIFY_FLAGS</code> when <code>require_standard</code> is set, and <code>m_all_consensus_script_flags</code> when it is not. Those are the flags that may be enforced as consensus for some chain state, so a transaction that could become consensus-invalid is still rejected.</p><p><code>CheckInputScripts</code> takes <code>CheckInputScriptsFor::Mempool</code> or <code>::Block</code>. A script failure on the mempool path is <code>TX_NOT_STANDARD</code> and <code>mempool-script-verify-flag-failed</code>. On the block path it is <code>TX_CONSENSUS</code> and <code>block-script-verify-flag-failed</code>. In <code>p2p_segwit.py</code>, spending a higher-version witness output is now accepted on the node with <code>-acceptnonstdtxn</code>.</p><h5>There are always changes being updated and reviewed in real-time. Here are some notable PR&#8217;s that are still up and looking for reviews.</h5><ul><li><p><strong><a href="https://github.com/bitcoin/bitcoin/pull/36437">orphanage: Fix orphan reconsideration disconnect hole, add 1p1c invariant harness</a></strong> by <strong><a href="https://github.com/instagibbs">Gregory Sanders</a></strong></p></li></ul><p>The first commit adds <code>p2p_1p1c_liveness</code>, an end-to-end fuzz target for parent and child relay. It drives a real <code>PeerManager</code> with real messages and validation. If an honest peer announces the child of an acceptable parent and child, the child has to reach the mempool within a bounded time, whatever the other peers do. Known liveness holes are flags on the target that turn the check off once that hole is open.</p><p>The second commit hands reconsideration to a remaining announcer when the marked announcement is erased, and removes the flag for this hole. The follow-up that fills the remaining holes is #36506. On the channel he said v33 is the target for that follow-up.</p><blockquote><p>With that flag turned off, the target finds this bug on master from an empty corpus in under an hour on one core.</p></blockquote><h4>IRC meeting notes</h4><h5>Every week on Thursday, there is an IRC meeting. Here are some short notes from that meeting.</h5><pre><code><code>--- Topic 1 ---
&#120320;&#120321;&#120310;&#120304;&#120312;&#120310;&#120306;&#120320;-&#120323;: #topic Fuzzing WG Update (eugenesiegel, marcofleon)
&#120306;&#120322;&#120308;&#120306;&#120315;&#120306;&#120320;&#120310;&#120306;&#120308;&#120306;&#120313;: no update from my side

--- Topic 2 ---
&#120320;&#120321;&#120310;&#120304;&#120312;&#120310;&#120306;&#120320;-&#120323;: #topic QML GUI WG Update (johnny9dev)
&#120311;&#120316;&#120309;&#120315;&#120315;&#120326;&#120821;&#120305;&#120306;&#120323;: Merged in our integration test fixtures
&#120311;&#120316;&#120309;&#120315;&#120315;&#120326;&#120821;&#120305;&#120306;&#120323;: We're working through some multi wallet management improvements and threading
&#120311;&#120316;&#120309;&#120315;&#120315;&#120326;&#120821;&#120305;&#120306;&#120323;: Once those are in well be ready to focus in building up the staging branch.
&#120311;&#120316;&#120309;&#120315;&#120315;&#120326;&#120821;&#120305;&#120306;&#120323;: That's all for now.

--- Topic 3 ---
&#120320;&#120321;&#120310;&#120304;&#120312;&#120310;&#120306;&#120320;-&#120323;: #topic QA WG Update (brunoerg)
&#120303;&#120319;&#120322;&#120315;&#120316;&#120306;&#120319;&#120308;: just uploaded the results of a mutation testing for src/node/blockstorage.cpp, there are some interesting cases, in case anyone wants to see: https://mutanthub.space/projects/bitcoin/bitcoin/code/src/node/blockstorage.cpp?ref=4fe28722a572793da7614734a0c9cc8e1adc751a
&#120303;&#120319;&#120322;&#120315;&#120316;&#120306;&#120319;&#120308;: That's all
&#120326;&#120302;&#120315;&#120304;&#120326;: brunoerg these are some interesting mutations. I feel like this might actully be something an LLM might be good at writing fixes for.

--- Topic 4 ---
&#120320;&#120321;&#120310;&#120304;&#120312;&#120310;&#120306;&#120320;-&#120323;: that's all for the working groups! anything else to discuss?
&#120320;&#120321;&#120310;&#120304;&#120312;&#120310;&#120306;&#120320;-&#120323;: i think it's pretty impressive how we managed to crank out all those releases this week, kudos to everyone helping out
&#120320;&#120321;&#120310;&#120304;&#120312;&#120310;&#120306;&#120320;-&#120323;: as per https://bitcoincore.org/en/2026/10/28/disclose-tcp-oom/ : going from first report on 2026-10-23 to finishing release on 2026-10-28 must be a record?
&#120310;&#120315;&#120320;&#120321;&#120302;&#120308;&#120310;&#120303;&#120303;&#120320;: stickies-v +1, good work to everyone including builders for being available to get it done

--- Topic 5 ---
&#120326;&#120302;&#120315;&#120304;&#120326;: just curious, what exactly is the merge policy or is there one.
&#120326;&#120302;&#120315;&#120304;&#120326;: I've submitted some small patches over the years, but never really been clear on that
&#120326;&#120302;&#120315;&#120304;&#120326;: and the user docs on contributing doesn't really say anything of use
&#120320;&#120321;&#120310;&#120304;&#120312;&#120310;&#120306;&#120320;-&#120323;: afaik it's not documented explicitly no, it's also really hard to quantify that in exact non-gameable criteria
&#120326;&#120302;&#120315;&#120304;&#120326;: got it
&#120326;&#120302;&#120315;&#120304;&#120326;: in othere projects, there's sort of a two maintaner ack policy sometimes
&#120326;&#120302;&#120315;&#120304;&#120326;: wasn't sure what it might be in core since I've never observed any pattern
&#120323;&#120302;&#120320;&#120310;&#120313;&#120305;: yancy: there is _some_ reasoning in CONTRIBUTING.md, under "Decision Making" Process
&#120326;&#120302;&#120315;&#120304;&#120326;: vasild yeah, I've read that. I was just looking for feedback on if there was or wasn't a ACK merge policy, and it doesn't sound like there is.
&#120310;&#120315;&#120320;&#120321;&#120302;&#120308;&#120310;&#120303;&#120303;&#120320;: PRs can sit around for a long time for various reasons
&#120310;&#120315;&#120320;&#120321;&#120302;&#120308;&#120310;&#120303;&#120303;&#120320;: including lack of attention by reviewers
&#120326;&#120302;&#120315;&#120304;&#120326;: for sure. Shame reviewers :P
&#120320;&#120321;&#120310;&#120304;&#120312;&#120310;&#120306;&#120320;-&#120323;: can't remember the last time i saw a pr that was RFM and then not merged reasonably quickly; it's always lack of review/consensus in my experience

--- Topic 6 ---
&#120320;&#120321;&#120310;&#120304;&#120312;&#120310;&#120306;&#120320;-&#120323;: despite how quickly and seemingly smooth this release went, i wonder if there are things we can do to make it easier / more automated, so we can continue to quickly publish releases when necessary
&#120320;&#120321;&#120310;&#120304;&#120312;&#120310;&#120306;&#120320;-&#120323;: e.g. i think one unnecessary point of friction is that release notes are reviewed in the PR, and then again during a release. the release is often months after a PR was merged, so almost no one still has good context on that change. i feel like it makes more sense to just only review release notes in the first PR, and then the final release notes is a purely mechanistic aggregation of all those excerpts
&#120320;&#120321;&#120310;&#120304;&#120312;&#120310;&#120306;&#120320;-&#120323;: this might require some more (llm-lintable) rules on release notes in PRs, e.g. make sure they are assigned to an appropriate category, are complete, etc
&#120323;&#120302;&#120320;&#120310;&#120313;&#120305;: stickies-v: +1

--- Topic 7 ---
&#120310;&#120315;&#120320;&#120321;&#120302;&#120308;&#120310;&#120303;&#120303;&#120320;: eugenesiegel looking to get some eyes on #36437 which sets up a 1p1c fuzz harness for follow up work to improve robutness(up to a limit)
&#120306;&#120322;&#120308;&#120306;&#120315;&#120306;&#120320;&#120310;&#120306;&#120308;&#120306;&#120313;: instagibbs: might not have time to review soon (trying to add a feature to fuzzamoto), but after that's done I can
&#120310;&#120315;&#120320;&#120321;&#120302;&#120308;&#120310;&#120303;&#120303;&#120320;: cool, v33 is target for follow up which fixes the most egregious issues with few loc
</code></code></pre><p><a href="https://www.erisian.com.au/bitcoin-core-dev/log-2026-10-29.html">Read the full meeting</a></p><h4>Releases</h4><ul><li><p><a href="https://bitcoincore.org/en/releases/32.1/">32.1</a> and <a href="https://bitcoincore.org/bin/bitcoin-core-31.2/">31.2</a> were released 2026-10-27. Signed binaries for 32.1 are in <a href="https://bitcoincore.org/bin/bitcoin-core-32.1/">bitcoincore.org/bin/bitcoin-core-32.1</a>. This was a quick security release for<a href="https://bitcoincore.org/en/2026/10/28/disclose-tcp-oom/"> CVE-2026-117350</a>, with fixes <a href="https://github.com/bitcoin/bitcoin/pull/36665">#36665</a> and <a href="https://github.com/bitcoin/bitcoin/pull/36667">#36667</a> by Antoine Poinsot.</p></li><li><p><a href="https://bitcoincore.org/bin/bitcoin-core-30.4/">30.4</a> and <a href="https://bitcoincore.org/en/releases/29.5/">29.5</a> were released 2026-10-28. Both binary directories are up, with checksums.</p></li></ul><blockquote><p>Thank you for reading. Be sure to tune in again next week for your updates on Bitcoin Core!</p></blockquote><p>If there are any comments, suggestions, or errors, do not hesitate to reach out or comment.</p>]]></content:encoded></item><item><title><![CDATA[Payjoin <> CISA — Last Week in Bitcoin (Oct 19 - 25)]]></title><description><![CDATA[Hi Insiders.]]></description><link>https://insider.btcpp.dev/p/payjoin-cisa-last-week-in-bitcoin</link><guid isPermaLink="false">https://insider.btcpp.dev/p/payjoin-cisa-last-week-in-bitcoin</guid><dc:creator><![CDATA[Tuma (I WILL NEVER DM YOU)]]></dc:creator><pubDate>Mon, 26 Oct 2026 15:00:55 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!dxpd!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7885b8e1-3148-48e0-8903-f4a807a92450_1600x900.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p><em>Hi Insiders. This is Tuma, open-source reporter from the Insider Edition.</em></p><p><em>In this week&#8217;s update we feature the current work to add support for splicing and dual-funding to taproot channels in the BOLTs specifications.</em></p><p>We also cover several news from the Bitcoin ecosystem. Fabian Jahr is teaming with Payjoin to integrate that protocol with Cross-Input Signature Aggregation (CISA), Core developer l0rinc is working to remove <code>AssumeUTXO</code> , Wavelength is now available on Mainnet, and more.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!dxpd!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7885b8e1-3148-48e0-8903-f4a807a92450_1600x900.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!dxpd!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7885b8e1-3148-48e0-8903-f4a807a92450_1600x900.jpeg 424w, https://substackcdn.com/image/fetch/$s_!dxpd!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7885b8e1-3148-48e0-8903-f4a807a92450_1600x900.jpeg 848w, https://substackcdn.com/image/fetch/$s_!dxpd!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7885b8e1-3148-48e0-8903-f4a807a92450_1600x900.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!dxpd!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7885b8e1-3148-48e0-8903-f4a807a92450_1600x900.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!dxpd!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7885b8e1-3148-48e0-8903-f4a807a92450_1600x900.jpeg" width="1456" height="819" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/7885b8e1-3148-48e0-8903-f4a807a92450_1600x900.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:819,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:347184,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/jpeg&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://insider.btcpp.dev/i/222185158?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7885b8e1-3148-48e0-8903-f4a807a92450_1600x900.jpeg&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!dxpd!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7885b8e1-3148-48e0-8903-f4a807a92450_1600x900.jpeg 424w, https://substackcdn.com/image/fetch/$s_!dxpd!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7885b8e1-3148-48e0-8903-f4a807a92450_1600x900.jpeg 848w, https://substackcdn.com/image/fetch/$s_!dxpd!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7885b8e1-3148-48e0-8903-f4a807a92450_1600x900.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!dxpd!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7885b8e1-3148-48e0-8903-f4a807a92450_1600x900.jpeg 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image buttonBase-GK1x3M"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg" class="icon-noB79L"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image buttonBase-GK1x3M"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2 icon-noB79L"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><div><hr></div><h1><strong>Highlights from the Bitcoin developer ecosystem</strong></h1><p><em>I spent 10+ hours in open-source developer calls in the Bitcoin ecosystem last week. Here is what caught my eye</em>:</p><ul><li><p>Lightning developers are working to add support for splicing and dual-funding transactions in taproot channels</p><ul><li><p>During the monthly meeting, on Monday 19th, Lightning developers discussed the ongoing effort to add support for splicing and dual-funding transaction in taproot channels. The work is currently reviewable in <a href="https://github.com/lightning/bolts/pull/1324">PR1324</a> in the BOLTs repository.</p></li><li><p>Taproot Lightning channels were introduced last May as a way to improve privacy, security, and flexibility of the system. In particular, the new taproot channels use <a href="https://bitcoinops.org/en/topics/musig/#musig2">MuSig2</a> key aggregation to combine two keys into one, with the multisig output becoming a single P2TR key, and tapscript trees capabilities.</p></li><li><p>The new update to the specifications aims to add nonces in various messages of the peer protocol to allow creating musig2 partial signatures during dual-funding and splicing. It also allows to omit the <code>prevtx</code> field when using taproot, since that field had to be included to prevent transaction malleability when using pre-segwit inputs.</p></li></ul></li></ul><div><hr></div><h1><strong>A BIPs Update</strong></h1><p><em>In the last days there was some movement in the <a href="https://github.com/bitcoin/bips">BIP repository</a>. Specifically, one new BIP has been published by BIP maintainer <a href="https://github.com/murchandamus">Murchandamus</a>.</em></p><h2><strong>Published BIPs</strong></h2><p><em>A list of recently published BIPs</em></p><h3><strong>BIP139: Wallet Metadata Backup Format</strong></h3><p><strong>Authors</strong>: <a href="https://github.com/pythcoiner">Pyth</a></p><p><strong>Published On</strong>: October 24th, 2026</p><p><strong>Layer</strong>: Applications</p><p><a href="https://github.com/bitcoin/bips/blob/master/bip-0139.md">BIP139</a> specifies a standard way to store various type of metadata, such as account descriptors, keys, labels, PSBTs, and more, allowing compatibility between different wallet implementations, simpler wallet migration, and easier recovery processes.</p><div><hr></div><h1>Other News from the Bitcoin World</h1><ul><li><p><strong>AssumeUTXO Removal</strong>: Bitcoin Core develoepr l0rinc <a href="https://x.com/L0RINC/status/2113158239969755551">announced</a> a draft proposal to remove the <code>AssumeUTXO</code> feature from the Bitcoin reference implementation. This comes after in-person discussions during the Core Dev meeting.</p><ul><li><p><code>AssumeUTXO</code> allows a new user bootstrapping a node to import the UTXO set from an external source to start transacting right away, while the classic Initial Block Download (IBD) starts in the background.</p></li><li><p>According to l0rinc, this feature adds several layers of complexity around the codebase, making porposed changes difficult to implement. Moreover, the feature does not seem to be widely used by noderunners.</p></li><li><p>L0rinc&#8217;s provided a reference implementation of what the removal of <code>AssumeUTXO</code> would look like in <a href="https://github.com/bitcoin/bitcoin/pull/36598">PR36598</a>. However, he stated that discussion on whether to remove the feature is still ongoing between maintainers.</p></li></ul></li><li><p><strong>Payjoin + CISA = PISA</strong>: Fabian Jahr <a href="https://x.com/fjahr/status/2113633246097617212">announced</a> PISA, a new integration between Payjoin and CISA.</p><ul><li><p>Jahr shared a video explaining how PISA could increase privacy on-chain &#8212; breaking the common ownership heuristic used in chain analysis &#8212;, while at the same time saving in fees.</p></li><li><p>To send a payment, both Alice and Bob can provide an input, as in a classical Payjoin transaction. Once Alice gets back the transaction with Bob&#8217;s input and signatures, she can leverage CISA so as to aggregate their signatures into one single signature.</p></li><li><p>To make it work, Jahr modified Bitcoin Core to include <a href="https://github.com/bitcoin/bips/pull/2212">BIP460</a>, the soft work that would bring CISA to Bitcoin. Thus, the provided <a href="https://github.com/bitcoin-pisa">test implementation</a> is available only on regtest.</p></li></ul></li><li><p><strong>Bitcoin Design &lt;&gt; AI</strong>: The Bitcoin Design Community &#8212; supported by Spiral &#8212; <a href="https://www.bitcoindesignuxr.xyz/">is launching</a> a research initiative to understand how the <a href="https://bitcoin.design/guide/">Bitcoin Design Guide</a> should evolve so that it can be easily leveraged by AI agent.</p><ul><li><p>The Bitcoin Designer Community is specifically looking for builders of Bitcoin and Lightning wallet to understand how AI is used in their workflows, if the Guide is ready for the AI-driven development age, and which could be the areas where it could be improved.</p></li></ul></li><li><p><strong>Wavelength on Mainnet</strong>: Lightning Labs <a href="https://x.com/lightning/status/2113637153070542859">announced</a> that Wavelength &#8212; their implementation of the Ark protocol &#8212; was finally available on mainnet. Wavelength was announced in July, promising fast integration of Bitcoin payments in any application.</p></li><li><p><strong>Bitcoin-backed Dollars on Cashu</strong>: Ducat &#8212; a Bitcoin-native credit and stablecoin protocol &#8212; <a href="https://x.com/Ducatstable/status/2114036739492725051">announced</a> that they had launched a Bitcoin-backed dollar stablecoin built on top of the Cashu protocol. Ducat&#8217;s mint would allow users to deposit their UNIT stablecoin and receive newly minted ecash tokens.</p></li></ul><div><hr></div><h1>More from BTC++ Insider Edition</h1><h3>News Hour</h3><ul><li><p><a href="https://x.com/btcinsider__/status/2113675778961686605">BTC++ News Hour</a>: Check out our Friday livestream, where Matthew Vuk and I discuss the most interesting news of the week from the Bitcoin developer ecosystem. This time, we hosted Brandon Black &#8212; known in cyberspace as reardencode &#8212; to talk about <a href="https://rbitcoin.org/">rbitcoin</a>, a Bitcoin full-node implementation in Rust.</p></li></ul><h3>Videos</h3><ul><li><p><a href="https://x.com/btcinsider__/status/2112559480097370437">Aleksei Moskvin &#8212; BTC++ Insider Interviews</a>: Alksei Moskving of [[alloc]init] talks to the Insider about the Shielded Bitcoin metaprotocol: private transfers on Bitcoin L1, encrypted notes, and wallet recovery from a seed phrase.</p></li><li><p><a href="https://x.com/btcinsider__/status/2112932354989670479">Alex Bragin &#8212; BTC++ Insider Interviews</a>: Alex Bragin &#8212; CTO at Jan3 &#8212; talks to the Insider about his commitment to Liquid, finally coming to resolution as peg-out functionality is restored.</p></li><li><p><a href="https://x.com/btcinsider__/status/2112967154907730429">Michael from Boltz &#8212; BTC++ Insider Interviews</a>: Michael &#8212; Former CTO at Boltz &#8212; talks to the Insider about why he shut down the swap service, how AI changed the risk equation, and why he&#8217;s still optimistic about the future of software.</p></li><li><p><a href="https://x.com/btcinsider__/status/2113269140194771365">Jussi Tiira &#8212; BTC++ Insider Interviews</a>: Jussi Tiira of the Finnish Bitcoin Association talks to the insider about his quest to educate Finnish MPs about Bitcoin.</p></li><li><p><a href="https://x.com/btcinsider__/status/2113329538704838815">Rene Pickhardt &#8212; BTC++ Insider Interviews</a>: Lightning researcher Rene Pickhardt talks to the Insider about Lightning&#8217;s scaling limits, on-chain bottlenecks and the case for multiparty channels.</p></li></ul><h3>Articles</h3><ul><li><p><a href="https://insider.btcpp.dev/p/were-reimplementing-private-broadcast">We&#8217;re reimplementing private broadcast - This Week in Bitcoin Core #63</a></p></li></ul><div><hr></div><p><em>Looking for an opportunity to join up with some bitcoin devs in person? Join us in</em> <a href="https://btcpp.dev/seoul?code=TUMA20">Seoul</a> <em>this November 5-6 to talk about privacy in Bitcoin!</em></p>]]></content:encoded></item><item><title><![CDATA[We're reimplementing private broadcast - This Week in Bitcoin Core #63]]></title><description><![CDATA[The build notes point at the table]]></description><link>https://insider.btcpp.dev/p/were-reimplementing-private-broadcast</link><guid isPermaLink="false">https://insider.btcpp.dev/p/were-reimplementing-private-broadcast</guid><dc:creator><![CDATA[kevkevin]]></dc:creator><pubDate>Fri, 23 Oct 2026 14:53:32 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!MJw8!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1cee73e5-1dd4-4081-a559-6f40592a5154_1456x816.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>Hello &#128075; folks, I&#8217;m Kevkevin. I&#8217;m an open-source developer and reporter for Insider Edition. Last week I reviewed several pull requests from the Bitcoin Core repo. One merge this week puts the functional-test dependencies in one table in <code>test/README.md</code>. pip, apt, brew, winget, pkg, pkgin, and pkg_add each get a row. The columns are Python, sqlite3, zmq, capnp, and lsof. Under pip the ZMQ module is <code>pyzmq</code>. Under apt it is <code>python3-zmq</code>. The FreeBSD, NetBSD, OpenBSD, macOS, MSVC Windows, and Unix build notes point at that table.</p><p>Another merge changes what <code>Assert</code>, <code>Assume</code>, and <code>CHECK_NONFATAL</code> print when the condition is false. The old line was the condition by itself, so <code>pindex != nullptr</code> read as if that were the state the node had observed. <code>StrFormatFailedCheck</code> wraps it. The report is <code>`pindex != nullptr` check failed</code>.</p><p>Thursday&#8217;s #bitcoin-core-dev meeting took the fuzzing and QML working groups, a second Windows code signer, and a stateless rewrite of private broadcast. <code>v32.0</code> is tagged. The final binaries are not in the download directory.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!MJw8!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1cee73e5-1dd4-4081-a559-6f40592a5154_1456x816.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!MJw8!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1cee73e5-1dd4-4081-a559-6f40592a5154_1456x816.png 424w, https://substackcdn.com/image/fetch/$s_!MJw8!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1cee73e5-1dd4-4081-a559-6f40592a5154_1456x816.png 848w, https://substackcdn.com/image/fetch/$s_!MJw8!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1cee73e5-1dd4-4081-a559-6f40592a5154_1456x816.png 1272w, https://substackcdn.com/image/fetch/$s_!MJw8!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1cee73e5-1dd4-4081-a559-6f40592a5154_1456x816.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!MJw8!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1cee73e5-1dd4-4081-a559-6f40592a5154_1456x816.png" width="1456" height="816" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/1cee73e5-1dd4-4081-a559-6f40592a5154_1456x816.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:816,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!MJw8!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1cee73e5-1dd4-4081-a559-6f40592a5154_1456x816.png 424w, https://substackcdn.com/image/fetch/$s_!MJw8!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1cee73e5-1dd4-4081-a559-6f40592a5154_1456x816.png 848w, https://substackcdn.com/image/fetch/$s_!MJw8!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1cee73e5-1dd4-4081-a559-6f40592a5154_1456x816.png 1272w, https://substackcdn.com/image/fetch/$s_!MJw8!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1cee73e5-1dd4-4081-a559-6f40592a5154_1456x816.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image buttonBase-GK1x3M"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg" class="icon-noB79L"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image buttonBase-GK1x3M"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2 icon-noB79L"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><h4>Merged PR&#8217;s</h4><h5>Every week, several changes are officially added to Bitcoin Core. This week, 40 changes were merged. Here are some I found interesting this week.</h5><ul><li><p><strong><a href="https://github.com/bitcoin/bitcoin/pull/35395">doc: Improve test suite dependencies documentation</a></strong> by <strong><a href="https://github.com/hebasto">Hennadii Stepanov</a></strong></p></li></ul><p>The per-OS test-suite install snippets in the FreeBSD, NetBSD, OpenBSD, macOS, and MSVC Windows build notes are gone. Each file now links to one table in <code>test/README.md</code>, and <code>doc/build-unix.md</code> gets the same link. The table has a row for each package manager (pip, apt, brew, winget, pkg, pkgin, and pkg_add) and the package name for Python, sqlite3, zmq, capnp, and lsof. Under pip the ZMQ module is <code>pyzmq</code>. Under apt it is <code>python3-zmq</code>.</p><p>If an optional dependency is not installed, the tests that need it are skipped, not failed. The from-source <code>pycapnp</code> recipe is gone, and the pip row is the named <code>pycapnp.</code></p><ul><li><p><strong><a href="https://github.com/bitcoin/bitcoin/pull/35461">util: Clarify the assertion message in assertion failures (Assert, Assume, etc.)</a></strong> by <strong><a href="https://github.com/optout21">optout</a></strong></p></li></ul><p>A message of <code>Internal bug detected: pindex != nullptr</code> does not say whether that comparison held. <code>StrFormatFailedCheck</code> now wraps the condition, so a failed <code>Assert</code>, <code>Assume</code>, or <code>CHECK_NONFATAL</code> reports <code>`pindex != nullptr` check failed</code>.</p><p><code>NONFATAL_UNREACHABLE</code> now honors the same abort flag as <code>CHECK_NONFATAL</code>. Both go through the new <code>internal_non_fatal_helper</code>, which aborts if <code>G_ABORT_ON_FAILED_ASSUME</code> is set (a debug build) and otherwise throws <code>NonFatalCheckError</code>. <code>util_check_tests</code>, <code>util_not_null_tests</code>, and <code>rpc_misc.py</code> expect the new text.</p><h5>There are always changes being updated and reviewed in real-time. Here are some notable PR&#8217;s that are still up and looking for reviews.</h5><ul><li><p><strong><a href="https://github.com/bitcoin/bitcoin/pull/36608">Reimplement private broadcast as node state-less jobs + package relay support</a></strong> by <strong><a href="https://github.com/instagibbs">Gregory Sanders</a></strong></p></li></ul><p>Private broadcast on master drives its attempts from node state, and that has already produced a series of careful fixes. This PR replaces it with jobs that do not consult addrman, the mempool, or <code>-onlynet</code>. A job is one broadcast of one transaction. It resolves DNS seed names through Tor, then delivers over BIP324 v2 connections on its own proxy streams, which do not show up in <code>getpeerinfo</code>.</p><p>The same job runs inside <code>bitcoind -privatebroadcast</code> or in the standalone <code>bitcoin-privbcast</code>. Part 4 adds one-parent-one-child package relay. The logic is about 4,600 net lines outside consensus, with the rest tests and documentation. He is asking for a concept ACK and a decision on whether parts 1 through 3 are the v33 goal.</p><blockquote><p>The primary failure mode of the in-master private broadcast is that it relies on node state for operation, and this has led to a number of &#8220;careful coding&#8221; fixes.</p></blockquote><h4>IRC meeting notes</h4><h5>Every week on Thursday, there is an IRC meeting. Here are some short notes from that meeting.</h5><pre><code><code>--- Topic 1 ---
&#120320;&#120321;&#120310;&#120304;&#120312;&#120310;&#120306;&#120320;-&#120323;: #topic Fuzzing WG Update (eugenesiegel, marcofleon)
&#120314;&#120302;&#120319;&#120304;&#120316;&#120307;&#120313;&#120306;&#120316;&#120315;: no update from me
&#120306;&#120322;&#120308;&#120306;&#120315;&#120306;&#120320;&#120310;&#120306;&#120308;&#120306;&#120313;: currently just working on getting bedrock into shape so we can run fuzzamoto with it. some faults I added found some really minor database consistency issues
&#120306;&#120322;&#120308;&#120306;&#120315;&#120306;&#120320;&#120310;&#120306;&#120308;&#120306;&#120313;: like e.g. a node having a power loss at a super specific point during -reindex prevents the node from starting up again. should things like that be fixed?
&#120320;&#120321;&#120310;&#120304;&#120312;&#120310;&#120306;&#120320;-&#120323;: if it's a loud failure, i wouldn't personally consider that worth spending a lot of energy or complexity on
&#120320;&#120321;&#120310;&#120304;&#120312;&#120310;&#120306;&#120320;-&#120323;: silent consensus failures/money losing behaviour is a different thing of course
&#120326;&#120302;&#120315;&#120304;&#120326;: might it also be OS disk corruption?
&#120306;&#120322;&#120308;&#120306;&#120315;&#120306;&#120320;&#120310;&#120306;&#120308;&#120306;&#120313;: I don't think it's a disk corruption issue, just things not being persisted in the proper order. It wasn't clear to me what guarantees the codebase should have when there's no consensus failure or money loss
&#120303;&#120319;&#120322;&#120315;&#120316;&#120306;&#120319;&#120308;: perhaps it depends on how complex the fix would be?
&#120306;&#120322;&#120308;&#120306;&#120315;&#120306;&#120320;&#120310;&#120306;&#120308;&#120306;&#120313;: I think the fixes are pretty small. I don't think it's likely that anybody will run into these issues though

--- Topic 2 ---
&#120320;&#120321;&#120310;&#120304;&#120312;&#120310;&#120306;&#120320;-&#120323;: #topic QML GUI WG Update (johnny9dev)
&#120311;&#120316;&#120309;&#120315;&#120315;&#120326;&#120821;&#120305;&#120306;&#120323;: We're working through the feedback from last week
&#120311;&#120316;&#120309;&#120315;&#120315;&#120326;&#120821;&#120305;&#120306;&#120323;: We've got a PR to clarify storage choices during onboarding
&#120311;&#120316;&#120309;&#120315;&#120315;&#120326;&#120821;&#120305;&#120306;&#120323;: Priority is getting the staging branch ready
&#120311;&#120316;&#120309;&#120315;&#120315;&#120326;&#120821;&#120305;&#120306;&#120323;: I am increasingly interested in making a pruned wallet setup work and have started looking into txindex and compact block filters
&#120305;&#120302;&#120319;&#120316;&#120320;&#120310;&#120316;&#120319;: You mean pruned rescans?
&#120311;&#120316;&#120309;&#120315;&#120315;&#120326;&#120821;&#120305;&#120306;&#120323;: Yeah, pruned rescans. Block retrieval. I think that becomes a high priority for the QML project once the staging branch is settled
&#120305;&#120302;&#120319;&#120316;&#120320;&#120310;&#120316;&#120319;: eugenesiegel: worth at least opening an issue for those. May be a symptom of a bug that could open up more serious inconsistencies. As far as I know we should always be able to recover from a crash
&#120288;&#120322;&#120319;&#120304;&#120309;[&#120314;]: One argument is that a change this large should merge very early in a release cycle, right after branch-off, so the new GUI would only be considered for v34. The new GUI has better testing and more eyes, and I'm uncomfortable releasing the old GUI while hardly anyone is looking at it. Maybe we should talk about getting it into v33
&#120309;&#120306;&#120303;&#120302;&#120320;&#120321;&#120316;: it seems premature until the staging branch is ready
&#120311;&#120316;&#120309;&#120315;&#120315;&#120326;&#120821;&#120305;&#120306;&#120323;: My current view is that we'll have the PR by the end of the year. Likely end of November or early December
&#120320;&#120321;&#120310;&#120304;&#120312;&#120310;&#120306;&#120320;-&#120323;: I'm not sure merging a huge amount of new code is necessarily safer, so I don't think we should feel time pressure because of that
&#120288;&#120322;&#120319;&#120304;&#120309;[&#120314;]: Sure, let's revisit when the staging branch is available
&#120309;&#120306;&#120303;&#120302;&#120320;&#120321;&#120316;: agree

--- Topic 3 ---
&#120320;&#120321;&#120310;&#120304;&#120312;&#120310;&#120306;&#120320;-&#120323;: #topic QA WG Update (brunoerg)
&#120303;&#120319;&#120322;&#120315;&#120316;&#120306;&#120319;&#120308;: no updates this week

--- Topic 4 ---
&#120320;&#120321;&#120310;&#120304;&#120312;&#120310;&#120306;&#120320;-&#120323;: #topic another windows code signer (achow101)
&#120302;&#120304;&#120309;&#120316;&#120324;&#120813;&#120812;&#120813;: Windows code signing is done by only me, which is a single point of failure. If anyone is interested in being a code signer, message me
&#120302;&#120304;&#120309;&#120316;&#120324;&#120813;&#120812;&#120813;: Needs to be someone who currently builds, or will commit to building, all releases and release candidates shortly after tagging

--- Topic 5 ---
&#120320;&#120321;&#120310;&#120304;&#120312;&#120310;&#120306;&#120320;-&#120323;: #topic Reimplement private broadcast as node state-less jobs + package relay support (#36608) (instagibbs)
&#120310;&#120315;&#120320;&#120321;&#120302;&#120308;&#120310;&#120303;&#120303;&#120320;: I've been working on a node state-less variant of private broadcast. I think it's mature enough to be considered as a replacement for v33. It makes some opinionated decisions so the privacy properties are easier to reason about
&#120310;&#120315;&#120320;&#120321;&#120302;&#120308;&#120310;&#120303;&#120303;&#120320;: It's a feature swap on the same sendrawtransaction path, with 1p1c package relay support, plus a standalone tool that is a thin wrapper around the same job
&#120310;&#120315;&#120320;&#120321;&#120302;&#120308;&#120310;&#120303;&#120303;&#120320;: Roughly +4,600 net lines of logic, all outside consensus. The rest is tests and documentation. In-master net_processing private broadcast goes away
&#120310;&#120315;&#120320;&#120321;&#120302;&#120308;&#120310;&#120303;&#120303;&#120320;: Short term I'm looking for concept and approach ACKs, and a general buy-in that we want this for v33. Also: do we want the standalone tool, or should it fold into bitcoin-util? And should package relay be a follow-up PR?
&#120302;&#120315;&#120305;&#120319;&#120306;&#120324;&#120321;&#120316;&#120321;&#120309;_: I haven't looked in depth, but I'm not sure a 17k line PR is realistic for v33. Conceptual feedback on the previous branch doesn't look addressed
&#120310;&#120315;&#120320;&#120321;&#120302;&#120308;&#120310;&#120303;&#120303;&#120320;: I responded to those comments. It's ~4.6k lines net of logic. The rest is tests
&#120304;&#120307;&#120310;&#120306;&#120313;&#120305;&#120320;: This overlaps my multiprocess p2p work. I'll take a look
&#120320;&#120321;&#120310;&#120304;&#120312;&#120310;&#120306;&#120320;-&#120323;: This is a big lift for a single feature, but it's more attractive if it comes with a better architecture
&#120310;&#120315;&#120320;&#120321;&#120302;&#120308;&#120310;&#120303;&#120303;&#120320;: Maybe it's two releases, but I don't think it has to be. I think it's a removal of risk
&#120305;&#120302;&#120319;&#120316;&#120320;&#120310;&#120316;&#120319;: I agree with the approach: fix the node-state leaks structurally, then consider carving out exceptions for UX, instead of the opposite
&#120302;&#120315;&#120305;&#120319;&#120306;&#120324;&#120321;&#120316;&#120321;&#120309;_: Can we quantify the remaining risks? There were several private-broadcast fixes in v32. What gaps are left, given it's experimental and the guarantees were softened?
&#120310;&#120315;&#120320;&#120321;&#120302;&#120308;&#120310;&#120303;&#120303;&#120320;: The risk is sharing node state, which leaks in dozens of ways. The part to debate is the addrman-less design. addrman is heavily attacker-influenced, and there are tradeoffs
&#120305;&#120302;&#120319;&#120316;&#120320;&#120310;&#120316;&#120319;: We can't guarantee perfect privacy. If private broadcast is supposed to provide any limited guarantee against an adversary, separating it from node state is a requirement
&#120302;&#120315;&#120305;&#120319;&#120306;&#120324;&#120321;&#120316;&#120321;&#120309;_: Private broadcast already protects a user's privacy against linkinglion. Default broadcast exposes the transaction origin even with BIP324
&#120305;&#120302;&#120319;&#120316;&#120320;&#120310;&#120316;&#120319;: Current private broadcast can expose origin too, if someone cares enough to attack. I don't think we should offer a feature branded as privacy that doesn't hold up to that bar
&#120310;&#120315;&#120320;&#120321;&#120302;&#120308;&#120310;&#120303;&#120303;&#120320;: We can continue off-channel
&#120305;&#120302;&#120319;&#120316;&#120320;&#120310;&#120316;&#120319;: On the tool: I don't see why we need a new binary. bitcoin-util is fine. A separate tool is a small cost and a useful canary against reintroducing node state. On the split: package relay can be a follow-up, but the swap itself should not be split, or master ends up with two implementations
&#120310;&#120315;&#120320;&#120321;&#120302;&#120308;&#120310;&#120303;&#120303;&#120320;: I started with the tool so I wouldn't re-add node state to the jobs, then reused that library inside the node
&#120320;&#120321;&#120310;&#120304;&#120312;&#120310;&#120306;&#120320;-&#120323;: agreed with darosior on not splitting the swap

--- Topic 6 ---
&#120307;&#120302;&#120315;&#120318;&#120322;&#120302;&#120312;&#120306;: v32.0 has been tagged
&#120307;&#120302;&#120315;&#120318;&#120322;&#120302;&#120312;&#120306;: The security policy update is merged: https://github.com/bitcoin-core/bitcoincore.org/pull/1281
&#120307;&#120302;&#120315;&#120318;&#120322;&#120302;&#120312;&#120306;: PR to enrol Core in the Anthropic OSS scanner: https://github.com/anthropics/oss-scanner/pull/1018
</code></code></pre><p><a href="https://www.erisian.com.au/bitcoin-core-dev/log-2026-10-22.html">Read the full meeting</a></p><h4>Releases</h4><ul><li><p><code>v32.0</code> is tagged: <a href="https://github.com/bitcoin/bitcoin/releases/tag/v32.0">github.com/bitcoin/bitcoin/releases/tag/v32.0</a> (tagged by sedited). The final binaries are not published yet.</p></li></ul><blockquote><p>Thank you for reading. Be sure to tune in again next week for your updates on Bitcoin Core!</p></blockquote><p>If there are any comments, suggestions, or errors, do not hesitate to reach out or comment.</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://insider.btcpp.dev/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">bitcoin++'s Insider Edition is a reader-supported publication. To receive new posts and support my work, consider becoming a free or paid subscriber.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div><p></p>]]></content:encoded></item><item><title><![CDATA[More Offchain Protocols — Last Week in Bitcoin (Oct 12 - 18)]]></title><description><![CDATA[Hi Insiders.]]></description><link>https://insider.btcpp.dev/p/more-offchain-protocols-last-week</link><guid isPermaLink="false">https://insider.btcpp.dev/p/more-offchain-protocols-last-week</guid><dc:creator><![CDATA[Tuma (I WILL NEVER DM YOU)]]></dc:creator><pubDate>Mon, 19 Oct 2026 14:03:36 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!70lo!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8e80517a-0148-4109-87f5-2b4603f5a8d1_1600x900.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p><em>Hi Insiders. This is Tuma, open-source reporter from the Insider Edition.</em></p><p><em>In this week&#8217;s update we feature current effort to add support for recurring payments with BOLT12 in LDK.</em></p><p><em>We also cover the announcement of two new offchain protocols on Bitcoin, namely Zark by Lx DEV, a statechain with a blinded co-signer and zero-knowledge proofs, and LayerTree by Lightning Labs,</em> a non-custodial scaling solution which allows multiple users to share a Bitcoin UTXO.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!70lo!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8e80517a-0148-4109-87f5-2b4603f5a8d1_1600x900.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!70lo!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8e80517a-0148-4109-87f5-2b4603f5a8d1_1600x900.jpeg 424w, https://substackcdn.com/image/fetch/$s_!70lo!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8e80517a-0148-4109-87f5-2b4603f5a8d1_1600x900.jpeg 848w, https://substackcdn.com/image/fetch/$s_!70lo!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8e80517a-0148-4109-87f5-2b4603f5a8d1_1600x900.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!70lo!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8e80517a-0148-4109-87f5-2b4603f5a8d1_1600x900.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!70lo!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8e80517a-0148-4109-87f5-2b4603f5a8d1_1600x900.jpeg" width="1456" height="819" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/8e80517a-0148-4109-87f5-2b4603f5a8d1_1600x900.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:819,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:347184,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/jpeg&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://insider.btcpp.dev/i/221127614?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8e80517a-0148-4109-87f5-2b4603f5a8d1_1600x900.jpeg&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!70lo!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8e80517a-0148-4109-87f5-2b4603f5a8d1_1600x900.jpeg 424w, https://substackcdn.com/image/fetch/$s_!70lo!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8e80517a-0148-4109-87f5-2b4603f5a8d1_1600x900.jpeg 848w, https://substackcdn.com/image/fetch/$s_!70lo!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8e80517a-0148-4109-87f5-2b4603f5a8d1_1600x900.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!70lo!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F8e80517a-0148-4109-87f5-2b4603f5a8d1_1600x900.jpeg 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image buttonBase-GK1x3M"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg" class="icon-noB79L"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image buttonBase-GK1x3M"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2 icon-noB79L"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><div><hr></div><h1><strong>Highlights from the Bitcoin developer ecosystem</strong></h1><p><em>I spent 10+ hours in open-source developer calls in the Bitcoin ecosystem last week. Here is what caught my eye</em>:</p><ul><li><p>LDK contributors are working on adding support for BOLT12 recurrence in the Lightning Implementation.</p><ul><li><p>During the biweekly call, on Monday 12th, LDK contributors discussed the latest updates to the Lightning implementation. One of the most interesting things devs are working on right now is adding support BOLT12 recurrence in LDK Node.</p></li><li><p>Developer <a href="https://github.com/shaavan">Shashwat Vangani</a> is currently working on <a href="https://github.com/lightningdevkit/ldk-node/pull/1119">PR1119</a> in LDK Node, which builds on the previous work done in <a href="https://git.rust-bitcoin.org/lightningdevkit/rust-lightning/pulls/4882">rust-lightning</a> &#8212; which introduced protocol primitives, message handling, and payment flow.</p></li><li><p>This PR introduces the management whole recurrent payment workflow to LDK Node, such as persistence of recurrent payment state, updates, scheduling, and APIs for applications to manage recurrence.</p></li></ul></li></ul><div><hr></div><h1><strong>A BIPs Update</strong></h1><p><em>There was no newsworthy update in the last days in the <a href="https://github.com/bitcoin/bips">BIP repository</a>. We&#8217;ll provide new updates as soon as a new BIP gets published or gets assigned a number.</em></p><div><hr></div><h1>Other News from the Bitcoin World</h1><ul><li><p><strong>Zark</strong>: Lx Dev <a href="https://x.com/lxdev_/status/2110041930050494909">announced</a> a new protocol for private, offchain Bitcoin transfers called Zark. The protocol is based on the statechain paradigm and leverages zero-knowledge proofs to improve users&#8217; privacy.</p><ul><li><p>The protocol&#8217;s coordination relies on a co-signer. This entity is blinded, which means that it signs a UTXO transfer without getting to know the specific details about the transfer itself. Users need to trust the co-signer to delete the keyshares belonging to a previous owner.</p></li><li><p>Users can prove their ability to spend, receive, and withdraw coins using zero-knowledge proof. This means that inside the protocol the amount of leaked information about previous owners &#8212; such as payout addresses &#8212; is highly reduced, improving privacy.</p></li><li><p>Lx Dev published an <a href="https://hackmd.io/@januszgrze/HJlHensozl">extensive overview</a> of Zark, which dives into how the protocol works and which are the trade-offs to be taken into account.</p></li></ul></li><li><p><strong>LayerTree</strong>: Lightning Labs <a href="https://x.com/lightning/status/2110812651882217677">announced</a> LayerTree, a new non-custodial scaling solution on Bitcoin, which allows multiple users to share a Bitcoin UTXO.</p><ul><li><p>Ownership is recorded offchain into a Merkle-sum tree in which each leaf represent a user&#8217;s balance, and Each node of the tree holds a hash of its children, up to the root. The shared UTXO commits to the root of this tree.</p></li><li><p>The protocol cannot work on Bitcoin as it is today. According to Lightning Labs CTO Olaoluwa Osuntokun, LayerTree needs covenant to work. Interestingly enough, no specific opcode is needed, but the protocol could work with any of the proposals already drafted.</p></li><li><p>Lightning Labs published a full <a href="https://layertree.tech/">website</a>, which allows users to interactively understand how the protocol works.</p></li></ul></li><li><p><strong>Post-quantum Shielded CSV</strong>: Jonas Nick <a href="https://x.com/n1ckler/status/2110024510552576017">reported</a> that a research group from Imperial College had published a <a href="https://arxiv.org/pdf/2609.32015">paper</a> introducing a post-quantum version of ShieldedCSV, called Compact ShieldedCSV. Unlike ShieldedCSV &#8212; where the nullifier carries a signature &#8212; Compact&#8217;s nullifiers carry no signature, only something called a &#8220;degriefer&#8221;.</p></li></ul><div><hr></div><h1>More from BTC++ Insider Edition</h1><h3>News Hour</h3><ul><li><p><a href="https://x.com/btcinsider__/status/2111140017129345146">BTC++ News Hour</a>: Check out our Friday livestream, where Matthew Vuk and I discuss the most interesting news of the week from the Bitcoin developer ecosystem. This time, we hosted our first guest, Lx Dev CEO Janusz, to talk about Zark.</p></li></ul><h3>Videos</h3><ul><li><p><a href="https://x.com/btcinsider__/status/2110370044798488657">Pim Keer &#8212; BTC++ Insider Interviews</a>: Pim Kerr, PhD Researcher at the Security and Privacy Group of TU Wien, talks to the Insider about the work his research group is doing to formalize and prove the security of the Ark protocol.</p></li><li><p><a href="https://x.com/btcinsider__/status/2110475737006285170">Pietro Valese &#8212; BTC++ Insider Interviews</a>: Pietro Valese, Lab Manager at BitPolito, talks to the Insider about what BitPolito is and what it is doing to connect students and the Bitcoin industry.</p></li><li><p><a href="https://x.com/btcinsider__/status/2111094813747494971">TheMhv &#8212; BTC++ Insider Interviews</a>: TheMhv, Vinteum fellow and Cashu contributor talks to the insider about his work on the Cashu Development Kit (CDK), new NUTs, and the importance of meeting the people you work with in real life.</p></li></ul><h3>Articles</h3><ul><li><p><a href="https://insider.btcpp.dev/p/the-prefill-was-already-there-this">The prefill was already there - This Week in Bitcoin Core #62</a></p></li></ul><div><hr></div><p><em>Looking for an opportunity to join up with some bitcoin devs in person? Join us in</em> <a href="https://btcpp.dev/seoul?code=TUMA20">Seoul</a> <em>this November 5-6 to talk about privacy in Bitcoin!</em></p>]]></content:encoded></item><item><title><![CDATA[The prefill was already there - This Week in Bitcoin Core #62]]></title><description><![CDATA[Separate from the mempool count]]></description><link>https://insider.btcpp.dev/p/the-prefill-was-already-there-this</link><guid isPermaLink="false">https://insider.btcpp.dev/p/the-prefill-was-already-there-this</guid><dc:creator><![CDATA[kevkevin]]></dc:creator><pubDate>Fri, 16 Oct 2026 14:02:29 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!MJw8!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1cee73e5-1dd4-4081-a559-6f40592a5154_1456x816.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>Hello &#128075; folks, I&#8217;m Kevkevin. I&#8217;m an open-source developer and reporter for Insider Edition. Last week I reviewed several pull requests from the Bitcoin Core repo. One merge this week changes the compact-block reconstruction log. When a peer prefills a transaction this node already has, in the mempool or in the extrapool, that prefill is now its own count and its own byte size. The old line folded the extrapool into the mempool number. The new one reports prefill, mempool, extrapool, and the transactions that still had to be requested as four separate numbers.</p><p>Another merge removes <code>-persistmempoolv1</code>. That option wrote <code>mempool.dat</code> in the legacy format so a node could downgrade to v26 or earlier. Those releases are unsupported. The file is always written in the current format, with a random XOR key. A v1 file still loads.</p><p>Thursday&#8217;s #bitcoin-core-dev meeting was not held. stickies-v left a reminder that many people could not attend. Later, eugenesiegel asked about startup failures after power loss, and nkaretnikov pointed at the missing-undo report and the chainstate rewrite discussion. <code>v32.0rc4</code> is tagged, and the binaries are up. Final <code>v32.0</code> is not.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!MJw8!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1cee73e5-1dd4-4081-a559-6f40592a5154_1456x816.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!MJw8!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1cee73e5-1dd4-4081-a559-6f40592a5154_1456x816.png 424w, https://substackcdn.com/image/fetch/$s_!MJw8!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1cee73e5-1dd4-4081-a559-6f40592a5154_1456x816.png 848w, https://substackcdn.com/image/fetch/$s_!MJw8!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1cee73e5-1dd4-4081-a559-6f40592a5154_1456x816.png 1272w, https://substackcdn.com/image/fetch/$s_!MJw8!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1cee73e5-1dd4-4081-a559-6f40592a5154_1456x816.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!MJw8!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1cee73e5-1dd4-4081-a559-6f40592a5154_1456x816.png" width="1456" height="816" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/1cee73e5-1dd4-4081-a559-6f40592a5154_1456x816.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:816,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!MJw8!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1cee73e5-1dd4-4081-a559-6f40592a5154_1456x816.png 424w, https://substackcdn.com/image/fetch/$s_!MJw8!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1cee73e5-1dd4-4081-a559-6f40592a5154_1456x816.png 848w, https://substackcdn.com/image/fetch/$s_!MJw8!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1cee73e5-1dd4-4081-a559-6f40592a5154_1456x816.png 1272w, https://substackcdn.com/image/fetch/$s_!MJw8!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1cee73e5-1dd4-4081-a559-6f40592a5154_1456x816.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image buttonBase-GK1x3M"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg" class="icon-noB79L"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image buttonBase-GK1x3M"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2 icon-noB79L"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><h4>Merged PR&#8217;s</h4><h5>Every week, several changes are officially added to Bitcoin Core. This week, 22 changes were merged. Here are some I found interesting this week.</h5><ul><li><p><strong><a href="https://github.com/bitcoin/bitcoin/pull/35724">cmpctblock: Improve logging of </a></strong><code>cmpctblock</code><strong><a href="https://github.com/bitcoin/bitcoin/pull/35724"> message reconstruction statistics [part of prefill series]</a></strong> by <strong><a href="https://github.com/davidgumberg">David Gumberg</a></strong></p></li></ul><p>The compact-block reconstruction log used to fold extrapool hits into the mempool number. On a successful <code>FillBlock</code> it now prints four separate counts with byte sizes: prefilled, from mempool, from extrapool, and requested. A second debug line reports redundant prefills, meaning prefilled transactions the node already had in its mempool or extrapool.</p><p>These stats are only collected when <code>cmpctblock</code> debug logging is on, otherwise they stay zero. At trace level, every requested txid is now logged in one line, not only when fewer than five were missing.</p><ul><li><p><strong><a href="https://github.com/bitcoin/bitcoin/pull/36294">mempool: Remove -persistmempoolv1 option</a></strong> by <strong><a href="https://github.com/fjahr">Fabian Jahr</a></strong></p></li></ul><p><code>-persistmempoolv1</code> wrote <code>mempool.dat</code> in the old v1 format, without the XOR key, so a node could downgrade to v26 or earlier. v26 has been end of life since April 2025, so the option is gone. <code>DumpMempool</code> always writes the current format with a fresh obfuscation key, and a v1 file still loads.</p><p><code>mempool_compatibility.py</code> now tests against v31.0, the last release with the flag. <code>mempool_persist.py</code> also checks that <code>importmempool</code> rejects a truncated file.</p><h5>There are always changes being updated and reviewed in real-time. Here are some notable PR&#8217;s that are still up and looking for reviews.</h5><ul><li><p><strong><a href="https://github.com/bitcoin/bitcoin/pull/36540">mempool: remove time-based transaction expiry</a></strong> by <strong><a href="https://github.com/ismaelsadeeq">Abubakar Sadiq Ismail</a></strong></p></li></ul><p>Evicting by age can drop a transaction that could still be mined, so this PR (fixing #33510) deletes <code>CTxMemPool::Expire</code> and the two-week default. <code>LimitMempoolSize</code> now only trims to the size limit, and <code>LoadMempool</code> no longer skips old saved transactions.</p><p><code>-mempoolexpiry</code> stays as a hidden option that only logs a warning if set. The <code>entry_time</code> index and <code>mempool_expiry.py</code> are removed.</p><blockquote><p>Time-based mempool expiry has been removed, and the <code>-mempoolexpiry</code> startup option no longer has any effect (a warning is logged if it is set).</p></blockquote><h4>IRC meeting notes</h4><h5>Every week on Thursday, there is an IRC meeting. Here are some short notes from that meeting.</h5><pre><code><code>--- Topic 1 ---
&#120320;&#120321;&#120310;&#120304;&#120312;&#120310;&#120306;&#120320;-&#120323;: reminder: there's no IRC meeting today as many won't be able to attend

--- Topic 2 ---
&#120306;&#120322;&#120308;&#120306;&#120315;&#120306;&#120320;&#120310;&#120306;&#120308;&#120306;&#120313;: there are a few obscure cases where power loss can prevent a node from being able to startup, nothing serious. how should these be handled, should I make an issue to track them? Some of these might have already been reported by the LLM audits. I've run into a number of them while fuzzing + emulating power loss with the bedrock hypervisor
&#120315;&#120312;&#120302;&#120319;&#120306;&#120321;&#120315;&#120310;&#120312;&#120316;&#120323;: eugenesiegel: this reminded me of #25539 which i assume was reported by you as well
&#120315;&#120312;&#120302;&#120319;&#120306;&#120321;&#120315;&#120310;&#120312;&#120316;&#120323;: there was also a mention of power loss in this recent discussion #35298
</code></code></pre><p><a href="https://www.erisian.com.au/bitcoin-core-dev/log-2026-10-15.html">Read the full meeting</a></p><h4>Releases</h4><ul><li><p>The <code>v32.0rc4</code> binaries are now published: <a href="https://bitcoincore.org/bin/bitcoin-core-32.0/test.rc4/">bitcoincore.org/bin/bitcoin-core-32.0/test.rc4</a> (tagged by sedited).</p></li></ul><blockquote><p>Thank you for reading. Be sure to tune in again next week for your updates on Bitcoin Core!</p></blockquote><p>If there are any comments, suggestions, or errors, do not hesitate to reach out or comment.</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://insider.btcpp.dev/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">bitcoin++'s Insider Edition is a reader-supported publication. To receive new posts and support my work, consider becoming a free or paid subscriber.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div><p></p>]]></content:encoded></item><item><title><![CDATA[Making Taproot Annexes Standard — Last Week in Bitcoin (Oct 05 - 11)]]></title><description><![CDATA[Hi Insiders.]]></description><link>https://insider.btcpp.dev/p/making-taproot-annexes-standard-last</link><guid isPermaLink="false">https://insider.btcpp.dev/p/making-taproot-annexes-standard-last</guid><dc:creator><![CDATA[Tuma (I WILL NEVER DM YOU)]]></dc:creator><pubDate>Mon, 12 Oct 2026 14:03:16 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!hUsu!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F32882c1f-a867-4bec-84b0-bbadaf96b554_1600x900.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p><em>Hi Insiders. This is Tuma, open-source reporter from the Insider Edition.</em></p><p><em>In this week&#8217;s update we feature the latest news from Marmot &#8212; with the team working on bringing multi-device to the protocol &#8212; and the implementation of efficient animated QR codes in Cashu.</em></p><p><em>We also cover the effort by Robin Linus to make taproot annexes standard in Bitcoin Core, an attack to Second that resulted in 0.75 bitcoin stolen, and the latest patch release for Core-lightning.</em></p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!hUsu!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F32882c1f-a867-4bec-84b0-bbadaf96b554_1600x900.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!hUsu!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F32882c1f-a867-4bec-84b0-bbadaf96b554_1600x900.jpeg 424w, https://substackcdn.com/image/fetch/$s_!hUsu!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F32882c1f-a867-4bec-84b0-bbadaf96b554_1600x900.jpeg 848w, https://substackcdn.com/image/fetch/$s_!hUsu!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F32882c1f-a867-4bec-84b0-bbadaf96b554_1600x900.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!hUsu!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F32882c1f-a867-4bec-84b0-bbadaf96b554_1600x900.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!hUsu!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F32882c1f-a867-4bec-84b0-bbadaf96b554_1600x900.jpeg" width="1456" height="819" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/32882c1f-a867-4bec-84b0-bbadaf96b554_1600x900.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:819,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:347184,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/jpeg&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://insider.btcpp.dev/i/220007584?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F32882c1f-a867-4bec-84b0-bbadaf96b554_1600x900.jpeg&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!hUsu!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F32882c1f-a867-4bec-84b0-bbadaf96b554_1600x900.jpeg 424w, https://substackcdn.com/image/fetch/$s_!hUsu!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F32882c1f-a867-4bec-84b0-bbadaf96b554_1600x900.jpeg 848w, https://substackcdn.com/image/fetch/$s_!hUsu!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F32882c1f-a867-4bec-84b0-bbadaf96b554_1600x900.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!hUsu!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F32882c1f-a867-4bec-84b0-bbadaf96b554_1600x900.jpeg 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image buttonBase-GK1x3M"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg" class="icon-noB79L"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image buttonBase-GK1x3M"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2 icon-noB79L"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><div><hr></div><h1><strong>Highlights from the Bitcoin developer ecosystem</strong></h1><p><em>I spent 10+ hours in open-source developer calls in the Bitcoin ecosystem last week. Here is what caught my eye</em>:</p><ul><li><p>Marmot protocol specifications are now stable and the team if focusing on the next features, such as multi-device.</p><ul><li><p>During the monthly community call, on Tuesday 6th, Marmot developers discussed the latest improvements in the protocol for secure, private messaging and in the White Noise application and gave an update on the next steps.</p></li><li><p>Marmot specifications are quite stable now and the Marmot Development Kit (MDK) is nearly on par with them. The team solved a bug that did not allow a group to have more than 50 users and is currently working on making media upload faster and more efficient and focusing on how to make Marmot itself more private.</p></li><li><p>Devs are now focusing on one of the most requested, multi-device &#8212; i.e. the possibility to have the same chats, with the same messages, on multiple devices. This is one of the most complex features to work on, given the decentralized nature of the protocol. The team is currently <a href="https://github.com/marmot-protocol/marmot/blob/master/ideas/multi-device.md">gathering ideas</a> on that and is working toward a draft specification.</p></li></ul></li><li><p>Cashu developers are implementing efficient animated QR codes thanks to a discussion at the bitcoin++ conference in Berlin.</p><ul><li><p>During the weekly call, on Wednesday 7th, CDK developers discussed <a href="https://github.com/cashubtc/cdk/pull/2646">PR2646</a> which aims to add binary fountain token transport, a way to make animated QR codes more efficient.</p></li><li><p>This new feature comes from a <a href="https://x.com/Egge21M/status/2107144980418437252">discussion</a> between Cashu developer Egge and Fedimint contributor Joschisan during the Berlin bitcoin++ conference. Joschisan had previously implemented custom, efficient fountain QR codes in Fedimint.</p></li><li><p>The feature is also being implemented in <a href="https://github.com/cashubtc/cashu-ts/pull/1309">cashu-ts</a> &#8212; the TypeScript implementation of the Cashu protocol &#8212; and an <a href="https://github.com/cashubtc/nuts/pull/456">upgrade to the NUT-16 specification</a> is currently under discussion. Moreover, Egge published the <a href="https://github.com/Egge21M/nut-fountain">nut-fountain repository</a> which includes a TypeScript implementation and a playground to test the new feature in the browser.</p></li></ul></li></ul><div><hr></div><h1><strong>A BIPs Update</strong></h1><p><em>There was no newsworthy update in the last days in the <a href="https://github.com/bitcoin/bips">BIP repository</a>. We&#8217;ll provide new updates as soon as a new BIP gets published or gets assigned a number.</em></p><div><hr></div><h1>Other News from the Bitcoin World</h1><ul><li><p><strong>Making taproot annex standard</strong>: Robin Linus &#8212; BitVM creator and developer working on Shielded CSV (now Glass Coins) &#8212; decided to open a <a href="https://github.com/bitcoin/bitcoin/pull/36466">pull request</a> to make <a href="https://bitcoinops.org/en/topics/annex/">taproot annexes</a> standard in Bitcoin Core.</p><ul><li><p>A taproot annex is an optional field in the witness structure of taproot inputs that can be used to store additional data. This field still hasn&#8217;t a clear use-case and was reserved for future updates.</p></li><li><p>Glass Coins need to post data to the main chain, as a requirement to prevent double-spending in the client-side validated protocol. Linus&#8217; idea would be to leverage the annex for that specific purpose. However, Bitcoin Core does not relay annexes by default. Linus&#8217; PR aims to change that, allowing Bitcoin Core nodes to relay them.</p></li><li><p>As <a href="https://x.com/reardencode">Rearden</a> pointed out, however, two implementations already relay the annex by default, namely LibreRelay and rbitcoin.</p></li></ul></li><li><p><strong>Bark Hacked</strong>: Second <a href="https://x.com/secondhq/status/2108065406665805992">revealed</a> that the company had been hacked on Monday 5th. An attacker exploited a bug in the Ark Server&#8217;s boarding flow and managed to steal 0.75 bitcoin of Second&#8217;s own liquidity. No users&#8217; funds were stolen.</p><ul><li><p>The attacker was able to exploit a bug that allowed him to board the Ark Server using only his own signature. Usually, the process requires a co-signature from the Server itself. Thus, the attacker was able to exit the ark protocol with the funds, while at the same time spending his VTXOs through Second&#8217;s Lightning gateway.</p></li><li><p>No funds from Second&#8217;s users were stolen, thanks the design of the Ark protocol. In fact, users&#8217; VTXOs sit on a pre-signed exit path that no one else &#8212; server included &#8212; can spend.</p></li><li><p>An interesting thing about this attack was that the liquidity used to perform it was linked to the <a href="https://x.com/blinkbtc/status/2106429174931939487">hack that hit Blink</a> couple of weeks ago.</p></li></ul></li><li><p><strong>Upgrade Core-lightning</strong>: The Core-lightning team released a new patch version, <a href="https://github.com/ElementsProject/lightning/releases/tag/v26.06.9">v26.06.9</a>, that fixes a vulnerability that could lead to a loss of funds. The team suggested an immediate upgrade for node operators running version v26.06.8 and lower.</p></li></ul><div><hr></div><h1>More from BTC++ Insider Edition</h1><h3>News Hour</h3><ul><li><p><a href="https://x.com/btcinsider__/status/2108602732710162438">BTC++ News Hour</a>: Check out our Friday livestream, where Matthew Vuk and I discuss the most interesting news of the week from the Bitcoin developer ecosystem.</p></li></ul><h3>Articles</h3><ul><li><p><a href="https://insider.btcpp.dev/p/the-comma-is-the-limit-this-week">The comma is the limit - This Week in Bitcoin Core #61</a></p></li></ul><h3>Bitcoin++ &#8212; Payments Edition Livestream</h3><ul><li><p><a href="https://insider.btcpp.dev/i/218910601/day-1">Day 1</a>: Check out the <a href="https://x.com/i/broadcasts/1pJdRDwrEvvKW">livestream</a> for the first day of the Berlin event!</p></li><li><p><a href="https://insider.btcpp.dev/i/218910601/day-1">Day 2</a>: Check out the <a href="https://x.com/i/broadcasts/1AKEmvLVqgvKL">livestream</a> for the second day of the Berlin event!</p></li></ul><div><hr></div><p><em>Looking for an opportunity to join up with some bitcoin devs in person? Join us in</em> <a href="https://btcpp.dev/seoul?code=TUMA20">Seoul</a> <em>this November 5-6 to talk about privacy in Bitcoin!</em></p>]]></content:encoded></item><item><title><![CDATA[The comma is the limit - This Week in Bitcoin Core #61]]></title><description><![CDATA[This week the cap sits on the address...]]></description><link>https://insider.btcpp.dev/p/the-comma-is-the-limit-this-week</link><guid isPermaLink="false">https://insider.btcpp.dev/p/the-comma-is-the-limit-this-week</guid><dc:creator><![CDATA[kevkevin]]></dc:creator><pubDate>Fri, 09 Oct 2026 14:04:26 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!MJw8!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1cee73e5-1dd4-4081-a559-6f40592a5154_1456x816.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>Hello &#128075; folks, I&#8217;m Kevkevin. I&#8217;m an open-source developer and reporter for Insider Edition. Last week I reviewed several pull requests from the Bitcoin Core repo. The merge with the most review this week puts the IPC connection cap on the bind address itself. There is no new global <code>-ipcmaxconnections</code>. <code>-ipcbind</code> takes the number after a comma: <code>-ipcbind=unix:/path/to.sock,max-connections=8</code>. Each listener defaults to 16 simultaneous clients, and will not go above 256.</p><p>The next merge by review activity is <code>util::NotNull</code>. The standard library has no type for a smart pointer that is not null. This one checks at construction, deletes assignment from <code>nullptr</code>, and refuses raw pointers. Call sites that used to <code>Assert</code> before a dereference now get that check from the type.</p><p>Thursday&#8217;s #bitcoin-core-dev meeting, chaired by stickies-v, went through the working groups. Kernel logging landed as a struct instead of a formatted string, and the script-evaluation tracer is up for review. L0rinc left a note on an opt-in pruned assumevalid mode. The QML work is moving functions off the GUI thread. mutanthub can take a request for a mutation run on a pull request. The <code>v32.0rc3</code> binaries are up. <br><br>The channel agreed to skip next week&#8217;s meeting (I suspect because of TabConf). After it ended, Sedited said to keep testing the release candidate.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!MJw8!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1cee73e5-1dd4-4081-a559-6f40592a5154_1456x816.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!MJw8!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1cee73e5-1dd4-4081-a559-6f40592a5154_1456x816.png 424w, https://substackcdn.com/image/fetch/$s_!MJw8!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1cee73e5-1dd4-4081-a559-6f40592a5154_1456x816.png 848w, https://substackcdn.com/image/fetch/$s_!MJw8!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1cee73e5-1dd4-4081-a559-6f40592a5154_1456x816.png 1272w, https://substackcdn.com/image/fetch/$s_!MJw8!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1cee73e5-1dd4-4081-a559-6f40592a5154_1456x816.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!MJw8!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1cee73e5-1dd4-4081-a559-6f40592a5154_1456x816.png" width="1456" height="816" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/1cee73e5-1dd4-4081-a559-6f40592a5154_1456x816.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:816,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!MJw8!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1cee73e5-1dd4-4081-a559-6f40592a5154_1456x816.png 424w, https://substackcdn.com/image/fetch/$s_!MJw8!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1cee73e5-1dd4-4081-a559-6f40592a5154_1456x816.png 848w, https://substackcdn.com/image/fetch/$s_!MJw8!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1cee73e5-1dd4-4081-a559-6f40592a5154_1456x816.png 1272w, https://substackcdn.com/image/fetch/$s_!MJw8!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1cee73e5-1dd4-4081-a559-6f40592a5154_1456x816.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image buttonBase-GK1x3M"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg" class="icon-noB79L"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image buttonBase-GK1x3M"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2 icon-noB79L"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><h4>Merged PR&#8217;s</h4><h5>Every week, several changes are officially added to Bitcoin Core. This week, multiple changes were merged. Here are some I found interesting this week.</h5><ul><li><p><strong><a href="https://github.com/bitcoin/bitcoin/pull/35037">ipc: support per-address max-connections options on -ipcbind</a></strong> by <strong><a href="https://github.com/enirox001">Enoch Azariah</a></strong></p></li></ul><p>Instead of a global <code>-ipcmaxconnections</code>, the IPC connection cap now lives on the address itself: <code>-ipcbind=unix:/path/to.sock,max-connections=8</code>. A global number can&#8217;t give two sockets different limits, and the inline form leaves room for more options later. Each listener defaults to 16 clients and tops out at 256. Extra clients can still <code>connect</code>, but they wait in the backlog until an accepted client disconnects.</p><p>Startup also checks the file descriptor budget before binding. Each <code>-ipcbind</code> costs one listening socket plus its connection slots, and the total has to stay at or under 257, otherwise init fails with &#8220;Too many IPC file descriptors requested&#8221;.</p><ul><li><p><strong><a href="https://github.com/bitcoin/bitcoin/pull/34844">util: Add </a></strong><code>util::NotNull&lt;SmartPtrType&gt;</code> by <strong><a href="https://github.com/maflcko">MarcoFalke</a></strong></p></li></ul><p><code>std::reference_wrapper</code> covers a raw pointer that can&#8217;t be null, but smart pointers had no equivalent short of an <code>Assert</code> at every use. <code>util::NotNull</code> <code>Assert</code>s the pointer at construction, deletes construction and assignment from <code>nullptr</code>, and rejects raw pointers. <code>NotNullUniquePtr&lt;T&gt;</code> and <code>NotNullSharedPtr&lt;T&gt;</code> are the shorthands, and <code>get()</code> still <code>Assume</code>s the pointer is non-null in case it was moved from.</p><p>The first users drop their manual checks: <code>CDBWrapper::DBContext()</code>, <code>CoinsViewOverlay</code>&#8216;s thread pool, <code>CNode::m_transport</code>, and <code>CTxMemPool::GetChangeSet()</code>.</p><h5>There are always changes being updated and reviewed in real-time. Here are some notable PR&#8217;s that are still up and looking for reviews.</h5><ul><li><p><strong><a href="https://github.com/bitcoin/bitcoin/pull/35641">kernel: Add script evaluation tracer</a></strong> by <strong><a href="https://github.com/sedited">sedited</a></strong></p></li></ul><p>This is the PR sedited asked for review on in the kernel update. alexanderwiederin is already calling it from <a href="https://github.com/sedited/rust-bitcoinkernel/pull/230">rust-bitcoinkernel #230</a> for an experimental BIP440 integration.</p><p>The kernel C header gets a callback for the script interpreter&#8217;s state on each step. It is compiled only with <code>-DENABLE_SCRIPT_TRACE=ON</code>. Otherwise the hooks are stubs. Evaluation is split into frames. RAII records a start frame and an end frame for every run, and each instruction gets its own frame. The <code>ScriptError</code> from <code>script_pubkey_verify</code> is on those frames so the error code is visible in the trace. The same frames are a way to check that the interpreter did what a script test thinks it did, including under fuzzing.</p><blockquote><p>This adds a callback hook to the kernel library C header for getting the current script evaluation state on each script evaluation step.</p></blockquote><h4>IRC meeting notes</h4><h5>Every week on Thursday, there is an IRC meeting. Here are some short notes from that meeting.</h5><pre><code><code>&#120320;&#120321;&#120310;&#120304;&#120312;&#120310;&#120306;&#120320;-&#120323;: There are no pre-proposed meeting topics this week. Any last minute ones to add?
&#120320;&#120321;&#120310;&#120304;&#120312;&#120310;&#120306;&#120320;-&#120323;: let's get going with the working groups!

--- Topic 1 ---
&#120320;&#120321;&#120310;&#120304;&#120312;&#120310;&#120306;&#120320;-&#120323;: #topic Fuzzing WG Update (eugenesiegel, marcofleon)
&#120314;&#120302;&#120319;&#120304;&#120316;&#120307;&#120313;&#120306;&#120316;&#120315;: no official update from me, but know that high quality fuzzing is occurring
&#120320;&#120321;&#120310;&#120304;&#120312;&#120310;&#120306;&#120320;-&#120323;: we will continue sleeping soundly

--- Topic 2 ---
&#120320;&#120321;&#120310;&#120304;&#120312;&#120310;&#120306;&#120320;-&#120323;: #topic Kernel WG Update (sedited)
&#120320;&#120306;&#120305;&#120310;&#120321;&#120306;&#120305;: Merged #34374, which gives kernel users a more flexible logging interface by providing a struct instead of a formatted string.
&#120320;&#120306;&#120305;&#120310;&#120321;&#120306;&#120305;: It also got rid of reliance on the logging module.
&#120320;&#120306;&#120305;&#120310;&#120321;&#120306;&#120305;: other than that I'm looking for review on #35641. alexanderwiederin is using it over here https://github.com/sedited/rust-bitcoinkernel/pull/230 for experimental BIP440 integration.
&#120320;&#120306;&#120305;&#120310;&#120321;&#120306;&#120305;: that's all.

--- Topic 3 ---
&#120320;&#120321;&#120310;&#120304;&#120312;&#120310;&#120306;&#120320;-&#120323;: #topic Benchmarking WG Update (l0rinc)
&#120320;&#120306;&#120305;&#120310;&#120321;&#120306;&#120305;: Copying from above: &lt;l0rinc&gt; I can't make today's meeting, but wanted to share https://github.com/bitcoin/bitcoin/issues/36476: an opt-in pruned assumevalid mode that downloads blocks without witnesses, buffers them in memory, then deserializes and connects them without writing blocks or undo data to disk. Early tests bring pruned IBD on a 2 GB Pi 4 from ~22 days to under a week (3 days on an earlier prototype), which could make low-end devices practical again.
&#120320;&#120321;&#120310;&#120304;&#120312;&#120310;&#120306;&#120320;-&#120323;: oh thanks, I missed that!

--- Topic 4 ---
&#120320;&#120321;&#120310;&#120304;&#120312;&#120310;&#120306;&#120320;-&#120323;: #topic QML GUI WG Update (johnny9dev)
&#120311;&#120316;&#120309;&#120315;&#120315;&#120326;&#120821;&#120305;&#120306;&#120323;: We got a lot of really good feedback from testing last week. The preview build should be updated and I have been cleaning up the project board.
&#120311;&#120316;&#120309;&#120315;&#120315;&#120326;&#120821;&#120305;&#120306;&#120323;: the focus right now is finalizing some UX, moving every function off of the gui thread and adding regression tests around that, and then finalizing the feature set for the staging/upstream to bitcoin/bitcoin
&#120311;&#120316;&#120309;&#120315;&#120315;&#120326;&#120821;&#120305;&#120306;&#120323;: thats all
&#120320;&#120321;&#120310;&#120304;&#120312;&#120310;&#120306;&#120320;-&#120323;: thanks for the updates!

--- Topic 5 ---
&#120320;&#120321;&#120310;&#120304;&#120312;&#120310;&#120306;&#120320;-&#120323;: #topic QA WG Update (brunoerg)
&#120311;&#120316;&#120315;&#120302;&#120321;&#120302;&#120304;&#120312;: nice work (kernel and ibd)
&#120303;&#120319;&#120322;&#120315;&#120316;&#120306;&#120319;&#120308;: mutanthub now has a dedicated page to request a mutation analysis for a pull request - https://mutanthub.space/projects/bitcoin/bitcoin/requests#request-a-run
&#120303;&#120319;&#120322;&#120315;&#120316;&#120306;&#120319;&#120308;: so if you'd like a mutation testing run for your PR, please request there
&#120303;&#120319;&#120322;&#120315;&#120316;&#120306;&#120319;&#120308;: that's all
&#120311;&#120316;&#120315;&#120302;&#120321;&#120302;&#120304;&#120312;: (and gui)
&#120320;&#120321;&#120310;&#120304;&#120312;&#120310;&#120306;&#120320;-&#120323;: anything else to discuss?
&#120320;&#120306;&#120305;&#120310;&#120321;&#120306;&#120305;: no meeting next week?
&#120320;&#120321;&#120310;&#120304;&#120312;&#120310;&#120306;&#120320;-&#120323;: sgtm
&#120320;&#120313;&#120310;&#120323;&#120815;&#120319;__: yup
&#120320;&#120313;&#120310;&#120323;&#120815;&#120319;__: sgtm too
&#120320;&#120321;&#120310;&#120304;&#120312;&#120310;&#120306;&#120320;-&#120323;: grazie a tutti
&#120320;&#120321;&#120310;&#120304;&#120312;&#120310;&#120306;&#120320;-&#120323;: #endmeeting
&#120320;&#120306;&#120305;&#120310;&#120321;&#120306;&#120305;: and keep testing the release candidate!
</code></code></pre><p><a href="https://achow101.com/ircmeetings/2026/bitcoin-core-dev.2026-10-08_16_00.html">Read the full meeting</a></p><h4>Releases</h4><ul><li><p>The <code>v32.0rc3</code> binaries are now published: <a href="https://bitcoincore.org/bin/bitcoin-core-32.0/test.rc3/">bitcoincore.org/bin/bitcoin-core-32.0/test.rc3</a> (tagged by fanquake).</p></li></ul><blockquote><p>Thank you for reading. Be sure to tune in again next week for your updates on Bitcoin Core!</p></blockquote><p>If there are any comments, suggestions, or errors, do not hesitate to reach out or comment.</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://insider.btcpp.dev/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">bitcoin++'s Insider Edition is a reader-supported publication. To receive new posts and support my work, consider becoming a free or paid subscriber.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div><p></p>]]></content:encoded></item><item><title><![CDATA[Payments Edition — Last Week in Bitcoin (Sep 28 - Oct 04)]]></title><description><![CDATA[Hi Insiders.]]></description><link>https://insider.btcpp.dev/p/payments-edition-last-week-in-bitcoin</link><guid isPermaLink="false">https://insider.btcpp.dev/p/payments-edition-last-week-in-bitcoin</guid><dc:creator><![CDATA[Tuma (I WILL NEVER DM YOU)]]></dc:creator><pubDate>Mon, 05 Oct 2026 14:01:44 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!BMPv!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd055aee8-2402-47ab-985e-9d2bd745c6f9_1600x900.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p><em>Hi Insiders. This is Tuma, open-source reporter from the Insider Edition.</em></p><p><em>In this week update we feature the most interesting things happened during Bitcoin++ Payment Edition in Belrin. During the three-days conference, developers met to discuss how to make Bitcoin payments better for everyone.</em></p><p><em>We also cover some interesting news from the Bitcoin ecosystem. Notably, we discuss Peter Todd joining MARA Foundation, an interesting deep dive by Vinteum, and Blink Wallet&#8217;s post-mortem on the recent attack to their users.</em></p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!BMPv!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd055aee8-2402-47ab-985e-9d2bd745c6f9_1600x900.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!BMPv!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd055aee8-2402-47ab-985e-9d2bd745c6f9_1600x900.jpeg 424w, https://substackcdn.com/image/fetch/$s_!BMPv!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd055aee8-2402-47ab-985e-9d2bd745c6f9_1600x900.jpeg 848w, https://substackcdn.com/image/fetch/$s_!BMPv!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd055aee8-2402-47ab-985e-9d2bd745c6f9_1600x900.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!BMPv!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd055aee8-2402-47ab-985e-9d2bd745c6f9_1600x900.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!BMPv!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd055aee8-2402-47ab-985e-9d2bd745c6f9_1600x900.jpeg" width="1456" height="819" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/d055aee8-2402-47ab-985e-9d2bd745c6f9_1600x900.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:819,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:347184,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/jpeg&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://insider.btcpp.dev/i/218910601?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd055aee8-2402-47ab-985e-9d2bd745c6f9_1600x900.jpeg&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!BMPv!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd055aee8-2402-47ab-985e-9d2bd745c6f9_1600x900.jpeg 424w, https://substackcdn.com/image/fetch/$s_!BMPv!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd055aee8-2402-47ab-985e-9d2bd745c6f9_1600x900.jpeg 848w, https://substackcdn.com/image/fetch/$s_!BMPv!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd055aee8-2402-47ab-985e-9d2bd745c6f9_1600x900.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!BMPv!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd055aee8-2402-47ab-985e-9d2bd745c6f9_1600x900.jpeg 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image buttonBase-GK1x3M"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg" class="icon-noB79L"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image buttonBase-GK1x3M"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2 icon-noB79L"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><div><hr></div><h1><strong>Highlights from Bitcoin++ &#8212; Payments Edition</strong></h1><p><em>I spent last week at Bitcoin++ Payments Edition in Berlin. The first day of talks will be live-streamed starting from Thursday, October 8th, at 5PM UTC.</em></p><h3>Day 1</h3><ul><li><p><a href="https://btcpp.dev/whois/renepickhardt">Rene Pickhardt</a> kicked-off the Berlin conference by talking about his experience in working on Lightning.</p></li><li><p><a href="https://btcpp.dev/whois/callebtc">Calle</a> gave a talk describing how they are working towards federaing Cashu ecash, so as not to rely on a single mint.</p></li><li><p><a href="https://btcpp.dev/whois/swedishfrenchpress">Erik Cativo</a>, the designer behind several Cashu applications, talked about how they built the <a href="https://numopay.org/">Numo</a> point-of-sale app by working closely with the merchant using it.</p></li><li><p><a href="https://btcpp.dev/whois/stevenroose">Steven Roose</a>, CEO at Second, described how Bark &#8212; their implementation of the Ark protocol &#8212; can make self-custodial Bitcoin payments easier.</p></li><li><p><a href="https://btcpp.dev/whois/allenf32">Allen Farrington</a> came back to Berlin for a sequel talk on the fiat payment stack. This time, he talked about how the different layers of Bitcoin can improve payment technology.</p></li></ul><h3>Day 2</h3><ul><li><p><a href="https://btcpp.dev/whois/alalmoskvin">Aleksei Moskvin</a> and <a href="https://btcpp.dev/whois/mschofnegger">Markus Schofnegger</a>, researchers at [[alloc]init], talked about Shielded Bitcoin, the new metaprotocol that promises ZCash-style private Bitcoin payments on-chain with no consensus change needed.</p></li><li><p><a href="https://btcpp.dev/whois/setavenger">Setor</a>, the developer behind BilndBit, talked about how is product is trying to balance UX and privacy for silent payments.</p></li><li><p><a href="https://btcpp.dev/whois/tnull">Elias Rohrer</a> gave a talk about <a href="https://www.projectloupe.org/">Loupe</a>, the AI-assisted security scanning suite used in several projects across the Bitcoin ecosystem.</p></li><li><p><a href="https://btcpp.dev/whois/jestopher-btc">Jesse Shrader</a> examined the technologies and opportunities behind cross-currency payments on Bitcoin using Lightning.</p></li><li><p><a href="https://btcpp.dev/whois/niftynei">Niftynei</a> moderated a panel with Calle, <a href="https://btcpp.dev/whois/joschisan">Joschisan</a>, <a href="https://btcpp.dev/whois/michael1011">Michael</a>, and Elias, where the devs discussed their different experiences with LLMs and tried to understand if Bitcoin can survive the current AI onslaught.</p></li></ul><h3>Day 3</h3><ul><li><p><a href="https://btcpp.dev/whois/stutxo">Stutxo</a> gave a talk on how to make Bitcoin magical internet money again, thanks to the ongoing effort of several projects.</p></li><li><p><a href="https://btcpp.dev/whois/pim-keer">Pim Keer</a> presented a protocol for accountable Chaumian ecash, which protects users from token overissuance while maintaining unlinkability.</p></li><li><p><a href="https://btcpp.dev/whois/pool2win">Jungly</a> described the P2Poolv2 Share Chain, a way to make miner payouts non-custodial.</p></li><li><p><a href="https://btcpp.dev/whois/evd0kim">Ilya Evdokimov</a> presented Zerosats, an experiment that aims to make Bitcoin transactions private while keeping the base chain maximally transparent.</p></li><li><p><a href="https://btcpp.dev/whois/lightrider5">Lightrider</a> talked about his 7-years long experience in accepting Bitcoin as a payment method.</p></li><li><p>Niftynei moderated the final panel with <a href="https://btcpp.dev/whois/liam-eagen-31c7ef20">Liam Eagen</a>, <a href="https://btcpp.dev/whois/georgetsagk">George</a>, <a href="https://btcpp.dev/whois/matthewvuk2">Matthew Vuk</a>, and Markus Schofnegger, exploring which should be the future Bitcoin stack for payments.</p></li></ul><div><hr></div><h1><strong>A BIPs Update</strong></h1><p><em>There was no newsworthy update in the last days in the <a href="https://github.com/bitcoin/bips">BIP repository</a>. We&#8217;ll provide new updates as soon as a new BIP gets published or gets assigned a number.</em></p><div><hr></div><h1>Other News from the Bitcoin World</h1><ul><li><p><strong>Peter Todd &lt;&gt; MARA Foundation</strong>: MARA Foundation recently <a href="https://x.com/MARAFoundation_/status/2105659425054748922">announced</a> that Peter Todd had joined them as Lead Maintainer of Slipstream, a private mempool service that allows direct submission of transactions to MARA&#8217;s mining pool. Todd&#8217;s involvement with Slipstream is mainly due to the use of the service as a proving ground for different proposals in the Bitcoin R&amp;D space.</p></li><li><p><strong>Vinteum&#8217;s Deep Dive on Privacy</strong>: Vinteum &#8212; the organization behind open-source Bitcoin development in Brasil &#8212; <a href="https://www.vinteum.org/blog/inside-a-vinteum-deep-dive-how-private-are-bitcoin-transactions-really">published</a> an interesting deep dive on how chain analysis work, with the aim to understand how private are Bitcoin transactions.</p></li><li><p><strong>Blink Wallet Attack Post-mortem</strong>: Blink recently <a href="https://x.com/blinkbtc/status/2106429174931939487">published</a> the post-mortem for the attack that affected their wallet and that resulted in 6.61 bitcoin stolen from their users. It seems that the attacker leveraged a flaw in their admin tools to gain access to 35 accounts. All affected users were made whole, and the company put a <a href="https://www.blink.sv/en/bounty-terms">bounty</a> as high as 50% of the recovered funds.</p></li></ul><div><hr></div><h1>More from BTC++ Insider Edition</h1><h3>Articles</h3><ul><li><p><a href="https://insider.btcpp.dev/p/v320-is-around-the-corner-this-week">v32.0 is around the corner - This Week in Bitcoin Core #60</a></p></li><li><p><a href="https://insider.btcpp.dev/p/shielded-bitcoin-and-pipes-facts">Shielded Bitcoin &amp; PIPEs: 12 Questions &amp; Answers</a></p></li></ul><div><hr></div><p><em>Looking for an opportunity to join up with some bitcoin devs in person? Join us in</em> <a href="https://btcpp.dev/seoul?code=TUMA20">Seoul</a> <em>this November 5-6 to talk about privacy in Bitcoin!</em></p>]]></content:encoded></item><item><title><![CDATA[v32.0 is around the corner - This Week in Bitcoin Core #60]]></title><description><![CDATA[This week -maxfeerate is just a limit...]]></description><link>https://insider.btcpp.dev/p/v320-is-around-the-corner-this-week</link><guid isPermaLink="false">https://insider.btcpp.dev/p/v320-is-around-the-corner-this-week</guid><dc:creator><![CDATA[kevkevin]]></dc:creator><pubDate>Fri, 02 Oct 2026 14:01:47 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!MJw8!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1cee73e5-1dd4-4081-a559-6f40592a5154_1456x816.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>Hello &#128075; folks, I&#8217;m Kevkevin. I&#8217;m an open-source developer and reporter for Insider Edition. Last week I reviewed several pull requests from the Bitcoin Core repo. <br><br>The merge with the most review this week is the wallet fee ceiling. <code>-maxtxfee</code> is a total fee, an amount, and the default is 0.10 BTC. The wallet was using that amount as the upper bound on the fee rate. #29278 adds<code>-maxfeerate</code>, a rate, default 0.10 BTC/kvB (10,000 sat/vB). The wallet will not create a transaction above that rate, and broadcast rejects one the same way.<br><br>The next merge by review activity is a Guix time-machine update. On riscv64, <code>guix shell</code> failed because <code>python-lief</code> 0.17.5 does not support that system. The pin moves to Guix <code>60f6956a</code>, and that build works again.</p><p>Thursday&#8217;s #bitcoin-core-dev meeting, chaired by abubakarsadiq, went through the working groups, a mutation-testing site, and a proposal for automated review on pull requests. In the channel, fanquake tagged <code>v32.0rc3</code>.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!MJw8!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1cee73e5-1dd4-4081-a559-6f40592a5154_1456x816.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!MJw8!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1cee73e5-1dd4-4081-a559-6f40592a5154_1456x816.png 424w, https://substackcdn.com/image/fetch/$s_!MJw8!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1cee73e5-1dd4-4081-a559-6f40592a5154_1456x816.png 848w, https://substackcdn.com/image/fetch/$s_!MJw8!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1cee73e5-1dd4-4081-a559-6f40592a5154_1456x816.png 1272w, https://substackcdn.com/image/fetch/$s_!MJw8!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1cee73e5-1dd4-4081-a559-6f40592a5154_1456x816.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!MJw8!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1cee73e5-1dd4-4081-a559-6f40592a5154_1456x816.png" width="1456" height="816" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/1cee73e5-1dd4-4081-a559-6f40592a5154_1456x816.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:816,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!MJw8!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1cee73e5-1dd4-4081-a559-6f40592a5154_1456x816.png 424w, https://substackcdn.com/image/fetch/$s_!MJw8!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1cee73e5-1dd4-4081-a559-6f40592a5154_1456x816.png 848w, https://substackcdn.com/image/fetch/$s_!MJw8!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1cee73e5-1dd4-4081-a559-6f40592a5154_1456x816.png 1272w, https://substackcdn.com/image/fetch/$s_!MJw8!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1cee73e5-1dd4-4081-a559-6f40592a5154_1456x816.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image buttonBase-GK1x3M"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg" class="icon-noB79L"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image buttonBase-GK1x3M"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2 icon-noB79L"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><h4><strong>Merged PR&#8217;s</strong></h4><h5><strong>Every week, several changes are officially added to Bitcoin Core. This week, </strong>multiple <strong>changes were merged. Here are some I found interesting this week.</strong></h5><ul><li><p><strong><a href="https://github.com/bitcoin/bitcoin/pull/29278">Wallet: Add </a></strong><code>maxfeerate</code><strong><a href="https://github.com/bitcoin/bitcoin/pull/29278"> wallet startup option</a></strong> by <strong><a href="https://github.com/ismaelsadeeq">ismaelsadeeq</a></strong></p><p>Abubakar Sadiq Ismail (ismaelsadeeq) merged the fix for #29220. <code>-maxtxfee</code> stays the absolute cap on the fee of one wallet transaction (default 0.10 BTC, and it still lives under debug/test options). <code>-maxfeerate</code> is a wallet startup option, in BTC/kvB. The default is <code>CFeeRate{COIN / 10}</code>, 0.10 BTC/kvB, 10,000 sat/vB.<br></p><p><code>CreateTransactionInternal</code> already refused a fee above <code>m_max_tx_fee</code>. It now also refuses when <code>current_fee</code> is above <code>m_max_tx_fee_rate.GetFee(tx_vsize)</code>. That error is <code>MAX_FEE_RATE_EXCEEDED</code>. The absolute cap still returns <code>MAX_FEE_EXCEEDED</code>.<br></p><p>Broadcast takes both limits. <code>SubmitTxMemoryPoolAndRelay</code> passes <code>m_max_tx_fee</code> and <code>m_max_tx_fee_rate</code> into <code>broadcastTransaction</code>. The node test-accepts the transaction, then fails if the base fee is above <code>-maxtxfee</code>, or above what <code>-maxfeerate</code> allows for the transaction&#8217;s vsize. The strings are split. An absolute-fee failure is &#8220;Fee exceeds maximum configured by user (maxtxfee)&#8221;. A rate failure is &#8220;Fee rate exceeds maximum configured by user (maxfeerate)&#8221;.<br></p><p>Startup treats the two options differently. <code>-maxfeerate</code> below <code>-minrelaytxfee</code> is an error, so the wallet cannot be configured to build transactions that will sit under the relay floor. <code>-maxtxfee</code> set so that a 1 kvB transaction at that absolute fee would be under <code>-minrelaytxfee</code> is a warning: some transactions at the relay floor will not fit under the absolute cap, and the wallet will refuse to create them.</p></li><li><p><strong><a href="https://github.com/bitcoin/bitcoin/pull/36233">guix: Update time-machine to 60f6956aeffa7f30285745bd0ea615e9acfc74f8</a></strong> by <strong><a href="https://github.com/hebasto">hebasto</a></strong><br>Hennadii Stepanov (hebasto) fixed #36232. On master, a Guix build on a RISC-V host failed with <code>package python-lief@0.17.5 does not support riscv64-linux</code>. The unsupported package is an indirect dependency. <code>python-lief</code> pulls in <code>python-scikit-build-core</code>, which pulls in <code>python-cattrs</code>, which pulls in <code>python-msgspec</code>. <code>python-msgspec</code> had <code>(supported-systems (list "x86_64-linux" "aarch64-linux"))</code>.<br><br>The time-machine commit is Guix <code>60f6956aeffa7f30285745bd0ea615e9acfc74f8</code>. That includes Guix commit <code>b35905695afd</code>, which updates <code>python-msgspec</code> and drops the system allowlist. Along with that pin, <code>git-minimal</code> goes from 2.52.0 to 2.54.0, <code>linux-headers</code> from 6.1.166 to 6.1.172, <code>python-lief</code> from 0.17.5 to 0.17.6, and <code>python-minimal</code> from 3.11.14 to 3.12.12.<br><br><code>python-lief</code> and <code>nsis-x86_64</code> also pull in packages whose tests fail when they are built natively on riscv64: <code>python-psutil</code>, <code>python-pytest-xprocess</code>, and <code>python-sh</code> through <code>python-lief</code>, and <code>python-psutil</code> through <code>nsis-x86_64</code>. Those tests are skipped for now.</p></li></ul><h5><strong>There are always changes being updated and reviewed in real-time. Here are some notable PR&#8217;s that are still up and looking for reviews.</strong></h5><ul><li><p><strong><a href="https://github.com/bitcoin/bitcoin/pull/36277">net: always complete all initial private broadcast connections</a></strong> by <strong><a href="https://github.com/andrewtoth">andrewtoth</a></strong></p><p>Andrew Toth (andrewtoth). Open, not a draft, mergeable, on the 32.0 milestone. This is the one to read while <code>v32.0rc3</code> is out and <a href="https://github.com/bitcoin/bitcoin/milestone/84">milestone 84</a> still has open pull requests. It is an alternative to #34707.<br></p><p>Private broadcast is supposed to open three connections. If the node stops once the transaction shows up in its own mempool, or once the transaction is a mempool conflict, the missing connection is itself a signal. An observer who can see which connections completed can line that up with acceptance. The same class of timing leak is described on #34707 and on #29415.<br></p><p>This PR keeps the three initial sends. A transaction that comes back, or that conflicts in the mempool, is <code>MarkResolved</code> rather than <code>Remove</code>, so the node does not treat that as &#8220;stop talking.&#8221; Disconnects are tracked, and a retry has to go through <code>TryGrantRetry</code>, so a stale failure does not turn into an extra connection on top of the original three.</p><blockquote><p>always send 3 times regardless if the tx is received in our mempool or is otherwise invalid</p></blockquote></li></ul><div><hr></div><h4><strong>IRC meeting notes</strong></h4><h5><strong>Every week on Thursday, there is an IRC meeting. Here are some short notes from that meeting.</strong></h5><pre><code>--- Topic 1: Fuzzing ---
&#120302;&#120303;&#120322;&#120303;&#120302;&#120312;&#120302;&#120319;&#120320;&#120302;&#120305;&#120310;&#120318;: #topic Fuzzing WG Update (eugenesiegel, marcofleon)
&#120306;&#120322;&#120308;&#120306;&#120315;&#120306;&#120320;&#120310;&#120306;&#120308;&#120306;&#120313;: I'm not sure if marcofleon is here, but no update from my side
&#120314;&#120302;&#120319;&#120304;&#120316;&#120307;&#120313;&#120306;&#120316;&#120315;: no update this week
&#120314;&#120302;&#120319;&#120304;&#120316;&#120307;&#120313;&#120306;&#120316;&#120315;: possibly next

--- Topic 2: Kernel ---
&#120302;&#120303;&#120322;&#120303;&#120302;&#120312;&#120302;&#120319;&#120320;&#120302;&#120305;&#120310;&#120318;: #topic Kernel WG Update (sedited)
&#120302;&#120303;&#120322;&#120303;&#120302;&#120312;&#120302;&#120319;&#120320;&#120302;&#120305;&#120310;&#120318;: I think @sedited is not here, so I will move on.

--- Topic 3: Benchmarking ---
&#120302;&#120303;&#120322;&#120303;&#120302;&#120312;&#120302;&#120319;&#120320;&#120302;&#120305;&#120310;&#120318;: #topic Benchmarking WG Update (l0rinc, andrewtoth)
&#120313;&#120812;&#120319;&#120310;&#120315;&#120304;: nothing from my side, but want to present something next week
&#120302;&#120315;&#120305;&#120319;&#120306;&#120324;&#120321;&#120316;&#120321;&#120309;_: I haven't had an update in this WG in a while. I think I can be removed as lead.
&#120302;&#120315;&#120305;&#120319;&#120306;&#120324;&#120321;&#120316;&#120321;&#120309;_: I will still actively review speedup PRs and benchmark, but I don't really have regular updates to give.
&#120302;&#120303;&#120322;&#120303;&#120302;&#120312;&#120302;&#120319;&#120320;&#120302;&#120305;&#120310;&#120318;: alright, if l0rinc also has no update, it can be archived.

--- Topic 4: QML GUI ---
&#120302;&#120303;&#120322;&#120303;&#120302;&#120312;&#120302;&#120319;&#120320;&#120302;&#120305;&#120310;&#120318;: #topic QML GUI WG Update (johnny9dev)
&#120311;&#120316;&#120309;&#120315;&#120315;&#120326;&#120821;&#120305;&#120306;&#120323;: Pseudorandom has completed a comprehensive overhaul of the UX
&#120311;&#120316;&#120309;&#120315;&#120315;&#120326;&#120821;&#120305;&#120306;&#120323;: Its looking good and were close to a design we think will work for release
&#120311;&#120316;&#120309;&#120315;&#120315;&#120326;&#120821;&#120305;&#120306;&#120323;: Will start getting more feedback on it.
&#120311;&#120316;&#120309;&#120315;&#120315;&#120326;&#120821;&#120305;&#120306;&#120323;: If anyone is interested in trying its in the qt6 branch of the project
&#120311;&#120316;&#120309;&#120315;&#120315;&#120326;&#120821;&#120305;&#120306;&#120323;: That's all for this week
&#120302;&#120303;&#120322;&#120303;&#120302;&#120312;&#120302;&#120319;&#120320;&#120302;&#120305;&#120310;&#120318;: thanks @johnny9dev
&#120324;&#120310;&#120313;&#120313;&#120304;&#120313;-&#120302;&#120319;&#120312;: are there pre-built bins johnny9dev?
&#120311;&#120316;&#120309;&#120315;&#120315;&#120326;&#120821;&#120305;&#120306;&#120323;: willcl-ark: by the end of the day bitcoincore.app will have them

--- Topic 5: QA / mutation testing ---
&#120302;&#120303;&#120322;&#120303;&#120302;&#120312;&#120302;&#120319;&#120320;&#120302;&#120305;&#120310;&#120318;: #topic QA WG Update (brunoerg)
&#120303;&#120319;&#120322;&#120315;&#120316;&#120306;&#120319;&#120308;: I've been working on a new project which is a collaborative mutation testing platform (https://mutanthub.space/). I've noticed that we have people using different tools and approaches to create mutants, different PRs addressing mutants (some overlaps), etc.
&#120303;&#120319;&#120322;&#120315;&#120316;&#120306;&#120319;&#120308;: So the idea of this new platform is that everything is centralized there and it becomes more collaborative.
&#120303;&#120319;&#120322;&#120315;&#120316;&#120306;&#120319;&#120308;: Anyone can submit surviving mutants, reproduce and evaluate them.
&#120303;&#120319;&#120322;&#120315;&#120316;&#120306;&#120319;&#120308;: For every surviving mutant, people can claim that a commit or PR kills it (so people can test it and/or avoid overlaps), as well as we can have discussions about mutants there.
&#120303;&#120319;&#120322;&#120315;&#120316;&#120306;&#120319;&#120308;: In the coming days, I will probably shutdown https://bitcoincore.space and https://secp256k1.space and centralize everything on mutanthub.
&#120303;&#120319;&#120322;&#120315;&#120316;&#120306;&#120319;&#120308;: feedback is welcome
&#120303;&#120319;&#120322;&#120315;&#120316;&#120306;&#120319;&#120308;: that's all
&#120302;&#120303;&#120322;&#120303;&#120302;&#120312;&#120302;&#120319;&#120320;&#120302;&#120305;&#120310;&#120318;: @brunoerg whats the process of submitting mutants?
&#120303;&#120319;&#120322;&#120315;&#120316;&#120306;&#120319;&#120308;: e.g. you can open any file from our source code (at https://mutanthub.space/projects/bitcoin/bitcoin/code), click on a specific line and suggest a mutant. Me as admin of the platform or any other people that wants to help in this process have to approve it (just to avoid trolls).
&#120303;&#120319;&#120322;&#120315;&#120316;&#120306;&#120319;&#120308;: we also have a feature that me and selected people can do bulk import from a json file.
&#120305;&#120327;&#120325;&#120327;&#120308;: The killed mutants are the ones where a fix has been pushed to the project?
&#120303;&#120319;&#120322;&#120315;&#120316;&#120306;&#120319;&#120308;: killed mutants are the ones that are detected by any of our tests
&#120303;&#120319;&#120322;&#120315;&#120316;&#120306;&#120319;&#120308;: considering the tests at the same commit point from where that mutant was created
&#120305;&#120327;&#120325;&#120327;&#120308;: ah i see, thanks for sharing it looks awesome

--- Topic 6: 32.0 milestone ---
&#120302;&#120303;&#120322;&#120303;&#120302;&#120312;&#120302;&#120319;&#120320;&#120302;&#120305;&#120310;&#120318;: Anything else to discuss?
&#120305;&#120327;&#120325;&#120327;&#120308;: Maybe just an ask there's still some items on the 32.0 milestone, it would be helpful if anyone has extra hands to look thee
&#120302;&#120303;&#120322;&#120303;&#120302;&#120312;&#120302;&#120319;&#120320;&#120302;&#120305;&#120310;&#120318;: https://github.com/bitcoin/bitcoin/milestone/84

--- Topic 7: fuzzamoto ---
&#120306;&#120322;&#120308;&#120306;&#120315;&#120306;&#120320;&#120310;&#120306;&#120308;&#120306;&#120313;: would people find it helpful if they could tag some sort of bot or add a label that says they want a fuzzamoto build on their PR (assuming fuzzamoto covers the code in the first place)
&#120310;&#120315;&#120320;&#120321;&#120302;&#120308;&#120310;&#120303;&#120303;&#120320;: eugenesiegel remind me where is there a spot to look at scenarios covered
&#120320;&#120321;&#120310;&#120304;&#120312;&#120310;&#120306;&#120320;-&#120323;: eugenesiegel: sounds useful to me
&#120306;&#120322;&#120308;&#120306;&#120315;&#120306;&#120320;&#120310;&#120306;&#120308;&#120306;&#120313;: instagibbs: scenarios here: https://github.com/oss-garage/fuzzamoto/tree/master/fuzzamoto-scenarios/bin but the ir scenario covers most of the p2p stuff
&#120306;&#120322;&#120308;&#120306;&#120315;&#120306;&#120320;&#120310;&#120306;&#120308;&#120306;&#120313;: I can vibe-code a bot ppl can ping and make it as un-invasive as possible, that's all from me
&#120306;&#120322;&#120308;&#120306;&#120315;&#120306;&#120320;&#120310;&#120306;&#120308;&#120306;&#120313;: instagibbs: no watering hole

--- Topic 8: AI review ---
&#120324;&#120310;&#120313;&#120313;&#120304;&#120313;-&#120302;&#120319;&#120312;: I'm wondering if there'd be interest in a limited trial of automated AI reviews on PRs. I've already been testing this in my mirror of bitcoin/bitcoin, and I feel the results are useful enough. If there is interest, I think we could start on PRs coming from contibutors outside the frequent-contributor group.
&#120310;&#120315;&#120320;&#120321;&#120302;&#120308;&#120310;&#120303;&#120303;&#120320;: could we start with allowing people to call it in for their PR, so people can sample it
&#120324;&#120310;&#120313;&#120313;&#120304;&#120313;-&#120302;&#120319;&#120312;: My suspicion is that some (or all) PRs arrive with LLM assistance or review in some capacity, and that human reviewers will then download the branch and make another llm-assisted first pass review. An automated review could do some of that initial work once and make the findings available to everyone/the original author.
&#120324;&#120310;&#120313;&#120313;&#120304;&#120313;-&#120302;&#120319;&#120312;: instagibbs: that could also be an approach
&#120306;&#120322;&#120308;&#120306;&#120315;&#120306;&#120320;&#120310;&#120306;&#120308;&#120306;&#120313;: can we make it so that another person can't invoke it on your own PR if it's opt-in?
&#120324;&#120310;&#120313;&#120313;&#120304;&#120313;-&#120302;&#120319;&#120312;: If you want to see what the reviews are like first, then you can check new/recently-synced PRs here: https://git.fish.foo/bitcoin/bitcoin there should be a comment from "ralph" after some time with a review
&#120326;&#120302;&#120315;&#120304;&#120326;: I think that would be interesting upon request
&#120305;&#120327;&#120325;&#120327;&#120308;: what model is it using?
&#120324;&#120310;&#120313;&#120313;&#120304;&#120313;-&#120302;&#120319;&#120312;: I have to run out now, but will read all following messages when I get back. Happy to provide more details/links to bot code/prompts etc if folks want
&#120324;&#120310;&#120313;&#120313;&#120304;&#120313;-&#120302;&#120319;&#120312;: I had codex make a crazy "how it works" chart which is here, and has the models in use for each agent/pass: https://github.com/willcl-ark/nix/blob/master/pkgs/forgejo-review-bot/README.md
&#120302;&#120315;&#120305;&#120319;&#120306;&#120324;&#120321;&#120316;&#120321;&#120309;_: I think most of the value of LLM reviews is still having it be distilled by experienced contributors. So just posting the LLM output on a PR doesn't add much value IMO.
&#120302;&#120303;&#120322;&#120303;&#120302;&#120312;&#120302;&#120319;&#120320;&#120302;&#120305;&#120310;&#120318;: andrewtoth_: +1, I think it can be noise sometimes, so a dev should review the LLM reviews and post them.
&#120302;&#120303;&#120322;&#120303;&#120302;&#120312;&#120302;&#120319;&#120320;&#120302;&#120305;&#120310;&#120318;: #endmeeting
&#120310;&#120315;&#120320;&#120321;&#120302;&#120308;&#120310;&#120303;&#120303;&#120320;: I think status quo could be greatly helped, especially in terms of new contributors, I'm not sure what the right system is but I am not sure everyone pretending to not meat proxy is the right way. Could we give willcl-ark a long leash to try something on a trial period and adapt as we go? something to discuss i guess
&#120310;&#120315;&#120320;&#120321;&#120302;&#120308;&#120310;&#120303;&#120303;&#120320;: Obviously we wouldnt want multiple instances rampaging around
&#120302;&#120315;&#120305;&#120319;&#120306;&#120324;&#120321;&#120316;&#120321;&#120309;_: I think maybe new contributors are the least likely to benefit from non-distilled review output. LLM reviews are fuzzy and will generally always return a bunch of "issues" with the code that can be "improved". It still takes a human to tell it when to stop, and newer contributors won't know which threads to pull and which are false positives/noise.
&#120326;&#120302;&#120315;&#120304;&#120326;: less frequent contributors does not necessarily mean less skilled, but good point.
&#120326;&#120302;&#120315;&#120304;&#120326;: I guess maybe the original suggestion of outside the frequent-contributor group is better than new
&#120326;&#120302;&#120315;&#120304;&#120326;: anyway, I think something on request is interesting since there seems to be a lot of unknowns, so a trial like that would be nice
&#120310;&#120315;&#120320;&#120321;&#120302;&#120308;&#120310;&#120303;&#120303;&#120320;: there's a whole spectrum of things we could do, we are not beholden to 2025 processes "just because".
&#120310;&#120315;&#120320;&#120321;&#120302;&#120308;&#120310;&#120303;&#120303;&#120320;: andrewtoth_ Goose team at spiral does this
&#120310;&#120315;&#120320;&#120321;&#120302;&#120308;&#120310;&#120303;&#120303;&#120320;: https://goose-docs.ai/blog/2026/07/30/issues-are-the-new-prs/
&#120314;&#120302;&#120307;&#120313;&#120304;&#120312;&#120316;: willcl-ark: I am not sure about directly putting the LLM review in the main repo. My hope is still that the repo discussions are from humans for humans. I want to read comments written in the indidual voice and language of the human author. But seeing the share of monotone claude-speak in the repo today, maybe that ship has sailed :(
&#120314;&#120302;&#120307;&#120313;&#120304;&#120312;&#120316;: My recommendation would be to add an anchor link to it (https://github.com/willcl-ark/nix/pull/1), so that it is easier to jump to it, for anyone who wants to, and also easy to ignore for anyone who does not want to.
&#120310;&#120315;&#120320;&#120321;&#120302;&#120308;&#120310;&#120303;&#120303;&#120320;: I would definitely say that the author isn't liable to respond to the review, like they are in general required to respond to humans
&#120306;&#120322;&#120308;&#120306;&#120315;&#120306;&#120320;&#120310;&#120306;&#120308;&#120306;&#120313;: is the author required to respond to a human copy-pasting llm output though
&#120302;&#120315;&#120305;&#120319;&#120306;&#120324;&#120321;&#120316;&#120321;&#120309;_: I think adding this review to corecheck.dev or similar is better than having it in the main repo. That way it can still be pointed to when useful.
&#120310;&#120315;&#120320;&#120321;&#120302;&#120308;&#120310;&#120303;&#120303;&#120320;: eugenesiegel no, which is why I think status quo is already bad
&#120303;&#120319;&#120322;&#120315;&#120316;&#120306;&#120319;&#120308;: andrewtoth_ I feel few people check corecheck
&#120306;&#120322;&#120308;&#120306;&#120315;&#120306;&#120320;&#120310;&#120306;&#120308;&#120306;&#120313;: andrewtoth_: you "can't", but you can guess I suppose
&#120302;&#120315;&#120305;&#120319;&#120306;&#120324;&#120321;&#120316;&#120321;&#120309;_: if it's people I've met, then I assume they are the ones copy-pasting. But otherwise I assume it's a bot behind the avatar.
&#120313;&#120812;&#120319;&#120310;&#120315;&#120304;: I like the idea of extending corecheck in a non-invasive, opt-in way with careful AI review - it's a lot easier to instruct new contributors to just check that instead of reexplaining the same concepts.
&#120313;&#120812;&#120319;&#120310;&#120315;&#120304;: My concern is that those reviews will be very opinionated/centralized by whoever writes the prompts, so we should probably have our preferences documented in Core
&#120313;&#120812;&#120319;&#120310;&#120315;&#120304;: and the code review prompt be something simple like "review this PR based on locally available docs" or if we want to force deeper work: 1) create an issue from this PR 2) implement this issue 3) compare these two implementations and add comments based on their differences
&#120313;&#120812;&#120319;&#120310;&#120315;&#120304;: But it would help reviewers a lot if the basics were already covered by robots (the bot could even ACK when it thinks there are no blockers) - given that human review is even more of a bottleneck than ever...
&#120314;&#120302;&#120325;&#120306;&#120305;&#120324;: happy to add AI review page to Corecheck if people think it's useful.
&#120326;&#120302;&#120315;&#120304;&#120326;: corecheck.dev is pretty nice for frequent contributors that know about the dashboard. New people are probably not going to look at it, even if the PR says look over there.
&#120313;&#120812;&#120319;&#120310;&#120315;&#120304;: drahtbot could automatically convert to draft for new contributors if the AI review finds any blockers - with a response on how to mitigate the problem
&#120313;&#120812;&#120319;&#120310;&#120315;&#120304;: if we end up using AI review, they should combine outputs from multiple models, not just the cheapest ones - which will likely cost thousands of dollars per month
&#120312;&#120302;&#120315;&#120327;&#120322;&#120319;&#120306;: instead of having people donate AI output tokens, they should donate AI API keys to specific developers who can prompt better and burn those tokens for more useful outputs.</code></pre><p>Read the <a href="https://achow101.com/ircmeetings/2026/bitcoin-core-dev.2026-10-01_16_00.html">full meeting</a></p><div><hr></div><h4><strong>Releases</strong></h4><ul><li><p><code>v32.0rc3</code> was tagged 2026-10-01 by fanquake. Signed git tag (<code>fbdd0f96</code>, commit <code>2633a1de</code>). Message: "Bitcoin Core 32.0 release candidate 3". No GitHub Release page. The bump is <a href="https://github.com/bitcoin/bitcoin/pull/36400">#36400</a>, on top of the backports in <a href="https://github.com/bitcoin/bitcoin/pull/36300">#36300</a>.</p></li></ul><div><hr></div><blockquote><p>Thank you for reading. Be sure to tune in again next week for your updates on Bitcoin Core!</p></blockquote><p><em>If there are any comments, suggestions, or errors, do not hesitate to reach out or comment</em></p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://insider.btcpp.dev/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">bitcoin++'s Insider Edition is a reader-supported publication. To receive new posts and support my work, consider becoming a free or paid subscriber.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div>]]></content:encoded></item><item><title><![CDATA[Private Bitcoin Payments — Last Week in Bitcoin (Sep 21 - 27)]]></title><description><![CDATA[Hi Insiders.]]></description><link>https://insider.btcpp.dev/p/private-bitcoin-payments-last-week</link><guid isPermaLink="false">https://insider.btcpp.dev/p/private-bitcoin-payments-last-week</guid><dc:creator><![CDATA[Tuma (I WILL NEVER DM YOU)]]></dc:creator><pubDate>Mon, 28 Sep 2026 14:01:47 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!-pYh!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5da7feb2-e070-41a0-b51b-019ef14e6a86_1600x900.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p><em>Hi Insiders. This is Tuma, open-source reporter from the Insider Edition.</em></p><p><em>In this week&#8217;s update we feature some new NUT specifications currently being discussed for improving the Cashu protocol.</em></p><p><em>We also cover Shielded Bitcoin, a new protocol by [[alloc]init] to private bitcoin transactions, the new plugin by Second for simplifying accepting Bitcoin through BTCPayServer, Ben Carman&#8217;s work to include Lightning in the x402 specifications, and the latest maintenance release for Core-Lightning.</em></p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!-pYh!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5da7feb2-e070-41a0-b51b-019ef14e6a86_1600x900.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!-pYh!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5da7feb2-e070-41a0-b51b-019ef14e6a86_1600x900.jpeg 424w, https://substackcdn.com/image/fetch/$s_!-pYh!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5da7feb2-e070-41a0-b51b-019ef14e6a86_1600x900.jpeg 848w, https://substackcdn.com/image/fetch/$s_!-pYh!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5da7feb2-e070-41a0-b51b-019ef14e6a86_1600x900.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!-pYh!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5da7feb2-e070-41a0-b51b-019ef14e6a86_1600x900.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!-pYh!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5da7feb2-e070-41a0-b51b-019ef14e6a86_1600x900.jpeg" width="1456" height="819" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/5da7feb2-e070-41a0-b51b-019ef14e6a86_1600x900.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:819,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:347184,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/jpeg&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://insider.btcpp.dev/i/217807720?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5da7feb2-e070-41a0-b51b-019ef14e6a86_1600x900.jpeg&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!-pYh!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5da7feb2-e070-41a0-b51b-019ef14e6a86_1600x900.jpeg 424w, https://substackcdn.com/image/fetch/$s_!-pYh!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5da7feb2-e070-41a0-b51b-019ef14e6a86_1600x900.jpeg 848w, https://substackcdn.com/image/fetch/$s_!-pYh!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5da7feb2-e070-41a0-b51b-019ef14e6a86_1600x900.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!-pYh!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F5da7feb2-e070-41a0-b51b-019ef14e6a86_1600x900.jpeg 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image buttonBase-GK1x3M"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg" class="icon-noB79L"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image buttonBase-GK1x3M"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2 icon-noB79L"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><div><hr></div><h1><strong>Highlights from the Bitcoin developer ecosystem</strong></h1><p><em>I spent 10+ hours in open-source developer calls in the Bitcoin ecosystem last week. Here is what caught my eye</em>:</p><ul><li><p>The Cashu ecosystem is working on implementing new features and proposing new NUT specifications.</p><ul><li><p>During the monthly community calls, on Thursday 24th, Cashu developers discussed the latest news from the ecosystem. In particular, they presented new additions to the NUT specifications.</p></li><li><p><a href="https://github.com/cashubtc/nuts/pull/433">PR433</a> introduces compact state filter, a concept similar to compact block filters (<a href="https://github.com/bitcoin/bips/blob/master/bip-0158.mediawiki">BIP158</a>) available on Bitcoin. This new feature aims to increase the privacy of the protocol by allowing a wallet to retrieve the information about the state of a token locally, without providing the mint with all the token identifiers. Instead, the mint would provide the wallet with filters containing the state of a token.</p></li><li><p><a href="https://github.com/cashubtc/nuts/pull/450">PR450</a> adds an optional NUT that allows a mint to publish a bid and an ask price on its own liquidity. Since there are several payment methods available for minting and melting &#8212; LN, on-chain, Bark &#8212;, this NUT would allow the mint to set different prices on the liquidity available on different payment methods, thus attracting liquidity where needed the most.</p></li></ul></li></ul><div><hr></div><h1>A BIPs Update</h1><p><em>In the last days there was some movement in the <a href="https://github.com/bitcoin/bips">BIP repository</a>. Specifically, one new BIP has been published by BIP maintainer <a href="https://github.com/murchandamus">Murchandamus</a>.</em></p><h2>Published BIPs</h2><p><em>A list of recently published BIPs</em></p><h3><strong>BIP138: Compact encryption scheme for non-seed wallet data</strong></h3><p><strong>Authors</strong>: <a href="https://github.com/pythcoiner">Pyth</a></p><p><strong>Published On</strong>: Sep 21st, 2026</p><p><strong>Layer</strong>: Applications</p><p>BIP138 specifies a compact encryption scheme for output descriptors, wallet policies, labels, and wallet backup metadata to allow users to store sensible information on untrusted media. The encryption key is derived from the public keys in the descriptor, allowing any keyholder to decrypt the data without additional secrets.</p><div><hr></div><h1>Other News from the Bitcoin World</h1><ul><li><p><strong>Shielded Bitcoin</strong>: <a href="https://www.allocinit.xyz/">[[alloc]init]</a> presented a new metaprotocol to make Bitcoin transactions more private, called Shielded Bitcoin. The proposal &#8212; presented in a <a href="https://www.allocinit.xyz/uploads/shielded-bitcoin.pdf">dedicated paper</a> by Clara Shikhelman, Misha Komarov, and Aleksei Moskvin &#8212; does not require neither changes to the Bitcoin consensus, nor operators or trusted third parties.</p><ul><li><p>A Shielded Bitcoin transaction is a blob of data included in an on-chain transaction through an <code>OP_RETURN</code> or other data-carrying fields. The transaction validation is demanded to an external node, called Indexer, which has also the task to update the state of an output.</p></li><li><p>Shielded Bitcoin uses a specific type of output, called note, which plays a similar role as a Bitcoin UTXO. However, while UTXOs are deleted from the set once they are consumed, notes are spent by posting a proof and nullifier. To check whether a note has been spent or not, a user checks if its nullifier has already been used or not.</p></li><li><p>For what concerns the peg, the protocol uses <a href="https://bitcoinops.org/en/newsletters/2026/02/20/#bitcoin-pipes-v2">Bitcoin PIPEs v2</a>. This is a witness encryption method that can be used to reproduce covenant semantics without changes to Bitcoin consensus. Basically, instead of locking a certain output behind a spending condition, it allows a user to specify those conditions on the key needed to move those funds, adding prerequisites on whether a valid signature can be produced or not.</p></li></ul></li><li><p><strong>Bark &lt;&gt; BTCPayServer</strong>: Second &#8212; the company behind the Ark implementation Bark &#8212; <a href="https://x.com/secondhq/status/2103176453491925159">announced</a> that their plugin for BTCPayServer was available for use in production.</p><ul><li><p>Historically, BTCPayServer has relied on Lightning to allow merchants to accept Bitcoin payments. That meant taking on all the difficulties of running a full Lightning node, such as channel management, liquidity, and maintenance.</p></li><li><p>The new Bark plugin allows merchants to accept Bitcoin without all of that. Users will now be able to run their self-hosted BTCPayServer instance without running a Lightning node behind and to accept self-custodial, instant Bitcoin payment in a simpler way.</p></li></ul></li><li><p><strong>Lightning &lt;&gt; x402</strong>: LDK maintainer Ben Carman <a href="https://x.com/benthecarman/status/2102777863607050456">announced</a> that Lightning had been officially included in the x402 specifications.</p><ul><li><p><a href="https://github.com/x402-foundation/x402">x402</a> is an open standard for native internat payments built on top of HTTP. It is currency-agnostic, which mean that it can support any payment rail, such as Bitcoin, stablecoins, and fiat. It is supported by some of the biggest corporations in the world, such as Amazon, Amex, Google, Mastercard, but also by come big companies in the wider crypto industry, such as Ripple, Coinbase, Solana.</p></li><li><p>Given the companies involved, it is not surprising that Bitcoin had not been added yet to the x402 standard. Ben Carman was able to close this gap, pushing for the <a href="https://github.com/x402-foundation/x402/pull/2861">inclusion of Lightining</a> in the specifications.</p></li></ul></li><li><p><strong>CLN Release</strong>: The Core-lightning team <a href="https://x.com/Core_LN/status/2102953514838425660">announced</a> the release of a new maintenance version of the Lightning node software, <a href="https://github.com/ElementsProject/lightning/releases/tag/v26.06.8">v26.06.8</a>. This version includes several fixes for bugs and vulnerabilities that were responsibly disclosed in the last weeks. Contrary to the previous version, no embargo was put on this release, making the source code available from the beginning. However, the team noted that some tests were withheld from publication to prevent attackers from reverse-engineering the vulnerabilities.</p></li></ul><div><hr></div><h1>More from BTC++ Insider Edition</h1><h3>Articles</h3><ul><li><p><a href="https://insider.btcpp.dev/p/silent-payments-finally-made-some">Silent Payments finally made some noise - This Week in Bitcoin Core #59</a></p></li></ul><h3>Videos</h3><ul><li><p><a href="https://x.com/btcinsider__/status/2103137388239462410">Russel O&#8217;Connor &#8212; BTC++ Insider Interviews | Part 1</a>: Russel O&#8217;Connor talks to the Insider about his current work in formal verification of mathematics and software.</p></li><li><p><a href="https://x.com/btcinsider__/status/2103227982638670313">Russel O&#8217;Connor &#8212; BTC++ Insider Interviews | Part 2</a>: Russel O&#8217;Connor lks to the Insider about SafeGDC, the new algorithm for modular inverse and how Bitcoin devs like Greg Maxwell, Pieter Wuille, and Peter Dettman implemented it in libsecp256k1 and how it was formally verified.</p></li><li><p><a href="https://x.com/btcinsider__/status/2103499767074746712">Russel O&#8217;Connor &#8212; BTC++ Insider Interviews | Part 3</a>: Russel O&#8217;Connor talks to the Insider about libsecp256k1, and the initial choices Satoshi made on the cryptography of Bitcoin.</p></li><li><p><a href="https://x.com/btcinsider__/status/2103590369292341580">Russel O&#8217;Connor &#8212; BTC++ Insider Interviews | Part 4</a>: Russel O&#8217;Connor talks to the Insider about why he chose to work on modular inverse and what he would like to work on next.</p></li></ul><div><hr></div><p><em>Looking for an opportunity to join up with some bitcoin devs in person? Join us in <a href="https://btcpp.dev/berlin26?code=TUMA20">Berlin</a> this October 1- 3 to talk about payments in Bitcoin!</em></p>]]></content:encoded></item><item><title><![CDATA[Silent Payments finally made some noise - This Week in Bitcoin Core #59]]></title><description><![CDATA[This week Silent Payments has some motion...]]></description><link>https://insider.btcpp.dev/p/silent-payments-finally-made-some</link><guid isPermaLink="false">https://insider.btcpp.dev/p/silent-payments-finally-made-some</guid><dc:creator><![CDATA[kevkevin]]></dc:creator><pubDate>Fri, 25 Sep 2026 14:03:44 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!MJw8!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1cee73e5-1dd4-4081-a559-6f40592a5154_1456x816.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>Hello &#128075; folks, I&#8217;m Kevkevin. I&#8217;m an open-source developer and reporter for Insider Edition. Last week I reviewed several pull requests from the Bitcoin Core repo. The most-reviewed merge this week is silent payments, and the PR still doesn't open a wallet. BIP352 take 2 is on master as protocol code: public keys, private keys, and the BIP test vectors as unit tests. Receiver labels are optional in the BIP, so they stay out. The wallet scan is a different pull request.<br><br>BIP352 is the silent-payment construction. The sender tweaks the receiver&#8217;s spend key with a shared secret from the sender&#8217;s input keys and the receiver&#8217;s scan key, and pays to that one-time output. The receiver recomputes the same tweak from the input public keys. #35301 keeps that logic off the wallet and off transaction objects, so the tests do not need a wallet backend. It replaces #28122 and is built on libsecp256k1 #1765. The tracking issue is #28536. Receiving is still draft #32966.</p><p>The next merge by review activity is <code>listrawtransactions</code>. <code>listtransactions</code> only emits transactions with an economic category, so a consolidation or a self-transfer never appears. The new RPC lists every wallet transaction once, with the net balance change and the fee when this wallet funded it.</p><p>Thursday&#8217;s #bitcoin-core-dev meeting had three topics: dergoegge is leaving full-time fuzzing work, the QML GUI group is still in design and staging, and the <code>v32.0rc2</code> binaries are up.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!MJw8!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1cee73e5-1dd4-4081-a559-6f40592a5154_1456x816.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!MJw8!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1cee73e5-1dd4-4081-a559-6f40592a5154_1456x816.png 424w, https://substackcdn.com/image/fetch/$s_!MJw8!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1cee73e5-1dd4-4081-a559-6f40592a5154_1456x816.png 848w, https://substackcdn.com/image/fetch/$s_!MJw8!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1cee73e5-1dd4-4081-a559-6f40592a5154_1456x816.png 1272w, https://substackcdn.com/image/fetch/$s_!MJw8!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1cee73e5-1dd4-4081-a559-6f40592a5154_1456x816.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!MJw8!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1cee73e5-1dd4-4081-a559-6f40592a5154_1456x816.png" width="1456" height="816" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/1cee73e5-1dd4-4081-a559-6f40592a5154_1456x816.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:816,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!MJw8!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1cee73e5-1dd4-4081-a559-6f40592a5154_1456x816.png 424w, https://substackcdn.com/image/fetch/$s_!MJw8!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1cee73e5-1dd4-4081-a559-6f40592a5154_1456x816.png 848w, https://substackcdn.com/image/fetch/$s_!MJw8!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1cee73e5-1dd4-4081-a559-6f40592a5154_1456x816.png 1272w, https://substackcdn.com/image/fetch/$s_!MJw8!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1cee73e5-1dd4-4081-a559-6f40592a5154_1456x816.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image buttonBase-GK1x3M"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg" class="icon-noB79L"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image buttonBase-GK1x3M"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2 icon-noB79L"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><h4><strong>Merged PR&#8217;s</strong></h4><h5><strong>Every week, several changes are officially added to Bitcoin Core. This week, </strong>multiple <strong>changes were merged. Here are some I found interesting this week.</strong></h5><ul><li><p><strong><a href="https://github.com/bitcoin/bitcoin/pull/35301">Silent Payments: Implement bip352 (take 2)</a></strong> by <strong><a href="https://github.com/Eunovo">Eunovo</a></strong></p><p>Oghenovo Usiwoma (Eunovo) merged the second attempt at BIP352. The first attempt was #28122. This one is based on <a href="https://github.com/bitcoin-core/secp256k1/pull/1765">secp256k1 #1765</a> and tracked in <a href="https://github.com/bitcoin/bitcoin/issues/28536">#28536</a>.<br></p><p>The PR is only the BIP. It takes public and private keys directly, instead of a wallet backend and transactions, and the BIP test vectors are unit tests. Labels, which let one scan key from multiple addresses, are deferred. Nothing here wires silent payments into <code>CWallet</code>. That receiving work is still <a href="https://github.com/bitcoin/bitcoin/pull/32966">#32966</a>, and it is a draft.</p></li><li><p><strong><a href="https://github.com/bitcoin/bitcoin/pull/35813">wallet, rpc: Add listrawtransactions RPC</a></strong> by <strong><a href="https://github.com/pablomartin4btc">pablomartin4btc</a></strong><br><code>listtransactions</code> returns sends to an external address and receives from outside the wallet. A consolidation or a self-transfer has no external party, so it is invisible. <code>listrawtransactions</code> returns every transaction the wallet knows about, each one once. The entry carries the net wallet balance change (<code>amount</code>) and, when this wallet funded the transaction, the <code>fee</code>. <code>count</code> and <code>skip</code> match <code>listtransactions</code>. Closes #34632.<br></p><p>#35009, by alfonsoromanz, was closed so this could be its own RPC, which is what achow101 asked for. The PR itself lists the follow-ups: a filter (<code>all</code> / <code>received</code> / <code>sent</code> / <code>self</code>) once the per-tx meaning is agreed, and a cleanup of <code>TransactionDescriptionString()</code> fields such as <code>replaced_by_txid</code> and <code>parent_descs</code> that still refer to <code>category</code>.</p></li></ul><h5><strong>There are always changes being updated and reviewed in real-time. Here are some notable PR&#8217;s that are still up and looking for reviews.</strong></h5><ul><li><p><strong><a href="https://github.com/bitcoin/bitcoin/pull/36182">fees: return </a></strong><code>block_policy</code><strong><a href="https://github.com/bitcoin/bitcoin/pull/36182"> fee rate estimate when </a></strong><code>mempool_policy</code><strong><a href="https://github.com/bitcoin/bitcoin/pull/36182"> is not ready</a></strong> by <strong><a href="https://github.com/ismaelsadeeq">ismaelsadeeq</a></strong></p><p>The mempool fee estimator cannot always answer. Right after startup or a re-sync it has not tracked enough blocks. An empty or sparse mempool cannot fill the requested percentile. Recent blocks can cover too little of what was in the mempool. The mempool can still be loading. For a sparse mempool, Core used to return the fee floor (the higher of the minimum relay fee and the mempool minimum fee). That can sit far under the feerate those missing transactions would have implied.<br></p><p>This PR makes the mempool estimator return an error instead of flooring an unfilled percentile. The combined <code>estimatesmartfee</code> path starts from the block policy estimate and only lowers it when a mempool estimate exists. An error is returned only when block policy itself is unavailable. Calling <code>estimatesmartfee</code> with <code>fee_rate_estimator=mempool_policy</code> still returns the failure. The first commit renames the default mode from <code>none</code> to <code>auto</code>.<br></p><p>If the mempool fails to load (persistence off, or a missing or corrupt <code>mempool.dat</code>), init notifies the estimator and clears its mined-block window. Otherwise that window would still describe a mempool the node no longer has. Clearing it makes the estimator report insufficient data until the window refills, and the combined estimate uses block policy in the meantime.</p><blockquote><p>The mempool estimator now returns an error instead of flooring an unfilled percentile, so an empty/sparse mempool is treated like any other not-ready state rather than potentially silently underestimating.</p></blockquote></li></ul><div><hr></div><h4><strong>IRC meeting notes</strong></h4><h5><strong>Every week on Thursday, there is an IRC meeting. Here are some short notes from that meeting.</strong></h5><pre><code>&#120307;&#120311;&#120302;&#120309;&#120319;: There is one pre-proposed meeting topic this week. Any last minute ones to add?
&#120307;&#120311;&#120302;&#120309;&#120319;: Let's start with the WGs...

&#120307;&#120311;&#120302;&#120309;&#120319;: #topic Fuzzing WG Update (dergoegge, marcofleon)
&#120305;&#120306;&#120319;&#120308;&#120316;&#120306;&#120308;&#120308;&#120306;: After this week I won't be contributing here full time anymore (maybe in my spare time, but let's see), as I've accepted a job elsewhere
&#120305;&#120306;&#120319;&#120308;&#120316;&#120306;&#120308;&#120308;&#120306;: Most of my projects/work will be taken over by Brink's Marco and Eugene, so please direct any questions or review requests that you'd have for me towards them
&#120305;&#120306;&#120319;&#120308;&#120316;&#120306;&#120308;&#120308;&#120306;: I'll open PRs to remove myself as a security contact by the end of this week
&#120305;&#120306;&#120319;&#120308;&#120316;&#120306;&#120308;&#120308;&#120306;: It's been really great working with you all!
&#120307;&#120311;&#120302;&#120309;&#120319;: :/ sad
&#120324;&#120310;&#120313;&#120313;&#120304;&#120313;-&#120302;&#120319;&#120312;: :(
&#120321;&#120310;&#120308;&#120306;&#120319;&#120288;&#120302;&#120307;&#120310;&#120302;: dergoegge: very sad. only the best
&#120320;&#120321;&#120310;&#120304;&#120312;&#120310;&#120306;&#120320;-&#120323;: :( thanks for all your contributions. this project is in a much safer place because of it. have fun on the next thing!
&#120305;&#120327;&#120325;&#120327;&#120308;: Thanks for all your work on fuzzing!
&#120307;&#120311;&#120302;&#120309;&#120319;: I hope to still see you around somehow if possible. All the best! Is there still some update on the WG? I guess not since marcofleon isn't here...
&#120305;&#120306;&#120319;&#120308;&#120316;&#120306;&#120308;&#120308;&#120306;: No update otherwise
&#120311;&#120302;&#120315;&#120303;&#120820;&#120816;: Thanks for you work, sad to see you leave. Good luck on the new job
&#120307;&#120311;&#120302;&#120309;&#120319;: I hope the next one is a better update ;)

&#120307;&#120311;&#120302;&#120309;&#120319;: #topic QML GUI WG Update (johnny9dev)
&#120304;&#120307;&#120310;&#120306;&#120313;&#120305;&#120320;: :(
&#120311;&#120316;&#120309;&#120315;&#120315;&#120326;&#120821;&#120305;&#120306;&#120323;: Nothing too significant this week. We're working through design, issues, and staging
&#120304;&#120307;&#120310;&#120306;&#120313;&#120305;&#120320;: dergoegge: Thank you for all of your hard work, dergoegge!
&#120311;&#120316;&#120309;&#120315;&#120315;&#120326;&#120821;&#120305;&#120306;&#120323;: That's all for qml
&#120307;&#120311;&#120302;&#120309;&#120319;: brunoerg teased a yuge update last week but I guess he couldn't make it...
&#120307;&#120311;&#120302;&#120309;&#120319;: maybe later, moving on

&#120307;&#120311;&#120302;&#120309;&#120319;: #topic 32.0 release candidate testing (sedited)
&#120320;&#120306;&#120305;&#120310;&#120321;&#120306;&#120305;: yes, the 32.0rc2 binaries are now available for testing.
&#120320;&#120306;&#120305;&#120310;&#120321;&#120306;&#120305;: the umbrella issue over here: https://github.com/bitcoin/bitcoin/issues/36315 links to both the proposed release notes and the testing guide. If you find something, do use this for tracking.
&#120307;&#120311;&#120302;&#120309;&#120319;: sedited: that's it on that topic right?
&#120313;&#120812;&#120319;&#120310;&#120315;&#120304;: thanks for your work dergoegge
&#120320;&#120306;&#120305;&#120310;&#120321;&#120306;&#120305;: we've picked up a few pull more requests in the milestone for backporting https://github.com/bitcoin/bitcoin/milestone/84
&#120320;&#120310;&#120317;&#120302;: dergoegge: not a surprise, but still sad to see you go
&#120307;&#120311;&#120302;&#120309;&#120319;: l0rinc: you still want to give an update?
&#120320;&#120306;&#120305;&#120310;&#120321;&#120306;&#120305;: please do test, we've hadn't had a release note this long in a while!
&#120320;&#120306;&#120305;&#120310;&#120321;&#120306;&#120305;: that's all.
&#120313;&#120812;&#120319;&#120310;&#120315;&#120304;: fjahr: no, thanks
&#120307;&#120311;&#120302;&#120309;&#120319;: Anything else to discuss?
&#120307;&#120311;&#120302;&#120309;&#120319;: #endmeetingRead here for the <a href="https://achow101.com/ircmeetings/2026/bitcoin-core-dev.2026-09-17_16_00.html">full meeting</a></code></pre><p>Read the <a href="https://achow101.com/ircmeetings/2026/bitcoin-core-dev.2026-09-24_16_00.html">full meeting</a></p><div><hr></div><h4><strong>Releases</strong></h4><ul><li><p><code>v32.0rc2</code> was tagged 2026-09-18 by sedited</p></li></ul><div><hr></div><blockquote><p>Thank you for reading. Be sure to tune in again next week for your updates on Bitcoin Core!</p></blockquote><p><em>If there are any comments, suggestions, or errors, do not hesitate to reach out or comment</em></p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://insider.btcpp.dev/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">bitcoin++'s Insider Edition is a reader-supported publication. To receive new posts and support my work, consider becoming a free or paid subscriber.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div>]]></content:encoded></item><item><title><![CDATA[Quantum Lightning — Last Week in Bitcoin (Sep 14 - 20)]]></title><description><![CDATA[Hi Insiders.]]></description><link>https://insider.btcpp.dev/p/quantum-lightning-last-week-in-bitcoin</link><guid isPermaLink="false">https://insider.btcpp.dev/p/quantum-lightning-last-week-in-bitcoin</guid><dc:creator><![CDATA[Tuma (I WILL NEVER DM YOU)]]></dc:creator><pubDate>Mon, 21 Sep 2026 14:02:16 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!3miW!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F96e7b796-c232-4b85-8c28-d0389b77e790_1600x900.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p><em>Hi Insiders. This is Tuma, open-source reporter from the Insider Edition.</em></p><p><em>In this week&#8217;s update we feature the latest releases for the Stratum V2 protocol. Maintainers focused mainly on hardening, refactoring and bug fixing, while also introducing support for BIP323.</em></p><p><em>We also cover several news from the developer ecosystem. Notably, we discuss a first working proof-of-concept for a post-quantum Lightning implementation, a new scaling protocol to bring self-custody to a huge number of users, and other interesting news.</em></p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!3miW!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F96e7b796-c232-4b85-8c28-d0389b77e790_1600x900.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!3miW!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F96e7b796-c232-4b85-8c28-d0389b77e790_1600x900.jpeg 424w, https://substackcdn.com/image/fetch/$s_!3miW!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F96e7b796-c232-4b85-8c28-d0389b77e790_1600x900.jpeg 848w, https://substackcdn.com/image/fetch/$s_!3miW!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F96e7b796-c232-4b85-8c28-d0389b77e790_1600x900.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!3miW!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F96e7b796-c232-4b85-8c28-d0389b77e790_1600x900.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!3miW!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F96e7b796-c232-4b85-8c28-d0389b77e790_1600x900.jpeg" width="1456" height="819" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/96e7b796-c232-4b85-8c28-d0389b77e790_1600x900.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:819,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:347184,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/jpeg&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://insider.btcpp.dev/i/216710056?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F96e7b796-c232-4b85-8c28-d0389b77e790_1600x900.jpeg&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!3miW!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F96e7b796-c232-4b85-8c28-d0389b77e790_1600x900.jpeg 424w, https://substackcdn.com/image/fetch/$s_!3miW!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F96e7b796-c232-4b85-8c28-d0389b77e790_1600x900.jpeg 848w, https://substackcdn.com/image/fetch/$s_!3miW!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F96e7b796-c232-4b85-8c28-d0389b77e790_1600x900.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!3miW!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F96e7b796-c232-4b85-8c28-d0389b77e790_1600x900.jpeg 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image buttonBase-GK1x3M"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg" class="icon-noB79L"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image buttonBase-GK1x3M"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2 icon-noB79L"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><div><hr></div><h1><strong>Highlights from the Bitcoin developer ecosystem</strong></h1><p><em>I spent 10+ hours in open-source developer calls in the Bitcoin ecosystem last week. Here is what caught my eye</em>:</p><ul><li><p>The Stratum V2 published new releases for the Stratum protocol, the applications, and the new UI.</p><ul><li><p>During the weekly call, on Tuesday 15th, Stratum V2 developers announced that the new versions for the Stratum V2 libraries were ready to be published. The releases were published on Thursday 17th.</p></li><li><p><a href="https://github.com/stratum-mining/stratum/releases/tag/v1.12.0">v.1.12.0</a> is the new release for the protocol libraries. Developers focused on hardening and refactoring several parts of the protocol, introducing several breaking changes. Moreover, this release introduces <a href="https://github.com/bitcoin/bips/blob/master/bip-0323.mediawiki">BIP323</a>, which reserves 24 bits in the <code>nVersion</code> field as extra nonce space for miners.</p></li><li><p>Releases for <code>sv2-apps</code> and <code>sv2-ui</code> were also published. <code>sv2-apps</code> <a href="https://github.com/stratum-mining/sv2-apps/releases/tag/v0.8.0">v0.8.0</a> hardens the applications by fixing several issues found by <a href="https://www.projectloupe.org/about">Loupe</a> &#8212; the AI-assisted vulnerability scanner by Spiral &#8212;, improves the translation proxy (tProxy) and the Job Declaration Client (JDC), and adds supports for BIP323. <code>sv2-ui</code> <a href="https://github.com/stratum-mining/sv2-ui/releases/tag/v0.7.0">v0.7.0</a> mainly addresses vulnerabilities found by Loupe.</p></li></ul></li></ul><div><hr></div><h1>A BIPs Update</h1><p><em>In the last days there was some movement in the <a href="https://github.com/bitcoin/bips">BIP repository</a>. Specifically, one new BIP has been published by BIP maintainer <a href="https://github.com/murchandamus">Murchandamus</a>.</em></p><h2>Published BIPs</h2><p><em>A list of recently published BIPs</em></p><h3>BIP461: Deterministic ECDSA Signatures</h3><p><strong>Authors</strong>: <a href="https://github.com/liamgilligan">Liam Gilligan</a></p><p><strong>Published On</strong>: Sep 16th, 2026</p><p><strong>Layer</strong>: Applications</p><p><a href="https://github.com/bitcoin/bips/blob/master/bip-0461.md">BIP461</a> defines how to obtain deterministic ECDSA signatures. A signature is now encoded using the Distinguish Encoding Rule (DER), which results in two numbers <code>r</code> and <code>s</code> , treated as big-endian signed integers. Due to the sign, in case a <code>r</code> number has its most significant bit set to <code>1</code> , hence treated as negative, a null byte is added to keep it positive. BIP461 describes how to do low <code>r</code> grinding of an ECDSA signature, to avoid adding an additional byte to it. The described process is deterministic, following <a href="https://www.rfc-editor.org/info/rfc6979/">RFC6979</a>.</p><div><hr></div><h1>Other News from the Bitcoin World</h1><ul><li><p><strong>Quantum Lightning</strong>: Ahmet Kurt, a researcher from East Texas A&amp;M University, <a href="https://delvingbitcoin.org/t/pqln-post-quantum-security-for-the-bitcoin-lightning-networks-off-chain-surfaces/2893">posted</a> to Delving Bitcoin to present a first proof-of-concept for a quantum-secure implementation of the Lightning Network, called PQLN.</p><ul><li><p>Kurt published a <a href="https://arxiv.org/abs/2609.13781">paper</a>, which presents a hybrid post-quantum extension of Lightning that protects all the different layers composing it &#8212; gossip, onion routing, invoice, peer services &#8212; with the lattice-based standards ML-DSA and ML-KEM. The proposed changes don&#8217;t need any modification to the consensus layer of Bitcoin, since they are LN-specific.</p></li><li><p>As the author specifies, the huge cost for PQLN is bandwidth. A PQLN node on regtest needs to download 10 times and needs to store around 9 times more data than a legacy node. On the other hand, computation seems not to be the bottleneck, since the most expensive operation &#8212; ML-DSA signing &#8212; only takes 0.33ms.</p></li><li><p>A fork of rust-lightning that implements the new post-quantum approach <a href="https://github.com/ahmet-kurt/pq-rust-lightning">is already available on GitHub</a>.</p></li></ul></li><li><p><strong>Depot</strong>: John Law posted to Delving Bitcoin a <a href="https://delvingbitcoin.org/t/depots-theft-proof-self-custodial-bitcoin-for-billions-of-users/2892/9">proposal</a> for a new scaling protocol whose goal is to provide self-custodial Bitcoin to a large number of users. This new protocol is called Depot.</p><ul><li><p>The proposal builds upon three principles: it has a small, on-chain footprint, it allows user to participate even if they don&#8217;t have enough bitcoin to put a transaction on-chain, and it avoids creating more off-chain transactions than can be put on-chain before theft occurs.</p></li><li><p>An operator funds one Taproot output that can be used to create probabilistic off-chain Lightning channels for a high number of users. Each user buys channels though a LN payment, which can be used to make payments.</p></li><li><p>The security of the protocol depends on expiry management, expected values, and penalties that make griefing economically irrational. To be viable, the proposal would require new opcodes, such as <a href="https://github.com/bitcoin/bips/blob/master/bip-0119.mediawiki">OP_CTV</a> and <a href="https://github.com/bitcoin/bips/blob/master/bip-0348.md">OP_CSFS</a>.</p></li></ul></li><li><p><strong>Swaptopia</strong>: Grubles, researcher at Second, <a href="https://x.com/notgrubles/status/2100258700665495896">launched</a> Swaptopia, a new swap service to move funds between on-chain and Lightning. Swaptopia is built upon Bark &#8212; Second&#8217;s Ark implementation &#8212;, it&#8217;s self-custodial, and runs completely in the browser.</p><ul><li><p>To move funds from on-chain to Lightning, this service boards the Ark Server and send a Lightning payment for the specified amount. On the other hand, to move from Lightning to on-chain the service receives the payment and offboards the Ark Server, moving funds on-chain.</p></li></ul></li><li><p><strong>CLN Security Advisory</strong>: The Core-lightning team <a href="https://x.com/Core_LN/status/2099927317107839188">provided</a> a security advisory, suggesting operators running their nodes with experimental features enabled to switch-off that feature immediately. The advisory comes after reports from users of a possible loss of funds, and an investigation is currently ongoing.</p></li></ul><div><hr></div><h1>More from BTC++ Insider Edition</h1><h3>News Hour</h3><ul><li><p><a href="https://x.com/btcinsider__/status/2100993586720596032">BTC++ News Hour</a>: Check out our Friday livestream, where we discuss the most interesting news of the week from the Bitcoin developer ecosystem.</p></li></ul><h3>Articles</h3><ul><li><p><a href="https://insider.btcpp.dev/p/the-gui-doesnt-speak-rpc-this-week">The GUI doesn&#8217;t speak RPC - This Week in Bitcoin Core #58</a></p></li></ul><h3>Videos</h3><ul><li><p><a href="https://x.com/btcinsider__/status/2100283583055458376">Rob Hamilton &#8212; BTC++ Insider Interviews</a>: &#8220;CEO of Bitcoin&#8221; Rob Hamilton gives a shoutout to <a href="https://x.com/theinstagibbs">instagibbs</a> and explains how BIP-448 TEMPLATEHASH would benefit <a href="https://x.com/AnchorWatch">AnchorWatch</a></p></li><li><p><a href="https://x.com/btcinsider__/status/2099531700824834148">Naiyoma &#8212; BTC++ Insider Interviews | Part 1</a>: Developer Naiyoma tells us about Private Broadcast, which she reviewed in Bitcoin Core. It sends transactions over short-lived Tor or I2P connections to hide the origin IP.</p></li><li><p><a href="https://x.com/btcinsider__/status/2099921192740102505">Naiyoma &#8212; BTC++ Insider Interviews | Part 2</a>: Developer Naiyoma tells us how fingerprinting attacks can link a Bitcoin node&#8217;s clearnet and Tor identities, weakening privacy.</p></li></ul><div><hr></div><p><em>Looking for an opportunity to join up with some bitcoin devs in person? Join us in <a href="https://btcpp.dev/berlin26?code=TUMA20">Berlin</a> this October 1- 3 to talk about payments in Bitcoin!</em></p>]]></content:encoded></item><item><title><![CDATA[The GUI doesn't speak RPC - This Week in Bitcoin Core #58]]></title><description><![CDATA[This week the GUI doesn't speak RPC...]]></description><link>https://insider.btcpp.dev/p/the-gui-doesnt-speak-rpc-this-week</link><guid isPermaLink="false">https://insider.btcpp.dev/p/the-gui-doesnt-speak-rpc-this-week</guid><dc:creator><![CDATA[kevkevin]]></dc:creator><pubDate>Fri, 18 Sep 2026 15:20:19 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!MJw8!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1cee73e5-1dd4-4081-a559-6f40592a5154_1456x816.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>Hello &#128075; folks, I&#8217;m Kevkevin. I&#8217;m an open-source developer and reporter for Insider Edition. <br><br>Last week I reviewed several pull requests from the Bitcoin Core repo. This week there were multiple PR&#8217;s that dealt with a constraint that keeps showing up in wallet work: Bitcoin Core GUI does not speak RPC. <br><br>Descriptor import and <code>addhdkey</code> lived in the RPC layer, which is fine if you&#8217;re the <code>bitcoin-cli</code>, and a dead end if you&#8217;re the GUI trying to do multisig. This week both of those grew a real wallet interface.</p><p>Also: last week branch-off missed the calendar. This week, sedited tagged <code>v32.0rc1</code>. The <a href="https://github.com/bitcoin-core/bitcoin-devwiki/wiki/32.0-Release-Candidate-Testing-Guide">testing guide</a> is up. I do not see binaries on bitcoincore.org yet, and Thursday&#8217;s meeting was ten minutes of working groups plus a nudge to still review things for v32.<br></p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!MJw8!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1cee73e5-1dd4-4081-a559-6f40592a5154_1456x816.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!MJw8!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1cee73e5-1dd4-4081-a559-6f40592a5154_1456x816.png 424w, https://substackcdn.com/image/fetch/$s_!MJw8!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1cee73e5-1dd4-4081-a559-6f40592a5154_1456x816.png 848w, https://substackcdn.com/image/fetch/$s_!MJw8!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1cee73e5-1dd4-4081-a559-6f40592a5154_1456x816.png 1272w, https://substackcdn.com/image/fetch/$s_!MJw8!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1cee73e5-1dd4-4081-a559-6f40592a5154_1456x816.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!MJw8!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1cee73e5-1dd4-4081-a559-6f40592a5154_1456x816.png" width="1456" height="816" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/1cee73e5-1dd4-4081-a559-6f40592a5154_1456x816.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:816,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!MJw8!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1cee73e5-1dd4-4081-a559-6f40592a5154_1456x816.png 424w, https://substackcdn.com/image/fetch/$s_!MJw8!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1cee73e5-1dd4-4081-a559-6f40592a5154_1456x816.png 848w, https://substackcdn.com/image/fetch/$s_!MJw8!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1cee73e5-1dd4-4081-a559-6f40592a5154_1456x816.png 1272w, https://substackcdn.com/image/fetch/$s_!MJw8!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1cee73e5-1dd4-4081-a559-6f40592a5154_1456x816.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image buttonBase-GK1x3M"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg" class="icon-noB79L"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image buttonBase-GK1x3M"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2 icon-noB79L"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><h4><strong>Merged PR&#8217;s</strong></h4><h5><strong>Every week, several changes are officially added to Bitcoin Core. This week, </strong>multiple <strong>changes were merged. Here are some I found interesting this week.</strong></h5><ul><li><p><strong><a href="https://github.com/bitcoin/bitcoin/pull/34861">wallet: Add importdescriptors interface</a></strong> by <strong><a href="https://github.com/polespinasa">polespinasa</a></strong></p><p>This week, Pol Espinasa had his change merged, which tackled the fact that importing descriptors was RPC-only and the <strong>Bi</strong>tcoin Core GUI does not use that interface, so it could not offer descriptor import. This is what you need for more complex wallet setups like multisig. <br><br>The PR moves the core logic out of <code>ProcessDescriptorImport</code> and into <code>CWallet::ImportDescriptor</code>, then adds <code>interfaces::Wallet::importDescriptors()</code> so the GUI can call it directly. Results come back as <code>wallet::ImportDescriptorResult</code> with a <code>FailureReason</code> enum, and the RPC layer maps those back to JSON-RPC error codes. Pol already has a GUI menu on his fork to try it, and said he&#8217;ll open that against the GUI repo now that this is in.</p></li><li><p><strong><a href="https://github.com/bitcoin/bitcoin/pull/35436">wallet: Add addHDkey interface</a></strong> by <strong><a href="https://github.com/pseudoramdom">pseudoramdom</a></strong><br>Same story, different RPC. <code>addhdkey</code> existed. The GUI still could not call it. Ram (pseudoramdom) moved the wallet logic into <code>CWallet::AddHDKey()</code>, introduced a generic <code>WalletError</code> with a machine-readable code plus a translated message, and added <code>interfaces::Wallet::addHDKey()</code> which generates a new HD key and returns the master xpub. The RPC still does argument parsing, and now also exposes the master fingerprint in hex. Pair this with <code>derivehdkey</code> and the GUI can produce a shareable xpub during multisig setup without going through RPC.</p></li></ul><h5><strong>There are always changes being updated and reviewed in real-time. Here are some notable PR&#8217;s that are still up and looking for reviews.</strong></h5><ul><li><p><strong><a href="https://github.com/bitcoin/bitcoin/pull/36284">wallet: don't double discard output groups with avoidpartialspends</a></strong> by <strong><a href="https://github.com/fjahr">fjahr</a></strong></p><p>fjahr called this out in Thursday&#8217;s meeting as maybe still interesting for v32. Clean merge, not a draft. If you have review time this week, start here.</p><blockquote><p>With `-avoidpartialspends` or `avoid_reuse`, `GroupOutputs` puts every positive-value output into both the mixed and the positive-only map and runs `push_output_groups` on each, so a group rejected by the eligibility filters lands in `discarded_groups` twice. `AutomaticCoinSelection` then subtracts it twice and could fail with an insufficient funds error even when there would be enough confirmed coins to cover the payment.</p><p>Not a problem in a default wallet but it can happen with `sendtoaddress` from an `avoid_reuse` wallet, or with `-avoidpartialspends=1`.</p></blockquote></li></ul><div><hr></div><h4><strong>IRC meeting notes</strong></h4><h5><strong>Every week on Thursday, there is an IRC meeting. Here are some short notes from that meeting.</strong></h5><pre><code>&#120307;&#120311;&#120302;&#120309;&#120319;: There are no pre-proposed meeting topics this week. Any last minute ones to add?
&#120307;&#120311;&#120302;&#120309;&#120319;: Ok, let's do the WGs

--- Topic 1 ---
&#120307;&#120311;&#120302;&#120309;&#120319;: #topic QA WG Update (brunoerg)
&#120303;&#120319;&#120322;&#120315;&#120316;&#120306;&#120319;&#120308;: no update this week, will have a big one next week.

--- Topic 2 ---
&#120307;&#120311;&#120302;&#120309;&#120319;: #topic QML GUI WG Update (johnny9dev)
&#120311;&#120316;&#120309;&#120315;&#120315;&#120326;&#120821;&#120305;&#120306;&#120323;: Opened issue #36289 to track the QML staging branch
&#120311;&#120316;&#120309;&#120315;&#120315;&#120326;&#120821;&#120305;&#120306;&#120323;: Will use this issue to share my plan for merging gui-qml and help with organizing and prioritizing current issues that remain
&#120311;&#120316;&#120309;&#120315;&#120315;&#120326;&#120821;&#120305;&#120306;&#120323;: We got another new contributor to the project this week, Andrea, and she has already fix a high priority issue for us
&#120311;&#120316;&#120309;&#120315;&#120315;&#120326;&#120821;&#120305;&#120306;&#120323;: thats all for this week

--- Topic 3 ---
&#120307;&#120311;&#120302;&#120309;&#120319;: #topic Benchmarking WG Update (l0rinc, andrewtoth)
&#120302;&#120315;&#120305;&#120319;&#120306;&#120324;&#120321;&#120316;&#120321;&#120309;_: no update
&#120307;&#120311;&#120302;&#120309;&#120319;: That's it for the WGs afaict, anything else to discuss?
&#120307;&#120311;&#120302;&#120309;&#120319;: Anything of note from release testing?
&#120307;&#120311;&#120302;&#120309;&#120319;: There is still some stuff to review here: https://github.com/bitcoin/bitcoin/milestone/84
&#120307;&#120311;&#120302;&#120309;&#120319;: And maybe #36284 is interesting to still make into v32</code></pre><p>Read here for the <a href="https://achow101.com/ircmeetings/2026/bitcoin-core-dev.2026-09-17_16_00.html">full meeting</a></p><div><hr></div><h4><strong>Releases</strong></h4><ul><li><p><code>v32.0rc1</code> was tagged 2026-09-14 by sedited. Signed git tag exists.</p></li></ul><div><hr></div><blockquote><p>Thank you for reading. Be sure to tune in again next week for your updates on Bitcoin Core!</p></blockquote><p><em>If there are any comments, suggestions, or errors, do not hesitate to reach out or comment</em></p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://insider.btcpp.dev/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">bitcoin++'s Insider Edition is a reader-supported publication. To receive new posts and support my work, consider becoming a free or paid subscriber.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div>]]></content:encoded></item><item><title><![CDATA[New Bindings — Last Week in Bitcoin (Sep 07 - 13)]]></title><description><![CDATA[Hi Insiders.]]></description><link>https://insider.btcpp.dev/p/new-bindings-last-week-in-bitcoin</link><guid isPermaLink="false">https://insider.btcpp.dev/p/new-bindings-last-week-in-bitcoin</guid><dc:creator><![CDATA[Tuma (I WILL NEVER DM YOU)]]></dc:creator><pubDate>Mon, 14 Sep 2026 14:01:24 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!0-ek!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F96dddae3-091a-47fb-8d36-4a3ac2b5c627_1600x900.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p><em>Hi Insiders. This is Tuma, open-source reporter from the Insider Edition.</em></p><p><em>In this week&#8217;s update we feature the latest release, v3.1.0, of the bindings library for BDK, exposing the latest development to several programming languages.</em></p><p><em>We also cover the publication of BIP332, defining a new, opt-in P2P message, a a new BIP that has been assigned a number, BIP394, which defines a new output script descriptor, called </em><code>rawtr()</code><em> .</em></p><p><em>We finally discuss some other news from the Bitcoin developer ecosystem. In particular, we talk about a bug in the legacy gateway module in Fedimint, a blog post from Second on how to board an Ark using Payjoin, and a research from BlueWallet CTO on the security of non-custodial wallets on the App Store.</em></p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!0-ek!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F96dddae3-091a-47fb-8d36-4a3ac2b5c627_1600x900.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!0-ek!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F96dddae3-091a-47fb-8d36-4a3ac2b5c627_1600x900.jpeg 424w, https://substackcdn.com/image/fetch/$s_!0-ek!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F96dddae3-091a-47fb-8d36-4a3ac2b5c627_1600x900.jpeg 848w, https://substackcdn.com/image/fetch/$s_!0-ek!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F96dddae3-091a-47fb-8d36-4a3ac2b5c627_1600x900.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!0-ek!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F96dddae3-091a-47fb-8d36-4a3ac2b5c627_1600x900.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!0-ek!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F96dddae3-091a-47fb-8d36-4a3ac2b5c627_1600x900.jpeg" width="1456" height="819" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/96dddae3-091a-47fb-8d36-4a3ac2b5c627_1600x900.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:819,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:347184,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/jpeg&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://insider.btcpp.dev/i/215631859?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F96dddae3-091a-47fb-8d36-4a3ac2b5c627_1600x900.jpeg&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!0-ek!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F96dddae3-091a-47fb-8d36-4a3ac2b5c627_1600x900.jpeg 424w, https://substackcdn.com/image/fetch/$s_!0-ek!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F96dddae3-091a-47fb-8d36-4a3ac2b5c627_1600x900.jpeg 848w, https://substackcdn.com/image/fetch/$s_!0-ek!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F96dddae3-091a-47fb-8d36-4a3ac2b5c627_1600x900.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!0-ek!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F96dddae3-091a-47fb-8d36-4a3ac2b5c627_1600x900.jpeg 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image buttonBase-GK1x3M"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg" class="icon-noB79L"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image buttonBase-GK1x3M"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2 icon-noB79L"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><div><hr></div><h1><strong>Highlights from the Bitcoin developer ecosystem</strong></h1><p><em>I spent 10+ hours in open-source developer calls in the Bitcoin ecosystem last week. Here is what caught my eye</em>:</p><ul><li><p>The BDK team released the latest version of their bindings, <a href="https://github.com/bitcoindevkit/bdk-ffi/releases/tag/v3.1.0">v3.1.0</a>, bringing the whole library to several programming languages</p><ul><li><p>During their weekly call, on Tuesday 8th, BDK contributors discussed the release of <code>bdk-ffi</code> v3.1.0, the library that allows to expose the Rust codebase to several other programming languages, such as Dart, Swift, Kotlin, Python, and react-native.</p></li><li><p>This release upgrades UniFFI &#8212; the bindings generator &#8212; to <a href="https://github.com/mozilla/uniffi-rs/releases/tag/v0.31.2">v0.31.2</a> and brings the bindings up-to-date with the <a href="https://github.com/bitcoindevkit/bdk_wallet/releases/tag/v3.1.0">latest release of the BDK Wallet libraries</a>, exposing several new methods, such as those to choose the coin selection algorithm, wallet signers, APIs to load wallet parameters, and more.</p></li><li><p><code>bdk-dart</code> &#8212; the library exposing BDK to Dart &#8212; has been upgraded to use the latests <code>bdk-ffi</code> library, and a new release candidate, <a href="https://github.com/bitcoindevkit/bdk-dart/releases/tag/v1.0.0-rc.4">v1.0.0-rc.4</a> has been published. This update brings the Dart bindings closer to a first stable release.</p></li></ul></li></ul><div><hr></div><h1>A BIPs Update</h1><p><em>In the last days there was some movement in the <a href="https://github.com/bitcoin/bips">BIP repository</a>. Specifically, one new BIP has been published and one has been assigned a number by BIP maintainer <a href="https://github.com/murchandamus">Murchandamus</a>.</em></p><h2>Published BIPs</h2><p><em>A list of recently published BIPs</em></p><h3>BIP332: Stale Tip Relay</h3><p><strong>Authors</strong>: <a href="https://github.com/ajtowns">Anthony Towns</a>, <a href="https://github.com/w0xlt">w0xlt</a>, <a href="https://github.com/pseudoramdom">Ram</a></p><p><strong>Published On</strong>: Sep 9th, 2026</p><p><strong>Layer</strong>: Peer Services</p><p><a href="https://github.com/bitcoin/bips/blob/master/bip-0332.md">BIP 332</a> defines a new, opt-in P2P message called <code>staletip</code> whose goal is to announce recent stale chain tips to peers. The message contains the block height at which a stale branch diverges (the fork point), a vector containing the block headers belonging to the stale branch, and a flag signaling willingness to serve that block data. This may be useful for monitoring the network health, since increases in the stale block rate may expose validation or relay bottlenecks, network partitions, or <a href="https://bitcoinops.org/en/topics/selfish-mining/">selfish mining</a> behavior.</p><h2>Numbered BIPs</h2><p><em>A list of BIPs that recently got assigned a number</em></p><h3><strong>BIP394: rawtr() Output Script Descriptors</strong></h3><p><strong>Authors</strong>: <a href="https://github.com/jeanpablojp">jeanpablojp</a></p><p><strong>Assigned On</strong>: Sep 9th, 2026</p><p><strong>Layer</strong>: Applications</p><p><a href="https://github.com/bitcoin/bips/pull/2251">PR2251</a> introduces BIP394, which defines a new output script descriptor, called <code>rawtr()</code> . The descriptor &#8212; that has been available in Bitcoin Core since <a href="https://github.com/bitcoin/bitcoin/releases/tag/v24.0.1">v24.0</a> but was never specified in a BIP &#8212; can be used to express a P2TR output directly by its output key. The key is used as the taproot output key without applying the <a href="https://github.com/bitcoin/bips/blob/master/bip-0341.mediawiki">BIP341</a> tweak. This is useful, for example, when the internal structure isn&#8217;t known, or the script tree hasn&#8217;t been revealed by the owner.</p><div><hr></div><h1>Other News from the Bitcoin World</h1><ul><li><p><strong>Fedimint Bug</strong>: The Fedimint team <a href="https://x.com/fedimint/status/2098803741298200618">announced</a> that they had found a bug in the legacy gateway module, the one responsible for integrating the federated ecash ecosystem with the Lightning Network.</p><ul><li><p>The team released <a href="https://github.com/fedimint/fedimint/releases/tag/v0.12.1">v0.12.1</a> to fix the issue and contacted all the reachable gateway operators to invite them to update their modules as soon as possible.</p></li><li><p>The issue only affects legacy gateway modules, those running the so-called LNv1, while those that had previously upgraded to LNv2 or those running an LDK backend can run safely. The team also point out that users&#8217; funds, federations, and ecash are not affected by the bug.</p></li></ul></li><li><p><strong>Boarding an Ark with Payjoin</strong>: Second, the company behind Bark, <a href="https://x.com/secondhq/status/2098054721210843167">posted</a> a thread explaining how to board and Ark using Payjoin, a feature that has been available for some time now. The same flow is also available to enter a Cashu mint. Second also provided a <a href="https://second.tech/blog/payjoin-boards-board-psbt/">full write-up</a> on the topic.</p></li><li><p><strong>App Store Research</strong>: BlueWallet CTO @overtorment <a href="https://kek.lol/research/appstore-wallets/">pubished</a> a report on the security of non-custodial wallets on the App Store.</p><ul><li><p>The research focused on finding traces of weak entropy and private key exfiltration by decompiling and analyzing code from different wallets.</p></li><li><p>@overtorment was able to decompile 494 wallets, 45 of which raised red flags. He identified 23 apps with critical vulnerabilites and 22 with high-severity one. The complete list can be found at the end of the report.</p></li></ul></li><li><p><strong>Bitcoin++ Insider Edition &#8212; News Hour</strong>: On Friday, the Insider team held its <a href="https://x.com/btcinsider__/status/2098455841565442528">first News Hour</a>, a livestream where we discussed the most important news of the week, interesting articles, and the latest insides from the developer ecosystem. This will become a weekly appointment, so don&#8217;t forget to tune in on Friday @ 5p UTC!</p></li></ul><div><hr></div><h1>More from BTC++ Insider Edition</h1><h3>Articles</h3><ul><li><p><strong><a href="https://insider.btcpp.dev/p/egge-wants-you-to-pay-with-bitcoin">Egge Wants You to Pay with Bitcoin</a></strong></p></li><li><p><strong><a href="https://insider.btcpp.dev/p/how-cache-optimization-not-broken">How cache optimization, not broken crypto, caused inflation on Liquid</a></strong></p></li><li><p><strong><a href="https://insider.btcpp.dev/p/temudandelion-this-week-in-bitcoin">temudandelion - This Week in Bitcoin Core #57</a></strong></p></li></ul><h3>Videos</h3><ul><li><p><strong><a href="https://insider.btcpp.dev/p/connor-aherne-btc-insider-interviews">Connor Aherne - BTC++ Insider Interviews</a></strong></p></li><li><p><strong><a href="https://insider.btcpp.dev/p/antoine-poinsot-btc-insider-interviews">Antoine Poinsot - BTC++ Insider Interviews</a></strong></p></li></ul><div><hr></div><p><em>Looking for an opportunity to join up with some bitcoin devs in person? Join us in <a href="https://btcpp.dev/berlin26?code=TUMA20">Berlin</a> this October 1- 3 to talk about payments in Bitcoin!</em></p>]]></content:encoded></item><item><title><![CDATA[temudandelion - This Week in Bitcoin Core #57]]></title><description><![CDATA[This week we change private broadcast to temudandelion...]]></description><link>https://insider.btcpp.dev/p/temudandelion-this-week-in-bitcoin</link><guid isPermaLink="false">https://insider.btcpp.dev/p/temudandelion-this-week-in-bitcoin</guid><dc:creator><![CDATA[kevkevin]]></dc:creator><pubDate>Fri, 11 Sep 2026 14:02:12 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!MJw8!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1cee73e5-1dd4-4081-a559-6f40592a5154_1456x816.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>Hello &#128075; folks, I&#8217;m Kevkevin. I&#8217;m an open-source developer and reporter for Insider Edition. Last week, I reviewed several pull requests from the <a href="https://github.com/bitcoin/bitcoin/pulls">Bitcoin Core</a> repo.<br><br>In the Bitcoin Core 31.0 release notes, the private broadcast feature promised that your IP would <strong>never be known</strong> to the recipients and that unrelated transactions would <strong>not be linked</strong>. In the weekly IRC meeting, there was discussion on whether Bitcoin Core can still back that.<br><br>Fankquake mentioned that privacy leaks had been reported to the security team, and they wanted broader threat model discussion before releasing v32.0. There was also discussion on renaming the flag; here are some of the options. (<code>-cloakedbroadcast</code>, <code>-oneshottorbroadcast</code>, <code>-notsoprivatebroadcast</code>, -<code>temudandelion)<br><br></code>Branch-off for v32.0 was supposed to be yesterday. But there is still no <code>32.x</code> branch and no v32 tag yet. Five items are still open on the <a href="https://github.com/bitcoin/bitcoin/milestone/84">32.0 milestone</a>.<br><br></p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!MJw8!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1cee73e5-1dd4-4081-a559-6f40592a5154_1456x816.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!MJw8!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1cee73e5-1dd4-4081-a559-6f40592a5154_1456x816.png 424w, https://substackcdn.com/image/fetch/$s_!MJw8!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1cee73e5-1dd4-4081-a559-6f40592a5154_1456x816.png 848w, https://substackcdn.com/image/fetch/$s_!MJw8!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1cee73e5-1dd4-4081-a559-6f40592a5154_1456x816.png 1272w, https://substackcdn.com/image/fetch/$s_!MJw8!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1cee73e5-1dd4-4081-a559-6f40592a5154_1456x816.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!MJw8!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1cee73e5-1dd4-4081-a559-6f40592a5154_1456x816.png" width="1456" height="816" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/1cee73e5-1dd4-4081-a559-6f40592a5154_1456x816.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:816,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!MJw8!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1cee73e5-1dd4-4081-a559-6f40592a5154_1456x816.png 424w, https://substackcdn.com/image/fetch/$s_!MJw8!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1cee73e5-1dd4-4081-a559-6f40592a5154_1456x816.png 848w, https://substackcdn.com/image/fetch/$s_!MJw8!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1cee73e5-1dd4-4081-a559-6f40592a5154_1456x816.png 1272w, https://substackcdn.com/image/fetch/$s_!MJw8!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1cee73e5-1dd4-4081-a559-6f40592a5154_1456x816.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image buttonBase-GK1x3M"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg" class="icon-noB79L"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image buttonBase-GK1x3M"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2 icon-noB79L"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><h4><strong>Merged PR&#8217;s</strong></h4><h5><strong>Every week, several changes are officially added to Bitcoin Core. This week, </strong>multiple <strong>changes were merged. Here are some I found interesting this week.</strong></h5><ul><li><p><strong><a href="https://github.com/bitcoin/bitcoin/pull/35445">wallet, descriptor: Revert </a></strong><code>StringType::COMPAT</code><strong><a href="https://github.com/bitcoin/bitcoin/pull/35445"> for Miniscript expressions and drop the concept of a Descriptor ID that can be validated</a></strong> by <strong><a href="https://github.com/achow101">achow101</a></strong></p><p>achow101 closed a wallet compatibility hole that had already bitten once.<br></p><p>Miniscript keys were not handled <code>StringType::COMPAT</code> correctly when computing a Descriptor ID. To keep old wallets loading, Core had to keep hashing that ID the wrong way. This is the second time that happened, so this PR stops pretending the ID is something you can validate at all.<br></p><p>The value read from the database is now an opaque blob that only ties records to a ScriptPubKeyMan. <code>DescriptorID</code> is renamed to <code>CompatDescriptorHash</code> &#8212; still written, no longer checked against a recomputed hash. <code>importdescriptors</code> and <code>createwalletdescriptor</code> compare descriptor strings instead of hashes. Lookup in <code>m_spk_managers</code> goes from a map to <code>std::find_if</code> (log to linear). achow101&#8217;s take: those RPCs are not the hot path, and <code>importdescriptors</code> might rescan anyway.<br></p><p>The wallet backwards-compat test now includes 30.2 and 31.0 nodes plus a Miniscript wallet, so both directions get exercised. Fixes #35432. If you have a wallet with Miniscript in it from a previous release, this is the PR that is supposed to keep it loading.</p><p></p></li><li><p><strong><a href="https://github.com/bitcoin/bitcoin/pull/36174">http: throttle send buffer when client stops draining</a></strong> by <strong><a href="https://github.com/pinheadmz">pinheadmz</a></strong></p><p>If a client stops reading the socket, Core used to keep dispatching requests and packing responses into <code>m_send_buffer</code> with no cap. After a complete request is parsed, before it goes to a worker, the server now checks that buffer. Already 32MiB sitting there (<code>MAX_BODY_SIZE</code>, open for bikeshedding) and the request stays as <code>m_req</code> instead of getting another worker. The misbehaving client does not get an unbounded send queue for free.<br></p><p>This was found and disclosed by the Red Team &#128997;. Same HTTP rewrite pinheadmz has been triaging agent findings on &#8212; last week he asked people to keep them coming before branch-off.</p></li></ul><h5><strong>There are always changes being updated and reviewed in real-time. Here are some notable PR&#8217;s that are still up and looking for reviews.</strong></h5><ul><li><p><strong><a href="https://github.com/bitcoin/bitcoin/pull/34374">kernel: use struct-based logging and simplify logging interface</a></strong> by <strong><a href="https://github.com/stickies-v">stickies-v</a></strong></p><p><a href="https://github.com/sedited">sedited</a> asked for comments in Thursday&#8217;s meeting. stickies-v just pushed after months of architecture thrash. It is open, not a draft, not Needs rebase. Last week&#8217;s prefetch PR (<a href="https://github.com/bitcoin/bitcoin/pull/36000">#36000</a>) is still open too if you have a second tab.</p><blockquote><p>tl;dr: kernel logging is cumbersome. This PR delivers log entries as a struct instead of a formatted string, and simplifies the kernel logging interface. Closes #34062.</p><p>Kernel logging has a few problems:</p><ul><li><p>callbacks operate on formatted strings, so users need to parse the string to get the timestamp, category, level, ... based on which options are set. This is cumbersome, brittle, and inefficient.</p></li><li><p>the filtering interface is not really intuitive, requiring users to call combinations of <code>btck_logging_set_level_category</code> and <code>btck_logging_enable_category</code> when they want to produce <code>debug</code> or <code>trace</code> logs.</p></li><li><p>the node logging infrastructure has quite a bit more functionality than is necessary for a library.</p></li></ul><p>This PR gives <code>bitcoinkernel</code> its own implementation of those hooks, so it no longer depends on <code>logging.cpp</code>, and upgrades the C API to deliver struct-based entries. Node logging is not changed.</p></blockquote></li></ul><div><hr></div><h4><strong>IRC meeting notes</strong></h4><h5><strong>Every week on Thursday, there is an IRC meeting. Here are some short notes from that meeting.</strong></h5><pre><code>&#120307;&#120311;&#120302;&#120309;&#120319;: There are no pre-proposed meeting topics this week. Any last minute ones to add?
&#120307;&#120311;&#120302;&#120309;&#120319;: Let's start with the WGs

--- Topic 1 ---
&#120307;&#120311;&#120302;&#120309;&#120319;: #topic QA WG Update (brunoerg)
&#120303;&#120319;&#120322;&#120315;&#120316;&#120306;&#120319;&#120308;: no update this week

--- Topic 2 ---
&#120307;&#120311;&#120302;&#120309;&#120319;: #topic QML GUI WG Update (johnny9dev)
&#120311;&#120316;&#120309;&#120315;&#120315;&#120326;&#120821;&#120305;&#120306;&#120323;: First chunk of the staging branch was merged in
&#120311;&#120316;&#120309;&#120315;&#120315;&#120326;&#120821;&#120305;&#120306;&#120323;: Establishes the qml foundational pieces
&#120311;&#120316;&#120309;&#120315;&#120315;&#120326;&#120821;&#120305;&#120306;&#120323;: hebasto helped a ton with the final review
&#120311;&#120316;&#120309;&#120315;&#120315;&#120326;&#120821;&#120305;&#120306;&#120323;: I have drafts for the next two chunks. Both will setup the wallet disabled version of the gui.
&#120309;&#120306;&#120303;&#120302;&#120320;&#120321;&#120316;: post-merge review is always welcome; especially from python people
&#120311;&#120316;&#120309;&#120315;&#120315;&#120326;&#120821;&#120305;&#120306;&#120323;: Yeah everything can be updated. Nothing has to be finalized
&#120311;&#120316;&#120309;&#120315;&#120315;&#120326;&#120821;&#120305;&#120306;&#120323;: I have a rough list of all of the chunks now and the order they should go in and I will create the tracking issue to "Upgrading Gui to Qml" with it.
&#120311;&#120316;&#120309;&#120315;&#120315;&#120326;&#120821;&#120305;&#120306;&#120323;: Pseudoramdom is updating the designs to make them more desktop friendly and consistent in parallel and epicleafies is taking care of transaction and activity issues
&#120311;&#120316;&#120309;&#120315;&#120315;&#120326;&#120821;&#120305;&#120306;&#120323;: That's all for now

--- Topic 3 ---
&#120307;&#120311;&#120302;&#120309;&#120319;: #topic Benchmarking WG Update (l0rinc, andrewtoth)
&#120302;&#120315;&#120305;&#120319;&#120306;&#120324;&#120321;&#120316;&#120321;&#120309;: no update

--- Topic 4 ---
&#120307;&#120311;&#120302;&#120309;&#120319;: #topic Kernel WG Update (sedited)
&#120320;&#120306;&#120305;&#120310;&#120321;&#120306;&#120305;: don't have anything from my side, but stickies-v recently pushed to #34374 again and left a comment: https://github.com/bitcoin/bitcoin/pull/34374#issuecomment-5605856730
&#120320;&#120306;&#120305;&#120310;&#120321;&#120306;&#120305;: would be good to get some comments there.
&#120320;&#120306;&#120305;&#120310;&#120321;&#120306;&#120305;: that's all.

--- Topic 5 ---
&#120307;&#120311;&#120302;&#120309;&#120319;: That's it for the WGs afaict, anything to say about the release?
&#120307;&#120302;&#120315;&#120318;&#120322;&#120302;&#120312;&#120306;: I think we are looking pretty decent for branch off
&#120320;&#120306;&#120305;&#120310;&#120321;&#120306;&#120305;: branch-off should be today, but there are still a few things in the milestone https://github.com/bitcoin/bitcoin/milestone/84
&#120307;&#120302;&#120315;&#120318;&#120322;&#120302;&#120312;&#120306;: There does seem to be an outstanding thread in regards to private broadcast, which could be worth discussing now
&#120307;&#120302;&#120315;&#120318;&#120322;&#120302;&#120312;&#120306;: Re what's left on the milestone, if any of those miss, they should also all be fine to backport into 32.x
&#120320;&#120306;&#120305;&#120310;&#120321;&#120306;&#120305;: yes
&#120307;&#120311;&#120302;&#120309;&#120319;: What's the private broadcast thread?
&#120305;&#120302;&#120319;&#120316;&#120320;&#120310;&#120316;&#120319;: Should we do privatebroadcast now or milestone?
&#120307;&#120302;&#120315;&#120318;&#120322;&#120302;&#120312;&#120306;: re private broadcast. Some privacy leaks have reported to the security team, and we'd like to facilitate a broader discussion about the threat model to know how to handle those
&#120307;&#120302;&#120315;&#120318;&#120322;&#120302;&#120312;&#120306;: I don't think there's too much to discuss on the milestone, other than, everything is looking for review
&#120307;&#120302;&#120315;&#120318;&#120322;&#120302;&#120312;&#120306;: (or if someone thinks something is missing)
&#120307;&#120311;&#120302;&#120309;&#120319;: fanquake: but is that something still relevant for the release, e.g. putting some warning in there, or is this a discussion unrelated to the release
&#120307;&#120302;&#120315;&#120318;&#120322;&#120302;&#120312;&#120306;: fjahr: I think it's both
&#120320;&#120306;&#120305;&#120310;&#120321;&#120306;&#120305;: my impression is the base assumption of the feature is "no worse privacy than only connecting through tor"
&#120302;&#120315;&#120305;&#120319;&#120306;&#120324;&#120321;&#120316;&#120321;&#120309;: there's one issue i think we should patch
&#120302;&#120315;&#120305;&#120319;&#120306;&#120324;&#120321;&#120316;&#120321;&#120309;: not sure what we are discussing here exactly though
&#120310;&#120315;&#120320;&#120321;&#120302;&#120308;&#120310;&#120303;&#120303;&#120320;: so for release, we could suggest remediations such as preferred configurations, or soft enforce them in releases. as an example
&#120320;&#120306;&#120305;&#120310;&#120321;&#120306;&#120305;: what do you mean with preferred configurations instagibbs?
&#120302;&#120315;&#120305;&#120319;&#120306;&#120324;&#120321;&#120316;&#120321;&#120309;: I'm not sure having to speak cryptically in a public conversation is helpful. Otherwise we should have a private conversation somewhere else where we can discuss everything openly.
&#120305;&#120302;&#120319;&#120316;&#120320;&#120310;&#120316;&#120319;: My understanding is there is more than one issue, and that it's not clear how far we want to go in patching them, and how to think about it consistently.
&#120305;&#120302;&#120319;&#120316;&#120320;&#120310;&#120316;&#120319;: andrewtoth: i think we can discuss openly what privacy guarantees we want to provide users. Then the specific instances in which they are breached can be kept momentarily private like we do for security breaches.
&#120307;&#120302;&#120315;&#120318;&#120322;&#120302;&#120312;&#120306;: I think a situation where we need to ship a feature with a caveat of *maybe don't use it unless you configure it a certain way*, but we don't make that the default, is not great
&#120310;&#120315;&#120320;&#120321;&#120302;&#120308;&#120310;&#120303;&#120303;&#120320;: sedited f.e. we could encourage people who want higher assurance that they run onlynet=onion, or similar. Or maybe this is again just pure communication about privacy model
&#120313;&#120310;&#120308;&#120309;&#120321;&#120313;&#120310;&#120312;&#120306;: yes, we could mention that private broadcast is still somewhat new/experimental and recommend to combine it with -onlynet=onion and -listen=0 if privacy is really needed instead of fully trusting it.
&#120310;&#120315;&#120320;&#120321;&#120302;&#120308;&#120310;&#120303;&#120303;&#120320;: ^ less inbound influence, that sort of thing yes
&#120320;&#120310;&#120317;&#120302;: (I haven't followed the issues) is there much of a point to privatebroadcast if you're in -onlynet=onion -listen=0 ?
&#120310;&#120315;&#120320;&#120321;&#120302;&#120308;&#120310;&#120303;&#120303;&#120320;: I think the idea was logical OR?
&#120320;&#120306;&#120305;&#120310;&#120321;&#120306;&#120305;: agree with sipa, there seems to be no point to the feature if that is the case.
&#120313;&#120310;&#120308;&#120309;&#120321;&#120313;&#120310;&#120312;&#120306;: sipa: correlating multiple connections originating from a node - any random outbound peer could do that.
&#120320;&#120310;&#120317;&#120302;: There is a small advantage still, namely that the receiver cannot correlate it with other traffic from you.
&#120320;&#120310;&#120317;&#120302;: Right.
&#120313;&#120310;&#120308;&#120309;&#120321;&#120313;&#120310;&#120312;&#120306;: *multiple transactions, not connections
&#120320;&#120306;&#120305;&#120310;&#120321;&#120306;&#120305;: I think this should be a binary choice. Either it works as advertised, or it doesn't and should be removed.
&#120310;&#120315;&#120320;&#120321;&#120302;&#120308;&#120310;&#120303;&#120303;&#120320;: "as advertised" doing all the work
&#120302;&#120315;&#120305;&#120319;&#120306;&#120324;&#120321;&#120316;&#120321;&#120309;: so what are we advertising?
&#120305;&#120302;&#120319;&#120316;&#120320;&#120310;&#120316;&#120319;: Yeah exactly, i agree with sedited but what guarantee are we aiming to provide
&#120307;&#120311;&#120302;&#120309;&#120319;: Depending on how easy to exploit the leak is, maybe documentation is not enough and we should enforce the settings until we have had the broader discussion. We should assume at least some users really need serious privacy if they use it and it seems risky no only use documentation.
&#120302;&#120315;&#120305;&#120319;&#120306;&#120324;&#120321;&#120316;&#120321;&#120309;: either we are talking about the guarantees we want to provide, or we are talking about some mitigation for something we can't disclose
&#120320;&#120310;&#120317;&#120302;: The 31.0 release notes make some promises.
&#120305;&#120302;&#120319;&#120316;&#120320;&#120310;&#120316;&#120319;: Are shooting for "If you are not a reachable node, operating only on Tor, then we guarantee the transactions you broadcast won't be easily correlated with each other"?
&#120310;&#120315;&#120320;&#120321;&#120302;&#120308;&#120310;&#120303;&#120303;&#120320;: If our privacy model is "honest but curious", then AFAIK we cover that. It's also about user expectations
&#120310;&#120315;&#120320;&#120321;&#120302;&#120308;&#120310;&#120303;&#120303;&#120320;: but that;s hard to to communicate, and weaker
&#120310;&#120315;&#120320;&#120321;&#120302;&#120308;&#120310;&#120303;&#120303;&#120320;: "what's honest but curious": they follow protocol, but write everything down, say
&#120307;&#120302;&#120315;&#120318;&#120322;&#120302;&#120312;&#120306;: The claims in https://bitcoincore.org/en/releases/31.0/ are "Their IP address (and thus geolocation) is never known to the recipients." &amp; "If the originator sends two otherwise unrelated transactions, they will not be linkable. This is because a separate connection is used for broadcasting each transaction. "
&#120305;&#120302;&#120319;&#120316;&#120320;&#120310;&#120316;&#120319;: instagibbs: so, passive observer?
&#120310;&#120315;&#120320;&#120321;&#120302;&#120308;&#120310;&#120303;&#120303;&#120320;: vs active probing, protcool violations
&#120320;&#120306;&#120305;&#120310;&#120321;&#120306;&#120305;: yeah, that seems very clear.
&#120310;&#120315;&#120320;&#120321;&#120302;&#120308;&#120310;&#120303;&#120303;&#120320;: darosior they follow the stated protocol
&#120310;&#120315;&#120320;&#120321;&#120302;&#120308;&#120310;&#120303;&#120303;&#120320;: whatever that means
&#120310;&#120315;&#120320;&#120321;&#120302;&#120308;&#120310;&#120303;&#120303;&#120320;: the prior issue we had and fixed violated this
&#120320;&#120310;&#120317;&#120302;: There isn't even a well-defined "honest" behavior for nodes.
&#120310;&#120315;&#120320;&#120321;&#120302;&#120308;&#120310;&#120303;&#120303;&#120320;: sipa handwaving here
&#120320;&#120306;&#120305;&#120310;&#120321;&#120306;&#120305;: if we can't guarantee what's in those release notes, then we should not ship the feature imo.
&#120305;&#120302;&#120319;&#120316;&#120320;&#120310;&#120316;&#120319;: Making a difference between passive and active attackers here make sense, but i'm concerned it would be hard to translate into an actionable information for users, and end up being a footgun.
&#120320;&#120310;&#120317;&#120302;: Right, but "honest but curious" is trivially false, if every behavior is "honest". That's a term that's used in cryptographic protocol with a well-defined prescription of how honest parties operate. Bitcoin doesn't have any of those.
&#120310;&#120315;&#120320;&#120321;&#120302;&#120308;&#120310;&#120303;&#120303;&#120320;: fanquake ok that note is wrong, two txs can be linked at the blockchain layer even with perfect impl
&#120310;&#120315;&#120320;&#120321;&#120302;&#120308;&#120310;&#120303;&#120303;&#120320;: "not be linkable at the networking layer" maybe
&#120302;&#120315;&#120305;&#120319;&#120306;&#120324;&#120321;&#120316;&#120321;&#120309;: instagibbs "otherwise unrelated" though
&#120302;&#120315;&#120305;&#120319;&#120306;&#120324;&#120321;&#120316;&#120321;&#120309;: maybe that can be better defined
&#120310;&#120315;&#120320;&#120321;&#120302;&#120308;&#120310;&#120303;&#120303;&#120320;: andrewtoth well, theyre all related :D but yes
&#120310;&#120315;&#120320;&#120321;&#120302;&#120308;&#120310;&#120303;&#120303;&#120320;: sipa ok, then that. dont worry about my misuse of labels too much
&#120320;&#120310;&#120317;&#120302;: instagibbs: no, i literally don't understand what you mean
&#120320;&#120310;&#120317;&#120302;: like you seem to have an implicit understanding of what "an honest node" means, but i think there is no such thing, and i don't know what it ought to entail
&#120305;&#120302;&#120319;&#120316;&#120320;&#120310;&#120316;&#120319;: What threshold are we aiming for to release this feature? That it prevents linkage at the network layer against a passive observer? Against an active one if you are not reachable? Against an active one if you are not reachable AND Tor-only? Against an active one no matter one?
&#120310;&#120315;&#120320;&#120321;&#120302;&#120308;&#120310;&#120303;&#120303;&#120320;: maybe the answer is "no we have no common definitions of what we're promising"
&#120302;&#120315;&#120305;&#120319;&#120306;&#120324;&#120321;&#120316;&#120321;&#120309;: ideally the strongest, but it's hard to say whether we can do it or not. Some issues preventing that can be patched easily, some I've seen are very theoretical and don't seem plausible.
&#120310;&#120315;&#120320;&#120321;&#120302;&#120308;&#120310;&#120303;&#120303;&#120320;: let's save the risk estimation for the security team, please
&#120310;&#120315;&#120320;&#120321;&#120302;&#120308;&#120310;&#120303;&#120303;&#120320;: at least for now
&#120302;&#120315;&#120305;&#120319;&#120306;&#120324;&#120321;&#120316;&#120321;&#120309;: well then we want to keep the guarantees from v31 release notes?
&#120307;&#120311;&#120302;&#120309;&#120319;: We need to have some clarifying information though, the feature is called privatebroadcast so people will expect something just based on that
&#120302;&#120315;&#120305;&#120319;&#120306;&#120324;&#120321;&#120316;&#120321;&#120309;: yeah, this conversation is too difficult if everything is not on the table
&#120305;&#120327;&#120325;&#120327;&#120308;: +1
&#120305;&#120302;&#120319;&#120316;&#120320;&#120310;&#120316;&#120319;: It's hard for me to see how we could give these guarantees completely as long as we have the mechanism embedded in net_processing, so plausibility may need to be discussed as part of the goal here. Are we happy to ship this feature if we give "reasonable" guarantees, i.e. kill the really low hanging fruits, on a "it's better than nothing" basis?
&#120305;&#120302;&#120319;&#120316;&#120320;&#120310;&#120316;&#120319;: fjahr: +1 for expectations
&#120320;&#120310;&#120317;&#120302;: Maybe this needs a discussion at coredev, and a focus right now about what we can reasonable address by documentation clarification for 32?
&#120310;&#120315;&#120320;&#120321;&#120302;&#120308;&#120310;&#120303;&#120303;&#120320;: ^ this
&#120321;&#120310;&#120308;&#120306;&#120319;&#120288;&#120302;&#120307;&#120310;&#120302;: fjahr: +1
&#120302;&#120315;&#120305;&#120319;&#120306;&#120324;&#120321;&#120316;&#120321;&#120309;: how can we focus on what we can reasonably address if we can't discuss the issues?
&#120305;&#120302;&#120319;&#120316;&#120320;&#120310;&#120316;&#120319;: Yeah i was really still on the binary question of what threshold are we setting for ourselves (which necessarily entail not shipping it at all until it meets that threshold, instead of trying to address it with documentation).
&#120305;&#120327;&#120325;&#120327;&#120308;: If the security model has changed substantially since when the feature was shipped it should be disabled or renamed, but I do think something should ship which is better than the default
&#120305;&#120302;&#120319;&#120316;&#120320;&#120310;&#120316;&#120319;: My favorite shed for the rename is -cloakedbroadcast /s
&#120302;&#120315;&#120305;&#120319;&#120306;&#120324;&#120321;&#120316;&#120321;&#120309;: i don't think we should disable it, it is better than the default way to broadcast.
&#120305;&#120302;&#120319;&#120316;&#120320;&#120310;&#120316;&#120319;: (But i do think rename makes more sense than documenting a feature called "private X" with caveats "actually not private in scenarii x, y and z")
&#120310;&#120315;&#120320;&#120321;&#120302;&#120308;&#120310;&#120303;&#120303;&#120320;: dzxzg issue is I'm not sure we agreed ahead of time
&#120320;&#120306;&#120305;&#120310;&#120321;&#120306;&#120305;: I'm confused, what's not clear about the release note there?
&#120310;&#120315;&#120320;&#120321;&#120302;&#120308;&#120310;&#120303;&#120303;&#120320;: I dont read the docs
&#120310;&#120315;&#120320;&#120321;&#120302;&#120308;&#120310;&#120303;&#120303;&#120320;: *ducks*
&#120320;&#120306;&#120305;&#120310;&#120321;&#120306;&#120305;: :D
&#120320;&#120310;&#120317;&#120302;: instagibbs: well, you or your agent
&#120305;&#120302;&#120319;&#120316;&#120320;&#120310;&#120316;&#120319;: sedited: fair
&#120310;&#120315;&#120320;&#120321;&#120302;&#120308;&#120310;&#120303;&#120303;&#120320;: the docs seem to match my expectation of the feature in my head so maybe less confusion than im letting on
&#120326;&#120302;&#120315;&#120304;&#120326;: I think the wording "never known" might give a false sense of security.
&#120305;&#120302;&#120319;&#120316;&#120320;&#120310;&#120316;&#120319;: Ok since i don't think the status quo is desirable, i suggest we rename the feature for the upcoming release, with a name that does not give as much expectation as "private" broadcast, and make weaker claims in our release notes than we did for 31. This way we keep the option for now because it's better than the other broadcast, but also don't risk users depending on something we cannot guarantee.
&#120310;&#120315;&#120320;&#120321;&#120302;&#120308;&#120310;&#120303;&#120303;&#120320;: ah the easy part, naming things
&#120307;&#120311;&#120302;&#120309;&#120319;: -betterthanthedefaultbroadcast it is
&#120320;&#120313;&#120310;&#120323;&#120815;&#120319;__: -broadcast++
&#120321;&#120310;&#120308;&#120306;&#120319;&#120288;&#120302;&#120307;&#120310;&#120302;: yancy: yes! given the current state of the discussion, it's VERY bold
&#120305;&#120302;&#120319;&#120316;&#120320;&#120310;&#120316;&#120319;: I don't think it's a great situation, but i don't have a better idea for 32 literally on the day of branch off.
&#120302;&#120315;&#120305;&#120319;&#120306;&#120324;&#120321;&#120316;&#120321;&#120309;: a release not warning is not enough?
&#120302;&#120315;&#120305;&#120319;&#120306;&#120324;&#120321;&#120316;&#120321;&#120309;: *note
&#120306;&#120322;&#120308;&#120306;&#120315;&#120306;&#120320;&#120310;&#120306;&#120308;&#120306;&#120313;: -notsoprivatebroadcast
&#120320;&#120306;&#120305;&#120310;&#120321;&#120306;&#120305;: this will have to be backported anway, so we'll have a few weeks to discuss.
&#120313;&#120310;&#120308;&#120309;&#120321;&#120313;&#120310;&#120312;&#120306;: and when we fixed the known issues, do we rename it back to "private broadcast"?
&#120305;&#120302;&#120319;&#120316;&#120320;&#120310;&#120316;&#120319;: lightlike: -evenbetterthandefaultbroadcast
&#120302;&#120315;&#120305;&#120319;&#120306;&#120324;&#120321;&#120316;&#120321;&#120309;: lightlike +1 - release note warning is better
&#120305;&#120302;&#120319;&#120316;&#120320;&#120310;&#120316;&#120319;: I don't think a release note is nearly enough to compensate for the potential sense of security providing a feature called "private X" may give to users.
&#120321;&#120310;&#120308;&#120306;&#120319;&#120288;&#120302;&#120307;&#120310;&#120302;: how's "-veilbroadcast" since it's partial in privacy
&#120310;&#120315;&#120320;&#120321;&#120302;&#120308;&#120310;&#120303;&#120303;&#120320;: release note warning should happen regardless
&#120305;&#120302;&#120319;&#120316;&#120320;&#120310;&#120316;&#120319;: Anyways, i don't have much to add on this topic.
&#120307;&#120311;&#120302;&#120309;&#120319;: The meeting is coming to a close in 5min, feel free to continue discussing renaming vs. release notes, but is there anything else anyone wanted to discuss/announce in the meeting?
&#120307;&#120311;&#120302;&#120309;&#120319;: I think renaming should be to some name that doesn't make any promises, like -oneshottorbroadcast then we don't have issues like this with naming
&#120307;&#120311;&#120302;&#120309;&#120319;: (if people want a renaming)
&#120305;&#120327;&#120325;&#120327;&#120308;: no strong feeling about what the name should be, but the point of renaming in my mind is less about the promises the name makes and more to catch people that haven't read release notes or new documentation and go on using private broadcast with the wrong expectations
&#120288;&#120322;&#120319;&#120304;&#120309;[&#120314;]: Isn't the point that the transaction appears to come from a node that isn't the sender?
&#120288;&#120322;&#120319;&#120304;&#120309;[&#120314;]: So, maybe "teleportbroadcast" or "strawmanbroadcast" or smth?
&#120288;&#120322;&#120319;&#120304;&#120309;[&#120314;]: surrogatebroadcast? :p
&#120310;&#120315;&#120320;&#120321;&#120302;&#120308;&#120310;&#120303;&#120303;&#120320;: temudandelion
&#120288;&#120322;&#120319;&#120304;&#120309;[&#120314;]: heh
&#120310;&#120315;&#120320;&#120321;&#120302;&#120308;&#120310;&#120303;&#120303;&#120320;: im JOKING
&#120307;&#120311;&#120302;&#120309;&#120319;: Murch: sounds still fine, as long as it's more descriptive of the mechanism rather than making promises of an end result
&#120326;&#120302;&#120315;&#120304;&#120326;: shielded-broadcast is my bikeshed color
&#120307;&#120311;&#120302;&#120309;&#120319;: sipa about to suggest -minibroadcast
&#120307;&#120311;&#120302;&#120309;&#120319;: Ok, let's end the meeting with this :D
&#120307;&#120311;&#120302;&#120309;&#120319;: #endmeeting</code></pre><p>Read here for the <a href="https://achow101.com/ircmeetings/2026/bitcoin-core-dev.2026-09-10_16_00.html">full meeting</a></p><div><hr></div><h4><strong>Releases</strong></h4><ul><li><p>32.0 feature freeze was 2026-08-20. Branch-off / <code>v32.0rc1</code> was targeted for 2026-09-10 and has not landed. The <a href="https://github.com/bitcoin/bitcoin/milestone/84">32.0 milestone</a> still has 5 open items. Latest still <a href="https://github.com/bitcoin/bitcoin/releases/tag/v31.1">v31.1</a> / <a href="https://github.com/bitcoin/bitcoin/releases/tag/v30.3">v30.3</a> / <a href="https://github.com/bitcoin/bitcoin/releases/tag/v29.4">v29.4</a>.</p></li></ul><div><hr></div><blockquote><p>Thank you for reading. Be sure to tune in again next week for your updates on Bitcoin Core!</p></blockquote><p><em>If there are any comments, suggestions, or errors, do not hesitate to reach out or comment</em></p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://insider.btcpp.dev/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">bitcoin++'s Insider Edition is a reader-supported publication. To receive new posts and support my work, consider becoming a free or paid subscriber.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div>]]></content:encoded></item><item><title><![CDATA[Liquid Hacked — Last Week in Bitcoin (Aug 31 - Sep 06)]]></title><description><![CDATA[Hi Insiders.]]></description><link>https://insider.btcpp.dev/p/liquid-hacked-last-week-in-bitcoin</link><guid isPermaLink="false">https://insider.btcpp.dev/p/liquid-hacked-last-week-in-bitcoin</guid><dc:creator><![CDATA[Tuma (I WILL NEVER DM YOU)]]></dc:creator><pubDate>Mon, 07 Sep 2026 14:02:01 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!cfBM!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fba614c75-a494-40d7-a82f-86615ef1f34d_1600x900.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p><em>Hi Insiders. This is Tuma, open-source reporter from the Insider Edition.</em></p><p><em>In this week&#8217;s update we feature the latest releases in the ecash ecosystem, Fedimint v0.12.0 and Cashu Dev Kit (CDK) v0.18.0.</em></p><p><em>We also cover the recent hack to the Liquid Network. Attackers, who stated to be whitehats, were able to stole 3998 bitcoin with a peg-out transaction leveraging a bug in the transaction validation logic.</em></p><p><em>We finally cover some other news, such as an implementation of multisig in Bitcoin Core GUI and a proposal to use silent payments in the coinbase transaction to pay miners for their hashrate.</em></p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!cfBM!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fba614c75-a494-40d7-a82f-86615ef1f34d_1600x900.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!cfBM!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fba614c75-a494-40d7-a82f-86615ef1f34d_1600x900.jpeg 424w, https://substackcdn.com/image/fetch/$s_!cfBM!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fba614c75-a494-40d7-a82f-86615ef1f34d_1600x900.jpeg 848w, https://substackcdn.com/image/fetch/$s_!cfBM!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fba614c75-a494-40d7-a82f-86615ef1f34d_1600x900.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!cfBM!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fba614c75-a494-40d7-a82f-86615ef1f34d_1600x900.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!cfBM!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fba614c75-a494-40d7-a82f-86615ef1f34d_1600x900.jpeg" width="1456" height="819" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/ba614c75-a494-40d7-a82f-86615ef1f34d_1600x900.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:819,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:347184,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/jpeg&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://insider.btcpp.dev/i/214551990?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fba614c75-a494-40d7-a82f-86615ef1f34d_1600x900.jpeg&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!cfBM!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fba614c75-a494-40d7-a82f-86615ef1f34d_1600x900.jpeg 424w, https://substackcdn.com/image/fetch/$s_!cfBM!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fba614c75-a494-40d7-a82f-86615ef1f34d_1600x900.jpeg 848w, https://substackcdn.com/image/fetch/$s_!cfBM!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fba614c75-a494-40d7-a82f-86615ef1f34d_1600x900.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!cfBM!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fba614c75-a494-40d7-a82f-86615ef1f34d_1600x900.jpeg 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image buttonBase-GK1x3M"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg" class="icon-noB79L"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image buttonBase-GK1x3M"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2 icon-noB79L"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><div><hr></div><h1><strong>Highlights from the Bitcoin developer ecosystem</strong></h1><p><em>I spent 10+ hours in open-source developer calls in the Bitcoin ecosystem last week. Here is what caught my eye</em>:</p><ul><li><p><a href="https://github.com/fedimint/fedimint/releases/tag/v0.12.0">Fedimint release v0.12.0</a> is out with new v2 modules, support for Iroh v1.0, and more.</p><ul><li><p>During the weekly call, on Monday 31st, Fedimint developers discussed the release of Fedimint v0.12.0, called &#8220;Second Nature&#8221;.</p></li><li><p>The name of the release is linked to the fact that all the new v2 modules &#8212; lnv2, mintv2, and walletv2 &#8212; are now the default, with the older versions now labeled as &#8220;legacy&#8221;. Moreover, the latest version supports <a href="https://www.iroh.computer/blog/v1">Iroh v1.0</a>, the first stable release for the p2p networking stack.</p></li><li><p>v0.12.0 also improves the overall reliability of the system, reduces latency in Lightning payments, and allows recovery with no downtime and no blocking or stalling. Developers also released UniFFI bindings for Kotlin and Swift.</p></li></ul></li><li><p><a href="https://github.com/cashubtc/cdk/releases/tag/v0.18.0">Cashu Dev Kit (CDK) release v0.18.0</a> is out, bringing the implementation up-to-date with the latest protocol changes.</p><ul><li><p>During the weekly call, on Wednesday 2nd, CDK developers announced that they had just released the new version of the Cashu implementation, v0.18.0.</p></li><li><p>One of the most important changes is related to the mint configuration and settings. Previously, the mint configuration could be overridden by local settings and environment variables. v0.18.0 stores the authoritative settings in the primary mint database. The team provided a <a href="https://github.com/cashubtc/cdk/blob/v0.18.0/docs/migrations/v0.18.md">migration guide</a> for mint operators.</p></li><li><p>The release also adds support for animated QR codes (<a href="https://github.com/cashubtc/nuts/blob/main/16.md">NUT-16</a>), signature-based authentication for mint quote redemption (<a href="https://github.com/cashubtc/nuts/blob/main/20.md">NUT-20</a>), BOLT12 offers descriptions (<a href="https://github.com/cashubtc/nuts/blob/main/25.md">NUT-25</a>), and deterministic nonces for DLEQ for offline ecash (<a href="https://github.com/cashubtc/nuts/blob/main/12.md">NUT-12</a>).</p></li></ul></li></ul><div><hr></div><h1>A BIPs Update</h1><p><em>There was no newsworthy update in the last few days in the <a href="https://github.com/bitcoin/bips">BIP repository</a>. We&#8217;ll provide new updates as soon as a new BIP gets published or gets assigned a number.</em></p><div><hr></div><h1>Other News from the Bitcoin World</h1><ul><li><p><strong>Liquid Hacked</strong>: On Sunday 6th, news got around that the Liquid Network, Blockstream&#8217;s sidechain, had been hacked by whitehats. The attackers <a href="https://x.com/btcinsider__/status/2096688045235822986">stole 3998 bitcoin</a> from the Liquid bridge.</p><ul><li><p>Hackers contacted Blockstream directly <a href="https://mempool.space/tx/c103de95817b43f2df635ec6f35ff126ca26a7c6d20570c4b01866b2b3e69a19#flow=&amp;vout=0">onchain</a> using an OP_RETURN. The discussion went back and forth, with the attackers asking the company to fix the bug before returning the funds. Developers Sjors shared a <a href="https://gist.github.com/Sjors/9d24363e67529079cc2ae4305ff90fcd">gist</a> reporting all the discussion between hackers and Blockstream.</p></li><li><p>The bug seems to be connected to <a href="https://docs.liquid.net/docs/confidential-transactions">confidential transactions</a> (CT), one of the feature available on the Liquid network that allows a user to hide the amount and the type of asset being sent by default. Since CTs do not show the amount being spent, two types of proofs are needed to verify that a transaction is valid: a balance proof and a range proof. The former checks that the amounts of L-BTC in input and in output are the same. The latter, checks that an hidden output falls within a positive amount.</p></li><li><p>Calle provided a <a href="https://x.com/callebtc/status/2096877551884919120">possible explanation</a> of what happened. Basically, since the range proof is particularly expensive to compute, Liquid nodes can cache a successful proof in memory, stored by assigning a label called <strong>cache key</strong>. Attackers were able to build two transactions with colliding cache keys. The first one was a valid transaction, checked by nodes and stored. The second one, on the other hand, was an invalid transaction, effectively creating L-BTC out of thin air. However, having the same cache key, nodes did not perform all checks and made it pass as valid.</p></li><li><p>The situation is still evolving. Check out <a href="https://x.com/btcinsider__">BTC++ Insider Edition</a> X account for the latest updates</p></li></ul></li><li><p><strong>Silent Payments in Coinbase Transactions</strong>: Developer average_gary wrote a <a href="https://delvingbitcoin.org/t/silent-payments-coinbase/2833">post</a> on Delving Bitcoin explaining his idea to use silent payments to allow miners to get paid to different addresses for the provided hashrate without revealing an xpub.</p><ul><li><p>The proposal would require a dedicated BIP since it is not currently possible to use the silent payments protocol defined in <a href="https://github.com/bitcoin/bips/blob/master/bip-0352.mediawiki">BIP352</a> as it is. The author is looking for feedback on the idea before moving on to a formal draft.</p></li></ul></li><li><p><strong>Multisig in Bitcoin Core GUI</strong>: Developer sdbtc <a href="https://x.com/sndbtc/status/2095577106390372810">announced</a> that he was able to integrate multisig in the Bitcoin Core GUI by using Claude. He is now reviewing the code created by the LLM and polishing the implementation with the objective of opening a real PR in the repository.</p></li></ul><div><hr></div><h1>Reads from BTC++ Insider Edition</h1><ul><li><p><strong><a href="https://insider.btcpp.dev/p/bitpolito-how-italys-largest-bitcoin">BitPolito: How Italy&#8217;s Largest Bitcoin Student Org Is Passing the Reins to the Next Generation</a></strong></p></li><li><p><strong><a href="https://insider.btcpp.dev/p/dont-start-a-node-in-the-past-this">Don&#8217;t start a node in the past - This Week in Bitcoin Core #56</a></strong></p></li></ul><div><hr></div><p><em>Looking for an opportunity to join up with some bitcoin devs in person? Join us in <a href="https://btcpp.dev/berlin26?code=TUMA20">Berlin</a> this October 1- 3 to talk about payments in Bitcoin!</em></p>]]></content:encoded></item><item><title><![CDATA[Don't start a node in the past - This Week in Bitcoin Core #56]]></title><description><![CDATA[This week we make sure that nodes don&#8217;t have lagging clocks...]]></description><link>https://insider.btcpp.dev/p/dont-start-a-node-in-the-past-this</link><guid isPermaLink="false">https://insider.btcpp.dev/p/dont-start-a-node-in-the-past-this</guid><dc:creator><![CDATA[kevkevin]]></dc:creator><pubDate>Fri, 04 Sep 2026 14:01:12 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!MJw8!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1cee73e5-1dd4-4081-a559-6f40592a5154_1456x816.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>Hello &#128075; folks, I&#8217;m Kevkevin. I&#8217;m an open-source developer and reporter for Insider Edition. Last week, I reviewed several pull requests from the <a href="https://github.com/bitcoin/bitcoin/pulls">Bitcoin Core</a> repo.<br><br>In <a href="https://github.com/hodlinator">hodlinator</a>&#8217;s headers-sync PR, if your system clock is so far behind the chain-start median time past that the unsigned commitment cap wraps, Core now aborts the node instead of eating low-work headers. Fresh datadirs hit this path. Existing chainstate already shuts down at load.</p><p><a href="https://github.com/sedited">Sedited</a> points at the <a href="https://github.com/bitcoin/bitcoin/milestone/84">32.0 milestone</a>, eight items are still open and branch-off is next week. <a href="https://github.com/pinheadmz">Pinheadmz</a> is still triaging agent findings on the new HTTP server. <br><br>Sipa did quote furszy: &#8220;Claude is down, sorry&#8221;, and fjahr asked if he forgot how to join IRC without agent help :). </p><p>The two PR&#8217;s that took the most review this week are the headers-sync abort, and a <code>-walletnotify</code> command-injection fix that the Red Team found.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!MJw8!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1cee73e5-1dd4-4081-a559-6f40592a5154_1456x816.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!MJw8!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1cee73e5-1dd4-4081-a559-6f40592a5154_1456x816.png 424w, https://substackcdn.com/image/fetch/$s_!MJw8!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1cee73e5-1dd4-4081-a559-6f40592a5154_1456x816.png 848w, https://substackcdn.com/image/fetch/$s_!MJw8!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1cee73e5-1dd4-4081-a559-6f40592a5154_1456x816.png 1272w, https://substackcdn.com/image/fetch/$s_!MJw8!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1cee73e5-1dd4-4081-a559-6f40592a5154_1456x816.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!MJw8!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1cee73e5-1dd4-4081-a559-6f40592a5154_1456x816.png" width="1456" height="816" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/1cee73e5-1dd4-4081-a559-6f40592a5154_1456x816.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:816,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!MJw8!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1cee73e5-1dd4-4081-a559-6f40592a5154_1456x816.png 424w, https://substackcdn.com/image/fetch/$s_!MJw8!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1cee73e5-1dd4-4081-a559-6f40592a5154_1456x816.png 848w, https://substackcdn.com/image/fetch/$s_!MJw8!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1cee73e5-1dd4-4081-a559-6f40592a5154_1456x816.png 1272w, https://substackcdn.com/image/fetch/$s_!MJw8!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F1cee73e5-1dd4-4081-a559-6f40592a5154_1456x816.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image buttonBase-GK1x3M"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg" class="icon-noB79L"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image buttonBase-GK1x3M"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2 icon-noB79L"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><h4><strong>Merged PR&#8217;s</strong></h4><h5><strong>Every week, several changes are officially added to Bitcoin Core. This week, </strong>multiple <strong>changes were merged. Here are some I found interesting this week.</strong></h5><ul><li><p><strong><a href="https://github.com/bitcoin/bitcoin/pull/35351">net: Disallow invalid HeadersSyncState due to lagging clock</a></strong> by <strong><a href="https://github.com/hodlinator">hodlinator</a></strong></p><p>Headers presync sizes <code>m_max_commitments</code> from the elapsed time since the chain-start median time plus <code>MAX_FUTURE_BLOCK_TIME</code>. If your local clock is more than that far <em>behind</em> chain-start median time past, elapsed goes negative, the unsigned cap wraps to something huge, and low-work headers keep coming instead of the peer getting dropped.<br></p><p>The old idea (#35208) was to clamp the cap to zero and let <code>HeadersSyncState</code> keep eating headers. This PR refuses to construct an invalid state at all and aborts the node. In practice, if you already have chainstate, startup already notices the lagging clock and shuts down first. A fresh datadir is the path that actually hits this. hodlinator filed #36134 to make that comment match reality, and that one merged too.</p><p></p></li><li><p><strong><a href="https://github.com/bitcoin/bitcoin/pull/36048">util: keep wallet names literal in notification commands</a></strong> by <strong><a href="https://github.com/l0rinc">l0rinc</a></strong><br>l0rinc fixed a v24 regression in <code>-walletnotify</code>.<br></p><p>On non-Windows, <code>%w</code> in the notify command is replaced with the shell-escaped wallet name. Since #25803, <code>ReplaceAll()</code> has been feeding that replacement through <code>std::regex_replace()</code>. Regex replacement treats <code>$'</code> as &#8220;the rest of the subject,&#8221; so a wallet name containing <code>$'</code> can smash the quoting and run extra shell as the node user.<br></p><p>This is not a P2P bug. You need an authenticated RPC caller who is allowed to create wallets. #35833 already started restricting control characters in new names; this one restores the literal, non-recursive contract <code>ReplaceAll()</code> that existed before the Boost-to-<code>std::regex</code> switch. The Red Team found it.</p></li></ul><h5><strong>There are always changes being updated and reviewed in real-time. Here are some notable PR&#8217;s that are still up and looking for reviews.</strong></h5><ul><li><p><strong><a href="https://github.com/bitcoin/bitcoin/pull/36096">rpc: avoid quadratic JSON construction when keys are unique</a></strong> by <strong><a href="https://github.com/l0rinc">l0rinc</a></strong></p></li></ul><p>l0rinc asked for a review in Thursday&#8217;s meeting. It is open, not a draft, and not Needs rebase. Last week&#8217;s prefetch PR (<a href="https://github.com/bitcoin/bitcoin/pull/36000">#36000</a>) is still open too, he said a reindex-chainstate is often &gt;50% faster now (about 30017s &#8594; 19609s on his HDD box). Branch-off is next week, so if you have one review slot, start here and keep #36000 in the other tab.</p><blockquote><p>Problem: <code>getprioritisedtransactions</code> lets node operators inspect fee adjustments. While building the response, the RPC checks each transaction ID against all previous IDs, even though duplicates are impossible. The same unnecessary search appears in a few other RPC responses built directly from <code>std::map</code> or <code>std::set</code> keys.</p><p>Fix: Each changed response key comes from an <code>std::map</code> or <code>std::set</code>, where keys are unique, so insertion can skip the linear <code>findKey()</code> call.</p></blockquote><p>On a Pi 4 his reproducer was almost a minute before the fix and about half that after. Same shape anywhere we build JSON from map/set keys.</p><div><hr></div><h4><strong>IRC meeting notes</strong></h4><h5><strong>Every week on Thursday, there is an IRC meeting. Here are some short notes from that meeting.</strong></h5><pre><code>--- Topic 1 ---

<strong>fjahr</strong>: #topic QA WG Update (brunoerg)
<strong>brunoerg</strong>: I ran a mutation analysis for the silent payments PR and got a positive feedback about the findings and many mutants were addressed. Now that the implementation is on master, I re-ran the analysis for sp code as part of the weekly run. It got 100% of mutation score (that's perfect) - I will probably run a full analysis to check if there is any leftover. Results can be seen at: https://secp256k1.space
<strong>brunoerg</strong>: I also re-ran the mutation analysis for src/script/interpreter.cpp, since it's critical code I generated all the possible mutants. I got over 1000 mutants for this file which only 80 of them survived. There are some PRs adding more test cases for the interpreter which I hope we will soon have full coverage of them.
<strong>brunoerg</strong>: Naiyoma is helping me to test the parallelization of the analysis, I hope to get it ready soon, it will make our mutation workflow faster and more practical.
<strong>brunoerg</strong>: Also, I appreciate feedback from kernel people in #647. the idea is doing differential fuzzing between the kernel and the Core's internals.
<strong>brunoerg</strong>: That's all
<strong>fjahr</strong>: cool, thanks!

--- Topic 2 ---

<strong>fjahr</strong>: #topic QML GUI WG Update (johnny9dev)
<strong>johnny9dev</strong>: continue to work on the staging branch and fixing issues
<strong>johnny9dev</strong>: thats all for now

--- Topic 3 ---

<strong>fjahr</strong>: #topic Benchmarking WG Update (l0rinc, andrewtoth)
<strong>l0rinc</strong>: A few of the quadratic iteration fixes were merged, #36096 is similar, review would be appreciated.
<strong>l0rinc</strong>: And as mentioned yesterday, #36000 was tuned a bit more, now a reindex-chainstate is often &gt;50% faster.
<strong>l0rinc</strong>: IBD is probably internet bandwidth bounded now, will experiment with parallel undo/block flushes to see if it helps.
<strong>l0rinc</strong>: Will also profile a neutered validation-less and UTXO-less node to see the remaining bottlenecks.
<strong>l0rinc</strong>: That's it from me, thanks

--- Topic 4 ---

<strong>fjahr</strong>: #topic Kernel WG Update (sedited)
<strong>sedited</strong>: Been getting some good review on #35641 . Also had some external projects say they would be interested in its capability.
<strong>sedited</strong>: and will circle around to the things request in the pr brunoerg linked before
<strong>sedited</strong>: that's all

--- Topic 5 ---

<strong>fjahr</strong>: Anything else to discuss? Possibly the release?
<strong>sedited</strong>: there's still a few items in the milestone: https://github.com/bitcoin/bitcoin/milestone/84
<strong>sedited</strong>: would be good to get them in before branch-off.
<strong>fjahr</strong>: Please review! Anything else?
<strong>pinheadmz</strong>: Im getting lots of agent findings in the new HTTP
<strong>pinheadmz</strong>: im triaging solutions before branch off
<strong>pinheadmz</strong>: so just keep em coming.
<strong>fjahr</strong>: #endmeeting</code></pre><p>Read here for the <a href="https://achow101.com/ircmeetings/2026/bitcoin-core-dev.2026-09-03_16_00.html">full meeting</a></p><div><hr></div><h4><strong>Releases</strong></h4><ul><li><p>No releases</p></li><li><p>v32.0 is coming soon&#8230;</p></li></ul><div><hr></div><blockquote><p>Thank you for reading. Be sure to tune in again next week for your updates on Bitcoin Core!</p></blockquote><p><em>If there are any comments, suggestions, or errors, do not hesitate to reach out or comment</em></p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://insider.btcpp.dev/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">bitcoin++'s Insider Edition is a reader-supported publication. To receive new posts and support my work, consider becoming a free or paid subscriber.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div>]]></content:encoded></item><item><title><![CDATA[BitPolito: How Italy’s Largest Bitcoin Student Org Is Passing the Reins to the Next Generation]]></title><description><![CDATA[Francesco Pelle, after an incredible 2 years at the helm, talks to Insider about his time leading BitPolito and his work ushering in the student org&#8217;s next chapter]]></description><link>https://insider.btcpp.dev/p/bitpolito-how-italys-largest-bitcoin</link><guid isPermaLink="false">https://insider.btcpp.dev/p/bitpolito-how-italys-largest-bitcoin</guid><dc:creator><![CDATA[Tuma (I WILL NEVER DM YOU)]]></dc:creator><pubDate>Wed, 02 Sep 2026 14:03:12 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!Csgb!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F85269bea-aada-4c4f-9668-c00bd583a71c_1264x848.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!Csgb!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F85269bea-aada-4c4f-9668-c00bd583a71c_1264x848.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!Csgb!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F85269bea-aada-4c4f-9668-c00bd583a71c_1264x848.png 424w, https://substackcdn.com/image/fetch/$s_!Csgb!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F85269bea-aada-4c4f-9668-c00bd583a71c_1264x848.png 848w, https://substackcdn.com/image/fetch/$s_!Csgb!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F85269bea-aada-4c4f-9668-c00bd583a71c_1264x848.png 1272w, https://substackcdn.com/image/fetch/$s_!Csgb!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F85269bea-aada-4c4f-9668-c00bd583a71c_1264x848.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!Csgb!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F85269bea-aada-4c4f-9668-c00bd583a71c_1264x848.png" width="1264" height="848" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/85269bea-aada-4c4f-9668-c00bd583a71c_1264x848.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:848,&quot;width&quot;:1264,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:1986652,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://insider.btcpp.dev/i/213528201?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F85269bea-aada-4c4f-9668-c00bd583a71c_1264x848.png&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!Csgb!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F85269bea-aada-4c4f-9668-c00bd583a71c_1264x848.png 424w, https://substackcdn.com/image/fetch/$s_!Csgb!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F85269bea-aada-4c4f-9668-c00bd583a71c_1264x848.png 848w, https://substackcdn.com/image/fetch/$s_!Csgb!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F85269bea-aada-4c4f-9668-c00bd583a71c_1264x848.png 1272w, https://substackcdn.com/image/fetch/$s_!Csgb!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F85269bea-aada-4c4f-9668-c00bd583a71c_1264x848.png 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image buttonBase-GK1x3M"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg" class="icon-noB79L"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image buttonBase-GK1x3M"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2 icon-noB79L"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><div><hr></div><p>Chances are if you&#8217;re in the Italian Bitcoin community, or perhaps even those outside of it, you&#8217;ve heard of the most popular Italian students club: Politecnico of Turin&#8217;s <a href="https://www.bitpolito.it/">BitPolito</a>. Or maybe you&#8217;ve seen their logo, a pixelated blue cow, somewhere at a Bitcoin conference.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!p7hV!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9afd2753-ab7c-4d1d-9b86-ddd66bb887d2_4913x3127.svg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!p7hV!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9afd2753-ab7c-4d1d-9b86-ddd66bb887d2_4913x3127.svg 424w, https://substackcdn.com/image/fetch/$s_!p7hV!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9afd2753-ab7c-4d1d-9b86-ddd66bb887d2_4913x3127.svg 848w, https://substackcdn.com/image/fetch/$s_!p7hV!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9afd2753-ab7c-4d1d-9b86-ddd66bb887d2_4913x3127.svg 1272w, https://substackcdn.com/image/fetch/$s_!p7hV!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9afd2753-ab7c-4d1d-9b86-ddd66bb887d2_4913x3127.svg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!p7hV!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9afd2753-ab7c-4d1d-9b86-ddd66bb887d2_4913x3127.svg" width="1456" height="927" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/9afd2753-ab7c-4d1d-9b86-ddd66bb887d2_4913x3127.svg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:927,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:985,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/svg+xml&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://insider.btcpp.dev/i/213528201?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9afd2753-ab7c-4d1d-9b86-ddd66bb887d2_4913x3127.svg&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!p7hV!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9afd2753-ab7c-4d1d-9b86-ddd66bb887d2_4913x3127.svg 424w, https://substackcdn.com/image/fetch/$s_!p7hV!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9afd2753-ab7c-4d1d-9b86-ddd66bb887d2_4913x3127.svg 848w, https://substackcdn.com/image/fetch/$s_!p7hV!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9afd2753-ab7c-4d1d-9b86-ddd66bb887d2_4913x3127.svg 1272w, https://substackcdn.com/image/fetch/$s_!p7hV!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F9afd2753-ab7c-4d1d-9b86-ddd66bb887d2_4913x3127.svg 1456w" sizes="100vw"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image buttonBase-GK1x3M"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg" class="icon-noB79L"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image buttonBase-GK1x3M"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2 icon-noB79L"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>BitPolito was founded in 2018 by three students of the Politecnico di Torino: Giorgio Rasetto, <a href="https://x.com/bitsalv">Salvatore Scorsone</a>, and <a href="https://btcpp.dev/whois/gitgab19">Gabriele Vernetti</a>. Inspired by their shared passion for the world&#8217;s most popular cryptocurrency, the three students united to bring a Italy&#8217;s first Bitcoin focused student&#8217;s club to life. Their objective: to bridge the gap between the academic world and the Bitcoin industry, helping members develop skills and create value for Bitcoin, by creating an educational environment focused on R&amp;D in computer science and mathematics, holding classes for students, and organizing events in Turin and around Italy.</p><p>No price noise, just <em>educational</em> signal.</p><p>According to the latest annual report (2025/2026), BitPolito has more 55 active members. Historically, around 220 members have been active in the student&#8217;s organization, and there are now more than 30 former students actually working in the Bitcoin industry. For example, Gabriele Vernetti, one of the founders &#8212; known in cyberspace as GitGab19 &#8212;, is now one of the main maintainers of the Stratum V2 project.</p><p>The association is always present to the biggest Bitcoin events around the world. Other than talks at several Bitcoin++ events, in 2024/2025 the BitPolito guys could be found at the Plan B Forum in Lugano, BTC Prague, Baltic Honeybadger, and BTCHEL, and the Barcelona Cypher Conference.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!ejFc!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc7ff97dd-8d1d-4ea6-97a7-05246d2bac45_1024x1280.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!ejFc!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc7ff97dd-8d1d-4ea6-97a7-05246d2bac45_1024x1280.jpeg 424w, https://substackcdn.com/image/fetch/$s_!ejFc!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc7ff97dd-8d1d-4ea6-97a7-05246d2bac45_1024x1280.jpeg 848w, https://substackcdn.com/image/fetch/$s_!ejFc!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc7ff97dd-8d1d-4ea6-97a7-05246d2bac45_1024x1280.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!ejFc!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc7ff97dd-8d1d-4ea6-97a7-05246d2bac45_1024x1280.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!ejFc!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc7ff97dd-8d1d-4ea6-97a7-05246d2bac45_1024x1280.jpeg" width="1024" height="1280" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/c7ff97dd-8d1d-4ea6-97a7-05246d2bac45_1024x1280.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1280,&quot;width&quot;:1024,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:265227,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/jpeg&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://insider.btcpp.dev/i/213528201?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc7ff97dd-8d1d-4ea6-97a7-05246d2bac45_1024x1280.jpeg&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!ejFc!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc7ff97dd-8d1d-4ea6-97a7-05246d2bac45_1024x1280.jpeg 424w, https://substackcdn.com/image/fetch/$s_!ejFc!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc7ff97dd-8d1d-4ea6-97a7-05246d2bac45_1024x1280.jpeg 848w, https://substackcdn.com/image/fetch/$s_!ejFc!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc7ff97dd-8d1d-4ea6-97a7-05246d2bac45_1024x1280.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!ejFc!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fc7ff97dd-8d1d-4ea6-97a7-05246d2bac45_1024x1280.jpeg 1456w" sizes="100vw"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image buttonBase-GK1x3M"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg" class="icon-noB79L"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image buttonBase-GK1x3M"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2 icon-noB79L"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>In Italy, their impact can be also felt outside of the Politecnico. They organize events all over Italy &#8212; more than 70 according to the latest report &#8212;, they take part in the Italian-only conferences, such as the BitCare Forum in Breascia, and provide education to anyone willing to learn. With their &#8220;Bitcoin al Liceo&#8221; program, BitPolito is bringing Bitcoin and the Cypherpunk culture to high school students around Turin, while &#8220;BitGeneration&#8221; brings together the best educators in the Italian ecosystem to provide everyone with a full understanding of Bitcoin directly at the Politecnico.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!X5WK!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0cf7ecd7-c9b1-4f3e-98d6-3925b505101f_2246x2808.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!X5WK!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0cf7ecd7-c9b1-4f3e-98d6-3925b505101f_2246x2808.jpeg 424w, https://substackcdn.com/image/fetch/$s_!X5WK!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0cf7ecd7-c9b1-4f3e-98d6-3925b505101f_2246x2808.jpeg 848w, https://substackcdn.com/image/fetch/$s_!X5WK!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0cf7ecd7-c9b1-4f3e-98d6-3925b505101f_2246x2808.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!X5WK!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0cf7ecd7-c9b1-4f3e-98d6-3925b505101f_2246x2808.jpeg 1456w" sizes="auto, 100vw"><img src="https://substackcdn.com/image/fetch/$s_!X5WK!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0cf7ecd7-c9b1-4f3e-98d6-3925b505101f_2246x2808.jpeg" width="1456" height="1820" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/0cf7ecd7-c9b1-4f3e-98d6-3925b505101f_2246x2808.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1820,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:5920713,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/jpeg&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://insider.btcpp.dev/i/213528201?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0cf7ecd7-c9b1-4f3e-98d6-3925b505101f_2246x2808.jpeg&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!X5WK!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0cf7ecd7-c9b1-4f3e-98d6-3925b505101f_2246x2808.jpeg 424w, https://substackcdn.com/image/fetch/$s_!X5WK!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0cf7ecd7-c9b1-4f3e-98d6-3925b505101f_2246x2808.jpeg 848w, https://substackcdn.com/image/fetch/$s_!X5WK!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0cf7ecd7-c9b1-4f3e-98d6-3925b505101f_2246x2808.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!X5WK!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F0cf7ecd7-c9b1-4f3e-98d6-3925b505101f_2246x2808.jpeg 1456w" sizes="auto, 100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image buttonBase-GK1x3M"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg" class="icon-noB79L"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image buttonBase-GK1x3M"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2 icon-noB79L"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p></p><p>BitPolito has also been invited to participate in an event organized by the Camera dei Deputati &#8212; one of the Italian parliamentary chambers &#8212; to present their view on what Bitcoin is and why it is important for a better future.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!ZeN7!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7835658f-9a32-40e3-997a-b2cec7d58633_1023x1280.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!ZeN7!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7835658f-9a32-40e3-997a-b2cec7d58633_1023x1280.jpeg 424w, https://substackcdn.com/image/fetch/$s_!ZeN7!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7835658f-9a32-40e3-997a-b2cec7d58633_1023x1280.jpeg 848w, https://substackcdn.com/image/fetch/$s_!ZeN7!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7835658f-9a32-40e3-997a-b2cec7d58633_1023x1280.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!ZeN7!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7835658f-9a32-40e3-997a-b2cec7d58633_1023x1280.jpeg 1456w" sizes="auto, 100vw"><img src="https://substackcdn.com/image/fetch/$s_!ZeN7!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7835658f-9a32-40e3-997a-b2cec7d58633_1023x1280.jpeg" width="1023" height="1280" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/7835658f-9a32-40e3-997a-b2cec7d58633_1023x1280.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1280,&quot;width&quot;:1023,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:196910,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/jpeg&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://insider.btcpp.dev/i/213528201?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7835658f-9a32-40e3-997a-b2cec7d58633_1023x1280.jpeg&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!ZeN7!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7835658f-9a32-40e3-997a-b2cec7d58633_1023x1280.jpeg 424w, https://substackcdn.com/image/fetch/$s_!ZeN7!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7835658f-9a32-40e3-997a-b2cec7d58633_1023x1280.jpeg 848w, https://substackcdn.com/image/fetch/$s_!ZeN7!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7835658f-9a32-40e3-997a-b2cec7d58633_1023x1280.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!ZeN7!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F7835658f-9a32-40e3-997a-b2cec7d58633_1023x1280.jpeg 1456w" sizes="auto, 100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image buttonBase-GK1x3M"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg" class="icon-noB79L"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image buttonBase-GK1x3M"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2 icon-noB79L"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><div><hr></div><p><a href="https://x.com/bitciccio">Franscesco Pelle</a> has been BitPolito&#8217;s president since July 2024. After two years successfully leading the club, he is now stepping down, leaving the role to a member of the next generation. Francesco recently completed his academic journey in Management Engineering, and is graduating from the Politecnico. While his passion for Bitcoin and the BitPolito is as strong as ever, he is ready to move forward to his new chapter of life: &#8220;My main interests are entrepreneurship and product management. I currently work as a product manager at a startup, and I want to continue developing my skills in this field&#8221;, he says.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!Bbuz!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd3bf780a-fad5-4f46-8fa8-565d66cb57b5_2560x1707.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!Bbuz!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd3bf780a-fad5-4f46-8fa8-565d66cb57b5_2560x1707.jpeg 424w, https://substackcdn.com/image/fetch/$s_!Bbuz!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd3bf780a-fad5-4f46-8fa8-565d66cb57b5_2560x1707.jpeg 848w, https://substackcdn.com/image/fetch/$s_!Bbuz!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd3bf780a-fad5-4f46-8fa8-565d66cb57b5_2560x1707.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!Bbuz!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd3bf780a-fad5-4f46-8fa8-565d66cb57b5_2560x1707.jpeg 1456w" sizes="auto, 100vw"><img src="https://substackcdn.com/image/fetch/$s_!Bbuz!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd3bf780a-fad5-4f46-8fa8-565d66cb57b5_2560x1707.jpeg" width="1456" height="971" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/d3bf780a-fad5-4f46-8fa8-565d66cb57b5_2560x1707.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:971,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:673264,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/jpeg&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://insider.btcpp.dev/i/213528201?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd3bf780a-fad5-4f46-8fa8-565d66cb57b5_2560x1707.jpeg&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!Bbuz!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd3bf780a-fad5-4f46-8fa8-565d66cb57b5_2560x1707.jpeg 424w, https://substackcdn.com/image/fetch/$s_!Bbuz!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd3bf780a-fad5-4f46-8fa8-565d66cb57b5_2560x1707.jpeg 848w, https://substackcdn.com/image/fetch/$s_!Bbuz!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd3bf780a-fad5-4f46-8fa8-565d66cb57b5_2560x1707.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!Bbuz!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd3bf780a-fad5-4f46-8fa8-565d66cb57b5_2560x1707.jpeg 1456w" sizes="auto, 100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image buttonBase-GK1x3M"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg" class="icon-noB79L"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image buttonBase-GK1x3M"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2 icon-noB79L"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><blockquote><p>&#8220;<em>There is no single moment that I would describe as the most important one. Serving as president of BitPolito has been one of the most rewarding experiences of my journey so far. It was both a privilege and a responsibility to be part of a group of people united by values that I consider fundamental, starting with freedom and the other principles at the heart of Bitcoin.&#8221;</em></p></blockquote><p>Giorgio Rasetto, one of the founders, and the rest of BitPolito&#8217;s OGs personally chose Francesco as the new president in 2024, when Giorgio himself completed his academic journey and decided to focus on his Bitcoin career. &#8220;They selected the person they believe is best suited to ensure continuity in the team&#8217;s activities, responsibilities, and leadership,&#8221; Francesco says, pointing out that he &#8220;had also demonstrated a strong commitment to BitPolito and its mission.&#8221; This seems to have reassured the founders they were entrusting someone who genuinely cared about what they were building.</p><p>Being the first president outside of the circle of the original founders, continuity has been one of the most important focuses of Francesco&#8217;s term. How do you make sure that the ethos, the values, and the ideas that led to BitPolito will remain intact, even after the founders are gone? &#8220;My main goal was to ensure BitPolito&#8217;s continuity and allow the work built over the previous years to continue. Today, the team includes highly motivated people who genuinely care about the project.&#8221;</p><p>One of the best ways to ensure continuity is through education. New members are not always operational until they have absorbed what Bitcoin is really about. Moreover, the structural organization has been made so that new members can easily integrate with the ongoing activities and the association in general.</p><blockquote><p><em>&#8220;The president is responsible for providing leadership and maintaining an overall view of the team&#8217;s activities. The president does not hold exclusive decision-making power: they are part of a board where decisions and responsibilities are shared with the heads of the team&#8217;s internal divisions.&#8221;</em></p></blockquote><p>The role of the presidency in BitPolito is a high-profile one. Other than giving a common direction to the organization and making sure that all the important initiative are completed on time, the president is responsible for managing institutional relationships with companies, projects, and, most importantly, with the Politecnico itself. During his term, Francesco was able to secure &#8220;significantly more financial support from Politecnico di Torino than in the past,&#8221; &#8212; something he is proud of &#8212; so that the members could continue attending events and travelling across Europe, promote both BitPolito and the Politecnico, and strengthen the relationships they had built over the years.</p><div><hr></div><p>Francesco is proud of everything he has done during his presidency. He is proud of how BitPolito has impacted the Italian Bitcoin scene and how their events have allowed many people to get a closer look to Bitcoin and get fascinated by the ideas behind it. &#8220;Discovering Bitcoin can have a profound impact on someone&#8217;s life, and I believe that BitPolito has helped create that change for many people in Italy over time,&#8221; he says. Most importantly, though, he is proud of having been able to remain true to himself while &#8220;creating an environment where people could feel at home, take an active role, and freely bring forward their own initiatives.&#8221;</p><blockquote><p><em>&#8220;I do not have any real regrets. There are certainly things I would have liked to do better or spend more time on, but they do not change how I feel about the overall experience. I am satisfied with what I did, and I am confident that the team will continue in the best possible way under its new leadership.&#8221;</em></p></blockquote><p>Some things remain undone, like creating a more clearly defined and robust structure for the team&#8217;s internal processes and activities. Francesco is not worried, though. He is sure that the new president and the team will be able to fill this gap and continue on the same track of the people before them.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!PkEY!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fed644fde-1efc-4dd2-80bd-6e1af7e6c5c5_1032x1280.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!PkEY!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fed644fde-1efc-4dd2-80bd-6e1af7e6c5c5_1032x1280.jpeg 424w, https://substackcdn.com/image/fetch/$s_!PkEY!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fed644fde-1efc-4dd2-80bd-6e1af7e6c5c5_1032x1280.jpeg 848w, https://substackcdn.com/image/fetch/$s_!PkEY!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fed644fde-1efc-4dd2-80bd-6e1af7e6c5c5_1032x1280.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!PkEY!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fed644fde-1efc-4dd2-80bd-6e1af7e6c5c5_1032x1280.jpeg 1456w" sizes="auto, 100vw"><img src="https://substackcdn.com/image/fetch/$s_!PkEY!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fed644fde-1efc-4dd2-80bd-6e1af7e6c5c5_1032x1280.jpeg" width="1032" height="1280" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/ed644fde-1efc-4dd2-80bd-6e1af7e6c5c5_1032x1280.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1280,&quot;width&quot;:1032,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:271287,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/jpeg&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:&quot;https://insider.btcpp.dev/i/213528201?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fed644fde-1efc-4dd2-80bd-6e1af7e6c5c5_1032x1280.jpeg&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!PkEY!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fed644fde-1efc-4dd2-80bd-6e1af7e6c5c5_1032x1280.jpeg 424w, https://substackcdn.com/image/fetch/$s_!PkEY!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fed644fde-1efc-4dd2-80bd-6e1af7e6c5c5_1032x1280.jpeg 848w, https://substackcdn.com/image/fetch/$s_!PkEY!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fed644fde-1efc-4dd2-80bd-6e1af7e6c5c5_1032x1280.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!PkEY!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fed644fde-1efc-4dd2-80bd-6e1af7e6c5c5_1032x1280.jpeg 1456w" sizes="auto, 100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image buttonBase-GK1x3M"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg" class="icon-noB79L"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image buttonBase-GK1x3M"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2 icon-noB79L"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><div><hr></div><p>The new president has already been chosen. <a href="https://linkedin.com/in/lucavis">Luca Visconti</a>, former Project Manager for the AI team, will take the presidency soon. The handover has already started and Francesco is delighted about his successor.</p><blockquote><p><em>&#8220;I was impressed by how active he was and by the dedication with which he approached the responsibilities of the role&#8221;</em></p></blockquote><p>According to Francesco, after years of expanding the network outside of the borders of Turin, the new president will have to focus the association back to where it all began. Engaging students, spread Bitcoin awareness among them, and grow the team.</p><div><hr></div><p><em>Bitcoin++ Insider Edition would like to thank BitPolito president Francesco Pelle for his availability and wishes him a bright future for his Bitcoin career. We also would like to congratulate Luca Visconti for his new role and wish him a term full of success and satisfaction.</em></p>]]></content:encoded></item><item><title><![CDATA[Glass Coins — Last Week in Bitcoin (Aug 24 - 30)]]></title><description><![CDATA[Hi Insiders.]]></description><link>https://insider.btcpp.dev/p/glass-coins-last-week-in-bitcoin</link><guid isPermaLink="false">https://insider.btcpp.dev/p/glass-coins-last-week-in-bitcoin</guid><dc:creator><![CDATA[Tuma (I WILL NEVER DM YOU)]]></dc:creator><pubDate>Mon, 31 Aug 2026 14:03:22 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!ZkX7!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fef38fbec-ea28-465c-8187-74bbf93fb1c6_1600x900.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p><em>Hi Insiders. This is Tuma, open-source reporter from the Insider Edition.</em></p><p><em>In this week&#8217;s update we feature nutroot secrets, the latest improvement to the Cashu protocol, which allows spending conditions to be included directly in the secret.</em></p><p><em>We also cover the first Shielded CSV developer call, where devs provided an overview of the high-level architecture. The team also announced that the protocol was renamed Glass Coins.</em></p><p><em>Finally, we discuss the most interesting news from the Bitcoin ecosystem. In particular, we cover BIP SHRINCS, the vulnerabilities found in Core-lightning, and the discontinuation of the Hardware Wallet Interface (HWI) library.</em></p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!ZkX7!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fef38fbec-ea28-465c-8187-74bbf93fb1c6_1600x900.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!ZkX7!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fef38fbec-ea28-465c-8187-74bbf93fb1c6_1600x900.jpeg 424w, https://substackcdn.com/image/fetch/$s_!ZkX7!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fef38fbec-ea28-465c-8187-74bbf93fb1c6_1600x900.jpeg 848w, https://substackcdn.com/image/fetch/$s_!ZkX7!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fef38fbec-ea28-465c-8187-74bbf93fb1c6_1600x900.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!ZkX7!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fef38fbec-ea28-465c-8187-74bbf93fb1c6_1600x900.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!ZkX7!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fef38fbec-ea28-465c-8187-74bbf93fb1c6_1600x900.jpeg" width="1456" height="819" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/ef38fbec-ea28-465c-8187-74bbf93fb1c6_1600x900.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:819,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:347184,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/jpeg&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:&quot;https://insider.btcpp.dev/i/213525049?img=https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fef38fbec-ea28-465c-8187-74bbf93fb1c6_1600x900.jpeg&quot;,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!ZkX7!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fef38fbec-ea28-465c-8187-74bbf93fb1c6_1600x900.jpeg 424w, https://substackcdn.com/image/fetch/$s_!ZkX7!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fef38fbec-ea28-465c-8187-74bbf93fb1c6_1600x900.jpeg 848w, https://substackcdn.com/image/fetch/$s_!ZkX7!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fef38fbec-ea28-465c-8187-74bbf93fb1c6_1600x900.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!ZkX7!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fef38fbec-ea28-465c-8187-74bbf93fb1c6_1600x900.jpeg 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image buttonBase-GK1x3M"><svg aria-hidden="true" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg" class="icon-noB79L"><g><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image buttonBase-GK1x3M"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2 icon-noB79L"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><div><hr></div><h1><strong>Highlights from the Bitcoin developer ecosystem</strong></h1><p><em>I spent 10+ hours in open-source developer calls in the Bitcoin ecosystem last week. Here is what caught my eye</em>:</p><ul><li><p>Cashu devs are working on nutroot secrets, a new way to express spending conditions inspired by taproot.</p><ul><li><p>During the monthly community call, on Thursday 27th, Cashu developers discussed the latest changes to the protocol specifications (NUTs). Notably, discussion focused around <a href="https://github.com/cashubtc/nuts/pull/421">PR421</a>, which introduces the so-called <strong>nutroot secrets</strong>. The PR has not been merged yet, since devs are waiting for the different projects to implement this feature.</p></li><li><p>Nutroot secrets change the way the protocol manages spending conditions. Instead of relying on a separate JSON file, the <code>secret</code> commits to a merkle tree which includes all the different spending conditions.</p></li><li><p>While nutroot secrets are clearly inspired by how taproot works in Bitcoin, developers clarified that only the commitment structure has been used and little else. No taproot property should be taken for granted.</p></li><li><p>Nutroot secrets comes with a new cryptographic algorithm. Developers decided to migrate to a new curve, BLS12-381, from the current scheme using secp256k1. This is because BLS makes signature publicly verifiable. The new algorithm is being introduced through <a href="https://github.com/cashubtc/nuts/pull/371">PR371</a>.</p></li></ul></li><li><p>Shielded CSV has been renamed Glass Coins, and promises a better transaction throughput on Bitcoin with improved privacy.</p><ul><li><p>On Thursday 27th, <a href="https://btcpp.dev/whois/robin-linus">Robin Linus</a>, <a href="https://btcpp.dev/whois/jonasnick">Jonas Nick</a>, and <a href="https://btcpp.dev/whois/liam-eagen">Liam Eagen</a> held the first developer call for Shielded CSV, a private payments protocol designed for maximum throughput and minimal latency.</p></li><li><p>The protocol is based on Client-side Validation (CSV), a technique that allows users to validate transactions off-chain, while relying on on-chain transactions only to prevent double-spending. The protocol comes with a minimal on-chain footprint.</p></li><li><p>The founders announced that the protocol had been renamed Glass Coins and shared a <a href="https://hackmd.io/H7BO61ART0CazAh752K2eQ">specifications file</a> containing all the high-level information about it.</p></li></ul></li></ul><div><hr></div><h1>A BIPs Update</h1><p><em>There was no newsworthy update in the last few days in the <a href="https://github.com/bitcoin/bips">BIP repository</a>. We&#8217;ll provide new updates as soon as a new BIP gets published or gets assigned a number.</em></p><div><hr></div><h1>Other News from the Bitcoin World</h1><ul><li><p><strong>A BIP for SHRINCS</strong>: Blockstream&#8217;s Head of Research Jonas Nick <a href="https://x.com/n1ckler/status/2092740384938226107">announced</a> the first draft of <a href="https://github.com/SHRINCS/shrincs-bip/blob/main/SHRINCS.md">BIP SHRINCS</a>, the first proposal for a post-quantum signature scheme for Bitcoin.</p><ul><li><p>The proposed scheme, called SHRINCS, provides the ability to obtain small signatures &#8212; in the context of post-quantum cryptography &#8212; of 548 bytes. It does so by using a stateful signature scheme &#8212; smaller signatures, but you must keep track of used keys (state) &#8212;, while giving the user the possibility to fall back to a stateless scheme in case the state is lost, at the cost of bigger signatures ( &gt; 5kB).</p></li><li><p>If you want to know more about SHRINCS, the Insider published a <a href="https://insider.btcpp.dev/p/how-to-make-smaller-post-quantum">deep dive on SHRINCS</a> some months ago. We also published a <a href="https://insider.btcpp.dev/p/bitcoin-shrimps-how-blockstreams">deep dive on SHRIMPS</a>, a proposal to minimize risks in a post-quantum world that can be combined with SHRINCS.</p></li></ul></li><li><p><strong>Vulnerabilities on CLN</strong>: Last week, Core-lightning contributors announced that several vulnerabilities had been found in the Lightning implementation. According to Christian Decker, no known vulnerability can be leveraged to steal funds.</p><ul><li><p>Christian Decker also <a href="https://x.com/Snyke/status/2092989040098181170">provided</a> information about the approach that CLN was following to address the vulnerabilities. The team will provide an embargoed release by publishing signed binaries without making the source code available. 14 days after the release, developers will publish the source code, which can be used by anyone to verify the released binaries thanks to their reproducible build system.</p></li><li><p>The patch release <a href="https://github.com/ElementsProject/lightning/releases/tag/v26.06.7">v26.06.7</a> was published on August 28th. The team invited anyone running a CLN to upgrade as soon as possible. In case anyone wants to wait for the source code to be released before upgrading, the suggestion is to restart the node using the <code>--offline</code> command, which allows the node to cut out external connections, without losing on-chain enforcement against potential cheating peers.</p></li></ul></li><li><p><strong>Goodbye HWI</strong>: Bitcoin Core contributor Ava Chow <a href="https://github.com/bitcoin-core/HWI/issues/850">announced</a> that the Hardware Wallet Interface (HWI) library &#8212; which enables support to hardware signers in Bitcoin Core &#8212; will be put in maintenance mode. This means that no new functionality will be added from now on, except for MuSig2 which is currently under development.</p><ul><li><p>One of the reason behind the choice, other than being a solo-dev project, is the fact that it is developed in Python and it does not allow for reproducible builds. This means it cannot be shipped with the whole Bitcoin Core package.</p></li><li><p><a href="https://github.com/wizardsardine/bhwi">BHWI</a> &#8212; developed by Wizardsardine &#8212; has been chosen as the possible successor to HWI. The library is built in Rust and it already supports the major hardware signers on the market.</p></li></ul></li></ul><div><hr></div><p><em>Looking for an opportunity to join up with some bitcoin devs in person? Join us in <a href="https://btcpp.dev/berlin26?code=TUMA20">Berlin</a> this October 1- 3 to talk about payments in Bitcoin!</em></p>]]></content:encoded></item></channel></rss>