<p>"Activation of segwit is defined by BIP9. After 15 Nov 2016 and 
before 15 Nov 2017 UTC, if in a full retarget cycle at least 1916 out of
 2016 blocks is signaling readiness, segwit will be activated in the 
retarget cycle after the next one"<br></p><p>Just change BIP9 and the code to say "if in a full retarget cycle at 
least 1 out of 2016 blocks" and call it done. Or something very similar to this that effectively does the exact same thing. :)&nbsp; Wasting too much time on 
this.&nbsp; 15 Nov 2017 is plenty of time to be ready for SegWit, and if a participant is not ready by then they are either unreasonably lazy, a manipulator, or manipluted, and we don't need them.<br></p><div>If non-upgrading miners refuse to build on segwit blocks, or build on malicious invalid segwit blocks, then so be it. We fork.&nbsp; We have spent enough time trying to convince people who don't think for themselves... if they are still manipulated now then its time for us to give up on helping them see the light and instead let them learn the hard way.<br></div><div><br></div><div>Cheers,<br></div><div>Praxeology Guy<br></div><div><br></div><blockquote type="cite" class="protonmail_quote"><div>-------- Original Message --------<br></div><div>Subject: Re: [bitcoin-dev] Flag day activation of segwit<br></div><div>Local Time: March 13, 2017 5:18 PM<br></div><div>UTC Time: March 13, 2017 10:18 PM<br></div><div>From: bitcoin-dev@lists.linuxfoundation.org<br></div><div>To: shaolinfry &lt;shaolinfry@protonmail.ch&gt;, Bitcoin Protocol Discussion &lt;bitcoin-dev@lists.linuxfoundation.org&gt;<br></div><div><br></div><div dir="ltr"><div>&gt;time &gt;= 1506816000 &amp;&amp; time &lt;= 1510704000 &amp;&amp; !IsWitnessEnabled()<br></div><div>This has a different start time from the first post.<br></div><div>&gt;if (pindex-&gt;GetMedianTimePast() &gt;= 1538352000 &amp;&amp; pindex-&gt;GetMedianTimePast() &lt;= 1510704000 ...<br></div><div><br></div><div>Thanks,<br></div><div>--Nick<br></div></div><div class="gmail_extra"><div><br></div><div class="gmail_quote"><div>On Mon, Mar 13, 2017 at 4:36 AM, shaolinfry via bitcoin-dev <span dir="ltr">&lt;<a rel="noreferrer nofollow noopener" href="mailto:bitcoin-dev@lists.linuxfoundation.org">bitcoin-dev@lists.linuxfoundation.org</a>&gt;</span> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><blockquote class="m_-5341855942065665472protonmail_quote" type="cite"><div>From: <a rel="noreferrer nofollow noopener" href="mailto:luke@dashjr.org">luke@dashjr.org</a><br></div><span class=""><div>On Sunday, March 12, 2017 3:50:27 PM shaolinfry via bitcoin-dev wrote:<br></div><div>&gt; // mandatory segwit activation between Oct 1st 2017 and Nov 15th 2017<br></div><div>&gt; inclusive if (pindex-&gt;GetMedianTimePast() &gt;= 1538352000 &amp;&amp;<br></div><div>&gt; pindex-&gt;GetMedianTimePast() &lt;= 1510704000 &amp;&amp;<br></div><div>&gt; !IsWitnessEnabled(pindex-&gt;<wbr>pprev, chainparams.GetConsensus())) {<br></div><div>&gt;     if (!((pindex-&gt;nVersion &amp; VERSIONBITS_TOP_MASK) ==<br></div><div>&gt;     VERSIONBITS_TOP_BITS) &amp;&amp; (pindex-&gt;nVersion &amp; VersionBitsMask(params,<br></div><div>&gt;     Consensus::DEPLOYMENT_SEGWIT)) != 0) {<br></div><div>&gt;         return state.DoS(2, error("ConnectBlock(): relayed block must<br></div><div>&gt;         signal for segwit, please upgrade"), REJECT_INVALID,<br></div><div>&gt;         "bad-no-segwit");<br></div><div>&gt;     }<br></div><div>&gt; }<br></div><div><br></div><div>I don't think this is actually BIP 9 compatible. Once activated, the bit loses <br></div><div>its meaning and should not be set. So you need to check that it hasn't locked-<br></div><div>in already...<br></div></span></blockquote><div><br></div><div>I believe that is handled. <br></div><div><br></div><div>time &gt;= 1506816000 &amp;&amp; time &lt;= 1510704000 &amp;&amp; !IsWitnessEnabled()<br></div><div><br></div><div>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.<br></div><div><br></div><div>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.&nbsp;It also adds unnecessary complexity to an otherwise simple patch.<br></div><div><br></div><div>That said, I have no strong feelings either way on both counts, but I chose to present the simplest option first.<br></div><div><br></div><div>______________________________<wbr>_________________<br></div><div> bitcoin-dev mailing list<br></div><div> <a rel="noreferrer nofollow noopener" href="mailto:bitcoin-dev@lists.linuxfoundation.org">bitcoin-dev@lists.<wbr>linuxfoundation.org</a><br></div><div> <a href="https://lists.linuxfoundation.org/mailman/listinfo/bitcoin-dev" rel="noreferrer nofollow noopener">https://lists.linuxfoundation.<wbr>org/mailman/listinfo/bitcoin-<wbr>dev</a><br></div><div> <br></div></blockquote></div></div></blockquote><div><br></div>