From 26955efb535a04968fdcc6410dba174d99a7a8be Mon Sep 17 00:00:00 2001 From: teknium1 <127238744+teknium1@users.noreply.github.com> Date: Sat, 19 Sep 2026 22:48:12 -0700 Subject: [PATCH] test(state): clean-close residual-poison test requires WAL CI links SQLite 3.50.4 (WAL-reset bug) so Hermes opens state.db with journal_mode=DELETE: no -wal sidecar, an empty _db_sidecar_identity, and the sticky _db_wal_generation_lost flag this test guards can never be set. The precondition assert on line 22 failed for all five entries. Mark it requires_wal like the other sidecar-generation tests so it runs where the regression is observable and skips where the runtime declined WAL. --- tests/hermes_state/test_clean_close_residual_poison.py | 1 + 1 file changed, 1 insertion(+) diff --git a/tests/hermes_state/test_clean_close_residual_poison.py b/tests/hermes_state/test_clean_close_residual_poison.py index 6d184668fe..e5763c764a 100644 --- a/tests/hermes_state/test_clean_close_residual_poison.py +++ b/tests/hermes_state/test_clean_close_residual_poison.py @@ -13,6 +13,7 @@ import pytest from hermes_state import SessionDB +@pytest.mark.requires_wal # the sticky flag exists only for a recorded WAL/SHM generation; DELETE mode has none @pytest.mark.parametrize("entry", ["normal", "optimize", "rebuild", "vacuum", "error_branch"]) def test_clean_close_never_causes_false_sticky_loss(tmp_path, monkeypatch, entry): path = tmp_path / "synthetic.db"