Input lineage and scope

Original input receipts and current report inputs remain separate. Scope values are declarations, not measurements. RNA evidence extent is unknown unless explicitly declared; neither filenames nor retained predictions establish whole-library coverage.

{% for label, inputs in [('Original input receipts', input_coverage.original_inputs), ('Current report inputs / replay containers', input_coverage.current_inputs)] %}

{{ label }}

{% if not inputs %}

Not recorded.

{% endif %} {% for input in inputs %}
Input {{ loop.index }}
{% for key, label in [('patient_id', 'Patient'), ('sample_id', 'Sample'), ('library_id', 'Library'), ('timepoint', 'Timepoint'), ('reference_assembly', 'Reference assembly'), ('annotation', 'Annotation'), ('rna_evidence_extent', 'RNA evidence extent')] %} {% endfor %}
Input identity{{ input.input_id | e }}
Format / path{{ input.source_format | e }} / {{ input.path | e }}
Content SHA-256{{ input.content_sha256 | e }}
{{ label }}{{ input.scope.get(key) or 'Unknown' }}
Manifest{{ input.manifest_path or 'Not recorded' }}
Manifest declarations{{ input.manifest_declarations | tojson | e }}
Report declarations{{ input.report_declarations | tojson | e }}
{% endfor %}{% endfor %}