From mboxrd@z Thu Jan 1 00:00:00 1970 Delivery-date: Mon, 05 May 2025 16:40:08 -0700 Received: from mail-yb1-f191.google.com ([209.85.219.191]) by mail.fairlystable.org with esmtps (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 (Exim 4.94.2) (envelope-from ) id 1uC5Pr-00029E-D4 for bitcoindev@gnusha.org; Mon, 05 May 2025 16:40:08 -0700 Received: by mail-yb1-f191.google.com with SMTP id 3f1490d57ef6-e6e079c7ef2sf7250832276.1 for ; Mon, 05 May 2025 16:40:07 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlegroups.com; s=20230601; t=1746488401; x=1747093201; darn=gnusha.org; h=list-unsubscribe:list-subscribe:list-archive:list-help:list-post :list-id:mailing-list:precedence:x-original-sender:mime-version :subject:references:in-reply-to:message-id:to:from:date:sender:from :to:cc:subject:date:message-id:reply-to; bh=XXq4oUU/JkhLWlDapayNNxpTDuZGFl3ohKrBGlA4b+w=; b=pwyXPdXQUtvDlT2dWF71DQ+6YxvrvhuTyD8xTHUE8Mwz7AF9kgN/1AY+dFTyL3oQUT X8/YMgloaDDWy7K0RGvjquTlFFzXFeBKNQMqNxi4RZkvbrAYy9HYWxT77JnwFOip0IBK ZKlhnSEVrgS1ldKHf99y9OfbgTCPsn2juzkQpw2qvKysn/Hy8Az/Ej/bbjeZBkwWDjSh yrWo5WjW1NaB/878UVj/0T7au/tqEjpWTNb1iEfp6asrnw2+NJMjU8RyMCzzrv4sWx9/ 2dYN0FkZ753PVZ5FVOqzojk5kGqpXRCJrs4JwYu631/7iHbJH3qUlwEX2Uxvvk8lgjzw 0yIQ== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1746488401; x=1747093201; darn=gnusha.org; h=list-unsubscribe:list-subscribe:list-archive:list-help:list-post :list-id:mailing-list:precedence:x-original-sender:mime-version :subject:references:in-reply-to:message-id:to:from:date:from:to:cc :subject:date:message-id:reply-to; bh=XXq4oUU/JkhLWlDapayNNxpTDuZGFl3ohKrBGlA4b+w=; b=VfXtAxgT6cie/m/zr0RrC5iUmUa5PxuYOkCjwlK+QLSp/+2TrSgHqJnprH/CPx82wU vzR24HEc8L6U50XMcoXXJFUsC2hgdhxI73HGADug7wJLgIPl/t7OKTr/b41RVksOXutV qpFwtEBOx4z7i7WyBxzAsee3x+ngcYaM2SNhnn5zEKPegeZOIGyX/3fZrMgb13q2q+bZ emvyKu5mB5Rh8JIzy5iPjkkZCEhcSIVMM+H/mj9djVo9kX35WV/p4+LgK0L+iliYFZIa Npsu7u4W4egfs/rs5FfV6D6XiBqVzvraJlc4tpMzS7J5mlWe5M32X7cbmJAjNeqZq75N qBCQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1746488401; x=1747093201; h=list-unsubscribe:list-subscribe:list-archive:list-help:list-post :list-id:mailing-list:precedence:x-original-sender:mime-version :subject:references:in-reply-to:message-id:to:from:date:x-beenthere :x-gm-message-state:sender:from:to:cc:subject:date:message-id :reply-to; bh=XXq4oUU/JkhLWlDapayNNxpTDuZGFl3ohKrBGlA4b+w=; b=o8VwOTMAEoCXrxx5ufUL1olxJpl1duac129+nWlb06QwDw98dtQIfXo3YMolWGPQT5 XacsxbSW4NPi4XmfKF6q1fIjNnIwteKCtbY65QSeCw/h9Iu73T+OBpFb2xh7Plvwh56I iNlagIL4EVO8PQ5Op6tbPrwu63V8te7QBSMpiLlD+47NO+Cs+6ebG06Ojqn5pO1G2t/K 5/ePNvE87AmBlFwvtu4+YOCYQG98mPCugyJqfTHOaHvMlHoOkQHUre/nDlw9idlZQLOl 04rH7muSmEKmQVDgR031JOlYAd+0q8gfJq2s8ldMXRj9AizxbCqiyRXkDDQ386sj1onz zGOw== Sender: bitcoindev@googlegroups.com X-Forwarded-Encrypted: i=1; AJvYcCU1oVzmKDPvUk8mmyPzbzJF6ODs5snhrLIQ9UWdspwLAdhP148Fis9889aXjBbhfwV7tmeQunUJ7mJd@gnusha.org X-Gm-Message-State: AOJu0YzL6KdJCROy28pQfezYC7JZQR3+lQZUZoWft2Ausuk1SGsfdhp1 mBwMYJEZbcaNhUHQBSVy+crsXlOyMvlUsyE8RhQ0RYhj1hWyNu8J X-Google-Smtp-Source: AGHT+IEv893PvZNCw+5f5YxGTviZm88a5L5wpbAZowHGHE5UzM/4tqDeR2MmmiMQcWJVp7wiB7ENiQ== X-Received: by 2002:a05:6902:120b:b0:e75:65f6:69bd with SMTP id 3f1490d57ef6-e757d2f7facmr10909681276.28.1746488401492; Mon, 05 May 2025 16:40:01 -0700 (PDT) X-BeenThere: bitcoindev@googlegroups.com; h=AVT/gBEwP2wpIMu30xRGxUIOz+pGp9jkvbcgvMeHQWy7vuT6rA== Received: by 2002:a25:b128:0:b0:e74:29b5:5ab7 with SMTP id 3f1490d57ef6-e74dc7c4cb3ls908062276.2.-pod-prod-04-us; Mon, 05 May 2025 16:39:58 -0700 (PDT) X-Received: by 2002:a05:690c:67c6:b0:708:bfc7:48fa with SMTP id 00721157ae682-708eaf041aamr129154327b3.20.1746488398237; Mon, 05 May 2025 16:39:58 -0700 (PDT) Received: by 2002:a05:690c:a10:b0:708:1ea1:3cd5 with SMTP id 00721157ae682-708cfde0f16ms7b3; Mon, 5 May 2025 15:25:31 -0700 (PDT) X-Received: by 2002:a05:690c:9b0d:b0:708:183d:ce0e with SMTP id 00721157ae682-708eaeec80fmr126397337b3.16.1746483930435; Mon, 05 May 2025 15:25:30 -0700 (PDT) Date: Mon, 5 May 2025 15:25:29 -0700 (PDT) From: Greg Maxwell To: Bitcoin Development Mailing List Message-Id: In-Reply-To: References: Subject: [bitcoindev] Re: Unbreaking testnet4 MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="----=_Part_348554_1988886272.1746483929876" X-Original-Sender: gmaxwell@gmail.com Precedence: list Mailing-list: list bitcoindev@googlegroups.com; contact bitcoindev+owners@googlegroups.com List-ID: X-Google-Group-Id: 786775582512 List-Post: , List-Help: , List-Archive: , List-Unsubscribe: , X-Spam-Score: -0.5 (/) ------=_Part_348554_1988886272.1746483929876 Content-Type: multipart/alternative; boundary="----=_Part_348555_1472353965.1746483929876" ------=_Part_348555_1472353965.1746483929876 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable On Tuesday, March 18, 2025 at 9:24:49=E2=80=AFPM UTC Antoine Poinsot wrote: Hi, Testnet4 was rolled out a year ago to address the shortcomings of testnet3.= =20 One of those shortcomings was the difficulty reset creating havoc. [0] In= =20 spite of this a similar rule was adopted for testnet4. [1] As a result,=20 testnet4 is similarly creating havoc. [2] The goal of testnet is to mimic the Bitcoin mainnet. This is why it is=20 useful to have in addition to a more control testing environment such as=20 Signet. The given rationale for a difficulty reset was to let developers=20 occasionally mine blocks on their laptop. But you cannot have your cake and= =20 eat it too: either the network is permissionless (PoW) or you assign=20 identities and privileges to some (Signet). By trying to do both at the=20 same time testnet4 created a loophole for abuse. As a result it failed on= =20 both count: it neither mimics mainnet nor allows developers to mine active= =20 blocks on their laptop. I propose to fix this by removing the difficulty reset rule from testnet4= =20 through a flag day hard fork on 2026-01-01. I picked a date well in the=20 future to minimize disruption. This leaves enough time for a patch to be=20 reviewed, merged, included in the next major Bitcoin Core release,=20 backported to previous releases and adopted by the infrastructure running= =20 on testnet4. That should be enough for a test network. Part of the root cause is violations of the gentleman's agreement to not=20 trade testnet coins for money, this results in predictable chaos with=20 people sniping the low difficulty blocks. Some believed that resetting=20 alone would discourage the conduct, but even if it had (it hadn't people=20 are selling them now) it was still likely that people would hoard up coins= =20 just in case they became tradable in the future. There is a simple fix for this which doesn't result in an operating=20 difference from Bitcoin, just an economic one. Hard fork in an=20 ultramassive premine, as large as possible but what stays with existing=20 value overflow logic. (so maybe an additional 21 million testnet btc?). This also resolves the 'actual developers can't get coins problem' and if= =20 someone starts trading tnbct for money, whomever has the premine wallet=20 should feel feel to sell into it what they can. Once they run out of coins= =20 it'll be time for another testnet reset. It may just not be possible to prevent degens from trading tn coins for=20 money, -- I mean consider the altcoins that some people spend money on :), = =20 there is basically no low bar on how crappy you can make a cryptocurrency= =20 where some scammer won't try to sell it to some fool. But what can't be=20 prevented can at least be turned into a benefit. Compared to things like just rigging the subsidy to continue forever--=20 that's a bigger consensus change compared to bitcoin, and I think it=20 doesn't have the right incentive surface... some of the most popular=20 altcoins have endless inflation and people still use them. Instead you=20 want the failure mode to be "if you do trade this for money, most of the=20 profits end up going to support a developer or development, rather than=20 whatever jerk decided to trick people into paying for it". :) Feel free to suggest yourself as the custodian of the premine. Or it could= =20 be some anonymous party if there is a concern that they'll be pestered for= =20 handouts. There should be a general expectation that the custodian of the= =20 premine will use it for the betterment of Bitcoin development, but if it's= =20 found that they're not-- solution is just another reset. :) --=20 You received this message because you are subscribed to the Google Groups "= Bitcoin Development Mailing List" group. To unsubscribe from this group and stop receiving emails from it, send an e= mail to bitcoindev+unsubscribe@googlegroups.com. To view this discussion visit https://groups.google.com/d/msgid/bitcoindev/= afb749b2-bdb8-4b2a-84ec-b703a64ad765n%40googlegroups.com. ------=_Part_348555_1472353965.1746483929876 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
On Tuesday, March 18, 2025 at 9:24:49=E2=80=AFPM UTC= Antoine Poinsot wrote:
Hi,
Testnet4 was rolled out a year ago to address the shortcomings of testnet3. One of those shortcomings was the difficulty reset creating havoc. [0] In=20 spite of this a similar rule was adopted for testnet4. [1] As a result,=20 testnet4 is similarly creating havoc. [2]
The goal of testnet is=20 to mimic the Bitcoin mainnet. This is why it is useful to have in=20 addition to a more control testing environment such as Signet.
The given rationale for a difficulty reset was to let developers=20 occasionally mine blocks on their laptop. But you cannot have your cake=20 and eat it too: either the network is permissionless (PoW) or you assign identities and privileges to some (Signet). By trying to do both at the same time testnet4 created a loophole for abuse. As a result it failed=20 on both count: it neither mimics mainnet nor allows developers to mine=20 active blocks on their laptop.
I propose to fix this by removing=20 the difficulty reset rule from testnet4 through a flag day hard fork on=20 2026-01-01. I picked a date well in the future to minimize disruption.=20 This leaves enough time for a patch to be reviewed, merged, included in=20 the next major Bitcoin Core release, backported to previous releases and adopted by the infrastructure running on testnet4. That should be=20 enough for a test network.

<= /div>
Part of the root cause is violations of the gentleman's agreement= to not trade testnet coins for money, this results in predictable chaos wi= th people sniping the low difficulty blocks. Some believed that resetting a= lone would discourage the conduct, but even if it had (it hadn't people are= selling them now) it was still likely that people would hoard up coins jus= t in case they became tradable in the future.

Th= ere is a simple fix for this which doesn't result in an operating differenc= e from Bitcoin, just an economic one.=C2=A0=C2=A0 Hard fork in an ultramass= ive premine, as large as possible but what stays with existing value overfl= ow logic. (so maybe an additional 21 million testnet btc?).

This also resolves the 'actual developers can't get coins probl= em' and if someone starts trading tnbct for money, whomever has the premine= wallet should feel feel to sell into it what they can.=C2=A0 Once they run= out of coins it'll be time for another testnet reset.

It may just not be possible to prevent degens from trading tn coins = for money, -- I mean consider the altcoins that some people spend money on = :),=C2=A0 there is basically no low bar on how crappy you can make a crypto= currency where some scammer won't try to sell it to some fool.=C2=A0 But wh= at can't be prevented can at least be turned into a benefit.

Compared to things like just rigging the subsidy to continue f= orever-- that's a bigger consensus change compared to bitcoin, and I think = it doesn't have the right incentive surface... some of the most popular alt= coins have endless inflation and people still use them.=C2=A0 Instead you w= ant the failure mode to be "if you do trade this for money, most of the pro= fits end up going to support a developer or development, rather than whatev= er jerk decided to trick people into paying for it". :)

Feel free to suggest yourself as the custodian of the premine.=C2= =A0 Or it could be some anonymous party if there is a concern that they'll = be pestered for handouts.=C2=A0 There should be a general expectation that = the custodian of the premine will use it for the betterment of Bitcoin deve= lopment,=C2=A0 but if it's found that they're not-- solution is just anothe= r reset. :)



--
You received this message because you are subscribed to the Google Groups &= quot;Bitcoin Development Mailing List" group.
To unsubscribe from this group and stop receiving emails from it, send an e= mail to bitcoind= ev+unsubscribe@googlegroups.com.
To view this discussion visit https://groups.google.com/d/msgid/bitcoind= ev/afb749b2-bdb8-4b2a-84ec-b703a64ad765n%40googlegroups.com.
------=_Part_348555_1472353965.1746483929876-- ------=_Part_348554_1988886272.1746483929876--