@@ -918,7 +918,7 @@ Implementation (parser.mly, conflict-neutral):
918918- Resolution of the qualified name against a real module is a separate
919919 concern (the parse gap is what #228 names); the grammar PR unblocks
920920 parsing — most of the 525 estate parse failures clear with zero
921- consumer churn. Genuine ReScript -surface residue (#229) is tracked
921+ consumer churn. Genuine AffineScript -surface residue (#229) is tracked
922922 separately.
923923"""
924924consequences = """
@@ -979,7 +979,7 @@ Staged plan (ledger INT-03; each row = one gated PR):
979979- S1 (this PR): ADR-015 + WIT world + staged plan + tooling-prerequisite
980980 + roadmap truthing. No codegen change.
981981- S2: toolchain provisioning — `wasm-tools` + `wasm-component-ld` (and
982- `wac`) into guix.scm/flake.nix . ABSENT in the current toolchain ⇒ a
982+ `wac`) into guix.scm/flake.guix . ABSENT in the current toolchain ⇒ a
983983 HARD GATE on S3+: a component cannot be built or tested without them.
984984- S3: componentize on-ramp — codegen still emits core wasm; a
985985 post-codegen step wraps it with the standard preview1->preview2
@@ -1146,9 +1146,9 @@ references = [
11461146id = "ADR-017"
11471147status = "accepted"
11481148date = "2026-05-19"
1149- title = "ReScript block-module disposition: one module per file (split, do not nest)"
1149+ title = "AffineScript block-module disposition: one module per file (split, do not nest)"
11501150context = """
1151- ReScript `module Name { … }` block modules have no AffineScript block
1151+ AffineScript `module Name { … }` block modules have no AffineScript block
11521152form: the grammar (parser.mly:130-134) is a single optional `module
11531153Path;` header, before imports — `module A { }` parse-errors. ADR-011
11541154settled "real modules": the file IS the module. The estate #229 ports
@@ -1162,7 +1162,7 @@ occurrences) had no clean target. Escalated language-side as ESC-04
11621162no-raw-escape doctrine, #245 — this is ADR-017, sequential.)
11631163"""
11641164decision = """
1165- One module per file — split, do not nest. Each ReScript `module X {
1165+ One module per file — split, do not nest. Each AffineScript `module X {
11661166body }` becomes its own `X.affine` whose first declaration is `module
11671167X;`, body dedented, `use` after the header. A file with N block-modules
11681168is split into N files. The grammar is NOT extended with a block/nested
@@ -1173,22 +1173,22 @@ ADR settles the porting doctrine + the #229 canonical-map structural
11731173rule. Adjacent and explicitly OUT of scope: a split file still hits
11741174Resolve.UndefinedModule until the repo module-path<->file-layout matches
11751175the loader — cross-module graph coherence (INT-02 loader-bridge),
1176- tracked in RESCRIPT -ELIMINATION.adoc Tier-4, never conflated here.
1176+ tracked in AFFINESCRIPT -ELIMINATION.adoc Tier-4, never conflated here.
11771177"""
11781178consequences = """
11791179- The #229 block-module residue (idaptik-dlc-vm, standards/lol, parts of
11801180 burble) has a defined target: split-per-file. Full validation still
11811181 needs the per-repo module graph (INT-02), tracked separately.
11821182- No language/compiler change; no estate consumer churn from this ADR.
11831183- This decision is settled; do not reopen without amending this ADR.
1184- ESC-04 #262; #229 canonical map in docs/RESCRIPT -ELIMINATION.adoc.
1184+ ESC-04 #262; #229 canonical map in docs/AFFINESCRIPT -ELIMINATION.adoc.
11851185"""
11861186references = [
11871187 "https://github.com/hyperpolymath/affinescript/issues/262",
11881188 "https://github.com/hyperpolymath/affinescript/issues/229",
11891189 "lib/parser.mly (module_decl; one `module Path;` header per file)",
11901190 "docs/specs/SETTLED-DECISIONS.adoc (ADR-017 section)",
1191- "docs/RESCRIPT -ELIMINATION.adoc (#229 canonical map; Tier-4 INT-02)",
1191+ "docs/AFFINESCRIPT -ELIMINATION.adoc (#229 canonical map; Tier-4 INT-02)",
11921192 "META.a2ml [[adr]] ADR-011 (real modules: file = module)",
11931193 "META.a2ml [[adr]] ADR-012 (grammar changes are correctness assertions)",
11941194]
@@ -1199,7 +1199,7 @@ status = "accepted"
11991199date = "2026-05-19"
12001200title = "No raw/FFI escape: typed `extern` is the only host bridge"
12011201context = """
1202- ReScript `%%raw("<host source>")` / `%raw` injects arbitrary untyped
1202+ AffineScript `%%raw("<host source>")` / `%raw` injects arbitrary untyped
12031203host source. AffineScript's only host bridge is `extern fn` / `extern
12041204type` (parser.mly extern_fn_decl/extern_type_decl, FnExtern body) —
12051205typed, host-supplied, no body, no arbitrary-source escape. 14 estate
@@ -1235,7 +1235,7 @@ references = [
12351235 "https://github.com/hyperpolymath/affinescript/issues/229",
12361236 "lib/parser.mly (extern_fn_decl; extern_type_decl; FnExtern)",
12371237 "docs/specs/SETTLED-DECISIONS.adoc (ADR-018 section)",
1238- "docs/RESCRIPT -ELIMINATION.adoc (#229 canonical map; Tier-3 ESC-01)",
1238+ "docs/AFFINESCRIPT -ELIMINATION.adoc (#229 canonical map; Tier-3 ESC-01)",
12391239 "META.a2ml [[adr]] ADR-012 (grammar changes are correctness assertions)",
12401240]
12411241
@@ -1252,7 +1252,7 @@ so "publish the compiler" needed a distribution strategy. This gates
12521252INT-10 (`affinescript-lsp` distribution, which "waits on a published
12531253compiler"). The fork was escalated (issue #260; AskUserQuestion
125412542026-05-19) over four options: (1) GitHub Releases binaries, (2)
1255- Guix/Nix channel, (3) thin JSR/npm shim, (4) Releases + shim. The
1255+ Guix/Guix channel, (3) thin JSR/npm shim, (4) Releases + shim. The
12561256owner chose (4).
12571257"""
12581258decision = """
@@ -1262,7 +1262,7 @@ Dual-channel, Releases-canonical:
12621262 to build per-platform compiler binaries (Linux x86_64 first;
12631263 macOS/Windows as the build matrix allows) and attach them to the
12641264 GitHub Release together with a `SHA256SUMS` manifest. Releases are
1265- the single source of truth; Guix/Nix and any npm tail become
1265+ the single source of truth; Guix/Guix and any npm tail become
12661266 *additive fetch-derivations over the same artifact* later (NOT in
12671267 this ADR's slices) — no second producer of the binary.
12681268- *Ergonomic front door.* A thin Deno/JSR package
@@ -1290,7 +1290,7 @@ Staged (ledger #260 / INT-10; each a gated PR):
12901290consequences = """
12911291- One-way: fixes the install contract (Releases artifact name/layout +
12921292 shim package name). Reversible per-slice; Releases-canonical keeps
1293- Guix/Nix /npm strictly additive.
1293+ Guix/Guix /npm strictly additive.
12941294- INT-10 (`affinescript-lsp` distribution) is unblocked once S2+S3
12951295 land; filed now.
12961296- Supply chain: every shim release pins one checksummed binary; no
0 commit comments