Skip to content

Consolidate 9 fragmented saint identities missed by the original refactor - #157

Merged
brianglass merged 2 commits into
mainfrom
saint-dedup-2026-08
Aug 3, 2026
Merged

Consolidate 9 fragmented saint identities missed by the original refactor#157
brianglass merged 2 commits into
mainfrom
saint-dedup-2026-08

Conversation

@brianglass

Copy link
Copy Markdown
Owner

Summary

  • Found while reviewing MCP search_saints output: St Seraphim of Sarov was split across two unlinked Saint rows (repose vs. relics-uncovering), a gap in the original saint-model-refactor project's Stage 4 consolidation pass (missed the pair by a small margin under its Jaccard threshold).
  • Scoped further duplicates via five techniques (cross-reference-text scan, occasion-prefix matching, fuzzy edit-distance, exact-name matching, and a targeted day-native-vs-additive scan built from patterns found while manually sampling three months of data) — full methodology and per-case reasoning in docs/saint-dedup-2026-08.md.
  • Merged 9 confirmed duplicate identities and deleted one spurious commemoration entry (St Emilia's misplaced Jan 1 row); several likely-looking candidates (common martyr names like "Julian the Martyr") were deliberately left unmerged after checking the source data showed no distinguishing detail.

Test plan

  • docker compose run --rm tests — 127/127 passing
  • Golden fixture (calendarium/tests/data/january.json) regenerated and diffed against the live API to confirm only the intended change landed
  • Each merge spot-checked via liturgics.Day(...) to confirm no unrelated feast/fast/saint data was disturbed

🤖 Generated with Claude Code

https://claude.ai/code/session_01Hf6j2xXQXywHVh3HAVRxB3

brianglass and others added 2 commits August 3, 2026 14:08
…ctor

Found while reviewing MCP search_saints output: St Seraphim of Sarov was
split across two unlinked Saint rows (repose vs. relics-uncovering), a
gap in the original saint-model-refactor's Stage 4 consolidation (its
Jaccard threshold missed this pair by a small margin). Scoped further
duplicates via five techniques (cross-reference-text scan, occasion-
prefix matching, fuzzy edit-distance, exact-name matching, and a
targeted day-native-vs-additive scan built from patterns found while
manually sampling three months), merging 9 confirmed duplicates and
deleting one spurious commemoration entry, each verified against story
content and, where ambiguous, left unmerged rather than guessed.

Full methodology and per-case reasoning logged in
docs/saint-dedup-2026-08.md. 127/127 tests pass.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Hf6j2xXQXywHVh3HAVRxB3
Three merges in the previous commit copied the additive DayCommemoration's
full_name verbatim, which conflated the solo saint's identity with a
co-commemorated companion (caught in PR review). full_name is meant to be
a solo identity descriptor per the original saint-model-refactor's design;
companion names belong in story prose, not the identity field.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Hf6j2xXQXywHVh3HAVRxB3
@brianglass
brianglass merged commit 2fe4b03 into main Aug 3, 2026
4 checks passed
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.

1 participant