Skip to content

[aw-failures] [aw-fix] P1: Smoke Claude hard-fails — claude-opus-4-8 blocked by model policy (403 model_policy_violation) #46845

Description

@github-actions

Repoint the Smoke Claude engine off claude-opus-4-8 (or get that model allow-listed) — it is now a deterministic 403 that keeps the Claude smoke canary red on every run.

Parent: #46171

Problem statement

The claude engine terminates on the first API request with a non-retryable 403 model_policy_violation; claude-opus-4-8 is explicitly disallowed by the account model policy, so the smoke canary never does any work (0 turns, 0 tokens).

403 {"error":{"type":"model_policy_violation","message":"Model 'claude-opus-4-8' is not permitted: it is explicitly disallowed by the model policy.","model":"claude-opus-4-8","reason":"disallowed"}}

The claude-harness classifies it isAuthenticationFailedError=true and does not retry (first-attempt auth failure is non-retryable), so the Execute Claude Code CLI step exits 1.

Affected workflows & run IDs

Probable root cause

The smoke workflow / engine default resolves to claude-opus-4-8[1m], but the API key's model policy explicitly disallows claude-opus-4-8. Either the policy changed (opus removed from the allow-list) or the smoke config was never pinned to a policy-permitted model.

Proposed remediation

  1. Pin Smoke Claude to a model the account policy permits (e.g. a currently-allowed Sonnet/Haiku tier) instead of claude-opus-4-8, or add claude-opus-4-8 to the account model allow-list if it is meant to be available.
  2. Surface model_policy_violation distinctly in the harness so it is not silently bucketed as a generic auth failure.

Success criteria / verification

Generated by 🔍 [aw] Failure Investigator (6h) · 136.1 AIC · ⌖ 36.6 AIC · ⊞ 5.2K ·

  • expires on Jul 27, 2026, 5:33 AM UTC-08:00

Metadata

Metadata

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions