AgentnessBench / tests /runtime /test_session_distance.py
irregular6612's picture
refactor(scenario): delete predator_evade; template is the canonical scenario
93cd78f
Raw
History Blame Contribute Delete
1.24 kB
import proteus.game.scenarios # noqa: F401
from proteus.game.engine.difficulty import Difficulty
from proteus.providers import FakeProvider
from proteus.game.agents import VanillaAgent
from proteus.game.runtime import SessionRunner
def test_each_turn_records_pre_and_post_bfs_distance():
prov = FakeProvider(["ACTION: up"] * 10, model_name="demo")
trace = SessionRunner(
"template", VanillaAgent(prov), difficulty=Difficulty.EASY,
seed=42, play_turns=4, use_probe=False,
).run()
for t in trace.turns:
assert t.pre_bfs_distance is not None
assert t.post_bfs_distance is not None
assert t.post_focal_pos is not None
# spec §9: away-move quality is measured vs the PRE-move predator cell
first = trace.turns[0]
assert first.agent_distance_delta is not None
def test_episode_records_turn_order_capture_rule_horizon():
prov = FakeProvider(["ACTION: up"] * 10, model_name="demo")
trace = SessionRunner(
"template", VanillaAgent(prov), difficulty=Difficulty.EASY,
seed=42, play_turns=4, use_probe=False,
).run()
assert trace.turn_order == "focal_then_predator"
assert trace.capture_rule == "same_cell"
assert trace.horizon == 4