Skip to content

Commit

Permalink
bip-0002: clarify rejection process
Browse files Browse the repository at this point in the history
  • Loading branch information
kallewoof committed Oct 15, 2020
1 parent c5cd3bb commit a01ddaa
Show file tree
Hide file tree
Showing 3 changed files with 75 additions and 1 deletion.
4 changes: 3 additions & 1 deletion bip-0002.mediawiki
Original file line number Diff line number Diff line change
Expand Up @@ -190,7 +190,9 @@ The BIP editor may also change the status to Deferred when no progress is being

A BIP may only change status from Draft (or Rejected) to Proposed, when the author deems it is complete, has a working implementation (where applicable), and has community plans to progress it to the Final status.

BIPs should be changed from Draft or Proposed status, to Inactive status, upon request by any person, if they have not made progress in three years. Such a BIP may be changed to Draft status if any progress is made, or to Proposed status if it meets the criteria required as described in the previous paragraph.
BIPs should be changed from Draft or Proposed status, to Inactive status, upon request by any person, if they have not made progress in three years, or to Rejected status, if there is outstanding public criticism and the champion has not made revisions that meaningfully address said criticism. A champion may choose to Reject their own proposal at any time.

Such a BIP may be changed to Draft status if any progress is made or if the champion provides revisions that meaningfully address public criticism of the proposal, or to Proposed status if it meets the criteria required as described above.

An Proposed BIP may progress to Final only when specific criteria reflecting real-world adoption has occurred. This is different for each BIP depending on the nature of its proposed changes, which will be expanded on below. Evaluation of this status change should be objectively verifiable, and/or be discussed on the development mailing list.

Expand Down
Binary file modified bip-0002/process.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
72 changes: 72 additions & 0 deletions bip-0002/process.tex
Original file line number Diff line number Diff line change
@@ -0,0 +1,72 @@
\documentclass{article}

\usepackage{tikz}
\usetikzlibrary{calc,backgrounds}
%\usepackage[active,tightpage]{preview}

\begin{document}

\begin{tikzpicture}[>=latex]

\tikzstyle{state} = [draw, very thick, fill=white, rectangle, minimum height=3em, minimum width=7em, node distance=5em, font={\sffamily\bfseries}]
\tikzstyle{stateEdgePortion} = [black,thick];
\tikzstyle{stateEdge} = [stateEdgePortion,->];
\tikzstyle{edgeLabel} = [pos=0.5, text centered, font={\sffamily\small}];

\node[state, name=draft] {DRAFT};
\node[state, name=inactive, below of=draft, yshift=-15em] {INACTIVE};
\node[state, name=proposed, right of=draft, xshift=4em] {PROPOSED};
\node[state, name=deferred, below of=proposed] {DEFERRED};
\node[state, name=rejected, below of=deferred] {REJECTED};
\node[state, name=withdrawn, below of=rejected] {WITHDRAWN};
\node[state, name=final, right of=proposed, xshift=4em] {FINAL};
\node[state, name=replaced, right of=rejected, xshift=4em] {REPLACED};
\node[state, name=obsolete, right of=final, xshift=4em] {OBSOLETE};

% Drafts can become inactive, and inactive states can go back to drafts
\draw[<->] ($(draft.south) + (-1em,0)$)
edge[stateEdge] ($(inactive.north) + (-1em,0)$);

% Drafts can become proposed
\draw ($(draft.east)$)
edge[stateEdge] ($(proposed.west)$);

% Drafts can become withdrawn, and withdrawn can go back to being drafts
\coordinate (draftWithdrawnA) at ($(withdrawn.west -| draft.south) + (-0.5em,0)$);
\draw (draftWithdrawnA) edge[stateEdge] ($(draft.south) + (-0.5em,0)$);
\draw (draftWithdrawnA) edge[stateEdge] ($(withdrawn.west)$);

% Drafts can become rejected, and rejected can go back to being drafts
\coordinate (draftRejectedA) at ($(rejected.west -| draft.south)$);
\draw (draftRejectedA) edge[stateEdge] ($(draft.south)$);
\draw (draftRejectedA) edge[stateEdge] ($(rejected.west)$);

% Drafts can become deferred, and deferred can go back to being drafts
\coordinate (draftDeferredA) at ($(deferred.west -| draft.south) + (0.5em,0)$);
\draw (draftDeferredA) edge[stateEdge] ($(draft.south) + (0.5em,0)$);
\draw (draftDeferredA) edge[stateEdge] ($(deferred.west)$);

% Proposed can become final/active
\draw ($(proposed.east)$)
edge[stateEdge] ($(final.west)$);

% Final/active can become obsolete
\draw ($(final.east)$)
edge[stateEdge] ($(obsolete.west)$);

% Final/active can also become replaced
\draw ($(final.south)$)
edge[stateEdge] ($(replaced.north)$);

% Proposed can become inactive, and inactive can return to proposed
\coordinate (proposedInactiveA) at ($(proposed.north) + (0,1em)$);
\coordinate (proposedInactiveB) at ($(proposed.north -| draft.west) + (-2em,1em)$);
\coordinate (proposedInactiveC) at ($(inactive.west) + (-2em,0)$);
\draw (proposedInactiveA) edge[stateEdge] (proposed.north);
\draw (proposedInactiveA) edge[stateEdgePortion] (proposedInactiveB);
\draw (proposedInactiveB) edge[stateEdgePortion] (proposedInactiveC);
\draw (proposedInactiveC) edge[stateEdge] ($(inactive.west)$);

\end{tikzpicture}

\end{document}

0 comments on commit a01ddaa

Please sign in to comment.