From e225bd83043fcff61ec07032943601b02f3bdd47 Mon Sep 17 00:00:00 2001 From: robtfm <50659922+robtfm@users.noreply.github.com> Date: Wed, 2 Sep 2026 13:07:35 +0100 Subject: [PATCH] feat: PBEngineInfo.total_runtime_f64 `total_runtime` is a proto float, and an f32 can't resolve frame deltas once a scene has been running for ~36 hours, which long-lived server scenes now do. The field can't be widened in place: generated decoders guard the wire type (fixed32 vs fixed64) and would skip it, so existing bundles would read 0. Add a double alongside; old bundles ignore the unknown field. Co-Authored-By: Claude Fable 5.1 --- proto/decentraland/sdk/components/engine_info.proto | 1 + 1 file changed, 1 insertion(+) diff --git a/proto/decentraland/sdk/components/engine_info.proto b/proto/decentraland/sdk/components/engine_info.proto index c4bb5baf..40aa1ed3 100644 --- a/proto/decentraland/sdk/components/engine_info.proto +++ b/proto/decentraland/sdk/components/engine_info.proto @@ -13,4 +13,5 @@ message PBEngineInfo { float total_runtime = 2; // total runtime of this scene in seconds uint32 tick_number = 3; // tick counter of the scene as per ADR-148 bool scene_hidden = 4; // visibility state of the scene regarding Explorer fullscreen UI + double total_runtime_f64 = 5; // total_runtime at f64 precision: the float field cannot resolve frame deltas past ~36h of scene uptime }