Skip to content

meta: roadmap from [review] to [accepted] for proposals 0001 + 0002 #106

@hyperpolymath

Description

@hyperpolymath

Context

Proposals 0001 (multi-producer carrier sections) and 0002 (access-site carrier) are at status [review] as of PR #104. Both have producer-greenlight (ephapax + affinescript via #165 / #402 / #222 / #449). Promoting them to [accepted] and then to ADRs under docs/decisions/ requires the remaining acceptance criteria to be satisfied.

This issue is a meta tracker enumerating those gates so the work can be scoped + sequenced. It sits under #48 (Phase 0 stabilization) and #50 (Phase 2 multi-producer adoption).

Proposal 0001 remaining gates

Per docs/proposals/0001-multi-producer-carrier-section.adoc:310-325:

  • Criterion 1: Reviewed and signed off by maintainers of affinescript + ephapax (4× comments on #165 / #402)
  • Criterion 2: Wire format reviewed against Idris2 spec types (Region.idr, Pointer.idr, ResourceCapabilities.idr) — every wire field maps cleanly to a spec witness
  • Criterion 3: Draft codec lands in crates/typed-wasm-verify/src/section.rs behind cargo features (unstable-l2, unstable-l15); round-trip tests show parse(build(x)) = x for non-empty fixtures
  • Criterion 4: Draft spec section in spec/type-safety-levels-for-wasm.adoc documents the new sections alongside the existing typedwasm.ownership description
  • Criterion 5: Cross-repo issues filed against affinescript (#444) and ephapax (#221) for codegen of the new sections — both OPEN

Open questions to pin before acceptance:

Proposal 0002 remaining gates

Per docs/proposals/0002-access-site-carrier.adoc:§Acceptance criteria:

  • Gate 1: ADR-021 v2 emit-flip protocol drafted (out of scope; tracked separately)
  • Gate 2: Reviewed + signed off by maintainers (paired review via ephapax#222 + affinescript#449)
  • Gate 3: Codec lands in crates/typed-wasm-verify/src/section.rs behind unstable-l2
  • Gate 4: Verifier pass verify_access_sites plumbed
  • Gate 5: Spec section documents typedwasm.access-sites alongside the regions/capabilities/ownership trio
  • Gate 6: Cross-repo codegen issues filed against producers

Sequencing recommendation

Gates 3 + 4 are the load-bearing implementation work. Both proposals share the section.rs codec pattern; landing them together as a single PR series (one PR per section: regions, capabilities, access-sites; all behind their respective unstable-* features) keeps the codec idioms aligned and the round-trip test infrastructure shared.

Spec doc updates (Criterion 4 + Gate 5) can land as a single doc PR after the codecs are in place but before flipping status to [accepted].

Cross-repo codegen issues (Criterion 5 + Gate 6) can be filed proactively now to give producer language teams visibility — they don't gate [accepted] as long as they exist.

After acceptance

Per docs/proposals/README.adoc status legend, accepted proposals get promoted to ADRs under docs/decisions/ and the LEVEL-STATUS.md verifier coverage gains "verifier (carrier-backed)" columns for L2–L6 and L15.

Related

🤖 Filed 2026-05-30 to scope the post-review path.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions