# Ejemplo: directorio con selección explícita

Patrón del catálogo: "Ejemplo 6: directorio explícito" — fuente `reports/` con dos CSV y un
Markdown, `source.kind: "directory"`, `source.input: "filesystem"`, y `source.files` enumerando
cada archivo con su propio `adapter`/`input`.

## Qué copiar

- `reports-summary.mview/mview.json` — la forma de `source.files[]` (un item por archivo
  seleccionado, cada uno con `path`, `adapter`, `input`).
- El transform recibe `input.files[]`, cada uno con `path`, `inputType` (la capacidad declarada) e
  `input` (la forma normalizada real). Nunca abre archivos por su cuenta.

## Qué reemplazar

- Los archivos y la carpeta `reports/` por la fuente real.
- La selección en `source.files` por los archivos reales que la vista necesita.
- La combinación de formatos en `transform.mjs`.

## Invariante que este ejemplo demuestra

Un archivo que existe físicamente en `reports/` pero no aparece en `source.files` **no** se lee ni
afecta el modelo, ni siquiera si comparte extensión con un archivo sí seleccionado. `test.mjs` lo
prueba agregando `march.csv` a la copia temporal sin declararlo en el manifiesto y confirmando que
`fileCount` no cambia.

## Verificación

```bash
node --test test.mjs
```
