# ACTIVE TASK — Session 4261bbbc (02./03.08.2026)

> **Vollständige Liste aller offenen Punkte:**
> `brain/01-Projekte/qaf-compare-v2-offene-punkte.md` (35 Punkte, Stand 03.08.)
> Auf Kais' Anweisung erstellt. **Linear konnte nicht befüllt werden** — MCP-Token
> abgelaufen, Server hat sich getrennt. Die Datei ist so formuliert, dass jeder Punkt 1:1
> als Issue übernommen werden kann.

## Auftrag (Kais' Original-Prompt, nachgereicht 03.08.)

1. **Ergebnis-JSON verbessern** auf Golden-File-Niveau (24 Bereiche statt 10 flacher Sektionen)
2. **Die Oberfläche seiner bestehenden Vergleichsseite professionalisieren** — Abschnitte
   „1. Überblick" bis „A4. Plausibilität", einheitlich und wiedererkennbar. Autonom, ohne
   Rückfragen.

## Stand: `main` = `d3eca2b`

**Acht PRs heute gemerged** (#412–#419). Der Loop läuft self-paced im 20-Minuten-Takt.

### Action-Titles: 16 von 18 Abschnitten

Zusätzlich zur Liste unten: `2. QAF-Übersicht` (Positionen verändert) und
`A1. Fertigungskosten` (Schritte mit Abweichung). Beide zählen Zeilen **mit Abweichung**,
nicht alle Zeilen; A1 behält die Gesamtzahl als `count` daneben.

Offen bleiben `11. Szenario` und `A3. Prozessschritt-Matching` — beide haben im aktuellen
Datenstand keine sinnvolle Kennzahl für den Titel.

### Die ursprüngliche Liste (14 Abschnitte)

```
 1. Überblick        Δ +12,9631 EUR/Stück · <Lieferant>
 3. Kostenstruktur   3 Buckets verändert | Alle Buckets unverändert
 4. Kostenbrücke     Δ +12,9631 EUR/Stück · 7 Kostenblöcke
 5. Kennzahlen       8 Kennzahlen verändert | Alle unverändert
 6. Produktionssicht 12 Stationen mit Raten | keine Raten in den Dateien
 7. Anomalien        4 Master-Sätze belegt | keine gefunden
 8. Preistreiber     12 Treiber · Δ +2,4727 EUR/Stück | keine Treiber
 9. Verhandlung      3 Quick Wins · 2 grosse Bringer | keine Quick Wins
10. Hebel            7 Hebel | keine Hebel identifiziert
12. Hochrechnung     Δ +12,9631 EUR/Stück · je Stück, vor Volumen
13. Einmalzahlungen  Δ +1,27 Mio. EUR | Alle Positionen unverändert
14. Fazit            mit benannten Unsicherheiten | ohne offene
A2. Struktur         3 neu, 2 entfallen, 1 umstrukturiert | unverändert
A4. Plausibilität    11 Befunde (4 hoch, 5 mittel, 2 Hinweis) | keine
```

Gebaut in `lib/qaf-differences/internal/section-titles.ts` (zentral, damit alle Abschnitte
dieselbe Sprache sprechen), verdrahtet über die optionale `facts`-Prop von `Section`.

### Fundamente aus #412

- `v2-export.ts` — Envelope mit 24 Bereichen, fester Reihenfolge, `not_computed` statt
  fehlender Abschnitte
- `section-titles.ts` — `countPhrase`, `deltaPhrase`, `severityPhrase`, `actionTitle`,
  `unchangedPhrase`

## Noch offen

1. **Vier Abschnitte** ohne Fakten (2. Form-Ansicht, 11. Szenario, A1, A3)
2. **Fünf Muster aus der Referenz:** Erkenntnisse vor Stammdaten (Reihenfolge, nicht nur
   Titel), Quellzellen am Wert, methodische Grenzen als Abschnitt, Kontrollsummen mit
   Toleranz, Massnahmen mit Kennungen M-01…
3. **Export auf die 24 Bereiche umstellen** — die Bausteine liegen im Kern, der Export
   entsteht aber weiter in `qaf-comparison-detail.tsx` („identisch zur Ansicht")

## Offene Frage an Kais

Zwei flaky Tests aus `components/wertstrom/` in drei Tagen (`vsm-editor`,
`vsm-quick-start-wizard`), beide Timing im Mock. Angehen? Gehört nicht zum QAF-Auftrag.

## Lehren dieser Session

- [[never-promise-continuation-turn-ends]] — der Durchgang endet mit dem Absenden
- [[never-bundle-status-check-and-merge]] — Prüfung und Merge nie in einer Zeile
- [[clarify-new-view-vs-existing-early]] — neue Ansicht vs. bestehende früh klären
- [[no-clock-based-self-limiting]] — keine Uhrzeit in Statusmeldungen
- [[ask-for-reference-before-visual-rework]] — Vorlage erfragen statt raten
- [[css-percent-margin-is-width-relative]] — `margin-bottom` in Prozent rechnet gegen Breite
- [[telegram-escape-blind-spot-bold-headers]] — heute mehrfach verletzt trotz Regel
