planner/optimizer — `aqe_extractor.rs`'s `decompose_to_leaves`/`arm_to_query_string`/`strip_parens` (around line 250) duplicates `SingleQueryProcessor::get_binary_arm_queries`/`strip_parens` already in `planner/promql.rs:31-145`.
Two copies of PromQL binary-arm decomposition logic will drift over time. Unifying means picking which module owns the shared logic — worth a short design discussion, not just a blind extraction.
Found during code review of PR #407.
planner/optimizer — `aqe_extractor.rs`'s `decompose_to_leaves`/`arm_to_query_string`/`strip_parens` (around line 250) duplicates `SingleQueryProcessor::get_binary_arm_queries`/`strip_parens` already in `planner/promql.rs:31-145`.
Two copies of PromQL binary-arm decomposition logic will drift over time. Unifying means picking which module owns the shared logic — worth a short design discussion, not just a blind extraction.
Found during code review of PR #407.