Guías

Un cambio, de principio a fin

El carril spec paso a paso — propuesta, specs delta, aprobación, tareas con tests primero, verificación, fusión.

Ejemplo: "Añade facturas con líneas, totales redondeados a 3 decimales, visibles solo para los usuarios de la provincia de la factura."

Contexto

El agente busca en el conocimiento (agent-kit knowledge find invoices), lista las specs vivas (agent-kit specs list) y lee el código que toca el cambio. Todavía no escribe nada.

Propuesta y specs delta

Terminal
npx @razcue/agent-kit work new change invoices --title "Invoices module"

El agente rellena proposal.md (por qué, dentro / fuera, capacidades, preguntas abiertas) y un delta por capacidad, por ejemplo specs/invoices.md:

## ADDED Requirements

### invoices.R2 — Rounded totals
When an invoice is saved, the BFF shall store each line amount and the total rounded half-up to 3 decimals.

#### invoices.R2.S3 — Rounding edge @boundary
- Given a line of quantity 1 at unit price 0.0005
- When the invoice is saved
- Then the line amount is 0.001

agent-kit specs lint 001 no debe dar errores.

Tú apruebas

El agente muestra los requisitos con sus escenarios y las preguntas abiertas, y se detiene. Tus respuestas van a la propuesta, que pasa a status: approved.

Plan y tareas

plan.md lista archivos, cambios de esquema / RPC y riesgos. tasks.md marca cada tarea con los ids de escenario que cubre; en SDD + TDD la tarea de test de cada escenario va antes que su implementación. En proyectos con Supabase y datos de prueba activados, una tarea amplía seed y purge para los escenarios nuevos.

Implementación

Una tarea a la vez, test primero (skill tdd). Una tarea solo se marca con la evidencia debajo: el comando y su resultado.

Verificación

Comprobaciones y tests del proyecto, la tabla escenario → evidencia, agent-kit work trace 001 sin nada sin cubrir, agent-kit preflight y el agente revisor para diffs no triviales.

Fusión y cierre

Terminal
npx @razcue/agent-kit specs merge 001

Los deltas llegan a work/specs/invoices/spec.md, el checklist de QA se renueva y la propuesta queda en status: done. Haces el commit según tu flujo de git.