From 1827c51c422705568ea16de8f7202079084f44a1 Mon Sep 17 00:00:00 2001 From: Joseph Doherty Date: Sun, 7 Jun 2026 15:16:14 -0400 Subject: [PATCH] refactor(scripting): clarify sandbox-pin invariant + add RootNamespace (A0 review) --- .../ZB.MOM.WW.OtOpcUa.Core.Scripting.Abstractions.csproj | 1 + src/Core/ZB.MOM.WW.OtOpcUa.Core.Scripting/ScriptSandbox.cs | 4 +++- 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/src/Core/ZB.MOM.WW.OtOpcUa.Core.Scripting.Abstractions/ZB.MOM.WW.OtOpcUa.Core.Scripting.Abstractions.csproj b/src/Core/ZB.MOM.WW.OtOpcUa.Core.Scripting.Abstractions/ZB.MOM.WW.OtOpcUa.Core.Scripting.Abstractions.csproj index 3b51d96a..f9305356 100644 --- a/src/Core/ZB.MOM.WW.OtOpcUa.Core.Scripting.Abstractions/ZB.MOM.WW.OtOpcUa.Core.Scripting.Abstractions.csproj +++ b/src/Core/ZB.MOM.WW.OtOpcUa.Core.Scripting.Abstractions/ZB.MOM.WW.OtOpcUa.Core.Scripting.Abstractions.csproj @@ -8,6 +8,7 @@ true true $(NoWarn);CS1591 + ZB.MOM.WW.OtOpcUa.Core.Scripting diff --git a/src/Core/ZB.MOM.WW.OtOpcUa.Core.Scripting/ScriptSandbox.cs b/src/Core/ZB.MOM.WW.OtOpcUa.Core.Scripting/ScriptSandbox.cs index aed728d0..514633ff 100644 --- a/src/Core/ZB.MOM.WW.OtOpcUa.Core.Scripting/ScriptSandbox.cs +++ b/src/Core/ZB.MOM.WW.OtOpcUa.Core.Scripting/ScriptSandbox.cs @@ -56,7 +56,9 @@ public static class ScriptSandbox // Core.Abstractions — DataValueSnapshot + DriverDataType so scripts can name // the types they receive from ctx.GetTag. typeof(DataValueSnapshot).Assembly, - // Core.Scripting itself — ScriptContext base class + Deadband static. + // Core.Scripting.Abstractions — ScriptContext base class + Deadband static. + // Intentionally NOT Core.Scripting (which holds ScriptEvaluator/ScriptSandbox + Roslyn): + // keeping it out of the sandbox pin keeps Roslyn out of the globalsType assembly closure. typeof(ScriptContext).Assembly, // Serilog.ILogger — script-side logger type. typeof(Serilog.ILogger).Assembly,