Skip to content

Commit 2663704

Browse files
committed
News241: add review club summary bi-16
1 parent a6562d7 commit 2663704

File tree

1 file changed

+60
-4
lines changed

1 file changed

+60
-4
lines changed

_posts/en/newsletters/2023-03-08-newsletter.md

+60-4
Original file line numberDiff line numberDiff line change
@@ -104,12 +104,64 @@ This week's newsletter FIXME:harding
104104
meeting, highlighting some of the important questions and answers. Click on a
105105
question below to see a summary of the answer from the meeting.*
106106

107-
FIXME:LarryRuane is a PR by FIXME that FIXME.
107+
[bitcoin-inquisition: Activation logic for testing consensus changes][review club bi-16]
108+
is a PR by Anthony Towns that adds a new method for activating and deactivating
109+
soft forks in the [Bitcoin Inquisition][] project, designed to be run on [signet][topic signet]
110+
and used for testing.
111+
112+
logic for the [Bitcoin Inquisition][] project, which runs on [signet][topic signet].
113+
This project was covered in [newsletter #219 bi][].
114+
115+
Specifically, this PR replaces [BIP9][] block version bit semantics with what
116+
are called [Heretical Deployments][].
117+
In contrast to consensus and relay changes on mainnet -- which are difficult
118+
and time-consuming to activate, requiring the careful building of (human)
119+
consensus and an elaborate [soft fork activation][topic soft-fork-activation]
120+
mechanism -- on a test network activating these changes can be streamlined.
121+
The PR also implements a way to deactivate changes that turn out to be buggy
122+
or undesired, which is a major departure from mainnet.
108123

109124
{% include functions/details-list.md
110-
q0="FIXME"
111-
a0="FIXME"
112-
a0link="https://bitcoincore.reviews/FIXME#l-22"
125+
q0="Why do we want to deploy consensus changes that aren’t merged
126+
into Bitcoin Core? What problems (if any) are there with merging the
127+
code into Bitcoin Core, and then testing it on signet afterward?"
128+
a0="Several reasons were discussed. We can't require mainnet users to upgrade
129+
the version of Core they're
130+
running, so even after a bug has been fixed, some users may continue
131+
running the buggy version. Depending only on regtest makes
132+
integration testing third-party software more difficult.
133+
Merging consensus changes to a separate repository is much less risky than merging to Core;
134+
adding soft fork logic, even if not activated, may introduce bugs that affect existing behavior."
135+
a0link="https://bitcoincore.reviews/bitcoin-inquisition-16#l-37"
136+
137+
q1="Heretical Deployments move through a sequence of finite-state
138+
machine states similar to the BIP9 states
139+
(`DEFINED`, `STARTED`, `LOCKED_IN`, `ACTIVE`, and `FAILED`),
140+
but with one additional state after `ACTIVE` called `DEACTIVATING`
141+
(following which is the final state, `ABANDONED`).
142+
What is the purpose of the `DEACTIVATING` state?"
143+
a1="It gives users a chance to withdraw funds they might have locked
144+
into the soft fork. Once the fork is deactivated or replaced, they
145+
might not be able to spend the funds at all -- even if they're
146+
anyone-can-spend; that doesn't work if your tx is rejected for
147+
being non-standard.
148+
The concern isn't so much the permanent
149+
loss of the limited signet funds, but rather that the UTXO set
150+
may become bloated."
151+
a1link="https://bitcoincore.reviews/bitcoin-inquisition-16#l-92"
152+
153+
q2="Why does the PR remove `min_activation_height`?"
154+
a2="We don't need a configurable interval between lock-in and activation
155+
in the new state model -- with Heretical Deployments, it activates
156+
automatically at the start of the next 432-block (3 days) state
157+
machine period (this period is fixed for Heretical Deployment)."
158+
a2link="https://bitcoincore.reviews/bitcoin-inquisition-16#l-126"
159+
160+
q3="Why is Taproot buried in this PR?"
161+
a3="If you didn't bury it, you'd have to make it a Heretical Deployment,
162+
which requires some coding effort; also that would mean that it
163+
would timeout eventually, but we want Taproot never to timeout."
164+
a3link="https://bitcoincore.reviews/bitcoin-inquisition-16#l-147"
113165
%}
114166

115167
## Releases and release candidates
@@ -148,3 +200,7 @@ Proposals (BIPs)][bips repo], and [Lightning BOLTs][bolts repo].*
148200
[sanders vault]: https://lists.linuxfoundation.org/pipermail/bitcoin-dev/2023-March/021510.html
149201
[news234 vault]: /en/newsletters/2023/01/18/#proposal-for-new-vault-specific-opcodes
150202
[news166 tluv]: /en/newsletters/2021/09/15/#covenant-opcode-proposal
203+
[newsletter #219 bi]: /en/newsletters/2022/09/28/#bitcoin-implementation-designed-for-testing-soft-forks-on-signet
204+
[review club bi-16]: https://bitcoincore.reviews/bitcoin-inquisition-16
205+
[bitcoin inquisition]: https://github.com/bitcoin-inquisition/bitcoin
206+
[heretical deployments]: https://github.com/bitcoin-inquisition/bitcoin/wiki/Heretical-Deployments

0 commit comments

Comments
 (0)