# Catalogar cambios en tabla supletoria `nexus` de Neural

Detecta cambios recientes en SDK, backend modules, y UI composables que deban reflejarse en la tabla supletoria `nexus` de Neural (`nexus_upsert`). Actualiza registros existentes o crea nuevos.

## Argumentos

$ARGUMENTS — Opcional. Scope específico: `sdk`, `backend`, `ui`, `all`. Default: `all`.

## Paso 1: Detectar cambios

Comparar estado actual vs último commit/tag para identificar qué cambió:

```bash
# Si hay argumento de scope, filtrar por paquete
# all → revisar los 3 paquetes
git diff HEAD~5 --name-only -- packages/sdk/src/ packages/backend/src/modules/ packages/ui/src/composables/
```

Clasificar cada cambio detectado:

| Cambio en... | Categoría nexus | Acción |
|---|---|---|
| `sdk/src/types/entity.ts` (entity types) | `entity_type` | Upsert definición |
| `sdk/src/types/fields.ts` (field types) | `db_type` o `input_type` | Upsert tipo |
| `sdk/src/fields/*.ts` (factories) | `field_factory` | Upsert factory |
| `backend/src/modules/*/` (patterns) | `pattern` | Upsert pattern si es reutilizable |
| `ui/src/composables/*.ts` | `pattern` | Upsert si es API pública para devs externos |

## Paso 2: Consultar estado actual en Neural

Para cada cambio detectado, buscar si ya existe en la tabla:

```
nexus_search(category: "...", query: "nombre")
```

Comparar el `summary` existente con el código actual. Si no hay cambios sustanciales, saltar.

## Paso 3: Upsert en Neural

Para cada registro nuevo o modificado, usar `nexus_upsert`.

**Reglas de redacción del `summary`:**

- Pensando en dos audiencias simultáneas:
  1. **Dev de app** (usa nexus-backend + nexus-ui): qué es, cuándo usarlo, config mínima
  2. **Dev de plugin** (crea nexus-plugin-*): cómo usarlo desde ctx, integración con engine, gotchas
- Incluir: propósito, cuándo usar, config/parámetros principales, y advertencias
- NO incluir código extenso — solo snippets mínimos si clarifican uso
- Tags descriptivos para filtrado (ej: `crud`, `factory`, `hooks`, `auth`, `sdk`, `how-to`)

## Paso 4: Reportar

Mostrar resumen de cambios:

| Acción | Categoría | Nombre | Motivo |
|---|---|---|---|
| created | field_factory | useMarkdownField | Nuevo factory añadido |
| updated | pattern | EntityServiceHooks | Añadido hook beforeValidate |
| skipped | entity_type | collection | Sin cambios |

## Destinos de documentación (referencia)

La tabla `nexus` alimenta estos tutoriales en Notion KB:

- [Tutorial: App basada en Nexus](https://www.notion.so/3234fc3785408042be6bf648a2876c54)
- [Tutorial: Plugin para Nexus](https://www.notion.so/3234fc37854080d9a5dece31975385d2)

La sincronización Neural → Notion se hace con `/neural-sync-notion`, NO desde este command.
