Skip to content

feat(admin): curated model catalog with provider logos#393

Merged
philmerrell merged 4 commits into
developfrom
feature/model-catalog
May 27, 2026
Merged

feat(admin): curated model catalog with provider logos#393
philmerrell merged 4 commits into
developfrom
feature/model-catalog

Conversation

@philmerrell
Copy link
Copy Markdown
Contributor

@philmerrell philmerrell commented May 27, 2026

Summary

  • Adds a curated model catalog landing page (/admin/manage-models/catalog) with one-click add for Bedrock Claude 4.x models — pricing, modalities, and per-param specs already filled in. OpenAI/Gemini tabs show a "Coming soon" empty state until curated entries land.
  • "Add to models" opens a CDK role-picker dialog (AddCuratedModelDialogComponent) for per-deployment role IDs before POSTing; "Preview & customize" hands the template to the model form via CuratedModelPrefillService. The list-page "Add model" CTA now routes through the catalog instead of jumping straight to the blank form.
  • Each card carries a light/dark provider logo (Anthropic / Amazon / Meta / OpenAI) in a rounded tile next to the model name — light variant in light mode, dark variant in dark mode via dark:hidden / hidden dark:block. Unknown providers degrade gracefully (no tile).
  • Documents the @angular/cdk/dialog conventions used here in frontend/ai.client/.claude/CLAUDE.md so future dialogs match.

Test plan

  • cd frontend/ai.client && npm test -- model-catalog — existing 11 unit specs pass (template-overridden, cover tab default, prefill handoff, role-picker dialog, error inline, concurrent-add guard).
  • Navigate to /admin/manage-models and confirm "Add model" CTA routes to /admin/manage-models/catalog.
  • On the catalog, confirm 3 Bedrock Claude cards render with the Anthropic mark in the tile to the left of the name.
  • Toggle dark mode and confirm the dark logo variant swaps in cleanly (no flash, correct contrast).
  • Switch to OpenAI / Gemini tabs and confirm the "Coming soon" empty state with the "Add a custom model" escape hatch.
  • Click "Preview & customize" — confirm the model form prefills with the curated template.
  • Click "Add to models" — confirm the role-picker dialog opens; Escape, backdrop click, and Cancel all close without POSTing; selecting roles and confirming POSTs and navigates back to the list.

🤖 Generated with Claude Code

philmerrell and others added 4 commits May 27, 2026 06:49
Adds a curated model catalog landing page so admins can one-click add
fully-configured Bedrock models (Claude Haiku/Sonnet/Opus 4.x) with
pricing, modalities, and per-param specs already filled in. The "Add"
flow opens a role-picker dialog for per-deployment role IDs before
POSTing; "Preview & customize" hands the template to the model form via
a prefill service. The list-page "Add model" CTA now routes through the
catalog. Each card carries a light/dark provider logo (Anthropic,
Amazon, Meta, OpenAI) for brand recognition; OpenAI/Gemini tabs render
a "Coming soon" empty state until curated entries land. Documents the
@angular/cdk/dialog conventions used here in the frontend CLAUDE.md.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
The provider logo folder was renamed from open-aI to openai; update the
PROVIDER_LOGO_DIR mapping so the OpenAI tile resolves once curated
OpenAI entries land.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
…rams

Replaces the placeholder inference-profile ID with the real
`global.anthropic.claude-opus-4-7` alias and corrects pricing to the
actual $5/$25 per 1M tokens (cache $6.25 write / $0.5 read). Narrows
the supported-params surface to `max_tokens` + `effort` — Opus 4.7
exposes effort control instead of explicit thinking/temperature/top_*
knobs. Drops the now-obsolete TODO comment.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
@philmerrell philmerrell merged commit cef7045 into develop May 27, 2026
10 checks passed
@philmerrell philmerrell deleted the feature/model-catalog branch May 27, 2026 14:56
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.

1 participant