comments: the m* sweep — a Russian word in a Macedonian rule, and two truncated sentences - #708
Conversation
… truncated sentences (#708) Continues the alphabetical comment sweep. 42 files across macedonian, madurese, magahi, maithili, malagasy, malay, malayalam, maltese, mandarin, maori, marathi, mindong, minnan, mongolian, mossi. Comment-only: the emitted code is byte-identical with --removeComments. Real defects, not just tightening: · macedonian/normalize.ts documented its DATE rule as `N месяц` — месяц is RUSSIAN. Macedonian is месец, and the rule does not match the word for "month" at all: it matches a MONTH NAME from the MONTHS set. Two errors in four characters. · the same file numbered its steps 0-5, 7-16, with 6 MISSING and 11 used TWICE — once for a one-line note saying the range rule lives at step 5, once for REGNAL ORDINALS. Renumbered 0-15, sequential, and the one internal cross-reference re-pointed. · malay/normalize.ts ended a header sentence mid-clause: "What was NOT duplicated, and why, is in." · the same file spliced two half-sentences with an orphan close-paren: "reads the point as `perpuluhan`; round-tripped through this repo's g2p), and the fraction digit by digit". · minnan.ts had a sentence restarting lowercase after a full stop, inside the note about which capitals the inventory must list. Phase chronology for work that shipped: mandarin.ts described itself as "Phase 1 … Phase 2 adds … Phase 3", and minnan.ts as "Phase 1", though all of it is present. Both now describe what the file does. The rest is the standing standard: drop decode transcripts (malayalam carried raw phoneme-recognizer output), cross-language surveys, corpus counts that record rather than license a decision, and issue numbers; keep the invariants and the traps. The ★/🔷/⛔ glyphs and the ellipsis-truncated `trap N (…)` references are gone from m* as they are from a-l. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_012Lc3WnUgogC7okV7n53vjr
…example word
Both found by checking the comments against the RUNNING ENGINE rather than
re-reading them.
· macedonian/normalize.ts's ORDERING COUPLINGS claimed "the ordinal-suffix
rule BEFORE ... the range rule". It never was: ranges were step 5 and the
ordinal suffix step 8 on main, so the header asserted the opposite of the
code, and asserted it in the same list as the (true) claim that ranges run
before the clock. Pre-existing — the renumbering in the previous commit
did not move either rule. There is no real coupling to state: the range
regex requires digits on BOTH sides, so `1970-тите` cannot match it.
The century/date half of the claim IS true and is kept.
· malay/normalize.ts illustrated its digit-by-digit decimal with "the
tokenizer says *lima kosong*". The engine says *lima nol* — both are
Malay for zero, but the inherited number path emits nol.
The other five macedonian ordering claims were verified by running them:
de-grouping (400.000 → четиристотини илјади), era before year (356 г. п.н.е.
→ … година пред нашата ера), range before clock (22:00-23:00 → … до …),
ordinal suffix (17-ти век → седумнаесетти век), personal initials before the
initialism pass (Н. Вејн → ен вејн).
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_012Lc3WnUgogC7okV7n53vjr
|
Review pass, in A false ordering claim, pre-existing. There is also no real coupling to state: the range regex requires digits on both sides, so A wrong example word. The remaining five ordering claims verified by running them: And the two rewritten headers, likewise checked rather than asserted — Still token-identical after the fixes; 3118 tests pass. |
Continues the alphabetical comment sweep. 42 files (4,880 lines) across
macedonian,madurese,magahi,maithili,malagasy,malay,malayalam,maltese,mandarin,maori,marathi,mindong,minnan,mongolian,mossi.Comment-only. Verified by transpiling both revisions with
--removeCommentsand diffing the emitted JS: byte-identical. Typecheck clean, 3118 tests pass.Real defects
macedonian/normalize.tsdocumented its date rule as`N месяц`.месяцis Russian — Macedonian isмесец. And the rule does not match the word for "month" at all; it matches a month name from theMONTHSset. Two errors in four characters, in a comment that reads perfectly fluently until you check it against the code.The same file numbered its steps 0–5, 7–16 — 6 missing, 11 used twice. One
11)was a one-line placeholder noting that the range rule lives at step 5; the other wasREGNAL ORDINALS. Renumbered 0–15 sequentially, with the one internalstep Ncross-reference re-pointed.malay/normalize.tsended a header sentence mid-clause:…and spliced two half-sentences with an orphan close-paren:
minnan.tsrestarted a sentence lowercase after a full stop, inside the note about which capitals the inventory class must list.Phase chronology for work that shipped
mandarin.tsdescribed itself as "Phase 1: the pinyin input path … Phase 2 adds the Hanzi front-end … Phase 3 numbers + normalization", andminnan.tsas "Phase 1: segmental + CITATION tone" — but all of it is present and working. Both now describe what the file does rather than the order it was built in. (Same defect class as thearabic.tsheader that called a shipped diacritizer "Phase 2".)The standing standard
Dropped: raw decode transcripts (
malayalam/normalize.tscarried phoneme-recognizer output —`… n j uː l t i s iː p l a s o n n ə …`), cross-language surveys, self-assessment ("the funniest instance of it so far"), corpus counts that merely record rather than license a decision, and issue numbers.Kept, and in several places promoted to
⚠, the findings that are genuinely load-bearing — they read better as traps than as history:-എക്കാൾis ×0 by construction, not by absence;ഹരണം's corpus hits are all insideഅപഹരണം, "abduction";സമംis the wrong equality word though its Tamil/Kannada/Telugu cognates are the right one;बजकरhits are one Hindi passage quoted whole.The
★/🔷/⛔glyphs and the ellipsis-truncatedtrap N (…)references are now gone fromm*as froma–l.Cross-cutting note
A
±comment block — "zero new sourcing … bg/da/is/nb/ro/sv all juxtapose with no conjunction" — appears in 21 files repo-wide, one of them here. I left it, as I left it inl, since fixing one copy per letter would let the wording drift. Same for theNOT QUITE VERBATIMblock (maltese.tshere, 5 remaining). Both would be better done as a single uniform pass than dribbled across letters — say the word and I'll do them in one go rather than atn.