diff --git a/content/proposals.md b/content/proposals.md index 2d13cafa..dac520c9 100644 --- a/content/proposals.md +++ b/content/proposals.md @@ -332,17 +332,17 @@ pull request trackers. | Name | GitHub Label | Description | |---------------------------------|---------------------------------|--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| -| Proposal Drafting and Feedback | [No label](https://github.com/matrix-org/matrix-spec-proposals/issues?q=label%3Aproposal+-label%3Aabandoned+-label%3Afinal-comment-period+-label%3Afinished-final-comment-period+-label%3Amerged+-label%3Aobsolete+-label%3Aproposal-postponed+-label%3Aproposed-final-comment-period+-label%3Aproposal-in-review+-label%3Aspec-pr-in-review+-label%3Aspec-pr-missing) | A proposal document which is still work-in-progress but is being shared to incorporate feedback. Please prefix your proposal's title with `[WIP]` to make it easier for reviewers to skim their notifications list. | -| Proposal In Review | [proposal-in-review](https://github.com/matrix-org/matrix-spec-proposals/issues?q=label%3Aproposal+label%3Aproposal-in-review) | A proposal document which is now ready and waiting for review by the Spec Core Team and community | -| Proposed Final Comment Period | [proposed-final-comment-period](https://github.com/matrix-org/matrix-spec-proposals/issues?q=label%3Aproposal+label%3Aproposed-final-comment-period+) | Currently awaiting signoff of a 75% majority of team members in order to enter the final comment period | -| Final Comment Period | [final-comment-period](https://github.com/matrix-org/matrix-spec-proposals/issues?q=label%3Aproposal+label%3Afinal-comment-period+) | A proposal document which has reached final comment period either for merge, closure or postponement | -| Final Comment Period Complete | [finished-final-comment-period](https://github.com/matrix-org/matrix-spec-proposals/issues?q=label%3Aproposal+label%3Afinished-final-comment-period+) | The final comment period has been completed. Waiting for a demonstration implementation | -| Spec PR Missing | [spec-pr-missing](https://github.com/matrix-org/matrix-spec-proposals/issues?q=label%3Aproposal+label%3Aspec-pr-missing) | The proposal has been agreed, and proven with a demonstration implementation. Waiting for a PR against the Spec | -| Spec PR In Review | [spec-pr-in-review](https://github.com/matrix-org/matrix-spec-proposals/issues?q=label%3Aproposal+label%3Aspec-pr-in-review+) | The spec PR has been written, and is currently under review | -| Spec PR Merged | [merged](https://github.com/matrix-org/matrix-spec-proposals/issues?q=label%3Aproposal+label%3Amerged) | A proposal with a sufficient working implementation and whose Spec PR has been merged! | -| Postponed | [proposal-postponed](https://github.com/matrix-org/matrix-spec-proposals/issues?q=label%3Aproposal+label%3Aproposal-postponed+) | A proposal that is temporarily blocked or a feature that may not be useful currently but perhaps sometime in the future | -| Abandoned | [abandoned](https://github.com/matrix-org/matrix-spec-proposals/issues?q=label%3Aproposal+label%3Aabandoned) | A proposal where the author/shepherd is not responsive | -| Obsolete | [obsolete](https://github.com/matrix-org/matrix-spec-proposals/issues?q=label%3Aproposal+label%3Aobsolete+) | A proposal which has been made obsolete by another proposal or decision elsewhere. | +| Proposal Drafting and Feedback | [Draft pull request](https://github.com/matrix-org/matrix-spec-proposals/issues?q=is:open+draft:true) | A proposal document which is still work-in-progress but is being shared to incorporate feedback. Please prefix your proposal's title with `[WIP]` to make it easier for reviewers to skim their notifications list. | +| Proposal In Review | [No label](https://github.com/matrix-org/matrix-spec-proposals/issues?q=draft:false+label%3Aproposal+-label%3Aabandoned+-label%3Afinal-comment-period+-label%3Afinished-final-comment-period+-label%3Amerged+-label%3Aobsolete+-label%3Aproposal-postponed+-label%3Aproposed-final-comment-period+-label%3Aproposal-in-review+-label%3Aspec-pr-in-review+-label%3Aspec-pr-missing) | A proposal document which is now ready and waiting for review by the Spec Core Team and community | +| Proposed Final Comment Period | [proposed-final-comment-period](https://github.com/matrix-org/matrix-spec-proposals/issues?q=draft:false+label%3Aproposal+label%3Aproposed-final-comment-period+) | Currently awaiting signoff of a 75% majority of team members in order to enter the final comment period | +| Final Comment Period | [final-comment-period](https://github.com/matrix-org/matrix-spec-proposals/issues?q=draft:false+label%3Aproposal+label%3Afinal-comment-period+) | A proposal document which has reached final comment period either for merge, closure or postponement | +| Final Comment Period Complete | [finished-final-comment-period](https://github.com/matrix-org/matrix-spec-proposals/issues?q=draft:false+label%3Aproposal+label%3Afinished-final-comment-period+) | The final comment period has been completed. Waiting for a demonstration implementation | +| Spec PR Missing | [spec-pr-missing](https://github.com/matrix-org/matrix-spec-proposals/issues?q=draft:false+label%3Aproposal+label%3Aspec-pr-missing) | The proposal has been agreed, and proven with a demonstration implementation. Waiting for a PR against the Spec | +| Spec PR In Review | [spec-pr-in-review](https://github.com/matrix-org/matrix-spec-proposals/issues?q=draft:false+label%3Aproposal+label%3Aspec-pr-in-review+) | The spec PR has been written, and is currently under review | +| Spec PR Merged | [merged](https://github.com/matrix-org/matrix-spec-proposals/issues?q=draft:false+label%3Aproposal+label%3Amerged) | A proposal with a sufficient working implementation and whose Spec PR has been merged! | +| Postponed | [proposal-postponed](https://github.com/matrix-org/matrix-spec-proposals/issues?q=draft:false+label%3Aproposal+label%3Aproposal-postponed+) | A proposal that is temporarily blocked or a feature that may not be useful currently but perhaps sometime in the future | +| Abandoned | [abandoned](https://github.com/matrix-org/matrix-spec-proposals/issues?q=draft:false+label%3Aproposal+label%3Aabandoned) | A proposal where the author/shepherd is not responsive | +| Obsolete | [obsolete](https://github.com/matrix-org/matrix-spec-proposals/issues?q=draft:false+label%3Aproposal+label%3Aobsolete+) | A proposal which has been made obsolete by another proposal or decision elsewhere. | ## Categories diff --git a/scripts/proposals.js b/scripts/proposals.js index 438fdf37..42300b98 100644 --- a/scripts/proposals.js +++ b/scripts/proposals.js @@ -29,10 +29,6 @@ const outputDir = path.join(__dirname, "../data/msc"); * - `title`: used for things like headings in renderings of the proposals */ const states = [ - { - label: "proposal-in-review", - title: "Proposal In Review" - }, { label: "proposed-final-comment-period", title: "Proposed Final Comment Period" @@ -188,23 +184,34 @@ function processIssues() { fs.mkdirSync(outputDir); } const output = []; - // make a group of "work in progress" proposals, - // which are identified by not having any of the state labels + + // make a group of "work in progress" proposals, for those in draft. + output.push({ + title: "Work In Progress", + label: "work-in-progress", + proposals: issues + .filter(issue => issue.state == "open" && issue.draft) + .map(issue => getProposalFromIssue(issue)) + }); + + // now the 'Proposal In Review' section, which are identified by + // not having any of the state labels const stateLabels = states.map(s => s.label); - const worksInProgress = issues.filter(issue => { + const proposalsInReview = issues.filter(issue => { const labelsForIssue = issue.labels.map(l => l.name); - return intersection(labelsForIssue, stateLabels).length === 0; + return !issue.draft && intersection(labelsForIssue, stateLabels).length === 0; }); output.push({ - title: "Work In Progress", - label: "work-in-progress", - proposals: worksInProgress.map(issue => getProposalFromIssue(issue)) + title: "Proposal In Review", + label: "proposal-in-review", + proposals: proposalsInReview.map(issue => getProposalFromIssue(issue)) }); + // for each defined state for (const state of states) { // get the set of issues for that state const issuesForState = issues.filter(msc => { - return msc.labels.some(l => l.name === state.label); + return !msc.draft && msc.labels.some(l => l.name === state.label); }); // store it in /data output.push({