diff --git a/tests/control_plane/test_causal_blocked_closeout_cli.py b/tests/control_plane/test_causal_blocked_closeout_cli.py index 8646087c72..f5cdd149ba 100644 --- a/tests/control_plane/test_causal_blocked_closeout_cli.py +++ b/tests/control_plane/test_causal_blocked_closeout_cli.py @@ -15,6 +15,7 @@ _configure_selectable_alternative, _initialize_git_checkout, _spend_run_count, _write_fixture, ) from loopx.control_plane.coordination.runtime_shadow import build_todo_runtime_shadow_projection +from tests.control_plane.codex_checkpoint_fixture import read_cli_policy_payload MONITOR_ID = "todo_causal_monitor" @@ -39,7 +40,7 @@ def cli(*args: str, cwd: Path = project) -> tuple[int, dict]: context.chdir(cwd) rc = cli_main(["--registry", str(registry), "--runtime-root", str(runtime), "--format", "json", *args]) - return rc, json.loads(capsys.readouterr().out) + return rc, read_cli_policy_payload(capsys.readouterr().out, returncode=rc) state = _configure_completion_validation_todo(project) _configure_selectable_alternative(project) diff --git a/tests/control_plane/test_deferred_original_turn_binding.py b/tests/control_plane/test_deferred_original_turn_binding.py index 14ccf86ee5..e32df457d9 100644 --- a/tests/control_plane/test_deferred_original_turn_binding.py +++ b/tests/control_plane/test_deferred_original_turn_binding.py @@ -1,10 +1,10 @@ """A compact candidate view cannot replace an admitted Turn's identity.""" import copy -import json from pathlib import Path import pytest +from tests.control_plane.codex_checkpoint_fixture import read_cli_policy_payload from tests.control_plane.test_quota_settlement_cli import ( AGENT_ID, GOAL_ID, @@ -84,7 +84,7 @@ def compact(value): capsys.readouterr() rc = main(["--format", "json", "--registry", str(registry), "--runtime-root", str(runtime), *guard, ]) - replay = json.loads(capsys.readouterr().out) + replay = read_cli_policy_payload(capsys.readouterr().out, returncode=rc) assert rc == 0, replay assert replay["heartbeat_receipt"]["settlement_identity"] == identity channel = replay["interaction_contract"]["cli_channel"]