(
run_dir: Path,
status: str,
validation: dict[str, Any],
resource_plan: dict[str, Any] | None = None,
)
| 610 | |
| 611 | |
| 612 | def write_visuals( |
| 613 | run_dir: Path, |
| 614 | status: str, |
| 615 | validation: dict[str, Any], |
| 616 | resource_plan: dict[str, Any] | None = None, |
| 617 | ) -> dict[str, str]: |
| 618 | entries = [ |
| 619 | artifact_entry( |
| 620 | artifact_id="pairing_table", |
| 621 | title="Tumor/Normal Pairing Table", |
| 622 | path="validation/pairs.normalized.tsv", |
| 623 | kind="table", |
| 624 | status="created", |
| 625 | description="Normalized tumor-normal or tumor-only sample design used by the runner.", |
| 626 | ), |
| 627 | artifact_entry( |
| 628 | artifact_id="command_plan", |
| 629 | title="Somatic Command Plan", |
| 630 | path="workflow/somatic_command_plan.json", |
| 631 | kind="json", |
| 632 | status="created", |
| 633 | description="Executable Mutect2, contamination, filtering, and optional annotation commands.", |
| 634 | ), |
| 635 | artifact_entry( |
| 636 | artifact_id="somatic_qc_summary", |
| 637 | title="Somatic QC Summary", |
| 638 | path="qc/somatic_qc_summary.json", |
| 639 | kind="json", |
| 640 | status="created", |
| 641 | description="Pairing, resource, and tumor-only caveat summary.", |
| 642 | ), |
| 643 | artifact_entry( |
| 644 | artifact_id="somatic_pair_review", |
| 645 | title="Somatic Pair Review", |
| 646 | path="qc/somatic_pair_review.tsv", |
| 647 | kind="table", |
| 648 | status="created", |
| 649 | description="Per-pair review of design, matched-normal state, resource caveats, filtered VCF status, contamination table, and variant stats.", |
| 650 | ), |
| 651 | ] |
| 652 | review_outputs = add_vcf_review_notebook_entry( |
| 653 | run_dir, |
| 654 | entries, |
| 655 | title="Somatic DNA VCF Review", |
| 656 | table_items=[ |
| 657 | ("Tumor/Normal Pairing Table", "validation/pairs.normalized.tsv"), |
| 658 | ("Somatic Pair Review", "qc/somatic_pair_review.tsv"), |
| 659 | ], |
| 660 | object_items=[ |
| 661 | ("Somatic QC Summary", "qc/somatic_qc_summary.json"), |
| 662 | ("Run Summary", "summary.md"), |
| 663 | ], |
| 664 | ) |
| 665 | entries.extend(ngs_resource_gate.resource_visual_entries(resource_plan)) |
| 666 | index = write_visualization_index( |
| 667 | run_dir, |
| 668 | title="Somatic DNA Variant Review", |
| 669 | description="Review surface for tumor-normal/tumor-only Mutect2 planning and execution artifacts.", |
no test coverage detected