fix: restore None guards for _environment_variables/_conversation_variables getters (#25633)

This commit is contained in:
诗浓 2025-10-10 16:32:09 +08:00 committed by GitHub
parent ab2eacb6c1
commit 94a07706ec
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
1 changed files with 6 additions and 2 deletions

View File

@ -360,7 +360,9 @@ class Workflow(Base):
@property
def environment_variables(self) -> Sequence[StringVariable | IntegerVariable | FloatVariable | SecretVariable]:
# _environment_variables is guaranteed to be non-None due to server_default="{}"
# TODO: find some way to init `self._environment_variables` when instance created.
if self._environment_variables is None:
self._environment_variables = "{}"
# Use workflow.tenant_id to avoid relying on request user in background threads
tenant_id = self.tenant_id
@ -444,7 +446,9 @@ class Workflow(Base):
@property
def conversation_variables(self) -> Sequence[Variable]:
# _conversation_variables is guaranteed to be non-None due to server_default="{}"
# TODO: find some way to init `self._conversation_variables` when instance created.
if self._conversation_variables is None:
self._conversation_variables = "{}"
variables_dict: dict[str, Any] = json.loads(self._conversation_variables)
results = [variable_factory.build_conversation_variable_from_mapping(v) for v in variables_dict.values()]