public inbox for bitcoindev@googlegroups.com
 help / color / mirror / Atom feed
From: shaolinfry <shaolinfry@protonmail•ch>
To: Luke Dashjr <luke@dashjr•org>
Cc: bitcoin-dev@lists•linuxfoundation.org
Subject: Re: [bitcoin-dev] Flag day activation of segwit
Date: Mon, 13 Mar 2017 06:36:30 -0400	[thread overview]
Message-ID: <NrY_33qfoG1ZNw_gT4ulv4sQ7eZLUTsu2VeUQAr041uRMvDrbI3vL8tW3AIDvVVsnV2juqM3fdlteLag9iQPD5yBUbdWVVdXSqlvAxfMwUA=@protonmail.ch> (raw)
In-Reply-To: <201703130301.41315.luke@dashjr.org>

[-- Attachment #1: Type: text/plain, Size: 1846 bytes --]

From: luke@dashjr•org
On Sunday, March 12, 2017 3:50:27 PM shaolinfry via bitcoin-dev wrote:
> // mandatory segwit activation between Oct 1st 2017 and Nov 15th 2017
> inclusive if (pindex->GetMedianTimePast() >= 1538352000 &&
> pindex->GetMedianTimePast() <= 1510704000 &&
> !IsWitnessEnabled(pindex->pprev, chainparams.GetConsensus())) {
> if (!((pindex->nVersion & VERSIONBITS_TOP_MASK) ==
> VERSIONBITS_TOP_BITS) && (pindex->nVersion & VersionBitsMask(params,
> Consensus::DEPLOYMENT_SEGWIT)) != 0) {
> return state.DoS(2, error("ConnectBlock(): relayed block must
> signal for segwit, please upgrade"), REJECT_INVALID,
> "bad-no-segwit");
> }
> }

I don't think this is actually BIP 9 compatible. Once activated, the bit loses
its meaning and should not be set. So you need to check that it hasn't locked-
in already...

I believe that is handled.

time >= 1506816000 && time <= 1510704000 && !IsWitnessEnabled()

Signalling is only required from October 1st until the BIP9 timeout, or, until segwit is activated. The bit becomes free after activation/timeout as per BIP9. Also, the default behaviour of BIP9 in Bitcoin Core is to signal through the LOCKED_IN period - it would be trivial to add a condition to not require mandatory signalling during LOCKED_IN but since miners signal by default during this period, I figured I would leave it.

I thought about 5% tolerance. but I don't think it makes sense since miners will already have plenty of warning this is coming up and the intent of the mandatory signalling period is quite clear. It also seems a bit weird to say "it's mandatory but not for 5%". If miners are required to signal, they need to signal. It also adds unnecessary complexity to an otherwise simple patch.

That said, I have no strong feelings either way on both counts, but I chose to present the simplest option first.

[-- Attachment #2: Type: text/html, Size: 2461 bytes --]

  reply	other threads:[~2017-03-13 10:36 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-03-12 15:50 shaolinfry
2017-03-12 17:20 ` David Vorick
2017-03-12 21:04   ` shaolinfry
2017-03-13  3:01 ` Luke Dashjr
2017-03-13 10:36   ` shaolinfry [this message]
2017-03-13 22:18     ` Nick ODell
2017-03-26 11:08       ` praxeology_guy
2017-03-13  4:59 ` Nick ODell
2017-03-13 10:35   ` David Vorick
2017-03-13 10:54   ` shaolinfry

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to='NrY_33qfoG1ZNw_gT4ulv4sQ7eZLUTsu2VeUQAr041uRMvDrbI3vL8tW3AIDvVVsnV2juqM3fdlteLag9iQPD5yBUbdWVVdXSqlvAxfMwUA=@protonmail.ch' \
    --to=shaolinfry@protonmail$(echo .)ch \
    --cc=bitcoin-dev@lists$(echo .)linuxfoundation.org \
    --cc=luke@dashjr$(echo .)org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox