Skip to content
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.

Commit f617b11

Browse files
jmaliceviccasonthanethomson
authoredJan 25, 2023
.md - replace references to TM (celestiaorg#148)
* Replace references to tm * Fix bft name * Applied PR comments * replace tag * Apply suggestions from code review Co-authored-by: Daniel <[email protected]> * Removed Core after cometbft * removed amino mentioning from doc * Apply suggestions from code review Co-authored-by: Thane Thomson <[email protected]> Co-authored-by: Daniel <[email protected]> * Updated files based on PR review Co-authored-by: Daniel <[email protected]> Co-authored-by: Thane Thomson <[email protected]>
1 parent a8e67cc commit f617b11

6 files changed

+119
-280
lines changed
 

‎CODE_OF_CONDUCT.md

+8-8
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,13 @@
1-
# The Tendermint Code of Conduct
1+
# The CometBFT Code of Conduct
22

3-
This code of conduct applies to all projects run by the Tendermint/COSMOS team
4-
and hence to Tendermint.
3+
This code of conduct applies to all projects run by the CometBFT/COSMOS team
4+
and hence to CometBFT.
55

66
----
77

88
# Conduct
99

10-
## Contact: conduct@tendermint.com
10+
## Contact: conduct@cometbft.com
1111

1212
* We are committed to providing a friendly, safe and welcoming environment for
1313
all, regardless of level of experience, gender, gender identity and
@@ -50,7 +50,7 @@ These are the policies for upholding our community’s standards of conduct. If
5050
you feel that a thread needs moderation, please contact the above mentioned
5151
person.
5252

53-
1. Remarks that violate the Tendermint/COSMOS standards of conduct, including
53+
1. Remarks that violate the CometBFT/COSMOS standards of conduct, including
5454
hateful, hurtful, oppressive, or exclusionary remarks, are not allowed.
5555
(Cursing is allowed, but never targeting another user, and never in a hateful
5656
manner.)
@@ -77,7 +77,7 @@ person.
7777
moderator creates an inappropriate situation, they should expect less leeway
7878
than others.
7979

80-
In the Tendermint/COSMOS community we strive to go the extra step to look out
80+
In the CometBFT/COSMOS community we strive to go the extra step to look out
8181
for each other. Don’t just aim to be technically unimpeachable, try to be your
8282
best self. In particular, avoid flirting with offensive or sensitive issues,
8383
particularly if they’re off-topic; this all too often leads to unnecessary
@@ -93,8 +93,8 @@ get along and we are all here first and foremost because we want to talk
9393
about cool technology. You will find that people will be eager to assume
9494
good intent and forgive as long as you earn their trust.
9595

96-
The enforcement policies listed above apply to all official Tendermint/COSMOS
97-
venues. For other projects adopting the Tendermint/COSMOS Code of Conduct,
96+
The enforcement policies listed above apply to all official CometBFT/COSMOS
97+
venues. For other projects adopting the CometBFT/COSMOS Code of Conduct,
9898
please contact the maintainers of those projects for enforcement. If you wish to
9999
use this code of conduct for your own project, consider explicitly mentioning
100100
your moderation policy or making a copy with your own moderation policy so as to

‎CONTRIBUTING.md

+36-40
Original file line numberDiff line numberDiff line change
@@ -1,23 +1,23 @@
11
# Contributing
22

3-
Thank you for your interest in contributing to Tendermint! Before
3+
Thank you for your interest in contributing to CometBFT! Before
44
contributing, it may be helpful to understand the goal of the project. The goal
5-
of Tendermint is to develop a BFT consensus engine robust enough to
5+
of CometBFT is to develop a BFT consensus engine robust enough to
66
support permissionless value-carrying networks. While all contributions are
77
welcome, contributors should bear this goal in mind in deciding if they should
8-
target the main Tendermint project or a potential fork. When targeting the
9-
main Tendermint project, the following process leads to the best chance of
8+
target the main CometBFT project or a potential fork. When targeting the
9+
main CometBFT project, the following process leads to the best chance of
1010
landing changes in `main`.
1111

1212
All work on the code base should be motivated by a [Github
13-
Issue](https://github.com/tendermint/tendermint/issues).
14-
[Search](https://github.com/tendermint/tendermint/issues?q=is%3Aopen+is%3Aissue+label%3A%22help+wanted%22)
13+
Issue](https://github.com/cometbft/cometbft/issues).
14+
[Search](https://github.com/cometbft/cometbft/issues?q=is%3Aopen+is%3Aissue+label%3A%22good+first+issue%22)
1515
is a good place to start when looking for places to contribute. If you
1616
would like to work on an issue which already exists, please indicate so
1717
by leaving a comment.
1818

1919
All new contributions should start with a [Github
20-
Issue](https://github.com/tendermint/tendermint/issues/new/choose). The
20+
Issue](https://github.com/cometbft/cometbft/issues/new/choose). The
2121
issue helps capture the problem you're trying to solve and allows for
2222
early feedback. Once the issue is created the process can proceed in different
2323
directions depending on how well defined the problem and potential
@@ -26,8 +26,8 @@ will indicate their support with a heartfelt emoji.
2626

2727
If the issue would benefit from thorough discussion, maintainers may
2828
request that you create a [Request For
29-
Comment](https://github.com/tendermint/tendermint/tree/main/docs/rfc)
30-
in the Tendermint spec repo. Discussion
29+
Comment](https://github.com/cometbft/cometbft/tree/main/docs/rfc)
30+
in the CometBFT spec repo. Discussion
3131
at the RFC stage will build collective understanding of the dimensions
3232
of the problems and help structure conversations around trade-offs.
3333

@@ -57,23 +57,24 @@ Each stage of the process is aimed at creating feedback cycles which align contr
5757
- Contributors don’t waste their time implementing/proposing features which won’t land in `main`.
5858
- Maintainers have the necessary context in order to support and review contributions.
5959

60+
6061
## Forking
6162

6263
Please note that Go requires code to live under absolute paths, which complicates forking.
63-
While my fork lives at `https://github.com/ebuchman/tendermint`,
64-
the code should never exist at `$GOPATH/src/github.com/ebuchman/tendermint`.
64+
While my fork lives at `https://github.com/ebuchman/cometbft`,
65+
the code should never exist at `$GOPATH/src/github.com/ebuchman/cometbft`.
6566
Instead, we use `git remote` to add the fork as a new remote for the original repo,
66-
`$GOPATH/src/github.com/tendermint/tendermint`, and do all the work there.
67+
`$GOPATH/src/github.com/cometbft/cometbft`, and do all the work there.
6768

6869
For instance, to create a fork and work on a branch of it, I would:
6970

7071
- Create the fork on GitHub, using the fork button.
71-
- Go to the original repo checked out locally (i.e. `$GOPATH/src/github.com/tendermint/tendermint`)
72+
- Go to the original repo checked out locally (i.e. `$GOPATH/src/github.com/cometbft/cometbft`)
7273
- `git remote rename origin upstream`
7374
- `git remote add origin git@github.com:ebuchman/basecoin.git`
7475

75-
Now `origin` refers to my fork and `upstream` refers to the Tendermint version.
76-
So I can `git push -u origin main` to update my fork, and make pull requests to tendermint from there.
76+
Now `origin` refers to my fork and `upstream` refers to the CometBFT version.
77+
So I can `git push -u origin main` to update my fork, and make pull requests to CometBFT from there.
7778
Of course, replace `ebuchman` with your git handle.
7879

7980
To pull in updates from the origin repo, run
@@ -85,7 +86,7 @@ To pull in updates from the origin repo, run
8586

8687
We use [go modules](https://github.com/golang/go/wiki/Modules) to manage dependencies.
8788

88-
That said, the `main` branch of every Tendermint repository should just build
89+
That said, the `main` branch of every CometBFT repository should just build
8990
with `go get`, which means they should be kept up-to-date with their
9091
dependencies so we can get away with telling people they can just `go get` our
9192
software.
@@ -100,28 +101,27 @@ up-to-date.
100101

101102
When updating dependencies, please only update the particular dependencies you
102103
need. Instead of running `go get -u=patch`, which will update anything,
103-
specify exactly the dependency you want to update, eg.
104-
`GO111MODULE=on go get -u github.com/tendermint/go-amino@master`.
104+
specify exactly the dependency you want to update.
105105

106106
## Protobuf
107107

108108
We use [Protocol Buffers](https://developers.google.com/protocol-buffers) along
109109
with [`gogoproto`](https://github.com/cosmos/gogoproto) to generate code for use
110-
across Tendermint Core.
110+
across CometBFT.
111111

112112
To generate proto stubs, lint, and check protos for breaking changes, you will
113113
need to install [buf](https://buf.build/) and `gogoproto`. Then, from the root
114114
of the repository, run:
115115

116116
```bash
117-
# Lint all of the .proto files in proto/tendermint
117+
# Lint all of the .proto files
118118
make proto-lint
119119

120120
# Check if any of your local changes (prior to committing to the Git repository)
121121
# are breaking
122122
make proto-check-breaking
123123

124-
# Generate Go code from the .proto files in proto/tendermint
124+
# Generate Go code from the .proto files
125125
make proto-gen
126126
```
127127

@@ -149,8 +149,15 @@ If you are a VS Code user, you may want to add the following to your `.vscode/se
149149

150150
## Changelog
151151

152+
To manage and generate our changelog, we currently use [unclog](https://github.com/informalsystems/unclog).
153+
152154
Every fix, improvement, feature, or breaking change should be made in a
153-
pull-request that includes an update to the `CHANGELOG_PENDING.md` file.
155+
pull-request that includes a file `.changelog/unreleased/${category}/${issue-or-pr-number}-${description}.md`, where:
156+
- `category` is one of `improvements`, `breaking-changes`, `bug-fixes`, `features` and if multiple apply, create multiple files;
157+
- `description` is a short (4 to 6 word), hiphen separated description of the fix, starting the component changed; and,
158+
- `issue or PR number' is the CometBFT issue number, if one exists, or the PR number, otherwise.
159+
160+
For examples, see the [.changelog](.changelog) folder.
154161

155162
A feature can also be worked on a feature branch, if its size and/or risk
156163
justifies it (see #branching-model-and-release) below.
@@ -168,7 +175,7 @@ Some good examples of changelog entry descriptions:
168175
- [consensus] \#1111 Small transaction throughput improvement (approximately
169176
3-5\% from preliminary tests) through refactoring the way we use channels
170177
- [mempool] \#1112 Refactor Go API to be able to easily swap out the current
171-
mempool implementation in Tendermint forks
178+
mempool implementation in CometBFT forks
172179
- [p2p] \#1113 Automatically ban peers when their messages are unsolicited or
173180
are received too frequently
174181
```
@@ -242,13 +249,13 @@ easy to reference the pull request where a change was introduced.
242249

243250
The latest state of development is on `main`, which must never fail `make test`. _Never_ force push `main`, unless fixing broken git history (which we rarely do anyways).
244251

245-
To begin contributing, create a development branch either on `github.com/tendermint/tendermint`, or your fork (using `git remote add origin`).
252+
To begin contributing, create a development branch either on `github.com/cometbft/cometbft`, or your fork (using `git remote add origin`).
246253

247-
Make changes, and before submitting a pull request, update the `CHANGELOG_PENDING.md` to record your change. Also, run either `git rebase` or `git merge` on top of the latest `main`. (Since pull requests are squash-merged, either is fine!)
254+
Make changes, and before submitting a pull request, update the changelog to record your change. Also, run either `git rebase` or `git merge` on top of the latest `main`. (Since pull requests are squash-merged, either is fine!)
248255

249256
Update the `UPGRADING.md` if the change you've made is breaking and the
250257
instructions should be in place for a user on how he/she can upgrade its
251-
software (ABCI application, Tendermint-based blockchain, light client, wallet).
258+
software (ABCI application, CometBFT blockchain, light client, wallet).
252259

253260
Once you have submitted a pull request label the pull request with either `R:minor`, if the change should be included in the next minor release, or `R:major`, if the change is meant for a major release.
254261

@@ -282,7 +289,8 @@ After this, you can open a PR. Please note in the PR body if there were merge co
282289

283290
### Git Commit Style
284291

285-
We follow the [Go style guide on commit messages](https://tip.golang.org/doc/contribute.html#commit_messages). Write concise commits that start with the package name and have a description that finishes the sentence "This change modifies Tendermint to...". For example,
292+
We follow the [Go style guide on commit messages](https://tip.golang.org/doc/contribute.html#commit_messages). Write concise commits that start with the package
293+
name and have a description that finishes the sentence "This change modifies CometBFT to...". For example,
286294

287295
```sh
288296
cmd/debug: execute p.Signal only when p is not nil
@@ -314,7 +322,7 @@ Run: `make test_integrations`
314322

315323
### End-to-end tests
316324

317-
End-to-end tests are used to verify a fully integrated Tendermint network.
325+
End-to-end tests are used to verify a fully integrated CometBFT network.
318326

319327
See [README](./test/e2e/README.md) for details.
320328

@@ -356,18 +364,6 @@ most probably (99.9%)*.
356364
`./test/fuzz` directory. See [README.md](./test/fuzz/README.md) for details.
357365

358366
Run: `cd test/fuzz && make fuzz-{PACKAGE-COMPONENT}`
359-
360-
### Jepsen tests (ADVANCED)
361-
362-
*NOTE: if you're just submitting your first PR, you won't need to touch these
363-
most probably (99.9%)*.
364-
365-
[Jepsen](http://jepsen.io/) tests are used to verify the
366-
[linearizability](https://jepsen.io/consistency/models/linearizable) property
367-
of the Tendermint consensus. They are located in a separate repository
368-
-> <https://github.com/tendermint/jepsen>. Please refer to its README for more
369-
information.
370-
371367
### RPC Testing
372368

373369
**If you contribute to the RPC endpoints it's important to document your

‎PHILOSOPHY.md

-158
This file was deleted.

‎RELEASES.md

+37-40
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
# Releases
22

3-
Tendermint uses modified [semantic versioning](https://semver.org/) with each
4-
release following a `vX.Y.Z` format. Tendermint is currently on major version 0
3+
CometBFT uses modified [semantic versioning](https://semver.org/) with each
4+
release following a `vX.Y.Z` format. CometBFT is currently on major version 0
55
and uses the minor version to signal breaking changes. The `main` branch is
66
used for active development and thus it is not advisable to build against it.
77

@@ -10,7 +10,7 @@ specified using tags and are built from long-lived "backport" branches that are
1010
cut from `main` when the release process begins. Each release "line" (e.g.
1111
0.34 or 0.33) has its own long-lived backport branch, and the backport branches
1212
have names like `v0.34.x` or `v0.33.x` (literally, `x`; it is not a placeholder
13-
in this case). Tendermint only maintains the last two releases at a time (the
13+
in this case). CometBFT only maintains the last two releases at a time (the
1414
oldest release is predominantly just security patches).
1515

1616
## Backporting
@@ -36,8 +36,8 @@ v0.25.0, you get to have the honor of creating the backport branch!
3636
Note that, after creating the backport branch, you'll also need to update the
3737
tags on `main` so that `go mod` is able to order the branches correctly. You
3838
should tag `main` with a "dev" tag that is "greater than" the backport
39-
branches tags. See [#6072](https://github.com/tendermint/tendermint/pull/6072)
40-
for more context.
39+
branches tags. Otherwise, `go mod` does not 'know' whether commits on `main`
40+
come before or after the release.
4141

4242
In the following example, we'll assume that we're making a backport branch for
4343
the 0.38.x line.
@@ -70,16 +70,16 @@ the 0.38.x line.
7070
The following links are to always point to `main`, regardless of where they
7171
occur in the codebase:
7272

73-
* `https://github.com/tendermint/tendermint/blob/main/LICENSE`
73+
* `https://github.com/cometbft/cometbft/blob/main/LICENSE`
7474

7575
Be sure to search for all of the following links and replace `main` with your
7676
corresponding branch label or version (e.g. `v0.38.x` or `v0.38`):
7777

78-
* `github.com/tendermint/tendermint/blob/main` ->
79-
`github.com/tendermint/tendermint/blob/v0.38.x`
80-
* `github.com/tendermint/tendermint/tree/main` ->
81-
`github.com/tendermint/tendermint/tree/v0.38.x`
82-
* `docs.tendermint.com/main` -> `docs.tendermint.com/v0.38`
78+
* `github.com/cometbft/cometbft/blob/main` ->
79+
`github.com/cometbft/cometbft/blob/v0.38.x`
80+
* `github.com/cometbft/cometbft/tree/main` ->
81+
`github.com/cometbft/cometbft/tree/v0.38.x`
82+
* `docs.cometbft.com/main` -> `docs.cometbft.com/v0.38`
8383

8484
Once you have updated all of the relevant documentation:
8585

@@ -99,14 +99,14 @@ After doing these steps, go back to `main` and do the following:
9999
[e2e-nightly-main.yml][e2e] for an example.)
100100

101101
2. Add a new section to the Mergify config (`.github/mergify.yml`) to enable the
102-
backport bot to work on this branch, and add a corresponding `S:backport-to-v0.38.x`
103-
[label](https://github.com/tendermint/tendermint/labels) so the bot can be triggered.
102+
backport bot to work on this branch, and add a corresponding `backport-to-v0.38.x`
103+
[label](https://github.com/cometbft/cometbft/labels) so the bot can be triggered.
104104

105105
3. Add a new section to the Dependabot config (`.github/dependabot.yml`) to
106106
enable automatic update of Go dependencies on this branch. Copy and edit one
107107
of the existing branch configurations to set the correct `target-branch`.
108108

109-
[e2e]: https://github.com/tendermint/tendermint/blob/main/.github/workflows/e2e-nightly-main.yml
109+
[e2e]: https://github.com/cometbft/cometbft/blob/main/.github/workflows/e2e-nightly-main.yml
110110

111111
## Pre-releases
112112

@@ -148,7 +148,7 @@ backport branch (see above). Otherwise:
148148
1. Start from the backport branch (e.g. `v0.38.x`).
149149
2. Run the integration tests and the E2E nightlies
150150
(which can be triggered from the GitHub UI;
151-
e.g., <https://github.com/tendermint/tendermint/actions/workflows/e2e-nightly-37x.yml>).
151+
e.g., <https://github.com/cometbft/cometbft/actions/workflows/e2e-nightly-37x.yml>).
152152
3. Prepare the pre-release documentation:
153153
* Ensure that all relevant changes are in the `CHANGELOG_PENDING.md` file.
154154
This file's contents must only be included in the `CHANGELOG.md` when we
@@ -243,13 +243,13 @@ To create a patch release:
243243
## Minor Release Checklist
244244

245245
The following set of steps are performed on all releases that increment the
246-
_minor_ version, e.g. v0.25 to v0.26. These steps ensure that Tendermint is well
246+
_minor_ version, e.g. v0.25 to v0.26. These steps ensure that CometBFT is well
247247
tested, stable, and suitable for adoption by the various diverse projects that
248-
rely on Tendermint.
248+
rely on CometBFT.
249249

250250
### Feature Freeze
251251

252-
Ahead of any minor version release of Tendermint, the software enters 'Feature
252+
Ahead of any minor version release of CometBFT, the software enters 'Feature
253253
Freeze' for at least two weeks. A feature freeze means that _no_ new features
254254
are added to the code being prepared for release. No code changes should be made
255255
to the code being released that do not directly improve pressing issues of code
@@ -263,42 +263,39 @@ quality. The following must not be merged during a feature freeze:
263263
code.
264264

265265
This period directly follows the creation of the [backport
266-
branch](#creating-a-backport-branch). The Tendermint team instead directs all
266+
branch](#creating-a-backport-branch). The CometBFT team instead directs all
267267
attention to ensuring that the existing code is stable and reliable. Broken
268268
tests are fixed, flakey-tests are remedied, end-to-end test failures are
269269
thoroughly diagnosed and all efforts of the team are aimed at improving the
270270
quality of the code. During this period, the upgrade harness tests are run
271-
repeatedly and a variety of in-house testnets are run to ensure Tendermint
271+
repeatedly and a variety of in-house testnets are run to ensure CometBFT
272272
functions at the scale it will be used by application developers and node
273273
operators.
274274

275275
### Nightly End-To-End Tests
276276

277-
The Tendermint team maintains [a set of end-to-end
278-
tests](https://github.com/tendermint/tendermint/blob/main/test/e2e/README.md#L1)
277+
The CometBFT team maintains [a set of end-to-end
278+
tests](https://github.com/cometbft/cometbft/blob/main/test/e2e/README.md#L1)
279279
that run each night on the latest commit of the project and on the code in the
280280
tip of each supported backport branch. These tests start a network of
281-
containerized Tendermint processes and run automated checks that the network
281+
containerized CometBFT processes and run automated checks that the network
282282
functions as expected in both stable and unstable conditions. During the feature
283283
freeze, these tests are run nightly and must pass consistently for a release of
284-
Tendermint to be considered stable.
284+
CometBFT to be considered stable.
285285

286286
### Upgrade Harness
287287

288-
> TODO(williambanfield): Change to past tense and clarify this section once
289-
> upgrade harness is complete.
290-
291-
The Tendermint team is creating an upgrade test harness to exercise the workflow
292-
of stopping an instance of Tendermint running one version of the software and
288+
The CometBFT team is creating an upgrade test harness to exercise the workflow
289+
of stopping an instance of CometBFT running one version of the software and
293290
starting up the same application running the next version. To support upgrade
294-
testing, we will add the ability to terminate the Tendermint process at specific
291+
testing, we will add the ability to terminate the CometBFT process at specific
295292
pre-defined points in its execution so that we can verify upgrades work in a
296293
representative sample of stop conditions.
297294

298295
### Large Scale Testnets
299296

300-
The Tendermint end-to-end tests run a small network (~10s of nodes) to exercise
301-
basic consensus interactions. Real world deployments of Tendermint often have
297+
The CometBFT end-to-end tests run a small network (~10s of nodes) to exercise
298+
basic consensus interactions. Real world deployments of CometBFT often have
302299
over a hundred nodes just in the validator set, with many others acting as full
303300
nodes and sentry nodes. To gain more assurance before a release, we will also
304301
run larger-scale test networks to shake out emergent behaviors at scale.
@@ -325,11 +322,11 @@ node:
325322

326323
For these tests we intentionally target low-powered host machines (with low core
327324
counts and limited memory) to ensure we observe similar kinds of resource contention
328-
and limitation that real-world deployments of Tendermint experience in production.
325+
and limitation that real-world deployments of CometBFT experience in production.
329326

330327
#### 200 Node Testnet
331328

332-
To test the stability and performance of Tendermint in a real world scenario,
329+
To test the stability and performance of CometBFT in a real world scenario,
333330
a 200 node test network is run. The network comprises 5 seed nodes, 100
334331
validators and 95 non-validating full nodes. All nodes begin by dialing
335332
a subset of the seed nodes to discover peers. The network is run for several
@@ -338,22 +335,22 @@ critical systems, testnets of larger sizes should be considered.
338335

339336
#### Rotating Node Testnet
340337

341-
Real-world deployments of Tendermint frequently see new nodes arrive and old
342-
nodes exit the network. The rotating node testnet ensures that Tendermint is
338+
Real-world deployments of CometBFT frequently see new nodes arrive and old
339+
nodes exit the network. The rotating node testnet ensures that CometBFT is
343340
able to handle this reliably. In this test, a network with 10 validators and
344341
3 seed nodes is started. A rolling set of 25 full nodes are started and each
345342
connects to the network by dialing one of the seed nodes. Once the node is able
346343
to blocksync to the head of the chain and begins producing blocks using
347-
Tendermint consensus it is stopped. Once stopped, a new node is started and
344+
consensus it is stopped. Once stopped, a new node is started and
348345
takes its place. This network is run for several days.
349346

350347
#### Network Partition Testnet
351348

352-
Tendermint is expected to recover from network partitions. A partition where no
349+
CometBFT is expected to recover from network partitions. A partition where no
353350
subset of the nodes is left with the super-majority of the stake is expected to
354351
stop making blocks. Upon alleviation of the partition, the network is expected
355352
to once again become fully connected and capable of producing blocks. The
356-
network partition testnet ensures that Tendermint is able to handle this
353+
network partition testnet ensures that CometBFT is able to handle this
357354
reliably at scale. In this test, a network with 100 validators and 95 full
358355
nodes is started. All validators have equal stake. Once the network is
359356
producing blocks, a set of firewall rules is deployed to create a partitioned
@@ -364,7 +361,7 @@ producing blocks.
364361

365362
#### Absent Stake Testnet
366363

367-
Tendermint networks often run with _some_ portion of the voting power offline.
364+
CometBFT networks often run with _some_ portion of the voting power offline.
368365
The absent stake testnet ensures that large networks are able to handle this
369366
reliably. A set of 150 validator nodes and three seed nodes is started. The set
370367
of 150 validators is configured to only possess a cumulative stake of 67% of

‎SECURITY.md

+30-26
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,12 @@
11
# Security
22

3+
**NOTE** The security process outlined in this document is outdated and is currently
4+
being defined (see https://github.com/cometbft/cometbft/issues/191).
5+
6+
---------------------------
37
## Reporting a Bug
48

5-
As part of our [Coordinated Vulnerability Disclosure Policy](https://tendermint.com/security),
9+
As part of our [Coordinated Vulnerability Disclosure Policy](https://cometbft.com/security),
610
we operate a [bug bounty][hackerone]. See the policy for more
711
details on submissions and rewards, and see "Example Vulnerabilities" (below)
812
for examples of the kinds of bugs we're most interested in.
@@ -18,7 +22,7 @@ We require that all researchers:
1822
disruption to production systems (including but not limited to the Cosmos
1923
Hub), and destruction of data
2024
* Keep any information about vulnerabilities that you’ve discovered confidential
21-
between yourself and the Tendermint Core engineering team until the issue has
25+
between yourself and the CometBFT engineering team until the issue has
2226
been resolved and disclosed
2327
* Avoid posting personally identifiable information, privately or publicly
2428

@@ -31,40 +35,40 @@ If you follow these guidelines when reporting an issue to us, we commit to:
3135

3236
## Disclosure Process
3337

34-
Tendermint Core uses the following disclosure process:
38+
CometBFT uses the following disclosure process:
3539

36-
1. Once a security report is received, the Tendermint Core team works to verify
40+
1. Once a security report is received, the CometBFT team works to verify
3741
the issue and confirm its severity level using CVSS.
38-
2. The Tendermint Core team collaborates with the Gaia team to determine the
42+
2. The CometBFT team collaborates with the Gaia team to determine the
3943
vulnerability’s potential impact on the Cosmos Hub.
40-
3. Patches are prepared for eligible releases of Tendermint in private
44+
3. Patches are prepared for eligible releases of CometBFT in private
4145
repositories. See “Supported Releases” below for more information on which
4246
releases are considered eligible.
4347
4. If it is determined that a CVE-ID is required, we request a CVE through a CVE
4448
Numbering Authority.
45-
5. We notify the community that a security release is coming, to give users time
49+
<!-- 5. We notify the community that a security release is coming, to give users time
4650
to prepare their systems for the update. Notifications can include forum
4751
posts, tweets, and emails to partners and validators, including emails sent
48-
to the [Tendermint Security Mailing List][tmsec-mailing].
49-
6. 24 hours following this notification, the fixes are applied publicly and new
52+
to the [CometBFT Security Mailing List][tmsec-mailing]. -->
53+
1. 24 hours following this notification, the fixes are applied publicly and new
5054
releases are issued.
51-
7. Cosmos SDK and Gaia update their Tendermint Core dependencies to use these
55+
2. Cosmos SDK and Gaia update their CometBFT dependencies to use these
5256
releases, and then themselves issue new releases.
53-
8. Once releases are available for Tendermint Core, Cosmos SDK and Gaia, we
57+
3. Once releases are available for CometBFT, Cosmos SDK and Gaia, we
5458
notify the community, again, through the same channels as above. We also
5559
publish a Security Advisory on Github and publish the CVE, as long as neither
5660
the Security Advisory nor the CVE include any information on how to exploit
5761
these vulnerabilities beyond what information is already available in the
5862
patch itself.
59-
9. Once the community is notified, we will pay out any relevant bug bounties to
63+
4. Once the community is notified, we will pay out any relevant bug bounties to
6064
submitters.
61-
10. One week after the releases go out, we will publish a post with further
65+
5. One week after the releases go out, we will publish a post with further
6266
details on the vulnerability as well as our response to it.
6367

6468
This process can take some time. Every effort will be made to handle the bug in
6569
as timely a manner as possible, however it's important that we follow the
6670
process described above to ensure that disclosures are handled consistently and
67-
to keep Tendermint Core and its downstream dependent projects--including but not
71+
to keep CometBFT and its downstream dependent projects--including but not
6872
limited to Gaia and the Cosmos Hub--as secure as possible.
6973

7074
### Example Timeline
@@ -78,25 +82,25 @@ multiple people can play each role and each person may play multiple roles.
7882
1. Request CVE number (ADMIN)
7983
2. Gather emails and other contact info for validators (COMMS LEAD)
8084
3. Create patches in a private security repo, and ensure that PRs are open
81-
targeting all relevant release branches (TENDERMINT ENG, TENDERMINT LEAD)
82-
4. Test fixes on a testnet (TENDERMINT ENG, COSMOS SDK ENG)
83-
5. Write “Security Advisory” for forum (TENDERMINT LEAD)
85+
targeting all relevant release branches (CometBFT ENG, CometBFT LEAD)
86+
4. Test fixes on a testnet (CometBFT ENG, COSMOS SDK ENG)
87+
5. Write “Security Advisory” for forum (CometBFT LEAD)
8488

8589
#### 24 Hours Before Release Time
8690

87-
1. Post “Security Advisory” pre-notification on forum (TENDERMINT LEAD)
91+
1. Post “Security Advisory” pre-notification on forum (CometBFT LEAD)
8892
2. Post Tweet linking to forum post (COMMS LEAD)
8993
3. Announce security advisory/link to post in various other social channels
9094
(Telegram, Discord) (COMMS LEAD)
9195
4. Send emails to validators or other users (PARTNERSHIPS LEAD)
9296

9397
#### Release Time
9498

95-
1. Cut Tendermint releases for eligible versions (TENDERMINT ENG, TENDERMINT
99+
1. Cut CometBFT releases for eligible versions (CometBFT ENG, CometBFT
96100
LEAD)
97101
2. Cut Cosmos SDK release for eligible versions (COSMOS ENG)
98102
3. Cut Gaia release for eligible versions (GAIA ENG)
99-
4. Post “Security releases” on forum (TENDERMINT LEAD)
103+
4. Post “Security releases” on forum (CometBFT LEAD)
100104
5. Post new Tweet linking to forum post (COMMS LEAD)
101105
6. Remind everyone via social channels (Telegram, Discord) that the release is
102106
out (COMMS LEAD)
@@ -106,23 +110,23 @@ multiple people can play each role and each person may play multiple roles.
106110

107111
#### After Release Time
108112

109-
1. Write forum post with exploit details (TENDERMINT LEAD)
113+
1. Write forum post with exploit details (CometBFT LEAD)
110114
2. Approve pay-out on HackerOne for submitter (ADMIN)
111115

112116
#### 7 Days After Release Time
113117

114118
1. Publish CVE if it has not yet been published (ADMIN)
115-
2. Publish forum post with exploit details (TENDERMINT ENG, TENDERMINT LEAD)
119+
2. Publish forum post with exploit details (CometBFT ENG, CometBFT LEAD)
116120

117121
## Supported Releases
118122

119-
The Tendermint Core team commits to releasing security patch releases for both
123+
The CometBFT team commits to releasing security patch releases for both
120124
the latest minor release as well for the major/minor release that the Cosmos Hub
121125
is running.
122126

123-
If you are running older versions of Tendermint Core, we encourage you to
127+
If you are running older versions of CometBFT, we encourage you to
124128
upgrade at your earliest opportunity so that you can receive security patches
125-
directly from the Tendermint repo. While you are welcome to backport security
129+
directly from the CometBFT repo. While you are welcome to backport security
126130
patches to older versions for your own use, we will not publish or promote these
127131
backports.
128132

@@ -206,4 +210,4 @@ Attacks may come through the P2P network or the RPC layer:
206210
* Bisection/sequential algorithms
207211

208212
[hackerone]: https://hackerone.com/cosmos
209-
[tmsec-mailing]: https://berlin.us4.list-manage.com/subscribe?u=431b35421ff7edcc77df5df10&id=3fe93307bc
213+
<!-- [tmsec-mailing]: https://berlin.us4.list-manage.com/subscribe?u=431b35421ff7edcc77df5df10&id=3fe93307bc -->

‎STYLE_GUIDE.md

+8-8
Original file line numberDiff line numberDiff line change
@@ -65,7 +65,7 @@ type middleware struct {
6565
```
6666

6767
* In comments, use "iff" to mean, "if and only if".
68-
* Product names are capitalized, like "Tendermint", "Basecoin", "Protobuf", etc except in command lines: `tendermint --help`
68+
* Product names are capitalized, like "CometBFT", "Basecoin", "Protobuf", etc except in command lines: `cometbft --help`
6969
* Acronyms are all capitalized, like "RPC", "gRPC", "API". "MyID", rather than "MyId".
7070
* Prefer errors.New() instead of fmt.Errorf() unless you're actually using the format feature with arguments.
7171

@@ -77,12 +77,12 @@ Sometimes it's necessary to rename libraries to avoid naming collisions or ambig
7777
* Separate imports into blocks - one for the standard lib, one for external libs and one for application libs.
7878
* Here are some common library labels for consistency:
7979
* dbm "github.com/cometbft/cometbft-db"
80-
* cmtcmd "github.com/tendermint/tendermint/cmd/tendermint/commands"
81-
* cmtcfg "github.com/tendermint/tendermint/config/tendermint"
82-
* cmttypes "github.com/tendermint/tendermint/types"
83-
* Never use anonymous imports (the `.`), for example, `tmlibs/common` or anything else.
84-
* When importing a pkg from the `tendermint/libs` directory, prefix the pkg alias with cmt.
85-
* cmtbits "github.com/tendermint/tendermint/libs/bits"
80+
* cmtcmd "github.com/cometbft/cometbft/cmd/cometbft/commands"
81+
* cmtcfg "github.com/cometbft/cometbft/config"
82+
* cmttypes "github.com/cometbft/cometbft/types"
83+
* Never use anonymous imports (the `.`), for example, `cmtlibs/common` or anything else.
84+
* When importing a pkg from the `cmt/libs` directory, prefix the pkg alias with cmt.
85+
* cmtbits "github.com/cometbft/cometbft/libs/bits"
8686
* tip: Use the `_` library import to import a library for initialization effects (side effects)
8787

8888
## Dependencies
@@ -126,7 +126,7 @@ Sometimes it's necessary to rename libraries to avoid naming collisions or ambig
126126

127127
## Version
128128

129-
* Every repo should have a version/version.go file that mimics the Tendermint Core repo
129+
* Every repo should have a version/version.go file that mimics the CometBFT repo
130130
* We read the value of the constant version in our build scripts and hence it has to be a string
131131

132132
## Non-Go Code

0 commit comments

Comments
 (0)
Please sign in to comment.