From f153d671d316ea7b2200c0edcb80206d896ffcd5 Mon Sep 17 00:00:00 2001 From: DCCONSTRUCTIONS Date: Thu, 27 Aug 2026 11:39:48 +0300 Subject: [PATCH] fix(perception): close integrated shadow packaging --- .../worker/Invoke-M49TgsIntegratedGraphShadow.ps1 | 9 +++++++-- .../build_m49_tgs_integrated_graph_worker_artifact.py | 1 + tests/test_m49_tgs_integrated_graph_shadow.py | 1 + 3 files changed, 9 insertions(+), 2 deletions(-) diff --git a/experiments/perception/worker/Invoke-M49TgsIntegratedGraphShadow.ps1 b/experiments/perception/worker/Invoke-M49TgsIntegratedGraphShadow.ps1 index 5688d3a..319d36d 100644 --- a/experiments/perception/worker/Invoke-M49TgsIntegratedGraphShadow.ps1 +++ b/experiments/perception/worker/Invoke-M49TgsIntegratedGraphShadow.ps1 @@ -381,8 +381,13 @@ try { } $graphExit = [int](Get-Container $graphName).State.ExitCode $tgsExit = [int](Get-Container $tgsName).State.ExitCode - (& docker logs $graphName 2>&1) | Set-Content -LiteralPath (Join-Path $runOutput "graph.log") -Encoding utf8 - (& docker logs $tgsName 2>&1) | Set-Content -LiteralPath (Join-Path $runOutput "tgs.log") -Encoding utf8 + $previousErrorAction = $ErrorActionPreference + $ErrorActionPreference = "Continue" + $graphLogs = & docker logs $graphName 2>&1 + $tgsLogs = & docker logs $tgsName 2>&1 + $ErrorActionPreference = $previousErrorAction + $graphLogs | Set-Content -LiteralPath (Join-Path $runOutput "graph.log") -Encoding utf8 + $tgsLogs | Set-Content -LiteralPath (Join-Path $runOutput "tgs.log") -Encoding utf8 if ($graphExit -ne 0) { throw "M49 integrated graph failed with exit code $graphExit" } if ($tgsExit -ne 0) { throw "M49 integrated TGS failed with exit code $tgsExit" } diff --git a/scripts/build_m49_tgs_integrated_graph_worker_artifact.py b/scripts/build_m49_tgs_integrated_graph_worker_artifact.py index 91211ce..56f4514 100644 --- a/scripts/build_m49_tgs_integrated_graph_worker_artifact.py +++ b/scripts/build_m49_tgs_integrated_graph_worker_artifact.py @@ -23,6 +23,7 @@ SOURCES = ( Path("experiments/perception/run_m48s_reference_graph_shadow_worker.py"), Path("experiments/perception/worker/rf_detr_large_native_kb4_config.pbtxt"), Path("experiments/perception/worker/m49_t3_travel/prepare_tgs_fail_closed_inputs.py"), + Path("experiments/perception/worker/m49_t3_travel/build_tgs_fail_closed_evidence.py"), Path("experiments/perception/worker/m49_t3_travel/prepare_tgs_full_shadow_inputs.py"), Path("experiments/perception/worker/m49_t3_travel/run_tgs_full_shadow.cpp"), Path("experiments/perception/worker/m49_t3_travel/build_tgs_full_shadow_binary.sh"), diff --git a/tests/test_m49_tgs_integrated_graph_shadow.py b/tests/test_m49_tgs_integrated_graph_shadow.py index d950c72..1d589f9 100644 --- a/tests/test_m49_tgs_integrated_graph_shadow.py +++ b/tests/test_m49_tgs_integrated_graph_shadow.py @@ -204,5 +204,6 @@ def test_worker_artifact_is_deterministic_and_excludes_gauss(monkeypatch, tmp_pa assert release_stream is not None release = json.loads(release_stream.read()) assert not any("gauss" in name.lower() or "playcanvas" in name.lower() for name in names) + assert "payload/build_tgs_fail_closed_evidence.py" in names assert release["scope"]["gauss_or_playcanvas_action"] == "none" assert all(value is False for value in release["authority"].values())