Skip to content

feat(control_plane): Phase 2 step 2 -- add expr_ir.rs - #394

Merged
zzylol merged 1 commit into
phase1b/real-asap-ir-dependencyfrom
phase2/query-expr-relational-merge
Jul 18, 2026
Merged

zzylol merged 1 commit into
phase1b/real-asap-ir-dependencyfrom
phase2/query-expr-relational-merge

Conversation

@zzylol

@zzylol zzylol commented Jul 18, 2026

Copy link
Copy Markdown
Contributor

Summary

Stacked on #393. Adds expr_ir.rs per Phase 2 step 2 of the migration
plan -- the D2-decision scalar IR (Expr<C>, generic over column-ref
type: L2Expr = Expr<ColumnRef> for the front-end-emitted tree,
L3Expr = Expr<ColumnId> for the canonical positional tree).

Deliberately inert: not re-exported into crate::intent_algebra::* yet
(query_expr::ColumnRef already claims that name), and nothing
constructs Expr<C> until the query_expr.rs/relational.rs merge
retargets Predicate/ScalarExpr onto it. That's next, and it's a much
bigger step than this one or #393 -- see the follow-up comment.

Verification

Test plan

🤖 Generated with Claude Code

…ext step)

New file, re-exported from asap_ir::intent_algebra::expr_ir. Per the D2
decision in ASAPController's intent-algebra-reconciliation.md: one
generic Expr<C> scalar IR shared across L2 (Expr<ColumnRef>) and L3
(Expr<ColumnId>), replacing control_plane's separate ad hoc Predicate
(query_expr.rs) and ScalarExpr (relational.rs) types.

Deliberately not re-exported into the crate::intent_algebra::* top-level
surface yet -- query_expr::ColumnRef already claims that name, and
nothing constructs Expr<C> until the query_expr.rs/relational.rs merge
(next step) retargets Predicate/ScalarExpr onto L3Expr/L2Expr. This step
only makes the type available; verified inert (cargo build clean, full
test suite unchanged, 820 passed).
Base automatically changed from phase2/schema-rs-merge to phase1b/real-asap-ir-dependency July 18, 2026 17:15
@zzylol
zzylol merged commit b7f9389 into phase1b/real-asap-ir-dependency Jul 18, 2026
@zzylol
zzylol deleted the phase2/query-expr-relational-merge branch July 18, 2026 17:16
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