{"version":"2.1.234","anchor":"claude-plugin-eval-handles-termination-signals-and-cleans-up","canonical_anchor":"claude-plugin-eval-handles-termination-signals-and-cleans-up","heading":"claude plugin eval handles termination signals and cleans up its output","tier":"use","area":"Plugin Evals","scope":null,"heads_up":null,"url":"https:\/\/changelogs.core-directive.com\/v\/2.1.234\/e\/claude-plugin-eval-handles-termination-signals-and-cleans-up","release_url":"https:\/\/changelogs.core-directive.com\/v\/2.1.234","markdown":"### `claude plugin eval` handles termination signals and cleans up its output\n\nPlugin eval runs now handle kill signals with proper exit codes and title reports with plugin names.\n\n**What**\n\nThe plugin eval runner now traps SIGTERM as well as SIGINT, exiting 143 and 130 respectively, and records the run outcome as \"terminated\", \"interrupted\" or \"signal_killed\". Report titles now name the suite's plugins and versions instead of the fixed heading \"Eval suite\".\n\n**Details**\n\n- An interactive interview killed by a signal reports an exit code computed as 128 plus the signal number.\n- Every stderr line is passed through a control-character stripper before being shown.\n\n**Evidence**\n\n`Eval suite`\n\n- Area: Plugin Evals\n- Names: `claude plugin eval`\n- Tier: Use it now\n- Useful: 2\/5\n- Signal: 1\/5"}