Skip to content

fix: decompose is not compose — var-kor green (sweep tail 132→38) - #784

Merged
ronaldtse merged 1 commit into
mainfrom
feat/parg-complete
Sep 30, 2026
Merged

ronaldtse merged 1 commit into
mainfrom
feat/parg-complete

Conversation

@ronaldtse

Copy link
Copy Markdown
Contributor

The grammar captures both compose and decompose directives under the :compose key; the DocumentBuilder dropped the captured value and compiled every decompose as NFC compose. var-kor's author-intended NFD output composed o+U+0306 into precomposed ŏ (U+014F) — all 94 of its sweep tests failed on invisible byte diffs ("kugyŏng" vs "kugyŏng" in any renderer).

Reads the captured value; a spec pins decompose and compose producing distinct Funcalls.

  • var-kor-Hang-Latn-mr-1939: 282 examples, 0 failures (was 94)
  • Sweep tail: 132 → 38 (kp-kor 16, var-zho 16, odni-uzb 6 — three distinct per-map patterns: hyphen capitalization, mm-collapse, hyphen insertion)
  • Full suite: 1150 examples, 0 failures

Companion corpus repair (maps repo): var-kor's own file mixed precomposed ŏ on 3 lines with the combining form everywhere else — unified to the file-dominant combining form its tests expect.

The grammar captures both directives under :compose; the builder
dropped the value and compiled every decompose as NFC compose —
var-kor's author-intended NFD output composed o+U+0306 into ŏ
(U+014F) and all 94 of its sweep tests failed on invisible byte
diffs. Read the captured value.

var-kor: 282 examples, 0 failures (was 94).
@ronaldtse
ronaldtse merged commit e8a7a85 into main Sep 30, 2026
4 of 10 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant