Skip to content

fix: Affiliation nicht mehr als Koautor zitiert (Zotero-Dateiname)#72

Open
TillQuandel wants to merge 2 commits into
masterfrom
fix/affiliation-coauthor-attribution
Open

fix: Affiliation nicht mehr als Koautor zitiert (Zotero-Dateiname)#72
TillQuandel wants to merge 2 commits into
masterfrom
fix/affiliation-coauthor-attribution

Conversation

@TillQuandel

Copy link
Copy Markdown
Owner

Problem

Realer Lauf über Mahmood (2016) „Do People Overestimate their Information Literacy Skills?" (15-S.-PDF) deckte eine Quellen-Fehlattribution auf.

Zotero exportiert (oft deutsche Locale) die Affiliation als zweiten „Autor" im Dateinamen: Mahmood und University of the Punjab - 2016 - Titel.pdf. Die Pipeline behandelte „University of the Punjab" als Koautor:

  • Body-Zitate: „Mahmood & Punjab (2016)" + „Forschende an der University of the Punjab" (Plural → Autorenteam impliziert; Quelle sagt „the author", Singular)
  • _extract_primary_authors verlor den echten Autor ganz → ['Punjab'] (Planner-origin falsch)
  • _short_label erzeugte falsches „Mahmood et al. 2016"

Footnotes + Quellen-Block waren nur zufällig korrekt — die CrossRef-Autor-Korrektur (Stage 7) rettete die deterministischen Pfade, aber der Extractor (Stage 3-6) sah den verschmutzten Autor.

Wurzel (zwei Kanäle)

Ungereinigter Autor-String aus beiden Zotero-Dateiname-Parsern:

  • pdf_enrich._parse_filename_dynamic (Kanal 1, feuerte hier via Stage-0-Enrichment)
  • vault_writer._parse_filename_fallback (Kanal 2)

Geschwister der Issue-41/PR-#71-Klasse über den Affiliations-Kanal.

Fix

Neue geteilte shared/author_norm.drop_institutional_coauthors entfernt institutionelle Affiliations-Segmente — aber nur wenn ≥1 Personen-Segment bleibt:

  • reiner Korporativ-Autor (World Health Organization) bleibt erhalten
  • legitime 2-Personen-Listen (Schlebbe und Greifeneder) unangetastet
  • ≥2-Token-Guard schützt 1-Wort-Nachnamen (Hospital/Bureau/Center)
  • Separator case-insensitiv (UND/AND aus manuellen Renames)

Verifikation

  • TDD: 13 Tests (RED→GREEN), inkl. Regressions-Guards + dokumentierte Residuen (markerlose Affiliation)
  • Cross-Model-Review: Codex + Qwen — HIGH-Befunde (Case-Sensitivity, Nachname-Kollision) adressiert
  • Suite grün: 4618 passed; betroffene WinError-5-temp-race-Files im Isolations-Re-Run 38/38
  • Manifestationskette nach Fix: alle drei Helfer liefern „Mahmood" statt „Mahmood & Punjab"/['Punjab']/„et al."

Tilltime added 2 commits June 25, 2026 21:54
Zotero exportiert (oft deutsche Locale) die Affiliation als zweiten "Autor"
im Dateinamen: "Mahmood und University of the Punjab - 2016 - Titel.pdf".
Die Pipeline behandelte "University of the Punjab" als Koautor -> falsche
Body-Zitate "Mahmood & Punjab" / "Forschende", _extract_primary_authors
verlor den echten Autor ganz (-> ['Punjab']), _short_label erzeugte falsches
"et al.". Footnotes/Quellen-Block wurden nur zufaellig durch die CrossRef-
Autor-Korrektur (Stage 7) gerettet -- der Extractor (Stage 3-6) sah den
verschmutzten Autor.

Wurzel: ungereinigter Autor-String aus ZWEI Dateiname-Parsern
(pdf_enrich._parse_filename_dynamic Kanal 1 + vault_writer.
_parse_filename_fallback Kanal 2). Beide gefixt.

Fix: neue geteilte shared/author_norm.drop_institutional_coauthors entfernt
institutionelle Affiliations-Segmente -- aber nur wenn >=1 Personen-Segment
bleibt (reiner Korporativ-Autor wie "World Health Organization" und legitime
2-Personen-Listen bleiben unangetastet). >=2-Token-Guard schuetzt 1-Wort-
Nachnamen (Hospital/Bureau/Center), separator case-insensitiv (UND/AND).

TDD (13 Tests), Codex+Qwen cross-reviewt (HIGH-Case-Sensitivity + Nachname-
Kollision adressiert), generative-Suite gruen (Isolations-Re-Run der temp-
race-Files 38/38). Geschwister der Issue-41/PR-71-Klasse ueber den Affiliations-
Kanal.
…-Autor

Der Mahmood-Re-Lauf nach dem Autor-Feld-Fix zeigte ein Residuum: Footnotes,
Quellen-Block und Primär-Prosa zitierten korrekt "Mahmood", aber die vom LLM
geschriebenen Sekundärzitat-Header sagten weiter "zit. n. Mahmood & Punjab".

Wurzel: _format_source_meta zeigt dem Extractor-LLM den ROHEN Dateinamen
("Datei: Mahmood und University of the Punjab - 2016 - …") — das ' und ' liest
sich als Zwei-Autoren-Trenner. Obwohl das Autor-Feld bereits gesäubert ist
("Autor: Mahmood"), greift der LLM für die Zitat-Kurzform den volleren Namen
aus der Datei-Zeile ab. (Quelltext selbst nutzt Komma = Affiliation, das der
LLM korrekt behandelt — Prosa beweist es; der ' und '-Dateiname ist der Trigger.)

Fix: _clean_source_file_display() rekonstruiert die Datei-Zeile mit gesäubertem
Autor via SSoT-Parser (_parse_filename_fallback → drop_institutional_coauthors).
Dritter Geschwister-Kanal der Issue-41/PR-71-Klasse. TDD (+1 Test), 122
Extractor/Writer/Enrich-Tests grün.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants