hermes-agent/tests/plugins
Victor Kyriazakos eac1e25127 fix(observability): parent marks to the live turn scope, not the session
Scope events export when their OWNING scope closes. Turn scopes close
every turn; session scopes close only at session end. Marks were attached
to the session handle, so a long-lived conversation — a Slack thread open
all day, the normal enterprise case — emitted no approval or turn marks
for hours, and none at all if the process died first. Audit dashboards
showed an empty approval table while approvals were demonstrably firing;
the operator had to end the session to see anything.

Attach marks to the live turn handle when one exists for the mark's
session (active_turn already validates live/same-profile/same-session/
unreleased), falling back to the session handle otherwise — correct for
session-level events like session.end and for marks emitted outside a
turn. Parentage semantics are unchanged: the turn is a child of the
session, so the session tree is identical, only export cadence changes
from per-session to per-turn.
2026-08-12 19:20:03 -07:00
..
browser
…
dashboard_auth
…
image_gen
…
memory
…
model_providers
…
platforms
…
transcription
…
tts
…
video_gen
…
web
…
__init__.py
…
test_a2a_phase23.py
…
test_a2a_plugin.py
…
test_achievements_plugin.py
…
test_chronos_cron.py
…
test_chronos_verify.py
…
test_discord_runtime_failure.py
…
test_disk_cleanup_plugin.py
…
test_google_meet_audio.py
…
test_google_meet_node.py
…
test_google_meet_plugin.py
…
test_google_meet_realtime.py
…
test_hindsight_health_grace_timeout.py
…
test_hindsight_root_guard.py
…
test_holographic_vector_storage.py
…
test_kanban_attachments.py
…
test_kanban_board_project_api.py
…
test_kanban_dashboard_plugin.py
…
test_kanban_estimate.py
…
test_kanban_model_override.py
…
test_kanban_worker_runs.py
…
test_langfuse_plugin.py
…
test_nemo_relay_mark_turn_parenting.py fix(observability): parent marks to the live turn scope, not the session 2026-08-12 19:20:03 -07:00
test_nemo_relay_plugin.py
…
test_plugin_dashboard_auth_contract.py
…
test_raft_check_fn_silent.py
…
test_retaindb_plugin.py
…
test_security_guidance_plugin.py
…
test_teams_pipeline_plugin.py
…