What to build
Rename overloaded planner abstractions so each name identifies the concept it represents, rather than reusing terms such as "bind," "implementation," and "boundary" across unrelated stages.
| Current |
Proposed |
Reason |
Implementation |
Realization |
A candidate physical form, not source-code implementation. |
implementations_for_with |
realizations_for_intent |
Enumerates ranked physical alternatives for an AggIntent. |
Binder / bind |
SchemaResolver / resolve_schema |
This pass derives schema and resolves column names. |
PanePhaseBinding |
PaneLayout |
Records pane width and origin; does not bind a plan. |
BoundaryCoverage |
WindowEdgeCoverage |
Describes coverage of partial panes at query-window edges. |
ExactBoundaryResidual |
ExactWindowEdgeResidual |
States which boundary the residual covers. |
BoundaryKind |
PhysicalHandoffKind |
Covers network transfer and materialization handoffs. |
BoundaryResources |
PhysicalHandoffBytes |
Byte counters associated with physical handoffs. |
boundary_cost |
physical_handoff_cost |
Costs those physical handoffs. |
| "comparison boundary" |
"comparison scope" |
Align documentation with the existing ComparisonScope type. |
| downstream "boundary" |
"planner-runtime contract" |
The document defines ownership and exchanged contracts. |
internal Models |
CandidatePlanningInputs |
Holds cost, accuracy, allocation, and evidence inputs. |
with_models |
new_with_planning_inputs |
Makes the injected dependencies explicit. |
with_models_and_evidence |
new_with_planning_inputs_and_evidence |
Same, while distinguishing evidence-bearing construction. |
Keep with_* where it is an ordinary fluent builder (with_table, with_update_rate, etc.), and retain IN, WITH, and without where they directly represent SQL or PromQL syntax.
Acceptance criteria
Blocked by
None - can start immediately.
What to build
Rename overloaded planner abstractions so each name identifies the concept it represents, rather than reusing terms such as "bind," "implementation," and "boundary" across unrelated stages.
ImplementationRealizationimplementations_for_withrealizations_for_intentAggIntent.Binder/bindSchemaResolver/resolve_schemaPanePhaseBindingPaneLayoutBoundaryCoverageWindowEdgeCoverageExactBoundaryResidualExactWindowEdgeResidualBoundaryKindPhysicalHandoffKindBoundaryResourcesPhysicalHandoffBytesboundary_costphysical_handoff_costComparisonScopetype.ModelsCandidatePlanningInputswith_modelsnew_with_planning_inputswith_models_and_evidencenew_with_planning_inputs_and_evidenceKeep
with_*where it is an ordinary fluent builder (with_table,with_update_rate, etc.), and retainIN,WITH, andwithoutwhere they directly represent SQL or PromQL syntax.Acceptance criteria
Realizationconsistently.boundaryname.comparison scopeandplanner-runtime contractfor their respective concepts.Blocked by
None - can start immediately.