📊 Executive Summary
Total Repositories
{{ exec_summary.total_repositories }}
{{ exec_summary.successful_scans }} scanned successfully
Average Score
{{ "%.1f"|format(exec_summary.average_score) }}/10
Organization-wide
Total Issues
{{ exec_summary.issue_counts.total }}
Across all repositories
Scan Duration
{{ "%.1f"|format(exec_summary.scan_duration or 0) }}s
Total time
Risk Distribution
{{ exec_summary.risk_distribution.CRITICAL }}
Critical
{{ exec_summary.risk_distribution.HIGH }}
High
{{ exec_summary.risk_distribution.MEDIUM }}
Medium
{{ exec_summary.risk_distribution.LOW }}
Low
🔍 Top Security Issues
{% for issue in exec_summary.top_issues[:5] %}{{ issue.name }}
{{ issue.instances }} instances
{{ issue.repos_affected }} repos affected
📁 Repository Details
{% for result in critical_repos + high_repos + medium_repos + low_repos %}{{ result.repo_name }}
{{ result.risk_level.value }}Score: {{ "%.1f"|format(result.score) }}/10
{% if result.workflows %}
Workflow Security Analysis
{% for workflow in result.workflows %}{{ workflow.path }}
{{ workflow.findings|length }} issue(s)
{{ finding.check_name }}
{{ finding.severity }}
📍 Line {{ finding.line_number }}
{% endif %}
{% if finding.recommendation %}
💡 How to Fix:
{% endif %}
{{ finding.recommendation }}
No GitHub Actions workflows found in this repository.
{% else %}
{# Show failed/warning checks as fallback when no workflow-level findings #}
{% set failed_checks = [] %}
{% set warn_checks = [] %}
{% for check in result.checks %}
{% if check.status.value == "FAIL" %}
{% set _ = failed_checks.append(check) %}
{% elif check.status.value == "WARN" %}
{% set _ = warn_checks.append(check) %}
{% endif %}
{% endfor %}
{% if failed_checks or warn_checks %}
Security Issues Detected
{% for check in failed_checks %}❌ {{ check.name }}
{{ check.severity }}
📚 Documentation:
{% endif %}
⚠️ {{ check.name }}
{{ check.severity }}
📚 Documentation:
{% endif %}
✅ All security checks passed.
{% endif %}
{% endif %}
{% endif %}
⚠️ Scan Errors
{% for result in error_repos %}{{ result.repo_name }}
ERROR{{ result.error }}