MCP Gateway rejects digest-pinned container images: embedded JSON schema disagrees with containerPattern
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
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
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:containerPatternends with(@sha256:[a-fA-F0-9]{64})?(accepts digests;validation_string_patterns_test.gohas digest cases as valid).internal/config/schema/mcp-gateway-config.schema.json(embedded, applied to the stdin config): the servercontainerpattern 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)
internal/config/schema/mcp-gateway-config.schema.json: append(@sha256:[a-fA-F0-9]{64})?to the servercontainerpattern(s), matchingcontainerPattern.- Tests (
internal/config/validation_schema_test.go): both digest forms pass schema validation; a short digest fails. - Run
make agent-finishedbefore 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
Avvia il container di sviluppo del progetto nel browser, con il tuo account GitHub.
- Include un Dockerfile o un file Docker Compose
- Nessun modello di pull request
- Leggi la guida per i contributori
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di github/gh-aw
-
agent-research
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
I maintainer di solito rispondono entro 1 giorno
-
cookie sergo
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
I maintainer di solito rispondono entro 1 giorno
-
goroutineresourceleak (81st linter): paren_unwrap_gap across lock/cancel/channel detection, day oneApertacookie sergo
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
github/gh-aw#68591 · 1 commento ·
I maintainer di solito rispondono entro 1 giorno
-
automation models
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 1/100
I maintainer di solito rispondono entro 1 giorno
-
agentic-workflows automation cookie
Difficoltà 5/5 Più di una settimana Idoneità per principianti 1/100
I maintainer di solito rispondono entro 1 giorno
Tutte le issue di github/gh-aw
Issue simili
-
documentation good first issue
Difficoltà 2/5 1-3 ore Idoneità per principianti 90/100
I maintainer di solito rispondono entro 1 giorno
-
install-path local lint proofs will exit 5 on roster-less machines once #3263 release is pinnedApertaraised-by:reviewer
Difficoltà 1/5 1-3 ore Idoneità per principianti 90/100
medici-finance/assay#3333 ·
I maintainer di solito rispondono entro 1 giorno
-
enhancement good first issue
Difficoltà 2/5 1-3 ore Idoneità per principianti 88/100
onurbaydas/VirtoMir#9 ·
-
Add --version flagApertaenhancement good first issue
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 95/100
syncronix-labs/aegora#12 ·
-
auto-fixable pkg:api
Difficoltà 2/5 1-3 ore Idoneità per principianti 82/100
tphakala/birdnet-go#4650 · 2 commenti · 1 reazione ·
I maintainer di solito rispondono entro 1 giorno