Receber por email
← Voltar para o catálogo

curate-tests

Phase 2: Generate and discover tests, validate against real library. Only invoke when explicitly requested by the user or by the yoink orchestrator.

34estrelas
Atualizado há 6 meses

Ver no GitHub ↗ Licença: MIT

Como adicionar

/plugin marketplace add theogbrand/yoink

O comando exato pode variar conforme o repositório. Confira o README no GitHub.

Para o autor da skill

Cole no README do seu repo

Mostra que sua skill está catalogada na Skillteca, gera backlink e tráfego rastreável.

[![Skillteca](https://www.skillteca.com.br/api/badge/curate-tests/svg)](https://www.skillteca.com.br/skills/curate-tests)

Skills relacionadas

Ver todas de DevOps e Infra →

Alerta por categoria

Receba novas skills de DevOps e Infra toda segunda

1 email curto, só com as skills novas de DevOps e Infra. 4 minutos de leitura, sem spam, cancela com 1 clique.

Você confirma o email no primeiro envio. Sem spam. Cancela com 1 clique.

Ler descrição completa

Curate Tests

Do not invoke this skill unless explicitly requested. It is called by /yoink:yoink or run standalone by the user.

Prerequisite: /yoink:setup must have been run first (reference dir and real library must exist).

Parse your prompt to identify:

  • Package name: from the Package: line or --package argument
  • Target function/feature: from the Task: line or prompt body
Naming convention: yoink_<package>/ where <package> has hyphens replaced
by underscores (e.g., package litellm -> yoink_litellm/).

1. Discover relevant tests

  • If --skip-test-discoverer is present then skip to step 2.

Use the yoink:test-discoverer agent to search for relevant tests from the original library's test suite.

Pass input as JSON:

{
  "package_name": "<PACKAGE>",
  "target_function": "<TARGET_FUNCTION>"
}
Discovered tests are reference material only. They exist so the test-generator
can study real-world patterns and assertions. They are never executed during
validation or any later step -- only generated tests are run.

2. Generate focused tests

Use the yoink:test-generator agent to write original pytest tests for the target function.

Pass input as JSON:

{
  "package_name": "<PACKAGE>",
  "target_function": "<TARGET_FUNCTION>"
}

3. Validate generated tests against the real library

Run only the generated tests using the script below against the installed real library. Do NOT run discovered tests -- they are reference only and may depend on API keys, network access, or fixtures that are not available.

uv run ${CLAUDE_PLUGIN_ROOT}/scripts/run_tests.py --project-dir . 2>&1
  • If all tests pass then proceed to the next step.
  • If any tests fail or error then investigate and fix the generated tests. Do NOT proceed to the next step until all generated tests pass against the real library.

4. Rewrite imports

After validation passes, rewrite imports in generated tests so they target yoink_<package>/:

uv run ${CLAUDE_PLUGIN_ROOT}/scripts/rewrite_imports.py --package <PACKAGE> --target-dir yoink_<PACKAGE>/tests/generated

5. Sanity check

Run the test suite against the empty yoink_<package>/ to confirm tests fail:

uv run ${CLAUDE_PLUGIN_ROOT}/scripts/run_tests.py --project-dir . --summary-only

Score should be ~0.0 (tests should fail against empty yoink_<package>/).

  • If score > 0 then something is wrong, investigate before proceeding.
Compartilhar X LinkedIn