1
0
mirror of https://github.com/bitcoin/bips.git synced 2025-12-22 14:45:19 +00:00

Merge pull request #2051 from murchandamus/2025-12-bip3-address-activation-motion-feedback

This commit is contained in:
Jon Atack 2025-12-15 15:16:23 -08:00 committed by GitHub
commit f427295acc
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

View File

@ -30,21 +30,19 @@ BIPtypes more clearly, and generalizes the BIP process to fit the community
### What is a BIP? ### What is a BIP?
BIPs are improvement proposals for Bitcoin[^capitalization]. The main topic is information and technologies that support and expand the utility of the bitcoin BIPs are improvement proposals for Bitcoin. The main topic is information and technologies that support and expand the utility of the Bitcoin
currency. Most BIPs provide a concise, self-contained, technical description of one new concept, feature, or standard. currency. Most BIPs provide a concise, self-contained, technical description of one new concept, feature, or standard.
Some BIPs describe processes, implementation guidelines, best practices, incident reports (e.g., Some BIPs describe processes, implementation guidelines, best practices, incident reports (e.g.,
[BIP50](bip-0050.mediawiki)), or other information relevant to the Bitcoin community. However, any topics related to [BIP50](bip-0050.mediawiki)), or other information relevant to the Bitcoin community. However, any topics related to
the Bitcoin protocol, peer-to-peer network, and client software may be acceptable. the Bitcoin protocol, peer-to-peer network, and client software may be acceptable.
BIPs are intended to be a means for proposing new protocol features, coordinating client standards, and BIPs are intended to be a means for proposing new protocol features, coordinating client standards, and
documenting design decisions that have gone into implementations. A BIP may be submitted by anyone, documenting design decisions that have gone into implementations. BIPs may be submitted by anyone, provided the
provided it is the original work of its authors and the content is of high quality, e.g. does not waste content is of high quality, e.g., does not waste the communitys time.
the community's time. No content may be generated by AI/LLMs and authors must proactively disclose
up-front any use of AI/LLMs.
The scope of the BIPs The scope of the BIPs
repository is limited to BIPs that do not oppose the fundamental principle that Bitcoin constitutes a peer-to-peer repository is limited to BIPs that do not oppose the fundamental principle that Bitcoin constitutes a peer-to-peer
electronic cash system for the bitcoin currency. electronic cash system for the Bitcoin currency.
### BIP Ownership ### BIP Ownership
@ -103,7 +101,9 @@ following list and address each as appropriate.
implementers and users should deal with these incompatibilities. implementers and users should deal with these incompatibilities.
* Reference Implementation — Where applicable, a reference implementation, test vectors, and documentation must be * Reference Implementation — Where applicable, a reference implementation, test vectors, and documentation must be
finished before the BIP can be given the status "Complete". Test vectors must be provided in the BIP or finished before the BIP can be given the status "Complete". Test vectors must be provided in the BIP or
as auxiliary files (see [Auxiliary Files](#auxiliary-files)) under an acceptable license. The reference implementation can be provided in the BIP, as an auxiliary file, or per reference to a pull request that is expected to remain available permanently. as auxiliary files (see [Auxiliary Files](#auxiliary-files)) under an acceptable license. The reference implementation
can be provided in the BIP, as an auxiliary file, or per linking another code reference that is expected to remain
available permanently such as a pull request, a dedicated branch, a new repository, or similar.
* Changelog — A section to track modifications to a BIP after reaching Complete status. * Changelog — A section to track modifications to a BIP after reaching Complete status.
* Copyright — The BIP must be placed under an acceptable license (see [BIP Licensing](#bip-licensing) below). * Copyright — The BIP must be placed under an acceptable license (see [BIP Licensing](#bip-licensing) below).
@ -157,7 +157,7 @@ appear in the following order. Headers marked with "\*" are optional. All other
discussion threads on other platforms. Entries take the format "yyyy-mm-dd: URL", e.g., `2009-01-09: discussion threads on other platforms. Entries take the format "yyyy-mm-dd: URL", e.g., `2009-01-09:
https://www.mail-archive.com/cryptography@metzdowd.com/msg10142.html`, using the date and URL of the start of the https://www.mail-archive.com/cryptography@metzdowd.com/msg10142.html`, using the date and URL of the start of the
conversation. Multiple discussions should be listed on separate lines. conversation. Multiple discussions should be listed on separate lines.
* Version — The current version number of this BIP. See the [Changelog](#changelog) section below. * Version — The current version number of this BIP. See the [Changelog](#changelog-section-and-version-header) section below.
* Requires — A list of existing BIPs the new proposal depends on. If multiple BIPs * Requires — A list of existing BIPs the new proposal depends on. If multiple BIPs
are required, they should be listed in one line separated by a comma and space (e.g., "1, 2"). are required, they should be listed in one line separated by a comma and space (e.g., "1, 2").
* Replaces[^proposes-to-replace] — BIP authors may put the numbers of one or more prior BIPs in the Replaces header to recommend that their * Replaces[^proposes-to-replace] — BIP authors may put the numbers of one or more prior BIPs in the Replaces header to recommend that their
@ -231,7 +231,8 @@ specification above.
After fleshing out the proposal further and ensuring that it is of high quality and properly formatted, the authors After fleshing out the proposal further and ensuring that it is of high quality and properly formatted, the authors
should open a pull request to the [BIPs repository](https://github.com/bitcoin/bips). The document must adhere to the should open a pull request to the [BIPs repository](https://github.com/bitcoin/bips). The document must adhere to the
formatting requirements specified above and should be provided as a file named with a working title of the form formatting requirements specified above and should be provided as a file named with a working title of the form
"bip-title.[md|mediawiki]". The authors must not self-assign a number to their proposal. "bip-title.[md|mediawiki]". Only BIP Editors may assign BIP numbers. Until one has done so, authors should refer to their
BIP by name only.
BIPs that (1) adhere to the formatting requirements, (2) are on-topic, and (3) have materially progressed beyond the BIPs that (1) adhere to the formatting requirements, (2) are on-topic, and (3) have materially progressed beyond the
ideation phase, e.g., by generating substantial public discussion and commentary from diverse contributors, by ideation phase, e.g., by generating substantial public discussion and commentary from diverse contributors, by
@ -331,7 +332,7 @@ if the prior attempt had been assigned a number, the new BIP will generally be a
obvious that the new attempt directly continues work on the same idea, it may be reasonable to return the obvious that the new attempt directly continues work on the same idea, it may be reasonable to return the
Closed BIP to Draft status. Closed BIP to Draft status.
### Changelog ### Changelog Section and Version Header
To help implementers understand updates to a BIP, any changes after it has reached Complete must be tracked with version, To help implementers understand updates to a BIP, any changes after it has reached Complete must be tracked with version,
date, and description in a Changelog section sorted by most recent version first. The version number is inspired by semantic versioning (MAJOR.MINOR.PATCH). date, and description in a Changelog section sorted by most recent version first. The version number is inspired by semantic versioning (MAJOR.MINOR.PATCH).
@ -463,7 +464,7 @@ The current BIP Editors are:
The BIP Editors subscribe to the Bitcoin Development Mailing List and watch the [BIPs The BIP Editors subscribe to the Bitcoin Development Mailing List and watch the [BIPs
repository](https://github.com/bitcoin/bips). repository](https://github.com/bitcoin/bips).
When either a new BIP idea or an early draft is submitted to the mailing list, BIP Editors and other community members should comment in regard When either a new BIP idea or an early draft is submitted to the mailing list, BIP Editors or other community members should comment in regard
to: to:
* Novelty of the idea * Novelty of the idea
@ -481,22 +482,23 @@ repository](https://github.com/bitcoin/bips) where it may get further feedback.
For each new BIP pull request that comes in, an editor checks the following: For each new BIP pull request that comes in, an editor checks the following:
* The idea has been previously proposed by one of the authors to the Bitcoin Development Mailing List and discussed there * The idea has been previously proposed to the Bitcoin Development Mailing List and discussed there
* The described idea is on-topic for the repository * The described idea is on-topic for the repository
* A draft of the BIP by one of the authors has been previously discussed on the Bitcoin Development Mailing List
* Title accurately describes the content * Title accurately describes the content
* Proposal is of general interest and/or pertains to more than one Bitcoin project/implementation * Proposal is of general interest and/or pertains to more than one Bitcoin project/implementation
* Document is properly formatted * Document is properly formatted
* Licensing terms are acceptable * Licensing terms are acceptable
* Motivation, Rationale, and Backward Compatibility have been addressed * Motivation, Rationale, and Backward Compatibility have been addressed
* Specification provides sufficient detail for implementation * Specification provides sufficient detail for implementation
* The defined Layer header must be correctly assigned for the given specification * The defined Layer and Type headers must be correctly assigned for the given specification
* The BIP is ready: it is comprehensible, technically feasible and sound, and all aspects are addressed as necessary * The BIP is ready: it is comprehensible, technically feasible and sound, and all aspects are addressed as necessary
Editors do NOT evaluate whether the proposal is likely to be adopted. Editors do NOT evaluate whether the proposal is likely to be adopted.
Then, a BIP Editor will: Then, a BIP Editor will:
* Assign a BIP number and BIP type in the pull request * Assign a BIP number in the pull request
* Ensure that the BIP is listed in the [README](README.mediawiki) * Ensure that the BIP is listed in the [README](README.mediawiki)
* Merge the pull request when it is ready * Merge the pull request when it is ready
@ -522,7 +524,7 @@ mentioned in the [Changelog](#changelog) section.
- The comment system is abolished.[^comments] - The comment system is abolished.[^comments]
- A BIP in Draft or Complete status may no longer be closed solely on grounds of not making progress for three years.[^rejection] - A BIP in Draft or Complete status may no longer be closed solely on grounds of not making progress for three years.[^rejection]
- A BIP in Draft status may be updated to Closed status if it appears to have stopped making progress for at least a - A BIP in Draft status may be updated to Closed status if it appears to have stopped making progress for at least a
year and its authors do not assert within four weeks of being contacted that they are still working on it. year and its authors do not assert within four weeks of being contacted that they intend to continue working on it.
- Complete BIPs can only be moved to Closed by its authors and may remain in Complete indefinitely. - Complete BIPs can only be moved to Closed by its authors and may remain in Complete indefinitely.
- A Changelog section is introduced to track significant changes to BIPs after they have reached the Complete status. - A Changelog section is introduced to track significant changes to BIPs after they have reached the Complete status.
- Process BIPs are living documents that do not ossify and may be modified indefinitely. - Process BIPs are living documents that do not ossify and may be modified indefinitely.
@ -598,6 +600,26 @@ The Superseded-By header is replaced with the Proposed-Replacement header in all
Existing BIPs retain their license terms unchanged. Existing BIPs retain their license terms unchanged.
The License and License-Code headers of BIPs are updated to express those terms using SPDX License Expressions. The License and License-Code headers of BIPs are updated to express those terms using SPDX License Expressions.
## Changelog
* __1.4.0__ (2025-12-09):
* Revert AI guidance, add Changelog section, broaden reference implementation formats, move Type header responsibility to authors, other editorial changes
* __1.3.1__ (2025-11-10):
* Reiterate that numbers are assigned by BIP Editors in pull requests
* __1.3.0__ (2025-10-22):
* Restrict use of AI/LLM tools, require original work.
* __1.2.1__ (2025-09-19):
* Clarify that idea should be discussed on dedicated mailing list thread
* __1.2.0__ (2025-09-19):
* Rename Created header to Assigned to clarify that it holds the date of number assignment
* __1.1.0__ (2025-07-18):
* Switch to SPDX License Expressions, drop License-Code header, and make editorial changes to BIP Licensing section.
* __1.0.1__ (2025-06-27):
* Improve description of acceptance, purpose of the BIPs repository, when Draft BIPs can be closed due to not
making progress, and make other minor improvements to phrasing.
* __1.0.0__ (2025-03-18):
* Complete planned work and move to Proposed.
## Copyright ## Copyright
This BIP is licensed under the [BSD-2-Clause License](https://opensource.org/licenses/BSD-2-Clause). Some content was This BIP is licensed under the [BSD-2-Clause License](https://opensource.org/licenses/BSD-2-Clause). Some content was
@ -625,9 +647,6 @@ feedback, and helpful comments.
has frequently led to confusion, with authors using the date of opening the pull request, the date they started has frequently led to confusion, with authors using the date of opening the pull request, the date they started
writing their proposal, the date of number assignment (as prescribed), or various other dates. Aligning the name of writing their proposal, the date of number assignment (as prescribed), or various other dates. Aligning the name of
the header and the text in the preamble template with the descriptions will reduce the confusion. the header and the text in the preamble template with the descriptions will reduce the confusion.
[^capitalization]: **When is Bitcoin capitalized and when is it lowercased?**
This document uses capitalized Bitcoin to refer to the system, network and abstract concept, and only uses lowercase
bitcoin to refer to units of the bitcoin currency.
[^standard-track]: **Why was the Specification type introduced?** [^standard-track]: **Why was the Specification type introduced?**
The definitions of Informational and Standards Track BIPs caused some confusion in the past. Due to Informational The definitions of Informational and Standards Track BIPs caused some confusion in the past. Due to Informational
BIPs being described as optional, Standards Track BIPs were sometimes misunderstood to be generally recommended. BIPs being described as optional, Standards Track BIPs were sometimes misunderstood to be generally recommended.
@ -641,13 +660,13 @@ feedback, and helpful comments.
only a handful of contributors commenting at all. This led to many situations in which one or two comments ended up only a handful of contributors commenting at all. This led to many situations in which one or two comments ended up
dominating the comment summary. While some of those comments may have been representative of broadly held opinions, dominating the comment summary. While some of those comments may have been representative of broadly held opinions,
it also overstated the importance of individual comments directly in the Preamble of BIPs. As collecting feedback in it also overstated the importance of individual comments directly in the Preamble of BIPs. As collecting feedback in
this accessible fashion failed, the new process puts the onus back on the audience to make their own evaluation. this accessible fashion failed, the new process puts the burden back on the audience to make their own evaluation.
[^layer]: **Why is the layer header now permitted for other BIP types?** [^layer]: **Why is the layer header now permitted for other BIP types?**
The layer header had already been used by many Informational BIPs, so the rule that it is only available to The layer header had already been used by many Informational BIPs, so the rule that it is only available to
Standards Track BIPs is dropped. Standards Track BIPs is dropped.
[^OtherImplementations]: **What is the issue with "Other Implementations" sections in BIPs?** [^OtherImplementations]: **What is the issue with "Other Implementations" sections in BIPs?**
In the past, some BIPs had "Other Implementations" sections that caused frequent change requests to existing BIPs. In the past, some BIPs had "Other Implementations" sections that caused frequent change requests to existing BIPs.
This put an onus on the BIP authors, and frequently led to lingering pull requests due to the corresponding BIPs This put a burden on the BIP authors and BIP Editors, and frequently led to lingering pull requests due to the corresponding BIPs
authors no longer participating in the process. Many of these alternative implementations eventually became authors no longer participating in the process. Many of these alternative implementations eventually became
unmaintained or were low-quality to begin with. Therefore, "Other Implementations" sections are heavily discouraged. unmaintained or were low-quality to begin with. Therefore, "Other Implementations" sections are heavily discouraged.
[^complete]: **Why was the Proposed status renamed to Complete?** [^complete]: **Why was the Proposed status renamed to Complete?**