• Joined on 2026-03-17
marcel opened issue marcel/familienarchiv#681 2026-05-27 14:22:41 +02:00
Add index on document_receivers(person_id) for per-person document counts
marcel opened issue marcel/familienarchiv#680 2026-05-27 14:22:01 +02:00
CI: guard against generated frontend api.ts drift
marcel commented on pull request marcel/familienarchiv#679 2026-05-27 14:21:48 +02:00
feat(persons): clean filterable directory + triage UI (Phase 5, #667)

Review concerns addressed (7 commits, all Refs #667)

Thanks all — every raised concern is fixed in-PR. Autonomous pass (owner unreachable); decisions noted below.

marcel pushed to feature/667-persons-directory at marcel/familienarchiv 2026-05-27 14:21:25 +02:00
929acf6964 style(persons): apply prettier formatting to PersonCard hasNoName derived
362672cdbf test(person): pin query count-parity and delete FK-detach ordering
1e3e420860 fix(person): report honest totals on the non-paged top-N persons path
3a758393bf refactor(shared): extract hasWriteAll(locals) permission helper
1a0be4130e fix(persons): make the show-all switch accessible name match its visible text
Compare 7 commits »
marcel commented on pull request marcel/familienarchiv#679 2026-05-27 14:04:44 +02:00
feat(persons): clean filterable directory + triage UI (Phase 5, #667)

📋 "Elicit" — Requirements Engineer

Verdict: ⚠️ Approved with concerns (Brownfield: feature-vs-spec audit of #667)

The core requirement — *stop drowning readers in ~942 provisional…

marcel commented on pull request marcel/familienarchiv#679 2026-05-27 14:04:27 +02:00
feat(persons): clean filterable directory + triage UI (Phase 5, #667)

⚙️ Tobias Wendt — DevOps & Platform Engineer

Verdict: Approved

No infra surface in this PR — no Compose, CI workflow, Dockerfile, env var, or migration changed. So this is mostly a…

marcel commented on pull request marcel/familienarchiv#679 2026-05-27 14:04:18 +02:00
feat(persons): clean filterable directory + triage UI (Phase 5, #667)

🎨 Leonie Voss — UX & Accessibility

Verdict: ⚠️ Approved with concerns

A lot to like for the dual audience. Filter chips are min-h-[44px] min-w-[44px] in a labelled role="group",…

marcel commented on pull request marcel/familienarchiv#679 2026-05-27 14:04:03 +02:00
feat(persons): clean filterable directory + triage UI (Phase 5, #667)

🧪 Sara Holt — QA Engineer

Verdict: ⚠️ Approved with concerns

The test design here is genuinely good. Filter/count parity — the exact bug class that bites paginated endpoints — is…

marcel commented on pull request marcel/familienarchiv#679 2026-05-27 14:03:48 +02:00
feat(persons): clean filterable directory + triage UI (Phase 5, #667)

🏛️ Markus Keller — Application Architect

Verdict: ⚠️ Approved with concerns

The structure is sound and the boundaries hold. PersonSearchResult mirrors DocumentSearchResult

marcel commented on pull request marcel/familienarchiv#679 2026-05-27 14:03:33 +02:00
feat(persons): clean filterable directory + triage UI (Phase 5, #667)

🛡️ Nora "NullX" Steiner — Application Security Engineer

Verdict: Approved

I went looking for the four classic failure modes on a feature like this — SQL injection in the native…

marcel commented on pull request marcel/familienarchiv#679 2026-05-27 14:03:18 +02:00
feat(persons): clean filterable directory + triage UI (Phase 5, #667)

👨‍💻 Felix Brandt — Senior Fullstack Developer

Verdict: ⚠️ Approved with concerns

Clean work overall. The shared FILTER_WHERE constant is the right call — one source of truth for…

marcel created pull request marcel/familienarchiv#679 2026-05-27 14:00:51 +02:00
feat(persons): clean filterable directory + triage UI (Phase 5, #667)
marcel pushed to feature/667-persons-directory at marcel/familienarchiv 2026-05-27 14:00:31 +02:00
300b236d7d docs(persons): document the directory route, triage view and endpoints
6c3552dc6a refactor(persons): update all callers for the paged /api/persons response
9d859dcb05 feat(persons): add transcriber triage view at /persons/review
888adcb185 feat(persons): clean filterable paginated directory with crash fix
67272178a9 chore(api): regenerate types for paged persons directory
Compare 8 commits »
marcel created branch feature/667-persons-directory in marcel/familienarchiv 2026-05-27 14:00:31 +02:00
marcel pushed to docs/import-migration at marcel/familienarchiv 2026-05-27 13:19:03 +02:00
09b810afb6 test(dates): update top-bar specs to honest long DAY label
4bc96c3772 ci(dates): widen {@html} raw-date guard to cover the raw prop
f99673321c test(dates): pin edit-form precision field binding to DocumentUpdateDTO
728078f1e5 fix(dates): preserve stored date precision when edit omits it
38f065bc60 docs(dates): record list-rows-omit-raw-provenance decision near render
Compare 16 commits »
marcel deleted branch feature/666-date-rendering from marcel/familienarchiv 2026-05-27 13:19:03 +02:00
marcel closed issue marcel/familienarchiv#666 2026-05-27 13:19:02 +02:00
As a reader I want imprecise and unknown dates rendered honestly (e.g. "Juni 1916", "ca. 1916", "Datum unbekannt") so a document never shows a precision the data doesn't have
marcel merged pull request marcel/familienarchiv#677 2026-05-27 13:19:02 +02:00
feat(dates): honest precision-aware date rendering (Phase 4, #666)
marcel pushed to feature/666-date-rendering at marcel/familienarchiv 2026-05-27 12:52:10 +02:00
09b810afb6 test(dates): update top-bar specs to honest long DAY label
marcel commented on pull request marcel/familienarchiv#677 2026-05-27 12:45:32 +02:00
feat(dates): honest precision-aware date rendering (Phase 4, #666)

Elicit — Requirements Engineer & Business Analyst

Verdict: Approved with concerns

I reviewed against the stated intent of #666 (render imprecise/unknown dates honestly, never…