Direct Integration with Bitcoin

Hi everyone,

I wanted to share an update about the Bitcoin testnet canister. As some of you might have noticed, the Bitcoin testnet canisters has not been responding to requests for about 2 weeks now. The reason for this is that it got trapped into the wrong fork of the chain after one of the “block storms” that happen during a difficulty reset on the testnet network.

The reason for that was the use of a lower stability threshold (50 instead of the more appropriate 144 one). This change had been made in the past in response to previous issues as a temporary measure but it was not reverted after those issues were fixed with some of the last upgrades.

In order to resolve this, we have decided to re-bootstrap the Bitcoin testnet. This means computing its state offline up to some height and having the canister start from that point onwards. This process involves two NNS proposals, one to install an uploader canister which is used to upload pre-computed state and another one that upgrades to the Bitcoin canister Wasm and continues syncing from that height on.

Over the last couple of days, we attempted to submit the first proposal of the process. Unfortunately, because the process is undocumented and was pieced together from past notes, there were 2 proposals that were submitted that are wrong (incorrect wasm and missing init arg respectively) and the DFINITY Foundation plans to reject as a result. These are proposals 133164 and 133179. We plan to improve the documentation of the re-bootstrap process better to avoid this in the future.

We invite the community to adopt proposal 133186 which is the correct one to install the uploader canister so that the process of uploading the state can start.

7 Likes