diff --git a/crates/openfang-api/src/middleware.rs b/crates/openfang-api/src/middleware.rs
index 0d05672d2..4efb5bc31 100644
--- a/crates/openfang-api/src/middleware.rs
+++ b/crates/openfang-api/src/middleware.rs
@@ -236,13 +236,16 @@ pub async fn security_headers(request: Request
, next: Next) -> Response impl IntoResponse {
/// GET / — Serve the OpenFang Dashboard single-page application.
///
-/// Returns the full SPA with ETag header based on package version for caching.
+/// Generates a unique CSP nonce on every request and injects it into both
+/// the `\n",
- "\n",
- "\n",
// App code
- "\n",
// Alpine.js MUST be last — it processes x-data and fires alpine:init
- "\n",
"