镜像站点 · 本页由第三方 GitHub 只读镜像提供,非 GitHub 官方站点,不接受任何登录或凭据输入。前往 github.com
Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
17 changes: 16 additions & 1 deletion docs/design/decisions/ma-do.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,22 @@
# ma-do — ambiguous acronyms by decision

- 2026-07-17 (M12, Derek-approved) — ma and do joined the ambiguous acronym set because both are common surnames; the two-word "Jack Ma" is kept intact by S2's words-to-spare guard, while the periods gate governs the dotted spellings ("M.A." counts unambiguously). Documented side effect: parenthesized bare
## Standing

- `ma` and `do` are members of the ambiguous acronym set (`suffix_acronyms_ambiguous`: credential readings with `may_be_name`, `uv run python tools/vocab/query.py --word ma`), kept there because both are common surnames; the set has grown past these two since (decisions/suffix-acronym-collisions), and the marking is still what lets `Jack Ma` read family 'Ma' with `suffix-or-name` reported, while `John Smith MA` reads suffix — 2026-07-17.
- In a name written in more than one case, a member in capitals leans credential and is taken with nothing to spare (`Jack MA`, `Jack DO` → given 'Jack', suffix 'MA'/'DO'), where `Jack Ma` keeps family 'Ma'; a deliberate break from v1, which read `Jack MA` as family 'MA' — 2026-09-15 #289.
- A member written with its periods, one after each letter, counts unambiguously (`Jack M.A.`, `Jack D.O.` → suffix, `given-or-family` reported when only the given name remains), and one trailing period is no such spelling (`Jack Ma.` → family 'Ma.') — 2026-07-17.
- A parenthesized bare `(MA)` or `(DO)` reads as a nickname, no longer escaping to suffix as in 1.x, and reports `suffix-or-nickname` — 2026-07-17.
- After a family comma `do` is spelling-dependent, being the one member of the set that is also particle vocabulary: `Doe, John DO` reads suffix `DO`, while `Doe, John Do`, `Doe, John do` and `DOE, JOHN DO` attach it to the family by P6 (`Doe, John Do` → family 'Do Doe', `particle-or-given` reported); `ma` is no particle, so `Smith, John Ma` keeps middle 'Ma' and `Smith, John MA` reads suffix — 2026-09-18 #531. Comma-less under `FAMILY_FIRST`, only the Title-case spelling attaches (`Doe John Do` → given 'John', family 'Do Doe', with `particle-or-given` besides `suffix-or-name`), while `Doe John do` and `DOE JOHN DO` read suffix, so the comma and the comma-less writing disagree for `do` (rules/P6, decisions/two-input-invariants).

Elsewhere: the rest of the case reading — Title-case `Ma` and `Do` leaning surname, an all-lower member or a one-case name taking the positional count (`ANH DO` → family 'DO', `JOHN SMITH MA` → suffix) — is decisions/S6's 2026-09-14 #289 + #516 entry and decisions/S4's 2026-09-15 (spec review) entry, and two shapes stand outside the case reading altogether: a particle run in front takes `do` whatever its case (`Anh van DO` → family 'van DO', reporting nothing; rules/P2, decisions/S5's 2026-09-18 (Derek), #531 — CAPITALS DECIDE FOR `do` entry), and an unambiguous credential in front of a member speaks for it (`John Smith PhD Ma` → suffix 'PhD Ma'; decisions/S7's 2026-09-27 (Derek), #544 — A CREDENTIAL RUN KEEPS ITS AMBIGUOUS MEMBERS entry); the count that goes first at the first slot after a comma, a suffix comma included (`Smith, MA` → suffix, `Smith, Ma` → given, `John Smith, Ma` → suffix), is decisions/S6's 2026-09-14 (Derek) and 2026-10-20 (Derek), #761 entries; the pairing that gives `do` its capitals-only credential reading after a family comma, and its accepted cost, is decisions/S5's 2026-09-18 (Derek), #531 — CAPITALS DECIDE FOR `do` entry; the escape that reads a bracketed member as a nickname is decisions/suffix-acronym-collisions' S1 line; the periods gate is rules/S3's since 2026-10-19; whether a word earns the ambiguous marking is decisions/vocabulary-collisions' C-i and decisions/suffix-acronym-collisions', with `do`'s departure from TITLES recorded in the former and further credentials marked ambiguous in the latter (2026-10-21 #796).

Open: #792 (S1 and S8: whether a bracketed generation ends the credential run, `W. Russell (Jr.) Withers`), the neighbour of the parenthesized line above, which it does not move: `John Smith (MA) Withers` reads nickname 'MA', family 'Withers'.

## Log

- 2026-07-17 (M12, Derek-approved) (its `Jack Ma` sentence superseded in part by #289 below, for the all-caps spelling) — ma and do joined the ambiguous acronym set because both are common surnames; the two-word "Jack Ma" is kept intact by S2's words-to-spare guard, while the periods gate governs the dotted spellings ("M.A." counts unambiguously). Documented side effect: parenthesized bare
"(MA)"/"(DO)" no longer escape to suffix as in 1.x.
- 2026-09-15 #289 — AMENDS the sentence above for one spelling and leaves it standing for the other. "The two-word 'Jack Ma' is kept intact by S2's words-to-spare guard" is still true of `Jack Ma`, and false of `Jack MA`: an all-caps member of the ambiguous set inside a mixed-case name is now read as a credential with nothing to spare, so `Jack MA` gives given 'Jack', suffix 'MA' — v1's reading was last 'MA', so this is a deliberate parity break and not a restoration. The periods gate is untouched and still governs the dotted spellings. The two ledger comments that quote this sentence carry the same amendment. See decisions/S6.
- 2026-09-18 #531 — AND `do` IS NOW SPELLING-DEPENDENT AFTER A FAMILY COMMA, which neither sentence above anticipated: it is the one member of this set that is also particle vocabulary, so `Doe, John DO` reads suffix `DO` (capitals, mixed-case name) while every other spelling attaches to the family under rules/P6. The pairing and its accepted cost are in decisions/S5's 2026-09-18 `do` bullet.


1 change: 0 additions & 1 deletion tests/v2/decisions_without_standing.json
Original file line number Diff line number Diff line change
Expand Up @@ -59,7 +59,6 @@
"comparison-surface",
"deviates-registry",
"differential-ledger",
"ma-do",
"nfd-shapes",
"normalization-fold",
"parse-cost",
Expand Down
Loading