fix(herdr): ensure unique agent name via sha1 truncation and align mock errors
- Replace legacy s[:16]-s[-15:] truncation with 8-char SHA-1 hash suffix in sanitize.py and lib.sh to prevent workspace name collisions - Align mock Herdr error messages in tests/conftest.py to real Herdr 0.8.0 output format - Add missing required/invalid_agent_name to early abort regex in lib.sh - Remove legacy heuristics in lib.sh has-session and unify mock agent lookups - Add unit tests in tests/test_sanitize_and_mock_errors.py (256/256 passed)
This commit is contained in:
@@ -54,7 +54,8 @@ def test_create_session_full(mam_sandbox, mock_herdr, mock_agents):
|
||||
assert len(agents) == 1, "There should be exactly one registered agent in the mock herdr state."
|
||||
|
||||
session_name = list(agents.keys())[0]
|
||||
assert session_name.endswith("-creator-claude")
|
||||
from lib_py.agents.sanitize import sanitize_herdr_agent_name
|
||||
assert len(session_name) <= 32
|
||||
assert agents[session_name]["status"] == "running"
|
||||
assert agents[session_name]["agent"] == "claude"
|
||||
|
||||
@@ -67,6 +68,7 @@ def test_create_session_full(mam_sandbox, mock_herdr, mock_agents):
|
||||
|
||||
sessions = reg.get("herdr_sessions", [])
|
||||
assert len(sessions) == 1
|
||||
assert session_name == sanitize_herdr_agent_name(sessions[0]["name"])
|
||||
assert sessions[0]["name"].endswith("-creator-claude")
|
||||
assert sessions[0]["status"] == "running"
|
||||
assert sessions[0]["role"] == "Creator"
|
||||
|
||||
Reference in New Issue
Block a user