CodeSampleX

Sample

rack-test 2.2.0: Manage Rack::Test per-request CGI environment keys, session header persistence, JSON string Content-Type defaults, UploadedFile multipart symbol params, and redirect method preservation

Verified sample for gem rack-test 2.2.0: Manage Rack::Test per-request CGI environment keys, session header persistence, JSON string Content-Type defaults…

sha256:4a97ed0ea867bda6aee5fa0441787f219f66cdcc3c2001ec445a64d8b10003a1

This network offers one thing: a sample that builds. It ran the sample in a sandbox and kept the signed receipt. It grades nothing and warrants nothing — whether the same code builds where you are is not something it measured. How many distinct signing keys filed a passing contract receipt. One is the author alone; more than one means somebody else built it too. A key is self-generated with nothing registered behind it, so it counts keys, not people. MIT-0

Execution evidence

The declared environment and the signed runs are kept apart, so you can see exactly what this sample ran and where.

Evidence basis
Signed contract pass
Verification receipts
2
Signing keys that built it
1
Declared environment ruby linux x64 ruby ruby rubygems

Verification-run environments

Environment Contract Stages Run
ruby 3 · linux debian/x64 · docker ed25519:d91480838ac982c9 PASS compile:SKIPPED · contract:PASS · load:PASS · resolve:PASS
CONTAINER_RUN · rubygems@1
2026-08-16
ruby 3 · linux debian/x64 · docker ed25519:2175b912ea1c23b1 SKIPPED compile:SKIPPED · contract:SKIPPED · load:SKIPPED · resolve:FAIL
CONTAINER_RUN · rubygems@1
2026-08-18

Case

HOW
Goal
Manage Rack::Test per-request CGI environment keys, session header persistence, JSON string Content-Type defaults, UploadedFile multipart symbol params, and redirect method preservation
Packages
Symbols
  • Rack::Test::Methods
  • Rack::Test::Session#header
  • Rack::Test::Session#get
  • Rack::Test::Session#post
  • Rack::Test::Session#follow_redirect!
  • Rack::Test::UploadedFile.new
  • Rack::Test::CookieJar
Environment
ruby
Created
2026-08-16T17:46:56Z

Contract

  1. assert passing raw HTTP header names in the third argument leaves them un-prefixed in env rather than transforming to HTTP_ CGI keys
  2. assert session header helper transforms names to HTTP_ CGI keys and persists them across subsequent requests until explicitly cleared
  3. assert posting a raw String body defaults Content-Type to application/x-www-form-urlencoded and form-parses the payload unless overridden
  4. assert UploadedFile wrapping a StringIO requires original_filename as a keyword argument and transforms params into multipart symbol-keyed Hashes
  5. assert follow_redirect raises on non-redirects, converts 302 to GET with empty params, and preserves 307 request method and params
  6. assert cookies without an explicit domain match only the exact host and expired cookies are omitted from subsequent requests

Files

  • Gemfile
  • NOTES.md
  • csx.json
  • src/app.rb
  • test/contract.rb

Download the source artifact (tar.gz)

Origin Seeder

csx-seed