{"repo":"NousResearch/hermes-agent","public_id":"70909","display_label":"Anthropic blank text block validation bug fixes","summary":"These items address a bug where blank or whitespace-only text content blocks are synthesized during request assembly, causing HTTP 400 errors from the Anthropic API. Fixes target coercion of blank system blocks and enforcement that prepended user turns contain non-whitespace content.","subsystem":"agent","counts":{"members":4,"open_issues":0,"open_issues_distinct":0,"open_prs":0,"closed_issues":1,"merged_prs":2,"attempt_prs":1},"landed_fix":{"status":"merged_to_main","basis":"structural","pr":86643,"merged_at":"2026-08-15T04:27:05+00:00"},"resolution":{"state":"resolved","by":"pr-86643"},"freshness":{"state":"verified","last_verified_at":"2026-08-15T04:27:05+00:00","is_stale":false},"grouping":{"backbone":"STRUCTURAL_SPANNING","link_density":0.5},"fix_edges":[{"issue_number":70909,"pr_number":77509,"tier":"verified","basis":"superseded_ref","confidence":0.9,"recoverable_from_timeline":false,"pr_merged_at":"2026-08-03T08:50:04+00:00"},{"issue_number":70909,"pr_number":86643,"tier":"verified","basis":"closing_ref","confidence":0.95,"recoverable_from_timeline":true,"pr_merged_at":"2026-08-15T04:27:05+00:00"}],"members":[{"kind":"issue","number":70909,"title":"Session wedges on HTTP 400 'text content blocks must contain non-whitespace text' from a blank block synthesized during request assembly (compression/merge/pre-shaped content)","url":null,"state":"closed"},{"kind":"pr","number":70910,"title":"fix(anthropic): prepended leading user turn must be non-whitespace (#70909)","url":null,"state":"closed","close_reason":{"refs":[{"kind":"pr","value":"#86643","number":86643},{"kind":"pr","value":"#77509","number":77509}],"category":"merged_via","implication":"superseded"},"merged":false},{"kind":"pr","number":77509,"title":"fix(anthropic): drop whitespace-only text blocks reaching the Messages API","url":null,"state":"merged","close_reason":{"category":"merged"},"merged":true,"is_fix_pr":true,"fix_tier":"verified","files_changed":["agent/anthropic_adapter.py","contributors/emails/[redacted:email]","tests/agent/test_anthropic_adapter.py"]},{"kind":"pr","number":86643,"title":"fix(anthropic): coerce blank system text blocks at extraction (#70909)","url":null,"state":"merged","close_reason":{"category":"merged"},"merged":true,"is_fix_pr":true,"fix_tier":"verified","files_changed":["agent/anthropic_adapter.py","tests/agent/test_anthropic_request_blank_block_guard.py"]}],"trust":{"default_tier":"verified","includes_suggested":false}}