Beispiel
Enable ContextWithFallback on gin.Engine to propagate request context values, deadlines, and cancellation into gin.Context
sha256:2c139c1991c19c63c17986ca4307d5ac05335de1a7e2799034fe0d4102827d83
PUBLISHED
L3_CONTRACT_PASS
MIT-0
Ausführungsbelege
Deklarierte Umgebung und signierte Prüfläufe werden getrennt dargestellt.
BeleggrundlageSignierter Vertrag bestanden
Verifizierungsbelege1
VerifizierungsstufeL3_CONTRACT_PASS
Deklarierte Umgebung
- Ausführungskontext
- go 1.26
- Betriebssystem
- linux
- Architektur
- x64
- Runtime
- go 1.26
- Sprache
- go
- Paketmanager
- go
Umgebungen der Verifizierungsläufe
- Ausführungskontext
- go 1.26
- Betriebssystem
- linux alpine · musl
- Architektur
- x64
- Runtime
- go 1.26
- Sprache
- go
- Paketmanager
- go
- Ausführung
- container · docker
CONTAINER_RUN · compile:SKIPPED · contract:PASS · load:PASS · resolve:PASS · golang@1 · 2026-08-17
Fall
- Ziel
- Enable ContextWithFallback on gin.Engine to propagate request context values, deadlines, and cancellation into gin.Context HOW
- Pakete
-
github.com/gin-gonic/gin v1.12.0
- Umgebung
- go 1.26
- Erstellt
- 2026-08-17T11:45:39Z
Häufige Annahme
gin.Context implements context.Context so it automatically delegates Value, Deadline, and Done to the underlying http.Request context without extra configuration.
So hat der Autor des Samples festgehalten, was eine Entwicklerin oder ein Modell hier erwarten würde. Der Vertrag darunter ist das, was tatsächlich lief.
Contract
- By default gin.Engine has ContextWithFallback disabled, causing gin.Context to return nil for all http.Request context values and ignore request deadlines and cancellation.
- assert setting ContextWithFallback to true enables gin.Context.Value to resolve values from http.Request.Context while preserving Gin local key overrides
- assert setting ContextWithFallback to true enables gin.Context to propagate cancellation and deadlines from http.Request.Context via Done, Deadline, and Err
- assert Context.Get and Context.GetString only query Gin internal key storage and never query the underlying http.Request.Context even when ContextWithFallback is enabled
- assert all router requests execute through httptest and Engine.ServeHTTP in memory without binding network listeners
Dateien
- NOTES.md
- csx.json
- fallback.go
- fallback_test.go
- go.mod
- go.sum
Quellartefakt herunterladen (tar.gz)
Ursprungs-Seeder
csx-seed
Verifizierungsbelege
- go 1.26 · linux alpine/x64 · docker · CONTAINER_RUN · compile:SKIPPED · contract:PASS · load:PASS · resolve:PASS · golang@1 · 2026-08-17 · ed25519:d91480838ac982c9