# Checklist MayanTraktor Live

Marca de estado: `HARDWARE_DETECTADO_MIDI_ACTIVO`.

## Bus MayanTraktor y validacion MIDI 2

- [x] Mantener Bome como transporte estable para esta sesion.
- [ ] En Bome, enrutar los seis controladores exclusivamente hacia `mayantraktor (A)`.
- [ ] Confirmar en `mayantraktor (B)` una lectura por cada controlador.
- [x] Deshabilitar la tarea experimental `Bastion-MayanTraktor-Routing`.
- [x] Confirmar que no quedan relays WinMM del experimento ejecutandose.
- [ ] Abrir en cada aplicacion una sola representacion de cada controlador: fuente directa o agregado Bome, nunca ambas.
- [ ] Abrir `mayantraktor (B)` mediante Windows MIDI Services MIDI 2/UMP.
- [ ] Tocar un control de cada fuente y confirmar una lectura diferenciada por controlador.
- [ ] Confirmar respuesta correcta en djay Pro para cada lectura.
- [ ] Confirmar que no aparecen dobles notas, dobles CC ni aftertouch no solicitado.

## Antes de abrir Traktor

- [ ] Conectar Hercules DJControl Mix por USB, sin Bluetooth.
- [x] Confirmar que Windows detecta el dispositivo MIDI: `DJCONTROL MIX 2`.
- [ ] Confirmar que no hay hubs USB inestables o cables flojos.
- [ ] Confirmar energia de laptop/PC y plan de energia sin suspension.
- [ ] Abrir Notepad o buffer de defectos.
- [ ] Abrir Voice Access y confirmar idioma espanol.
- [ ] Confirmar microfono de Voice Access.
- [ ] Confirmar volumen general de PC.
- [ ] Confirmar salida de audio principal.
- [ ] Confirmar si Behringer OUT 1-2 esta disponible.
- [ ] Definir fallback de audio si Behringer OUT 1-2 falla.

## Traktor

- [ ] Abrir Traktor.
- [ ] Entrar a Preferences / Controller Manager.
- [ ] Exportar mapping actual antes de modificar.
- [ ] Confirmar que la Hercules aparece como dispositivo MIDI.
- [ ] Confirmar In-Port y Out-Port correctos.
- [ ] Importar o crear mapping de prueba en copia, no sobre el original.
- [ ] Probar un solo control primero.
- [ ] Confirmar que ningun boton mata procesos directamente.

## Bastion / Mayan Mapper

- [ ] Abrir `midi/mayan-mapper.html`.
- [ ] Abrir `midi/station.html`.
- [ ] Confirmar endpoint Mayan Mapper `:8502` si se va a usar backend.
- [ ] Confirmar GRP MIDI2 `:8011` solo si aplica.
- [ ] Confirmar Voice Receiver `:8767` si se va a usar voz a MIDI.
- [ ] Confirmar Voice Stream `:8788` si se va a usar websocket/eventos.
- [ ] Registrar codigos MIDI reales antes de declarar mapping funcional.
- [ ] Confirmar cuarentena activa para Maschine izquierda / `midiuniversalis` / `AD 0047` y `AD 0048`: log si, accion no.

## MIDI Router / Bome / djay Pro observado

- [ ] Confirmar en MSI la ruta Bome correcta: `DJCONTROL MIX -> To midiuniversalis ipad`.
- [ ] Confirmar `From midiuniversalis -> midiuniversalis Virtual Out`.
- [ ] Confirmar `From midiuniversalis -> To midiuniversalis`.
- [ ] Confirmar `Maschine MK2 MIDI In -> To midiuniversalis ipad`.
- [ ] Confirmar `Traktor Kontrol X1 Midi -> To midiuniversalis ipad`.
- [ ] Confirmar en midiuniversalis main: M32 activo hacia `To midiuniversalis main`.
- [ ] Confirmar Maschine izquierda activa hacia `To midiuniversalis ipad` y `To midiuniversalis main`.
- [ ] Confirmar en djay Pro/Maschine Preferences que `Maschine MK2 In` esta habilitado como Input.
- [ ] Confirmar en djay Pro/Maschine Preferences que `Maschine MK2 Out` esta habilitado como Output.
- [ ] Confirmar que M32 y Maschine izquierda siguen por `midiuniversalis` canal operativo `14`.
- [ ] Confirmar en iPad/Bome que `midiuniversalis` aparece conectado.
- [ ] Confirmar en iPad/Bome que `midiuniversalis main` aparece conectado.
- [ ] Confirmar ruta iPad `From midiuniversalis -> BN midiuniversalis Virtual Out`.
- [ ] Confirmar ruta iPad `From midiuniversalis main -> BN midiuniversalis main Virtual Out`.
- [ ] Si aparece `AD 00 47` en `BN midiuniversalis Virtual Out`, mantener cuarentena: log si, accion no.
- [ ] Si `AD 00 47` o `AD 00 48` produce sonido tipo trompeta, bloquear live: filtrar familia `AD` canal humano `14` antes de salida musical.
- [ ] Confirmar que `AD 00 47/48` no llega a Microsoft GS Wavetable Synth, djay Pro, Maschine ni ningun instrumento activo.
- [ ] Si no hay filtro por mensaje, apagar temporalmente la ruta/destino que produce la trompeta y usar fallback.

## Audio live / Behringer / Sonos

- [ ] Confirmar Behringer UMC404HD como salida principal de Windows / djay Pro.
- [ ] Confirmar salida Windows / djay Pro en canales Behringer `1-2`.
- [ ] Confirmar cable fallback del hub HP G5 hacia canales `1-2`.
- [ ] Confirmar iPad por doble RCA convertido a `6.5 mm`.
- [ ] Confirmar Maschine izquierda y M32 por `6.5 mm` al canal `3` / `OUT 3` Behringer.
- [ ] Confirmar USB Anker convertido a `3.5 mm` entrando al canal `4` Behringer.
- [ ] Confirmar Mini por Synaptics line out -> RCA Monster -> `6.5 mm`.
- [ ] No usar MSI como fuente de audio Realtek durante live.
- [ ] Confirmar Sonos 5 en Line-In cableado para evitar delay/latencia.
- [ ] Confirmar fallback manual si Sonos API no responde.
- [ ] Probar boton MIDI pendiente `line_in_on` solo cuando API Sonos este recuperada.
- [ ] Probar knob MIDI pendiente `sonos_volume` con rango seguro.
- [ ] Probar control pendiente `sonos_bass_ultra` solo despues de confirmar API exacta.

## Prueba A/B Hercules doble CC

Regla urgente: no asumir 14-bit todavia y no mapear CC secundario hasta aislar origen.

### A. Directo

- [ ] Conectar Hercules directo, sin Bome, Mayan, router MIDI ni Mapping Universalis.
- [ ] Probar en Windows 11 con monitor crudo.
- [ ] Probar en iPad/iPhone con djay Pro si aplica.
- [ ] Capturar knob/fader sospechoso, por ejemplo filtro izquierdo.
- [ ] Registrar si djay Pro aprende solo `CC2` o aprende `CC2 + CC34`.
- [ ] Registrar si crossfader aprende `CC0` solo o `CC0 + CC32`.
- [ ] Registrar si filtros/faders aprenden pares `CC8 + CC40` / `CC40 + CC8`.

### B. Capa activa

- [ ] Activar ruta actual: Bluetooth, network, Bome, Mayan, router o Mapping Universalis segun corresponda.
- [ ] Repetir exactamente el mismo control fisico.
- [ ] Registrar mensaje crudo, CC primario, CC secundario, canal y accion aprendida por djay Pro.
- [ ] Marcar conflicto si el control mueve dos parametros o aprende doble CC.

### Decision

- [ ] Si `CC34` aparece solo con capa activa: bloquear Mapping Universalis para knobs/faders o filtrar salida secundaria.
- [ ] Si `CC34` aparece directo: revisar modo/perfil Hercules y mapping de djay Pro iPad.
- [ ] Si aparecen pares `CCn/CC(n+32)` solo en iPad: tratar el segundo CC como LSB/14-bit secundario y filtrarlo en ruta iPad/Bome.
- [ ] No mapear `CC34`, `CC32`, `CC40` ni ningun CC secundario hasta aislar origen.

## Grabacion y bitacora

- [ ] Confirmar herramienta de grabacion.
- [ ] Confirmar carpeta de salida de grabacion.
- [ ] Hacer clip de prueba de 10 segundos.
- [ ] Abrir `defects-log-template.md` o una copia runtime.
- [ ] Registrar hora, control usado, accion esperada y accion real por cada falla.

## Fallback

- [ ] Tener mouse y teclado listos.
- [ ] Tener salida de audio alternativa lista.
- [ ] Tener mapping Traktor original exportado.
- [ ] Tener forma manual de abrir Task Manager.
- [ ] Tener forma manual de activar Voice Access.
- [ ] Tener forma manual de hacer Copy/Cut/Paste.
- [ ] Si el mapping falla, operar con teclado/mouse y registrar defecto; no improvisar acciones destructivas.
