Skip to content

fix: render bridge-emitted ISC shapes the corpus actually produces - #21

Merged
ronaldtse merged 1 commit into
mainfrom
fix/bridge-emitted-isc
Oct 1, 2026
Merged

ronaldtse merged 1 commit into
mainfrom
fix/bridge-emitted-isc

Conversation

@ronaldtse

Copy link
Copy Markdown
Contributor

Through the Ruby bridge the engine sees generated ISC, whose shapes differ from the hand-written corpus in two ways:

  • any(<single alias resolving to a plain string>) is a character class — the generator inlines the unicode library's greek inside any() — while a bare alias reference stays a literal sequence (the qualified-404 pins). alalc-ell's γ-nasalization guards had compiled to the literal 300-character Greek alphabet through the bridge, failing its 5 γκ examples.
  • A capture group in a result position renders as the parenthesised inner text, like Ruby's build_item — bgnpcgn-zho writes to capture("me, yao") for 么; the renderer rejected it and the whole map failed to load through the bridge.

Bridge sweep (Compiler::Python over the full corpus, Ruby → generated ISC → this engine): 8,238 examples, 0 failures — from 425 at the campaign's start. Direct sweep stays 8,227/0. Suite 52 passed / 1 xpassed.

Through the Ruby bridge the engine sees generated ISC, whose shapes
differ from the hand-written corpus in two ways:

- any(<single alias resolving to a plain string>) is a character
  class — the generator inlines the unicode library's greek inside
  any() — while a bare alias reference stays a literal sequence (the
  qualified 404 pins). alalc-ell's gamma nasalization guards had
  compiled to the literal 300-character alphabet through the bridge.

- a capture group in a result position renders as the parenthesised
  inner text, like Ruby's build_item (bgnpcgn-zho writes
  to capture("me, yao") for 么). The renderer rejected it and the
  whole map failed to load through the bridge.

Bridge sweep (Compiler::Python over the full corpus): 8,238
examples, 0 failures.
@ronaldtse
ronaldtse merged commit 100c17c into main Oct 1, 2026
6 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