Hacktoberfest 2026: los issues que los mantenedores marcaron para octubre, abiertos y aptos para principiantes. Explorar issues de Hacktoberfest

OCI Skill Registry — Core Connector (issue 9 of 29)

Cerrado
#4,047 4 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
38/100
Tipo de issue
Nueva funcionalidad
Claridad
Bastante claro
Estado de actividad
Tranquilo
Stack tecnológico
typescript
Área
api, backend

Línea de trabajo

Lee primero los dos archivos de tareas de cambio de OpenSpec mencionados y las especificaciones de oci-artifact-ingestion, registry-discovery y skillcard-parsing. Usa las pruebas solicitadas del cliente OCI simulado, de extracción de skillcard, de emisión de entidades y de registro de módulos para verificar la finalización; terminado significa que el conector descarga y valida skillcards, emite entidades AIResource anotadas y se registra mediante el módulo backend del catálogo.

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

Descripción

blocked stale workspace/boost

Labels: ready-to-code
Depends on: Issue 1 (#4039 shared infra), Issue 8 (#TBD SDK)
RHIDP Stories: RHIDP-15296
Feature: RHDHPLAN-1507 — Epic RHIDP-15294

Implement the core OCI Skill Registry connector: OCI Distribution Spec client for tag listing, manifest fetching, and blob download; skillcard extraction from OCI image layers with YAML parsing and SDK schema validation; entity emission as kind: AIResource with spec.type: skill and all required annotations; backend module registration with createBackendModule. This is the foundational OCI connector — multi-registry config, incremental sync, and load testing are separate issues.

Tasks

From openspec/changes/oci-skill-registry/tasks.md group 1 (RHIDP-15296):

  • 1.1 Evaluate and select Node.js OCI Distribution Spec client library
  • 1.2 Implement OciRegistryClient class with methods: listTags(), getManifest(), getBlob()
  • 1.5 Write unit tests for OCI client with mocked registry responses

From openspec/changes/oci-skill-registry/tasks.md group 2 (RHIDP-15296):

  • 2.1 Implement layer blob download with streaming decompression
  • 2.2 Implement tar stream parser to extract skillcard.yaml
  • 2.3 Integrate SDK schema validator for skillcard.yaml validation
  • 2.4 Implement error handling for missing/invalid skillcard.yaml
  • 2.5–2.6 Unit tests for skillcard extraction and schema validation

From openspec/changes/oci-skill-registry/tasks.md group 3 (RHIDP-15296):

  • 3.1 Implement OciSkillRegistryProvider class extending EntityProvider interface
  • 3.2 Implement entity factory: convert skillcard.yaml to Backstage AIResource entity
  • 3.3 Populate required annotations: rhdh.io/ai-asset-category, rhdh.io/ai-asset-version, rhdh.io/ai-asset-source
  • 3.4 Implement entity ref sanitization
  • 3.5 Write unit tests for entity emission

From openspec/changes/oci-skill-registry/tasks.md group 6 (RHIDP-15296):

  • 6.1 Implement backend module with createBackendModule({ pluginId: 'catalog', moduleId: 'ai-catalog-oci-skill-registry' })
  • 6.2 Register entity provider via catalogProcessingExtensionPoint
  • 6.4 Write integration test for module registration

From openspec/changes/oci-skill-connector/tasks.md group 1 (RHIDP-15324):

  • 1.1–1.11 OCI registry client: tag listing, manifest fetching, Docker v2 fallback, digest extraction, pagination, namespace filtering, parallel manifest fetch, OCI annotations, blob download, gzip decompression, unit tests

From openspec/changes/oci-skill-connector/tasks.md group 2 (RHIDP-15325):

  • 2.1–2.15 Skillcard parsing: layer identification, YAML parsing, Zod validation, error logging, entity building as kind: AIResource, annotation population, default values, invalid skill rejection, aggregate summary, unit tests
Specifications
  • openspec/changes/oci-skill-registry/specs/oci-artifact-ingestion/spec.md
  • openspec/changes/oci-skill-connector/specs/registry-discovery/spec.md
  • openspec/changes/oci-skill-connector/specs/skillcard-parsing/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.