@@ -143,28 +143,29 @@ pins affinescript SHA for drift detection).
143143| L7 (aliasing) | ** YES** | ` verify_function ` per-path use-range |
144144| L10 (linearity) | ** YES** | ` verify_function ` per-path use-range |
145145| L13 (module isolation, negative form) | ** YES** | ` verify_from_module ` , gated on ownership-section presence (PR #37 , 2026-05-19) |
146- | L2–L6 (region binding, type-compat, null, bounds, result-type) | ** proposal-stage** | Carrier-section ABI draft at PR #76 (` docs/proposals/0001 ` ); codec pre-staged behind ` cargo feature = "unstable-l2" ` at PR #77 |
147- | L15 (resource capabilities, L15-A/B) | ** proposal-stage** | Same proposal 0001 (separate ` typedwasm.capabilities ` section) |
146+ | L13 (cross-module schema agreement, positive form) | ** proposal-stage** | ` typedwasm.region-imports ` carrier — proposal 0003 ` [draft] ` (` docs/proposals/0003 ` ); blocked on producer-side multi-module emission |
147+ | L2 (region binding) | ** YES** (carrier-backed) | ` verify_access_sites_from_module ` PR #109 ; reads ` typedwasm.regions ` + ` typedwasm.access-sites ` (proposals 0001 + 0002 ` [accepted] ` 2026-05-30; codec PR #107 ; gated ` cargo feature = "unstable-l2" ` ) |
148+ | L3–L6 (type-compat, null, bounds, result-type) | ** YES** (carrier-backed, schema half) | ` typedwasm.regions ` codec PR #107 ; cross-checks against ` Region.idr::WasmType ` , ` Pointer.idr::Nullability ` , cardinality. Per-access enforcement gated on producer codegen of access-sites (` affinescript#462 ` , ephapax pending). |
149+ | L15 (resource capabilities, L15-A/B) | ** YES** (carrier-backed) | ` verify_capabilities_from_module ` PR #109 ; reads ` typedwasm.capabilities ` (proposal 0001 ` [accepted] ` ; codec PR #107 ; gated ` cargo feature = "unstable-l15" ` ). L15-C deferred to proposal 0004 ` [draft] ` . |
148150| L14, L16 | ** out of scope** | Gated on AffineScript surface work (no ` session ` /` choreography ` producer emission yet) |
149151
150- ** Open gating items** (post proposal 0001 acceptance):
151-
152- 1 . ** Access-site carrier** — issue #78 . Proposal 0001's region/schema
153- carrier says * which regions exist* ; it does not say which
154- ` (region_id, field_id) ` any individual wasm ` i32.load offset=N `
155- targets. Owner-resolved 2026-05-27 as ** option A**
156- (per-instruction ` typedwasm.access-sites ` carrier mapping
157- ` (func_idx, instruction_byte_offset) → (region_id, field_id) ` ).
158- Wire-format design lands as ` docs/proposals/0002-access-site-carrier.adoc `
159- (future session). Encoding-B size measurement recorded on issue #78
160- (~ 5 B/access, ~ 1.1% module overhead vs ~ 3.5 B raw access).
161- 2 . ** Cross-repo wire-format review** — affinescript #402 , ephapax #165 .
162- Both producers must sign off on the ` typedwasm.regions ` and
163- ` typedwasm.capabilities ` formats before proposal 0001 moves from
164- ` [draft] ` → ` [review] ` → ` [accepted] ` .
165- 3 . ** ` verify_region_binding ` Rust pass** — explicitly omitted from
166- PR #77 ; gated on proposal 0002's acceptance (needs the access-site
167- carrier to bind individual loads/stores back to regions).
152+ ** Open gating items** (post proposals 0001 + 0002 acceptance, 2026-05-30):
153+
154+ 1 . ** Producer codegen** — verifier passes ship; producer-side emission
155+ lags. See proposal 0001 §"Appendix B — Producer-readiness checklist"
156+ for IR prerequisites of each carrier. Tracking:
157+ ` affinescript#444 ` (Tw_section dedup, ✅ merged), ` affinescript#462 `
158+ (access-sites codegen), ` ephapax#221 ` (Ty::Borrow surfacing) +
159+ ephapax access-sites issue (owner action pending).
160+ 2 . ** L13 cross-module (positive form)** — proposal 0003 ` [draft] `
161+ (` docs/proposals/0003 ` ). Gated on producer-side multi-module
162+ emission (AffineScript Roadmap C3 / Ephapax not yet on roadmap).
163+ 3 . ** L15-C (call-graph monotonicity)** — proposal 0004 ` [draft] `
164+ (` docs/proposals/0004 ` ). Gated on producer-side L15-A emission
165+ (Roadmap C2 not started in either producer).
166+ 4 . ** ADR promotion** — proposals 0001 + 0002 remain in
167+ ` docs/proposals/ ` post-acceptance; promotion to
168+ ` docs/decisions/ ` is a follow-up file-restructure.
168169
169170** Spec-of-record alignment (2026-05-27, PR #79 ).** The
170171` TypedWasm.ABI.VerifierSpec ` Idris2 module now states the
0 commit comments