{"repo":"NousResearch/hermes-agent","public_id":"55755","display_label":"Memory tool missing or invalid action field fixes","summary":"Multiple issues and fixes addressing the memory tool's handling of missing, null, or unrecognized 'action' parameters, including schema validation gaps and unclear runtime error messages.","subsystem":"agent","counts":{"members":9,"open_issues":0,"open_issues_distinct":0,"open_prs":0,"closed_issues":2,"merged_prs":1,"attempt_prs":6},"landed_fix":{"status":"merged_to_main","basis":"structural","pr":131887},"resolution":{"state":"partially_resolved","by":"pr-131887"},"freshness":{"state":"verified","last_verified_at":"2026-10-03T01:24:21+00:00","is_stale":false},"grouping":{"backbone":"STRUCTURAL_PARTIAL","link_density":0.20444444444444446},"fix_edges":[{"issue_number":64291,"pr_number":131887,"tier":"verified","basis":"closing_ref","confidence":0.95,"recoverable_from_timeline":true}],"members":[{"kind":"issue","number":55755,"title":"tool_executor: 'Unknown action None' error when memory tool receives invalid action string","url":null,"state":"closed"},{"kind":"issue","number":64291,"title":"[Bug]: memory tool schema missing \"action\" from top-level required fields","url":null,"state":"closed"},{"kind":"pr","number":55768,"title":"fix(memory): validate action parameter early with clear error messages","url":null,"state":"closed","close_reason":{"refs":[{"kind":"commit","value":"d682f320b35a13084371a541a835e1d988c982b8","number":0},{"kind":"pr","value":"#55755","number":55755}],"category":"implemented_elsewhere","implication":"superseded"},"merged":false},{"kind":"pr","number":64311,"title":"fix(tools): require 'action' in memory tool schema validation","url":null,"state":"closed","close_reason":{"refs":[{"kind":"pr","value":"#64330","number":64330},{"kind":"pr","value":"#64330","number":64330}],"category":"superseded_by_pr","implication":"superseded"},"merged":false},{"kind":"pr","number":64330,"title":"fix: guard memory tool against missing action and operations (#64291)","url":null,"state":"closed","close_reason":{"refs":[{"kind":"pr","value":"#131887","number":131887}],"category":"implemented_elsewhere","implication":"superseded"},"merged":false},{"kind":"pr","number":64670,"title":"fix(memory): reject missing action at runtime with clear error message","url":null,"state":"closed","close_reason":{"refs":[{"kind":"pr","value":"#64330","number":64330},{"kind":"pr","value":"#64330","number":64330}],"category":"duplicate_of","implication":"duplicate"},"merged":false},{"kind":"pr","number":66099,"title":"fix(memory): add action to required parameters in tool schema","url":null,"state":"closed","close_reason":{"refs":[{"kind":"commit","value":"1fcc10a59497","number":0},{"kind":"pr","value":"#64291","number":64291},{"kind":"pr","value":"#64330","number":64330},{"kind":"pr","value":"#64670","number":64670},{"kind":"pr","value":"#66866","number":66866},{"kind":"pr","value":"#64311","number":64311},{"kind":"pr","value":"#66099","number":66099},{"kind":"pr","value":"#64311","number":64311},{"kind":"pr","value":"#64330","number":64330},{"kind":"pr","value":"#64330","number":64330},{"kind":"pr","value":"#64670","number":64670},{"kind":"pr","value":"#64330","number":64330},{"kind":"pr","value":"#64330","number":64330},{"kind":"pr","value":"#66099","number":66099},{"kind":"pr","value":"#64311","number":64311},{"kind":"pr","value":"#66866","number":66866},{"kind":"pr","value":"#64330","number":64330},{"kind":"pr","value":"#64311","number":64311},{"kind":"pr","value":"#66099","number":66099},{"kind":"pr","value":"#64330","number":64330},{"kind":"pr","value":"#64670","number":64670},{"kind":"pr","value":"#66866","number":66866},{"kind":"pr","value":"#64670","number":64670},{"kind":"pr","value":"#66866","number":66866},{"kind":"pr","value":"#64330","number":64330},{"kind":"pr","value":"#64330","number":64330},{"kind":"pr","value":"#64311","number":64311},{"kind":"pr","value":"#66099","number":66099},{"kind":"pr","value":"#64330","number":64330},{"kind":"pr","value":"#64670","number":64670},{"kind":"pr","value":"#66866","number":66866},{"kind":"pr","value":"#64330","number":64330},{"kind":"pr","value":"#374151","number":374151},{"kind":"pr","value":"#64291","number":64291},{"kind":"pr","value":"#64311","number":64311},{"kind":"pr","value":"#66099","number":66099}],"category":"partial_fix","implication":"needs_llm"},"merged":false},{"kind":"pr","number":66866,"title":"fix(memory): clear error when both 'action' and 'operations' are missing (#64291)","url":null,"state":"closed","close_reason":{"refs":[{"kind":"pr","value":"#64330","number":64330},{"kind":"pr","value":"#64330","number":64330}],"category":"duplicate_of","implication":"duplicate"},"merged":false},{"kind":"pr","number":131887,"title":"fix: guard memory tool against missing action and operations [risk 0.20]","url":null,"state":"merged","close_reason":{"category":"merged","implication":"superseded"},"merged":true,"is_fix_pr":true,"fix_tier":"verified","files_changed":["tests/tools/test_memory_tool.py","tools/memory_tool.py"]}],"trust":{"default_tier":"verified","includes_suggested":false}}