Skip to content

Decline a title word a trailing rule reads, in the bound join (#637, #640) - #643

Open
derek73 wants to merge 1 commit into
masterfrom
feat/issue-637-640-bound-join-title
Open

derek73 wants to merge 1 commit into
masterfrom
feat/issue-637-640-bound-join-title

Conversation

@derek73

@derek73 derek73 commented Oct 11, 2026

Copy link
Copy Markdown
Owner

Summary

P5's bound given-name join takes the word after abdul. It already declined a maiden marker and a suffix piece, but it took a title word even where a trailing rule would have read that word as a title. The joined piece was then no title word to read:

Input Before Now
Berg, abdul Prof. (#637) given 'abdul Prof.' title 'Prof.', given 'abdul'
John Smith, Jr., abdul Dr. Smith (#640) suffix 'Jr., abdul Dr. Smith' title 'Dr.', suffix 'Jr., abdul Smith'
Berg, abdul Prof. Ali given 'abdul Prof.' unchanged: the title stands inside the name
abdul Sir Smith Berg given 'abdul Sir' unchanged

The join now declines a title word that a trailing rule reads as a title:

Decided (Derek): this narrower clause (a′), not declining every title word (a). P5 states that a title word standing in the name is a name word and joins like one (H3), and (a) undid that:

  • six tests failed, including a P5 rules example and the two tests named for that clause;
  • about 4,000 bound-given grid parses moved, 1,944 of them real joins split apart ((Bob), Abu Bishop → given 'Abu', middle 'Bishop').

Measured (against 4455962, py3.11, import asserted on each side; recipes in decisions.md#P5)

Tests

  • title_word_trailing_behind_a_bound_pair_after_a_comma (Berg, abdul Prof.) used to pin the gap as a non-normative row. It now pins the title, as fix(#637).
  • New row a_bound_join_declines_a_title_past_the_second_comma, fix(#640).
  • rules.md#P5 examples: three new ones, including the Berg, abdul Prof. Ali boundary. rules.md#H5's gap paragraph becomes an example.
  • Negative controls:

Docs

Closes #637
Closes #640

🤖 Generated with Claude Code

…640)

P5's bound given-name join took the word after `abdul` even where a
trailing rule would read it as a title, so the joined piece was no
title word: `Berg, abdul Prof.` read given 'abdul Prof.' where `Berg,
John Prof.` reads title 'Prof.' (#637), and `John Smith, Jr., abdul Dr.
Smith` read suffix 'Jr., abdul Dr. Smith' (#640). The join now declines
such a word: after a family comma one H5's trailing run takes from the
given part, and in a part past the second comma any title word, which
C2 reads. A title word standing in the name still joins (`abdul Sir
Smith Berg`), as P5 states. Decided (Derek): this narrower clause over
declining every title word, which split real joins.

Measured against 4455962: 1,044 of 15,552 bound-given grid parses move,
each a title word into the title field; 280 of #623's given-part grid,
the same class; among corpus names and case texts only the row that
pinned the gap. Five gates exit 0.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@derek73 derek73 self-assigned this Oct 11, 2026
@codecov

codecov Bot commented Oct 11, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 99.02%. Comparing base (4455962) to head (dc0d62b).
⚠️ Report is 1 commits behind head on master.

Additional details and impacted files
@@           Coverage Diff           @@
##           master     #643   +/-   ##
=======================================
  Coverage   99.02%   99.02%           
=======================================
  Files          46       46           
  Lines        4512     4513    +1     
=======================================
+ Hits         4468     4469    +1     
  Misses         44       44           

☔ View full report in Codecov by Harness.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

1 participant