# Skeleton: incremental-comparison.html > **⛔ Self-contained HTML — ALL CSS inline. No CDN links. Follow this exact 8-section structure.** --- The HTML report has exactly 8 sections in this order. Each section MUST be present. ## Section 1: Header + Comparison Cards ```html
INCREMENTAL THREAT MODEL COMPARISON

[FILL: repo name]

BASELINE
[FILL: baseline SHA]
[FILL: baseline commit date from git log]
[FILL: old rating]
TARGET
[FILL: target SHA]
[FILL: target commit date from git log]
[FILL: new rating]
TREND
[FILL: Improving / Worsening / Stable]
[FILL: N months]
``` ## Section 2: Metrics Bar (5 boxes) ```html
[FILL: Components: old → new (±N)] [FILL: Trust Boundaries: old → new (±N)] [FILL: Threats: old → new (±N)] [FILL: Findings: old → new (±N)] [FILL: Code Changes: N commits, M PRs — use git rev-list --count and git log --oneline --merges --grep="Merged PR"]
``` **MUST include Trust Boundaries as one of the 5 metrics. 5th box is Code Changes (NOT Time Between).** ## Section 3: Status Summary Cards (colored) ```html
Fixed: [FILL: count] [FILL: 1-sentence summary, NO IDs] New: [FILL: count] [FILL: 1-sentence summary, NO IDs] Previously Unidentified: [FILL: count] [FILL: 1-sentence summary, NO IDs] Still Present: [FILL: count] [FILL: 1-sentence summary, NO IDs]
``` **Status info appears ONLY here — NOT also in the metrics bar.** ## Section 4: Component Status Grid ```html [REPEAT: one row per component with color-coded status badge] [END-REPEAT]
ComponentTypeStatusSource Files
[FILL][FILL][FILL][FILL]
``` ## Section 5: Threat/Finding Status Breakdown ```html
[FILL: Grouped by status — Fixed items, New items, etc.] [REPEAT: Each item: ID | Title | Component | Status] [END-REPEAT]
``` ## Section 6: STRIDE Heatmap with Deltas ```html [REPEAT: one row per component] ... [same for T, R, I, D, E, A, Total] ... [END-REPEAT]
Component STRIDEA Total T1T2T3
[FILL: component] [FILL: S value] [FILL: delta indicator ▲/▼] [FILL: T1][FILL: T2][FILL: T3]
``` **MUST have 13 columns: Component + S + T + R + I + D + E + A + Total + divider + T1 + T2 + T3** ## Section 7: Needs Verification ```html
[REPEAT: items where analysis disagrees with old report] [FILL: item description] [END-REPEAT]
``` ## Section 8: Footer ```html ``` --- **Fixed CSS variables (use in `