Hive Hive
Sign in

fix(inference): accept provider-native model identifiers

GitHub issue · Closed

Metadata
Source
tuist/hive #93
Updated
Jul 5, 2026
Domains
Hive
Details

What changed

This updates inference profiles so the upstream model field accepts the provider-native model identifier, for example accounts/fireworks/models/minimax-m3 for Fireworks or gpt-4o-mini for openai.

The relay now strips a provider prefix only when an older saved profile already includes one, so existing fireworks-ai/accounts/... records keep working while new profiles can store the value the upstream endpoint expects.

The dashboard placeholders, development seeds, self-hosting guide, and focused tests now reflect that shape.

Why

Operators configure a provider separately from the model it should call. Requiring the model field to repeat the provider key made valid Fireworks identifiers fail in the profile form and pushed users toward a value that the upstream endpoint does not actually expect.

Root cause

The model binding validation treated the upstream model as a provider-prefixed identifier and rejected values that did not start with the selected provider key. Fireworks model paths are provider-native paths such as accounts/fireworks/models/minimax-m3, so the form reported an error even though the value was correct for the configured provider.

Approach

The binding changeset now validates the model as a provider model path after removing a matching legacy prefix. The relay and pricing lookup use the same provider-aware normalization, which keeps older provider-prefixed records compatible without requiring new records to keep that prefix.

Impact

Instance admins can create and edit Fireworks inference profiles with the model identifier the upstream provider expects. Existing profiles that still include the old prefix continue to route correctly. The development seed data and operator guide now show the corrected provider and model examples.

Validation

  • mix format --check-formatted
  • mix compile --warnings-as-errors
  • mix test test/hive/inference_test.exs test/hive_web/live/ops_live/inference_test.exs test/hive_web/controllers/inference_controller_test.exs, 33 tests passed
  • Created a profile locally through a headless Chrome browser using fireworks plus accounts/fireworks/models/minimax-m3

Verification screenshots

Create profile modal accepts provider-native Fireworks model path

Created inference profile shows provider-native model path

Flights

Investigate, reproduce, or fix this item in an isolated repository. Each Flight preserves its outcome and agent session.

New Flights are paused Configure model inference, GitHub, and a sandbox provider to start another Flight. Existing results remain available below.
No Flights yet

Start a Flight and preserve its objective, outcome, and session here.

Comments
GA
github-actions[bot] Jun 26, 2026

Blick review didn’t run

The blick review step failed before producing a manifest, so there’s no review to post on this PR. This usually means the agent (opencode) couldn’t start — common causes are an expired or suspended model API key, a missing secret, or the workflow timing out.

See the workflow run for details: https://github.com/tuist/hive/actions/runs/28220200987

Commit: 088fd45b0d51f7d252be1df2046ec54016b5dcc9