diff --git a/CHANGELOG.md b/CHANGELOG.md
new file mode 100644
index 0000000..48b65ea
--- /dev/null
+++ b/CHANGELOG.md
@@ -0,0 +1,95 @@
+# Changelog
+
+All notable Reforge changes are recorded here. The project is in beta: a
+feature can be implemented and replica-tested without yet being validated on
+both printer models or through every real-world workflow.
+
+## Unreleased
+
+Release preparation and documentation sweep. No firmware behavior is changed
+by this entry.
+
+## v20260827c-melitopol — 2026-08-27
+
+### Added
+
+- HelixScreen’s Filament page now follows the selected tool for material,
+ spool, temperatures, loading, and retracting.
+- Installed packages record the Reforge APK feed location for future updates.
+
+### Fixed
+
+- A selected tool with no resolvable heater is logged and ignored instead of
+ heating the wrong hotend.
+
+## v20260827d-melitopol — 2026-08-27
+
+### Added
+
+- HelixScreen pressure-advance calibration integration and per-tool Z
+ correction selection in the tune overlay.
+
+### Fixed
+
+- Pressure-advance calibration restores the previous heater target, including
+ when a sweep fails partway through.
+- Calibration documentation now explains that results belong in the slicer’s
+ filament profile rather than being saved to `printer.cfg`.
+
+## v20260827-melitopol — 2026-08-27
+
+### Added
+
+- s6-rc supervision for the web stack, camera, Moonraker, Wi-Fi, and related
+ services, with readiness checks based on actual service readiness.
+- A printer-local CPython 3.13 runtime for Moonraker with working SQLite.
+- CPU priority controls that let Moonraker and the camera yield to Klipper.
+- HelixScreen settings persistence across firmware updates.
+
+### Changed
+
+- Reforge owns and starts the camera and web stack rather than stock
+ `firmwareExe`.
+- Startup retries until MCU boards answer and shows boot progress.
+
+## v20260825b-nova-kakhovka — 2026-08-25
+
+### Fixed
+
+- `TOOL_OFFSET_CALIBRATE` no longer shuts Klipper down on completion.
+
+## v20260825-nova-kakhovka — 2026-08-25
+
+### Added
+
+- First-boot import of factory per-unit calibration into Klipper config.
+- Toolchanger-aware calibration, status commands, and safe plate checks.
+- An update path that preserves the root password and user configuration.
+
+### Fixed
+
+- Release builds can no longer silently fall back to the stock Klipper tree.
+
+## v20260824-nova-kakhovka — 2026-08-24
+
+### Added
+
+- USB packages for Creator 5 and Creator 5 Pro with model guards.
+- Current Klipper with Creator 5 toolchanger support, Mainsail, Moonraker,
+ HelixScreen, camera streaming, Wi-Fi, and root SSH.
+- Stock slicer compatibility through `[ff_print]`, `START_PRINT`, and
+ `END_PRINT`, including preparation, mesh loading, nozzle cleaning, tool
+ checks, and safe cancellation.
+- Tool-aware filament load, unload, purge, runout, and clog handling.
+- Automatic pressure-advance calibration and VFA calibration support.
+- Timelapse support, signed APK packages, pinned inputs, and Docker plus
+ printer-replica QA.
+
+### Known release issue
+
+The original packages were withdrawn because they could install a mixed
+Klipper tree. Use the rebuilt release or a later release; see its release note.
+
+## Project start — 2026-08-20
+
+- Initial reverse-engineering notes and USB-installable firmware builder.
diff --git a/README.md b/README.md
index c108233..6033927 100644
--- a/README.md
+++ b/README.md
@@ -20,7 +20,8 @@ young. Help and support: [the Discord](https://discord.gg/ggJyfgVA4v).
## Status
-**It runs on a real printer** — a Creator 5 Pro, flashed and printing:
+**It runs on real printers** — both a Creator 5 Pro and a Creator 5 have been
+flashed and exercised; the pictured hardware is the Pro:
@@ -41,13 +42,13 @@ A checked box happened on that machine; an empty one has not, yet.
starts it
- [x] **Wifi**
- [x] **HelixScreen** on the printer's own screen
-- [ ] **Chamber heater**
-- [ ] **Creator 5 (non-Pro)** — its package builds and passes the same
- replica test suite, but has not touched hardware
-- [ ] **Going back to stock** — proven on the printer replica, not yet
- needed on the machine. The stock package restores everything it carries;
- Moonraker is not in it, so the mod's build stays and keeps working — see
- [Support](docs/support.md)
+- [x] **Chamber heater** — tested on the Creator 5 Pro; the regular Creator 5
+ correctly uses its heater-free chamber configuration
+- [x] **Creator 5 (non-Pro)** — package installed and exercised on hardware;
+ see the feature-specific validation notes in the [feature list](docs/features.md)
+- [x] **Going back to stock** — tested with the matching stock packages; the
+ stock package restores everything it carries. Moonraker is not in it, so
+ the mod's build stays and keeps working — see [Support](docs/support.md)
**For the tinkerer:**
@@ -104,6 +105,9 @@ insides — one file, `firmwareExe`, with the stock boot scripts, updater and
recovery path left untouched — [How it works](docs/how-it-works.md) is under
*For contributors*.
+For the complete beta inventory and validation boundaries, see the
+[feature list](docs/features.md).
+
---
## Credits
diff --git a/docs/features.md b/docs/features.md
new file mode 100644
index 0000000..716ed23
--- /dev/null
+++ b/docs/features.md
@@ -0,0 +1,28 @@
+# Feature list
+
+Reforge replaces the FlashForge application layer on the Creator 5 family
+with Klipper and a toolchanger-aware web and touchscreen experience.
+
+## Printer owner features
+
+| Area | What is included | Status |
+|---|---|---|
+| Installation | FlashForge-style USB installer, one package per model, model guard | ✅ Yes |
+| Recovery | Matching stock package restores stock files | ✅ Yes |
+| Calibration import | Factory dock, station, nozzle, and bed data imported on first boot | ✅ Yes |
+| Printing | Stock slicer G-code, preparation, mesh, clean, tool checks, cancel/pause/resume | ✅ Yes |
+| Toolchanger | T0–T3 selection, docking/grabbing, mounted-tool detection, safe homing | ✅ Yes |
+| Tool calibration | Per-tool offsets, station calibration, bounded probes, sanity checks | ✅ Yes |
+| Bed mesh | Factory mesh import, 10×10 probing, save/load through `MESH_DATA` | ✅ Yes |
+| Filament | Tool-specific load, unload, purge, cold wipe, material temperatures | ✅ Yes |
+| Runout and clog | Mounted-tool sensors pause prints and support load/resume recovery | ✅ Yes |
+| Pressure advance | Automatic FlashForge-compatible sweep, HelixScreen integration, and slicer-oriented results | ✅ Yes* |
+| VFA calibration | Klipper VFA support with required MCU library and dependency | ✅ Yes |
+| Chamber | Pro heater/light configuration and heater-following fan; heater-free Creator 5 config | ✅ Yes |
+| Mainsail | Mainsail over Moonraker, webcam stream, Klipper API compatibility | ✅ Yes |
+| Screen | HelixScreen with tool/material-aware filament controls and persistent settings | ✅ Yes |
+| SSH | Root access with per-printer first-install password on the USB stick | ✅ Yes |
+| Updates | APK feed, signed packages, preserved user settings and password | ✅ Yes |
+
+\* Pressure advance is a manual check. See the [pressure advance calibration
+guide](pressure-advance.md).
diff --git a/docs/installing.md b/docs/installing.md
index 38236cd..cd80be4 100644
--- a/docs/installing.md
+++ b/docs/installing.md
@@ -50,9 +50,10 @@ Not sure which you have? On the printer: **Settings → About**.
4. **Plug the stick in and power the printer on.** It finds the package by
itself and starts installing. The screen tells you to wait while it works;
this takes a few minutes. Do not cut the power.
-5. **Wait for the beep.** The printer sounds when the install has finished and
- the screen then offers to reboot. Accept it.
-6. **Pull the stick** once it has rebooted — your root password is on it, in
+5. **Wait for the beep.** The printer sounds when the install has finished.
+6. **Reboot manually.** Turn the power switch on the right side of the
+ printer, near the power cable, off and on again.
+7. **Pull the stick** once it has rebooted — your root password is on it, in
`anvil-password.txt`.
The boot after that one is the long one, and it is the mod's rather than
diff --git a/docs/known-issues.md b/docs/known-issues.md
new file mode 100644
index 0000000..29b55e1
--- /dev/null
+++ b/docs/known-issues.md
@@ -0,0 +1,15 @@
+# Known issues
+
+## OrcaSlicer sends a 3MF file instead of G-code
+
+Some OrcaSlicer profiles can upload a `.3mf` project rather than the sliced
+`.gcode` file. Reforge expects the G-code file for printing, so the job may
+not appear or start correctly in Mainsail.
+
+In OrcaSlicer, open **Printer Settings** and uncheck:
+
+> Use 3MF instead of G-code
+
+Slice the model again and upload the resulting `.gcode` file through Mainsail
+or your Moonraker upload target.
+
diff --git a/docs/vfa-calibration-example.jpg b/docs/vfa-calibration-example.jpg
new file mode 100644
index 0000000..3433069
Binary files /dev/null and b/docs/vfa-calibration-example.jpg differ
diff --git a/docs/vfa-calibration.md b/docs/vfa-calibration.md
new file mode 100644
index 0000000..18e2ff4
--- /dev/null
+++ b/docs/vfa-calibration.md
@@ -0,0 +1,53 @@
+# VFA calibration
+
+VFA means **vertical fine artifacts**: fine vertical banding caused by a
+stepper motor’s torque ripple. It is different from input shaping. Your
+printer already has factory VFA values, so recalibrate only after replacing a
+motor or when visible banding remains after normal tuning.
+
+## Before you start
+
+- Make sure no print is running.
+- Remove the build plate.
+- Make sure the printer is homed and the carriage can move freely.
+- Leave the toolchanger empty; Reforge mounts a tool automatically for the
+ measurement.
+
+## Run the calibration
+
+Send these commands from the Mainsail Console, one at a time:
+
+```gcode
+STEPPER_RESONANCE_FACTORY_CALIBRATE
+SAVE_CONFIG
+```
+
+The first command measures the X and Y motors. The printer will move quickly
+and make a noticeable vibration noise while it searches. Wait for it to
+finish before sending `SAVE_CONFIG`.
+
+`SAVE_CONFIG` is required: the first command applies the correction for the
+current session and stages the values, while `SAVE_CONFIG` writes them to the
+configuration for future restarts. It also restarts Klipper.
+
+## Afterward
+
+Wait for Klipper to reconnect, then run:
+
+```gcode
+STATUS
+```
+
+The VFA correction is applied by the printer’s motor drivers on subsequent
+moves. It is independent of `SHAPER_CALIBRATE` and does not replace input
+shaping.
+
+## Example
+
+This comparison shows the same speed sweep with VFA compensation disabled on the left and
+enabled on the right. Speeds run from **80 to 200 mm/s, right to left**. The
+enabled side has visibly cleaner vertical walls and fewer fine bands.
+
+
+
+*VFA disabled (left) versus enabled (right).
\ No newline at end of file
diff --git a/mkdocs.yml b/mkdocs.yml
index 653c217..d0944a6 100644
--- a/mkdocs.yml
+++ b/mkdocs.yml
@@ -73,13 +73,16 @@ nav:
- Using Reforge:
- Is this for you: is-this-for-you.md
- Installing: installing.md
+ - Feature list: features.md
- Your first print: first-print.md
- Calibration:
- Read first: calibration-overview.md
- XYZ tool calibration: calibration.md
- Bed mesh: bed-mesh.md
- Pressure advance: pressure-advance.md
+ - VFA calibration: vfa-calibration.md
- Support: support.md
+ - Known issues: known-issues.md
- Versions: versions.md
# Past the manual, short of the build system: how the machine behaves and