Skip to content

Commit 70e84a5

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

File tree

1 file changed

+59
-4
lines changed

1 file changed

+59
-4
lines changed

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

+59-4
Original file line numberDiff line numberDiff line change
@@ -104,12 +104,62 @@ 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+
This project was covered in [newsletter #219 bi][].
112+
113+
Specifically, this PR replaces [BIP9][] block version bit semantics with what
114+
are called [Heretical Deployments][].
115+
In contrast to consensus and relay changes on mainnet -- which are difficult
116+
and time-consuming to activate, requiring the careful building of (human)
117+
consensus and an elaborate [soft fork activation][topic soft fork activation]
118+
mechanism -- on a test network activating these changes can be streamlined.
119+
The PR also implements a way to deactivate changes that turn out to be buggy
120+
or undesired, which is a major departure from mainnet.
108121

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

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

0 commit comments

Comments
 (0)