Repository navigation
docs(decisions): Standing blocks for fourteen small decisions files (#762) - #831
Merged
Merged
Conversation
…762) A1, A2, D1, D2, N1, N2, N3, T1, T3, T4, phd-merge, suffix-field-composition, two-input-invariants and v1-xfail-triage each open with a ## Standing block and a ## Log heading, and leave tests/v2/decisions_without_standing.json. Edit-kind-1 notes on three heads whose entries a later decision reversed in part: A1's #626 (its comma-credential wording, by #793), N2's #273 (its per-pair scan, by the same day's 05fe693 entry) and phd-merge's #371 (its revise() rendering, by #511). v1-xfail-triage gains a dated line for its undated #485 bullet, dated by the triage commit d02dc41 (2026-09-01) that wrote it. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01RaPAyHYi8MDM6GXXjtVPe9
- phd-merge: the spellings read alike only for a trailing pair; mid-name the merged piece starts no credential run (decisions/S7 #544, decisions/S8). Narrowed the Standing line, added an Elsewhere line, and marked the #288 head under edit kind 1. The Accepted line now scopes the lost surname to a given-name title (`Dr. Ph. D. Van Johnson` keeps family 'Van Johnson'). - rules/S2: the same scope in its Accepted bullet, which the tree contradicted for any title but a given-name one. Budget re-recorded (S2 accepted_words 203 -> 207: four words scoping an existing clause, no new signal). - N3: M4's reading moves to Elsewhere, and #761 to Not standing. - T4: drop the Not standing line for #731, which is already marked SUPERSEDED under edit kind 1. - T3: "suppresses the surname split", not "division". - D2: 남궁민수 reports segmentation by default, not under locales.ZH. - v1-xfail-triage: H4's title-or-name report moves to Elsewhere (2026-09-07 #491). Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01RaPAyHYi8MDM6GXXjtVPe9
- phd-merge's #288 entry: a kind-2 correction. "Read alike" never held mid-name (`John Ph. D. Smith` suffix, `John PhD Smith` middle, the same at 1.4.0 and 2.0.0). The kind-1 note keeps only #544, which parted the `Ph. D. MEng` pair. - phd-merge's Accepted line keeps #371's own Sir case. The `Dr.` contrast moves to Elsewhere (decisions/P2 #760), and the S8 pointer names its #602 entry. - rules/S2 and phd-merge: the lost surname belongs to a title run ending in a given-name title (`Sir Dr. Ph. D. Van Johnson` keeps the family). S2 accepted_words re-recorded, 207 -> 212. - T3: the declared order, not the written one; FAMILY_FIRST reverses the interpunct name. - v1-xfail-triage: `Dr King Jr` reports since H3's #316 floor. - N3: a blank line before Not standing. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01RaPAyHYi8MDM6GXXjtVPe9
- phd-merge's #288 correction: the spellings never read alike at the head either (1.4.0 title 'Ph.', 2.0.0 suffix 'Ph. D.', against given 'Ph.D.'). #371 changed the head reading; it did not end an agreement. - phd-merge's Elsewhere: the addressing clause points at decisions/H1's 2026-09-08 #489 entry, not P2's #760. - rules/S2: "a title run that addresses by the given name (H1)" rather than restating H1's predicate without its whole-key arm. S2 accepted_words re-recorded, 212 -> 214. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01RaPAyHYi8MDM6GXXjtVPe9
…er than calling it a scoping (#762) Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01RaPAyHYi8MDM6GXXjtVPe9
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## master #831 +/- ##
=======================================
Coverage 99.05% 99.05%
=======================================
Files 47 47
Lines 4659 4659
=======================================
Hits 4615 4615
Misses 44 44 ☔ View full report in Codecov by Harness. 🚀 New features to boost your workflow:
|
# Conflicts: # tests/v2/decisions_without_standing.json
derek73
added a commit
that referenced
this pull request
Oct 22, 2026
…rs (#833) * Mark P8's and R1's moved readings; give M2's #549 its head note's place - decisions/P8: the #383 + #479 entry's JUAN Y GARCIA 'J. G.' reading is marked superseded by #461 (decisions/R3); both views give 'J. Y. G.'. - decisions/R1: the #760 entry's nee example moved with #601 (1037c87), measured either side; for 'Smith, ...' the comma was a family comma before as after. - decisions/M2: Not standing no longer lists the #538 resolution a later decision reversed; its head note carries that (README edit kind 1). Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> * Close #762: retire the Standing exempt list; fix the round-3 leftovers Every decisions file now opens with ## Standing except the five reference lists, so the exempt list and its frozen original set go: tests/v2/decisions_without_standing.json is deleted and REFERENCE_LISTS, its size asserted, fixes the one kind of file that carries no block. standing_roster_findings and its tests follow, and decisions/README.md and docs/design/AGENTS.md say so. Round-3 review leftovers (#830, #831, #832): - rules/R3: a base letter and its mark initial whole only where they compose; a mark NFC leaves separate (a nukta after ja, U+095B being a composition exclusion) is left out, as decisions/R3's #585 decided. - decisions/parse-cost: a 2026-10-04 #601 entry records the link pin's re-pointing (2,301 -> 2,678); test_benchmark's _CALL_BASELINE comment names #624 and #625. - decisions/cjk-full-stops: the bullet approved 2026-09-09 gets its own dated line, and its two Standing lines point there. - decisions/README.md: #832's bundle-dating sentence is split into four. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> * Scope the same-day dating rule to undated bullets; mark #601's pin superseded; give R1's correction both policies Review of da3e855: the split README sentence let a same-day bullet whose text gives a date keep the bundle's date, contradicting the cjk-full-stops line; parse-cost's #601 entry presented 2,678 as current though #617 moved it; R1's correction gave the default policy's before-reading only. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> --------- Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Part of #762, final round, the small-sections batch. Two other batches are running in parallel: one covers R1, R2, R3, R5, render-default and comparison-surface; the other covers differential-ledger, parse-cost, comma-suffix-arc, deviates-registry, review-agent-single-source and 3-0-reevaluations. This PR touches none of their files.
What changes
These fourteen files in
docs/design/decisions/each gain a## Standingblock and a## Logheading, and leavetests/v2/decisions_without_standing.json:I parsed every example a Standing line cites on the tree. For each line I also grepped the whole
decisions/andrules/folders for later entries that changed it.Edit-kind-1 notes on entry heads, where a later decision reversed part of the entry:
Kim Min Dounder FAMILY_FIRST is told 'Do' was "read as a middle name" when it lands in the family #626: its literal wording for the comma's credential reading, superseded in part by Reports say "read as a credential" for a period-marked title after a comma #793.Ph. D. Van Johnsonhas no surname: a leading suffix displaces the particle like a title used to #371: itsrevise()rendering, superseded by ShouldParser.revise(name, suffix=name.suffix)be the identity? (John Smith MD PhDgivesMD PhD, and revising with that string givesMD, PhDback) #511 (decisions/R1).John Smith, PhD MEngreads firstPhD, lastJohn Smith#544 (decisions/S7). The merged pair is outside the no-comma company walk, soJohn Smith Ph. D. MEngkeeps family 'MEng' whileJohn Smith PhD MEngreads suffix.Edit-kind-2 correction: phd-merge's #288 entry said the spaced and unspaced
Ph. D."read alike". That never held mid-name or at the head, on the 1.4.0 and 2.0.0 wheels as on the tree:John Ph. D. Smithgives suffix 'Ph. D.', whileJohn PhD Smithgives middle 'PhD';Ph. D. Van Johnsongave title 'Ph.' at 1.4.0 and suffix 'Ph. D.' at 2.0.0, wherePh.D. Van Johnsongave given 'Ph.D.'.The entry now says "at the end of a name", with a dated note. Its "Scoped by #371" parenthetical became a pointer to #371's head change.
A dated Log line added for an undated bullet: v1-xfail-triage's #485 bullet had no entry of its own. It gains
2026-09-01 #485, dated by the triage commit that wrote it (d02dc41, 2026-09-01), not by the file split that last moved it.rules/ edit, a claim the tree contradicted: rules/S2's Accepted bullet said a title before the credential costs the name its surname. That holds only behind a title run that addresses by the given name:
Sir Ph. D. Van Johnsonhas an empty family, whileDr. Ph. D. Van JohnsonandSir Dr. Ph. D. Van Johnsonkeep family 'Van Johnson'. The bullet now says "behind a title run that addresses by the given name (H1)". The S2 entry intests/v2/rules_budget.jsonwas re-recorded:accepted_wordswent from 203 to 214. The new words scope that one existing clause and read no new signal.Review findings (design-docs-reviewer, five rounds)
Round 1, seven findings, all fixed:
John Smith, PhD MEngreads firstPhD, lastJohn Smith#544 and decisions/S8 Should a name word after a credential join the suffix?John Smith PhD Jonesreads middleSmith PhD#602 part them).john smith nee x xread likeJOHN SMITH NEE X X? A shape-only numeral in a maiden clause #731, already marked SUPERSEDED, under Not standing.locales.ZH, though it fires by default.title-or-namereport to the triage.Round 2, seven findings, all fixed:
John Smith, PhD MEngreads firstPhD, lastJohn Smith#544 and Should a name word after a credential join the suffix?John Smith PhD Jonesreads middleSmith PhD#602 for a difference that predates both, so it became a kind-2 correction.Dr King Jrreport dates from H3's Should a title written after the name still be a title? ("John Smith Prof." → family Prof.) #316 floor.Dr.contrast was notPh. D. Van Johnsonhas no surname: a leading suffix displaces the particle like a title used to #371's decision.Round 3, three findings, all fixed:
Round 4: one label ("Scoped by #371") contradicted the correction beside it. Fixed.
Round 5: no findings.
Left as found
Declined:blocks under## Log. The Standing block notes that those lines stand as written.suffix_wordsholds 170 words today, and the generational words now outnumber the honorifics. The Standing line drops the count, and the question stays open under Shouldsuffixsplit intogenerationandcredentials? (Smith, Jr., PhD) #326.M2-maiden-marker-rule.md's Standing block usesNot standing:for an entry reversed by a later decision (2026-10-03 #549). The reviewer flagged this as the same pattern removed from T4 here. I left it alone: it is outside this batch, and the convention may want a ruling.Tests
uv run pytest -q tests/v2/test_design_docs.py tests/v2/test_doc_citations.py tests/v2/test_rules_doc.py tests/v2/test_rules_skeleton.py tests/v2/test_rules_budget.py tests/v2/test_doc_spellings.py: 1421 passed.docs/design/andtests/v2/rules_budget.json, and the doc tests above pass on the head.Generated by Claude Code