Skip to content

Commit 8501c93

Browse files
committed
Make explicit that the CLC votes on implementation not design.
1 parent dc18483 commit 8501c93

File tree

2 files changed

+12
-1
lines changed

2 files changed

+12
-1
lines changed

PROPOSALS.md

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -120,7 +120,7 @@ The following is a step by step guide for common proposals:
120120
If your proposal is a "multi-phase proposal" with multiple implementation and deprecation steps, make sure to
121121
precisely define when each step is supposed to take place.
122122

123-
### A note on stale proposals
123+
### Stale proposals
124124

125125
The CLC can revoke its approval for a proposal if an **"activity"** has been overdue for over a year. The revocation request, which
126126
explains what has changed with the passage of time to justify the review, can be initiated by the chair. If no CLC member vetos
@@ -131,6 +131,15 @@ the request, then it automatically passes.
131131
- for a simple proposal: whether it has been merged
132132
- for a multi-phase proposal: whether the next step has been carried out as planned
133133

134+
### `base`: Bug fixes
135+
136+
The CLC votes on concrete changes to `base` and not designs. If a change to `base`
137+
has been accepted but is later found to be faulty in implementation or design
138+
fixing it will require its own CLC proposal.
139+
140+
Similarly fixes to existing bugs, no matter how trivial, will require
141+
a CLC proposal. This reduces the risk of bug fixes having unintended consequences.
142+
134143
## The "when"
135144

136145
If you've got a pet issue that's been sleeping in the depths of a mailing list

README.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -41,7 +41,9 @@ core-libraries-committee at haskell dot org
4141
## `base` package
4242

4343
The primary responsibility of CLC is to manage API changes of `base` package. The ownership of `base` belongs to GHC developers, and they can maintain it freely without CLC involvement as long as changes are invisible to clients. Changes which affect performance or laziness and similar are deemed visible. Documentation changes normally fall under GHC developers purview, except significant ones (e. g., adding or changing type class laws).
44+
4445
Proposals to change the API of the `base` package are managed by the process, described in [`PROPOSALS.md`][proposals].
46+
Note that while proposals can be helpful in the design phase the CLC will only vote on concrete *implementations*.
4547

4648
[proposals]: https://github.com/haskell/core-libraries-committee/blob/main/PROPOSALS.md
4749

0 commit comments

Comments
 (0)