Skip to content

[Feature]: surface Codex Ultrafast for Sol and Daybreak Blue fallback catalogs #2993

Description

@Ingwannu

Area

Catalog / models

What are you trying to accomplish?

Use Codex's new model-scoped Ultrafast speed tier through OpenCodex for gpt-5.6-sol and the existing Daybreak Blue capability alias, while keeping the existing Fast tier available.

A current Codex 0.151 catalog describes speed choices as model-owned service_tiers. When the catalog contains ultrafast, Codex can select it and sends service_tier: "ultrafast"; OpenCodex's canonical OpenAI Responses path already preserves that caller value when the global Fast override is left on Auto.

What prevents this today?

OpenCodex's bundled fallback snapshot in src/codex/data/upstream-models.json still gives gpt-5.6-sol only the priority / Fast row. gpt-daybreak-blue-latest inherits that pinned Sol capability row, so a fresh/static fallback catalog also offers only Fast.

A newer live Codex catalog can mask the gap: on this host both Sol and Daybreak Blue already contain priority and ultrafast. However, OpenCodex must also work when a newer live row is unavailable, a cache is rebuilt, or the installed Codex predates the tier metadata. In those cases the bundled fallback silently removes Ultrafast from the picker.

What should OpenCodex do?

  • Keep the existing priority / Fast entry unchanged.
  • Add the current Codex ultrafast service-tier descriptor to the pinned Sol fallback.
  • Let the existing Daybreak Blue capability alias inherit the same Sol tier set, without creating entitlement or exposing an unqualified Daybreak row to an account that does not report it.
  • Preserve service_tier: "ultrafast" on the canonical OpenAI Responses path when OpenCodex is in passthrough/Auto mode.
  • Do not advertise Ultrafast for Terra, Luna, Spark, arbitrary routed providers, or any model whose catalog does not declare it.

Example usage or interface

{
  "slug": "gpt-5.6-sol",
  "service_tiers": [
    { "id": "priority", "name": "Fast", "description": "1.5x speed, increased usage" },
    { "id": "ultrafast", "name": "Ultrafast", "description": "The fastest available responses for latency-sensitive work." }
  ]
}

An entitled Daybreak Blue row should expose the same two choices through its existing Sol capability inheritance. Selecting Ultrafast in Codex should reach the canonical upstream body as:

{ "service_tier": "ultrafast" }

Alternatives or workarounds

Keep a recent Codex-generated models_cache.json and rely on OpenCodex preserving that live row. This is not reliable for clean installs, fallback generation, cache rebuilds, or older installed clients, and makes the feature depend on stale local state.

A global OpenCodex fastMode enum was also considered, but that would widen configuration, management API, CLI, GUI, docs, and routing semantics. The current model-owned Codex selector already carries arbitrary service-tier ids, so the minimal compatible slice is catalog fallback parity plus a passthrough regression.

Additional context

Checks

  • I searched existing issues and documentation.
  • This request describes a concrete OpenCodex workflow rather than merely naming a desired technology.
  • I removed secrets and personal data.

Activity

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

Metadata

Metadata

Assignees

Labels

catalogModel catalog, slugs, visibility, routed entriesenhancementNew feature or request

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions