Skip to content

Give sultan a given reading in ar.toml (strict-gap batch F) - #1034

Merged
derek73 merged 7 commits into
masterfrom
feat/ar-sultan-given
Nov 3, 2026
Merged

derek73 merged 7 commits into
masterfrom
feat/ar-sultan-given

Conversation

@derek73

@derek73 derek73 commented Nov 3, 2026 •

Copy link
Copy Markdown
Owner

What

Strict-gap batch F, decided on 2026-11-03: ar.toml gives sultan a given reading, the Arabic given name. Its given and family readings stood in tr.toml alone. So strict ar kept ar.toml's nobility reading without its gate (rules/H9's title-only-in-a-phrase), and read Sultan as a title. The reading carries tr.toml's Wikidata count of Saudi Arabian bearers.

Measured

  • Strict losses (tools/differential/config_diff.py gaps on master f48c88a). Strict ar broke 226 records of Arab countries on sultan (Sultan Sameea, Bahrain); all are recovered (simulated with all five batches).
  • Default and plain choices. The compiled default is unchanged. Over a grid of 15 names under the three orders (each comma shape; cased, upper and lower spellings; bin; a title; a title phrase), the default and plain ar move no cell.
  • Strict ar. It moves 36 cells and strict ar + en 33, onto the default's reading, with one exception. Sultan of Oman under strict ar alone needs en.toml's of for the phrase; with en chosen it reads title 'Sultan of Oman', as the default does.
  • Reviewed table. _reading_index.strict_ungated's reviewed table drops sultan from ar. It keeps it under ms, whose file holds the nobility reading and no name reading.
  • Committed corpora. The snapshot matches.

decisions/vocabulary-model gains the batch's entry.

Review round

An independent review found no defect. It reproduced the 226 on this change alone (strict ar 623 broken to 397) and found only strict ar moving over the 2,842 local names holding sultan. Fixed after it:

  • The given reading carries its own counts, taken 2026-11-03: ORCID's Saudi given boxes 265, the UAE's 32, PatentsView's Saudi 46, nam_dict band 3 in Arabia/Persia. Before, it copied tr.toml's Saudi Wikidata share under tr's date into a field that holds a total.
  • A family reading joins it (ORCID family boxes: Pakistan 141, Iraq 84, Egypt 59, Saudi Arabia 46). It moves no role in the grid, and it names ar in Reading.languages.
  • The entry says no role moves, and that Reading.languages of a given or family Sultan gains ar. It names strict ms's remaining gap (721 names) and gains a recompute recipe.
  • STRICT_UNGATED's comment and the 3j entry date their counts.

This batch's entry points to batch A's entry (#1030): merge #1030 first.

Checks

  • uv run pytest -q: 35,787 passed. uv run mypy, uv run ruff check.
  • sphinx-build -b doctest and -W -b html; snapshot.py.
  • Not run: -n0 -m serial and Python 3.15.

Merge note: each of the five batch PRs (#1030 to #1033 and this one) regenerates nameparser/config/_index.py. Whichever merges later rebuilds it (uv run python tools/vocab/build.py).

🤖 Generated with Claude Code

sultan's given and family readings stood in tr.toml alone, so strict ar
kept its nobility reading ungated and read the Arabic given name as a
title, breaking 226 records. No default or plain-choice parse moves.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@derek73 derek73 added this to the 3.0 milestone Nov 3, 2026
@derek73 derek73 added the vocabulary Per-word vocabulary model and language packs label Nov 3, 2026
@derek73 derek73 self-assigned this Nov 3, 2026
derek73 and others added 6 commits November 3, 2026 12:03
…reading, Reading.languages stated, recompute, counts dated

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
# Conflicts:
#	docs/design/decisions/vocabulary-model.md
# Conflicts:
#	docs/design/decisions/vocabulary-model.md
# Conflicts:
#	docs/design/decisions/vocabulary-model.md
#	tests/v2/test_reading_index.py
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
# Conflicts:
#	docs/design/decisions/vocabulary-model.md
@derek73
derek73 merged commit 3eb364d into master Nov 3, 2026
11 checks passed
@derek73
derek73 deleted the feat/ar-sultan-given branch November 3, 2026 21:37
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

vocabulary Per-word vocabulary model and language packs

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant