- Add complete agent harness structure with 8 roles (leader, triager, architect, implementer, reviewer, security, qa, documenter) - Implement strict workflow with 9 stages and mandatory gates - Add comprehensive verification script and runtime status tracking - Create artifact-based evidence system with contracts and schemas - Add agent policy matrix with permissions and anti-cheat rules - Include test suite (44 tests passing) and CI-ready structure - Add documentation: README, HOWTO, CHECKPOINTS, templates - Configure model routing policies and token-aware task assignment - Add BDD/SDD specification guides and feature templates - Include starter pack for quick project onboarding All verification checks pass. Framework ready for production use.
BDD — Behavior Driven Development
Índice
Overview
Este directorio contiene especificaciones BDD en formato Gherkin.
Los archivos .feature sirven como especificación ejecutable.
naming conventions
features/
├── <domain>/
│ ├── <feature-name>.feature
│ └── <feature-name>.feature
└── common/
└── <common-feature>.feature
tags permitidos
| Tag | Uso |
|---|---|
@F-XXX |
Link a feature del backlog |
@smoke |
Tests críticos (siempre ejecutar) |
@regression |
Tests de regresión |
@integration |
Tests de integración |
@e2e |
End-to-end tests |
@unit |
Tests unitarios |
@api |
Tests de API |
@ui |
Tests de interfaz |
Features
Ver spec/bdd/features/ para los archivos .feature.
Step Definitions
Los step definitions deben estar en:
- Python:
features/steps/*.py - JS/TS:
features/step_definitions/*.ts - Go:
features/steps/*.go
Template (Python/Behave)
"""Steps para login feature."""
from behave import given, when, then
@given('un usuario registrado con email "{email}" y password "{password}"')
def step_registered_user(context, email, password):
"""Crea usuario de prueba."""
pass
@when('el usuario ingresa su email "{email}"')
def step_enter_email(context, email):
"""Ingresa email en el formulario."""
pass
@when('ingresa password "{password}"')
def step_enter_password(context, password):
"""Ingresa password."""
pass
@then('el sistema muestra mensaje de error "{message}"')
def step_show_error(context, message):
"""Verifica mensaje de error."""
pass
Ejecutar Tests
Python (Behave)
behave features/
behave features/ --tags @smoke
behave features/ --tags ~@slow # exclude
Node.js (Cucumber)
npx cucumber-js features/
npx cucumber-js features/ --tags "@smoke and @F-001"
Checklist de Feature
- Feature documentado en Gherkin
- Todos los scenarios tienen Given/When/Then
- Tags
@F-XXXpresentes - Step definitions implementados
- Tests ejecutables