¿Qué hace pacsomatic?
Visión General
Esta habilidad proporciona un flujo de trabajo de ejecución reproducible para nf-core/pacsomatic, centrado en un único punto de entrada auxiliar que maneja la validación, la generación de artefactos y la ejecución opcional.
Punto de entrada principal:
scripts/run_pacsomatic.py
El script auxiliar:
- valida los identificadores requeridos, archivos, modo de referencia y prerrequisitos de ejecución
- escribe un muestrario compatible con pacsomatic (
patient,sample,status,bam,pbi) - genera un YAML de parámetros y un script de lanzamiento para reejecuciones reproducibles
- soporta validación en modo
--dry-runy rutas de ejecución/envió
Utiliza esta habilidad como la ruta predeterminada para operaciones con pacsomatic. No la evites con comandos nextflow run nf-core/pacsomatic ensamblados manualmente a menos que el usuario solicite explícitamente la construcción manual de comandos.
Cuándo Usar Esta Habilidad
Invoca esta habilidad cuando el usuario pida:
- ejecutar análisis tumor-normal emparejados a partir de archivos BAM
- generar o corregir el muestrario y los artefactos de lanzamiento de pacsomatic
- ejecutar localmente o enviar a planificadores (LSF/Slurm/PBS/SGE)
- realizar una validación previa (dry-run) antes de la ejecución
- solucionar fallos de lanzamiento o resumir los resultados de la ejecución
No uses esta habilidad para:
- interpretación biológica profunda más allá de comprobaciones de cordura a nivel de ejecución
- editar los componentes internos del pipeline a menos que se solicite explícitamente
Frases típicas que activan esta habilidad:
- "ejecuta nf-core/pacsomatic para este par tumor-normal"
- "prepara el muestrario y el script de lanzamiento de pacsomatic"
- "haz primero un dry-run y dime qué falta"
- "envía pacsomatic a slurm/lsf y devuelve el ID del trabajo"
- "por qué falló el envío de pacsomatic"
Reglas de Enrutamiento y Ejecución
- Siempre recopila primero las entradas requeridas para la ejecución.
- Siempre enruta a través de
scripts/run_pacsomatic.pypara la validación y generación de artefactos. - Usa
--dry-runpor defecto cuando el usuario solo pida comprobaciones/validación. - Usa
--runsolo cuando el usuario pida ejecutar/enviar. - Para modos con planificador, incluye argumentos de recursos específicos del ejecutor y devuelve el ID del trabajo detectado cuando esté disponible.
- Si la ejecución falla, reporta el primer punto de fallo y el siguiente objetivo de diagnóstico (
.nextflow.log,pipeline_info, registros de tareas fallidas).
Entradas Requeridas
Obligatorias:
- ruta del BAM tumoral
- ruta del BAM normal
- ID del paciente
- ID de la muestra tumoral
- ID de la muestra normal
- directorio de salida
- exactamente un modo de referencia:
--fastao--genome
Opcionales:
- perfil, recursos, cuenta/cola del planificador
- versión del pipeline (
-r) - archivo de parámetros, banderas de resume/report/dag
--dry-runy/o--run
Flujo de Trabajo
- Validar identidad y restricciones de entrada.
- Validar rutas locales requeridas (BAM, PBI opcional, FASTA opcional).
- Resolver comprobaciones de ejecución y dependencias.
- Construir el muestrario y el YAML de parámetros generado.
- Generar el script de lanzamiento para el ejecutor seleccionado.
- Si es
--dry-runy no--run, detenerse después de la generación de artefactos. - Si es
--run, ejecutar localmente o enviar al planificador. - Devolver la ruta del comando/script, el estado de la validación y el ID del trabajo (si se detecta).
Contrato de Respuesta del Agente
Cada respuesta después de la invocación debe incluir:
- el comando exacto utilizado o la ruta del script generado
- confirmación de que se ejecutaron las comprobaciones de validación
- tipo de ejecución (
dry-runvsrun) - ID del trabajo del planificador cuando esté disponible
- un siguiente paso concreto para validación/diagnóstico
Inicio Rápido
Dry run:
python scripts/run_pacsomatic.py \
--tumor-bam /ruta/al/tumor.bam \
--normal-bam /ruta/al/normal.bam \
--patient-id P001 \
--tumor-sample-id P001_T \
--normal-sample-id P001_N \
--outdir /ruta/de/salida \
--genome GRCh38 \
--profile singularity,sanger \
--dry-run
Ejemplo de ejecución con planificador (Slurm):
python scripts/run_pacsomatic.py \
--tumor-bam /ruta/al/tumor.bam \
--normal-bam /ruta/al/normal.bam \
--patient-id P001 \
--tumor-sample-id P001_T \
--normal-sample-id P001_N \
--outdir /ruta/de/salida \
--genome GRCh38 \
--profile singularity,sanger \
--executor slurm \
--queue compute \
--project my_account \
--cpus 16 \
--memory-gb 64 \
--walltime 48:00 \
--run
Configuración
Usa config.yaml como línea base para los valores predeterminados de perfil/ejecutor/ejecución. Sobrescribe en el momento de la invocación cuando los requisitos del usuario difieran.
Pruebas
Ejecuta las pruebas unitarias desde la raíz de la habilidad:
python -m unittest discover -s tests/pacsomatic -v
Referencias
references/agent-playbook.mdreferences/config-and-output.mdreferences/pacsomatic_guide.mdscripts/run_pacsomatic.py