Skip to content

[Bug]: Catalog exposes four uncallable OpenCode models from augmentation or stale discovery #2330

Closed

Description

@vinsew

Client or integration

Codex App and direct HTTP client through OpenCodex.

Area

Catalog / models.

Summary

The generated Codex catalog exposes four OpenCode models that consistently cannot serve a minimal text prompt. One is injected by OpenCodex metadata augmentation despite being absent from authoritative live discovery. Three are accepted from stale upstream /models responses even though the current product documentation omits them and inference explicitly rejects them.

Expected: a normal visible provider/model selector should be callable, or a known terminally unsupported row should be excluded from the public catalog.

Reproduction

Environment:

  • OpenCodex 2.29.0
  • Codex 0.149.0
  • macOS 26.6.1 arm64

For each routed model below, send the same minimal prompt through OpenCodex twice and then directly to the corresponding upstream endpoint once:

curl http://127.0.0.1:10100/v1/chat/completions \
  -H 'Content-Type: application/json' \
  -d '{"model":"PROVIDER/MODEL","messages":[{"role":"user","content":"Reply with exactly: OK"}],"max_tokens":256}'

Observed catalog/discovery state:

  1. opencode-go/grok-4.6 is absent from authenticated https://opencode.ai/zen/go/v1/models, but OpenCodex adds it through generated-metadata augmentation.
  2. opencode-go/mimo-v2-omni and opencode-go/mimo-v2-pro are returned by the authenticated Go /models endpoint, but current Go documentation lists only MiMo V2.5 and V2.5 Pro.
  3. opencode-free/deepseek-v4-flash-free is returned by keyless Zen /models, but is absent from the current Zen free-model list.

The first category follows from JAWCODE_CATALOG_AUGMENT_PROVIDERS including opencode-go and augmentRoutedModelsWithMetadata() appending generated metadata rows omitted by live discovery.

Version

2.29.0

Operating system

macOS 26.6.1 arm64.

Provider and model

  • opencode-go/grok-4.6
  • opencode-go/mimo-v2-omni
  • opencode-go/mimo-v2-pro
  • opencode-free/deepseek-v4-flash-free

Logs or error output

opencode-go/grok-4.6
HTTP 401 on both /chat/completions and /responses
Model grok-4.6 is not supported

opencode-go/mimo-v2-omni
HTTP 400
Unsupported model mimo-v2-omni

opencode-go/mimo-v2-pro
HTTP 400
Unsupported model mimo-v2-pro

opencode-free/deepseek-v4-flash-free
HTTP 400
Model is unavailable

Screenshots and supporting files

Upstream documentation:

Suggested handling:

  • Do not augment opencode-go/grok-4.6 when authoritative live discovery omits it.
  • Add a measured compatibility exclusion for the three currently uncallable live-discovered rows, or introduce an admission rule that can reject explicit terminal unsupported / unavailable results.

Redacted configuration

{
  "providers": {
    "opencode-go": {
      "adapter": "openai-chat",
      "baseUrl": "https://opencode.ai/zen/go/v1",
      "authMode": "key",
      "apiKey": "[REDACTED]"
    },
    "opencode-free": {
      "adapter": "openai-chat",
      "baseUrl": "https://opencode.ai/zen/v1",
      "authMode": "key",
      "keyOptional": true,
      "liveModels": true
    }
  }
}

Checks

  • I searched existing issues and documentation.
  • I removed secrets, tokens, account details, request credentials, and personal data.
  • Each model was tested twice through OpenCodex and once directly against the corresponding upstream endpoint.

Activity

  1. added
    bugSomething isn't working
    catalogModel catalog, slugs, visibility, routed entries
    on Aug 22, 2026
  2. github-actions commented on Aug 22, 2026

    @github-actions
    Contributor

    Issue reopened

    The report now contains the information required by the automated check. Thanks for updating it.

  3. lidge-jun commented on Aug 22, 2026

    @lidge-jun
    Owner

    리뷰 · 우선순위 69 / 80

    지금 dev HEAD b08ea715c. 이 시간 #2320 + #2328/#2281 + #2327/#2270 착지. 이 이슈는 그 위. 카탈로그가 호출 불가 모델 4개를 보여 줌. 2.29.0. 각각 OpenCodex 두 번 + 업스트림 한 번. 구현 PR 없음. #2329이랑 같은 작성자, 같은 Go 표면. 층은 다름. 중복 닫지 말 것.

    현재 dev 두 갈래. (A) 메타 보강. JAWCODE_CATALOG_AUGMENT_PROVIDERS = opencode-go, deepseek (src/codex/catalog/parsing.ts:147). augmentRoutedModelsWithMetadata(provider-fetch.ts:2032-2063)가 live에 없는 메타 로우를 붙임. 그 다음 shouldExposeRoutedModel(parsing.ts:187-191). 제외는 ROUTED_MODEL_COMPATIBILITY_EXCLUSIONS — 지금 opencode-go/hy3-preview만 (parsing.ts:149-152). 테스트 tests/codex-catalog.test.ts:5321. 본문 opencode-go/grok-4.6이 이 길. live /zen/go/v1/models에 없고 문서 목록에도 없음(이 시간 opencode.ai/docs/go). 401 Model grok-4.6 is not supported.

    (B) 라이브가 주는데 추론이 거절. opencode-go/mimo-v2-omni, opencode-go/mimo-v2-pro HTTP 400 Unsupported model. 문서 목록은 MiMo-V2.5 / V2.5 Pro만. 레지스트리 noVisionModels에 mimo-v2-pro가 남아 있음(registry.ts:1395) — 시드가 구형 아이디를 아직 앎. 라이브가 주면 카탈로그에 남음. opencode-free/deepseek-v4-flash-free HTTP 400 Model is unavailable. shouldExposeProviderModel(provider-fetch.ts:1490-1492)가 opencode-free에서 big-pickle 또는 -free 접미를 통과시킴. 라이브가 주면 보임. 문서 Zen free 목록에 없으면 제외 대상.

    augmentation 전체를 끄지 말 것. Ox Alpha(x-preview-f-free)랑 deepseek-v4-flash-vision-exp는 레지스트리가 메타만 깔아 둠(registry.ts:1348-1359). 게이트웨이가 아이디를 줄 때를 대비. 그 계약을 죽이면 카탈로그 팁이 사라짐. grok-4.6만 빼거나 제외 셋에 넣어라. 라이브가 다시 문서에 올리면 제외를 지움. 일반 unsupported/unavailable 입학 규칙을 이 티켓에서 만들지 말 것. 측정된 slug 4개만.

    types.ts/config.ts 안 만짐. 스플릿 안 씹힘. 리베이스하지 말고 닫으라는 케이스 아님. #2329이랑 한 PR로 합치지 말 것. 와이어 기본 vs 카탈로그 노출. #1168 GLM CN이랑 무관. #2188 L1–L9 사이드카 + routed vision(#2306) 이미 dev. x_search 넣지 말 것. Grok OAuth Chat 기본(#2255)이랑 다른 레인임. 프리뷰 배포 아님. 카탈로그는 Ox Alpha x-preview-f-free + deepseek-v4-flash-vision-exp. v2.29.0 태그됨. v2.30.0-preview.20260821 있음. 비전공자 유지. 피커에 죽은 모델 4개가 보여서 69.

    해결방안: 이슈는 열린 채 유지. ROUTED_MODEL_COMPATIBILITY_EXCLUSIONS에 opencode-go/grok-4.6, opencode-go/mimo-v2-omni, opencode-go/mimo-v2-pro, opencode-free/deepseek-v4-flash-free 추가. hy3-preview 유지. Ox Alpha/vision preview augment는 유지. 테스트: shouldExposeRoutedModel 네 slug false, hy3-preview false 유지, ox-alpha-free는 live 있으면 true. 라벨 건드리지 말 것. 스플릿이 parsing.ts를 옮기면 리베이스하지 말고 닫고 다시 짜라. 지금은 그 정도 아님.

    이 댓글은 grok-bot이 작성했습니다

  4. added a commit that references this issue on Aug 22, 2026
    d587a4b
  5. lidge-jun commented on Aug 22, 2026

    @lidge-jun
    Owner
  6. added a commit that references this issue on Aug 26, 2026
    a2d2ca4
  7. added 4 commits that reference this issue on Sep 17, 2026
    46578c5
    32a4a7d
    08d4b13
    e16003a
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 workingcatalogModel catalog, slugs, visibility, routed entries

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions