From 6103d5d2291116ab43f3bc3c5bc3256333ba419a Mon Sep 17 00:00:00 2001 From: Marcel Date: Mon, 25 May 2026 20:28:45 +0200 Subject: [PATCH] docs(importer): resolve open questions in Personendatei importer spec OQ-01: tool deduplicates rows with identical (firstName, lastName, birthYear) OQ-02: birthPlace/deathPlace kept as separate JSON fields OQ-03: multi-name firstName stored verbatim Co-Authored-By: Claude Sonnet 4.6 --- .../2026-05-25-personendatei-importer-design.md | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/docs/superpowers/specs/2026-05-25-personendatei-importer-design.md b/docs/superpowers/specs/2026-05-25-personendatei-importer-design.md index 17637445..acd46286 100644 --- a/docs/superpowers/specs/2026-05-25-personendatei-importer-design.md +++ b/docs/superpowers/specs/2026-05-25-personendatei-importer-design.md @@ -283,10 +283,10 @@ The Excel serial conversion is new logic added directly in `persons_tree.py` (3 --- -## 12. Open Questions +## 12. Resolved Decisions -| OQ | Question | Blocks | -|----|----------|--------| -| OQ-01 | Some persons appear twice with slightly different data (rows 127/138 — Christa Schütz/Siebert; rows 129/139 — Christoph Seils). Deduplicate in the tool or leave as duplicates for the backend to handle? | §8 persons array | -| OQ-02 | `birthPlace` / `deathPlace` are in the source but absent from the `Person` entity. Should they go into `notes`, or should the backend importer add new columns? | §8 persons array, future backend importer | -| OQ-03 | The `firstName` for `"Charlotte,Meta,Jacobi"` (row 7 / row 120) is a comma-separated multi-name. Store verbatim or split into `firstName` + `alias`? | §5 name normalization | +| OQ | Question | Decision | +|----|----------|----------| +| OQ-01 | Duplicate rows (127/138 — Christa Schütz; 129/139 — Christoph Seils). | **Tool deduplicates.** On pass 1, after building the person list, detect rows with identical `(firstName, lastName, birthYear)` and keep only the first occurrence. Log skipped row ids to stdout. | +| OQ-02 | `birthPlace` / `deathPlace` absent from `Person` entity. | **Keep as separate top-level fields** in the JSON (`birthPlace`, `deathPlace`). The future backend importer may add columns to the `persons` table; the field is preserved here to avoid data loss. | +| OQ-03 | `firstName` = `"Charlotte,Meta,Jacobi"` (multi-name comma string). | **Store verbatim as `firstName`.** No splitting. |