Fix catalog test sentences and vendor validations

Task 13469 · Done · Coder · created · updated

Found while shipping vendor wave W7 (Task 13377). Itemized: 1. A catalog vendor's refusal sentence quotes the field label with its capital, for example "Mapbox rejected the Access token (401)" or "Ramp rejected the Client secret (401)". Lowercase the label mid-sentence unless its first word is an acronym or a brand ("the access token", but "the API key"). Every wave's tests pin the capitalised form, so update them in the same change. 2. Twitch's Test (`GET id.twitch.tv/oauth2/validate`) does not compare the token's `client_id` with the row's Client ID. A mismatched pair passes Test, then every Helix call fails with 401. Add a generic `[test]` check that a response field equals a configured field. 3. Semrush's balance check (`countapiunits.html`) answered a made-up key with 400 JSON on 2026-11-03. Historically it answered "ERROR 120 :: WRONG KEY" as text with HTTP 200. If that comes back, the Test would pass a bad key. Consider a body-text rejection pattern. Out of scope: new vendors; changing the Test endpoints. Done means: - The refusal sentence reads "the access token" and "the API key"; all integration tests are updated and green. - A Twitch row whose token belongs to another app fails Test with a named reason. - `./dc check quick` green.

Outcome

Refusal sentences now lowercase the field label ("the access token", "the API key"). Added generic [test] require_equal (Twitch client_id) and rejected_text (Semrush ERROR 120). Fixed the api image build. Quick gate green, 2461 tests pass; PR #7919 queued to the merge lane. Memory: used mem-25288.

Pull request

Artifacts

Activity

  • Created
  • Run
  • Runner started
  • Runner ended (done)