Skip to content

Private-target review pool is three OpenRouter free ZDR routes; a single 429 burst fails every review closed #2148

Description

@seonghobae

Observed

After #2146 (ZDR feed keyed by model_id) reached main (64f483db9d052322c65bcdf1675d66138156f306), the private consumer ContextualWisdomLab/late-life-anxiety-reanalysis PR #10 (head a1cd5bc6783c6510dfcf937f523c733366e82213) was reopened. noema-review run 34738383583 / job 103673946748 (2026-09-13 04:50 UTC) now gets past catalog admission and fails at preflight instead. Artifact noema-sidecar-evidence 10311872313, contextual-orchestrator-preflight.json:

candidate_count: 3, probed_count: 3, rejected_count: 3, ready_count: 0, target_ready: 8, account_skip_after_429: 2
openrouter inclusionai/ling-3.0-flash-fin:free   rejected HTTPError 429 attempts=1
openrouter inclusionai/ling-3.0-flash-sante:free rejected HTTPError 429 attempts=1
openrouter inclusionai/ling-3.0-flash-vl:free    rejected HTTPError 429 attempts=1

Sanitized stderr also shows provider_discovery_failed provider=bytez code=http_status_500 (pre-existing, #1915). strix run 34738383616 fails the same way.

Why this is a pool/contract gap, not the #2146 defect

With CONTEXTUAL_ORCHESTRATOR_REQUIRE_ZDR=true (every private/internal target per ADR-0003), the only routes that can ever be attested are OpenRouter feed entries that are also free. Today's feed intersected with discovery yields exactly these three Novita-served :free models, all on the single OPENROUTER_API_KEY account. nvidia_nim/nvidia_nim_sub are affirmatively not ZDR; bytez is unattested. One 429 burst on OpenRouter's free tier therefore rejects every candidate, account_skip_after_429 retires the only account, and the run fails closed with no retry, so private repositories effectively cannot get a hosted review even though the policy path is now correct.

Next action (owner: central review sidecar / launcher; CO for provider adds)

  1. Decide whether the launcher preflight may honor OpenRouter's Retry-After / rate-limit reset on 429 when the remaining candidate set is a single account (a provider-stated wait, not an arbitrary retry budget), and measure the runner-time cost against the current queue saturation (ops: diagnose and bound organization GitHub Actions queue starvation #712, Actions queue saturation: 120 open PRs + self-amplifying scheduler block all org merges (pg-erd-cloud: 0 merges since 2026-08-20) #1531). Deliverable: ADR-0003 amendment + RED/GREEN preflight test with a controllable 429→200 double.
  2. Widen the attested ZDR free pool: track Integrate Experiential Labs KV source into canonical review bootstrap #2119 (Experiential Labs, needs endpoint-specific attestation) and the CO pin advance chore(ci): advance the vendored orchestrator pin to 012beaac and guard unattested providers #2137 (fix(discovery): recover usable Bytez chat models), and re-census the feed∩discovery set after each.
  3. Until 1 or 2 lands, private consumer PRs need the operator infra-exception path documented in guideline §11 for the three sidecar reviews only; substantive gates (bootstrap, scan-pr-queue, CodeQL, SAST) now run on those heads.

Internal review date: 2026-09-15 (two days, because the manuscript PR is blocked on review capacity only). This date is a next-action deadline, not a fix promise.

Refs #2146, #2122, #2119, #2137, #1915, ContextualWisdomLab/late-life-anxiety-reanalysis#10.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't workingpriority: criticalImmediate blocker, P0, urgent deadlock, or critical incident

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions