Header Analysis {#if headerScore !== undefined} {headerScore}% {/if}

{#if headerAnalysis.issues && headerAnalysis.issues.length > 0}
Issues
{#each headerAnalysis.issues as issue}
{issue.header}
{issue.message}
{#if issue.advice}
{issue.advice}
{/if}
{issue.severity}
{/each}
{/if} {#if headerAnalysis.domain_alignment}
Domain Alignment
From Domain
{headerAnalysis.domain_alignment.from_domain || '-'}
Return-Path Domain
{headerAnalysis.domain_alignment.return_path_domain || '-'}
Aligned
{headerAnalysis.domain_alignment.aligned ? 'Yes' : 'No'}
{#if headerAnalysis.domain_alignment.issues && headerAnalysis.domain_alignment.issues.length > 0}
{#each headerAnalysis.domain_alignment.issues as issue}
{issue}
{/each}
{/if}
{/if} {#if headerAnalysis.headers && Object.keys(headerAnalysis.headers).length > 0}
Headers
{#each Object.entries(headerAnalysis.headers).sort((a, b) => { const importanceOrder = { 'required': 0, 'recommended': 1, 'optional': 2, 'newsletter': 3 }; const aImportance = importanceOrder[a[1].importance || 'optional']; const bImportance = importanceOrder[b[1].importance || 'optional']; return aImportance - bImportance; }) as [name, check]} {/each}
Header Present Valid Value
{name} {#if check.importance} {check.importance} {/if} {#if check.present && check.valid !== undefined} {:else} - {/if} {check.value || '-'} {#if check.issues && check.issues.length > 0} {#each check.issues as issue}
{issue}
{/each} {/if}
{/if} {#if headerAnalysis.received_chain && headerAnalysis.received_chain.length > 0}
Email Path (Received Chain)
{#each headerAnalysis.received_chain as hop, i}
{i + 1} {hop.from || 'Unknown'} → {hop.by || 'Unknown'}
{hop.timestamp || '-'}
{#if hop.with || hop.id}

{#if hop.with} Protocol: {hop.with} {/if} {#if hop.id} ID: {hop.id} {/if}

{/if}
{/each}
{/if}