diff --git a/packages/cultmath/src/CultMath/CultMath.csproj b/packages/cultmath/src/CultMath/CultMath.csproj
index 8474fc05..7c253027 100644
--- a/packages/cultmath/src/CultMath/CultMath.csproj
+++ b/packages/cultmath/src/CultMath/CultMath.csproj
@@ -8,7 +8,7 @@
CultMath
CultMath
GameCult.Math
- 0.2.3
+ 0.2.4
Clean-room C# math shaped for HLSL-style renderer code.
GameCult
README.md
diff --git a/packages/cultmath/unity/org.gamecult.cultmath/CHANGELOG.md b/packages/cultmath/unity/org.gamecult.cultmath/CHANGELOG.md
new file mode 100644
index 00000000..871022f1
--- /dev/null
+++ b/packages/cultmath/unity/org.gamecult.cultmath/CHANGELOG.md
@@ -0,0 +1,19 @@
+# Changelog
+
+All notable changes to this package are documented in this file.
+
+Earlier releases (0.2.0-0.2.3) predate this package's changelog and are not
+backfilled here; see `docs/semver-policy.md` for why.
+
+## [0.2.4]
+
+### Added
+
+- `math.erf` and `math.erfinv`: single-precision error function and its
+ inverse. `erf` is the Abramowitz & Stegun 7.1.26 rational/exponential fit
+ (max absolute error 1.5e-7 by that source, 6.621e-7 measured here against
+ an independent reference). `erfinv` is Giles' minimax polynomial
+ ("Approximating the erfinv function", GPU Computing Gems, 2010), guarded
+ explicitly at the domain edges (`erfinv(1) = +Infinity`,
+ `erfinv(-1) = -Infinity`, outside `[-1, 1]` is `NaN`); measured worst
+ absolute error 5.066e-7, worst `erf(erfinv(y))` round trip 6.109e-7.
diff --git a/packages/cultmath/unity/org.gamecult.cultmath/CHANGELOG.md.meta b/packages/cultmath/unity/org.gamecult.cultmath/CHANGELOG.md.meta
new file mode 100644
index 00000000..8a5177b2
--- /dev/null
+++ b/packages/cultmath/unity/org.gamecult.cultmath/CHANGELOG.md.meta
@@ -0,0 +1,2 @@
+fileFormatVersion: 2
+guid: 0a6d25c5f7894c0d8e83f2b9d69358a4
\ No newline at end of file
diff --git a/packages/cultmath/unity/org.gamecult.cultmath/Runtime/Plugins/CultMath.dll b/packages/cultmath/unity/org.gamecult.cultmath/Runtime/Plugins/CultMath.dll
index ef93b69b..2962aa2a 100644
Binary files a/packages/cultmath/unity/org.gamecult.cultmath/Runtime/Plugins/CultMath.dll and b/packages/cultmath/unity/org.gamecult.cultmath/Runtime/Plugins/CultMath.dll differ
diff --git a/packages/cultmath/unity/org.gamecult.cultmath/Runtime/Plugins/CultMath.pdb b/packages/cultmath/unity/org.gamecult.cultmath/Runtime/Plugins/CultMath.pdb
index 0bc1d414..c71111b1 100644
Binary files a/packages/cultmath/unity/org.gamecult.cultmath/Runtime/Plugins/CultMath.pdb and b/packages/cultmath/unity/org.gamecult.cultmath/Runtime/Plugins/CultMath.pdb differ
diff --git a/packages/cultmath/unity/org.gamecult.cultmath/package.json b/packages/cultmath/unity/org.gamecult.cultmath/package.json
index 6ab136b4..fc0e64c7 100644
--- a/packages/cultmath/unity/org.gamecult.cultmath/package.json
+++ b/packages/cultmath/unity/org.gamecult.cultmath/package.json
@@ -1,7 +1,7 @@
{
"name": "org.gamecult.cultmath",
"displayName": "CultMath",
- "version": "0.2.3",
+ "version": "0.2.4",
"unity": "2021.3",
"description": "Precompiled CultMath numeric primitives and matching HLSL semantics for GameCult Unity runtimes.",
"license": "MPL-2.0",