feat: Bewertungs-Kontext mit PDF-Link + Snapshot-Hinweis

Erweiterung des Geltungs-Kontext-Blocks (Antrag-Detail):
- Programm-Titel als Link auf das PDF ({titel} klickbar →
  /static/referenzen/{pdf}, opens in new tab).
- Seitenzahl als ergaenzende Info: "116 S." neben Geltungsdatum.
- Snapshot-Zeile am Block-Ende: "Diese Bewertung wurde am
  {datum} mit {modell} gegen den oben genannten Programm-Stand
  erzeugt." — macht klar, dass die Anzeige eine Momentaufnahme der
  damaligen LLM-Bewertung ist und nicht "live" gegen heutige
  Programme misst.

CSS:
- v3-geltung-pdf: ECG-blauer Link mit dezenter underline-Linie.
- v3-geltung-snapshot: kursiv, getrennt durch hairline-border, gedaempft.

Tests: 88 grün (test_legislaturen + test_wahlprogramme + test_embeddings).

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
Dotty Dotter 2026-05-08 00:48:30 +02:00
parent c7861cfb58
commit d16cacc7fe
2 changed files with 34 additions and 2 deletions

View File

@ -857,3 +857,22 @@ body.v2 .v3-page p { max-width: none; }
color: var(--ink-muted, #777);
font-size: 0.92em;
}
/* PDF-Link im Geltungs-Kontext */
.v3-geltung-pdf {
color: var(--ecg-blue, #009DA5);
text-decoration: none;
border-bottom: 1px solid rgba(0, 157, 165, 0.35);
}
.v3-geltung-pdf:hover {
border-bottom-color: var(--ecg-blue, #009DA5);
}
/* Snapshot-Hinweis (Bewertungsdatum + Modell) */
.v3-geltung-snapshot {
margin-top: 6px;
padding-top: 6px;
border-top: 1px solid var(--hairline, #e5e5e5);
font-size: 0.88em;
color: var(--ink-muted, #777);
font-style: italic;
}

View File

@ -207,13 +207,26 @@
<ul class="v3-geltung-list">
{% for p in geltung_kontext.programme %}
<li>
<strong>{{ p.partei }}:</strong> {{ p.titel }}
<span class="v3-geltung-gueltig">— gültig seit {{ p.gueltig_ab }}{% if p.gueltig_bis %} bis {{ p.gueltig_bis }}{% endif %}</span>
<strong>{{ p.partei }}:</strong>
{% if p.pdf %}
<a href="/static/referenzen/{{ p.pdf }}" target="_blank" rel="noopener" class="v3-geltung-pdf">{{ p.titel }}</a>
{% else %}
{{ p.titel }}
{% endif %}
<span class="v3-geltung-gueltig">— gültig seit {{ p.gueltig_ab }}{% if p.gueltig_bis %} bis {{ p.gueltig_bis }}{% endif %}{% if p.seiten %}, {{ p.seiten }} S.{% endif %}</span>
</li>
{% endfor %}
</ul>
</div>
{% endif %}
{% if antrag.analysiert or antrag.modell %}
<div class="v3-geltung-snapshot">
Diese Bewertung wurde
{% if antrag.analysiert %}am <strong>{{ antrag.analysiert }}</strong>{% endif %}
{% if antrag.modell %} mit <strong>{{ antrag.modell }}</strong>{% endif %}
gegen den oben genannten Programm-Stand erzeugt.
</div>
{% endif %}
</div>
</section>
{% endif %}