What problem does it solve? TypeScript tests often rely on as type assertions to fake large objects, which is error-prone, requires manually specifying target types, and forces awkward double-assertions (as unknown as Type) for intentionally wrong data. This Skill replaces those assertions with type-safe shoehorn helpers. ## Core Features & Use Cases - Partial test data: Replace as Type with fromPartial() so tests only specify the properties they actually need while staying type-checked. - Intentionally wrong data: Replace as unknown as Type with fromAny() for error-path testing while keeping autocomplete. - Full-object enforcement: Use fromExact() to require a complete object now and swap to fromPartial() later. - Use Case: A test for getUser only cares about body.id but the Request type has 20+ properties. Instead of faking every property or casting with as Request, call getUser(fromPartial({ body: { id: "123" } })). ## Quick Start Find all as assertions in my test files and migrate them to @total-typescript/shoehorn using fromPartial and fromAny.