diff --git a/CHANGELOG.md b/CHANGELOG.md
index f77c2ba412..2974a8b35b 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,3 +1,17 @@
+
+## 0.15.4 (2024-04-25)
+
+
+#### Bug Fixes
+
+* take keys_changed_at into account w/ migrated records' special case (#1545) ([f68fb607](https://github.com/mozilla-services/syncstorage-rs/commit/f68fb607fe0284f74c77faa4eb1de14ed95e3d3e))
+
+#### Chore
+
+* fix changelog version anchor ([8098d839](https://github.com/mozilla-services/syncstorage-rs/commit/8098d839b6987bfa0731f876162672bb21e8fded))
+
+
+
## 0.15.3 (2024-04-24)
diff --git a/Cargo.lock b/Cargo.lock
index 67f6e84351..3e5e73b5d4 100644
--- a/Cargo.lock
+++ b/Cargo.lock
@@ -2574,7 +2574,7 @@ checksum = "2047c6ded9c721764247e62cd3b03c09ffc529b2ba5b10ec482ae507a4a70160"
[[package]]
name = "syncserver"
-version = "0.15.3"
+version = "0.15.4"
dependencies = [
"actix-cors",
"actix-http",
@@ -2629,7 +2629,7 @@ dependencies = [
[[package]]
name = "syncserver-common"
-version = "0.15.3"
+version = "0.15.4"
dependencies = [
"actix-web",
"cadence",
@@ -2644,7 +2644,7 @@ dependencies = [
[[package]]
name = "syncserver-db-common"
-version = "0.15.3"
+version = "0.15.4"
dependencies = [
"backtrace",
"deadpool",
@@ -2658,7 +2658,7 @@ dependencies = [
[[package]]
name = "syncserver-settings"
-version = "0.15.3"
+version = "0.15.4"
dependencies = [
"config 0.11.0",
"num_cpus",
@@ -2672,7 +2672,7 @@ dependencies = [
[[package]]
name = "syncstorage-db"
-version = "0.15.3"
+version = "0.15.4"
dependencies = [
"async-trait",
"cadence",
@@ -2695,7 +2695,7 @@ dependencies = [
[[package]]
name = "syncstorage-db-common"
-version = "0.15.3"
+version = "0.15.4"
dependencies = [
"async-trait",
"backtrace",
@@ -2714,7 +2714,7 @@ dependencies = [
[[package]]
name = "syncstorage-mysql"
-version = "0.15.3"
+version = "0.15.4"
dependencies = [
"async-trait",
"backtrace",
@@ -2737,7 +2737,7 @@ dependencies = [
[[package]]
name = "syncstorage-settings"
-version = "0.15.3"
+version = "0.15.4"
dependencies = [
"rand",
"serde 1.0.197",
@@ -2747,7 +2747,7 @@ dependencies = [
[[package]]
name = "syncstorage-spanner"
-version = "0.15.3"
+version = "0.15.4"
dependencies = [
"async-trait",
"backtrace",
@@ -2912,7 +2912,7 @@ checksum = "1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20"
[[package]]
name = "tokenserver-auth"
-version = "0.15.3"
+version = "0.15.4"
dependencies = [
"async-trait",
"base64",
@@ -2939,7 +2939,7 @@ dependencies = [
[[package]]
name = "tokenserver-common"
-version = "0.15.3"
+version = "0.15.4"
dependencies = [
"actix-web",
"backtrace",
@@ -2952,7 +2952,7 @@ dependencies = [
[[package]]
name = "tokenserver-db"
-version = "0.15.3"
+version = "0.15.4"
dependencies = [
"async-trait",
"backtrace",
@@ -2977,7 +2977,7 @@ dependencies = [
[[package]]
name = "tokenserver-settings"
-version = "0.15.3"
+version = "0.15.4"
dependencies = [
"jsonwebtoken",
"serde 1.0.197",
diff --git a/Cargo.toml b/Cargo.toml
index 46baa5537c..1e2a8578e4 100644
--- a/Cargo.toml
+++ b/Cargo.toml
@@ -18,7 +18,7 @@ members = [
default-members = ["syncserver"]
[workspace.package]
-version = "0.15.3"
+version = "0.15.4"
authors = [
"Ben Bangert ",
"Phil Jenvey ",