mirror of
https://github.com/tendermint/tendermint.git
synced 2026-02-07 20:40:44 +00:00
1 line
5.3 KiB
JavaScript
1 line
5.3 KiB
JavaScript
(window.webpackJsonp=window.webpackJsonp||[]).push([[154],{728:function(t,e,r){"use strict";r.r(e);var o=r(1),n=Object(o.a)({},(function(){var t=this,e=t.$createElement,r=t._self._c||e;return r("ContentSlotsDistributor",{attrs:{"slot-key":t.$parent.slotKey}},[r("h1",{attrs:{id:"requests-for-comments"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#requests-for-comments"}},[t._v("#")]),t._v(" Requests for Comments")]),t._v(" "),r("p",[t._v("A Request for Comments (RFC) is a record of discussion on an open-ended topic\nrelated to the design and implementation of Tendermint Core, for which no\nimmediate decision is required.")]),t._v(" "),r("p",[t._v("The purpose of an RFC is to serve as a historical record of a high-level\ndiscussion that might otherwise only be recorded in an ad hoc way (for example,\nvia gists or Google docs) that are difficult to discover for someone after the\nfact. An RFC "),r("em",[t._v("may")]),t._v(" give rise to more specific architectural "),r("em",[t._v("decisions")]),t._v(" for\nTendermint, but those decisions must be recorded separately in "),r("a",{attrs:{href:"./../architecture"}},[t._v("Architecture\nDecision Records (ADR)")]),t._v(".")]),t._v(" "),r("p",[t._v("As a rule of thumb, if you can articulate a specific question that needs to be\nanswered, write an ADR. If you need to explore the topic and get input from\nothers to know what questions need to be answered, an RFC may be appropriate.")]),t._v(" "),r("h2",{attrs:{id:"rfc-content"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#rfc-content"}},[t._v("#")]),t._v(" RFC Content")]),t._v(" "),r("p",[t._v("An RFC should provide:")]),t._v(" "),r("ul",[r("li",[t._v("A "),r("strong",[t._v("changelog")]),t._v(", documenting when and how the RFC has changed.")]),t._v(" "),r("li",[t._v("An "),r("strong",[t._v("abstract")]),t._v(", briefly summarizing the topic so the reader can quickly tell\nwhether it is relevant to their interest.")]),t._v(" "),r("li",[t._v("Any "),r("strong",[t._v("background")]),t._v(" a reader will need to understand and participate in the\nsubstance of the discussion (links to other documents are fine here).")]),t._v(" "),r("li",[t._v("The "),r("strong",[t._v("discussion")]),t._v(", the primary content of the document.")])]),t._v(" "),r("p",[t._v("The "),r("RouterLink",{attrs:{to:"/rfc/rfc-template.html"}},[t._v("rfc-template.md")]),t._v(" file includes placeholders for these\nsections.")],1),t._v(" "),r("h2",{attrs:{id:"table-of-contents"}},[r("a",{staticClass:"header-anchor",attrs:{href:"#table-of-contents"}},[t._v("#")]),t._v(" Table of Contents")]),t._v(" "),r("ul",[r("li",[r("a",{attrs:{href:"./rfc-000-p2p-roadmap.rst"}},[t._v("RFC-000: P2P Roadmap")])]),t._v(" "),r("li",[r("a",{attrs:{href:"./rfc-001-storage-engine.rst"}},[t._v("RFC-001: Storage Engines")])]),t._v(" "),r("li",[r("RouterLink",{attrs:{to:"/rfc/rfc-002-ipc-ecosystem.html"}},[t._v("RFC-002: Interprocess Communication")])],1),t._v(" "),r("li",[r("RouterLink",{attrs:{to:"/rfc/rfc-003-performance-questions.html"}},[t._v("RFC-003: Performance Taxonomy")])],1),t._v(" "),r("li",[r("a",{attrs:{href:"./rfc-004-e2e-framework.rst"}},[t._v("RFC-004: E2E Test Framework Enhancements")])]),t._v(" "),r("li",[r("a",{attrs:{href:"./rfc-005-event-system.rst"}},[t._v("RFC-005: Event System")])]),t._v(" "),r("li",[r("RouterLink",{attrs:{to:"/rfc/rfc-006-event-subscription.html"}},[t._v("RFC-006: Event Subscription")])],1),t._v(" "),r("li",[r("RouterLink",{attrs:{to:"/rfc/rfc-007-deterministic-proto-bytes.html"}},[t._v("RFC-007: Deterministic Proto Byte Serialization")])],1),t._v(" "),r("li",[r("RouterLink",{attrs:{to:"/rfc/rfc-008-do-not-panic.html"}},[t._v("RFC-008: Don't Panic")])],1),t._v(" "),r("li",[r("RouterLink",{attrs:{to:"/rfc/rfc-009-consensus-parameter-upgrades.html"}},[t._v("RFC-009: Consensus Parameter Upgrades")])],1),t._v(" "),r("li",[r("a",{attrs:{href:"./rfc-010-p2p-light-client.rst"}},[t._v("RFC-010: P2P Light Client")])]),t._v(" "),r("li",[r("RouterLink",{attrs:{to:"/rfc/rfc-011-delete-gas.html"}},[t._v("RFC-011: Delete Gas")])],1),t._v(" "),r("li",[r("RouterLink",{attrs:{to:"/rfc/rfc-012-custom-indexing.html"}},[t._v("RFC-012: Event Indexing Revisited")])],1),t._v(" "),r("li",[r("RouterLink",{attrs:{to:"/rfc/rfc-013-abci++.html"}},[t._v("RFC-013: ABCI++")])],1),t._v(" "),r("li",[r("RouterLink",{attrs:{to:"/rfc/rfc-014-semantic-versioning.html"}},[t._v("RFC-014: Semantic Versioning")])],1),t._v(" "),r("li",[r("RouterLink",{attrs:{to:"/rfc/rfc-015-abci++-tx-mutation.html"}},[t._v("RFC-015: ABCI++ Tx Mutation")])],1),t._v(" "),r("li",[r("RouterLink",{attrs:{to:"/rfc/rfc-016-node-architecture.html"}},[t._v("RFC-016: Node Architecture")])],1),t._v(" "),r("li",[r("RouterLink",{attrs:{to:"/rfc/rfc-017-abci++-vote-extension-propag.html"}},[t._v("RFC-017: ABCI++ Vote Extension Propagation")])],1),t._v(" "),r("li",[r("RouterLink",{attrs:{to:"/rfc/rfc-018-bls-agg-exploration.html"}},[t._v("RFC-018: BLS Signature Aggregation Exploration")])],1),t._v(" "),r("li",[r("RouterLink",{attrs:{to:"/rfc/rfc-019-config-version.html"}},[t._v("RFC-019: Configuration File Versioning")])],1),t._v(" "),r("li",[r("a",{attrs:{href:"./rfc-020-onboarding-projects.rst"}},[t._v("RFC-020: Onboarding Projects")])]),t._v(" "),r("li",[r("RouterLink",{attrs:{to:"/rfc/rfc-021-socket-protocol.html"}},[t._v("RFC-021: The Future of the Socket Protocol")])],1)])])}),[],!1,null,null,null);e.default=n.exports}}]); |