feat(ai): discover models across providers #825

Merged
simon merged 2 commits from feat/ai-provider-multiplex into dev 2026-06-29 06:50:39 +00:00
Owner

Summary\n- fetch available models for OpenAI, Anthropic, Google Gemini, and OpenAI-compatible/local provider connections\n- add an AI provider enable/disable card action that preserves the stored API key\n- clarify model rows as globally enabled/disabled and keep disabled models out of CT-Ops model pickers\n\n## Validation\n- node --experimental-strip-types --test apps/web/lib/ai/settings-core.test.mjs apps/web/lib/ai/settings-ui.test.mjs\n- corepack pnpm@10.6.5 --filter web type-check\n- corepack pnpm@10.6.5 --filter web lint (passes with existing warnings)\n- BETTER_AUTH_URL=http://localhost:3000 DATABASE_URL=postgresql://ctops:ctops@localhost:5432/ctops corepack pnpm@10.6.5 --filter web build\n\n## Notes\n- Full web unit suite is currently blocked by unrelated missing DSUM module imports in apps/web/lib/dsum/core.test.mjs; filed carrtech/ct-ops#824.

## Summary\n- fetch available models for OpenAI, Anthropic, Google Gemini, and OpenAI-compatible/local provider connections\n- add an AI provider enable/disable card action that preserves the stored API key\n- clarify model rows as globally enabled/disabled and keep disabled models out of CT-Ops model pickers\n\n## Validation\n- node --experimental-strip-types --test apps/web/lib/ai/settings-core.test.mjs apps/web/lib/ai/settings-ui.test.mjs\n- corepack pnpm@10.6.5 --filter web type-check\n- corepack pnpm@10.6.5 --filter web lint (passes with existing warnings)\n- BETTER_AUTH_URL=http://localhost:3000 DATABASE_URL=postgresql://ctops:ctops@localhost:5432/ctops corepack pnpm@10.6.5 --filter web build\n\n## Notes\n- Full web unit suite is currently blocked by unrelated missing DSUM module imports in apps/web/lib/dsum/core.test.mjs; filed carrtech/ct-ops#824.
feat(ai): discover models across providers
All checks were successful
Conventional PR title / Conventional PR title (pull_request) Successful in 0s
PR Checks (Docker images) / Ansible API contract (pull_request) Successful in 6s
SAST / Detect security scan scope (pull_request) Successful in 8s
PR Checks (Docker images) / Detect Docker image changes (pull_request) Successful in 8s
PR Checks (Docker images) / Ingest Docker image (pull_request) Has been skipped
PR Checks (Docker images) / Ansible API Docker image (pull_request) Has been skipped
SAST / gosec (agent) (pull_request) Has been skipped
SAST / gosec (ingest) (pull_request) Has been skipped
Secret Scan / gitleaks (pull_request) Successful in 28s
SAST / trivy (filesystem) (pull_request) Has been skipped
SAST / trivy (config / IaC) (pull_request) Has been skipped
SAST / semgrep (pull_request) Successful in 1m11s
SAST / crypto-lint (no weak hashes / ciphers) (pull_request) Successful in 1m6s
PR Checks (Web) / Web (lint / type-check / build) (pull_request) Successful in 2m30s
PR Checks (Docker images) / Web Docker image (pull_request) Successful in 12m36s
8b5f62ffb1
Merge remote-tracking branch 'origin/dev' into feat/ai-provider-multiplex
All checks were successful
Conventional PR title / Conventional PR title (pull_request) Successful in 0s
PR Checks (Docker images) / Ansible API contract (pull_request) Successful in 8s
SAST / Detect security scan scope (pull_request) Successful in 9s
PR Checks (Docker images) / Detect Docker image changes (pull_request) Successful in 9s
SAST / gosec (agent) (pull_request) Has been skipped
SAST / gosec (ingest) (pull_request) Has been skipped
PR Checks (Docker images) / Ingest Docker image (pull_request) Has been skipped
PR Checks (Docker images) / Ansible API Docker image (pull_request) Has been skipped
SAST / trivy (filesystem) (pull_request) Has been skipped
Secret Scan / gitleaks (pull_request) Successful in 28s
SAST / trivy (config / IaC) (pull_request) Has been skipped
SAST / semgrep (pull_request) Successful in 1m12s
SAST / crypto-lint (no weak hashes / ciphers) (pull_request) Successful in 1m6s
PR Checks (Web) / Web (lint / type-check / build) (pull_request) Successful in 2m31s
PR Checks (Docker images) / Web Docker image (pull_request) Successful in 12m36s
a2e7bd6a8c
simon deleted branch feat/ai-provider-multiplex 2026-06-29 06:50:40 +00:00
Sign in to join this conversation.
No reviewers
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
carrtech/ct-ops!825
No description provided.