davidcastagnetoa/skills

fitness_functions

Tests automatizados que verifican propiedades arquitectónicas como latencia máxima y acoplamiento entre módulos

First seen Mar 2, 2026

Installation

$ npx skills add davidcastagnetoa/skills --skill fitness_functions

Similar popular skills

Related neighbors and high-traction skills in the same topics — useful to compare before installing.

Also in this package

Other skills from davidcastagnetoa/skills · top by installs.

npx skills add davidcastagnetoa/skills

Browse all from davidcastagnetoa/skills

More details

Agent compatibility

Declared targets from SKILL.md / docs. Unmarked agents are not listed — the skill may still install via the CLI.

Claude Code Not declared
Cursor Not declared
Codex Not declared
GitHub Copilot Not declared
Windsurf Not declared
Gemini CLI Not declared
Cline Not declared
OpenCode Not declared

Repository health

Stars 1
Default branch main
Open issues 0
Status Active

Package contents

Files included with this skill beyond the listing page.

  • skill md SKILL.md 2,397 B
  • docs SUMMARY.md 139 B

History

  1. First seen on skills.sh
  2. First recorded snapshot · 15 installs

SKILL.md

fitness_functions

Las fitness functions son tests automatizados que verifican propiedades no funcionales del sistema: que ningún agente supera su presupuesto de latencia, que las dependencias entre capas siguen las reglas arquitectónicas, y que el acoplamiento no crece sin control.

When to use

Ejecutar en CI en cada PR. Fallan el build si alguna propiedad arquitectónica se viola, proporcionando feedback inmediato al developer.

Instructions

  1. Latencia por agente: test que ejecuta cada agente con input sintético y mide el tiempo:

``python import pytest, time from backend.agents.liveness import LivenessAgent LATENCYBUDGETS = { "livenesspassive": 0.1, # 100ms "facematch": 0.2, # 200ms "ocr": 0.3, # 300ms "documentprocessor": 0.2, # 200ms } @pytest.mark.asyncio async def testlivenesslatencybudget(): agent = LivenessAgent() start = time.perfcounter() result = await agent.run(SYNTHETICFRAME) elapsed = time.perfcounter() - start assert elapsed < LATENCYBUDGETS["livenesspassive"], f"Liveness agent exceeded budget: {elapsed:.3f}s > {LATENCYBUDGETS['livenesspassive']}s" ``

  1. Dependencias entre capas con import-linter: instalar pip install import-linter y configurar setup.cfg:

``ini [importlinter] root_packages = backend [[importlinter:contract:layers]] name = KYC layer architecture type = layers layers = backend.api | backend.agents | backend.infrastructure ``

  1. Test de acoplamiento: verificar que ningún agente importa directamente de otro agente (solo via interfaz).
  2. Test de schema compatibility: verificar backwards-compatibility de los modelos Pydantic entre versiones.

Notes

  • Las fitness functions documentan implícitamente las decisiones arquitectónicas — si fallan, hay que justificar la excepción.
  • El presupuesto de latencia por agente debe sumar menos de 8s considerando la paralelización del pipeline.
  • Ejecutar las fitness functions de latencia en hardware similar a producción — en CI sin GPU los tiempos son irrelevantes para los agentes ML.