Skip to content

build: resolve ISC-WF-1 ruleset uses in the JSON-IR artifact build - #260

Merged
ronaldtse merged 1 commit into
mainfrom
feat/isc-wf1-maps-build
Nov 8, 2026
Merged

ronaldtse merged 1 commit into
mainfrom
feat/isc-wf1-maps-build

Conversation

@ronaldtse

Copy link
Copy Markdown
Contributor

Summary

Updates scripts/build-json-ir-artifact.mjs so the JSON-IR artifact build resolves ISC-WF-1 ruleset uses at compile time:

  • Parses every corpus file up front so cross-map use <alias>.<ruleset> references (spec docs/isc-wf-1.md §3.3) resolve through dependency documents before conversion.
  • W1/W2 constructs are resolved by the converter at build time, so the emitted IR stays flat — runtimes without the workflow extension keep consuming the artifact unchanged, and W3's languages/when IR extensions ride through as additive optional fields.

Verification

  • Full corpus build passes: 408 maps compiled (maps/ + libs/) with the updated script.
  • Output verified consumable: all 11,048 golden-capture rows re-transliterated through the artifact (fresh build) match the rs golden capture except the 5 known alalc-ell-Grek-Latn-2010 executor rows tracked separately (pre-existing, unrelated to this build change).

… artifact

The artifact builder now pre-parses maps/ + libs/ and hands the
interscript-ts converter a dependency resolver, so `use
<alias>.<ruleset>` (ISC-WF-1 docs/isc-wf-1.md §3.3) expands at build
time. The emitted IR stays flat — rulesets never appear as nodes; the
format gains only optional document-level `languages` and rule-level
`when` arrays. Corpus output is byte-identical (no corpus map adopts
the constructs yet; verified maps/ diff before/after).
@ronaldtse
ronaldtse merged commit 89265b8 into main Nov 8, 2026
8 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