diff --git a/vizier/_src/pyglove/converters.py b/vizier/_src/pyglove/converters.py index 8626f3aff..f63e8934a 100644 --- a/vizier/_src/pyglove/converters.py +++ b/vizier/_src/pyglove/converters.py @@ -559,11 +559,13 @@ def to_tuner_trial(self, vizier_trial: vz.Trial) -> pg.tuning.Trial: vizier_trial.final_measurement ), status=self._to_tuner_trial_status(vizier_trial.status), - created_time=int( + created_time=int( # pylint: disable=g-long-ternary vizier_trial.creation_time.replace( tzinfo=datetime.timezone.utc ).timestamp() - ), + ) + if vizier_trial.creation_time + else None, completed_time=int( # pylint: disable=g-long-ternary vizier_trial.completion_time.replace( tzinfo=datetime.timezone.utc diff --git a/vizier/_src/pyglove/core.py b/vizier/_src/pyglove/core.py index 7a5217c20..396685c76 100644 --- a/vizier/_src/pyglove/core.py +++ b/vizier/_src/pyglove/core.py @@ -59,6 +59,10 @@ def __init__( completed_time = ( int(trial.completion_time.timestamp()) if trial.completion_time else 0 ) + created_time = ( + int(trial.creation_time.timestamp()) if trial.creation_time else 0 + ) + super().__init__( dna=pg.DNA(None), id=trial.id, @@ -67,7 +71,7 @@ def __init__( trial.final_measurement ), status=_trial_status_legacy_value(trial.status), - created_time=int(trial.creation_time.timestamp()), + created_time=created_time, completed_time=completed_time, infeasible=trial.infeasible, **kwargs,