Skip to main content

safe-code-change

After a code change, find affected tests, update them to match new behavior, then run the full validation pipeline once. Use when the user has made or asked for a code change and wants to make sure nothing is broken.

Datos de origen

Repositorio
openshift/lightspeed-service
Última actividad en el origen
18 de marzo de 2026 a las 15:56
Idioma detectado de SKILL.md
inglés
Estrellas
71
Forks
93

Opciones de instalación

De forma predeterminada está seleccionado el prompt que primero revisa el origen. Puedes cambiar a un comando directo o descargar una copia local.

Revisa los archivos de origen

Lee SKILL.md y los archivos complementarios que muestra SkillsMP antes de decidir si quieres instalarlo.

Mostrando SKILL.md

SKILL.md
Instrucciones de origen · Vista previa de solo lectura
name
safe-code-change
description
After a code change, find affected tests, update them to match new behavior, then run the full validation pipeline once. Use when the user has made or asked for a code change and wants to make sure nothing is broken.
disable-model-invocation
true
# Safe Code Change After a code change is made, find and fix affected tests before running validation. ## Rules - The code change is already done. Do not modify production code. - Only update tests to match the new behavior, not the other way around. - Do not reformat or lint-fix during test updates. Save that for validation. - If a test change is ambiguous (unclear what the new expected behavior is), ask the user. ## Step 1: Identify What Changed ```bash git diff --name-only git diff --stat ``` List the modified production files (ignore test files, configs, docs). ## Step 2: Find Affected Tests Search for imports of changed functions/classes across all test files: ```bash rg "from ols\.<changed_module> import" tests/ ``` ## Step 3: Analyze Impact on Tests For each affected test file, check whether the change breaks existing tests: 1. **Signature changes** — function renamed, parameters added/removed/reordered. 2. **Behavior changes** — return value, side effects, exceptions differ. 3. **Removed code** — tests for deleted functions/classes need removal. 4. **New code** — consider whether new tests are needed (ask user if unclear). ## Step 4: Update Tests Apply minimal fixes to each affected test: - Update function names, parameters, expected values. - Add `async`/`await` and `@pytest.mark.asyncio` if sync changed to async. - Remove tests for deleted functionality. - Do not add new tests unless the user asks. ## Step 5: Done Report what was updated. The user can invoke validate-and-fix when ready.
Ver en GitHub