Habilidades migrate-to-shoehorn
📦

migrate-to-shoehorn

Baixo Risco ⚙️ Comandos externos

Migrar Testes TypeScript para Shoehorn

Testes em TypeScript frequentemente usam asserções `as` inseguras para falsificar objetos grandes. Esta skill migra esses testes para helpers do shoehorn com segurança de tipos, mantendo o autocomplete e a checagem de tipos funcionando.

Suporta: Claude Codex Code(CC)
🥉 72 Bronze
1

Baixar o ZIP da skill

2

Upload no Claude

Vá em Configurações → Capacidades → Skills → Upload skill

3

Ative e comece a usar

Testar

A utilizar "migrate-to-shoehorn". getUser({ body: { id: '123' } } as Request);

Resultado esperado:

Depois: getUser(fromPartial({ body: { id: '123' } })); com o import adicionado de @total-typescript/shoehorn.

A utilizar "migrate-to-shoehorn". getUser({ body: { id: 123 } } as unknown as Request);

Resultado esperado:

Depois: getUser(fromAny({ body: { id: 123 } })); com o import adicionado de @total-typescript/shoehorn.

Auditoria de Segurança

Baixo Risco
v1 • 6/12/2026

All 37 static findings are false positives. The 'backtick execution' detections are Markdown code fences around TypeScript examples. The 'weak cryptographic algorithm' and 'system reconnaissance' flags are pattern false-positives from prose matching. The skill is benign documentation that guides migration of test code to use @total-typescript/shoehorn. No malicious intent detected.

1
Arquivos analisados
119
Linhas analisadas
2
achados
1
Total de auditorias
Problemas de Baixo Risco (1)
Shell command examples in documentation
SKILL.md contains bash and grep command examples (npm install, grep search). These are instructional, not executed.
Auditado por: claude

Pontuação de qualidade

38
Arquitetura
100
Manutenibilidade
87
Conteúdo
50
Comunidade
88
Segurança
91
Conformidade com especificações

O Que Você Pode Construir

Migrar objetos mock grandes em testes

Substitua falsificações verbosas de tipos TypeScript grandes por fromPartial() para passar apenas as propriedades necessárias.

Substituir asserções double-as inseguras

Converta padrões `as unknown as Type` para fromAny() em cenários de teste de erro.

Padronizar helpers de dados de teste

Adote o shoehorn de forma consistente em toda a suite de testes do código para melhor segurança de tipos.

Tente Estes Prompts

Solicitação básica de migração
Encontre todos os arquivos de teste que usam asserções `as Type` e migre-os para usar fromPartial() de @total-typescript/shoehorn.
Migrar padrões double-as
Substitua todos os padrões `as unknown as Type` nos meus arquivos de teste por fromAny() de @total-typescript/shoehorn.
Migrar falsificações de objetos grandes
Tenho arquivos de teste que falsificam objetos Request grandes com mais de 20 propriedades. Migre-os para usar fromPartial() para que eu especifique apenas as propriedades que preciso.
Auditoria e migração completas
Audite minha suite de testes em busca de todas as asserções `as`, instale @total-typescript/shoehorn e migre cada ocorrência para o helper apropriado do shoehorn.

Melhores Práticas

  • Use fromPartial() para objetos grandes onde apenas algumas propriedades são relevantes para o teste
  • Use fromAny() apenas quando passar intencionalmente dados com tipo errado para teste de erros
  • Mantenha o uso do shoehorn restrito aos arquivos de teste, nunca no código de produção
  • Execute uma checagem de tipos após a migração para confirmar que a segurança de tipos foi preservada

Evitar

  • Usar helpers do shoehorn no código fonte de produção
  • Migrar sem verificar se a checagem de tipos ainda passa
  • Usar fromAny() quando fromPartial() seria suficiente, perdendo os benefícios de segurança de tipos
  • Deixar algumas asserções `as` sem migrar, criando padrões de teste inconsistentes

Perguntas Frequentes

O que é shoehorn?
Shoehorn é uma biblioteca TypeScript que permite passar dados parciais em testes mantendo total segurança de tipos e autocomplete.
O shoehorn pode ser usado em código de produção?
Não. O shoehorn é projetado apenas para código de teste. Usá-lo em produção pode mascarar erros reais de tipo.
Como instalo o shoehorn?
Execute `npm i @total-typescript/shoehorn` no seu projeto para adicionar o pacote.
Qual é a diferença entre fromPartial e fromAny?
fromPartial() é para dados que ainda passam na checagem de tipos corretamente. fromAny() é para dados intencionalmente errados, como casos de teste de erro.
Como encontro arquivos de teste com asserções `as`?
Use o comando grep mostrado no fluxo de trabalho da skill para encontrar arquivos que correspondam a ` as [A-Z]` em arquivos de teste.
Esta skill executa código automaticamente?
Não. A skill fornece orientação e exemplos. Você executa os comandos e edições por conta própria.

Detalhes do Desenvolvedor

Estrutura de arquivos

📄 SKILL.md