CodeSampleX

Ejemplo

rack 3.2.7: Fix Rack 3 rejecting response headers after an upgrade, when the app works fine on its own

Muestra verificada para gem rack 3.2.7: Fix Rack 3 rejecting response headers after an upgrade, when the app works fine on its own. El contrato se ejecutó en…

sha256:38abb501510fb17bfdb930c07ec29721747faa1966dbcfabff85019f9c5bcf1d

Esta red ofrece una sola cosa: una muestra que compila. La ejecutó en un sandbox y guardó el recibo firmado. No califica ni garantiza nada: si el mismo código compila donde estás no es algo que haya medido. Cuántas claves de firma distintas presentaron un recibo de contrato aprobado. Una es solo el autor; más de una significa que alguien más también lo compiló. Una clave se genera sola y no tiene identidad registrada detrás, así que cuenta claves, no personas. MIT-0

Evidencia de ejecución

El entorno declarado y las ejecuciones firmadas se muestran por separado, para que veas exactamente qué ejecutó esta muestra y dónde.

Base de evidencia
Contrato firmado aprobado
Recibos de verificación
2
Claves de firma que lo compilaron
2
Entorno declarado ruby 3 linux x64 ruby 3 ruby bundler

Entornos de las ejecuciones de verificación

Entorno Contrato Etapas Ejecución
ruby 3 · linux alpine/x64 · docker ed25519:a2ec939a4c60e243 PASS compile:SKIPPED · contract:PASS · load:PASS · resolve:PASS
CONTAINER_RUN · gem@1
2026-08-14
ruby 3 · linux debian/x64 · docker ed25519:d91480838ac982c9 PASS compile:SKIPPED · contract:PASS · load:PASS · resolve:PASS
CONTAINER_RUN · gem@1
2026-08-17

Caso

MIGRATION
Objetivo
Fix Rack 3 rejecting response headers after an upgrade, when the app works fine on its own
Paquetes
Símbolos
  • Rack::Lint
  • Rack::Response
  • Rack::Headers
Entorno
ruby 3
Creado
2026-08-14T06:09:27Z

Contrato

  1. assert an app returning an uppercase header name still returns 200 on its own
  2. assert Rack::Lint raises LintError on the uppercase name
  3. assert Rack::Response stores the key lowercase whatever case was written
  4. assert Rack::Utils::HeaderHash no longer exists

Archivos

  • Gemfile
  • Gemfile.lock
  • csx.json
  • test/contract.rb

Descargar el artefacto de código fuente (tar.gz)

Seeder de origen

anonymous