Skip to content

Commit

Permalink
Add proposal process documentation (cadence-workflow#2127)
Browse files Browse the repository at this point in the history
  • Loading branch information
dmetzgar authored Jul 2, 2019
1 parent cb7e56f commit c3f265f
Show file tree
Hide file tree
Showing 9 changed files with 293 additions and 2 deletions.
42 changes: 42 additions & 0 deletions PROPOSALS.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,42 @@
# Proposing Changes to Cadence

## Introduction

The design process for changes to Cadence is modeled on the [proposal process used by the M3 project](https://github.com/m3db/proposal).

## Process

- [Create an issue](https://github.com/uber/cadence/issues/new) describing the proposal.

- Like any GitHub issue, a proposal issue is followed by an initial discussion about the suggestion. For Proposal issues:

- The goal of the initial discussion is to reach agreement on the next step: (1) accept, (2) decline, or (3) ask for a design doc.
- The discussion is expected to be resolved in a timely manner.
- If the author wants to write a design doc, then they can write one.
- A lack of agreement means the author should write a design doc.

- If a Proposal issue leads to a design doc:

- The design doc should be presented as a Google Doc and must follow [the template](https://docs.google.com/document/d/1hpWpy5MB5l8uXfnl23lebhx-dvo79vb1jFUOyAtIHJw/edit?usp=sharing).
- The design doc should be linked from the opened GitHub issue.
- The design doc should only allow edit access to authors of the document.
- Do not create the document from a corporate G Suite account. If you want to edit from a corporate G Suite account then first create the document from a personal Google account and grant edit access to your corporate G Suite account.
- Comment access should be granted explicitly to [cadence-discussion@googlegroups.com](https://groups.google.com/d/forum/cadence-discussion) so that users viewing the document display under their account names rather than anonymous users.
- Comment access should also be accessible by the public. Make sure this is the case by clicking "Share" and "Get shareable link" ensuring you select "Anyone with the link can comment".

- Once comments and revisions on the design doc wind down, there is a final discussion about the proposal.

- The goal of the final discussion is to reach agreement on the next step: (1) accept or (2) decline.
- The discussion is expected to be resolved in a timely manner.

- Once the design doc is agreed upon, the author shall export the contents of the Google Doc as a Markdown document and submit a PR to add it to the proposal repository.

- Authors can use [gdocs2md](https://github.com/mangini/gdocs2md) to convert the document but any cleanup required must be done by hand.
- The design doc should be checked in at `docs/design/XYZ-shortname.md`, where `XYZ` is the GitHub issue number and `shortname` is a short name (a few dash-separated words at most).
- The design doc should be added to the list of existing proposals in `docs/design/index.md`

- The author (and/or other contributors) do the work as described by the "Implementation" section of the proposal.

---

This project is released under the [Apache License, Version 2.0](LICENSE).
9 changes: 7 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,7 @@ See Maxim's talk at [Data@Scale Conference](https://atscaleconference.com/videos
* Build the required binaries following the instructions [here](CONTRIBUTING.md).

* Install and run `cassandra` locally:

```bash
# for OS X
brew install cassandra
Expand All @@ -26,11 +27,13 @@ brew install cassandra
```

* Setup the cassandra schema:

```bash
make install-schema
```

* Start the service:

```bash
./cadence-server start
```
Expand All @@ -53,9 +56,11 @@ Try out [Cadence Web UI](https://github.com/uber/cadence-web) to view your workf
(This is already available at localhost:8088 if you run Cadence with docker compose)

## Contributing
We'd love your help in making Cadence great. Please review our [instructions](CONTRIBUTING.md).

We'd love your help in making Cadence great. Please review our [contribution guide](CONTRIBUTING.md).

If you'd like to propose a new feature, first join the Cadence [discussion group](https://groups.google.com/d/forum/cadence-discussion) and [Slack channel](https://join.slack.com/t/uber-cadence/shared_invite/enQtNDczNTgxMjYxNDEzLTI5Yzc5ODYwMjg1ZmI3NmRmMTU1MjQ0YzQyZDc5NzMwMmM0NjkzNDE5MmM0NzU5YTlhMmI4NzIzMDhiNzFjMDM) to start a discussion and check if there are existing design discussions. Also peruse our [design docs](docs/design/index.md) in case a feature has been designed but not yet implemented. Once you're sure the proposal is not covered elsewhere, please follow our [proposal instructions](PROPOSALS.md).

## License

MIT License, please see [LICENSE](https://github.com/uber/cadence/blob/master/LICENSE) for details.

Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading

0 comments on commit c3f265f

Please sign in to comment.