MCP Mirror Endpoint + RHOAI Version Normalization (issue 7 of 29)

Abierto
#4,045 11 comentarios 0 reacciones 0 asignados Ver en GitHub

Los mantenedores suelen responder en 1 día

Nadie ha tomado este issue todavía.

Evaluación

Dificultad
5/5
Tiempo estimado
Más de una semana
Aptitud para principiantes
42/100
Tipo de issue
Nueva funcionalidad
Claridad
Bastante claro
Estado de actividad
Activo
Stack tecnológico
typescript

Línea de trabajo

Comienza con openspec/changes/mcp-registry-connector/specs/mirror-endpoint/spec.md y openspec/changes/rhoai-connector/specs/mcp-catalog-source/spec.md; después, usa las listas de tareas para localizar config.d.ts y los puntos de entrada de los conectores. Se considera terminado cuando la configuración del mirror, la validación, las advertencias, las métricas, las pruebas y la documentación estén completas, y las entidades RHOAI emitidas incluyan anotaciones de versión normalizadas con el registro de fallback especificado.

Escrito por el modelo de indexación a partir del texto del issue.

Descripción

feature triaged workspace/boost

Labels: ready-to-code
Dependencies: None
RHIDP Stories: RHIDP-15317, RHIDP-15321
Feature: RHDHPLAN-1510 — Epics RHIDP-15313, RHIDP-15314

Implement the MCP Registry mirror endpoint configuration with zero-internet validation (no outbound traffic to public endpoint when mirror is configured), startup health check, and non-HTTPS security warnings. Also implement RHOAI version normalization utility for MCP server entity rhdh.io/ai-asset-version annotation population. RHIDP-15321 has no cross-connector dependencies and can start immediately.

Tasks

From openspec/changes/mcp-registry-connector/tasks.md group 1 (RHIDP-15317):

  • 1.1 Add ai-catalog.providers.mcpRegistry.endpoint config schema in config.d.ts
  • 1.2 Implement endpoint configuration loading from app-config
  • 1.3 Add environment variable override support (MCP_REGISTRY_ENDPOINT)
  • 1.4 Implement endpoint URL validation
  • 1.5 Add endpoint fallback logic (app-config > env var > default public endpoint)
  • 1.6 Implement startup endpoint validation health check
  • 1.7 Add endpoint configuration logging at connector startup
  • 1.8 Add security warning for non-HTTPS endpoints
  • 1.9 Implement HTTP client configuration with mirror endpoint URL
  • 1.10 Add Prometheus metrics for endpoint request count, latency, error rate
  • 1.11 Add Prometheus metric for public endpoint violation detection
  • 1.12–1.18 Integration tests: zero outbound traffic, mirror targeting, DNS resolution, retry backoff, invalid URL, non-HTTPS warning, override precedence
  • 1.19–1.20 Documentation: mirror endpoint examples, zero-internet validation

From openspec/changes/rhoai-connector/tasks.md group 7 (RHIDP-15321):

  • 7.1 Define version normalization rules
  • 7.2 Implement normalizeVersion(rawVersion) utility — semver normalization, strip v prefix, handle latest/nightly
  • 7.3 Populate rhdh.io/ai-asset-version annotation with normalized version
  • 7.4 Handle missing version metadata: set "unknown" with DEBUG log
  • 7.5 Handle invalid version strings: set "unknown" with WARNING log
  • 7.6 Unit tests for version normalization
  • 7.7 Integration test: emitted entities carry correct annotation
Specifications
  • openspec/changes/mcp-registry-connector/specs/mirror-endpoint/spec.md
  • openspec/changes/rhoai-connector/specs/mcp-catalog-source/spec.md
Lenguaje dominante
TypeScript
Estrellas
51
Forks
121
Merge medio
1 d 14 h
PR fusionados (30 d)
286

Preparar el entorno

Primeros pasos

  1. Lee el issue completo y luego la guía de contribución del proyecto.
  2. Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
  3. Haz un fork del repositorio y trabaja en una rama.
  4. Abre un pull request que haga referencia al número del issue.

Más de redhat-developer/rhdh-plugins

Todos los issues de redhat-developer/rhdh-plugins

Issues similares

Más issues de TypeScript

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.