refactor!: rename ExecutableDag to PostAsapDag - #470
Merged
Merged
Conversation
The exported graph is the logical Post-ASAP DAG, not an executable plan; physical execution is a separate layer. Name its types after the layer they already share a wire version, node ID and document envelope with. No serialized field or tag changes; the JSON wire format is unchanged. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
zzylol
force-pushed
the
refactor/rename-post-asap-dag
branch
from
September 29, 2026 17:14
e589ea1 to
c60c577
Compare
zzylol
added a commit
that referenced
this pull request
Sep 29, 2026
Follow #470: the physical compiler consumes the logical Post-ASAP DAG. The design doc now names the Pre-ASAP and Post-ASAP DAGs as the two logical layers and records that placement ownership between per-node phases and frontier enumeration is still open. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Selvomega
added a commit
that referenced
this pull request
Sep 29, 2026
Brings in #469, #470 (ExecutableDag -> PostAsapDag), #472 and #478. Conflict resolution: keep the #466 any_measure_filtered guard on the TopK site and adopt main's relaxed `TopK { k, .. }` pattern; keep the #466 corr FILTER test with main's comment wording. Two Aggregate constructions added by #472 gained the #466 `filters` field. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
zzylol
added a commit
that referenced
this pull request
Sep 30, 2026
#445, #470, #472, and #478 each described the Planner output from a different angle. Add an output-layers section that places them in order: candidate space, selected logical plan, and exported logical DAG. Say that PlanOutput is derived from PlanSpace rather than being a second output. Use "candidate" instead of "alternative" throughout input-output-workflow.md. Rebase note: conflicts in docs/design_docs/architecture/input-output-workflow.md with the stack below are resolved to this commit's version of the file, as integration merge e59640f resolved them. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
zzylol
added a commit
that referenced
this pull request
Sep 30, 2026
#445, #470, #472, and #478 each described the Planner output from a different angle. Add an output-layers section that places them in order: candidate space, selected logical plan, and exported logical DAG. Say that PlanOutput is derived from PlanSpace rather than being a second output. Use "candidate" instead of "alternative" throughout input-output-workflow.md. Rebase note: conflicts in docs/design_docs/architecture/input-output-workflow.md with the stack below are resolved to this commit's version of the file, as integration merge e59640f resolved them. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Why
The Post-ASAP DAG is logical: it says what is computed with which summaries, not
which physical operators run. Its exported form was named
ExecutableDag, eventhough its wire version, node IDs and envelope were already
POST_ASAP_DAG_*,PostAsapNodeIdandPostAsapDagDocument. With a physical DAG layer arriving(#462), "executable" names the wrong layer. This PR is split out of #462 so it
can be reviewed on its own.
What
Pure rename, no behavior change:
post_asap::executable_dagpost_asap::post_asap_dagExecutableDag/ExecutableDagNode/ExecutableDagEdgePostAsapDag/PostAsapDagNode/PostAsapDagEdgeExecutableOperatorPayloadPostAsapOperatorPayloadExecutableDagValidationError/ExecutableDagCompilationPostAsapDagValidationError/PostAsapDagCompilationExecutableNodeIdentityMapPostAsapNodeIdentityMapcompile_executable_dag[_with_node_ids]compile_post_asap_dag[_with_node_ids]docs/design_docs/concepts/post-asap-ir.mdnow states that the Pre-ASAP andPost-ASAP DAGs are both logical, that
SummaryNodetrees andPostAsapDagaretwo forms of the same Post-ASAP DAG, and that physical compilation produces a
separate DAG. Execution-phase fields stay on the Post-ASAP DAG; moving them is
out of scope.
Before this PR
After this PR
The serialized JSON is unchanged: no serde field, tag or wire version changes.
Compatibility
Breaking Rust API change with no aliases. ASAPQuery-backend must apply the same
rename when it syncs Planner
main(about 135 references in 19 files).Validation
cargo test --workspace(1203 passed), doc tests, andcargo clippy --workspace --all-targets -- -D warningspass.🤖 Generated with Claude Code