{% extends "base.html" %} {% set active_page = "drafts" %} {% block title %}Compare Drafts — IETF Draft Analyzer{% endblock %} {% block extra_head %} {% endblock %} {% block content %}

Compare Drafts

Side-by-side analysis of selected drafts: shared ideas, references, and AI-generated comparison.

{% if not data %}
{% if names and names|length < 2 %}

Need at least 2 valid draft names to compare.

{% else %}

Select drafts to compare from the Draft Explorer, or enter draft names below.

{% endif %}
{% else %}
{% for draft in data.drafts %}
{{ draft.title }}
{{ draft.name }}
{{ (draft.abstract | striptags)[:200] }}
{% if draft.rating %}
{% for dim, label in [('novelty', 'Nov'), ('maturity', 'Mat'), ('relevance', 'Rel'), ('momentum', 'Mom'), ('overlap', 'Ovl')] %}
{{ label }}
{% if dim == 'overlap' %}
{{ draft.rating[dim] }}
{% else %}
{{ draft.rating[dim] }}
{% endif %}
{% endfor %}
{{ draft.rating.score }}
{% endif %}
{% endfor %}
{% if data.similarities %}

Pairwise Embedding Similarity

{% for sim in data.similarities %}
{{ sim.a.split('-')[-1][:20] }} {{ sim.b.split('-')[-1][:20] }}
{{ "%.3f"|format(sim.similarity) }}
{% endfor %}
{% endif %} {% if data.shared_ideas %}

Shared Ideas ({{ data.shared_ideas|length }})

{% for idea in data.shared_ideas %}
{{ idea.title }}
Found in: {{ idea.drafts | join(', ') }}
{% endfor %}
{% endif %}
{% for draft in data.drafts %}

Unique Ideas: {{ draft.name.split('-')[-1][:20] }} ({{ data.unique_ideas.get(draft.name, [])|length }})

{% for idea in data.unique_ideas.get(draft.name, [])[:10] %}
{{ idea.title }}
{% if idea.description %}
{{ idea.description }}
{% endif %}
{% endfor %} {% if data.unique_ideas.get(draft.name, [])|length == 0 %}
No unique ideas extracted
{% endif %}
{% endfor %}
{% if data.shared_refs %}

Shared References ({{ data.shared_refs|length }})

{% for ref in data.shared_refs %} {{ ref.type|upper }} {{ ref.id }} {% endfor %}
{% endif %}

AI Comparison Summary

Click "Generate Comparison" to get a Claude-powered analysis of these drafts.
{% endif %} {% endblock %} {% block extra_scripts %} {% if data %} {% endif %} {% endblock %}