From 0a80b31df98518122f59682cd55b6f14940b3a89 Mon Sep 17 00:00:00 2001 From: Jvst Me Date: Wed, 17 Dec 2025 10:31:02 +0100 Subject: [PATCH] Relax event message validation rules Replace some message validation rules with implicit message transformations. Some event messages may include extracts from external sources (e.g., external error messages), that do not pass the validation rules. Such cases may be difficult to find during development, and we do not want them to break dstack in production. --- src/dstack/_internal/server/services/events.py | 7 +------ 1 file changed, 1 insertion(+), 6 deletions(-) diff --git a/src/dstack/_internal/server/services/events.py b/src/dstack/_internal/server/services/events.py index abd2bd9cfb..58037863eb 100644 --- a/src/dstack/_internal/server/services/events.py +++ b/src/dstack/_internal/server/services/events.py @@ -171,14 +171,9 @@ def emit(session: AsyncSession, message: str, actor: AnyActor, targets: list[Tar """ if not targets: raise ValueError("At least one target must be specified") + message = message.strip().rstrip(".").replace("\n", " ") if not message: raise ValueError("Message cannot be empty") - if message.strip() != message: - raise ValueError("Message cannot have leading or trailing whitespace") - if "\n" in message: - raise ValueError("Message cannot contain newlines") - if message.endswith("."): - raise ValueError("Message cannot end with a period") logger.info( "Emitting event: %s. Event targets: %s. Actor: %s",