Skip to content

fix(models): expose custom node models in canonical prefix mode (#11832) - #11918

Merged
diegosouzapw merged 1 commit into
cheaper-inference:release/v3.8.51from
HouMinXi:fix/11832-canonical-prefix-custom-node-models
Aug 28, 2026
Merged

diegosouzapw merged 1 commit into
cheaper-inference:release/v3.8.51from
HouMinXi:fix/11832-canonical-prefix-custom-node-models

Conversation

@HouMinXi

Copy link
Copy Markdown
Contributor

Fixes #11832. Exposes custom node models under their configured prefix when catalog prefix mode is canonical. Includes TDD test coverage. ⚠️ base-red inherited: #11449

…per-inference#11832)

When a custom provider node has a configured prefix, the catalog builder
was gating alias-prefixed rows strictly on includeAlias. In canonical
prefix mode that hid all node models behind their configured prefix,
because the canonical branch also requires !prefix. Allow the configured
node prefix to surface in both alias and canonical modes, matching the
existing dual behavior.

Signed-off-by: Minxi Hou <[EMAIL_REDACTED]>
@HouMinXi
HouMinXi requested a review from diegosouzapw as a code owner August 28, 2026 16:18
@diegosouzapw
diegosouzapw merged commit dc75a02 into cheaper-inference:release/v3.8.51 Aug 28, 2026
7 of 16 checks passed
diegosouzapw added a commit that referenced this pull request Aug 28, 2026
diegosouzapw pushed a commit that referenced this pull request Sep 2, 2026
#12381)

GET /v1/models with MODELS_CATALOG_PREFIX_MODE=canonical dropped every chat row of a provider whose registry alias is undefined (antigravity) or equal to its own id (agy, most built-ins). Each emission loop pushes alias/model only when includeAlias, and canonicalProviderId/model only when the ids differ — for a self-aliased provider both are the same string, so neither fired. #11918 fixed the class for custom nodes but not built-ins, and not the static loop. The alias row is now treated as the canonical row whenever the ids coincide, across the static, synced, custom and alias-backed loops; the canonical branch's !== alias guard is untouched, so dual and alias output cannot double up. Docs that described the omission as intended are corrected.

Validated in a combined worktree with all 25 PRs of this batch boarded together: typecheck:core clean, 443/443 node-runner tests plus 14/14 vitest across every test file the batch touches, and check-changelog-integrity, check:cycles (418 files), check:provider-consistency (272 REGISTRY entries, 355 canonical providers), check:docs-counts, check:docs-sync (42 locales) and check-file-size all green.

Thanks @pacocartones.
hammadyasser2010-svg added a commit to hammadyasser2010-svg/OmniRoute that referenced this pull request Sep 15, 2026
commit f4c099b
Author: Markus Hartung <mail@hartmark.se>
Date:   Fri Aug 28 16:21:51 2026 -0300

    chore(changelog): add missing fragments for cheaper-inference#11919/cheaper-inference#11918/cheaper-inference#11916
@HouMinXi
HouMinXi deleted the fix/11832-canonical-prefix-custom-node-models branch September 16, 2026 13:47
muhamadgalihsaputra pushed a commit to niyatna/NiyatnaRoute that referenced this pull request Sep 27, 2026
…per-inference#11832) (cheaper-inference#11918)

Custom provider-node models (synced, custom, and alias-backed) now appear under their configured prefix in the unified catalog when the operator's model-id prefix mode is canonical, instead of being dropped whenever alias-inclusion was otherwise disabled. Closes cheaper-inference#11832. Thanks!
muhamadgalihsaputra pushed a commit to niyatna/NiyatnaRoute that referenced this pull request Sep 27, 2026
muhamadgalihsaputra pushed a commit to niyatna/NiyatnaRoute that referenced this pull request Sep 27, 2026
cheaper-inference#12381)

GET /v1/models with MODELS_CATALOG_PREFIX_MODE=canonical dropped every chat row of a provider whose registry alias is undefined (antigravity) or equal to its own id (agy, most built-ins). Each emission loop pushes alias/model only when includeAlias, and canonicalProviderId/model only when the ids differ — for a self-aliased provider both are the same string, so neither fired. cheaper-inference#11918 fixed the class for custom nodes but not built-ins, and not the static loop. The alias row is now treated as the canonical row whenever the ids coincide, across the static, synced, custom and alias-backed loops; the canonical branch's !== alias guard is untouched, so dual and alias output cannot double up. Docs that described the omission as intended are corrected.

Validated in a combined worktree with all 25 PRs of this batch boarded together: typecheck:core clean, 443/443 node-runner tests plus 14/14 vitest across every test file the batch touches, and check-changelog-integrity, check:cycles (418 files), check:provider-consistency (272 REGISTRY entries, 355 canonical providers), check:docs-counts, check:docs-sync (42 locales) and check-file-size all green.

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

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

fix(api): custom-prefixed node models omitted from /v1/models under canonical prefix mode

2 participants