From 2da0bee712469761b99f8eed9714758b30b5b298 Mon Sep 17 00:00:00 2001 From: EugeneTes Date: Fri, 12 Jun 2026 14:36:39 +0000 Subject: [PATCH] fix: decouple price book entries from news ledger snapshots (review) --- src/sim/knowledge.js | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/sim/knowledge.js b/src/sim/knowledge.js index 8f62e0c..7bde6fa 100644 --- a/src/sim/knowledge.js +++ b/src/sim/knowledge.js @@ -13,7 +13,8 @@ export function playerKnownPrices(world, planetId) { const book = p.priceBook[planetId] ?? null; let best = book; if (news && (!best || news.time > best.time)) best = news; - if (best && (!book || best.time > book.time)) p.priceBook[planetId] = best; + // Copy the envelope so the price book never aliases NewsLedger's stored snapshots. + if (best && (!book || best.time > book.time)) p.priceBook[planetId] = { time: best.time, prices: best.prices }; return best ? { time: best.time, prices: best.prices, ageDays: world.t - best.time } : null; }