diff --git a/vav_pipeline/test/tablet38_l1_integrity_test.exs b/vav_pipeline/test/tablet38_l1_integrity_test.exs index 17966dd2..d617fde5 100644 --- a/vav_pipeline/test/tablet38_l1_integrity_test.exs +++ b/vav_pipeline/test/tablet38_l1_integrity_test.exs @@ -172,7 +172,15 @@ defmodule VavPipeline.Tablet38L1IntegrityTest do L1Integrity.start_link(l1_root: root, expected_hash: L1Reader.expected_hash(), interval: :never) on_exit(fn -> - if Process.alive?(pid), do: GenServer.stop(pid) + # The witness is linked to the test process and may already be + # gone when on_exit runs (seed 221974, 2026-10-15): stopping a + # process that has exited is not a failure of the scroll. + try do + if Process.alive?(pid), do: GenServer.stop(pid) + catch + :exit, _ -> :ok + end + {:ok, _} = Supervisor.restart_child(VavPipeline.Supervisor, L1Integrity) MannaLedger.reset() File.rm(VavPipeline.Manna.provision_file())