Close two gaps in the Slack v1-deprecation tests surfaced in review:
- should_use_v2_api scope detection was only exercised with a plain-dict
response; the production-default path reads the error code via
getattr(response, "data") on a real SlackResponse. Add a case using the
existing MockResponse helper so that branch is covered.
- The backoff switch to NotificationUnprocessableException is meant to let a
transient failure retry and ultimately succeed; only persistent-fail (5x)
and never-retry were tested. Add a fail-twice-then-succeed case asserting
3 attempts and the success gauge.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>