Skip to content

feature - replacement backend parity cutover #652

Description

@dannymeijer

Problem statement

The Rust-source backend must stop being the normal compiler path. The replacement backend must preserve supported behavior, classify intentional change explicitly, and leave public packages, tooling, and Oven with stable source-semantic contracts rather than textual Rust handoff.

Proposed solution

This is the governing v0.6 backend-cutover and release-acceptance contract. Its eight native slice sub-issues carry the delivery work; each slice in turn owns independently closeable implementation issues and their real blocking relationships. This issue coordinates the programme and its final evidence. It does not redefine individual RFC semantics or turn the slices into an artificial serial chain.

Delivery slices

  1. chore - v0.6 Slice 1: Cutover foundation #1137 — Cutover foundation: backend-selection receipts, parity corpus, and Body IR evidence.
  2. chore - v0.6 Slice 2: First executable proof #1138 — First executable proof: session facts, direct replacement execution, and public-boundary preparation.
  3. chore - v0.6 Slice 9: Canonical source meaning #1139 — Canonical source meaning: identity, lexical correctness, Type[T], and public representation.
  4. chore - v0.6 Slice 3: Language and runtime matrix #1140 — Language and runtime matrix: embedded descriptors, governed capabilities, package vocabulary, and standard-library hardening.
  5. chore - v0.6 Slice 4: Oven fast, real, and performant #1141 — Oven authority and native Rust: Loaf/Oven authority, bounded host facets, providers, and Incan-authored control plane.
  6. chore - v0.6 Slice 8: Oven CLI delivery #1142 — Oven CLI delivery: shared-plan oven build / oven bake and shallow Incan delegates.
  7. chore - v0.6 Slice 9: First-class inspectability #1143 — First-class inspectability: shared codegraph consumers and bounded Rust/Oven inspection.
  8. chore - v0.6 Slice 11: Cutover and release #1144 — Cutover and release: corpus-led compatibility reporting and final normal-path removal.

Programme records

Scope

  • Replacement backend as the normal compiler path for every supported v0.6 language and runtime contract.
  • Full parity, disposition, and migration evidence for language-shaped DSLs, interactive runtime metadata, capabilities/receipts, type-directed APIs, vocab helpers, packages, interop, and Oven-facing artifacts where applicable.
  • Compiler-owned internal HIR and Body IR; external consumers use versioned diagnostics, public metadata, plans, and receipts.
  • Generated Rust only as an optional migration, debugging, and inspection projection.

Out of scope

  • Defining the normative semantics of linked RFCs; those remain owned by their RFC issues.
  • Reopening textual Rust as normal semantic or public compatibility authority.
  • Treating a slice master as a substitute for its children's independently verifiable acceptance criteria.

Done when

  • Every active slice master is closed with its own stated evidence, and every descendant is closed or explicitly migrated with user-facing guidance.
  • The normal path is the replacement backend for the complete v0.6 feature matrix.
  • Every change is parity-proven or explicitly dispositioned with migration guidance.
  • Generated Rust is no longer required for normal build semantics, package contracts, or Oven consumption.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    documentationImprovements or additions to documentationfeatureNew feature or request

    Projects

    • Status
      In Progress

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions