Skip to content

RUE-1477: remove peer semantic CFG assembly - #2329

Merged
steveklabnik merged 1 commit into
trunkfrom
codex/rue-1477-single-compiler-path
Aug 12, 2026
Merged

RUE-1477: remove peer semantic CFG assembly#2329
steveklabnik merged 1 commit into
trunkfrom
codex/rue-1477-single-compiler-path

Conversation

@steveklabnik

@steveklabnik steveklabnik commented Aug 12, 2026

Copy link
Copy Markdown
Collaborator

Summary

  • delete the peer whole-program semantic/CFG assembly path
  • delete CompilerSession::semantic(), its stable semantic/CFG view family, and the park-aware semantic presentation entry
  • expose the actual canonical rooted CFG artifact through the unstable in-tree tooling API
  • migrate emit, profiling, fuzzing, oracle, and test consumers to the exact rooted per-function records used by codegen
  • add structural tests that prevent either the retired orchestration or semantic facade from returning

Each CFG consumer now uses the owning record's exact type, interner, and string domains. No replacement whole-program state or conversion facade is constructed.

Why

The compiler had two ways to assemble semantic and CFG state, and the supported semantic() API preserved a fictional phase boundary even after the duplicate computation was removed. That made architectural measurements ambiguous and left an attractive insertion point for a second pipeline. This change gives every production consumer one canonical computation path before ADR-0071 implementation begins.

Validation

  • production compiler and AIR-profile, fuzz, oracle, and oracle-diff consumers build
  • compiler unit suite: 844 passed, 6 ignored
  • external public-API suite: 6 passed
  • external differential oracle: 4 passed
  • external payload-schema suite: 3 passed
  • formatting and debug-assertion policy pass
  • earlier full premerge run passed 150 targets; its sole affected-targets-tool assertion failure reproduced unchanged on clean trunk, and the corresponding CI job passed

Fixes RUE-1477.

@steveklabnik
steveklabnik enabled auto-merge August 12, 2026 22:30
@steveklabnik
steveklabnik disabled auto-merge August 12, 2026 22:35
@steveklabnik
steveklabnik force-pushed the codex/rue-1477-single-compiler-path branch from 9e42c48 to a3668be Compare August 12, 2026 22:56
@steveklabnik
steveklabnik enabled auto-merge August 12, 2026 22:56
@steveklabnik
steveklabnik force-pushed the codex/rue-1477-single-compiler-path branch from a3668be to aa3965b Compare August 12, 2026 23:03
@steveklabnik
steveklabnik added this pull request to the merge queue Aug 12, 2026
Merged via the queue into trunk with commit 8e3959e Aug 12, 2026
23 checks passed
@steveklabnik
steveklabnik deleted the codex/rue-1477-single-compiler-path branch August 12, 2026 23:10
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