Skip to content

Commit dfaa958

Browse files
zzylolclaude
andcommitted
refactor(types): arrange asap-types modules by #511 section (#572 B1)
Replace the pre_asap/post_asap split with modules named for what they hold: - ir::operator: node, non_asap, asap, operator_properties, agg_intent, maintained_population - ir::scalar: scalar expressions, expr_ir items, scalar_type_rules, column_resolution - ir::schema: Schema/Field/DataType, aggregate_schema, error, and the summary state types (state_type, formerly post_asap::sketch) - ir::properties: guarantee, timing, summary_coverage, and the execution timing/data-state types split out of execution_data_state - workload: workload, parsed_workload, resources - physical: the rest of execution_data_state, and summary_window post_asap::query_time had no callers and is deleted. Public type names are unchanged; every import across the workspace is rewritten, with no compatibility re-exports from the old paths. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
1 parent 0afc939 commit dfaa958

217 files changed

Lines changed: 1345 additions & 1994 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

‎crates/asap-aware-mapping/src/accuracy/composition.rs‎

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -705,7 +705,7 @@ pub(super) fn propagate(
705705
#[cfg(test)]
706706
mod tests {
707707
use super::*;
708-
use asap_types::pre_asap::AggIntent;
708+
use asap_types::ir::operator::AggIntent;
709709
fn abs(bound: f64, delta: f64) -> ResultGuarantee {
710710
ResultGuarantee {
711711
metric: ErrorMetric::AbsoluteValue,
@@ -1030,7 +1030,7 @@ mod tests {
10301030
#[test]
10311031
fn counter_functions_have_distinct_definition_rules() {
10321032
let operation = |intent| ExactOperation::Aggregate {
1033-
reduction: asap_types::pre_asap::Reduction::PerEntity,
1033+
reduction: asap_types::ir::operator::Reduction::PerEntity,
10341034
measures: vec![intent],
10351035
output_names: vec![],
10361036
filters: vec![],

‎crates/asap-aware-mapping/src/accuracy/estimators/cms.rs‎

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -42,8 +42,8 @@ mod tests {
4242
#[test]
4343
fn local_guarantee_inverts_frequency_sizing() {
4444
use crate::replacement::default_size_params;
45-
use asap_types::post_asap::{GroupingStrategy, SketchKind};
46-
let c = asap_types::pre_asap::agg_intent::default_cardinality();
45+
use asap_types::ir::schema::{GroupingStrategy, SketchKind};
46+
let c = asap_types::ir::operator::agg_intent::default_cardinality();
4747
let params = default_size_params(SketchAlgorithm::Cms, &c, 0.01, 0.001);
4848
let g = DefaultAccuracyModel
4949
.local_guarantee(
@@ -66,7 +66,7 @@ mod tests {
6666

6767
#[test]
6868
fn heap_evaluation_retains_frequency_metric() {
69-
use asap_types::post_asap::{GroupingStrategy, SketchKind};
69+
use asap_types::ir::schema::{GroupingStrategy, SketchKind};
7070
let cms_heap = SketchParams::CmsWithHeap {
7171
width: 272,
7272
depth: 5,

‎crates/asap-aware-mapping/src/accuracy/estimators/count_sketch.rs‎

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -56,8 +56,8 @@ mod tests {
5656
#[test]
5757
fn count_sketch_uses_an_l2_guarantee() {
5858
use crate::replacement::default_size_params;
59-
use asap_types::post_asap::{GroupingStrategy, SketchKind};
60-
use asap_types::pre_asap::agg_intent::default_cardinality;
59+
use asap_types::ir::operator::agg_intent::default_cardinality;
60+
use asap_types::ir::schema::{GroupingStrategy, SketchKind};
6161
let intent = default_cardinality();
6262
let count_sketch = default_size_params(SketchAlgorithm::CountSketch, &intent, 0.01, 0.01);
6363
let guarantee = DefaultAccuracyModel
@@ -67,7 +67,7 @@ mod tests {
6767
GroupingStrategy::default(),
6868
),
6969
&SketchStatistic::PointCount {
70-
key: asap_types::pre_asap::expr_ir::ColumnRef::SampleValue,
70+
key: asap_types::ir::scalar::ColumnRef::SampleValue,
7171
value: None,
7272
},
7373
)

‎crates/asap-aware-mapping/src/accuracy/estimators/hll.rs‎

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -231,8 +231,8 @@ mod tests {
231231
#[test]
232232
fn generic_rse_sizing_does_not_certify_confidence() {
233233
use crate::replacement::default_size_params;
234-
use asap_types::post_asap::{GroupingStrategy, SketchKind};
235-
use asap_types::pre_asap::agg_intent::default_cardinality;
234+
use asap_types::ir::operator::agg_intent::default_cardinality;
235+
use asap_types::ir::schema::{GroupingStrategy, SketchKind};
236236
let c = default_cardinality();
237237
let params = default_size_params(SketchAlgorithm::Hll, &c, 0.01, 0.01);
238238
let g = DefaultAccuracyModel

‎crates/asap-aware-mapping/src/accuracy/estimators/kll.rs‎

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -43,8 +43,8 @@ mod tests {
4343
#[test]
4444
fn local_guarantee_inverts_rank_sizing() {
4545
use crate::replacement::default_size_params;
46-
use asap_types::post_asap::{GroupingStrategy, SketchKind};
47-
use asap_types::pre_asap::agg_intent::default_quantile;
46+
use asap_types::ir::operator::agg_intent::default_quantile;
47+
use asap_types::ir::schema::{GroupingStrategy, SketchKind};
4848
let q = default_quantile(0.99);
4949
let params = default_size_params(SketchAlgorithm::Kll, &q, 0.01, 0.01);
5050
let g = DefaultAccuracyModel

‎crates/asap-aware-mapping/src/accuracy/estimators/mod.rs‎

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
//! Dispatch committed estimator parameters to their accuracy models.
22
use super::*;
3-
use asap_types::post_asap::GroupingStrategy;
4-
use asap_types::pre_asap::AggIntent;
3+
use asap_types::ir::operator::AggIntent;
4+
use asap_types::ir::schema::GroupingStrategy;
55

66
pub mod cardinality;
77
pub mod cms;

‎crates/asap-aware-mapping/src/accuracy/evidence.rs‎

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -172,8 +172,8 @@ mod tests {
172172
let fresh = provider.propagation_stats(
173173
&CompositionOperator::ExactSum,
174174
&FieldDataType::ExactAggregate(
175-
asap_types::post_asap::ExactKind::Sum,
176-
asap_types::post_asap::ExactParams::Sum,
175+
asap_types::ir::schema::ExactKind::Sum,
176+
asap_types::ir::schema::ExactParams::Sum,
177177
),
178178
None,
179179
);
@@ -187,8 +187,8 @@ mod tests {
187187
.propagation_stats(
188188
&CompositionOperator::ExactSum,
189189
&FieldDataType::ExactAggregate(
190-
asap_types::post_asap::ExactKind::Sum,
191-
asap_types::post_asap::ExactParams::Sum,
190+
asap_types::ir::schema::ExactKind::Sum,
191+
asap_types::ir::schema::ExactParams::Sum,
192192
),
193193
None,
194194
);

‎crates/asap-aware-mapping/src/accuracy/mod.rs‎

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -20,11 +20,12 @@ pub use evidence::{
2020
QuantileInputDomain, WorkloadAccuracyEvidence,
2121
};
2222

23-
use asap_types::ir::OperatorNode;
24-
use asap_types::post_asap::{
25-
AccuracyError, BoundExpr, CompositionOperator, ErrorMetric, FieldDataType, GuaranteeSource,
26-
ProbabilityExpr, ResultGuarantee, SketchAlgorithm, SketchParams, SketchStatistic,
23+
use asap_types::ir::properties::{
24+
AccuracyError, BoundExpr, CompositionOperator, ErrorMetric, GuaranteeSource, ProbabilityExpr,
25+
ResultGuarantee,
2726
};
27+
use asap_types::ir::schema::{FieldDataType, SketchAlgorithm, SketchParams, SketchStatistic};
28+
use asap_types::ir::OperatorNode;
2829
use asap_types::types::AccuracyTarget;
2930

3031
use crate::exact_composition::ExactOperation;

‎crates/asap-aware-mapping/src/accuracy/reconciliation.rs‎

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -149,13 +149,13 @@
149149
//! same structural child, so adding the edge preserves the reference DAG's
150150
//! parent-before-child topological ordering.
151151
152-
use asap_types::ir::non_asap::any_measure_filtered;
152+
use asap_types::ir::operator::non_asap::any_measure_filtered;
153153
use std::cmp::Ordering;
154154
use std::rc::Rc;
155155

156-
use asap_types::ir::operator_properties::Reduction;
156+
use asap_types::ir::operator::agg_intent::AggIntent;
157+
use asap_types::ir::operator::operator_properties::Reduction;
157158
use asap_types::ir::{NonASAPOp, OperatorNode};
158-
use asap_types::pre_asap::agg_intent::AggIntent;
159159
use asap_types::types::AccuracyTarget;
160160

161161
use crate::replacement::{
@@ -392,9 +392,9 @@ mod tests {
392392
use super::*;
393393
use crate::cost_model::{CostModel, DefaultCostModel};
394394
use asap_types::ir::cse::share_common_sub_dags;
395-
use asap_types::ir::operator_properties::{GroupKeys, Source};
396-
use asap_types::post_asap::SketchAlgorithm;
397-
use asap_types::pre_asap::schema::{ColumnId, DataType, Field, Schema};
395+
use asap_types::ir::operator::operator_properties::{GroupKeys, Source};
396+
use asap_types::ir::schema::SketchAlgorithm;
397+
use asap_types::ir::schema::{ColumnId, DataType, Field, Schema};
398398

399399
/// `[ts(0), value(1), job(2)]`.
400400
/// A unique-keyed scan (`[ts]`) so `share_common_sub_dags` is actually

‎crates/asap-aware-mapping/src/analytical_cost.rs‎

Lines changed: 15 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -7,8 +7,10 @@
77
88
use std::collections::{HashMap, HashSet};
99

10-
use asap_types::post_asap::{SketchAlgorithm, SketchParams};
11-
pub use asap_types::resources::{CacheCapacityEvidence, CacheEvidence, CacheProfile, ModeledCpu};
10+
use asap_types::ir::schema::{SketchAlgorithm, SketchParams};
11+
pub use asap_types::workload::resources::{
12+
CacheCapacityEvidence, CacheEvidence, CacheProfile, ModeledCpu,
13+
};
1214
use asap_types::workload::DataArrival;
1315
use serde::{Deserialize, Serialize};
1416

@@ -185,7 +187,7 @@ impl ResourceCalibration {
185187
#[derive(Debug, Clone, Copy, PartialEq, Serialize, Deserialize)]
186188
#[serde(from = "ResourceEstimateWire", into = "ResourceEstimateWire")]
187189
pub struct ResourceEstimate {
188-
resources: asap_types::resources::PhysicalResources<ModeledCpu, u64>,
190+
resources: asap_types::workload::resources::PhysicalResources<ModeledCpu, u64>,
189191
}
190192

191193
// Keep the established three-field JSON format. Required fields make a missing
@@ -216,7 +218,7 @@ impl From<ResourceEstimate> for ResourceEstimateWire {
216218
impl ResourceEstimate {
217219
pub const fn new(cpu_ops: f64, peak_memory_bytes: u64, scan_bytes: u64) -> Self {
218220
Self {
219-
resources: asap_types::resources::PhysicalResources {
221+
resources: asap_types::workload::resources::PhysicalResources {
220222
cpu: ModeledCpu { cpu_ops },
221223
peak_memory_bytes: Some(peak_memory_bytes),
222224
retained_memory_bytes: None,
@@ -243,7 +245,9 @@ impl ResourceEstimate {
243245
.expect("analytical scan bytes are required by construction")
244246
}
245247

246-
pub fn resources(&self) -> &asap_types::resources::PhysicalResources<ModeledCpu, u64> {
248+
pub fn resources(
249+
&self,
250+
) -> &asap_types::workload::resources::PhysicalResources<ModeledCpu, u64> {
247251
&self.resources
248252
}
249253
}
@@ -2244,7 +2248,7 @@ mod tests {
22442248
assert_eq!(estimate.cpu_ops(), 12.5);
22452249
assert_eq!(estimate.peak_memory_bytes(), u64::MAX);
22462250
assert_eq!(estimate.scan_bytes(), 0);
2247-
let shared: &asap_types::resources::PhysicalResources<ModeledCpu, u64> =
2251+
let shared: &asap_types::workload::resources::PhysicalResources<ModeledCpu, u64> =
22482252
estimate.resources();
22492253
assert_eq!(shared.cpu.cpu_ops, 12.5);
22502254
assert_eq!(shared.peak_memory_bytes, Some(u64::MAX));
@@ -2968,7 +2972,7 @@ mod tests {
29682972
}
29692973

29702974
fn comparison_scope() -> ComparisonScope {
2971-
use asap_types::ir::operator_properties::Source;
2975+
use asap_types::ir::operator::operator_properties::Source;
29722976
use asap_types::workload::{
29732977
DurationMs, QueryRecurrence, QueryTimeScope, RepeatedDemand, RepetitionInterval,
29742978
TimeSelection, TimestampMs,
@@ -3243,7 +3247,7 @@ mod tests {
32433247
operator: PhysicalOperator::Scan,
32443248
children: vec![],
32453249
scan_selection: Some(ScanSelection {
3246-
source: asap_types::ir::operator_properties::Source::Table {
3250+
source: asap_types::ir::operator::operator_properties::Source::Table {
32473251
table_ref: "other_metrics".into(),
32483252
},
32493253
source_snapshot_id: "catalog-version-42".into(),
@@ -3308,7 +3312,7 @@ mod tests {
33083312
let mut scope = comparison_scope();
33093313
let coverage = scope.sources[0].clone();
33103314
scope.sources.push(ScanSelection {
3311-
source: asap_types::ir::operator_properties::Source::Table {
3315+
source: asap_types::ir::operator::operator_properties::Source::Table {
33123316
table_ref: "auxiliary".into(),
33133317
},
33143318
source_snapshot_id: "catalog-version-42".into(),
@@ -3672,10 +3676,10 @@ mod tests {
36723676
// Legacy mapping imports are aliases of the shared schema, not a second type.
36733677
#[test]
36743678
fn shared_cache_types_work_through_legacy_mapping_imports() {
3675-
let central: asap_types::resources::CacheProfile = cache_profile(100, 50);
3679+
let central: asap_types::workload::resources::CacheProfile = cache_profile(100, 50);
36763680
let legacy: CacheProfile =
36773681
serde_json::from_value(serde_json::to_value(&central).unwrap()).unwrap();
3678-
fn accepts_shared(_: &asap_types::resources::CacheProfile) {}
3682+
fn accepts_shared(_: &asap_types::workload::resources::CacheProfile) {}
36793683
accepts_shared(&legacy);
36803684
assert_eq!(central, legacy);
36813685
assert_eq!(

0 commit comments

Comments
 (0)