Hacktoberfest 2026: le issue che i maintainer hanno segnato per ottobre, aperte e adatte ai principianti. Sfoglia le issue Hacktoberfest

MCP Gateway rejects digest-pinned container images: embedded JSON schema disagrees with containerPattern

Aperta Adatta ai principianti
#69,405 0 commenti 0 reazioni 0 assegnatari Vedi su GitHub

I maintainer di solito rispondono entro 1 giorno

Nessuno ha ancora preso questa issue.

Valutazione

Difficoltà
2/5
Tempo stimato
1-3 ore
Idoneità per principianti
72/100
Tipo di issue
Bug
Chiarezza
Specificata chiaramente
Stato di attività
Attiva
Stack tecnologico
docker, go
Ambito
backend

Direzione di ricerca

Inizia dal pattern container del server in internal/config/schema/mcp-gateway-config.schema.json e confrontalo con containerPattern in internal/config/validation_rules.go, che accetta già un suffisso @sha256 opzionale. Aggiungi lo stesso gruppo di digest al pattern dello schema, poi aggiungi casi in internal/config/validation_schema_test.go che mostrino che entrambe le forme di digest passano e che un digest corto fallisce. È completato quando le configurazioni con digest fissato si caricano e le immagini non valide continuano a essere rifiutate.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Descrizione

ai-inspected
Analysis

The MCP Gateway (github/gh-aw-mcpg, v0.4.33) rejects digest-pinned server images, so MCP server images cannot be pinned by digest from a workflow. gh-aw's workflow schema allows container: name:tag@sha256:<64 hex>, so it compiles, then fails at gateway startup.

In gh-aw-mcpg the two validators disagree:

  • internal/config/validation_rules.go: containerPattern ends with (@sha256:[a-fA-F0-9]{64})? (accepts digests; validation_string_patterns_test.go has digest cases as valid).
  • internal/config/schema/mcp-gateway-config.schema.json (embedded, applied to the stdin config): the server container pattern ends with (:([a-zA-Z0-9._-]+|latest))?$, no digest. Unchanged from v0.4.28 to v0.4.33.

Reproduce with ghcr.io/github/gh-aw-mcpg:v0.4.33 and an identical minimal config, changing only container:

  • ghcr.io/github/github-mcp-server:v1.0.0: accepted.
  • ...:v1.0.0@sha256:<64 hex> and ...@sha256:<64 hex>: failed to load config: ... jsonschema validation failed ... Location: <root>.
Implementation Plan (in github/gh-aw-mcpg)
  1. internal/config/schema/mcp-gateway-config.schema.json: append (@sha256:[a-fA-F0-9]{64})? to the server container pattern(s), matching containerPattern.
  2. Tests (internal/config/validation_schema_test.go): both digest forms pass schema validation; a short digest fails.
  3. Run make agent-finished before completing.
Acceptance Criteria

A config whose server container is name:tag@sha256:<64 hex> or name@sha256:<64 hex> loads and launches on the gateway; invalid images are still rejected.

Lingua principale
Go
Stelle
5.4k
Fork
584
Merge medio
3h 16m
PR unite (30g)
826

Preparare l'ambiente

Apri in Codespaces

Avvia il container di sviluppo del progetto nel browser, con il tuo account GitHub.

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di github/gh-aw

Tutte le issue di github/gh-aw

Issue simili

Altre issue su Go

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.