diff --git a/CHANGELOG.md b/CHANGELOG.md
index a4613ad8b..babe8a3cd 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -33,14 +33,41 @@ _Breaking developer changes, which may affect downstream projects or sites that
* ([#])
[#xxxx]: https://github.com/openstreetmap/iD/issues/xxxx
+[#xxxx]: https://github.com/openstreetmap/iD/pull/xxxx
[@xxxx]: https://github.com/xxxx
-[#prxxxx]: https://github.com/openstreetmap/iD/pull/xxxx
-->
+# Unreleased
+
+#### :newspaper: News
+* We maintain a running changelog now! Upcoming changes will be added to the _[Unreleased](#Unreleased)_ section of this changelog as soon as they are ready in the [development version](https://ideditor.netlify.app/) of the iD editor. ([#8805])
+#### :boom: Breaking Changes
+#### :tada: New Features
+#### :sparkles: Usability & Accessibility
+#### :scissors: Operations
+#### :camera: Street-Level
+#### :white_check_mark: Validation
+* Clarify description of "disconnected way" validation rule ([#8800])
+#### :bug: Bugfixes
+* Fix hidden tooltips on map control toolbar ([#8781])
+* Fix glitching out turn restriction minimap on narrow sidebars ([#8792])
+#### :earth_asia: Localization
+#### :hourglass: Performance
+#### :mortar_board: Walkthrough / Help
+#### :rocket: Presets
+* Radio-button based presets fields can be in an non-unique state (e.g. a tunnel which is also a ford) – this is now rendered like a multi selection with conflicting states ([#8796])
+#### :hammer: Development
+
+[#8781]: https://github.com/openstreetmap/iD/issues/8781
+[#8792]: https://github.com/openstreetmap/iD/pull/8792
+[#8796]: https://github.com/openstreetmap/iD/issues/8796
+[#8800]: https://github.com/openstreetmap/iD/pull/8800
+[#8805]: https://github.com/openstreetmap/iD/issues/8805
+
# 2.20.2
##### 2021-Oct-28
#### :sparkles: Usability & Accessibility
-* Decomission Maxar Standard legacy imagery layer ([#8647])
+* Decommission Maxar Standard legacy imagery layer ([#8647])
* Show an error if localStorage is full ([#8727])
* Keep the oldest way when merging ([#8708])
* Enable ui map control toolbar scrolling on small devices or high zoom levels ([#pr8685])
@@ -141,13 +168,15 @@ _The text styling indicates which values are raw tags and which are translated l
#### :sparkles: Usability & Accessibility
* Enabled node dragging at the bottom of the screen ([#8233])
* Preset search is now more diacritics friendly ([#8242])
-* Improve sidebar Fields behavior for multilingual names ([#8164])
-* Improved distinction between preset categories and presets icons in sidebar ([#6085])
+* Improve sidebar Fields behavior for multilingual names ([#8164])
+* Improved distinction between preset categories and presets icons in sidebar ([#6085])
+* Enhance labels for route relations to include direction and via points ([#8276], thanks [@1ec5])
[#8233]: https://github.com/openstreetmap/iD/issues/8233
[#8242]: https://github.com/openstreetmap/iD/issues/8242
[#8164]: https://github.com/openstreetmap/iD/issues/8164
[#6085]: https://github.com/openstreetmap/iD/issues/6085
+[#8276]: https://github.com/openstreetmap/iD/pull/8276
#### :scissors: Operations
* New operations: Select parent way operation (Ctrl↑)/ select child nodes operation (Ctrl↓) ([#pr8264], [#pr8577]) Thanks [@1ec5]
@@ -164,7 +193,7 @@ _The text styling indicates which values are raw tags and which are translated l
#### :white_check_mark: Validation
* Several rules added for the case when tagging is used with wrong geometry ([#8231])
* Missing tag validation improvement ([#8273])
-* Smarter suspicious tag and outdated tag validators (thanks to the new NSI matcher) ([#pr8305])
+* Smarter suspicious tag and outdated tag validators (thanks to the new NSI matcher) ([#pr8305])
[#8231]: https://github.com/openstreetmap/iD/issues/8231
[#8273]: https://github.com/openstreetmap/iD/issues/8273
diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md
index 37930e925..848a03b59 100644
--- a/CONTRIBUTING.md
+++ b/CONTRIBUTING.md
@@ -397,9 +397,10 @@ Make your changes to source files under `modules/`.
The `iD.js` and `iD.min.js` files in this project are autogenerated - don't edit them.
1. Try your change locally. Run `npm start` and visit `localhost:8080` in a browser.
-2. Run lint and tests with `npm test`
-3. Commit your changes with an informative commit message
-4. [Submit a pull request](https://help.github.com/articles/using-pull-requests) to the `openstreetmap/iD` project.
+2. Run lint and tests with `npm test`.
+3. If you feel like it, append a line describing your changes to the project's [changelog](https://github.com/openstreetmap/iD/blob/develop/CHANGELOG.md).
+4. Commit your changes with an informative commit message.
+5. [Submit a pull request](https://help.github.com/articles/using-pull-requests) to the `openstreetmap/iD` project.
## Using GitHub and git
diff --git a/RELEASING.md b/RELEASING.md
index 05ea04f25..3d896b432 100644
--- a/RELEASING.md
+++ b/RELEASING.md
@@ -6,7 +6,7 @@
### Prep
- If you don't have a `transifex.auth` file in the root of your iD checkout,
-you'll need to create a Transifex account, ask @quincylvania or @bhousel for admin rights
+you'll need to create a Transifex account, ask @tyr_asd or @bhousel for admin rights
on the iD project, and then create this file with contents like
{"user": "yourusername", "password": "*******"}This file is not version-controlled and will not be checked in.
@@ -24,7 +24,7 @@ $ npm run translations
$ git add . && git commit -m 'npm run translations'
```
-- Update `CHANGELOG.md`
+- Check and finalize `CHANGELOG.md`
- Set release version number in `modules/core/context.js` and `package.json`
```bash