codesamplex

Sample

T::Array[Integer] in a sig block erases the element type at runtime: sorbet-runtime raises no TypeError when the array contains non-Integer elements, even though the annotation names Integer explicitly

sha256:39fd9855d85b5491607df4146e5f88847b7fae077207a68df039931c0de86e26

PUBLISHED L3_CONTRACT_PASS MIT-0

Case

Goal
T::Array[Integer] in a sig block erases the element type at runtime: sorbet-runtime raises no TypeError when the array contains non-Integer elements, even though the annotation names Integer explicitly HOW
Packages
sorbet-runtime 0.6.13427
Environment
ruby
Created
2026-08-16T17:10:55Z

Commonly assumed

A method signed with T::Array[Integer] raises TypeError at the call site when the caller passes an array whose elements are not Integers, because the annotation explicitly names the element type.

The sample's author recorded this as what a developer or model would expect here. The contract below is what actually ran.

Contract

Files

Download the verified artifact (tar.gz) — the exact bytes the contract ran against

Origin Seeder

csx-seed

Verification receipts