# Test workflow with thread scaling behavior
# Tests: threads directive, thread scaling when cores are limited

SAMPLES = ["A", "B", "C", "D"]

rule all:
    input: expand("output/{sample}.done", sample=SAMPLES)

rule high_thread_job:
    """Job requesting more threads than might be available."""
    output: "output/{sample}.done"
    threads: 8  # Request 8, but may be scaled down
    shell:
        """
        echo "Sample {wildcards.sample} running with ${{NPROC:-{threads}}} threads" > {output}
        """
