{"repo":"NousResearch/hermes-agent","public_id":"23096","display_label":"Thread-safety fix for poll timestamp access","summary":"These items address a concurrency bug where reads and writes to `_last_poll_timestamps` in the EventBridge polling logic were not protected by a lock. The work involves adding proper lock protection around that shared state.","subsystem":"mcp","counts":{"members":3,"open_issues":0,"open_issues_distinct":0,"open_prs":0,"closed_issues":1,"merged_prs":0,"attempt_prs":2},"landed_fix":null,"resolution":{"state":"unresolved","by":null},"freshness":{"state":"never_verified","last_verified_at":null,"is_stale":false},"grouping":{"backbone":"STRUCTURAL_SPANNING","link_density":0.6666666666666666},"fix_edges":[],"members":[{"kind":"issue","number":23096,"title":"bug: _last_poll_timestamps read/write in _poll_once missing lock protection","url":null,"state":"closed"},{"kind":"pr","number":23174,"title":"fix(tools): protect _last_poll_timestamps with self._lock in EventBridge","url":null,"state":"closed","close_reason":{"refs":[{"kind":"pr","value":"#23219","number":23219}],"category":"superseded_by_pr","implication":"superseded"},"merged":false,"is_fix_pr":true,"fix_tier":"suggested","fix_detail_withheld":true},{"kind":"pr","number":23219,"title":"Fix/mcp poll timestamps lock","url":null,"state":"closed","close_reason":{"refs":[{"kind":"pr","value":"#23107","number":23107},{"kind":"pr","value":"#23096","number":23096}],"category":"duplicate_of","implication":"duplicate"},"merged":false}],"trust":{"default_tier":"verified","includes_suggested":false}}