From b5c7f15c9c217b454e3a284a2323d463e8890ca3 Mon Sep 17 00:00:00 2001
From: Kevin Longe <273747162+kvlonge@users.noreply.github.com>
Date: Mon, 2 Nov 2026 07:45:01 +0000
Subject: [PATCH 1/5] test(duckshop): edge cases for constructs translation
tools refuse
---
.../int_edge_amount_percent_texts.sql | 21 +
.../int_edge_callback_clock_times.sql | 23 +
.../int_edge_callback_date_lists.sql | 22 +
.../int_edge_callback_day_documents.sql | 24 +
.../int_edge_callback_day_starts.sql | 20 +
.../int_edge_callback_epoch_parts.sql | 23 +
.../int_edge_callback_epoch_reads.sql | 37 ++
.../edge_cases/int_edge_callback_last_day.sql | 21 +
.../int_edge_callback_latest_dates.sql | 22 +
.../int_edge_callback_london_times.sql | 20 +
.../int_edge_callback_recent_offsets.sql | 24 +
.../int_edge_callback_row_numbers.sql | 23 +
.../int_edge_callback_safe_dates.sql | 31 ++
.../int_edge_callback_start_fallbacks.sql | 21 +
.../int_edge_callback_text_dates.sql | 23 +
.../int_edge_callback_wall_time_lists.sql | 24 +
.../int_edge_callback_zone_words.sql | 25 +
.../int_edge_callback_zoned_dates.sql | 21 +
.../edge_cases/int_edge_check_any_amounts.sql | 23 +
.../int_edge_check_bracket_strips.sql | 20 +
.../int_edge_check_decoded_keys.sql | 28 +
.../int_edge_check_distinct_tuples.sql | 22 +
.../int_edge_check_formatted_dates.sql | 27 +
.../int_edge_check_generated_rows.sql | 33 ++
.../edge_cases/int_edge_check_group_flags.sql | 29 ++
.../int_edge_check_group_key_lists.sql | 21 +
.../int_edge_check_key_list_edits.sql | 25 +
.../edge_cases/int_edge_check_key_parts.sql | 21 +
.../int_edge_check_key_rewrites.sql | 25 +
.../int_edge_check_label_lookups.sql | 21 +
.../int_edge_check_last_known_keys.sql | 27 +
.../edge_cases/int_edge_check_local_times.sql | 27 +
.../int_edge_check_minute_times.sql | 21 +
.../int_edge_check_month_starts.sql | 27 +
.../edge_cases/int_edge_check_note_unions.sql | 29 ++
.../int_edge_check_number_arrays.sql | 21 +
.../int_edge_check_number_labels.sql | 20 +
.../int_edge_check_pair_filters.sql | 22 +
.../int_edge_check_pattern_matches.sql | 21 +
.../int_edge_check_reduced_keys.sql | 20 +
.../int_edge_check_sparse_arrays.sql | 21 +
.../edge_cases/int_edge_check_text_arrays.sql | 21 +
.../int_edge_check_unnamed_labels.sql | 29 ++
.../int_edge_check_variant_branches.sql | 37 ++
.../edge_cases/int_edge_check_wide_sums.sql | 26 +
.../edge_cases/int_edge_check_xml_checks.sql | 23 +
.../int_edge_check_zoned_literals.sql | 21 +
.../edge_cases/int_edge_key_number_reads.sql | 20 +
.../edge_cases/int_edge_key_rank_offsets.sql | 23 +
.../int_edge_ledger_quantity_steps.sql | 22 +
.../int_edge_ratio_array_bounds.sql | 29 ++
.../edge_cases/int_edge_ratio_array_casts.sql | 20 +
.../int_edge_ratio_array_positions.sql | 31 ++
.../edge_cases/int_edge_ratio_averages.sql | 23 +
.../int_edge_ratio_fixed_scales.sql | 20 +
.../int_edge_ratio_group_objects.sql | 25 +
.../edge_cases/int_edge_ratio_hashes.sql | 21 +
.../int_edge_ratio_identity_objects.sql | 28 +
.../int_edge_ratio_ignore_case_reads.sql | 26 +
.../int_edge_ratio_object_differences.sql | 27 +
.../int_edge_ratio_object_flags.sql | 25 +
.../int_edge_ratio_object_inserts.sql | 26 +
.../int_edge_ratio_object_reads.sql | 25 +
.../edge_cases/int_edge_ratio_path_checks.sql | 30 ++
.../int_edge_ratio_percent_texts.sql | 21 +
.../int_edge_ratio_running_totals.sql | 25 +
.../edge_cases/int_edge_ratio_safe_casts.sql | 31 ++
.../edge_cases/int_edge_ratio_text_forms.sql | 25 +
.../int_edge_ratio_text_replaces.sql | 23 +
.../int_edge_ratio_variant_unions.sql | 37 ++
.../int_edge_variant_decimal_reads.sql | 21 +
.../int_edge_variant_expected_values.sql | 22 +
.../int_edge_variant_xml_checks.sql | 23 +
.../int_edge_variant_xml_elements.sql | 20 +
.../rpt_edge_case_array_model_keys.sql | 37 ++
.../edge_cases/rpt_edge_case_model_keys.sql | 232 +++++++++
.../duckshop/project/sqlbuild_project.toml | 7 +
.../test_int_edge_amount_percent_texts.sql | 23 +
.../test_int_edge_callback_clock_times.sql | 23 +
.../test_int_edge_callback_date_lists.sql | 22 +
.../test_int_edge_callback_day_documents.sql | 22 +
.../test_int_edge_callback_day_starts.sql | 22 +
.../test_int_edge_callback_epoch_parts.sql | 23 +
.../test_int_edge_callback_epoch_reads.sql | 39 ++
.../test_int_edge_callback_last_day.sql | 22 +
.../test_int_edge_callback_latest_dates.sql | 22 +
.../test_int_edge_callback_london_times.sql | 22 +
.../test_int_edge_callback_recent_offsets.sql | 22 +
.../test_int_edge_callback_row_numbers.sql | 23 +
.../test_int_edge_callback_safe_dates.sql | 23 +
...test_int_edge_callback_start_fallbacks.sql | 22 +
.../test_int_edge_callback_text_dates.sql | 23 +
...test_int_edge_callback_wall_time_lists.sql | 22 +
.../test_int_edge_callback_zone_words.sql | 23 +
.../test_int_edge_callback_zoned_dates.sql | 22 +
.../test_int_edge_check_any_amounts.sql | 23 +
.../test_int_edge_check_bracket_strips.sql | 23 +
.../test_int_edge_check_decoded_keys.sql | 23 +
.../test_int_edge_check_distinct_tuples.sql | 23 +
.../test_int_edge_check_formatted_dates.sql | 23 +
.../test_int_edge_check_generated_rows.sql | 25 +
.../test_int_edge_check_group_flags.sql | 23 +
.../test_int_edge_check_group_key_lists.sql | 23 +
.../test_int_edge_check_key_list_edits.sql | 25 +
.../test_int_edge_check_key_parts.sql | 23 +
.../test_int_edge_check_key_rewrites.sql | 23 +
.../test_int_edge_check_label_lookups.sql | 23 +
.../test_int_edge_check_last_known_keys.sql | 23 +
.../test_int_edge_check_local_times.sql | 23 +
.../test_int_edge_check_minute_times.sql | 23 +
.../test_int_edge_check_month_starts.sql | 23 +
.../test_int_edge_check_note_unions.sql | 23 +
.../test_int_edge_check_number_arrays.sql | 23 +
.../test_int_edge_check_number_labels.sql | 23 +
.../test_int_edge_check_pair_filters.sql | 23 +
.../test_int_edge_check_pattern_matches.sql | 17 +
.../test_int_edge_check_reduced_keys.sql | 23 +
.../test_int_edge_check_sparse_arrays.sql | 23 +
.../test_int_edge_check_text_arrays.sql | 23 +
.../test_int_edge_check_unnamed_labels.sql | 23 +
.../test_int_edge_check_variant_branches.sql | 26 +
.../test_int_edge_check_wide_sums.sql | 23 +
.../test_int_edge_check_xml_checks.sql | 24 +
.../test_int_edge_check_zoned_literals.sql | 23 +
.../test_int_edge_key_number_reads.sql | 23 +
.../test_int_edge_key_rank_offsets.sql | 24 +
.../test_int_edge_ledger_quantity_steps.sql | 19 +
.../test_int_edge_ratio_array_bounds.sql | 23 +
.../test_int_edge_ratio_array_casts.sql | 23 +
.../test_int_edge_ratio_array_positions.sql | 23 +
.../test_int_edge_ratio_averages.sql | 23 +
.../test_int_edge_ratio_fixed_scales.sql | 23 +
.../test_int_edge_ratio_group_objects.sql | 24 +
.../edge_cases/test_int_edge_ratio_hashes.sql | 23 +
.../test_int_edge_ratio_identity_objects.sql | 23 +
.../test_int_edge_ratio_ignore_case_reads.sql | 23 +
...test_int_edge_ratio_object_differences.sql | 23 +
.../test_int_edge_ratio_object_flags.sql | 23 +
.../test_int_edge_ratio_object_inserts.sql | 23 +
.../test_int_edge_ratio_object_reads.sql | 23 +
.../test_int_edge_ratio_path_checks.sql | 23 +
.../test_int_edge_ratio_percent_texts.sql | 23 +
.../test_int_edge_ratio_running_totals.sql | 19 +
.../test_int_edge_ratio_safe_casts.sql | 24 +
.../test_int_edge_ratio_text_forms.sql | 25 +
.../test_int_edge_ratio_text_replaces.sql | 24 +
.../test_int_edge_ratio_variant_unions.sql | 23 +
.../test_int_edge_variant_decimal_reads.sql | 21 +
.../test_int_edge_variant_expected_values.sql | 20 +
.../test_int_edge_variant_xml_checks.sql | 22 +
.../test_int_edge_variant_xml_elements.sql | 19 +
.../test_rpt_edge_case_array_model_keys.sql | 36 ++
.../test_rpt_edge_case_model_keys.sql | 491 ++++++++++++++++++
153 files changed, 4303 insertions(+)
create mode 100644 benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_amount_percent_texts.sql
create mode 100644 benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_callback_clock_times.sql
create mode 100644 benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_callback_date_lists.sql
create mode 100644 benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_callback_day_documents.sql
create mode 100644 benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_callback_day_starts.sql
create mode 100644 benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_callback_epoch_parts.sql
create mode 100644 benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_callback_epoch_reads.sql
create mode 100644 benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_callback_last_day.sql
create mode 100644 benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_callback_latest_dates.sql
create mode 100644 benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_callback_london_times.sql
create mode 100644 benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_callback_recent_offsets.sql
create mode 100644 benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_callback_row_numbers.sql
create mode 100644 benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_callback_safe_dates.sql
create mode 100644 benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_callback_start_fallbacks.sql
create mode 100644 benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_callback_text_dates.sql
create mode 100644 benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_callback_wall_time_lists.sql
create mode 100644 benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_callback_zone_words.sql
create mode 100644 benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_callback_zoned_dates.sql
create mode 100644 benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_check_any_amounts.sql
create mode 100644 benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_check_bracket_strips.sql
create mode 100644 benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_check_decoded_keys.sql
create mode 100644 benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_check_distinct_tuples.sql
create mode 100644 benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_check_formatted_dates.sql
create mode 100644 benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_check_generated_rows.sql
create mode 100644 benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_check_group_flags.sql
create mode 100644 benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_check_group_key_lists.sql
create mode 100644 benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_check_key_list_edits.sql
create mode 100644 benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_check_key_parts.sql
create mode 100644 benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_check_key_rewrites.sql
create mode 100644 benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_check_label_lookups.sql
create mode 100644 benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_check_last_known_keys.sql
create mode 100644 benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_check_local_times.sql
create mode 100644 benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_check_minute_times.sql
create mode 100644 benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_check_month_starts.sql
create mode 100644 benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_check_note_unions.sql
create mode 100644 benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_check_number_arrays.sql
create mode 100644 benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_check_number_labels.sql
create mode 100644 benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_check_pair_filters.sql
create mode 100644 benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_check_pattern_matches.sql
create mode 100644 benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_check_reduced_keys.sql
create mode 100644 benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_check_sparse_arrays.sql
create mode 100644 benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_check_text_arrays.sql
create mode 100644 benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_check_unnamed_labels.sql
create mode 100644 benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_check_variant_branches.sql
create mode 100644 benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_check_wide_sums.sql
create mode 100644 benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_check_xml_checks.sql
create mode 100644 benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_check_zoned_literals.sql
create mode 100644 benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_key_number_reads.sql
create mode 100644 benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_key_rank_offsets.sql
create mode 100644 benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_ledger_quantity_steps.sql
create mode 100644 benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_ratio_array_bounds.sql
create mode 100644 benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_ratio_array_casts.sql
create mode 100644 benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_ratio_array_positions.sql
create mode 100644 benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_ratio_averages.sql
create mode 100644 benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_ratio_fixed_scales.sql
create mode 100644 benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_ratio_group_objects.sql
create mode 100644 benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_ratio_hashes.sql
create mode 100644 benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_ratio_identity_objects.sql
create mode 100644 benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_ratio_ignore_case_reads.sql
create mode 100644 benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_ratio_object_differences.sql
create mode 100644 benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_ratio_object_flags.sql
create mode 100644 benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_ratio_object_inserts.sql
create mode 100644 benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_ratio_object_reads.sql
create mode 100644 benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_ratio_path_checks.sql
create mode 100644 benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_ratio_percent_texts.sql
create mode 100644 benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_ratio_running_totals.sql
create mode 100644 benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_ratio_safe_casts.sql
create mode 100644 benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_ratio_text_forms.sql
create mode 100644 benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_ratio_text_replaces.sql
create mode 100644 benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_ratio_variant_unions.sql
create mode 100644 benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_variant_decimal_reads.sql
create mode 100644 benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_variant_expected_values.sql
create mode 100644 benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_variant_xml_checks.sql
create mode 100644 benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_variant_xml_elements.sql
create mode 100644 benchmarks/duckshop/project/models/marts/edge_cases/rpt_edge_case_array_model_keys.sql
create mode 100644 benchmarks/duckshop/project/models/marts/edge_cases/rpt_edge_case_model_keys.sql
create mode 100644 benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_amount_percent_texts.sql
create mode 100644 benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_callback_clock_times.sql
create mode 100644 benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_callback_date_lists.sql
create mode 100644 benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_callback_day_documents.sql
create mode 100644 benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_callback_day_starts.sql
create mode 100644 benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_callback_epoch_parts.sql
create mode 100644 benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_callback_epoch_reads.sql
create mode 100644 benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_callback_last_day.sql
create mode 100644 benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_callback_latest_dates.sql
create mode 100644 benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_callback_london_times.sql
create mode 100644 benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_callback_recent_offsets.sql
create mode 100644 benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_callback_row_numbers.sql
create mode 100644 benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_callback_safe_dates.sql
create mode 100644 benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_callback_start_fallbacks.sql
create mode 100644 benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_callback_text_dates.sql
create mode 100644 benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_callback_wall_time_lists.sql
create mode 100644 benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_callback_zone_words.sql
create mode 100644 benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_callback_zoned_dates.sql
create mode 100644 benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_any_amounts.sql
create mode 100644 benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_bracket_strips.sql
create mode 100644 benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_decoded_keys.sql
create mode 100644 benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_distinct_tuples.sql
create mode 100644 benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_formatted_dates.sql
create mode 100644 benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_generated_rows.sql
create mode 100644 benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_group_flags.sql
create mode 100644 benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_group_key_lists.sql
create mode 100644 benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_key_list_edits.sql
create mode 100644 benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_key_parts.sql
create mode 100644 benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_key_rewrites.sql
create mode 100644 benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_label_lookups.sql
create mode 100644 benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_last_known_keys.sql
create mode 100644 benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_local_times.sql
create mode 100644 benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_minute_times.sql
create mode 100644 benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_month_starts.sql
create mode 100644 benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_note_unions.sql
create mode 100644 benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_number_arrays.sql
create mode 100644 benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_number_labels.sql
create mode 100644 benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_pair_filters.sql
create mode 100644 benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_pattern_matches.sql
create mode 100644 benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_reduced_keys.sql
create mode 100644 benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_sparse_arrays.sql
create mode 100644 benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_text_arrays.sql
create mode 100644 benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_unnamed_labels.sql
create mode 100644 benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_variant_branches.sql
create mode 100644 benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_wide_sums.sql
create mode 100644 benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_xml_checks.sql
create mode 100644 benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_zoned_literals.sql
create mode 100644 benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_key_number_reads.sql
create mode 100644 benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_key_rank_offsets.sql
create mode 100644 benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_ledger_quantity_steps.sql
create mode 100644 benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_ratio_array_bounds.sql
create mode 100644 benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_ratio_array_casts.sql
create mode 100644 benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_ratio_array_positions.sql
create mode 100644 benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_ratio_averages.sql
create mode 100644 benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_ratio_fixed_scales.sql
create mode 100644 benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_ratio_group_objects.sql
create mode 100644 benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_ratio_hashes.sql
create mode 100644 benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_ratio_identity_objects.sql
create mode 100644 benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_ratio_ignore_case_reads.sql
create mode 100644 benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_ratio_object_differences.sql
create mode 100644 benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_ratio_object_flags.sql
create mode 100644 benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_ratio_object_inserts.sql
create mode 100644 benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_ratio_object_reads.sql
create mode 100644 benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_ratio_path_checks.sql
create mode 100644 benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_ratio_percent_texts.sql
create mode 100644 benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_ratio_running_totals.sql
create mode 100644 benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_ratio_safe_casts.sql
create mode 100644 benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_ratio_text_forms.sql
create mode 100644 benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_ratio_text_replaces.sql
create mode 100644 benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_ratio_variant_unions.sql
create mode 100644 benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_variant_decimal_reads.sql
create mode 100644 benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_variant_expected_values.sql
create mode 100644 benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_variant_xml_checks.sql
create mode 100644 benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_variant_xml_elements.sql
create mode 100644 benchmarks/duckshop/project/tests/unit/marts/edge_cases/test_rpt_edge_case_array_model_keys.sql
create mode 100644 benchmarks/duckshop/project/tests/unit/marts/edge_cases/test_rpt_edge_case_model_keys.sql
diff --git a/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_amount_percent_texts.sql b/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_amount_percent_texts.sql
new file mode 100644
index 0000000000..d2fec03578
--- /dev/null
+++ b/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_amount_percent_texts.sql
@@ -0,0 +1,21 @@
+MODEL (
+ description """
+ One row per reconciliation check with a third of its amount as a percentage written with a
+ number format of four whole digits
+ """,
+ tags [edge_case],
+ columns (
+ check_id (type VARCHAR, nullable false, audits [not_null, unique]),
+ amount_percent (type VARCHAR),
+ ),
+);
+
+WITH final AS (
+ SELECT
+ a.check_id,
+ TO_VARCHAR(ROUND(a.amount * 100 / 3, 1), 'FM9990.0') || '%' AS amount_percent
+ FROM __ref("stg_edge_amount_checks") AS a
+)
+
+SELECT *
+FROM final
diff --git a/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_callback_clock_times.sql b/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_callback_clock_times.sql
new file mode 100644
index 0000000000..0097ed9e9f
--- /dev/null
+++ b/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_callback_clock_times.sql
@@ -0,0 +1,23 @@
+MODEL (
+ description """
+ One row per gateway callback with its free text read as a date, and the time of day of the
+ text read as a zoned timestamp
+ """,
+ tags [edge_case],
+ columns (
+ callback_id (type VARCHAR, nullable false, audits [not_null, unique]),
+ text_date (type DATE),
+ text_time (type TIME),
+ ),
+);
+
+WITH final AS (
+ SELECT
+ g.callback_id,
+ TO_DATE(CAST(g.business_date AS VARCHAR)) AS text_date,
+ TO_TIME(TRY_TO_TIMESTAMP_TZ(g.event_time_text))::TIME AS text_time
+ FROM __ref("stg_edge_gateway_callbacks") AS g
+)
+
+SELECT *
+FROM final
diff --git a/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_callback_date_lists.sql b/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_callback_date_lists.sql
new file mode 100644
index 0000000000..570903c22d
--- /dev/null
+++ b/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_callback_date_lists.sql
@@ -0,0 +1,22 @@
+MODEL (
+ description """
+ One row per merchant zone with the distinct business dates of its callbacks, held as VARIANT
+ """,
+ tags [edge_case],
+ columns (
+ merchant_zone (type VARCHAR, nullable false, audits [not_null, unique]),
+ date_count (type NUMBER(38, 0)),
+ ),
+);
+
+WITH final AS (
+ SELECT
+ g.merchant_zone,
+ ARRAY_SIZE(ARRAY_AGG(DISTINCT TO_VARIANT(g.business_date)))::NUMBER(38, 0) AS date_count
+ FROM __ref("stg_edge_gateway_callbacks") AS g
+ GROUP BY
+ g.merchant_zone
+)
+
+SELECT *
+FROM final
diff --git a/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_callback_day_documents.sql b/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_callback_day_documents.sql
new file mode 100644
index 0000000000..fb154b9000
--- /dev/null
+++ b/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_callback_day_documents.sql
@@ -0,0 +1,24 @@
+MODEL (
+ description """
+ One row per merchant zone with the number of day documents, objects holding a DATE,
+ aggregated from its callbacks
+ """,
+ tags [edge_case],
+ columns (
+ merchant_zone (type VARCHAR, nullable false, audits [not_null, unique]),
+ document_count (type NUMBER(38, 0)),
+ ),
+);
+
+WITH final AS (
+ SELECT
+ g.merchant_zone,
+ ARRAY_SIZE(ARRAY_AGG(OBJECT_CONSTRUCT_KEEP_NULL('day', g.business_date, 'id', g.callback_id)))::NUMBER(38, 0)
+ AS document_count
+ FROM __ref("stg_edge_gateway_callbacks") AS g
+ GROUP BY
+ g.merchant_zone
+)
+
+SELECT *
+FROM final
diff --git a/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_callback_day_starts.sql b/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_callback_day_starts.sql
new file mode 100644
index 0000000000..8029e3a5e2
--- /dev/null
+++ b/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_callback_day_starts.sql
@@ -0,0 +1,20 @@
+MODEL (
+ description """
+ One row per gateway callback with the start of the day of its zoned time
+ """,
+ tags [edge_case],
+ columns (
+ callback_id (type VARCHAR, nullable false, audits [not_null, unique]),
+ day_start (type TIMESTAMP_TZ),
+ ),
+);
+
+WITH final AS (
+ SELECT
+ g.callback_id,
+ DATE_TRUNC('day', g.event_at) AS day_start
+ FROM __ref("stg_edge_gateway_callbacks") AS g
+)
+
+SELECT *
+FROM final
diff --git a/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_callback_epoch_parts.sql b/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_callback_epoch_parts.sql
new file mode 100644
index 0000000000..d43e00a24f
--- /dev/null
+++ b/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_callback_epoch_parts.sql
@@ -0,0 +1,23 @@
+MODEL (
+ description """
+ One row per gateway callback with a nanosecond timestamp built from its wall time in
+ microseconds, and the wall time's epoch microseconds
+ """,
+ tags [edge_case],
+ columns (
+ callback_id (type VARCHAR, nullable false, audits [not_null, unique]),
+ wall_time_ns (type TIMESTAMP_NTZ(9)),
+ epoch_microsecond (type NUMBER(38, 0)),
+ ),
+);
+
+WITH final AS (
+ SELECT
+ g.callback_id,
+ TO_TIMESTAMP_NTZ(DATE_PART(EPOCH_SECOND, g.local_wall_time), 0)::TIMESTAMP_NTZ(9) AS wall_time_ns,
+ DATE_PART(EPOCH_MICROSECOND, g.local_wall_time)::NUMBER(38, 0) AS epoch_microsecond
+ FROM __ref("stg_edge_gateway_callbacks") AS g
+)
+
+SELECT *
+FROM final
diff --git a/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_callback_epoch_reads.sql b/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_callback_epoch_reads.sql
new file mode 100644
index 0000000000..01e058a29d
--- /dev/null
+++ b/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_callback_epoch_reads.sql
@@ -0,0 +1,37 @@
+MODEL (
+ description """
+ One row per reconciliation check with its wide key read as epoch milliseconds, and whether a
+ zoned gateway time falls before date text
+ """,
+ tags [edge_case],
+ columns (
+ check_id (type VARCHAR, nullable false, audits [not_null, unique]),
+ key_as_time (type TIMESTAMP_NTZ),
+ has_early_callback (type BOOLEAN),
+ ),
+);
+
+WITH keys AS (
+ SELECT
+ a.check_id,
+ TO_TIMESTAMP(a.wide_key, 3)::TIMESTAMP_NTZ AS key_as_time
+ FROM __ref("stg_edge_amount_checks") AS a
+),
+
+early AS (
+ SELECT COUNT(*) AS early_count
+ FROM __ref("stg_edge_gateway_callbacks") AS g
+ WHERE g.event_at < '2026-03-01'
+),
+
+final AS (
+ SELECT
+ k.check_id,
+ k.key_as_time,
+ (e.early_count > 0)::BOOLEAN AS has_early_callback
+ FROM keys AS k
+ CROSS JOIN early AS e
+)
+
+SELECT *
+FROM final
diff --git a/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_callback_last_day.sql b/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_callback_last_day.sql
new file mode 100644
index 0000000000..a124c238eb
--- /dev/null
+++ b/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_callback_last_day.sql
@@ -0,0 +1,21 @@
+MODEL (
+ description """
+ One row per gateway callback whose zoned time falls within the 24 hours before the current
+ time
+ """,
+ tags [edge_case],
+ columns (
+ callback_id (type VARCHAR, nullable false, audits [not_null, unique]),
+ is_recent (type BOOLEAN),
+ ),
+);
+
+WITH final AS (
+ SELECT
+ g.callback_id,
+ (g.event_at >= DATEADD(hour, -24, CURRENT_TIMESTAMP()))::BOOLEAN AS is_recent
+ FROM __ref("stg_edge_gateway_callbacks") AS g
+)
+
+SELECT *
+FROM final
diff --git a/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_callback_latest_dates.sql b/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_callback_latest_dates.sql
new file mode 100644
index 0000000000..c667b735e1
--- /dev/null
+++ b/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_callback_latest_dates.sql
@@ -0,0 +1,22 @@
+MODEL (
+ description """
+ One row per merchant zone with the business date, held as VARIANT, of its latest callback
+ """,
+ tags [edge_case],
+ columns (
+ merchant_zone (type VARCHAR, nullable false, audits [not_null, unique]),
+ latest_date_text (type VARCHAR),
+ ),
+);
+
+WITH final AS (
+ SELECT
+ g.merchant_zone,
+ MAX_BY(TO_VARIANT(g.business_date), g.callback_id)::VARCHAR AS latest_date_text
+ FROM __ref("stg_edge_gateway_callbacks") AS g
+ GROUP BY
+ g.merchant_zone
+)
+
+SELECT *
+FROM final
diff --git a/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_callback_london_times.sql b/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_callback_london_times.sql
new file mode 100644
index 0000000000..bfd19e8fb7
--- /dev/null
+++ b/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_callback_london_times.sql
@@ -0,0 +1,20 @@
+MODEL (
+ description """
+ One row per gateway callback with its zoned time converted from UTC to London wall time
+ """,
+ tags [edge_case],
+ columns (
+ callback_id (type VARCHAR, nullable false, audits [not_null, unique]),
+ london_time (type TIMESTAMP_NTZ),
+ ),
+);
+
+WITH final AS (
+ SELECT
+ g.callback_id,
+ CONVERT_TIMEZONE('UTC', 'Europe/London', g.event_at)::TIMESTAMP_NTZ AS london_time
+ FROM __ref("stg_edge_gateway_callbacks") AS g
+)
+
+SELECT *
+FROM final
diff --git a/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_callback_recent_offsets.sql b/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_callback_recent_offsets.sql
new file mode 100644
index 0000000000..5549440b10
--- /dev/null
+++ b/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_callback_recent_offsets.sql
@@ -0,0 +1,24 @@
+MODEL (
+ description """
+ One row per gateway callback on a business date up to today and after 1 March 2026, the
+ zoned time compared with date text
+ """,
+ tags [edge_case],
+ columns (
+ callback_id (type VARCHAR, nullable false, audits [not_null, unique]),
+ event_at (type TIMESTAMP_TZ),
+ ),
+);
+
+WITH final AS (
+ SELECT
+ g.callback_id,
+ g.event_at
+ FROM __ref("stg_edge_gateway_callbacks") AS g
+ WHERE
+ g.business_date <= CURRENT_DATE()
+ AND g.event_at >= '2026-03-01'
+)
+
+SELECT *
+FROM final
diff --git a/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_callback_row_numbers.sql b/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_callback_row_numbers.sql
new file mode 100644
index 0000000000..0016194384
--- /dev/null
+++ b/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_callback_row_numbers.sql
@@ -0,0 +1,23 @@
+MODEL (
+ description """
+ One row per gateway callback with its wall time as text and a SEQ8 number unique in the
+ result
+ """,
+ tags [edge_case],
+ columns (
+ callback_id (type VARCHAR, nullable false, audits [not_null, unique]),
+ wall_time_text (type VARCHAR),
+ has_row_number (type BOOLEAN),
+ ),
+);
+
+WITH final AS (
+ SELECT
+ g.callback_id,
+ CAST(g.local_wall_time AS VARCHAR) AS wall_time_text,
+ (SEQ8() IS NOT NULL)::BOOLEAN AS has_row_number
+ FROM __ref("stg_edge_gateway_callbacks") AS g
+)
+
+SELECT *
+FROM final
diff --git a/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_callback_safe_dates.sql b/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_callback_safe_dates.sql
new file mode 100644
index 0000000000..d72c6da724
--- /dev/null
+++ b/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_callback_safe_dates.sql
@@ -0,0 +1,31 @@
+MODEL (
+ description """
+ One row per gateway callback with its zone and year in an object that keeps NULL values, and
+ its business date passed through TRY_CAST to DATE
+ """,
+ tags [edge_case],
+ columns (
+ callback_id (type VARCHAR, nullable false, audits [not_null, unique]),
+ callback_json (type VARCHAR),
+ business_date_again (type DATE),
+ ),
+);
+
+WITH callback_objects AS (
+ SELECT
+ g.callback_id,
+ OBJECT_CONSTRUCT_KEEP_NULL('zone', g.merchant_zone, 'year', YEAR(g.business_date)) AS callback_object,
+ g.business_date
+ FROM __ref("stg_edge_gateway_callbacks") AS g
+),
+
+final AS (
+ SELECT
+ o.callback_id,
+ TO_JSON(o.callback_object) AS callback_json,
+ TRY_CAST(o.business_date AS DATE) AS business_date_again
+ FROM callback_objects AS o
+)
+
+SELECT *
+FROM final
diff --git a/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_callback_start_fallbacks.sql b/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_callback_start_fallbacks.sql
new file mode 100644
index 0000000000..99711d086d
--- /dev/null
+++ b/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_callback_start_fallbacks.sql
@@ -0,0 +1,21 @@
+MODEL (
+ description """
+ One row per gateway callback with its nanosecond time, or its free text when that is
+ missing, as a start time
+ """,
+ tags [edge_case],
+ columns (
+ callback_id (type VARCHAR, nullable false, audits [not_null, unique]),
+ start_at (type TIMESTAMP_NTZ(9)),
+ ),
+);
+
+WITH final AS (
+ SELECT
+ g.callback_id,
+ COALESCE(g.event_at_ns, g.event_time_text)::TIMESTAMP_NTZ(9) AS start_at
+ FROM __ref("stg_edge_gateway_callbacks") AS g
+)
+
+SELECT *
+FROM final
diff --git a/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_callback_text_dates.sql b/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_callback_text_dates.sql
new file mode 100644
index 0000000000..534e2af35f
--- /dev/null
+++ b/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_callback_text_dates.sql
@@ -0,0 +1,23 @@
+MODEL (
+ description """
+ One row per gateway callback with its free text read as a date when it can be, and its zoned
+ time in an object
+ """,
+ tags [edge_case],
+ columns (
+ callback_id (type VARCHAR, nullable false, audits [not_null, unique]),
+ text_date (type DATE),
+ event_json (type VARCHAR),
+ ),
+);
+
+WITH final AS (
+ SELECT
+ g.callback_id,
+ TRY_CAST(g.event_time_text AS DATE) AS text_date,
+ TO_JSON(OBJECT_CONSTRUCT('at', g.event_at)) AS event_json
+ FROM __ref("stg_edge_gateway_callbacks") AS g
+)
+
+SELECT *
+FROM final
diff --git a/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_callback_wall_time_lists.sql b/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_callback_wall_time_lists.sql
new file mode 100644
index 0000000000..7ec73485ff
--- /dev/null
+++ b/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_callback_wall_time_lists.sql
@@ -0,0 +1,24 @@
+MODEL (
+ description """
+ One row per merchant zone with its callbacks' wall times in callback order, a NULL for each
+ callback without one
+ """,
+ tags [edge_case],
+ columns (
+ merchant_zone (type VARCHAR, nullable false, audits [not_null, unique]),
+ wall_times (type ARRAY),
+ ),
+);
+
+WITH final AS (
+ SELECT
+ g.merchant_zone,
+ ARRAY_AGG(IFF(g.callback_id IS NOT NULL, g.local_wall_time, NULL))
+ WITHIN GROUP (ORDER BY g.callback_id)::ARRAY AS wall_times
+ FROM __ref("stg_edge_gateway_callbacks") AS g
+ GROUP BY
+ g.merchant_zone
+)
+
+SELECT *
+FROM final
diff --git a/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_callback_zone_words.sql b/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_callback_zone_words.sql
new file mode 100644
index 0000000000..911daae5ac
--- /dev/null
+++ b/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_callback_zone_words.sql
@@ -0,0 +1,25 @@
+MODEL (
+ description """
+ One row per gateway callback with the words its zone shares with a fixed list, and its zoned
+ time kept in an object that keeps NULL values
+ """,
+ tags [edge_case],
+ columns (
+ callback_id (type VARCHAR, nullable false, audits [not_null, unique]),
+ shared_word_count (type NUMBER(38, 0)),
+ event_json (type VARCHAR),
+ ),
+);
+
+WITH final AS (
+ SELECT
+ g.callback_id,
+ ARRAY_SIZE(
+ ARRAY_INTERSECTION(SPLIT(UPPER(REPLACE(g.merchant_zone, '/', ' ')), ' '), ['EUROPE', 'ASIA'])
+ )::NUMBER(38, 0) AS shared_word_count,
+ TO_JSON(OBJECT_CONSTRUCT_KEEP_NULL('at', g.event_at, 'zone', g.merchant_zone)) AS event_json
+ FROM __ref("stg_edge_gateway_callbacks") AS g
+)
+
+SELECT *
+FROM final
diff --git a/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_callback_zoned_dates.sql b/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_callback_zoned_dates.sql
new file mode 100644
index 0000000000..408dca3d46
--- /dev/null
+++ b/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_callback_zoned_dates.sql
@@ -0,0 +1,21 @@
+MODEL (
+ description """
+ One row per gateway callback whose zoned time falls on or after 1 March 2026 as a date
+ """,
+ tags [edge_case],
+ columns (
+ callback_id (type VARCHAR, nullable false, audits [not_null, unique]),
+ event_date (type DATE),
+ ),
+);
+
+WITH final AS (
+ SELECT
+ g.callback_id,
+ TO_DATE(g.event_at) AS event_date
+ FROM __ref("stg_edge_gateway_callbacks") AS g
+ WHERE TO_DATE(g.event_at) >= '2026-03-01'::DATE
+)
+
+SELECT *
+FROM final
diff --git a/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_check_any_amounts.sql b/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_check_any_amounts.sql
new file mode 100644
index 0000000000..c56974099f
--- /dev/null
+++ b/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_check_any_amounts.sql
@@ -0,0 +1,23 @@
+MODEL (
+ description """
+ One row per check group with any one of its amounts, and whether all amounts in the group
+ agree
+ """,
+ tags [edge_case],
+ columns (
+ group_code (type VARCHAR, nullable false, audits [not_null, unique]),
+ amounts_agree (type BOOLEAN),
+ ),
+);
+
+WITH final AS (
+ SELECT
+ a.group_code,
+ (COUNT(DISTINCT a.amount) <= 1 OR ANY_VALUE(a.amount) IS NOT NULL)::BOOLEAN AS amounts_agree
+ FROM __ref("stg_edge_amount_checks") AS a
+ GROUP BY
+ a.group_code
+)
+
+SELECT *
+FROM final
diff --git a/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_check_bracket_strips.sql b/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_check_bracket_strips.sql
new file mode 100644
index 0000000000..1b0cfe94b5
--- /dev/null
+++ b/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_check_bracket_strips.sql
@@ -0,0 +1,20 @@
+MODEL (
+ description """
+ One row per reconciliation check with bracketed text removed from its key by a lazy pattern
+ """,
+ tags [edge_case],
+ columns (
+ check_id (type VARCHAR, nullable false, audits [not_null, unique]),
+ stripped_key (type VARCHAR),
+ ),
+);
+
+WITH final AS (
+ SELECT
+ a.check_id,
+ TRIM(REGEXP_REPLACE(a.key_text, '\\(.*?\\)', '')) AS stripped_key
+ FROM __ref("stg_edge_amount_checks") AS a
+)
+
+SELECT *
+FROM final
diff --git a/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_check_decoded_keys.sql b/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_check_decoded_keys.sql
new file mode 100644
index 0000000000..47a590c70e
--- /dev/null
+++ b/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_check_decoded_keys.sql
@@ -0,0 +1,28 @@
+MODEL (
+ description """
+ One row per reconciliation check with its key text decoded from Base64 as binary, and the
+ bytes written back as hex
+ """,
+ tags [edge_case],
+ columns (
+ check_id (type VARCHAR, nullable false, audits [not_null, unique]),
+ decoded_key_hex (type VARCHAR),
+ ),
+);
+
+WITH decoded AS (
+ SELECT
+ a.check_id,
+ TRY_BASE64_DECODE_BINARY(a.key_text) AS decoded_key
+ FROM __ref("stg_edge_amount_checks") AS a
+),
+
+final AS (
+ SELECT
+ d.check_id,
+ HEX_ENCODE(d.decoded_key)::VARCHAR AS decoded_key_hex
+ FROM decoded AS d
+)
+
+SELECT *
+FROM final
diff --git a/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_check_distinct_tuples.sql b/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_check_distinct_tuples.sql
new file mode 100644
index 0000000000..13c9f4e74f
--- /dev/null
+++ b/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_check_distinct_tuples.sql
@@ -0,0 +1,22 @@
+MODEL (
+ description """
+ One row per check group with the number of distinct (key text, ratio) arrays in it
+ """,
+ tags [edge_case],
+ columns (
+ group_code (type VARCHAR, nullable false, audits [not_null, unique]),
+ distinct_tuples (type NUMBER(38, 0)),
+ ),
+);
+
+WITH final AS (
+ SELECT
+ a.group_code,
+ COUNT(DISTINCT ARRAY_CONSTRUCT(a.key_text, a.ratio::DOUBLE))::NUMBER(38, 0) AS distinct_tuples
+ FROM __ref("stg_edge_amount_checks") AS a
+ GROUP BY
+ a.group_code
+)
+
+SELECT *
+FROM final
diff --git a/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_check_formatted_dates.sql b/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_check_formatted_dates.sql
new file mode 100644
index 0000000000..e28381dd9d
--- /dev/null
+++ b/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_check_formatted_dates.sql
@@ -0,0 +1,27 @@
+MODEL (
+ description """
+ One row per reconciliation check with its key text read as a date in a format taken from a
+ column
+ """,
+ tags [edge_case],
+ columns (
+ check_id (type VARCHAR, nullable false, audits [not_null, unique]),
+ key_date (type DATE),
+ ),
+);
+
+WITH formats AS (
+ SELECT v.date_format
+ FROM VALUES ('YYYY-MM-DD') AS v(date_format)
+),
+
+final AS (
+ SELECT
+ a.check_id,
+ TRY_TO_DATE(a.key_text, f.date_format) AS key_date
+ FROM __ref("stg_edge_amount_checks") AS a
+ CROSS JOIN formats AS f
+)
+
+SELECT *
+FROM final
diff --git a/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_check_generated_rows.sql b/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_check_generated_rows.sql
new file mode 100644
index 0000000000..4190cb2e51
--- /dev/null
+++ b/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_check_generated_rows.sql
@@ -0,0 +1,33 @@
+MODEL (
+ description """
+ One row counting the rows generated, as many as there are reconciliation checks, with
+ whether every SEQ4 number is non-negative and every draw from UNIFORM over a range of one
+ value is one
+ """,
+ tags [edge_case],
+ columns (
+ summary_id (type VARCHAR, nullable false, audits [not_null, unique]),
+ generated_count (type NUMBER(38, 0)),
+ numbers_are_valid (type BOOLEAN),
+ draws_are_one (type BOOLEAN),
+ ),
+);
+
+WITH generated AS (
+ SELECT
+ SEQ4() AS row_seq,
+ UNIFORM(1, 1, RANDOM()) AS draw
+ FROM TABLE(GENERATOR(ROWCOUNT => (SELECT COUNT(*) FROM __ref("stg_edge_amount_checks"))))
+),
+
+final AS (
+ SELECT
+ 'all' AS summary_id,
+ COUNT(*)::NUMBER(38, 0) AS generated_count,
+ BOOLAND_AGG(r.row_seq >= 0)::BOOLEAN AS numbers_are_valid,
+ BOOLAND_AGG(r.draw = 1)::BOOLEAN AS draws_are_one
+ FROM generated AS r
+)
+
+SELECT *
+FROM final
diff --git a/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_check_group_flags.sql b/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_check_group_flags.sql
new file mode 100644
index 0000000000..e3f86ab5ca
--- /dev/null
+++ b/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_check_group_flags.sql
@@ -0,0 +1,29 @@
+MODEL (
+ description """
+ One row per reconciliation check flagging a group code outside the groups with a positive
+ amount
+ """,
+ tags [edge_case],
+ columns (
+ check_id (type VARCHAR, nullable false, audits [not_null, unique]),
+ is_unpaid_group (type BOOLEAN),
+ ),
+);
+
+WITH paid_groups AS (
+ SELECT DISTINCT b.group_code
+ FROM __ref("stg_edge_amount_checks") AS b
+ WHERE b.amount > 0 AND b.group_code IS NOT NULL
+),
+
+final AS (
+ SELECT
+ a.check_id,
+ (a.group_code NOT IN (
+ SELECT p.group_code FROM paid_groups AS p
+ ))::BOOLEAN AS is_unpaid_group
+ FROM __ref("stg_edge_amount_checks") AS a
+)
+
+SELECT *
+FROM final
diff --git a/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_check_group_key_lists.sql b/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_check_group_key_lists.sql
new file mode 100644
index 0000000000..2241c63a64
--- /dev/null
+++ b/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_check_group_key_lists.sql
@@ -0,0 +1,21 @@
+MODEL (
+ description """
+ One row per reconciliation check with the number of key texts in its group, from a windowed
+ ARRAY_AGG
+ """,
+ tags [edge_case],
+ columns (
+ check_id (type VARCHAR, nullable false, audits [not_null, unique]),
+ group_key_count (type NUMBER(38, 0)),
+ ),
+);
+
+WITH final AS (
+ SELECT
+ a.check_id,
+ ARRAY_SIZE(ARRAY_AGG(a.key_text) OVER (PARTITION BY a.group_code))::NUMBER(38, 0) AS group_key_count
+ FROM __ref("stg_edge_amount_checks") AS a
+)
+
+SELECT *
+FROM final
diff --git a/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_check_key_list_edits.sql b/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_check_key_list_edits.sql
new file mode 100644
index 0000000000..d24bcf3cc7
--- /dev/null
+++ b/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_check_key_list_edits.sql
@@ -0,0 +1,25 @@
+MODEL (
+ description """
+ One row per reconciliation check with its key parts less a fixed part, with its narrow key
+ appended, and an object of its narrow key with the ratio inserted
+ """,
+ tags [edge_case],
+ columns (
+ check_id (type VARCHAR, nullable false, audits [not_null, unique]),
+ kept_part_count (type NUMBER(38, 0)),
+ appended_part_count (type NUMBER(38, 0)),
+ check_json (type VARCHAR),
+ ),
+);
+
+WITH final AS (
+ SELECT
+ a.check_id,
+ ARRAY_SIZE(ARRAY_EXCEPT(SPLIT(a.key_text, ','), ['7']))::NUMBER(38, 0) AS kept_part_count,
+ ARRAY_SIZE(ARRAY_APPEND(SPLIT(a.key_text, ','), a.narrow_key))::NUMBER(38, 0) AS appended_part_count,
+ TO_JSON(OBJECT_INSERT(OBJECT_CONSTRUCT('k', a.narrow_key), 'r', a.ratio)) AS check_json
+ FROM __ref("stg_edge_amount_checks") AS a
+)
+
+SELECT *
+FROM final
diff --git a/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_check_key_parts.sql b/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_check_key_parts.sql
new file mode 100644
index 0000000000..bbffb38a39
--- /dev/null
+++ b/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_check_key_parts.sql
@@ -0,0 +1,21 @@
+MODEL (
+ description """
+ One row per reconciliation check with the parts of its key text, split on commas, read as
+ integers through a typed lambda
+ """,
+ tags [edge_case],
+ columns (
+ check_id (type VARCHAR, nullable false, audits [not_null, unique]),
+ key_parts (type ARRAY),
+ ),
+);
+
+WITH final AS (
+ SELECT
+ a.check_id,
+ TRANSFORM(STRTOK_TO_ARRAY(a.key_text, ','), part VARCHAR -> TRY_TO_NUMBER(part))::ARRAY AS key_parts
+ FROM __ref("stg_edge_amount_checks") AS a
+)
+
+SELECT *
+FROM final
diff --git a/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_check_key_rewrites.sql b/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_check_key_rewrites.sql
new file mode 100644
index 0000000000..ef8987b951
--- /dev/null
+++ b/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_check_key_rewrites.sql
@@ -0,0 +1,25 @@
+MODEL (
+ description """
+ One row per reconciliation check with numbers of three or more digits in its key text
+ replaced by its group's parts
+ """,
+ tags [edge_case],
+ columns (
+ check_id (type VARCHAR, nullable false, audits [not_null, unique]),
+ rewritten_key (type VARCHAR),
+ ),
+);
+
+WITH final AS (
+ SELECT
+ a.check_id,
+ REGEXP_REPLACE(
+ a.key_text,
+ '\\d{3,}(,\\d{3,})*',
+ ARRAY_TO_STRING(SPLIT(a.group_code, '-'), ',')
+ ) AS rewritten_key
+ FROM __ref("stg_edge_amount_checks") AS a
+)
+
+SELECT *
+FROM final
diff --git a/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_check_label_lookups.sql b/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_check_label_lookups.sql
new file mode 100644
index 0000000000..1afabe24e4
--- /dev/null
+++ b/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_check_label_lookups.sql
@@ -0,0 +1,21 @@
+MODEL (
+ description """
+ One row per reconciliation check with a label looked up in an object by the first part of
+ its key text
+ """,
+ tags [edge_case],
+ columns (
+ check_id (type VARCHAR, nullable false, audits [not_null, unique]),
+ key_label (type VARCHAR),
+ ),
+);
+
+WITH final AS (
+ SELECT
+ a.check_id,
+ OBJECT_CONSTRUCT('7', 'seven', '101', 'one hundred and one')[SPLIT(a.key_text, ',')[0]]::VARCHAR AS key_label
+ FROM __ref("stg_edge_amount_checks") AS a
+)
+
+SELECT *
+FROM final
diff --git a/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_check_last_known_keys.sql b/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_check_last_known_keys.sql
new file mode 100644
index 0000000000..319af35b2b
--- /dev/null
+++ b/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_check_last_known_keys.sql
@@ -0,0 +1,27 @@
+MODEL (
+ description """
+ One row per reconciliation check with the last earlier key text of its group that holds a
+ comma, read with IFF inside LAST_VALUE ... IGNORE NULLS
+ """,
+ tags [edge_case],
+ columns (
+ check_id (type VARCHAR, nullable false, audits [not_null, unique]),
+ last_listed_key (type VARCHAR),
+ ),
+);
+
+WITH final AS (
+ SELECT
+ a.check_id,
+ LAST_VALUE(
+ IFF(CONTAINS(a.key_text, ','), a.key_text, NULL) IGNORE NULLS
+ ) OVER (
+ PARTITION BY a.group_code
+ ORDER BY a.check_id
+ ROWS BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW
+ )::VARCHAR AS last_listed_key
+ FROM __ref("stg_edge_amount_checks") AS a
+)
+
+SELECT *
+FROM final
diff --git a/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_check_local_times.sql b/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_check_local_times.sql
new file mode 100644
index 0000000000..1dc0d4a19b
--- /dev/null
+++ b/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_check_local_times.sql
@@ -0,0 +1,27 @@
+MODEL (
+ description """
+ One row per reconciliation check with a fixed local time written as text and cast to
+ TIMESTAMP_LTZ
+ """,
+ tags [edge_case],
+ columns (
+ check_id (type VARCHAR, nullable false, audits [not_null, unique]),
+ noted_at (type TIMESTAMP_LTZ),
+ ),
+);
+
+WITH noted AS (
+ SELECT v.noted_text
+ FROM VALUES ('2026-03-04 12:00:00') AS v(noted_text)
+),
+
+final AS (
+ SELECT
+ a.check_id,
+ CAST(c.noted_text AS TIMESTAMP_LTZ) AS noted_at
+ FROM __ref("stg_edge_amount_checks") AS a
+ CROSS JOIN noted AS c
+)
+
+SELECT *
+FROM final
diff --git a/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_check_minute_times.sql b/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_check_minute_times.sql
new file mode 100644
index 0000000000..a2cb3b4613
--- /dev/null
+++ b/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_check_minute_times.sql
@@ -0,0 +1,21 @@
+MODEL (
+ description """
+ One row per reconciliation check with a fixed time written without seconds and cast to
+ TIMESTAMP_NTZ
+ """,
+ tags [edge_case],
+ columns (
+ check_id (type VARCHAR, nullable false, audits [not_null, unique]),
+ opened_at (type TIMESTAMP_NTZ),
+ ),
+);
+
+WITH final AS (
+ SELECT
+ a.check_id,
+ CAST('2024-05-01 15:00' AS TIMESTAMP_NTZ) AS opened_at
+ FROM __ref("stg_edge_amount_checks") AS a
+)
+
+SELECT *
+FROM final
diff --git a/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_check_month_starts.sql b/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_check_month_starts.sql
new file mode 100644
index 0000000000..ce28c137a3
--- /dev/null
+++ b/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_check_month_starts.sql
@@ -0,0 +1,27 @@
+MODEL (
+ description """
+ One row per fixed period, the first of last month beside text in one VALUES column
+ """,
+ tags [edge_case],
+ columns (
+ period_id (type VARCHAR, nullable false, audits [not_null, unique]),
+ period_start (type VARCHAR),
+ ),
+);
+
+WITH periods AS (
+ SELECT v.period_id, v.period_start
+ FROM VALUES
+ ('P-1', DATEADD('month', -1, DATE_TRUNC('month', '2026-03-15'::DATE))),
+ ('P-2', '2026-01-01') AS v(period_id, period_start)
+),
+
+final AS (
+ SELECT
+ p.period_id,
+ p.period_start::VARCHAR AS period_start
+ FROM periods AS p
+)
+
+SELECT *
+FROM final
diff --git a/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_check_note_unions.sql b/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_check_note_unions.sql
new file mode 100644
index 0000000000..3e83e36c73
--- /dev/null
+++ b/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_check_note_unions.sql
@@ -0,0 +1,29 @@
+MODEL (
+ description """
+ One row per reconciliation check and source, with a note column that is NULL in every branch
+ of a UNION ALL BY NAME
+ """,
+ tags [edge_case],
+ columns (
+ note_row_id (type VARCHAR, nullable false, audits [not_null, unique]),
+ note (type VARCHAR),
+ ),
+);
+
+WITH notes AS (
+ SELECT a.check_id || '~left' AS note_row_id, NULL AS note
+ FROM __ref("stg_edge_amount_checks") AS a
+ UNION ALL BY NAME
+ SELECT a.check_id || '~right' AS note_row_id, NULL AS note
+ FROM __ref("stg_edge_amount_checks") AS a
+),
+
+final AS (
+ SELECT
+ u.note_row_id,
+ u.note::VARCHAR AS note
+ FROM notes AS u
+)
+
+SELECT *
+FROM final
diff --git a/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_check_number_arrays.sql b/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_check_number_arrays.sql
new file mode 100644
index 0000000000..0b88fa25a6
--- /dev/null
+++ b/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_check_number_arrays.sql
@@ -0,0 +1,21 @@
+MODEL (
+ description """
+ One row per reconciliation check with its amount in an array cast through the structured
+ type ARRAY(NUMBER(38, 10))
+ """,
+ tags [edge_case],
+ columns (
+ check_id (type VARCHAR, nullable false, audits [not_null, unique]),
+ amounts (type ARRAY),
+ ),
+);
+
+WITH final AS (
+ SELECT
+ a.check_id,
+ CAST(CAST(ARRAY_CONSTRUCT(a.amount) AS ARRAY(NUMBER(38, 10))) AS ARRAY) AS amounts
+ FROM __ref("stg_edge_amount_checks") AS a
+)
+
+SELECT *
+FROM final
diff --git a/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_check_number_labels.sql b/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_check_number_labels.sql
new file mode 100644
index 0000000000..462b8a50d6
--- /dev/null
+++ b/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_check_number_labels.sql
@@ -0,0 +1,20 @@
+MODEL (
+ description """
+ One row per reconciliation check with a fixed number cast to text as a label
+ """,
+ tags [edge_case],
+ columns (
+ check_id (type VARCHAR, nullable false, audits [not_null, unique]),
+ cluster_label (type VARCHAR),
+ ),
+);
+
+WITH final AS (
+ SELECT
+ a.check_id,
+ CAST(501 AS VARCHAR) AS cluster_label
+ FROM __ref("stg_edge_amount_checks") AS a
+)
+
+SELECT *
+FROM final
diff --git a/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_check_pair_filters.sql b/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_check_pair_filters.sql
new file mode 100644
index 0000000000..e27d5f3421
--- /dev/null
+++ b/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_check_pair_filters.sql
@@ -0,0 +1,22 @@
+MODEL (
+ description """
+ One row per reconciliation check whose key text holds a listed number, kept only for listed
+ (check, group) pairs
+ """,
+ tags [edge_case],
+ columns (
+ check_id (type VARCHAR, nullable false, audits [not_null, unique]),
+ has_seven (type BOOLEAN),
+ ),
+);
+
+WITH final AS (
+ SELECT
+ a.check_id,
+ ARRAY_CONTAINS('7'::VARIANT, SPLIT(a.key_text, ','))::BOOLEAN AS has_seven
+ FROM __ref("stg_edge_amount_checks") AS a
+ WHERE (a.check_id, a.group_code) IN (('AC-01', 'G-1'), ('AC-03', 'G-2'))
+)
+
+SELECT *
+FROM final
diff --git a/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_check_pattern_matches.sql b/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_check_pattern_matches.sql
new file mode 100644
index 0000000000..b499317b2b
--- /dev/null
+++ b/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_check_pattern_matches.sql
@@ -0,0 +1,21 @@
+MODEL (
+ description """
+ One row per reconciliation check with whether its key text matches its group code read as a
+ pattern
+ """,
+ tags [edge_case],
+ columns (
+ check_id (type VARCHAR, nullable false, audits [not_null, unique]),
+ matches_group (type BOOLEAN),
+ ),
+);
+
+WITH final AS (
+ SELECT
+ a.check_id,
+ REGEXP_LIKE(a.key_text, a.group_code)::BOOLEAN AS matches_group
+ FROM __ref("stg_edge_amount_checks") AS a
+)
+
+SELECT *
+FROM final
diff --git a/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_check_reduced_keys.sql b/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_check_reduced_keys.sql
new file mode 100644
index 0000000000..dbc906643a
--- /dev/null
+++ b/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_check_reduced_keys.sql
@@ -0,0 +1,20 @@
+MODEL (
+ description """
+ One row per reconciliation check with the parts of its key text folded onto its group code
+ """,
+ tags [edge_case],
+ columns (
+ check_id (type VARCHAR, nullable false, audits [not_null, unique]),
+ folded_key (type VARCHAR),
+ ),
+);
+
+WITH final AS (
+ SELECT
+ a.check_id,
+ REDUCE(SPLIT(a.key_text, ','), a.group_code, (acc, part) -> acc || '/' || part)::VARCHAR AS folded_key
+ FROM __ref("stg_edge_amount_checks") AS a
+)
+
+SELECT *
+FROM final
diff --git a/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_check_sparse_arrays.sql b/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_check_sparse_arrays.sql
new file mode 100644
index 0000000000..2d50665bd8
--- /dev/null
+++ b/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_check_sparse_arrays.sql
@@ -0,0 +1,21 @@
+MODEL (
+ description """
+ One row per reconciliation check with its key text and group code in an array, read back as
+ text, where a missing key leaves a hole
+ """,
+ tags [edge_case],
+ columns (
+ check_id (type VARCHAR, nullable false, audits [not_null, unique]),
+ pair_text (type VARCHAR),
+ ),
+);
+
+WITH final AS (
+ SELECT
+ a.check_id,
+ ARRAY_CONSTRUCT(a.key_text, a.group_code)::VARCHAR AS pair_text
+ FROM __ref("stg_edge_amount_checks") AS a
+)
+
+SELECT *
+FROM final
diff --git a/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_check_text_arrays.sql b/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_check_text_arrays.sql
new file mode 100644
index 0000000000..f6e14f9941
--- /dev/null
+++ b/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_check_text_arrays.sql
@@ -0,0 +1,21 @@
+MODEL (
+ description """
+ One row per reconciliation check with its key text split into an array cast through the
+ structured type ARRAY(VARCHAR)
+ """,
+ tags [edge_case],
+ columns (
+ check_id (type VARCHAR, nullable false, audits [not_null, unique]),
+ key_parts (type ARRAY),
+ ),
+);
+
+WITH final AS (
+ SELECT
+ a.check_id,
+ CAST(CAST(SPLIT(a.key_text, ',') AS ARRAY(VARCHAR)) AS ARRAY) AS key_parts
+ FROM __ref("stg_edge_amount_checks") AS a
+)
+
+SELECT *
+FROM final
diff --git a/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_check_unnamed_labels.sql b/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_check_unnamed_labels.sql
new file mode 100644
index 0000000000..18659ec227
--- /dev/null
+++ b/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_check_unnamed_labels.sql
@@ -0,0 +1,29 @@
+MODEL (
+ description """
+ One row per reconciliation check with a fixed label left unaliased, read back by the name
+ Snowflake gives it
+ """,
+ tags [edge_case],
+ columns (
+ check_id (type VARCHAR, nullable false, audits [not_null, unique]),
+ label (type VARCHAR),
+ ),
+);
+
+WITH unnamed AS (
+ -- No alias: Snowflake names this column 'FIXED', quotes included.
+ SELECT
+ a.check_id,
+ 'fixed'
+ FROM __ref("stg_edge_amount_checks") AS a
+),
+
+final AS (
+ SELECT
+ u.check_id,
+ u."'FIXED'"::VARCHAR AS label
+ FROM unnamed AS u
+)
+
+SELECT *
+FROM final
diff --git a/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_check_variant_branches.sql b/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_check_variant_branches.sql
new file mode 100644
index 0000000000..3a026b86e5
--- /dev/null
+++ b/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_check_variant_branches.sql
@@ -0,0 +1,37 @@
+MODEL (
+ description """
+ One row per reconciliation check with a branch on a path of its JSON text, whether two
+ arrays holding a DATE differ, and the group's largest ratio held as VARIANT
+ """,
+ tags [edge_case],
+ columns (
+ check_id (type VARCHAR, nullable false, audits [not_null, unique]),
+ ratio_branch (type NUMBER(38, 0)),
+ dates_differ (type BOOLEAN),
+ largest_ratio_text (type VARCHAR),
+ ),
+);
+
+WITH largest AS (
+ SELECT
+ a.group_code,
+ MAX(TO_VARIANT(a.ratio)) AS largest_ratio
+ FROM __ref("stg_edge_amount_checks") AS a
+ GROUP BY
+ a.group_code
+),
+
+final AS (
+ SELECT
+ a.check_id,
+ CASE PARSE_JSON(a.json_text):r WHEN 0.1 THEN 1 ELSE 2 END AS ratio_branch,
+ (ARRAY_CONSTRUCT(a.check_id, TO_DATE('2026-01-01')) <> ARRAY_CONSTRUCT(a.check_id, TO_DATE('2026-01-02')))::BOOLEAN
+ AS dates_differ,
+ m.largest_ratio::VARCHAR AS largest_ratio_text
+ FROM __ref("stg_edge_amount_checks") AS a
+ INNER JOIN largest AS m
+ ON a.group_code = m.group_code
+)
+
+SELECT *
+FROM final
diff --git a/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_check_wide_sums.sql b/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_check_wide_sums.sql
new file mode 100644
index 0000000000..6b01712f2f
--- /dev/null
+++ b/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_check_wide_sums.sql
@@ -0,0 +1,26 @@
+MODEL (
+ description """
+ One row per reconciliation check and value kind, the amount plus one beside the wide key in
+ one UNION ALL column
+ """,
+ tags [edge_case],
+ columns (
+ key_row_id (type VARCHAR, nullable false, audits [not_null, unique]),
+ key_value (type NUMBER(38, 2)),
+ ),
+);
+
+WITH final AS (
+ SELECT
+ a.check_id || '~amount' AS key_row_id,
+ a.amount + 1 AS key_value
+ FROM __ref("stg_edge_amount_checks") AS a
+ UNION ALL
+ SELECT
+ a.check_id || '~wide' AS key_row_id,
+ a.wide_key AS key_value
+ FROM __ref("stg_edge_amount_checks") AS a
+)
+
+SELECT *
+FROM final
diff --git a/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_check_xml_checks.sql b/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_check_xml_checks.sql
new file mode 100644
index 0000000000..a11045a25a
--- /dev/null
+++ b/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_check_xml_checks.sql
@@ -0,0 +1,23 @@
+MODEL (
+ description """
+ One row per reconciliation check with its key text stripped of its group code read as a
+ pattern, and CHECK_XML of the key text
+ """,
+ tags [edge_case],
+ columns (
+ check_id (type VARCHAR, nullable false, audits [not_null, unique]),
+ stripped_key (type VARCHAR),
+ xml_error (type VARCHAR),
+ ),
+);
+
+WITH final AS (
+ SELECT
+ a.check_id,
+ REGEXP_REPLACE(a.key_text, a.group_code, '') AS stripped_key,
+ CHECK_XML(a.key_text)::VARCHAR AS xml_error
+ FROM __ref("stg_edge_amount_checks") AS a
+)
+
+SELECT *
+FROM final
diff --git a/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_check_zoned_literals.sql b/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_check_zoned_literals.sql
new file mode 100644
index 0000000000..0801218153
--- /dev/null
+++ b/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_check_zoned_literals.sql
@@ -0,0 +1,21 @@
+MODEL (
+ description """
+ One row per reconciliation check with a fixed zoned time written in ISO form with a T and
+ +00:00
+ """,
+ tags [edge_case],
+ columns (
+ check_id (type VARCHAR, nullable false, audits [not_null, unique]),
+ cutover_at (type TIMESTAMP_TZ),
+ ),
+);
+
+WITH final AS (
+ SELECT
+ a.check_id,
+ CAST('2026-03-04T12:00:02+00:00' AS TIMESTAMPTZ) AS cutover_at
+ FROM __ref("stg_edge_amount_checks") AS a
+)
+
+SELECT *
+FROM final
diff --git a/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_key_number_reads.sql b/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_key_number_reads.sql
new file mode 100644
index 0000000000..35eaab706a
--- /dev/null
+++ b/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_key_number_reads.sql
@@ -0,0 +1,20 @@
+MODEL (
+ description """
+ One row per reconciliation check with its wide key read back with TO_NUMBER
+ """,
+ tags [edge_case],
+ columns (
+ check_id (type VARCHAR, nullable false, audits [not_null, unique]),
+ wide_key_number (type NUMBER(38, 0)),
+ ),
+);
+
+WITH final AS (
+ SELECT
+ a.check_id,
+ TO_NUMBER(a.wide_key)::NUMBER(38, 0) AS wide_key_number
+ FROM __ref("stg_edge_amount_checks") AS a
+)
+
+SELECT *
+FROM final
diff --git a/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_key_rank_offsets.sql b/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_key_rank_offsets.sql
new file mode 100644
index 0000000000..a8de6652c0
--- /dev/null
+++ b/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_key_rank_offsets.sql
@@ -0,0 +1,23 @@
+MODEL (
+ description """
+ One row per reconciliation check with a rank one past its wide key or a fallback, and its
+ wide key read back with TRY_TO_NUMBER
+ """,
+ tags [edge_case],
+ columns (
+ check_id (type VARCHAR, nullable false, audits [not_null, unique]),
+ candidate_rank (type INT),
+ wide_key_number (type NUMBER(38, 0)),
+ ),
+);
+
+WITH final AS (
+ SELECT
+ a.check_id,
+ 1 + COALESCE(a.wide_key, 999) AS candidate_rank,
+ TRY_TO_NUMBER(a.wide_key)::NUMBER(38, 0) AS wide_key_number
+ FROM __ref("stg_edge_amount_checks") AS a
+)
+
+SELECT *
+FROM final
diff --git a/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_ledger_quantity_steps.sql b/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_ledger_quantity_steps.sql
new file mode 100644
index 0000000000..62bdfa9078
--- /dev/null
+++ b/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_ledger_quantity_steps.sql
@@ -0,0 +1,22 @@
+MODEL (
+ description """
+ One row per order with its largest quantity text, read as a number, less one
+ """,
+ tags [edge_case],
+ columns (
+ order_ref (type VARCHAR, nullable false, audits [not_null, unique]),
+ quantity_less_one (type NUMBER(38, 6)),
+ ),
+);
+
+WITH final AS (
+ SELECT
+ l.order_ref,
+ (MAX(l.quantity_text) - 1)::NUMBER(38, 6) AS quantity_less_one
+ FROM __ref("stg_edge_ledger_entries") AS l
+ GROUP BY
+ l.order_ref
+)
+
+SELECT *
+FROM final
diff --git a/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_ratio_array_bounds.sql b/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_ratio_array_bounds.sql
new file mode 100644
index 0000000000..0c36a9b06d
--- /dev/null
+++ b/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_ratio_array_bounds.sql
@@ -0,0 +1,29 @@
+MODEL (
+ description """
+ One row per check group with bounds read from the array of its FLOAT ratios
+ """,
+ tags [edge_case],
+ columns (
+ group_code (type VARCHAR, nullable false, audits [not_null, unique]),
+ lower_bound (type FLOAT),
+ ),
+);
+
+WITH ratio_arrays AS (
+ SELECT
+ a.group_code,
+ ARRAY_AGG(a.ratio) WITHIN GROUP (ORDER BY a.check_id) AS ratios
+ FROM __ref("stg_edge_amount_checks") AS a
+ GROUP BY
+ a.group_code
+),
+
+final AS (
+ SELECT
+ r.group_code,
+ (-ARRAY_MAX(r.ratios) - 10.0)::FLOAT AS lower_bound
+ FROM ratio_arrays AS r
+)
+
+SELECT *
+FROM final
diff --git a/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_ratio_array_casts.sql b/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_ratio_array_casts.sql
new file mode 100644
index 0000000000..570bd9ddb9
--- /dev/null
+++ b/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_ratio_array_casts.sql
@@ -0,0 +1,20 @@
+MODEL (
+ description """
+ One row per reconciliation check with its FLOAT ratio in an array cast to ARRAY
+ """,
+ tags [edge_case],
+ columns (
+ check_id (type VARCHAR, nullable false, audits [not_null, unique]),
+ ratio_count (type NUMBER(38, 0)),
+ ),
+);
+
+WITH final AS (
+ SELECT
+ a.check_id,
+ ARRAY_SIZE(CAST(ARRAY_CONSTRUCT(a.ratio) AS ARRAY))::NUMBER(38, 0) AS ratio_count
+ FROM __ref("stg_edge_amount_checks") AS a
+)
+
+SELECT *
+FROM final
diff --git a/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_ratio_array_positions.sql b/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_ratio_array_positions.sql
new file mode 100644
index 0000000000..e906aeaa88
--- /dev/null
+++ b/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_ratio_array_positions.sql
@@ -0,0 +1,31 @@
+MODEL (
+ description """
+ One row per check group with the last FLOAT ratio of the group read by position from an
+ ordered array
+ """,
+ tags [edge_case],
+ columns (
+ group_code (type VARCHAR, nullable false, audits [not_null, unique]),
+ last_ratio (type FLOAT),
+ ),
+);
+
+WITH ratio_arrays AS (
+ SELECT
+ a.group_code,
+ ARRAY_AGG(a.ratio) WITHIN GROUP (ORDER BY a.check_id) AS ratios,
+ COUNT(a.ratio) AS ratio_count
+ FROM __ref("stg_edge_amount_checks") AS a
+ GROUP BY
+ a.group_code
+),
+
+final AS (
+ SELECT
+ r.group_code,
+ r.ratios[r.ratio_count - 1]::FLOAT AS last_ratio
+ FROM ratio_arrays AS r
+)
+
+SELECT *
+FROM final
diff --git a/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_ratio_averages.sql b/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_ratio_averages.sql
new file mode 100644
index 0000000000..fb95716a5a
--- /dev/null
+++ b/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_ratio_averages.sql
@@ -0,0 +1,23 @@
+MODEL (
+ description """
+ One row per check group with the average of its FLOAT ratios, whose summation order the
+ engines do not share
+ """,
+ tags [edge_case],
+ columns (
+ group_code (type VARCHAR, nullable false, audits [not_null, unique]),
+ average_ratio (type FLOAT),
+ ),
+);
+
+WITH final AS (
+ SELECT
+ a.group_code,
+ AVG(a.ratio)::FLOAT AS average_ratio
+ FROM __ref("stg_edge_amount_checks") AS a
+ GROUP BY
+ a.group_code
+)
+
+SELECT *
+FROM final
diff --git a/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_ratio_fixed_scales.sql b/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_ratio_fixed_scales.sql
new file mode 100644
index 0000000000..3618a2f9d2
--- /dev/null
+++ b/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_ratio_fixed_scales.sql
@@ -0,0 +1,20 @@
+MODEL (
+ description """
+ One row per reconciliation check with its FLOAT ratio cast to NUMBER(38, 10)
+ """,
+ tags [edge_case],
+ columns (
+ check_id (type VARCHAR, nullable false, audits [not_null, unique]),
+ ratio_fixed (type NUMBER(38, 10)),
+ ),
+);
+
+WITH final AS (
+ SELECT
+ a.check_id,
+ CAST(a.ratio AS NUMBER(38, 10)) AS ratio_fixed
+ FROM __ref("stg_edge_amount_checks") AS a
+)
+
+SELECT *
+FROM final
diff --git a/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_ratio_group_objects.sql b/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_ratio_group_objects.sql
new file mode 100644
index 0000000000..8fda3db42c
--- /dev/null
+++ b/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_ratio_group_objects.sql
@@ -0,0 +1,25 @@
+MODEL (
+ description """
+ One row per check group with its FLOAT ratios in an object keyed by check, and the number of
+ distinct ratios held as VARIANT
+ """,
+ tags [edge_case],
+ columns (
+ group_code (type VARCHAR, nullable false, audits [not_null, unique]),
+ ratio_json (type VARCHAR),
+ distinct_ratio_count (type NUMBER(38, 0)),
+ ),
+);
+
+WITH final AS (
+ SELECT
+ a.group_code,
+ TO_JSON(OBJECT_AGG(a.check_id, a.ratio)) AS ratio_json,
+ COUNT(DISTINCT TO_VARIANT(a.ratio))::NUMBER(38, 0) AS distinct_ratio_count
+ FROM __ref("stg_edge_amount_checks") AS a
+ GROUP BY
+ a.group_code
+)
+
+SELECT *
+FROM final
diff --git a/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_ratio_hashes.sql b/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_ratio_hashes.sql
new file mode 100644
index 0000000000..352df789d2
--- /dev/null
+++ b/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_ratio_hashes.sql
@@ -0,0 +1,21 @@
+MODEL (
+ description """
+ One row per reconciliation check with whether its FLOAT ratio hashes like itself read back
+ from text
+ """,
+ tags [edge_case],
+ columns (
+ check_id (type VARCHAR, nullable false, audits [not_null, unique]),
+ hash_is_stable (type BOOLEAN),
+ ),
+);
+
+WITH final AS (
+ SELECT
+ a.check_id,
+ (HASH(a.ratio) = HASH(a.ratio::VARCHAR::FLOAT))::BOOLEAN AS hash_is_stable
+ FROM __ref("stg_edge_amount_checks") AS a
+)
+
+SELECT *
+FROM final
diff --git a/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_ratio_identity_objects.sql b/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_ratio_identity_objects.sql
new file mode 100644
index 0000000000..10b81641a3
--- /dev/null
+++ b/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_ratio_identity_objects.sql
@@ -0,0 +1,28 @@
+MODEL (
+ description """
+ One row per reconciliation check with a positive ratio, read back from an object built over
+ an array holding the FLOAT ratio
+ """,
+ tags [edge_case],
+ columns (
+ check_id (type VARCHAR, nullable false, audits [not_null, unique]),
+ identity_kind (type VARCHAR),
+ ),
+);
+
+WITH final AS (
+ SELECT
+ a.check_id,
+ f.value:kind::VARCHAR AS identity_kind
+ FROM __ref("stg_edge_amount_checks") AS a,
+ LATERAL FLATTEN(INPUT => ARRAY_CONSTRUCT_COMPACT(
+ IFF(
+ a.ratio > 0,
+ OBJECT_CONSTRUCT('kind', 'ratio', 'identity', ARRAY_CONSTRUCT(a.check_id, a.ratio)),
+ NULL
+ )
+ )) AS f
+)
+
+SELECT *
+FROM final
diff --git a/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_ratio_ignore_case_reads.sql b/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_ratio_ignore_case_reads.sql
new file mode 100644
index 0000000000..38f4e3001f
--- /dev/null
+++ b/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_ratio_ignore_case_reads.sql
@@ -0,0 +1,26 @@
+MODEL (
+ description """
+ One row per reconciliation check with its FLOAT ratio read back from an object by
+ GET_IGNORE_CASE
+ """,
+ tags [edge_case],
+ columns (
+ check_id (type VARCHAR, nullable false, audits [not_null, unique]),
+ ratio_again (type FLOAT),
+ ),
+);
+
+WITH ratio_objects AS (
+ SELECT a.check_id, OBJECT_CONSTRUCT('Ratio', a.ratio) AS ratio_object
+ FROM __ref("stg_edge_amount_checks") AS a
+),
+
+final AS (
+ SELECT
+ r.check_id,
+ GET_IGNORE_CASE(r.ratio_object, 'ratio')::FLOAT AS ratio_again
+ FROM ratio_objects AS r
+)
+
+SELECT *
+FROM final
diff --git a/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_ratio_object_differences.sql b/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_ratio_object_differences.sql
new file mode 100644
index 0000000000..9089f9445a
--- /dev/null
+++ b/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_ratio_object_differences.sql
@@ -0,0 +1,27 @@
+MODEL (
+ description """
+ One row per reconciliation check whose ratio object differs from a fixed ratio object
+ """,
+ tags [edge_case],
+ columns (
+ check_id (type VARCHAR, nullable false, audits [not_null, unique]),
+ check_json (type VARCHAR),
+ ),
+);
+
+WITH differences AS (
+ SELECT a.check_id, OBJECT_CONSTRUCT('r', a.ratio) AS ratio_object
+ FROM __ref("stg_edge_amount_checks") AS a
+ EXCEPT
+ SELECT 'AC-01' AS check_id, OBJECT_CONSTRUCT('r', 0.1::FLOAT) AS ratio_object
+),
+
+final AS (
+ SELECT
+ d.check_id,
+ TO_JSON(d.ratio_object) AS check_json
+ FROM differences AS d
+)
+
+SELECT *
+FROM final
diff --git a/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_ratio_object_flags.sql b/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_ratio_object_flags.sql
new file mode 100644
index 0000000000..fd231e2cbd
--- /dev/null
+++ b/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_ratio_object_flags.sql
@@ -0,0 +1,25 @@
+MODEL (
+ description """
+ One row per reconciliation check with its FLOAT ratio read back from an object as a BOOLEAN
+ """,
+ tags [edge_case],
+ columns (
+ check_id (type VARCHAR, nullable false, audits [not_null, unique]),
+ ratio_flag (type BOOLEAN),
+ ),
+);
+
+WITH ratio_objects AS (
+ SELECT a.check_id, OBJECT_CONSTRUCT('r', a.ratio) AS ratio_object
+ FROM __ref("stg_edge_amount_checks") AS a
+),
+
+final AS (
+ SELECT
+ r.check_id,
+ r.ratio_object:r::BOOLEAN AS ratio_flag
+ FROM ratio_objects AS r
+)
+
+SELECT *
+FROM final
diff --git a/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_ratio_object_inserts.sql b/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_ratio_object_inserts.sql
new file mode 100644
index 0000000000..4ad3cd9834
--- /dev/null
+++ b/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_ratio_object_inserts.sql
@@ -0,0 +1,26 @@
+MODEL (
+ description """
+ One row per reconciliation check with a key added to the first object of an array holding
+ its FLOAT ratio
+ """,
+ tags [edge_case],
+ columns (
+ check_id (type VARCHAR, nullable false, audits [not_null, unique]),
+ check_json (type VARCHAR),
+ ),
+);
+
+WITH ratio_arrays AS (
+ SELECT a.check_id, ARRAY_CONSTRUCT(OBJECT_CONSTRUCT('r', a.ratio)) AS ratio_objects
+ FROM __ref("stg_edge_amount_checks") AS a
+),
+
+final AS (
+ SELECT
+ r.check_id,
+ TO_JSON(OBJECT_INSERT(r.ratio_objects[0]::OBJECT, 'check', r.check_id)) AS check_json
+ FROM ratio_arrays AS r
+)
+
+SELECT *
+FROM final
diff --git a/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_ratio_object_reads.sql b/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_ratio_object_reads.sql
new file mode 100644
index 0000000000..dbf99a6e26
--- /dev/null
+++ b/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_ratio_object_reads.sql
@@ -0,0 +1,25 @@
+MODEL (
+ description """
+ One row per reconciliation check with its FLOAT ratio read back from an object as an INTEGER
+ """,
+ tags [edge_case],
+ columns (
+ check_id (type VARCHAR, nullable false, audits [not_null, unique]),
+ ratio_integer (type INT),
+ ),
+);
+
+WITH ratio_objects AS (
+ SELECT a.check_id, OBJECT_CONSTRUCT('r', a.ratio) AS ratio_object
+ FROM __ref("stg_edge_amount_checks") AS a
+),
+
+final AS (
+ SELECT
+ r.check_id,
+ r.ratio_object:r::INTEGER AS ratio_integer
+ FROM ratio_objects AS r
+)
+
+SELECT *
+FROM final
diff --git a/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_ratio_path_checks.sql b/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_ratio_path_checks.sql
new file mode 100644
index 0000000000..ca55c82630
--- /dev/null
+++ b/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_ratio_path_checks.sql
@@ -0,0 +1,30 @@
+MODEL (
+ description """
+ One row per reconciliation check whose key span is known and whose FLOAT ratio, read back by
+ path from an object, is missing
+ """,
+ tags [edge_case],
+ columns (
+ check_id (type VARCHAR, nullable false, audits [not_null, unique]),
+ key_span (type NUMBER(38, 0)),
+ ),
+);
+
+WITH ratio_objects AS (
+ SELECT
+ a.check_id,
+ a.wide_key - a.narrow_key AS key_span,
+ OBJECT_CONSTRUCT('r', a.ratio) AS ratio_object
+ FROM __ref("stg_edge_amount_checks") AS a
+),
+
+final AS (
+ SELECT
+ r.check_id,
+ r.key_span::NUMBER(38, 0) AS key_span
+ FROM ratio_objects AS r
+ WHERE r.ratio_object:r IS NULL
+)
+
+SELECT *
+FROM final
diff --git a/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_ratio_percent_texts.sql b/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_ratio_percent_texts.sql
new file mode 100644
index 0000000000..4f5d08687d
--- /dev/null
+++ b/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_ratio_percent_texts.sql
@@ -0,0 +1,21 @@
+MODEL (
+ description """
+ One row per reconciliation check with its FLOAT ratio as a percentage written with a number
+ format
+ """,
+ tags [edge_case],
+ columns (
+ check_id (type VARCHAR, nullable false, audits [not_null, unique]),
+ ratio_percent (type VARCHAR),
+ ),
+);
+
+WITH final AS (
+ SELECT
+ a.check_id,
+ TO_VARCHAR(ROUND(a.ratio * 100, 1), 'FM9990.0') || '%' AS ratio_percent
+ FROM __ref("stg_edge_amount_checks") AS a
+)
+
+SELECT *
+FROM final
diff --git a/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_ratio_running_totals.sql b/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_ratio_running_totals.sql
new file mode 100644
index 0000000000..c7bd31dfa6
--- /dev/null
+++ b/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_ratio_running_totals.sql
@@ -0,0 +1,25 @@
+MODEL (
+ description """
+ One row per reconciliation check with a running total of its FLOAT ratio within its group, a
+ sum whose last bits depend on the order of addition
+ """,
+ tags [edge_case],
+ columns (
+ check_id (type VARCHAR, nullable false, audits [not_null, unique]),
+ running_ratio (type FLOAT),
+ ),
+);
+
+WITH final AS (
+ SELECT
+ a.check_id,
+ SUM(a.ratio) OVER (
+ PARTITION BY a.group_code
+ ORDER BY a.check_id
+ ROWS BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW
+ )::FLOAT AS running_ratio
+ FROM __ref("stg_edge_amount_checks") AS a
+)
+
+SELECT *
+FROM final
diff --git a/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_ratio_safe_casts.sql b/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_ratio_safe_casts.sql
new file mode 100644
index 0000000000..606c5b5f04
--- /dev/null
+++ b/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_ratio_safe_casts.sql
@@ -0,0 +1,31 @@
+MODEL (
+ description """
+ One row per reconciliation check with its key and narrow key in an object literal, and its
+ FLOAT ratio passed through TRY_CAST to FLOAT
+ """,
+ tags [edge_case],
+ columns (
+ check_id (type VARCHAR, nullable false, audits [not_null, unique]),
+ check_json (type VARCHAR),
+ ratio_again (type FLOAT),
+ ),
+);
+
+WITH check_objects AS (
+ SELECT
+ a.check_id,
+ {'key': a.key_text, 'keys': {'narrow': a.narrow_key}} AS check_object,
+ a.ratio
+ FROM __ref("stg_edge_amount_checks") AS a
+),
+
+final AS (
+ SELECT
+ o.check_id,
+ TO_JSON(o.check_object) AS check_json,
+ TRY_CAST(o.ratio AS FLOAT) AS ratio_again
+ FROM check_objects AS o
+)
+
+SELECT *
+FROM final
diff --git a/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_ratio_text_forms.sql b/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_ratio_text_forms.sql
new file mode 100644
index 0000000000..7bd8c5aac7
--- /dev/null
+++ b/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_ratio_text_forms.sql
@@ -0,0 +1,25 @@
+MODEL (
+ description """
+ One row per reconciliation check with its FLOAT ratio written by TO_CHAR with a format and
+ as a run of stars as long as ten times the ratio, and the exponential of its narrow key
+ """,
+ tags [edge_case],
+ columns (
+ check_id (type VARCHAR, nullable false, audits [not_null, unique]),
+ ratio_text (type VARCHAR),
+ ratio_stars (type VARCHAR),
+ narrow_key_exp (type FLOAT),
+ ),
+);
+
+WITH final AS (
+ SELECT
+ a.check_id,
+ TO_CHAR(a.ratio, '990.99') AS ratio_text,
+ REPEAT('*', a.ratio * 10)::VARCHAR AS ratio_stars,
+ EXP(a.narrow_key)::FLOAT AS narrow_key_exp
+ FROM __ref("stg_edge_amount_checks") AS a
+)
+
+SELECT *
+FROM final
diff --git a/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_ratio_text_replaces.sql b/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_ratio_text_replaces.sql
new file mode 100644
index 0000000000..88f6ed3ebd
--- /dev/null
+++ b/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_ratio_text_replaces.sql
@@ -0,0 +1,23 @@
+MODEL (
+ description """
+ One row per reconciliation check with its key text read as a timestamp, and its FLOAT ratio
+ written with a comma by REPLACE
+ """,
+ tags [edge_case],
+ columns (
+ check_id (type VARCHAR, nullable false, audits [not_null, unique]),
+ key_time (type TIMESTAMP_NTZ),
+ ratio_text (type VARCHAR),
+ ),
+);
+
+WITH final AS (
+ SELECT
+ a.check_id,
+ TRY_CAST(a.key_text AS TIMESTAMP) AS key_time,
+ REPLACE(a.ratio, '.', ',') AS ratio_text
+ FROM __ref("stg_edge_amount_checks") AS a
+)
+
+SELECT *
+FROM final
diff --git a/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_ratio_variant_unions.sql b/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_ratio_variant_unions.sql
new file mode 100644
index 0000000000..47e51c5d83
--- /dev/null
+++ b/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_ratio_variant_unions.sql
@@ -0,0 +1,37 @@
+MODEL (
+ description """
+ One row per reconciliation check and value kind, a FLOAT ratio and its key text both held as
+ VARIANT in one UNION ALL column
+ """,
+ tags [edge_case],
+ columns (
+ value_row_id (type VARCHAR, nullable false, audits [not_null, unique]),
+ value_text (type VARCHAR),
+ ),
+);
+
+WITH ratios AS (
+ SELECT a.check_id || '~ratio' AS value_row_id, TO_VARIANT(a.ratio) AS held_value
+ FROM __ref("stg_edge_amount_checks") AS a
+),
+
+keys AS (
+ SELECT a.check_id || '~key' AS value_row_id, TO_VARIANT(a.key_text) AS held_value
+ FROM __ref("stg_edge_amount_checks") AS a
+),
+
+held AS (
+ SELECT r.value_row_id, r.held_value FROM ratios AS r
+ UNION ALL
+ SELECT k.value_row_id, k.held_value FROM keys AS k
+),
+
+final AS (
+ SELECT
+ u.value_row_id,
+ u.held_value::VARCHAR AS value_text
+ FROM held AS u
+)
+
+SELECT *
+FROM final
diff --git a/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_variant_decimal_reads.sql b/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_variant_decimal_reads.sql
new file mode 100644
index 0000000000..0bcb9ea91b
--- /dev/null
+++ b/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_variant_decimal_reads.sql
@@ -0,0 +1,21 @@
+MODEL (
+ description """
+ One row per attribute value with the value read as a NUMBER(10, 4) by TO_DECIMAL
+ """,
+ tags [edge_case],
+ columns (
+ value_id (type VARCHAR, nullable false, audits [not_null, unique]),
+ decimal_value (type NUMBER(10, 4)),
+ ),
+);
+
+WITH final AS (
+ SELECT
+ v.value_id,
+ TO_DECIMAL(v.attribute_value, 10, 4)::NUMBER(10, 4) AS decimal_value
+ FROM __ref("stg_edge_variant_values") AS v
+ WHERE IS_DECIMAL(v.attribute_value) OR IS_INTEGER(v.attribute_value)
+)
+
+SELECT *
+FROM final
diff --git a/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_variant_expected_values.sql b/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_variant_expected_values.sql
new file mode 100644
index 0000000000..94bda07f08
--- /dev/null
+++ b/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_variant_expected_values.sql
@@ -0,0 +1,22 @@
+MODEL (
+ description """
+ One row per attribute value that differs from the value expected for its group, compared
+ with EQUAL_NULL
+ """,
+ tags [edge_case],
+ columns (
+ value_id (type VARCHAR, nullable false, audits [not_null, unique]),
+ ),
+);
+
+WITH final AS (
+ SELECT v.value_id
+ FROM __ref("stg_edge_variant_values") AS v
+ WHERE NOT EQUAL_NULL(
+ v.attribute_value,
+ CASE v.group_code WHEN 'V-1' THEN PARSE_JSON('1.5') END
+ )
+)
+
+SELECT *
+FROM final
diff --git a/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_variant_xml_checks.sql b/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_variant_xml_checks.sql
new file mode 100644
index 0000000000..bb919e3afd
--- /dev/null
+++ b/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_variant_xml_checks.sql
@@ -0,0 +1,23 @@
+MODEL (
+ description """
+ One row per attribute value with its text stripped of separators by a pattern from the group
+ code, and CHECK_XML of the text
+ """,
+ tags [edge_case],
+ columns (
+ value_id (type VARCHAR, nullable false, audits [not_null, unique]),
+ stripped_text (type VARCHAR),
+ xml_error (type VARCHAR),
+ ),
+);
+
+WITH final AS (
+ SELECT
+ v.value_id,
+ REGEXP_REPLACE(v.value_text, v.group_code, '') AS stripped_text,
+ CHECK_XML(v.value_text)::VARCHAR AS xml_error
+ FROM __ref("stg_edge_variant_values") AS v
+)
+
+SELECT *
+FROM final
diff --git a/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_variant_xml_elements.sql b/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_variant_xml_elements.sql
new file mode 100644
index 0000000000..83a3298400
--- /dev/null
+++ b/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_variant_xml_elements.sql
@@ -0,0 +1,20 @@
+MODEL (
+ description """
+ One row per attribute value holding an XML document, with its sku element read by XMLGET
+ """,
+ tags [edge_case],
+ columns (
+ value_id (type VARCHAR, nullable false, audits [not_null, unique]),
+ sku_text (type VARCHAR),
+ ),
+);
+
+WITH final AS (
+ SELECT
+ v.value_id,
+ XMLGET(v.attribute_value, 'sku'):"$"::VARCHAR AS sku_text
+ FROM __ref("stg_edge_variant_values") AS v
+)
+
+SELECT *
+FROM final
diff --git a/benchmarks/duckshop/project/models/marts/edge_cases/rpt_edge_case_array_model_keys.sql b/benchmarks/duckshop/project/models/marts/edge_cases/rpt_edge_case_array_model_keys.sql
new file mode 100644
index 0000000000..b16c2282ef
--- /dev/null
+++ b/benchmarks/duckshop/project/models/marts/edge_cases/rpt_edge_case_array_model_keys.sql
@@ -0,0 +1,37 @@
+MODEL (
+ description """
+ One row per key of each edge-case model with an ARRAY, OBJECT or VARIANT output that reads a
+ construct translation tools refuse, so that every such model has a downstream reader
+ """,
+ tags [edge_case],
+ columns (
+ model_key_id (type VARCHAR, nullable false, audits [not_null, unique]),
+ model_name (type VARCHAR),
+ model_key (type VARCHAR),
+ ),
+);
+
+WITH model_keys AS (
+ SELECT 'int_edge_check_number_arrays' AS model_name, r.check_id::VARCHAR AS model_key
+ FROM __ref("int_edge_check_number_arrays") AS r
+ UNION ALL
+ SELECT 'int_edge_check_text_arrays' AS model_name, r.check_id::VARCHAR AS model_key
+ FROM __ref("int_edge_check_text_arrays") AS r
+ UNION ALL
+ SELECT 'int_edge_callback_wall_time_lists' AS model_name, r.merchant_zone::VARCHAR AS model_key
+ FROM __ref("int_edge_callback_wall_time_lists") AS r
+ UNION ALL
+ SELECT 'int_edge_check_key_parts' AS model_name, r.check_id::VARCHAR AS model_key
+ FROM __ref("int_edge_check_key_parts") AS r
+),
+
+final AS (
+ SELECT
+ k.model_name || '~' || k.model_key AS model_key_id,
+ k.model_name,
+ k.model_key
+ FROM model_keys AS k
+)
+
+SELECT *
+FROM final
diff --git a/benchmarks/duckshop/project/models/marts/edge_cases/rpt_edge_case_model_keys.sql b/benchmarks/duckshop/project/models/marts/edge_cases/rpt_edge_case_model_keys.sql
new file mode 100644
index 0000000000..cdca9127ba
--- /dev/null
+++ b/benchmarks/duckshop/project/models/marts/edge_cases/rpt_edge_case_model_keys.sql
@@ -0,0 +1,232 @@
+MODEL (
+ description """
+ One row per key of each edge-case model that reads a construct translation tools refuse, so
+ that every such model has a downstream reader whose own SQL translates
+ """,
+ tags [edge_case],
+ columns (
+ model_key_id (type VARCHAR, nullable false, audits [not_null, unique]),
+ model_name (type VARCHAR),
+ model_key (type VARCHAR),
+ ),
+);
+
+WITH model_keys AS (
+ SELECT 'int_edge_ratio_running_totals' AS model_name, r.check_id::VARCHAR AS model_key
+ FROM __ref("int_edge_ratio_running_totals") AS r
+ UNION ALL
+ SELECT 'int_edge_ratio_averages' AS model_name, r.group_code::VARCHAR AS model_key
+ FROM __ref("int_edge_ratio_averages") AS r
+ UNION ALL
+ SELECT 'int_edge_callback_recent_offsets' AS model_name, r.callback_id::VARCHAR AS model_key
+ FROM __ref("int_edge_callback_recent_offsets") AS r
+ UNION ALL
+ SELECT 'int_edge_callback_epoch_reads' AS model_name, r.check_id::VARCHAR AS model_key
+ FROM __ref("int_edge_callback_epoch_reads") AS r
+ UNION ALL
+ SELECT 'int_edge_callback_zone_words' AS model_name, r.callback_id::VARCHAR AS model_key
+ FROM __ref("int_edge_callback_zone_words") AS r
+ UNION ALL
+ SELECT 'int_edge_callback_text_dates' AS model_name, r.callback_id::VARCHAR AS model_key
+ FROM __ref("int_edge_callback_text_dates") AS r
+ UNION ALL
+ SELECT 'int_edge_key_rank_offsets' AS model_name, r.check_id::VARCHAR AS model_key
+ FROM __ref("int_edge_key_rank_offsets") AS r
+ UNION ALL
+ SELECT 'int_edge_key_number_reads' AS model_name, r.check_id::VARCHAR AS model_key
+ FROM __ref("int_edge_key_number_reads") AS r
+ UNION ALL
+ SELECT 'int_edge_callback_epoch_parts' AS model_name, r.callback_id::VARCHAR AS model_key
+ FROM __ref("int_edge_callback_epoch_parts") AS r
+ UNION ALL
+ SELECT 'int_edge_check_pair_filters' AS model_name, r.check_id::VARCHAR AS model_key
+ FROM __ref("int_edge_check_pair_filters") AS r
+ UNION ALL
+ SELECT 'int_edge_check_wide_sums' AS model_name, r.key_row_id::VARCHAR AS model_key
+ FROM __ref("int_edge_check_wide_sums") AS r
+ UNION ALL
+ SELECT 'int_edge_ratio_variant_unions' AS model_name, r.value_row_id::VARCHAR AS model_key
+ FROM __ref("int_edge_ratio_variant_unions") AS r
+ UNION ALL
+ SELECT 'int_edge_check_note_unions' AS model_name, r.note_row_id::VARCHAR AS model_key
+ FROM __ref("int_edge_check_note_unions") AS r
+ UNION ALL
+ SELECT 'int_edge_ratio_array_bounds' AS model_name, r.group_code::VARCHAR AS model_key
+ FROM __ref("int_edge_ratio_array_bounds") AS r
+ UNION ALL
+ SELECT 'int_edge_check_zoned_literals' AS model_name, r.check_id::VARCHAR AS model_key
+ FROM __ref("int_edge_check_zoned_literals") AS r
+ UNION ALL
+ SELECT 'int_edge_callback_day_starts' AS model_name, r.callback_id::VARCHAR AS model_key
+ FROM __ref("int_edge_callback_day_starts") AS r
+ UNION ALL
+ SELECT 'int_edge_callback_clock_times' AS model_name, r.callback_id::VARCHAR AS model_key
+ FROM __ref("int_edge_callback_clock_times") AS r
+ UNION ALL
+ SELECT 'int_edge_check_key_rewrites' AS model_name, r.check_id::VARCHAR AS model_key
+ FROM __ref("int_edge_check_key_rewrites") AS r
+ UNION ALL
+ SELECT 'int_edge_variant_decimal_reads' AS model_name, r.value_id::VARCHAR AS model_key
+ FROM __ref("int_edge_variant_decimal_reads") AS r
+ UNION ALL
+ SELECT 'int_edge_ratio_safe_casts' AS model_name, r.check_id::VARCHAR AS model_key
+ FROM __ref("int_edge_ratio_safe_casts") AS r
+ UNION ALL
+ SELECT 'int_edge_callback_safe_dates' AS model_name, r.callback_id::VARCHAR AS model_key
+ FROM __ref("int_edge_callback_safe_dates") AS r
+ UNION ALL
+ SELECT 'int_edge_ratio_percent_texts' AS model_name, r.check_id::VARCHAR AS model_key
+ FROM __ref("int_edge_ratio_percent_texts") AS r
+ UNION ALL
+ SELECT 'int_edge_callback_row_numbers' AS model_name, r.callback_id::VARCHAR AS model_key
+ FROM __ref("int_edge_callback_row_numbers") AS r
+ UNION ALL
+ SELECT 'int_edge_check_xml_checks' AS model_name, r.check_id::VARCHAR AS model_key
+ FROM __ref("int_edge_check_xml_checks") AS r
+ UNION ALL
+ SELECT 'int_edge_variant_xml_elements' AS model_name, r.value_id::VARCHAR AS model_key
+ FROM __ref("int_edge_variant_xml_elements") AS r
+ UNION ALL
+ SELECT 'int_edge_callback_latest_dates' AS model_name, r.merchant_zone::VARCHAR AS model_key
+ FROM __ref("int_edge_callback_latest_dates") AS r
+ UNION ALL
+ SELECT 'int_edge_check_group_key_lists' AS model_name, r.check_id::VARCHAR AS model_key
+ FROM __ref("int_edge_check_group_key_lists") AS r
+ UNION ALL
+ SELECT 'int_edge_ratio_array_casts' AS model_name, r.check_id::VARCHAR AS model_key
+ FROM __ref("int_edge_ratio_array_casts") AS r
+ UNION ALL
+ SELECT 'int_edge_ratio_text_replaces' AS model_name, r.check_id::VARCHAR AS model_key
+ FROM __ref("int_edge_ratio_text_replaces") AS r
+ UNION ALL
+ SELECT 'int_edge_ratio_object_reads' AS model_name, r.check_id::VARCHAR AS model_key
+ FROM __ref("int_edge_ratio_object_reads") AS r
+ UNION ALL
+ SELECT 'int_edge_ratio_object_flags' AS model_name, r.check_id::VARCHAR AS model_key
+ FROM __ref("int_edge_ratio_object_flags") AS r
+ UNION ALL
+ SELECT 'int_edge_ratio_identity_objects' AS model_name, r.check_id::VARCHAR AS model_key
+ FROM __ref("int_edge_ratio_identity_objects") AS r
+ UNION ALL
+ SELECT 'int_edge_ratio_array_positions' AS model_name, r.group_code::VARCHAR AS model_key
+ FROM __ref("int_edge_ratio_array_positions") AS r
+ UNION ALL
+ SELECT 'int_edge_check_local_times' AS model_name, r.check_id::VARCHAR AS model_key
+ FROM __ref("int_edge_check_local_times") AS r
+ UNION ALL
+ SELECT 'int_edge_ratio_ignore_case_reads' AS model_name, r.check_id::VARCHAR AS model_key
+ FROM __ref("int_edge_ratio_ignore_case_reads") AS r
+ UNION ALL
+ SELECT 'int_edge_callback_zoned_dates' AS model_name, r.callback_id::VARCHAR AS model_key
+ FROM __ref("int_edge_callback_zoned_dates") AS r
+ UNION ALL
+ SELECT 'int_edge_ratio_object_inserts' AS model_name, r.check_id::VARCHAR AS model_key
+ FROM __ref("int_edge_ratio_object_inserts") AS r
+ UNION ALL
+ SELECT 'int_edge_callback_date_lists' AS model_name, r.merchant_zone::VARCHAR AS model_key
+ FROM __ref("int_edge_callback_date_lists") AS r
+ UNION ALL
+ SELECT 'int_edge_check_bracket_strips' AS model_name, r.check_id::VARCHAR AS model_key
+ FROM __ref("int_edge_check_bracket_strips") AS r
+ UNION ALL
+ SELECT 'int_edge_ratio_path_checks' AS model_name, r.check_id::VARCHAR AS model_key
+ FROM __ref("int_edge_ratio_path_checks") AS r
+ UNION ALL
+ SELECT 'int_edge_ratio_fixed_scales' AS model_name, r.check_id::VARCHAR AS model_key
+ FROM __ref("int_edge_ratio_fixed_scales") AS r
+ UNION ALL
+ SELECT 'int_edge_check_formatted_dates' AS model_name, r.check_id::VARCHAR AS model_key
+ FROM __ref("int_edge_check_formatted_dates") AS r
+ UNION ALL
+ SELECT 'int_edge_callback_last_day' AS model_name, r.callback_id::VARCHAR AS model_key
+ FROM __ref("int_edge_callback_last_day") AS r
+ UNION ALL
+ SELECT 'int_edge_check_month_starts' AS model_name, r.period_id::VARCHAR AS model_key
+ FROM __ref("int_edge_check_month_starts") AS r
+ UNION ALL
+ SELECT 'int_edge_variant_expected_values' AS model_name, r.value_id::VARCHAR AS model_key
+ FROM __ref("int_edge_variant_expected_values") AS r
+ UNION ALL
+ SELECT 'int_edge_check_reduced_keys' AS model_name, r.check_id::VARCHAR AS model_key
+ FROM __ref("int_edge_check_reduced_keys") AS r
+ UNION ALL
+ SELECT 'int_edge_ratio_hashes' AS model_name, r.check_id::VARCHAR AS model_key
+ FROM __ref("int_edge_ratio_hashes") AS r
+ UNION ALL
+ SELECT 'int_edge_ratio_object_differences' AS model_name, r.check_id::VARCHAR AS model_key
+ FROM __ref("int_edge_ratio_object_differences") AS r
+ UNION ALL
+ SELECT 'int_edge_check_group_flags' AS model_name, r.check_id::VARCHAR AS model_key
+ FROM __ref("int_edge_check_group_flags") AS r
+ UNION ALL
+ SELECT 'int_edge_check_label_lookups' AS model_name, r.check_id::VARCHAR AS model_key
+ FROM __ref("int_edge_check_label_lookups") AS r
+ UNION ALL
+ SELECT 'int_edge_check_distinct_tuples' AS model_name, r.group_code::VARCHAR AS model_key
+ FROM __ref("int_edge_check_distinct_tuples") AS r
+ UNION ALL
+ SELECT 'int_edge_callback_start_fallbacks' AS model_name, r.callback_id::VARCHAR AS model_key
+ FROM __ref("int_edge_callback_start_fallbacks") AS r
+ UNION ALL
+ SELECT 'int_edge_amount_percent_texts' AS model_name, r.check_id::VARCHAR AS model_key
+ FROM __ref("int_edge_amount_percent_texts") AS r
+ UNION ALL
+ SELECT 'int_edge_check_minute_times' AS model_name, r.check_id::VARCHAR AS model_key
+ FROM __ref("int_edge_check_minute_times") AS r
+ UNION ALL
+ SELECT 'int_edge_check_number_labels' AS model_name, r.check_id::VARCHAR AS model_key
+ FROM __ref("int_edge_check_number_labels") AS r
+ UNION ALL
+ SELECT 'int_edge_check_decoded_keys' AS model_name, r.check_id::VARCHAR AS model_key
+ FROM __ref("int_edge_check_decoded_keys") AS r
+ UNION ALL
+ SELECT 'int_edge_callback_london_times' AS model_name, r.callback_id::VARCHAR AS model_key
+ FROM __ref("int_edge_callback_london_times") AS r
+ UNION ALL
+ SELECT 'int_edge_check_pattern_matches' AS model_name, r.check_id::VARCHAR AS model_key
+ FROM __ref("int_edge_check_pattern_matches") AS r
+ UNION ALL
+ SELECT 'int_edge_check_any_amounts' AS model_name, r.group_code::VARCHAR AS model_key
+ FROM __ref("int_edge_check_any_amounts") AS r
+ UNION ALL
+ SELECT 'int_edge_check_sparse_arrays' AS model_name, r.check_id::VARCHAR AS model_key
+ FROM __ref("int_edge_check_sparse_arrays") AS r
+ UNION ALL
+ SELECT 'int_edge_check_last_known_keys' AS model_name, r.check_id::VARCHAR AS model_key
+ FROM __ref("int_edge_check_last_known_keys") AS r
+ UNION ALL
+ SELECT 'int_edge_callback_day_documents' AS model_name, r.merchant_zone::VARCHAR AS model_key
+ FROM __ref("int_edge_callback_day_documents") AS r
+ UNION ALL
+ SELECT 'int_edge_check_key_list_edits' AS model_name, r.check_id::VARCHAR AS model_key
+ FROM __ref("int_edge_check_key_list_edits") AS r
+ UNION ALL
+ SELECT 'int_edge_ratio_group_objects' AS model_name, r.group_code::VARCHAR AS model_key
+ FROM __ref("int_edge_ratio_group_objects") AS r
+ UNION ALL
+ SELECT 'int_edge_ratio_text_forms' AS model_name, r.check_id::VARCHAR AS model_key
+ FROM __ref("int_edge_ratio_text_forms") AS r
+ UNION ALL
+ SELECT 'int_edge_check_variant_branches' AS model_name, r.check_id::VARCHAR AS model_key
+ FROM __ref("int_edge_check_variant_branches") AS r
+ UNION ALL
+ SELECT 'int_edge_ledger_quantity_steps' AS model_name, r.order_ref::VARCHAR AS model_key
+ FROM __ref("int_edge_ledger_quantity_steps") AS r
+ UNION ALL
+ SELECT 'int_edge_check_generated_rows' AS model_name, r.summary_id::VARCHAR AS model_key
+ FROM __ref("int_edge_check_generated_rows") AS r
+ UNION ALL
+ SELECT 'int_edge_check_unnamed_labels' AS model_name, r.check_id::VARCHAR AS model_key
+ FROM __ref("int_edge_check_unnamed_labels") AS r
+),
+
+final AS (
+ SELECT
+ k.model_name || '~' || k.model_key AS model_key_id,
+ k.model_name,
+ k.model_key
+ FROM model_keys AS k
+)
+
+SELECT *
+FROM final
diff --git a/benchmarks/duckshop/project/sqlbuild_project.toml b/benchmarks/duckshop/project/sqlbuild_project.toml
index 80bed24c30..f4e9a8d157 100644
--- a/benchmarks/duckshop/project/sqlbuild_project.toml
+++ b/benchmarks/duckshop/project/sqlbuild_project.toml
@@ -315,6 +315,13 @@ The edge case leaves two calculated columns unaliased on purpose, and reads them
Snowflake gives them.
"""
+[[rules.rule_ignores]]
+rules = ["SQLCLEAN022"]
+paths = ["models/intermediate/edge_cases/int_edge_check_unnamed_labels.sql"]
+reason = """
+The edge case leaves a literal unaliased on purpose, and reads it by the name Snowflake gives it.
+"""
+
[[rules.rule_ignores]]
rules = ["SQLCLEAN040"]
paths = ["models/intermediate/edge_cases/int_edge_amount_bit_reads.sql"]
diff --git a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_amount_percent_texts.sql b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_amount_percent_texts.sql
new file mode 100644
index 0000000000..16f46b5731
--- /dev/null
+++ b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_amount_percent_texts.sql
@@ -0,0 +1,23 @@
+TEST (name "int_edge_amount_percent_texts__formats_amount_percentages");
+
+WITH __ref__stg_edge_amount_checks AS (
+ SELECT
+ v.check_id::VARCHAR AS check_id,
+ v.group_code::VARCHAR AS group_code,
+ v.narrow_key::NUMBER(18, 0) AS narrow_key,
+ v.wide_key::NUMBER(38, 0) AS wide_key,
+ v.key_text::VARCHAR AS key_text,
+ v.amount::NUMBER(18, 2) AS amount,
+ v.ratio::FLOAT AS ratio
+ FROM VALUES
+ ('AC-01', 'G-1', 7, 7, '101,7', 10.05, 0.1),
+ ('AC-02', 'G-1', 12, 12, '2026-03-04', -0.55, 0.2),
+ ('AC-03', 'G-2', 3, NULL, '7', 0.00, 0.3),
+ ('AC-04', 'G-2', NULL, 40, NULL, NULL, NULL) AS v(check_id, group_code, narrow_key, wide_key, key_text, amount, ratio)
+),
+
+__expected__int_edge_amount_percent_texts AS (
+ SELECT
+ NULL AS check_id,
+ NULL AS amount_percent
+)
diff --git a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_callback_clock_times.sql b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_callback_clock_times.sql
new file mode 100644
index 0000000000..5b2f4e8614
--- /dev/null
+++ b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_callback_clock_times.sql
@@ -0,0 +1,23 @@
+TEST (name "int_edge_callback_clock_times__reads_dates_and_times_from_text");
+
+WITH __ref__stg_edge_gateway_callbacks AS (
+ SELECT
+ v.callback_id::VARCHAR AS callback_id,
+ v.merchant_zone::VARCHAR AS merchant_zone,
+ v.local_wall_time::TIMESTAMP_NTZ AS local_wall_time,
+ v.event_at::TIMESTAMP_TZ AS event_at,
+ v.event_at_ns::TIMESTAMP_NTZ(9) AS event_at_ns,
+ v.event_time_text::VARCHAR AS event_time_text,
+ v.business_date::DATE AS business_date
+ FROM VALUES
+ ('GC-01', 'Europe/London', '2026-03-28 23:30:00', '2026-03-28 23:30:00 +00:00', '2026-03-28 23:30:00.123456789', '2026-03-28T23:30:00+00:00', '2026-03-28'),
+ ('GC-02', 'America/New_York', '2026-03-08 01:15:00', '2026-03-08 01:15:00 -05:00', '2026-03-08 01:15:00.5', '2026-03-08T01:15:00-05:00', '2026-03-08'),
+ ('GC-03', 'Asia/Kolkata', '2026-02-28 18:45:30', '2026-02-28 18:45:30 +05:30', NULL, '2026-02-28', '2026-02-28') AS v(callback_id, merchant_zone, local_wall_time, event_at, event_at_ns, event_time_text, business_date)
+),
+
+__expected__int_edge_callback_clock_times AS (
+ SELECT
+ NULL AS callback_id,
+ NULL AS text_date,
+ NULL AS text_time
+)
diff --git a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_callback_date_lists.sql b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_callback_date_lists.sql
new file mode 100644
index 0000000000..3ad1d68746
--- /dev/null
+++ b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_callback_date_lists.sql
@@ -0,0 +1,22 @@
+TEST (name "int_edge_callback_date_lists__counts_distinct_dates_per_zone");
+
+WITH __ref__stg_edge_gateway_callbacks AS (
+ SELECT
+ v.callback_id::VARCHAR AS callback_id,
+ v.merchant_zone::VARCHAR AS merchant_zone,
+ v.local_wall_time::TIMESTAMP_NTZ AS local_wall_time,
+ v.event_at::TIMESTAMP_TZ AS event_at,
+ v.event_at_ns::TIMESTAMP_NTZ(9) AS event_at_ns,
+ v.event_time_text::VARCHAR AS event_time_text,
+ v.business_date::DATE AS business_date
+ FROM VALUES
+ ('GC-01', 'Europe/London', '2026-03-28 23:30:00', '2026-03-28 23:30:00 +00:00', '2026-03-28 23:30:00.123456789', '2026-03-28T23:30:00+00:00', '2026-03-28'),
+ ('GC-02', 'America/New_York', '2026-03-08 01:15:00', '2026-03-08 01:15:00 -05:00', '2026-03-08 01:15:00.5', '2026-03-08T01:15:00-05:00', '2026-03-08'),
+ ('GC-03', 'Asia/Kolkata', '2026-02-28 18:45:30', '2026-02-28 18:45:30 +05:30', NULL, '2026-02-28', '2026-02-28') AS v(callback_id, merchant_zone, local_wall_time, event_at, event_at_ns, event_time_text, business_date)
+),
+
+__expected__int_edge_callback_date_lists AS (
+ SELECT
+ NULL AS merchant_zone,
+ NULL AS date_count
+)
diff --git a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_callback_day_documents.sql b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_callback_day_documents.sql
new file mode 100644
index 0000000000..1027209864
--- /dev/null
+++ b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_callback_day_documents.sql
@@ -0,0 +1,22 @@
+TEST (name "int_edge_callback_day_documents__counts_day_documents_per_zone");
+
+WITH __ref__stg_edge_gateway_callbacks AS (
+ SELECT
+ v.callback_id::VARCHAR AS callback_id,
+ v.merchant_zone::VARCHAR AS merchant_zone,
+ v.local_wall_time::TIMESTAMP_NTZ AS local_wall_time,
+ v.event_at::TIMESTAMP_TZ AS event_at,
+ v.event_at_ns::TIMESTAMP_NTZ(9) AS event_at_ns,
+ v.event_time_text::VARCHAR AS event_time_text,
+ v.business_date::DATE AS business_date
+ FROM VALUES
+ ('GC-01', 'Europe/London', '2026-03-28 23:30:00', '2026-03-28 23:30:00 +00:00', '2026-03-28 23:30:00.123456789', '2026-03-28T23:30:00+00:00', '2026-03-28'),
+ ('GC-02', 'America/New_York', '2026-03-08 01:15:00', '2026-03-08 01:15:00 -05:00', '2026-03-08 01:15:00.5', '2026-03-08T01:15:00-05:00', '2026-03-08'),
+ ('GC-03', 'Asia/Kolkata', '2026-02-28 18:45:30', '2026-02-28 18:45:30 +05:30', NULL, '2026-02-28', '2026-02-28') AS v(callback_id, merchant_zone, local_wall_time, event_at, event_at_ns, event_time_text, business_date)
+),
+
+__expected__int_edge_callback_day_documents AS (
+ SELECT
+ NULL AS merchant_zone,
+ NULL AS document_count
+)
diff --git a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_callback_day_starts.sql b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_callback_day_starts.sql
new file mode 100644
index 0000000000..948cccd477
--- /dev/null
+++ b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_callback_day_starts.sql
@@ -0,0 +1,22 @@
+TEST (name "int_edge_callback_day_starts__truncates_zoned_times_to_days");
+
+WITH __ref__stg_edge_gateway_callbacks AS (
+ SELECT
+ v.callback_id::VARCHAR AS callback_id,
+ v.merchant_zone::VARCHAR AS merchant_zone,
+ v.local_wall_time::TIMESTAMP_NTZ AS local_wall_time,
+ v.event_at::TIMESTAMP_TZ AS event_at,
+ v.event_at_ns::TIMESTAMP_NTZ(9) AS event_at_ns,
+ v.event_time_text::VARCHAR AS event_time_text,
+ v.business_date::DATE AS business_date
+ FROM VALUES
+ ('GC-01', 'Europe/London', '2026-03-28 23:30:00', '2026-03-28 23:30:00 +00:00', '2026-03-28 23:30:00.123456789', '2026-03-28T23:30:00+00:00', '2026-03-28'),
+ ('GC-02', 'America/New_York', '2026-03-08 01:15:00', '2026-03-08 01:15:00 -05:00', '2026-03-08 01:15:00.5', '2026-03-08T01:15:00-05:00', '2026-03-08'),
+ ('GC-03', 'Asia/Kolkata', '2026-02-28 18:45:30', '2026-02-28 18:45:30 +05:30', NULL, '2026-02-28', '2026-02-28') AS v(callback_id, merchant_zone, local_wall_time, event_at, event_at_ns, event_time_text, business_date)
+),
+
+__expected__int_edge_callback_day_starts AS (
+ SELECT
+ NULL AS callback_id,
+ NULL AS day_start
+)
diff --git a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_callback_epoch_parts.sql b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_callback_epoch_parts.sql
new file mode 100644
index 0000000000..5f1a8579a4
--- /dev/null
+++ b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_callback_epoch_parts.sql
@@ -0,0 +1,23 @@
+TEST (name "int_edge_callback_epoch_parts__reads_epoch_parts_of_wall_times");
+
+WITH __ref__stg_edge_gateway_callbacks AS (
+ SELECT
+ v.callback_id::VARCHAR AS callback_id,
+ v.merchant_zone::VARCHAR AS merchant_zone,
+ v.local_wall_time::TIMESTAMP_NTZ AS local_wall_time,
+ v.event_at::TIMESTAMP_TZ AS event_at,
+ v.event_at_ns::TIMESTAMP_NTZ(9) AS event_at_ns,
+ v.event_time_text::VARCHAR AS event_time_text,
+ v.business_date::DATE AS business_date
+ FROM VALUES
+ ('GC-01', 'Europe/London', '2026-03-28 23:30:00', '2026-03-28 23:30:00 +00:00', '2026-03-28 23:30:00.123456789', '2026-03-28T23:30:00+00:00', '2026-03-28'),
+ ('GC-02', 'America/New_York', '2026-03-08 01:15:00', '2026-03-08 01:15:00 -05:00', '2026-03-08 01:15:00.5', '2026-03-08T01:15:00-05:00', '2026-03-08'),
+ ('GC-03', 'Asia/Kolkata', '2026-02-28 18:45:30', '2026-02-28 18:45:30 +05:30', NULL, '2026-02-28', '2026-02-28') AS v(callback_id, merchant_zone, local_wall_time, event_at, event_at_ns, event_time_text, business_date)
+),
+
+__expected__int_edge_callback_epoch_parts AS (
+ SELECT
+ NULL AS callback_id,
+ NULL AS wall_time_ns,
+ NULL AS epoch_microsecond
+)
diff --git a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_callback_epoch_reads.sql b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_callback_epoch_reads.sql
new file mode 100644
index 0000000000..0550075cff
--- /dev/null
+++ b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_callback_epoch_reads.sql
@@ -0,0 +1,39 @@
+TEST (name "int_edge_callback_epoch_reads__reads_keys_as_epoch_milliseconds");
+
+WITH __ref__stg_edge_amount_checks AS (
+ SELECT
+ v.check_id::VARCHAR AS check_id,
+ v.group_code::VARCHAR AS group_code,
+ v.narrow_key::NUMBER(18, 0) AS narrow_key,
+ v.wide_key::NUMBER(38, 0) AS wide_key,
+ v.key_text::VARCHAR AS key_text,
+ v.amount::NUMBER(18, 2) AS amount,
+ v.ratio::FLOAT AS ratio
+ FROM VALUES
+ ('AC-01', 'G-1', 7, 7, '101,7', 10.05, 0.1),
+ ('AC-02', 'G-1', 12, 12, '2026-03-04', -0.55, 0.2),
+ ('AC-03', 'G-2', 3, NULL, '7', 0.00, 0.3),
+ ('AC-04', 'G-2', NULL, 40, NULL, NULL, NULL) AS v(check_id, group_code, narrow_key, wide_key, key_text, amount, ratio)
+),
+
+__ref__stg_edge_gateway_callbacks AS (
+ SELECT
+ v.callback_id::VARCHAR AS callback_id,
+ v.merchant_zone::VARCHAR AS merchant_zone,
+ v.local_wall_time::TIMESTAMP_NTZ AS local_wall_time,
+ v.event_at::TIMESTAMP_TZ AS event_at,
+ v.event_at_ns::TIMESTAMP_NTZ(9) AS event_at_ns,
+ v.event_time_text::VARCHAR AS event_time_text,
+ v.business_date::DATE AS business_date
+ FROM VALUES
+ ('GC-01', 'Europe/London', '2026-03-28 23:30:00', '2026-03-28 23:30:00 +00:00', '2026-03-28 23:30:00.123456789', '2026-03-28T23:30:00+00:00', '2026-03-28'),
+ ('GC-02', 'America/New_York', '2026-03-08 01:15:00', '2026-03-08 01:15:00 -05:00', '2026-03-08 01:15:00.5', '2026-03-08T01:15:00-05:00', '2026-03-08'),
+ ('GC-03', 'Asia/Kolkata', '2026-02-28 18:45:30', '2026-02-28 18:45:30 +05:30', NULL, '2026-02-28', '2026-02-28') AS v(callback_id, merchant_zone, local_wall_time, event_at, event_at_ns, event_time_text, business_date)
+),
+
+__expected__int_edge_callback_epoch_reads AS (
+ SELECT
+ NULL AS check_id,
+ NULL AS key_as_time,
+ NULL AS has_early_callback
+)
diff --git a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_callback_last_day.sql b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_callback_last_day.sql
new file mode 100644
index 0000000000..9f64b1691f
--- /dev/null
+++ b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_callback_last_day.sql
@@ -0,0 +1,22 @@
+TEST (name "int_edge_callback_last_day__flags_callbacks_from_the_last_day");
+
+WITH __ref__stg_edge_gateway_callbacks AS (
+ SELECT
+ v.callback_id::VARCHAR AS callback_id,
+ v.merchant_zone::VARCHAR AS merchant_zone,
+ v.local_wall_time::TIMESTAMP_NTZ AS local_wall_time,
+ v.event_at::TIMESTAMP_TZ AS event_at,
+ v.event_at_ns::TIMESTAMP_NTZ(9) AS event_at_ns,
+ v.event_time_text::VARCHAR AS event_time_text,
+ v.business_date::DATE AS business_date
+ FROM VALUES
+ ('GC-01', 'Europe/London', '2026-03-28 23:30:00', '2026-03-28 23:30:00 +00:00', '2026-03-28 23:30:00.123456789', '2026-03-28T23:30:00+00:00', '2026-03-28'),
+ ('GC-02', 'America/New_York', '2026-03-08 01:15:00', '2026-03-08 01:15:00 -05:00', '2026-03-08 01:15:00.5', '2026-03-08T01:15:00-05:00', '2026-03-08'),
+ ('GC-03', 'Asia/Kolkata', '2026-02-28 18:45:30', '2026-02-28 18:45:30 +05:30', NULL, '2026-02-28', '2026-02-28') AS v(callback_id, merchant_zone, local_wall_time, event_at, event_at_ns, event_time_text, business_date)
+),
+
+__expected__int_edge_callback_last_day AS (
+ SELECT
+ NULL AS callback_id,
+ NULL AS is_recent
+)
diff --git a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_callback_latest_dates.sql b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_callback_latest_dates.sql
new file mode 100644
index 0000000000..e6d61f4c83
--- /dev/null
+++ b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_callback_latest_dates.sql
@@ -0,0 +1,22 @@
+TEST (name "int_edge_callback_latest_dates__picks_the_latest_date_per_zone");
+
+WITH __ref__stg_edge_gateway_callbacks AS (
+ SELECT
+ v.callback_id::VARCHAR AS callback_id,
+ v.merchant_zone::VARCHAR AS merchant_zone,
+ v.local_wall_time::TIMESTAMP_NTZ AS local_wall_time,
+ v.event_at::TIMESTAMP_TZ AS event_at,
+ v.event_at_ns::TIMESTAMP_NTZ(9) AS event_at_ns,
+ v.event_time_text::VARCHAR AS event_time_text,
+ v.business_date::DATE AS business_date
+ FROM VALUES
+ ('GC-01', 'Europe/London', '2026-03-28 23:30:00', '2026-03-28 23:30:00 +00:00', '2026-03-28 23:30:00.123456789', '2026-03-28T23:30:00+00:00', '2026-03-28'),
+ ('GC-02', 'America/New_York', '2026-03-08 01:15:00', '2026-03-08 01:15:00 -05:00', '2026-03-08 01:15:00.5', '2026-03-08T01:15:00-05:00', '2026-03-08'),
+ ('GC-03', 'Asia/Kolkata', '2026-02-28 18:45:30', '2026-02-28 18:45:30 +05:30', NULL, '2026-02-28', '2026-02-28') AS v(callback_id, merchant_zone, local_wall_time, event_at, event_at_ns, event_time_text, business_date)
+),
+
+__expected__int_edge_callback_latest_dates AS (
+ SELECT
+ NULL AS merchant_zone,
+ NULL AS latest_date_text
+)
diff --git a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_callback_london_times.sql b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_callback_london_times.sql
new file mode 100644
index 0000000000..806585107d
--- /dev/null
+++ b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_callback_london_times.sql
@@ -0,0 +1,22 @@
+TEST (name "int_edge_callback_london_times__converts_zoned_times_to_london");
+
+WITH __ref__stg_edge_gateway_callbacks AS (
+ SELECT
+ v.callback_id::VARCHAR AS callback_id,
+ v.merchant_zone::VARCHAR AS merchant_zone,
+ v.local_wall_time::TIMESTAMP_NTZ AS local_wall_time,
+ v.event_at::TIMESTAMP_TZ AS event_at,
+ v.event_at_ns::TIMESTAMP_NTZ(9) AS event_at_ns,
+ v.event_time_text::VARCHAR AS event_time_text,
+ v.business_date::DATE AS business_date
+ FROM VALUES
+ ('GC-01', 'Europe/London', '2026-03-28 23:30:00', '2026-03-28 23:30:00 +00:00', '2026-03-28 23:30:00.123456789', '2026-03-28T23:30:00+00:00', '2026-03-28'),
+ ('GC-02', 'America/New_York', '2026-03-08 01:15:00', '2026-03-08 01:15:00 -05:00', '2026-03-08 01:15:00.5', '2026-03-08T01:15:00-05:00', '2026-03-08'),
+ ('GC-03', 'Asia/Kolkata', '2026-02-28 18:45:30', '2026-02-28 18:45:30 +05:30', NULL, '2026-02-28', '2026-02-28') AS v(callback_id, merchant_zone, local_wall_time, event_at, event_at_ns, event_time_text, business_date)
+),
+
+__expected__int_edge_callback_london_times AS (
+ SELECT
+ NULL AS callback_id,
+ NULL AS london_time
+)
diff --git a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_callback_recent_offsets.sql b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_callback_recent_offsets.sql
new file mode 100644
index 0000000000..45be08e948
--- /dev/null
+++ b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_callback_recent_offsets.sql
@@ -0,0 +1,22 @@
+TEST (name "int_edge_callback_recent_offsets__keeps_callbacks_from_march_by_their_zoned_time");
+
+WITH __ref__stg_edge_gateway_callbacks AS (
+ SELECT
+ v.callback_id::VARCHAR AS callback_id,
+ v.merchant_zone::VARCHAR AS merchant_zone,
+ v.local_wall_time::TIMESTAMP_NTZ AS local_wall_time,
+ v.event_at::TIMESTAMP_TZ AS event_at,
+ v.event_at_ns::TIMESTAMP_NTZ(9) AS event_at_ns,
+ v.event_time_text::VARCHAR AS event_time_text,
+ v.business_date::DATE AS business_date
+ FROM VALUES
+ ('GC-01', 'Europe/London', '2026-03-28 23:30:00', '2026-03-28 23:30:00 +00:00', '2026-03-28 23:30:00.123456789', '2026-03-28T23:30:00+00:00', '2026-03-28'),
+ ('GC-02', 'America/New_York', '2026-03-08 01:15:00', '2026-03-08 01:15:00 -05:00', '2026-03-08 01:15:00.5', '2026-03-08T01:15:00-05:00', '2026-03-08'),
+ ('GC-03', 'Asia/Kolkata', '2026-02-28 18:45:30', '2026-02-28 18:45:30 +05:30', NULL, '2026-02-28', '2026-02-28') AS v(callback_id, merchant_zone, local_wall_time, event_at, event_at_ns, event_time_text, business_date)
+),
+
+__expected__int_edge_callback_recent_offsets AS (
+ SELECT
+ NULL AS callback_id,
+ NULL AS event_at
+)
diff --git a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_callback_row_numbers.sql b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_callback_row_numbers.sql
new file mode 100644
index 0000000000..bed23244db
--- /dev/null
+++ b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_callback_row_numbers.sql
@@ -0,0 +1,23 @@
+TEST (name "int_edge_callback_row_numbers__numbers_rows_with_seq8");
+
+WITH __ref__stg_edge_gateway_callbacks AS (
+ SELECT
+ v.callback_id::VARCHAR AS callback_id,
+ v.merchant_zone::VARCHAR AS merchant_zone,
+ v.local_wall_time::TIMESTAMP_NTZ AS local_wall_time,
+ v.event_at::TIMESTAMP_TZ AS event_at,
+ v.event_at_ns::TIMESTAMP_NTZ(9) AS event_at_ns,
+ v.event_time_text::VARCHAR AS event_time_text,
+ v.business_date::DATE AS business_date
+ FROM VALUES
+ ('GC-01', 'Europe/London', '2026-03-28 23:30:00', '2026-03-28 23:30:00 +00:00', '2026-03-28 23:30:00.123456789', '2026-03-28T23:30:00+00:00', '2026-03-28'),
+ ('GC-02', 'America/New_York', '2026-03-08 01:15:00', '2026-03-08 01:15:00 -05:00', '2026-03-08 01:15:00.5', '2026-03-08T01:15:00-05:00', '2026-03-08'),
+ ('GC-03', 'Asia/Kolkata', '2026-02-28 18:45:30', '2026-02-28 18:45:30 +05:30', NULL, '2026-02-28', '2026-02-28') AS v(callback_id, merchant_zone, local_wall_time, event_at, event_at_ns, event_time_text, business_date)
+),
+
+__expected__int_edge_callback_row_numbers AS (
+ SELECT
+ NULL AS callback_id,
+ NULL AS wall_time_text,
+ NULL AS has_row_number
+)
diff --git a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_callback_safe_dates.sql b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_callback_safe_dates.sql
new file mode 100644
index 0000000000..a19944258d
--- /dev/null
+++ b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_callback_safe_dates.sql
@@ -0,0 +1,23 @@
+TEST (name "int_edge_callback_safe_dates__reads_dates_through_try_cast");
+
+WITH __ref__stg_edge_gateway_callbacks AS (
+ SELECT
+ v.callback_id::VARCHAR AS callback_id,
+ v.merchant_zone::VARCHAR AS merchant_zone,
+ v.local_wall_time::TIMESTAMP_NTZ AS local_wall_time,
+ v.event_at::TIMESTAMP_TZ AS event_at,
+ v.event_at_ns::TIMESTAMP_NTZ(9) AS event_at_ns,
+ v.event_time_text::VARCHAR AS event_time_text,
+ v.business_date::DATE AS business_date
+ FROM VALUES
+ ('GC-01', 'Europe/London', '2026-03-28 23:30:00', '2026-03-28 23:30:00 +00:00', '2026-03-28 23:30:00.123456789', '2026-03-28T23:30:00+00:00', '2026-03-28'),
+ ('GC-02', 'America/New_York', '2026-03-08 01:15:00', '2026-03-08 01:15:00 -05:00', '2026-03-08 01:15:00.5', '2026-03-08T01:15:00-05:00', '2026-03-08'),
+ ('GC-03', 'Asia/Kolkata', '2026-02-28 18:45:30', '2026-02-28 18:45:30 +05:30', NULL, '2026-02-28', '2026-02-28') AS v(callback_id, merchant_zone, local_wall_time, event_at, event_at_ns, event_time_text, business_date)
+),
+
+__expected__int_edge_callback_safe_dates AS (
+ SELECT
+ NULL AS callback_id,
+ NULL AS callback_json,
+ NULL AS business_date_again
+)
diff --git a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_callback_start_fallbacks.sql b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_callback_start_fallbacks.sql
new file mode 100644
index 0000000000..c4cba76128
--- /dev/null
+++ b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_callback_start_fallbacks.sql
@@ -0,0 +1,22 @@
+TEST (name "int_edge_callback_start_fallbacks__falls_back_to_text_times");
+
+WITH __ref__stg_edge_gateway_callbacks AS (
+ SELECT
+ v.callback_id::VARCHAR AS callback_id,
+ v.merchant_zone::VARCHAR AS merchant_zone,
+ v.local_wall_time::TIMESTAMP_NTZ AS local_wall_time,
+ v.event_at::TIMESTAMP_TZ AS event_at,
+ v.event_at_ns::TIMESTAMP_NTZ(9) AS event_at_ns,
+ v.event_time_text::VARCHAR AS event_time_text,
+ v.business_date::DATE AS business_date
+ FROM VALUES
+ ('GC-01', 'Europe/London', '2026-03-28 23:30:00', '2026-03-28 23:30:00 +00:00', '2026-03-28 23:30:00.123456789', '2026-03-28T23:30:00+00:00', '2026-03-28'),
+ ('GC-02', 'America/New_York', '2026-03-08 01:15:00', '2026-03-08 01:15:00 -05:00', '2026-03-08 01:15:00.5', '2026-03-08T01:15:00-05:00', '2026-03-08'),
+ ('GC-03', 'Asia/Kolkata', '2026-02-28 18:45:30', '2026-02-28 18:45:30 +05:30', NULL, '2026-02-28', '2026-02-28') AS v(callback_id, merchant_zone, local_wall_time, event_at, event_at_ns, event_time_text, business_date)
+),
+
+__expected__int_edge_callback_start_fallbacks AS (
+ SELECT
+ NULL AS callback_id,
+ NULL AS start_at
+)
diff --git a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_callback_text_dates.sql b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_callback_text_dates.sql
new file mode 100644
index 0000000000..02293fdfeb
--- /dev/null
+++ b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_callback_text_dates.sql
@@ -0,0 +1,23 @@
+TEST (name "int_edge_callback_text_dates__reads_text_dates_and_zoned_objects");
+
+WITH __ref__stg_edge_gateway_callbacks AS (
+ SELECT
+ v.callback_id::VARCHAR AS callback_id,
+ v.merchant_zone::VARCHAR AS merchant_zone,
+ v.local_wall_time::TIMESTAMP_NTZ AS local_wall_time,
+ v.event_at::TIMESTAMP_TZ AS event_at,
+ v.event_at_ns::TIMESTAMP_NTZ(9) AS event_at_ns,
+ v.event_time_text::VARCHAR AS event_time_text,
+ v.business_date::DATE AS business_date
+ FROM VALUES
+ ('GC-01', 'Europe/London', '2026-03-28 23:30:00', '2026-03-28 23:30:00 +00:00', '2026-03-28 23:30:00.123456789', '2026-03-28T23:30:00+00:00', '2026-03-28'),
+ ('GC-02', 'America/New_York', '2026-03-08 01:15:00', '2026-03-08 01:15:00 -05:00', '2026-03-08 01:15:00.5', '2026-03-08T01:15:00-05:00', '2026-03-08'),
+ ('GC-03', 'Asia/Kolkata', '2026-02-28 18:45:30', '2026-02-28 18:45:30 +05:30', NULL, '2026-02-28', '2026-02-28') AS v(callback_id, merchant_zone, local_wall_time, event_at, event_at_ns, event_time_text, business_date)
+),
+
+__expected__int_edge_callback_text_dates AS (
+ SELECT
+ NULL AS callback_id,
+ NULL AS text_date,
+ NULL AS event_json
+)
diff --git a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_callback_wall_time_lists.sql b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_callback_wall_time_lists.sql
new file mode 100644
index 0000000000..6dfd58c485
--- /dev/null
+++ b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_callback_wall_time_lists.sql
@@ -0,0 +1,22 @@
+TEST (name "int_edge_callback_wall_time_lists__lists_wall_times_per_zone");
+
+WITH __ref__stg_edge_gateway_callbacks AS (
+ SELECT
+ v.callback_id::VARCHAR AS callback_id,
+ v.merchant_zone::VARCHAR AS merchant_zone,
+ v.local_wall_time::TIMESTAMP_NTZ AS local_wall_time,
+ v.event_at::TIMESTAMP_TZ AS event_at,
+ v.event_at_ns::TIMESTAMP_NTZ(9) AS event_at_ns,
+ v.event_time_text::VARCHAR AS event_time_text,
+ v.business_date::DATE AS business_date
+ FROM VALUES
+ ('GC-01', 'Europe/London', '2026-03-28 23:30:00', '2026-03-28 23:30:00 +00:00', '2026-03-28 23:30:00.123456789', '2026-03-28T23:30:00+00:00', '2026-03-28'),
+ ('GC-02', 'America/New_York', '2026-03-08 01:15:00', '2026-03-08 01:15:00 -05:00', '2026-03-08 01:15:00.5', '2026-03-08T01:15:00-05:00', '2026-03-08'),
+ ('GC-03', 'Asia/Kolkata', '2026-02-28 18:45:30', '2026-02-28 18:45:30 +05:30', NULL, '2026-02-28', '2026-02-28') AS v(callback_id, merchant_zone, local_wall_time, event_at, event_at_ns, event_time_text, business_date)
+),
+
+__expected__int_edge_callback_wall_time_lists AS (
+ SELECT
+ NULL AS merchant_zone,
+ NULL AS wall_times
+)
diff --git a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_callback_zone_words.sql b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_callback_zone_words.sql
new file mode 100644
index 0000000000..118bc2d6c8
--- /dev/null
+++ b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_callback_zone_words.sql
@@ -0,0 +1,23 @@
+TEST (name "int_edge_callback_zone_words__counts_shared_words_and_keeps_zoned_times");
+
+WITH __ref__stg_edge_gateway_callbacks AS (
+ SELECT
+ v.callback_id::VARCHAR AS callback_id,
+ v.merchant_zone::VARCHAR AS merchant_zone,
+ v.local_wall_time::TIMESTAMP_NTZ AS local_wall_time,
+ v.event_at::TIMESTAMP_TZ AS event_at,
+ v.event_at_ns::TIMESTAMP_NTZ(9) AS event_at_ns,
+ v.event_time_text::VARCHAR AS event_time_text,
+ v.business_date::DATE AS business_date
+ FROM VALUES
+ ('GC-01', 'Europe/London', '2026-03-28 23:30:00', '2026-03-28 23:30:00 +00:00', '2026-03-28 23:30:00.123456789', '2026-03-28T23:30:00+00:00', '2026-03-28'),
+ ('GC-02', 'America/New_York', '2026-03-08 01:15:00', '2026-03-08 01:15:00 -05:00', '2026-03-08 01:15:00.5', '2026-03-08T01:15:00-05:00', '2026-03-08'),
+ ('GC-03', 'Asia/Kolkata', '2026-02-28 18:45:30', '2026-02-28 18:45:30 +05:30', NULL, '2026-02-28', '2026-02-28') AS v(callback_id, merchant_zone, local_wall_time, event_at, event_at_ns, event_time_text, business_date)
+),
+
+__expected__int_edge_callback_zone_words AS (
+ SELECT
+ NULL AS callback_id,
+ NULL AS shared_word_count,
+ NULL AS event_json
+)
diff --git a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_callback_zoned_dates.sql b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_callback_zoned_dates.sql
new file mode 100644
index 0000000000..8cf2fe597a
--- /dev/null
+++ b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_callback_zoned_dates.sql
@@ -0,0 +1,22 @@
+TEST (name "int_edge_callback_zoned_dates__keeps_callbacks_by_zoned_date");
+
+WITH __ref__stg_edge_gateway_callbacks AS (
+ SELECT
+ v.callback_id::VARCHAR AS callback_id,
+ v.merchant_zone::VARCHAR AS merchant_zone,
+ v.local_wall_time::TIMESTAMP_NTZ AS local_wall_time,
+ v.event_at::TIMESTAMP_TZ AS event_at,
+ v.event_at_ns::TIMESTAMP_NTZ(9) AS event_at_ns,
+ v.event_time_text::VARCHAR AS event_time_text,
+ v.business_date::DATE AS business_date
+ FROM VALUES
+ ('GC-01', 'Europe/London', '2026-03-28 23:30:00', '2026-03-28 23:30:00 +00:00', '2026-03-28 23:30:00.123456789', '2026-03-28T23:30:00+00:00', '2026-03-28'),
+ ('GC-02', 'America/New_York', '2026-03-08 01:15:00', '2026-03-08 01:15:00 -05:00', '2026-03-08 01:15:00.5', '2026-03-08T01:15:00-05:00', '2026-03-08'),
+ ('GC-03', 'Asia/Kolkata', '2026-02-28 18:45:30', '2026-02-28 18:45:30 +05:30', NULL, '2026-02-28', '2026-02-28') AS v(callback_id, merchant_zone, local_wall_time, event_at, event_at_ns, event_time_text, business_date)
+),
+
+__expected__int_edge_callback_zoned_dates AS (
+ SELECT
+ NULL AS callback_id,
+ NULL AS event_date
+)
diff --git a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_any_amounts.sql b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_any_amounts.sql
new file mode 100644
index 0000000000..a0d0994ac3
--- /dev/null
+++ b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_any_amounts.sql
@@ -0,0 +1,23 @@
+TEST (name "int_edge_check_any_amounts__reads_any_amount_per_group");
+
+WITH __ref__stg_edge_amount_checks AS (
+ SELECT
+ v.check_id::VARCHAR AS check_id,
+ v.group_code::VARCHAR AS group_code,
+ v.narrow_key::NUMBER(18, 0) AS narrow_key,
+ v.wide_key::NUMBER(38, 0) AS wide_key,
+ v.key_text::VARCHAR AS key_text,
+ v.amount::NUMBER(18, 2) AS amount,
+ v.ratio::FLOAT AS ratio
+ FROM VALUES
+ ('AC-01', 'G-1', 7, 7, '101,7', 10.05, 0.1),
+ ('AC-02', 'G-1', 12, 12, '2026-03-04', -0.55, 0.2),
+ ('AC-03', 'G-2', 3, NULL, '7', 0.00, 0.3),
+ ('AC-04', 'G-2', NULL, 40, NULL, NULL, NULL) AS v(check_id, group_code, narrow_key, wide_key, key_text, amount, ratio)
+),
+
+__expected__int_edge_check_any_amounts AS (
+ SELECT
+ NULL AS group_code,
+ NULL AS amounts_agree
+)
diff --git a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_bracket_strips.sql b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_bracket_strips.sql
new file mode 100644
index 0000000000..2e6ec456b1
--- /dev/null
+++ b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_bracket_strips.sql
@@ -0,0 +1,23 @@
+TEST (name "int_edge_check_bracket_strips__strips_bracketed_text");
+
+WITH __ref__stg_edge_amount_checks AS (
+ SELECT
+ v.check_id::VARCHAR AS check_id,
+ v.group_code::VARCHAR AS group_code,
+ v.narrow_key::NUMBER(18, 0) AS narrow_key,
+ v.wide_key::NUMBER(38, 0) AS wide_key,
+ v.key_text::VARCHAR AS key_text,
+ v.amount::NUMBER(18, 2) AS amount,
+ v.ratio::FLOAT AS ratio
+ FROM VALUES
+ ('AC-01', 'G-1', 7, 7, '101,7', 10.05, 0.1),
+ ('AC-02', 'G-1', 12, 12, '2026-03-04', -0.55, 0.2),
+ ('AC-03', 'G-2', 3, NULL, '7', 0.00, 0.3),
+ ('AC-04', 'G-2', NULL, 40, NULL, NULL, NULL) AS v(check_id, group_code, narrow_key, wide_key, key_text, amount, ratio)
+),
+
+__expected__int_edge_check_bracket_strips AS (
+ SELECT
+ NULL AS check_id,
+ NULL AS stripped_key
+)
diff --git a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_decoded_keys.sql b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_decoded_keys.sql
new file mode 100644
index 0000000000..04d90820b4
--- /dev/null
+++ b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_decoded_keys.sql
@@ -0,0 +1,23 @@
+TEST (name "int_edge_check_decoded_keys__decodes_keys_as_binary");
+
+WITH __ref__stg_edge_amount_checks AS (
+ SELECT
+ v.check_id::VARCHAR AS check_id,
+ v.group_code::VARCHAR AS group_code,
+ v.narrow_key::NUMBER(18, 0) AS narrow_key,
+ v.wide_key::NUMBER(38, 0) AS wide_key,
+ v.key_text::VARCHAR AS key_text,
+ v.amount::NUMBER(18, 2) AS amount,
+ v.ratio::FLOAT AS ratio
+ FROM VALUES
+ ('AC-01', 'G-1', 7, 7, '101,7', 10.05, 0.1),
+ ('AC-02', 'G-1', 12, 12, '2026-03-04', -0.55, 0.2),
+ ('AC-03', 'G-2', 3, NULL, '7', 0.00, 0.3),
+ ('AC-04', 'G-2', NULL, 40, NULL, NULL, NULL) AS v(check_id, group_code, narrow_key, wide_key, key_text, amount, ratio)
+),
+
+__expected__int_edge_check_decoded_keys AS (
+ SELECT
+ NULL AS check_id,
+ NULL AS decoded_key_hex
+)
diff --git a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_distinct_tuples.sql b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_distinct_tuples.sql
new file mode 100644
index 0000000000..6e8bdb4b93
--- /dev/null
+++ b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_distinct_tuples.sql
@@ -0,0 +1,23 @@
+TEST (name "int_edge_check_distinct_tuples__counts_distinct_tuples_per_group");
+
+WITH __ref__stg_edge_amount_checks AS (
+ SELECT
+ v.check_id::VARCHAR AS check_id,
+ v.group_code::VARCHAR AS group_code,
+ v.narrow_key::NUMBER(18, 0) AS narrow_key,
+ v.wide_key::NUMBER(38, 0) AS wide_key,
+ v.key_text::VARCHAR AS key_text,
+ v.amount::NUMBER(18, 2) AS amount,
+ v.ratio::FLOAT AS ratio
+ FROM VALUES
+ ('AC-01', 'G-1', 7, 7, '101,7', 10.05, 0.1),
+ ('AC-02', 'G-1', 12, 12, '2026-03-04', -0.55, 0.2),
+ ('AC-03', 'G-2', 3, NULL, '7', 0.00, 0.3),
+ ('AC-04', 'G-2', NULL, 40, NULL, NULL, NULL) AS v(check_id, group_code, narrow_key, wide_key, key_text, amount, ratio)
+),
+
+__expected__int_edge_check_distinct_tuples AS (
+ SELECT
+ NULL AS group_code,
+ NULL AS distinct_tuples
+)
diff --git a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_formatted_dates.sql b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_formatted_dates.sql
new file mode 100644
index 0000000000..827bcc7c59
--- /dev/null
+++ b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_formatted_dates.sql
@@ -0,0 +1,23 @@
+TEST (name "int_edge_check_formatted_dates__reads_dates_in_a_format_from_a_column");
+
+WITH __ref__stg_edge_amount_checks AS (
+ SELECT
+ v.check_id::VARCHAR AS check_id,
+ v.group_code::VARCHAR AS group_code,
+ v.narrow_key::NUMBER(18, 0) AS narrow_key,
+ v.wide_key::NUMBER(38, 0) AS wide_key,
+ v.key_text::VARCHAR AS key_text,
+ v.amount::NUMBER(18, 2) AS amount,
+ v.ratio::FLOAT AS ratio
+ FROM VALUES
+ ('AC-01', 'G-1', 7, 7, '101,7', 10.05, 0.1),
+ ('AC-02', 'G-1', 12, 12, '2026-03-04', -0.55, 0.2),
+ ('AC-03', 'G-2', 3, NULL, '7', 0.00, 0.3),
+ ('AC-04', 'G-2', NULL, 40, NULL, NULL, NULL) AS v(check_id, group_code, narrow_key, wide_key, key_text, amount, ratio)
+),
+
+__expected__int_edge_check_formatted_dates AS (
+ SELECT
+ NULL AS check_id,
+ NULL AS key_date
+)
diff --git a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_generated_rows.sql b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_generated_rows.sql
new file mode 100644
index 0000000000..2081c0091e
--- /dev/null
+++ b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_generated_rows.sql
@@ -0,0 +1,25 @@
+TEST (name "int_edge_check_generated_rows__generates_one_row_per_check");
+
+WITH __ref__stg_edge_amount_checks AS (
+ SELECT
+ v.check_id::VARCHAR AS check_id,
+ v.group_code::VARCHAR AS group_code,
+ v.narrow_key::NUMBER(18, 0) AS narrow_key,
+ v.wide_key::NUMBER(38, 0) AS wide_key,
+ v.key_text::VARCHAR AS key_text,
+ v.amount::NUMBER(18, 2) AS amount,
+ v.ratio::FLOAT AS ratio
+ FROM VALUES
+ ('AC-01', 'G-1', 7, 7, '101,7', 10.05, 0.1),
+ ('AC-02', 'G-1', 12, 12, '2026-03-04', -0.55, 0.2),
+ ('AC-03', 'G-2', 3, NULL, '7', 0.00, 0.3),
+ ('AC-04', 'G-2', NULL, 40, NULL, NULL, NULL) AS v(check_id, group_code, narrow_key, wide_key, key_text, amount, ratio)
+),
+
+__expected__int_edge_check_generated_rows AS (
+ SELECT
+ NULL AS summary_id,
+ NULL AS generated_count,
+ NULL AS numbers_are_valid,
+ NULL AS draws_are_one
+)
diff --git a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_group_flags.sql b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_group_flags.sql
new file mode 100644
index 0000000000..89d71b347f
--- /dev/null
+++ b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_group_flags.sql
@@ -0,0 +1,23 @@
+TEST (name "int_edge_check_group_flags__flags_groups_without_payments");
+
+WITH __ref__stg_edge_amount_checks AS (
+ SELECT
+ v.check_id::VARCHAR AS check_id,
+ v.group_code::VARCHAR AS group_code,
+ v.narrow_key::NUMBER(18, 0) AS narrow_key,
+ v.wide_key::NUMBER(38, 0) AS wide_key,
+ v.key_text::VARCHAR AS key_text,
+ v.amount::NUMBER(18, 2) AS amount,
+ v.ratio::FLOAT AS ratio
+ FROM VALUES
+ ('AC-01', 'G-1', 7, 7, '101,7', 10.05, 0.1),
+ ('AC-02', 'G-1', 12, 12, '2026-03-04', -0.55, 0.2),
+ ('AC-03', 'G-2', 3, NULL, '7', 0.00, 0.3),
+ ('AC-04', 'G-2', NULL, 40, NULL, NULL, NULL) AS v(check_id, group_code, narrow_key, wide_key, key_text, amount, ratio)
+),
+
+__expected__int_edge_check_group_flags AS (
+ SELECT
+ NULL AS check_id,
+ NULL AS is_unpaid_group
+)
diff --git a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_group_key_lists.sql b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_group_key_lists.sql
new file mode 100644
index 0000000000..e815fba373
--- /dev/null
+++ b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_group_key_lists.sql
@@ -0,0 +1,23 @@
+TEST (name "int_edge_check_group_key_lists__counts_group_keys_with_a_window");
+
+WITH __ref__stg_edge_amount_checks AS (
+ SELECT
+ v.check_id::VARCHAR AS check_id,
+ v.group_code::VARCHAR AS group_code,
+ v.narrow_key::NUMBER(18, 0) AS narrow_key,
+ v.wide_key::NUMBER(38, 0) AS wide_key,
+ v.key_text::VARCHAR AS key_text,
+ v.amount::NUMBER(18, 2) AS amount,
+ v.ratio::FLOAT AS ratio
+ FROM VALUES
+ ('AC-01', 'G-1', 7, 7, '101,7', 10.05, 0.1),
+ ('AC-02', 'G-1', 12, 12, '2026-03-04', -0.55, 0.2),
+ ('AC-03', 'G-2', 3, NULL, '7', 0.00, 0.3),
+ ('AC-04', 'G-2', NULL, 40, NULL, NULL, NULL) AS v(check_id, group_code, narrow_key, wide_key, key_text, amount, ratio)
+),
+
+__expected__int_edge_check_group_key_lists AS (
+ SELECT
+ NULL AS check_id,
+ NULL AS group_key_count
+)
diff --git a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_key_list_edits.sql b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_key_list_edits.sql
new file mode 100644
index 0000000000..c5625a988e
--- /dev/null
+++ b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_key_list_edits.sql
@@ -0,0 +1,25 @@
+TEST (name "int_edge_check_key_list_edits__edits_key_lists_and_objects");
+
+WITH __ref__stg_edge_amount_checks AS (
+ SELECT
+ v.check_id::VARCHAR AS check_id,
+ v.group_code::VARCHAR AS group_code,
+ v.narrow_key::NUMBER(18, 0) AS narrow_key,
+ v.wide_key::NUMBER(38, 0) AS wide_key,
+ v.key_text::VARCHAR AS key_text,
+ v.amount::NUMBER(18, 2) AS amount,
+ v.ratio::FLOAT AS ratio
+ FROM VALUES
+ ('AC-01', 'G-1', 7, 7, '101,7', 10.05, 0.1),
+ ('AC-02', 'G-1', 12, 12, '2026-03-04', -0.55, 0.2),
+ ('AC-03', 'G-2', 3, NULL, '7', 0.00, 0.3),
+ ('AC-04', 'G-2', NULL, 40, NULL, NULL, NULL) AS v(check_id, group_code, narrow_key, wide_key, key_text, amount, ratio)
+),
+
+__expected__int_edge_check_key_list_edits AS (
+ SELECT
+ NULL AS check_id,
+ NULL AS kept_part_count,
+ NULL AS appended_part_count,
+ NULL AS check_json
+)
diff --git a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_key_parts.sql b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_key_parts.sql
new file mode 100644
index 0000000000..eb4bc2c7c2
--- /dev/null
+++ b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_key_parts.sql
@@ -0,0 +1,23 @@
+TEST (name "int_edge_check_key_parts__reads_key_parts_as_numbers");
+
+WITH __ref__stg_edge_amount_checks AS (
+ SELECT
+ v.check_id::VARCHAR AS check_id,
+ v.group_code::VARCHAR AS group_code,
+ v.narrow_key::NUMBER(18, 0) AS narrow_key,
+ v.wide_key::NUMBER(38, 0) AS wide_key,
+ v.key_text::VARCHAR AS key_text,
+ v.amount::NUMBER(18, 2) AS amount,
+ v.ratio::FLOAT AS ratio
+ FROM VALUES
+ ('AC-01', 'G-1', 7, 7, '101,7', 10.05, 0.1),
+ ('AC-02', 'G-1', 12, 12, '2026-03-04', -0.55, 0.2),
+ ('AC-03', 'G-2', 3, NULL, '7', 0.00, 0.3),
+ ('AC-04', 'G-2', NULL, 40, NULL, NULL, NULL) AS v(check_id, group_code, narrow_key, wide_key, key_text, amount, ratio)
+),
+
+__expected__int_edge_check_key_parts AS (
+ SELECT
+ NULL AS check_id,
+ NULL AS key_parts
+)
diff --git a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_key_rewrites.sql b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_key_rewrites.sql
new file mode 100644
index 0000000000..eba67ae866
--- /dev/null
+++ b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_key_rewrites.sql
@@ -0,0 +1,23 @@
+TEST (name "int_edge_check_key_rewrites__rewrites_long_numbers_from_group_parts");
+
+WITH __ref__stg_edge_amount_checks AS (
+ SELECT
+ v.check_id::VARCHAR AS check_id,
+ v.group_code::VARCHAR AS group_code,
+ v.narrow_key::NUMBER(18, 0) AS narrow_key,
+ v.wide_key::NUMBER(38, 0) AS wide_key,
+ v.key_text::VARCHAR AS key_text,
+ v.amount::NUMBER(18, 2) AS amount,
+ v.ratio::FLOAT AS ratio
+ FROM VALUES
+ ('AC-01', 'G-1', 7, 7, '101,7', 10.05, 0.1),
+ ('AC-02', 'G-1', 12, 12, '2026-03-04', -0.55, 0.2),
+ ('AC-03', 'G-2', 3, NULL, '7', 0.00, 0.3),
+ ('AC-04', 'G-2', NULL, 40, NULL, NULL, NULL) AS v(check_id, group_code, narrow_key, wide_key, key_text, amount, ratio)
+),
+
+__expected__int_edge_check_key_rewrites AS (
+ SELECT
+ NULL AS check_id,
+ NULL AS rewritten_key
+)
diff --git a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_label_lookups.sql b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_label_lookups.sql
new file mode 100644
index 0000000000..6a49363102
--- /dev/null
+++ b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_label_lookups.sql
@@ -0,0 +1,23 @@
+TEST (name "int_edge_check_label_lookups__looks_labels_up_by_key_part");
+
+WITH __ref__stg_edge_amount_checks AS (
+ SELECT
+ v.check_id::VARCHAR AS check_id,
+ v.group_code::VARCHAR AS group_code,
+ v.narrow_key::NUMBER(18, 0) AS narrow_key,
+ v.wide_key::NUMBER(38, 0) AS wide_key,
+ v.key_text::VARCHAR AS key_text,
+ v.amount::NUMBER(18, 2) AS amount,
+ v.ratio::FLOAT AS ratio
+ FROM VALUES
+ ('AC-01', 'G-1', 7, 7, '101,7', 10.05, 0.1),
+ ('AC-02', 'G-1', 12, 12, '2026-03-04', -0.55, 0.2),
+ ('AC-03', 'G-2', 3, NULL, '7', 0.00, 0.3),
+ ('AC-04', 'G-2', NULL, 40, NULL, NULL, NULL) AS v(check_id, group_code, narrow_key, wide_key, key_text, amount, ratio)
+),
+
+__expected__int_edge_check_label_lookups AS (
+ SELECT
+ NULL AS check_id,
+ NULL AS key_label
+)
diff --git a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_last_known_keys.sql b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_last_known_keys.sql
new file mode 100644
index 0000000000..935b7142d9
--- /dev/null
+++ b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_last_known_keys.sql
@@ -0,0 +1,23 @@
+TEST (name "int_edge_check_last_known_keys__carries_the_last_listed_key_forward");
+
+WITH __ref__stg_edge_amount_checks AS (
+ SELECT
+ v.check_id::VARCHAR AS check_id,
+ v.group_code::VARCHAR AS group_code,
+ v.narrow_key::NUMBER(18, 0) AS narrow_key,
+ v.wide_key::NUMBER(38, 0) AS wide_key,
+ v.key_text::VARCHAR AS key_text,
+ v.amount::NUMBER(18, 2) AS amount,
+ v.ratio::FLOAT AS ratio
+ FROM VALUES
+ ('AC-01', 'G-1', 7, 7, '101,7', 10.05, 0.1),
+ ('AC-02', 'G-1', 12, 12, '2026-03-04', -0.55, 0.2),
+ ('AC-03', 'G-2', 3, NULL, '7', 0.00, 0.3),
+ ('AC-04', 'G-2', NULL, 40, NULL, NULL, NULL) AS v(check_id, group_code, narrow_key, wide_key, key_text, amount, ratio)
+),
+
+__expected__int_edge_check_last_known_keys AS (
+ SELECT
+ NULL AS check_id,
+ NULL AS last_listed_key
+)
diff --git a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_local_times.sql b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_local_times.sql
new file mode 100644
index 0000000000..4184870dcf
--- /dev/null
+++ b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_local_times.sql
@@ -0,0 +1,23 @@
+TEST (name "int_edge_check_local_times__reads_local_time_text");
+
+WITH __ref__stg_edge_amount_checks AS (
+ SELECT
+ v.check_id::VARCHAR AS check_id,
+ v.group_code::VARCHAR AS group_code,
+ v.narrow_key::NUMBER(18, 0) AS narrow_key,
+ v.wide_key::NUMBER(38, 0) AS wide_key,
+ v.key_text::VARCHAR AS key_text,
+ v.amount::NUMBER(18, 2) AS amount,
+ v.ratio::FLOAT AS ratio
+ FROM VALUES
+ ('AC-01', 'G-1', 7, 7, '101,7', 10.05, 0.1),
+ ('AC-02', 'G-1', 12, 12, '2026-03-04', -0.55, 0.2),
+ ('AC-03', 'G-2', 3, NULL, '7', 0.00, 0.3),
+ ('AC-04', 'G-2', NULL, 40, NULL, NULL, NULL) AS v(check_id, group_code, narrow_key, wide_key, key_text, amount, ratio)
+),
+
+__expected__int_edge_check_local_times AS (
+ SELECT
+ NULL AS check_id,
+ NULL AS noted_at
+)
diff --git a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_minute_times.sql b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_minute_times.sql
new file mode 100644
index 0000000000..713cc2ef9a
--- /dev/null
+++ b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_minute_times.sql
@@ -0,0 +1,23 @@
+TEST (name "int_edge_check_minute_times__reads_times_without_seconds");
+
+WITH __ref__stg_edge_amount_checks AS (
+ SELECT
+ v.check_id::VARCHAR AS check_id,
+ v.group_code::VARCHAR AS group_code,
+ v.narrow_key::NUMBER(18, 0) AS narrow_key,
+ v.wide_key::NUMBER(38, 0) AS wide_key,
+ v.key_text::VARCHAR AS key_text,
+ v.amount::NUMBER(18, 2) AS amount,
+ v.ratio::FLOAT AS ratio
+ FROM VALUES
+ ('AC-01', 'G-1', 7, 7, '101,7', 10.05, 0.1),
+ ('AC-02', 'G-1', 12, 12, '2026-03-04', -0.55, 0.2),
+ ('AC-03', 'G-2', 3, NULL, '7', 0.00, 0.3),
+ ('AC-04', 'G-2', NULL, 40, NULL, NULL, NULL) AS v(check_id, group_code, narrow_key, wide_key, key_text, amount, ratio)
+),
+
+__expected__int_edge_check_minute_times AS (
+ SELECT
+ NULL AS check_id,
+ NULL AS opened_at
+)
diff --git a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_month_starts.sql b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_month_starts.sql
new file mode 100644
index 0000000000..869072f51e
--- /dev/null
+++ b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_month_starts.sql
@@ -0,0 +1,23 @@
+TEST (name "int_edge_check_month_starts__mixes_dates_and_text_in_values");
+
+WITH __ref__stg_edge_amount_checks AS (
+ SELECT
+ v.check_id::VARCHAR AS check_id,
+ v.group_code::VARCHAR AS group_code,
+ v.narrow_key::NUMBER(18, 0) AS narrow_key,
+ v.wide_key::NUMBER(38, 0) AS wide_key,
+ v.key_text::VARCHAR AS key_text,
+ v.amount::NUMBER(18, 2) AS amount,
+ v.ratio::FLOAT AS ratio
+ FROM VALUES
+ ('AC-01', 'G-1', 7, 7, '101,7', 10.05, 0.1),
+ ('AC-02', 'G-1', 12, 12, '2026-03-04', -0.55, 0.2),
+ ('AC-03', 'G-2', 3, NULL, '7', 0.00, 0.3),
+ ('AC-04', 'G-2', NULL, 40, NULL, NULL, NULL) AS v(check_id, group_code, narrow_key, wide_key, key_text, amount, ratio)
+),
+
+__expected__int_edge_check_month_starts AS (
+ SELECT
+ NULL AS period_id,
+ NULL AS period_start
+)
diff --git a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_note_unions.sql b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_note_unions.sql
new file mode 100644
index 0000000000..b1880a1f2c
--- /dev/null
+++ b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_note_unions.sql
@@ -0,0 +1,23 @@
+TEST (name "int_edge_check_note_unions__fills_all_null_notes");
+
+WITH __ref__stg_edge_amount_checks AS (
+ SELECT
+ v.check_id::VARCHAR AS check_id,
+ v.group_code::VARCHAR AS group_code,
+ v.narrow_key::NUMBER(18, 0) AS narrow_key,
+ v.wide_key::NUMBER(38, 0) AS wide_key,
+ v.key_text::VARCHAR AS key_text,
+ v.amount::NUMBER(18, 2) AS amount,
+ v.ratio::FLOAT AS ratio
+ FROM VALUES
+ ('AC-01', 'G-1', 7, 7, '101,7', 10.05, 0.1),
+ ('AC-02', 'G-1', 12, 12, '2026-03-04', -0.55, 0.2),
+ ('AC-03', 'G-2', 3, NULL, '7', 0.00, 0.3),
+ ('AC-04', 'G-2', NULL, 40, NULL, NULL, NULL) AS v(check_id, group_code, narrow_key, wide_key, key_text, amount, ratio)
+),
+
+__expected__int_edge_check_note_unions AS (
+ SELECT
+ NULL AS note_row_id,
+ NULL AS note
+)
diff --git a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_number_arrays.sql b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_number_arrays.sql
new file mode 100644
index 0000000000..5a5aff5115
--- /dev/null
+++ b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_number_arrays.sql
@@ -0,0 +1,23 @@
+TEST (name "int_edge_check_number_arrays__casts_amount_arrays_through_a_structured_type");
+
+WITH __ref__stg_edge_amount_checks AS (
+ SELECT
+ v.check_id::VARCHAR AS check_id,
+ v.group_code::VARCHAR AS group_code,
+ v.narrow_key::NUMBER(18, 0) AS narrow_key,
+ v.wide_key::NUMBER(38, 0) AS wide_key,
+ v.key_text::VARCHAR AS key_text,
+ v.amount::NUMBER(18, 2) AS amount,
+ v.ratio::FLOAT AS ratio
+ FROM VALUES
+ ('AC-01', 'G-1', 7, 7, '101,7', 10.05, 0.1),
+ ('AC-02', 'G-1', 12, 12, '2026-03-04', -0.55, 0.2),
+ ('AC-03', 'G-2', 3, NULL, '7', 0.00, 0.3),
+ ('AC-04', 'G-2', NULL, 40, NULL, NULL, NULL) AS v(check_id, group_code, narrow_key, wide_key, key_text, amount, ratio)
+),
+
+__expected__int_edge_check_number_arrays AS (
+ SELECT
+ NULL AS check_id,
+ NULL AS amounts
+)
diff --git a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_number_labels.sql b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_number_labels.sql
new file mode 100644
index 0000000000..3f0deb5e5e
--- /dev/null
+++ b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_number_labels.sql
@@ -0,0 +1,23 @@
+TEST (name "int_edge_check_number_labels__labels_checks_with_number_text");
+
+WITH __ref__stg_edge_amount_checks AS (
+ SELECT
+ v.check_id::VARCHAR AS check_id,
+ v.group_code::VARCHAR AS group_code,
+ v.narrow_key::NUMBER(18, 0) AS narrow_key,
+ v.wide_key::NUMBER(38, 0) AS wide_key,
+ v.key_text::VARCHAR AS key_text,
+ v.amount::NUMBER(18, 2) AS amount,
+ v.ratio::FLOAT AS ratio
+ FROM VALUES
+ ('AC-01', 'G-1', 7, 7, '101,7', 10.05, 0.1),
+ ('AC-02', 'G-1', 12, 12, '2026-03-04', -0.55, 0.2),
+ ('AC-03', 'G-2', 3, NULL, '7', 0.00, 0.3),
+ ('AC-04', 'G-2', NULL, 40, NULL, NULL, NULL) AS v(check_id, group_code, narrow_key, wide_key, key_text, amount, ratio)
+),
+
+__expected__int_edge_check_number_labels AS (
+ SELECT
+ NULL AS check_id,
+ NULL AS cluster_label
+)
diff --git a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_pair_filters.sql b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_pair_filters.sql
new file mode 100644
index 0000000000..b50a34b980
--- /dev/null
+++ b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_pair_filters.sql
@@ -0,0 +1,23 @@
+TEST (name "int_edge_check_pair_filters__keeps_listed_pairs");
+
+WITH __ref__stg_edge_amount_checks AS (
+ SELECT
+ v.check_id::VARCHAR AS check_id,
+ v.group_code::VARCHAR AS group_code,
+ v.narrow_key::NUMBER(18, 0) AS narrow_key,
+ v.wide_key::NUMBER(38, 0) AS wide_key,
+ v.key_text::VARCHAR AS key_text,
+ v.amount::NUMBER(18, 2) AS amount,
+ v.ratio::FLOAT AS ratio
+ FROM VALUES
+ ('AC-01', 'G-1', 7, 7, '101,7', 10.05, 0.1),
+ ('AC-02', 'G-1', 12, 12, '2026-03-04', -0.55, 0.2),
+ ('AC-03', 'G-2', 3, NULL, '7', 0.00, 0.3),
+ ('AC-04', 'G-2', NULL, 40, NULL, NULL, NULL) AS v(check_id, group_code, narrow_key, wide_key, key_text, amount, ratio)
+),
+
+__expected__int_edge_check_pair_filters AS (
+ SELECT
+ NULL AS check_id,
+ NULL AS has_seven
+)
diff --git a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_pattern_matches.sql b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_pattern_matches.sql
new file mode 100644
index 0000000000..20b6a47afd
--- /dev/null
+++ b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_pattern_matches.sql
@@ -0,0 +1,17 @@
+TEST (name "int_edge_check_pattern_matches__matches_keys_against_group_patterns");
+
+WITH __ref__stg_edge_amount_checks AS (
+ SELECT
+ v.check_id::VARCHAR AS check_id,
+ v.group_code::VARCHAR AS group_code,
+ v.key_text::VARCHAR AS key_text
+ FROM VALUES
+ ('AC-01', '^1(?=0)', '101,7'),
+ ('AC-02', '[[:digit:]]+', '7') AS v(check_id, group_code, key_text)
+),
+
+__expected__int_edge_check_pattern_matches AS (
+ SELECT
+ NULL AS check_id,
+ NULL AS matches_group
+)
diff --git a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_reduced_keys.sql b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_reduced_keys.sql
new file mode 100644
index 0000000000..d7772d2678
--- /dev/null
+++ b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_reduced_keys.sql
@@ -0,0 +1,23 @@
+TEST (name "int_edge_check_reduced_keys__folds_key_parts_onto_groups");
+
+WITH __ref__stg_edge_amount_checks AS (
+ SELECT
+ v.check_id::VARCHAR AS check_id,
+ v.group_code::VARCHAR AS group_code,
+ v.narrow_key::NUMBER(18, 0) AS narrow_key,
+ v.wide_key::NUMBER(38, 0) AS wide_key,
+ v.key_text::VARCHAR AS key_text,
+ v.amount::NUMBER(18, 2) AS amount,
+ v.ratio::FLOAT AS ratio
+ FROM VALUES
+ ('AC-01', 'G-1', 7, 7, '101,7', 10.05, 0.1),
+ ('AC-02', 'G-1', 12, 12, '2026-03-04', -0.55, 0.2),
+ ('AC-03', 'G-2', 3, NULL, '7', 0.00, 0.3),
+ ('AC-04', 'G-2', NULL, 40, NULL, NULL, NULL) AS v(check_id, group_code, narrow_key, wide_key, key_text, amount, ratio)
+),
+
+__expected__int_edge_check_reduced_keys AS (
+ SELECT
+ NULL AS check_id,
+ NULL AS folded_key
+)
diff --git a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_sparse_arrays.sql b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_sparse_arrays.sql
new file mode 100644
index 0000000000..44211ba99b
--- /dev/null
+++ b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_sparse_arrays.sql
@@ -0,0 +1,23 @@
+TEST (name "int_edge_check_sparse_arrays__writes_arrays_with_holes");
+
+WITH __ref__stg_edge_amount_checks AS (
+ SELECT
+ v.check_id::VARCHAR AS check_id,
+ v.group_code::VARCHAR AS group_code,
+ v.narrow_key::NUMBER(18, 0) AS narrow_key,
+ v.wide_key::NUMBER(38, 0) AS wide_key,
+ v.key_text::VARCHAR AS key_text,
+ v.amount::NUMBER(18, 2) AS amount,
+ v.ratio::FLOAT AS ratio
+ FROM VALUES
+ ('AC-01', 'G-1', 7, 7, '101,7', 10.05, 0.1),
+ ('AC-02', 'G-1', 12, 12, '2026-03-04', -0.55, 0.2),
+ ('AC-03', 'G-2', 3, NULL, '7', 0.00, 0.3),
+ ('AC-04', 'G-2', NULL, 40, NULL, NULL, NULL) AS v(check_id, group_code, narrow_key, wide_key, key_text, amount, ratio)
+),
+
+__expected__int_edge_check_sparse_arrays AS (
+ SELECT
+ NULL AS check_id,
+ NULL AS pair_text
+)
diff --git a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_text_arrays.sql b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_text_arrays.sql
new file mode 100644
index 0000000000..f1b5e1341d
--- /dev/null
+++ b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_text_arrays.sql
@@ -0,0 +1,23 @@
+TEST (name "int_edge_check_text_arrays__casts_text_arrays_through_a_structured_type");
+
+WITH __ref__stg_edge_amount_checks AS (
+ SELECT
+ v.check_id::VARCHAR AS check_id,
+ v.group_code::VARCHAR AS group_code,
+ v.narrow_key::NUMBER(18, 0) AS narrow_key,
+ v.wide_key::NUMBER(38, 0) AS wide_key,
+ v.key_text::VARCHAR AS key_text,
+ v.amount::NUMBER(18, 2) AS amount,
+ v.ratio::FLOAT AS ratio
+ FROM VALUES
+ ('AC-01', 'G-1', 7, 7, '101,7', 10.05, 0.1),
+ ('AC-02', 'G-1', 12, 12, '2026-03-04', -0.55, 0.2),
+ ('AC-03', 'G-2', 3, NULL, '7', 0.00, 0.3),
+ ('AC-04', 'G-2', NULL, 40, NULL, NULL, NULL) AS v(check_id, group_code, narrow_key, wide_key, key_text, amount, ratio)
+),
+
+__expected__int_edge_check_text_arrays AS (
+ SELECT
+ NULL AS check_id,
+ NULL AS key_parts
+)
diff --git a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_unnamed_labels.sql b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_unnamed_labels.sql
new file mode 100644
index 0000000000..fa350860bc
--- /dev/null
+++ b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_unnamed_labels.sql
@@ -0,0 +1,23 @@
+TEST (name "int_edge_check_unnamed_labels__reads_unaliased_labels");
+
+WITH __ref__stg_edge_amount_checks AS (
+ SELECT
+ v.check_id::VARCHAR AS check_id,
+ v.group_code::VARCHAR AS group_code,
+ v.narrow_key::NUMBER(18, 0) AS narrow_key,
+ v.wide_key::NUMBER(38, 0) AS wide_key,
+ v.key_text::VARCHAR AS key_text,
+ v.amount::NUMBER(18, 2) AS amount,
+ v.ratio::FLOAT AS ratio
+ FROM VALUES
+ ('AC-01', 'G-1', 7, 7, '101,7', 10.05, 0.1),
+ ('AC-02', 'G-1', 12, 12, '2026-03-04', -0.55, 0.2),
+ ('AC-03', 'G-2', 3, NULL, '7', 0.00, 0.3),
+ ('AC-04', 'G-2', NULL, 40, NULL, NULL, NULL) AS v(check_id, group_code, narrow_key, wide_key, key_text, amount, ratio)
+),
+
+__expected__int_edge_check_unnamed_labels AS (
+ SELECT
+ NULL AS check_id,
+ NULL AS label
+)
diff --git a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_variant_branches.sql b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_variant_branches.sql
new file mode 100644
index 0000000000..7a80135778
--- /dev/null
+++ b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_variant_branches.sql
@@ -0,0 +1,26 @@
+TEST (name "int_edge_check_variant_branches__branches_on_variant_paths");
+
+WITH __ref__stg_edge_amount_checks AS (
+ SELECT
+ v.check_id::VARCHAR AS check_id,
+ v.group_code::VARCHAR AS group_code,
+ v.narrow_key::NUMBER(18, 0) AS narrow_key,
+ v.wide_key::NUMBER(38, 0) AS wide_key,
+ v.key_text::VARCHAR AS key_text,
+ v.amount::NUMBER(18, 2) AS amount,
+ v.ratio::FLOAT AS ratio,
+ v.json_text::VARCHAR AS json_text
+ FROM VALUES
+ ('AC-01', 'G-1', 7, 7, '101,7', 10.05, 0.1, '{"r": 0.1}'),
+ ('AC-02', 'G-1', 12, 12, '2026-03-04', -0.55, 0.2, '{"r": 2}'),
+ ('AC-03', 'G-2', 3, NULL, '7', 0.00, 0.3, NULL),
+ ('AC-04', 'G-2', NULL, 40, NULL, NULL, NULL, '{}') AS v(check_id, group_code, narrow_key, wide_key, key_text, amount, ratio, json_text)
+),
+
+__expected__int_edge_check_variant_branches AS (
+ SELECT
+ NULL AS check_id,
+ NULL AS ratio_branch,
+ NULL AS dates_differ,
+ NULL AS largest_ratio_text
+)
diff --git a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_wide_sums.sql b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_wide_sums.sql
new file mode 100644
index 0000000000..029917da24
--- /dev/null
+++ b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_wide_sums.sql
@@ -0,0 +1,23 @@
+TEST (name "int_edge_check_wide_sums__stacks_narrow_and_wide_keys");
+
+WITH __ref__stg_edge_amount_checks AS (
+ SELECT
+ v.check_id::VARCHAR AS check_id,
+ v.group_code::VARCHAR AS group_code,
+ v.narrow_key::NUMBER(18, 0) AS narrow_key,
+ v.wide_key::NUMBER(38, 0) AS wide_key,
+ v.key_text::VARCHAR AS key_text,
+ v.amount::NUMBER(18, 2) AS amount,
+ v.ratio::FLOAT AS ratio
+ FROM VALUES
+ ('AC-01', 'G-1', 7, 7, '101,7', 10.05, 0.1),
+ ('AC-02', 'G-1', 12, 12, '2026-03-04', -0.55, 0.2),
+ ('AC-03', 'G-2', 3, NULL, '7', 0.00, 0.3),
+ ('AC-04', 'G-2', NULL, 40, NULL, NULL, NULL) AS v(check_id, group_code, narrow_key, wide_key, key_text, amount, ratio)
+),
+
+__expected__int_edge_check_wide_sums AS (
+ SELECT
+ NULL AS key_row_id,
+ NULL AS key_value
+)
diff --git a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_xml_checks.sql b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_xml_checks.sql
new file mode 100644
index 0000000000..7beca4390c
--- /dev/null
+++ b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_xml_checks.sql
@@ -0,0 +1,24 @@
+TEST (name "int_edge_check_xml_checks__checks_key_text_as_xml");
+
+WITH __ref__stg_edge_amount_checks AS (
+ SELECT
+ v.check_id::VARCHAR AS check_id,
+ v.group_code::VARCHAR AS group_code,
+ v.narrow_key::NUMBER(18, 0) AS narrow_key,
+ v.wide_key::NUMBER(38, 0) AS wide_key,
+ v.key_text::VARCHAR AS key_text,
+ v.amount::NUMBER(18, 2) AS amount,
+ v.ratio::FLOAT AS ratio
+ FROM VALUES
+ ('AC-01', 'G-1', 7, 7, '101,7', 10.05, 0.1),
+ ('AC-02', 'G-1', 12, 12, '2026-03-04', -0.55, 0.2),
+ ('AC-03', 'G-2', 3, NULL, '7', 0.00, 0.3),
+ ('AC-04', 'G-2', NULL, 40, NULL, NULL, NULL) AS v(check_id, group_code, narrow_key, wide_key, key_text, amount, ratio)
+),
+
+__expected__int_edge_check_xml_checks AS (
+ SELECT
+ NULL AS check_id,
+ NULL AS stripped_key,
+ NULL AS xml_error
+)
diff --git a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_zoned_literals.sql b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_zoned_literals.sql
new file mode 100644
index 0000000000..fa1d797c6c
--- /dev/null
+++ b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_zoned_literals.sql
@@ -0,0 +1,23 @@
+TEST (name "int_edge_check_zoned_literals__reads_iso_zoned_literals");
+
+WITH __ref__stg_edge_amount_checks AS (
+ SELECT
+ v.check_id::VARCHAR AS check_id,
+ v.group_code::VARCHAR AS group_code,
+ v.narrow_key::NUMBER(18, 0) AS narrow_key,
+ v.wide_key::NUMBER(38, 0) AS wide_key,
+ v.key_text::VARCHAR AS key_text,
+ v.amount::NUMBER(18, 2) AS amount,
+ v.ratio::FLOAT AS ratio
+ FROM VALUES
+ ('AC-01', 'G-1', 7, 7, '101,7', 10.05, 0.1),
+ ('AC-02', 'G-1', 12, 12, '2026-03-04', -0.55, 0.2),
+ ('AC-03', 'G-2', 3, NULL, '7', 0.00, 0.3),
+ ('AC-04', 'G-2', NULL, 40, NULL, NULL, NULL) AS v(check_id, group_code, narrow_key, wide_key, key_text, amount, ratio)
+),
+
+__expected__int_edge_check_zoned_literals AS (
+ SELECT
+ NULL AS check_id,
+ NULL AS cutover_at
+)
diff --git a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_key_number_reads.sql b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_key_number_reads.sql
new file mode 100644
index 0000000000..a3dfffc753
--- /dev/null
+++ b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_key_number_reads.sql
@@ -0,0 +1,23 @@
+TEST (name "int_edge_key_number_reads__reads_wide_keys_back_as_numbers");
+
+WITH __ref__stg_edge_amount_checks AS (
+ SELECT
+ v.check_id::VARCHAR AS check_id,
+ v.group_code::VARCHAR AS group_code,
+ v.narrow_key::NUMBER(18, 0) AS narrow_key,
+ v.wide_key::NUMBER(38, 0) AS wide_key,
+ v.key_text::VARCHAR AS key_text,
+ v.amount::NUMBER(18, 2) AS amount,
+ v.ratio::FLOAT AS ratio
+ FROM VALUES
+ ('AC-01', 'G-1', 7, 7, '101,7', 10.05, 0.1),
+ ('AC-02', 'G-1', 12, 12, '2026-03-04', -0.55, 0.2),
+ ('AC-03', 'G-2', 3, NULL, '7', 0.00, 0.3),
+ ('AC-04', 'G-2', NULL, 40, NULL, NULL, NULL) AS v(check_id, group_code, narrow_key, wide_key, key_text, amount, ratio)
+),
+
+__expected__int_edge_key_number_reads AS (
+ SELECT
+ NULL AS check_id,
+ NULL AS wide_key_number
+)
diff --git a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_key_rank_offsets.sql b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_key_rank_offsets.sql
new file mode 100644
index 0000000000..bd351b98d2
--- /dev/null
+++ b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_key_rank_offsets.sql
@@ -0,0 +1,24 @@
+TEST (name "int_edge_key_rank_offsets__adds_one_to_keys_and_reads_numbers_back");
+
+WITH __ref__stg_edge_amount_checks AS (
+ SELECT
+ v.check_id::VARCHAR AS check_id,
+ v.group_code::VARCHAR AS group_code,
+ v.narrow_key::NUMBER(18, 0) AS narrow_key,
+ v.wide_key::NUMBER(38, 0) AS wide_key,
+ v.key_text::VARCHAR AS key_text,
+ v.amount::NUMBER(18, 2) AS amount,
+ v.ratio::FLOAT AS ratio
+ FROM VALUES
+ ('AC-01', 'G-1', 7, 7, '101,7', 10.05, 0.1),
+ ('AC-02', 'G-1', 12, 12, '2026-03-04', -0.55, 0.2),
+ ('AC-03', 'G-2', 3, NULL, '7', 0.00, 0.3),
+ ('AC-04', 'G-2', NULL, 40, NULL, NULL, NULL) AS v(check_id, group_code, narrow_key, wide_key, key_text, amount, ratio)
+),
+
+__expected__int_edge_key_rank_offsets AS (
+ SELECT
+ NULL AS check_id,
+ NULL AS candidate_rank,
+ NULL AS wide_key_number
+)
diff --git a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_ledger_quantity_steps.sql b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_ledger_quantity_steps.sql
new file mode 100644
index 0000000000..5446bdde99
--- /dev/null
+++ b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_ledger_quantity_steps.sql
@@ -0,0 +1,19 @@
+TEST (name "int_edge_ledger_quantity_steps__subtracts_one_from_quantity_text");
+
+WITH __ref__stg_edge_ledger_entries AS (
+ SELECT
+ v.entry_id::VARCHAR AS entry_id,
+ v.order_ref::VARCHAR AS order_ref,
+ v.quantity_text::VARCHAR AS quantity_text,
+ v.status::VARCHAR AS status
+ FROM VALUES
+ ('LE-01', 'DS-O-1', '2', 'paid'),
+ ('LE-02', 'DS-O-1', '3.5', 'open'),
+ ('LE-03', 'DS-O-2', NULL, 'paid') AS v(entry_id, order_ref, quantity_text, status)
+),
+
+__expected__int_edge_ledger_quantity_steps AS (
+ SELECT
+ NULL AS order_ref,
+ NULL AS quantity_less_one
+)
diff --git a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_ratio_array_bounds.sql b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_ratio_array_bounds.sql
new file mode 100644
index 0000000000..78f5f794d5
--- /dev/null
+++ b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_ratio_array_bounds.sql
@@ -0,0 +1,23 @@
+TEST (name "int_edge_ratio_array_bounds__reads_bounds_from_ratio_arrays");
+
+WITH __ref__stg_edge_amount_checks AS (
+ SELECT
+ v.check_id::VARCHAR AS check_id,
+ v.group_code::VARCHAR AS group_code,
+ v.narrow_key::NUMBER(18, 0) AS narrow_key,
+ v.wide_key::NUMBER(38, 0) AS wide_key,
+ v.key_text::VARCHAR AS key_text,
+ v.amount::NUMBER(18, 2) AS amount,
+ v.ratio::FLOAT AS ratio
+ FROM VALUES
+ ('AC-01', 'G-1', 7, 7, '101,7', 10.05, 0.1),
+ ('AC-02', 'G-1', 12, 12, '2026-03-04', -0.55, 0.2),
+ ('AC-03', 'G-2', 3, NULL, '7', 0.00, 0.3),
+ ('AC-04', 'G-2', NULL, 40, NULL, NULL, NULL) AS v(check_id, group_code, narrow_key, wide_key, key_text, amount, ratio)
+),
+
+__expected__int_edge_ratio_array_bounds AS (
+ SELECT
+ NULL AS group_code,
+ NULL AS lower_bound
+)
diff --git a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_ratio_array_casts.sql b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_ratio_array_casts.sql
new file mode 100644
index 0000000000..2f74ec1e98
--- /dev/null
+++ b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_ratio_array_casts.sql
@@ -0,0 +1,23 @@
+TEST (name "int_edge_ratio_array_casts__casts_ratio_arrays");
+
+WITH __ref__stg_edge_amount_checks AS (
+ SELECT
+ v.check_id::VARCHAR AS check_id,
+ v.group_code::VARCHAR AS group_code,
+ v.narrow_key::NUMBER(18, 0) AS narrow_key,
+ v.wide_key::NUMBER(38, 0) AS wide_key,
+ v.key_text::VARCHAR AS key_text,
+ v.amount::NUMBER(18, 2) AS amount,
+ v.ratio::FLOAT AS ratio
+ FROM VALUES
+ ('AC-01', 'G-1', 7, 7, '101,7', 10.05, 0.1),
+ ('AC-02', 'G-1', 12, 12, '2026-03-04', -0.55, 0.2),
+ ('AC-03', 'G-2', 3, NULL, '7', 0.00, 0.3),
+ ('AC-04', 'G-2', NULL, 40, NULL, NULL, NULL) AS v(check_id, group_code, narrow_key, wide_key, key_text, amount, ratio)
+),
+
+__expected__int_edge_ratio_array_casts AS (
+ SELECT
+ NULL AS check_id,
+ NULL AS ratio_count
+)
diff --git a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_ratio_array_positions.sql b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_ratio_array_positions.sql
new file mode 100644
index 0000000000..d7b5f4c6f9
--- /dev/null
+++ b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_ratio_array_positions.sql
@@ -0,0 +1,23 @@
+TEST (name "int_edge_ratio_array_positions__reads_the_last_ratio_by_position");
+
+WITH __ref__stg_edge_amount_checks AS (
+ SELECT
+ v.check_id::VARCHAR AS check_id,
+ v.group_code::VARCHAR AS group_code,
+ v.narrow_key::NUMBER(18, 0) AS narrow_key,
+ v.wide_key::NUMBER(38, 0) AS wide_key,
+ v.key_text::VARCHAR AS key_text,
+ v.amount::NUMBER(18, 2) AS amount,
+ v.ratio::FLOAT AS ratio
+ FROM VALUES
+ ('AC-01', 'G-1', 7, 7, '101,7', 10.05, 0.1),
+ ('AC-02', 'G-1', 12, 12, '2026-03-04', -0.55, 0.2),
+ ('AC-03', 'G-2', 3, NULL, '7', 0.00, 0.3),
+ ('AC-04', 'G-2', NULL, 40, NULL, NULL, NULL) AS v(check_id, group_code, narrow_key, wide_key, key_text, amount, ratio)
+),
+
+__expected__int_edge_ratio_array_positions AS (
+ SELECT
+ NULL AS group_code,
+ NULL AS last_ratio
+)
diff --git a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_ratio_averages.sql b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_ratio_averages.sql
new file mode 100644
index 0000000000..840c948db6
--- /dev/null
+++ b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_ratio_averages.sql
@@ -0,0 +1,23 @@
+TEST (name "int_edge_ratio_averages__averages_float_ratios_per_group");
+
+WITH __ref__stg_edge_amount_checks AS (
+ SELECT
+ v.check_id::VARCHAR AS check_id,
+ v.group_code::VARCHAR AS group_code,
+ v.narrow_key::NUMBER(18, 0) AS narrow_key,
+ v.wide_key::NUMBER(38, 0) AS wide_key,
+ v.key_text::VARCHAR AS key_text,
+ v.amount::NUMBER(18, 2) AS amount,
+ v.ratio::FLOAT AS ratio
+ FROM VALUES
+ ('AC-01', 'G-1', 7, 7, '101,7', 10.05, 0.1),
+ ('AC-02', 'G-1', 12, 12, '2026-03-04', -0.55, 0.2),
+ ('AC-03', 'G-2', 3, NULL, '7', 0.00, 0.3),
+ ('AC-04', 'G-2', NULL, 40, NULL, NULL, NULL) AS v(check_id, group_code, narrow_key, wide_key, key_text, amount, ratio)
+),
+
+__expected__int_edge_ratio_averages AS (
+ SELECT
+ NULL AS group_code,
+ NULL AS average_ratio
+)
diff --git a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_ratio_fixed_scales.sql b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_ratio_fixed_scales.sql
new file mode 100644
index 0000000000..0225bc348f
--- /dev/null
+++ b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_ratio_fixed_scales.sql
@@ -0,0 +1,23 @@
+TEST (name "int_edge_ratio_fixed_scales__casts_ratios_to_a_fixed_scale");
+
+WITH __ref__stg_edge_amount_checks AS (
+ SELECT
+ v.check_id::VARCHAR AS check_id,
+ v.group_code::VARCHAR AS group_code,
+ v.narrow_key::NUMBER(18, 0) AS narrow_key,
+ v.wide_key::NUMBER(38, 0) AS wide_key,
+ v.key_text::VARCHAR AS key_text,
+ v.amount::NUMBER(18, 2) AS amount,
+ v.ratio::FLOAT AS ratio
+ FROM VALUES
+ ('AC-01', 'G-1', 7, 7, '101,7', 10.05, 0.1),
+ ('AC-02', 'G-1', 12, 12, '2026-03-04', -0.55, 0.2),
+ ('AC-03', 'G-2', 3, NULL, '7', 0.00, 0.3),
+ ('AC-04', 'G-2', NULL, 40, NULL, NULL, NULL) AS v(check_id, group_code, narrow_key, wide_key, key_text, amount, ratio)
+),
+
+__expected__int_edge_ratio_fixed_scales AS (
+ SELECT
+ NULL AS check_id,
+ NULL AS ratio_fixed
+)
diff --git a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_ratio_group_objects.sql b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_ratio_group_objects.sql
new file mode 100644
index 0000000000..234ddbb5c7
--- /dev/null
+++ b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_ratio_group_objects.sql
@@ -0,0 +1,24 @@
+TEST (name "int_edge_ratio_group_objects__collects_ratios_per_group");
+
+WITH __ref__stg_edge_amount_checks AS (
+ SELECT
+ v.check_id::VARCHAR AS check_id,
+ v.group_code::VARCHAR AS group_code,
+ v.narrow_key::NUMBER(18, 0) AS narrow_key,
+ v.wide_key::NUMBER(38, 0) AS wide_key,
+ v.key_text::VARCHAR AS key_text,
+ v.amount::NUMBER(18, 2) AS amount,
+ v.ratio::FLOAT AS ratio
+ FROM VALUES
+ ('AC-01', 'G-1', 7, 7, '101,7', 10.05, 0.1),
+ ('AC-02', 'G-1', 12, 12, '2026-03-04', -0.55, 0.2),
+ ('AC-03', 'G-2', 3, NULL, '7', 0.00, 0.3),
+ ('AC-04', 'G-2', NULL, 40, NULL, NULL, NULL) AS v(check_id, group_code, narrow_key, wide_key, key_text, amount, ratio)
+),
+
+__expected__int_edge_ratio_group_objects AS (
+ SELECT
+ NULL AS group_code,
+ NULL AS ratio_json,
+ NULL AS distinct_ratio_count
+)
diff --git a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_ratio_hashes.sql b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_ratio_hashes.sql
new file mode 100644
index 0000000000..7f69b21192
--- /dev/null
+++ b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_ratio_hashes.sql
@@ -0,0 +1,23 @@
+TEST (name "int_edge_ratio_hashes__hashes_ratios");
+
+WITH __ref__stg_edge_amount_checks AS (
+ SELECT
+ v.check_id::VARCHAR AS check_id,
+ v.group_code::VARCHAR AS group_code,
+ v.narrow_key::NUMBER(18, 0) AS narrow_key,
+ v.wide_key::NUMBER(38, 0) AS wide_key,
+ v.key_text::VARCHAR AS key_text,
+ v.amount::NUMBER(18, 2) AS amount,
+ v.ratio::FLOAT AS ratio
+ FROM VALUES
+ ('AC-01', 'G-1', 7, 7, '101,7', 10.05, 0.1),
+ ('AC-02', 'G-1', 12, 12, '2026-03-04', -0.55, 0.2),
+ ('AC-03', 'G-2', 3, NULL, '7', 0.00, 0.3),
+ ('AC-04', 'G-2', NULL, 40, NULL, NULL, NULL) AS v(check_id, group_code, narrow_key, wide_key, key_text, amount, ratio)
+),
+
+__expected__int_edge_ratio_hashes AS (
+ SELECT
+ NULL AS check_id,
+ NULL AS hash_is_stable
+)
diff --git a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_ratio_identity_objects.sql b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_ratio_identity_objects.sql
new file mode 100644
index 0000000000..9b16c1bb5b
--- /dev/null
+++ b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_ratio_identity_objects.sql
@@ -0,0 +1,23 @@
+TEST (name "int_edge_ratio_identity_objects__reads_kinds_of_ratio_identities");
+
+WITH __ref__stg_edge_amount_checks AS (
+ SELECT
+ v.check_id::VARCHAR AS check_id,
+ v.group_code::VARCHAR AS group_code,
+ v.narrow_key::NUMBER(18, 0) AS narrow_key,
+ v.wide_key::NUMBER(38, 0) AS wide_key,
+ v.key_text::VARCHAR AS key_text,
+ v.amount::NUMBER(18, 2) AS amount,
+ v.ratio::FLOAT AS ratio
+ FROM VALUES
+ ('AC-01', 'G-1', 7, 7, '101,7', 10.05, 0.1),
+ ('AC-02', 'G-1', 12, 12, '2026-03-04', -0.55, 0.2),
+ ('AC-03', 'G-2', 3, NULL, '7', 0.00, 0.3),
+ ('AC-04', 'G-2', NULL, 40, NULL, NULL, NULL) AS v(check_id, group_code, narrow_key, wide_key, key_text, amount, ratio)
+),
+
+__expected__int_edge_ratio_identity_objects AS (
+ SELECT
+ NULL AS check_id,
+ NULL AS identity_kind
+)
diff --git a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_ratio_ignore_case_reads.sql b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_ratio_ignore_case_reads.sql
new file mode 100644
index 0000000000..17c95ddbae
--- /dev/null
+++ b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_ratio_ignore_case_reads.sql
@@ -0,0 +1,23 @@
+TEST (name "int_edge_ratio_ignore_case_reads__reads_ratios_by_key_in_any_case");
+
+WITH __ref__stg_edge_amount_checks AS (
+ SELECT
+ v.check_id::VARCHAR AS check_id,
+ v.group_code::VARCHAR AS group_code,
+ v.narrow_key::NUMBER(18, 0) AS narrow_key,
+ v.wide_key::NUMBER(38, 0) AS wide_key,
+ v.key_text::VARCHAR AS key_text,
+ v.amount::NUMBER(18, 2) AS amount,
+ v.ratio::FLOAT AS ratio
+ FROM VALUES
+ ('AC-01', 'G-1', 7, 7, '101,7', 10.05, 0.1),
+ ('AC-02', 'G-1', 12, 12, '2026-03-04', -0.55, 0.2),
+ ('AC-03', 'G-2', 3, NULL, '7', 0.00, 0.3),
+ ('AC-04', 'G-2', NULL, 40, NULL, NULL, NULL) AS v(check_id, group_code, narrow_key, wide_key, key_text, amount, ratio)
+),
+
+__expected__int_edge_ratio_ignore_case_reads AS (
+ SELECT
+ NULL AS check_id,
+ NULL AS ratio_again
+)
diff --git a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_ratio_object_differences.sql b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_ratio_object_differences.sql
new file mode 100644
index 0000000000..f78119008f
--- /dev/null
+++ b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_ratio_object_differences.sql
@@ -0,0 +1,23 @@
+TEST (name "int_edge_ratio_object_differences__keeps_ratio_objects_not_in_the_fixed_list");
+
+WITH __ref__stg_edge_amount_checks AS (
+ SELECT
+ v.check_id::VARCHAR AS check_id,
+ v.group_code::VARCHAR AS group_code,
+ v.narrow_key::NUMBER(18, 0) AS narrow_key,
+ v.wide_key::NUMBER(38, 0) AS wide_key,
+ v.key_text::VARCHAR AS key_text,
+ v.amount::NUMBER(18, 2) AS amount,
+ v.ratio::FLOAT AS ratio
+ FROM VALUES
+ ('AC-01', 'G-1', 7, 7, '101,7', 10.05, 0.1),
+ ('AC-02', 'G-1', 12, 12, '2026-03-04', -0.55, 0.2),
+ ('AC-03', 'G-2', 3, NULL, '7', 0.00, 0.3),
+ ('AC-04', 'G-2', NULL, 40, NULL, NULL, NULL) AS v(check_id, group_code, narrow_key, wide_key, key_text, amount, ratio)
+),
+
+__expected__int_edge_ratio_object_differences AS (
+ SELECT
+ NULL AS check_id,
+ NULL AS check_json
+)
diff --git a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_ratio_object_flags.sql b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_ratio_object_flags.sql
new file mode 100644
index 0000000000..a8fc69f045
--- /dev/null
+++ b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_ratio_object_flags.sql
@@ -0,0 +1,23 @@
+TEST (name "int_edge_ratio_object_flags__reads_ratios_back_as_booleans");
+
+WITH __ref__stg_edge_amount_checks AS (
+ SELECT
+ v.check_id::VARCHAR AS check_id,
+ v.group_code::VARCHAR AS group_code,
+ v.narrow_key::NUMBER(18, 0) AS narrow_key,
+ v.wide_key::NUMBER(38, 0) AS wide_key,
+ v.key_text::VARCHAR AS key_text,
+ v.amount::NUMBER(18, 2) AS amount,
+ v.ratio::FLOAT AS ratio
+ FROM VALUES
+ ('AC-01', 'G-1', 7, 7, '101,7', 10.05, 0.1),
+ ('AC-02', 'G-1', 12, 12, '2026-03-04', -0.55, 0.2),
+ ('AC-03', 'G-2', 3, NULL, '7', 0.00, 0.3),
+ ('AC-04', 'G-2', NULL, 40, NULL, NULL, NULL) AS v(check_id, group_code, narrow_key, wide_key, key_text, amount, ratio)
+),
+
+__expected__int_edge_ratio_object_flags AS (
+ SELECT
+ NULL AS check_id,
+ NULL AS ratio_flag
+)
diff --git a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_ratio_object_inserts.sql b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_ratio_object_inserts.sql
new file mode 100644
index 0000000000..530d612f3b
--- /dev/null
+++ b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_ratio_object_inserts.sql
@@ -0,0 +1,23 @@
+TEST (name "int_edge_ratio_object_inserts__adds_keys_to_ratio_objects");
+
+WITH __ref__stg_edge_amount_checks AS (
+ SELECT
+ v.check_id::VARCHAR AS check_id,
+ v.group_code::VARCHAR AS group_code,
+ v.narrow_key::NUMBER(18, 0) AS narrow_key,
+ v.wide_key::NUMBER(38, 0) AS wide_key,
+ v.key_text::VARCHAR AS key_text,
+ v.amount::NUMBER(18, 2) AS amount,
+ v.ratio::FLOAT AS ratio
+ FROM VALUES
+ ('AC-01', 'G-1', 7, 7, '101,7', 10.05, 0.1),
+ ('AC-02', 'G-1', 12, 12, '2026-03-04', -0.55, 0.2),
+ ('AC-03', 'G-2', 3, NULL, '7', 0.00, 0.3),
+ ('AC-04', 'G-2', NULL, 40, NULL, NULL, NULL) AS v(check_id, group_code, narrow_key, wide_key, key_text, amount, ratio)
+),
+
+__expected__int_edge_ratio_object_inserts AS (
+ SELECT
+ NULL AS check_id,
+ NULL AS check_json
+)
diff --git a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_ratio_object_reads.sql b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_ratio_object_reads.sql
new file mode 100644
index 0000000000..9411c1ddb5
--- /dev/null
+++ b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_ratio_object_reads.sql
@@ -0,0 +1,23 @@
+TEST (name "int_edge_ratio_object_reads__reads_ratios_back_as_integers");
+
+WITH __ref__stg_edge_amount_checks AS (
+ SELECT
+ v.check_id::VARCHAR AS check_id,
+ v.group_code::VARCHAR AS group_code,
+ v.narrow_key::NUMBER(18, 0) AS narrow_key,
+ v.wide_key::NUMBER(38, 0) AS wide_key,
+ v.key_text::VARCHAR AS key_text,
+ v.amount::NUMBER(18, 2) AS amount,
+ v.ratio::FLOAT AS ratio
+ FROM VALUES
+ ('AC-01', 'G-1', 7, 7, '101,7', 10.05, 0.1),
+ ('AC-02', 'G-1', 12, 12, '2026-03-04', -0.55, 0.2),
+ ('AC-03', 'G-2', 3, NULL, '7', 0.00, 0.3),
+ ('AC-04', 'G-2', NULL, 40, NULL, NULL, NULL) AS v(check_id, group_code, narrow_key, wide_key, key_text, amount, ratio)
+),
+
+__expected__int_edge_ratio_object_reads AS (
+ SELECT
+ NULL AS check_id,
+ NULL AS ratio_integer
+)
diff --git a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_ratio_path_checks.sql b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_ratio_path_checks.sql
new file mode 100644
index 0000000000..eadf2f288c
--- /dev/null
+++ b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_ratio_path_checks.sql
@@ -0,0 +1,23 @@
+TEST (name "int_edge_ratio_path_checks__keeps_checks_without_a_ratio");
+
+WITH __ref__stg_edge_amount_checks AS (
+ SELECT
+ v.check_id::VARCHAR AS check_id,
+ v.group_code::VARCHAR AS group_code,
+ v.narrow_key::NUMBER(18, 0) AS narrow_key,
+ v.wide_key::NUMBER(38, 0) AS wide_key,
+ v.key_text::VARCHAR AS key_text,
+ v.amount::NUMBER(18, 2) AS amount,
+ v.ratio::FLOAT AS ratio
+ FROM VALUES
+ ('AC-01', 'G-1', 7, 7, '101,7', 10.05, 0.1),
+ ('AC-02', 'G-1', 12, 12, '2026-03-04', -0.55, 0.2),
+ ('AC-03', 'G-2', 3, NULL, '7', 0.00, 0.3),
+ ('AC-04', 'G-2', NULL, 40, NULL, NULL, NULL) AS v(check_id, group_code, narrow_key, wide_key, key_text, amount, ratio)
+),
+
+__expected__int_edge_ratio_path_checks AS (
+ SELECT
+ NULL AS check_id,
+ NULL AS key_span
+)
diff --git a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_ratio_percent_texts.sql b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_ratio_percent_texts.sql
new file mode 100644
index 0000000000..ab4ebbf53b
--- /dev/null
+++ b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_ratio_percent_texts.sql
@@ -0,0 +1,23 @@
+TEST (name "int_edge_ratio_percent_texts__formats_float_ratios_as_percentages");
+
+WITH __ref__stg_edge_amount_checks AS (
+ SELECT
+ v.check_id::VARCHAR AS check_id,
+ v.group_code::VARCHAR AS group_code,
+ v.narrow_key::NUMBER(18, 0) AS narrow_key,
+ v.wide_key::NUMBER(38, 0) AS wide_key,
+ v.key_text::VARCHAR AS key_text,
+ v.amount::NUMBER(18, 2) AS amount,
+ v.ratio::FLOAT AS ratio
+ FROM VALUES
+ ('AC-01', 'G-1', 7, 7, '101,7', 10.05, 0.1),
+ ('AC-02', 'G-1', 12, 12, '2026-03-04', -0.55, 0.2),
+ ('AC-03', 'G-2', 3, NULL, '7', 0.00, 0.3),
+ ('AC-04', 'G-2', NULL, 40, NULL, NULL, NULL) AS v(check_id, group_code, narrow_key, wide_key, key_text, amount, ratio)
+),
+
+__expected__int_edge_ratio_percent_texts AS (
+ SELECT
+ NULL AS check_id,
+ NULL AS ratio_percent
+)
diff --git a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_ratio_running_totals.sql b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_ratio_running_totals.sql
new file mode 100644
index 0000000000..87d4c34e24
--- /dev/null
+++ b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_ratio_running_totals.sql
@@ -0,0 +1,19 @@
+TEST (name "int_edge_ratio_running_totals__sums_float_ratios_in_check_order");
+
+WITH __ref__stg_edge_amount_checks AS (
+ SELECT
+ v.check_id::VARCHAR AS check_id,
+ v.group_code::VARCHAR AS group_code,
+ v.ratio::FLOAT AS ratio
+ FROM VALUES
+ ('AC-01', 'G-1', 0.1),
+ ('AC-02', 'G-1', 0.2),
+ ('AC-03', 'G-1', 0.3),
+ ('AC-04', 'G-2', 1.5) AS v(check_id, group_code, ratio)
+),
+
+__expected__int_edge_ratio_running_totals AS (
+ SELECT
+ NULL AS check_id,
+ NULL AS running_ratio
+)
diff --git a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_ratio_safe_casts.sql b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_ratio_safe_casts.sql
new file mode 100644
index 0000000000..84e76ec1c0
--- /dev/null
+++ b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_ratio_safe_casts.sql
@@ -0,0 +1,24 @@
+TEST (name "int_edge_ratio_safe_casts__reads_ratios_through_try_cast");
+
+WITH __ref__stg_edge_amount_checks AS (
+ SELECT
+ v.check_id::VARCHAR AS check_id,
+ v.group_code::VARCHAR AS group_code,
+ v.narrow_key::NUMBER(18, 0) AS narrow_key,
+ v.wide_key::NUMBER(38, 0) AS wide_key,
+ v.key_text::VARCHAR AS key_text,
+ v.amount::NUMBER(18, 2) AS amount,
+ v.ratio::FLOAT AS ratio
+ FROM VALUES
+ ('AC-01', 'G-1', 7, 7, '101,7', 10.05, 0.1),
+ ('AC-02', 'G-1', 12, 12, '2026-03-04', -0.55, 0.2),
+ ('AC-03', 'G-2', 3, NULL, '7', 0.00, 0.3),
+ ('AC-04', 'G-2', NULL, 40, NULL, NULL, NULL) AS v(check_id, group_code, narrow_key, wide_key, key_text, amount, ratio)
+),
+
+__expected__int_edge_ratio_safe_casts AS (
+ SELECT
+ NULL AS check_id,
+ NULL AS check_json,
+ NULL AS ratio_again
+)
diff --git a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_ratio_text_forms.sql b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_ratio_text_forms.sql
new file mode 100644
index 0000000000..baec7ff079
--- /dev/null
+++ b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_ratio_text_forms.sql
@@ -0,0 +1,25 @@
+TEST (name "int_edge_ratio_text_forms__writes_ratios_as_text");
+
+WITH __ref__stg_edge_amount_checks AS (
+ SELECT
+ v.check_id::VARCHAR AS check_id,
+ v.group_code::VARCHAR AS group_code,
+ v.narrow_key::NUMBER(18, 0) AS narrow_key,
+ v.wide_key::NUMBER(38, 0) AS wide_key,
+ v.key_text::VARCHAR AS key_text,
+ v.amount::NUMBER(18, 2) AS amount,
+ v.ratio::FLOAT AS ratio
+ FROM VALUES
+ ('AC-01', 'G-1', 7, 7, '101,7', 10.05, 0.1),
+ ('AC-02', 'G-1', 12, 12, '2026-03-04', -0.55, 0.2),
+ ('AC-03', 'G-2', 3, NULL, '7', 0.00, 0.3),
+ ('AC-04', 'G-2', NULL, 40, NULL, NULL, NULL) AS v(check_id, group_code, narrow_key, wide_key, key_text, amount, ratio)
+),
+
+__expected__int_edge_ratio_text_forms AS (
+ SELECT
+ NULL AS check_id,
+ NULL AS ratio_text,
+ NULL AS ratio_stars,
+ NULL AS narrow_key_exp
+)
diff --git a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_ratio_text_replaces.sql b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_ratio_text_replaces.sql
new file mode 100644
index 0000000000..ea66c25858
--- /dev/null
+++ b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_ratio_text_replaces.sql
@@ -0,0 +1,24 @@
+TEST (name "int_edge_ratio_text_replaces__writes_ratios_with_commas");
+
+WITH __ref__stg_edge_amount_checks AS (
+ SELECT
+ v.check_id::VARCHAR AS check_id,
+ v.group_code::VARCHAR AS group_code,
+ v.narrow_key::NUMBER(18, 0) AS narrow_key,
+ v.wide_key::NUMBER(38, 0) AS wide_key,
+ v.key_text::VARCHAR AS key_text,
+ v.amount::NUMBER(18, 2) AS amount,
+ v.ratio::FLOAT AS ratio
+ FROM VALUES
+ ('AC-01', 'G-1', 7, 7, '101,7', 10.05, 0.1),
+ ('AC-02', 'G-1', 12, 12, '2026-03-04', -0.55, 0.2),
+ ('AC-03', 'G-2', 3, NULL, '7', 0.00, 0.3),
+ ('AC-04', 'G-2', NULL, 40, NULL, NULL, NULL) AS v(check_id, group_code, narrow_key, wide_key, key_text, amount, ratio)
+),
+
+__expected__int_edge_ratio_text_replaces AS (
+ SELECT
+ NULL AS check_id,
+ NULL AS key_time,
+ NULL AS ratio_text
+)
diff --git a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_ratio_variant_unions.sql b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_ratio_variant_unions.sql
new file mode 100644
index 0000000000..bc3b5f0c41
--- /dev/null
+++ b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_ratio_variant_unions.sql
@@ -0,0 +1,23 @@
+TEST (name "int_edge_ratio_variant_unions__stacks_float_and_text_variants");
+
+WITH __ref__stg_edge_amount_checks AS (
+ SELECT
+ v.check_id::VARCHAR AS check_id,
+ v.group_code::VARCHAR AS group_code,
+ v.narrow_key::NUMBER(18, 0) AS narrow_key,
+ v.wide_key::NUMBER(38, 0) AS wide_key,
+ v.key_text::VARCHAR AS key_text,
+ v.amount::NUMBER(18, 2) AS amount,
+ v.ratio::FLOAT AS ratio
+ FROM VALUES
+ ('AC-01', 'G-1', 7, 7, '101,7', 10.05, 0.1),
+ ('AC-02', 'G-1', 12, 12, '2026-03-04', -0.55, 0.2),
+ ('AC-03', 'G-2', 3, NULL, '7', 0.00, 0.3),
+ ('AC-04', 'G-2', NULL, 40, NULL, NULL, NULL) AS v(check_id, group_code, narrow_key, wide_key, key_text, amount, ratio)
+),
+
+__expected__int_edge_ratio_variant_unions AS (
+ SELECT
+ NULL AS value_row_id,
+ NULL AS value_text
+)
diff --git a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_variant_decimal_reads.sql b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_variant_decimal_reads.sql
new file mode 100644
index 0000000000..ccd8b6fdfe
--- /dev/null
+++ b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_variant_decimal_reads.sql
@@ -0,0 +1,21 @@
+TEST (name "int_edge_variant_decimal_reads__reads_numeric_variants_as_decimals");
+
+WITH __ref__stg_edge_variant_values AS (
+ SELECT
+ v.value_id::VARCHAR AS value_id,
+ v.group_code::VARCHAR AS group_code,
+ v.sort_key::NUMBER(38, 0) AS sort_key,
+ PARSE_JSON(v.attribute_value) AS attribute_value,
+ v.value_text::VARCHAR AS value_text
+ FROM VALUES
+ ('VV-01', 'V-1', 1, '{"sku": "DK-1", "qty": 2}', 'DK-1'),
+ ('VV-02', 'V-1', 2, '1.5', '1.5'),
+ ('VV-03', 'V-2', 1, '"2026-03-01"', '2026-03-01'),
+ ('VV-04', 'V-2', 2, 'null', NULL) AS v(value_id, group_code, sort_key, attribute_value, value_text)
+),
+
+__expected__int_edge_variant_decimal_reads AS (
+ SELECT
+ NULL AS value_id,
+ NULL AS decimal_value
+)
diff --git a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_variant_expected_values.sql b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_variant_expected_values.sql
new file mode 100644
index 0000000000..eed556e336
--- /dev/null
+++ b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_variant_expected_values.sql
@@ -0,0 +1,20 @@
+TEST (name "int_edge_variant_expected_values__compares_values_with_expected_ones");
+
+WITH __ref__stg_edge_variant_values AS (
+ SELECT
+ v.value_id::VARCHAR AS value_id,
+ v.group_code::VARCHAR AS group_code,
+ v.sort_key::NUMBER(38, 0) AS sort_key,
+ PARSE_JSON(v.attribute_value) AS attribute_value,
+ v.value_text::VARCHAR AS value_text
+ FROM VALUES
+ ('VV-01', 'V-1', 1, '{"sku": "DK-1", "qty": 2}', 'DK-1'),
+ ('VV-02', 'V-1', 2, '1.5', '1.5'),
+ ('VV-03', 'V-2', 1, '"2026-03-01"', '2026-03-01'),
+ ('VV-04', 'V-2', 2, 'null', NULL) AS v(value_id, group_code, sort_key, attribute_value, value_text)
+),
+
+__expected__int_edge_variant_expected_values AS (
+ SELECT
+ NULL AS value_id
+)
diff --git a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_variant_xml_checks.sql b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_variant_xml_checks.sql
new file mode 100644
index 0000000000..5173a72a36
--- /dev/null
+++ b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_variant_xml_checks.sql
@@ -0,0 +1,22 @@
+TEST (name "int_edge_variant_xml_checks__checks_value_text_as_xml");
+
+WITH __ref__stg_edge_variant_values AS (
+ SELECT
+ v.value_id::VARCHAR AS value_id,
+ v.group_code::VARCHAR AS group_code,
+ v.sort_key::NUMBER(38, 0) AS sort_key,
+ PARSE_JSON(v.attribute_value) AS attribute_value,
+ v.value_text::VARCHAR AS value_text
+ FROM VALUES
+ ('VV-01', 'V-1', 1, '{"sku": "DK-1", "qty": 2}', 'DK-1'),
+ ('VV-02', 'V-1', 2, '1.5', '1.5'),
+ ('VV-03', 'V-2', 1, '"2026-03-01"', '2026-03-01'),
+ ('VV-04', 'V-2', 2, 'null', NULL) AS v(value_id, group_code, sort_key, attribute_value, value_text)
+),
+
+__expected__int_edge_variant_xml_checks AS (
+ SELECT
+ NULL AS value_id,
+ NULL AS stripped_text,
+ NULL AS xml_error
+)
diff --git a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_variant_xml_elements.sql b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_variant_xml_elements.sql
new file mode 100644
index 0000000000..aa4ac860b5
--- /dev/null
+++ b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_variant_xml_elements.sql
@@ -0,0 +1,19 @@
+TEST (name "int_edge_variant_xml_elements__reads_sku_elements");
+
+WITH __ref__stg_edge_variant_values AS (
+ SELECT
+ v.value_id::VARCHAR AS value_id,
+ v.group_code::VARCHAR AS group_code,
+ v.sort_key::NUMBER(38, 0) AS sort_key,
+ PARSE_XML(v.attribute_value) AS attribute_value,
+ v.value_text::VARCHAR AS value_text
+ FROM VALUES
+ ('VX-01', 'X-1', 1, 'DK-1', NULL),
+ ('VX-02', 'X-1', 2, '2', NULL) AS v(value_id, group_code, sort_key, attribute_value, value_text)
+),
+
+__expected__int_edge_variant_xml_elements AS (
+ SELECT
+ NULL AS value_id,
+ NULL AS sku_text
+)
diff --git a/benchmarks/duckshop/project/tests/unit/marts/edge_cases/test_rpt_edge_case_array_model_keys.sql b/benchmarks/duckshop/project/tests/unit/marts/edge_cases/test_rpt_edge_case_array_model_keys.sql
new file mode 100644
index 0000000000..7670a5f1db
--- /dev/null
+++ b/benchmarks/duckshop/project/tests/unit/marts/edge_cases/test_rpt_edge_case_array_model_keys.sql
@@ -0,0 +1,36 @@
+TEST (name "rpt_edge_case_array_model_keys__lists_one_key_per_array_model");
+
+WITH __ref__int_edge_check_number_arrays AS (
+ SELECT
+ v.check_id::VARCHAR AS check_id
+ FROM VALUES
+ ('check_number-1') AS v(check_id)
+),
+
+__ref__int_edge_check_text_arrays AS (
+ SELECT
+ v.check_id::VARCHAR AS check_id
+ FROM VALUES
+ ('check_text_a-1') AS v(check_id)
+),
+
+__ref__int_edge_callback_wall_time_lists AS (
+ SELECT
+ v.merchant_zone::VARCHAR AS merchant_zone
+ FROM VALUES
+ ('callback_wal-1') AS v(merchant_zone)
+),
+
+__ref__int_edge_check_key_parts AS (
+ SELECT
+ v.check_id::VARCHAR AS check_id
+ FROM VALUES
+ ('check_key_pa-1') AS v(check_id)
+),
+
+__expected__rpt_edge_case_array_model_keys AS (
+ SELECT
+ NULL AS model_key_id,
+ NULL AS model_name,
+ NULL AS model_key
+)
diff --git a/benchmarks/duckshop/project/tests/unit/marts/edge_cases/test_rpt_edge_case_model_keys.sql b/benchmarks/duckshop/project/tests/unit/marts/edge_cases/test_rpt_edge_case_model_keys.sql
new file mode 100644
index 0000000000..cbd9fbce1c
--- /dev/null
+++ b/benchmarks/duckshop/project/tests/unit/marts/edge_cases/test_rpt_edge_case_model_keys.sql
@@ -0,0 +1,491 @@
+TEST (name "rpt_edge_case_model_keys__lists_one_key_per_model");
+
+WITH __ref__int_edge_ratio_running_totals AS (
+ SELECT
+ v.check_id::VARCHAR AS check_id
+ FROM VALUES
+ ('ratio_runnin-1') AS v(check_id)
+),
+
+__ref__int_edge_ratio_averages AS (
+ SELECT
+ v.group_code::VARCHAR AS group_code
+ FROM VALUES
+ ('ratio_averag-1') AS v(group_code)
+),
+
+__ref__int_edge_callback_recent_offsets AS (
+ SELECT
+ v.callback_id::VARCHAR AS callback_id
+ FROM VALUES
+ ('callback_rec-1') AS v(callback_id)
+),
+
+__ref__int_edge_callback_epoch_reads AS (
+ SELECT
+ v.check_id::VARCHAR AS check_id
+ FROM VALUES
+ ('callback_epo-1') AS v(check_id)
+),
+
+__ref__int_edge_callback_zone_words AS (
+ SELECT
+ v.callback_id::VARCHAR AS callback_id
+ FROM VALUES
+ ('callback_zon-1') AS v(callback_id)
+),
+
+__ref__int_edge_callback_text_dates AS (
+ SELECT
+ v.callback_id::VARCHAR AS callback_id
+ FROM VALUES
+ ('callback_tex-1') AS v(callback_id)
+),
+
+__ref__int_edge_key_rank_offsets AS (
+ SELECT
+ v.check_id::VARCHAR AS check_id
+ FROM VALUES
+ ('key_rank_off-1') AS v(check_id)
+),
+
+__ref__int_edge_key_number_reads AS (
+ SELECT
+ v.check_id::VARCHAR AS check_id
+ FROM VALUES
+ ('key_number_r-1') AS v(check_id)
+),
+
+__ref__int_edge_callback_epoch_parts AS (
+ SELECT
+ v.callback_id::VARCHAR AS callback_id
+ FROM VALUES
+ ('callback_epo-1') AS v(callback_id)
+),
+
+__ref__int_edge_check_pair_filters AS (
+ SELECT
+ v.check_id::VARCHAR AS check_id
+ FROM VALUES
+ ('check_pair_f-1') AS v(check_id)
+),
+
+__ref__int_edge_check_wide_sums AS (
+ SELECT
+ v.key_row_id::VARCHAR AS key_row_id
+ FROM VALUES
+ ('check_wide_s-1') AS v(key_row_id)
+),
+
+__ref__int_edge_ratio_variant_unions AS (
+ SELECT
+ v.value_row_id::VARCHAR AS value_row_id
+ FROM VALUES
+ ('ratio_varian-1') AS v(value_row_id)
+),
+
+__ref__int_edge_check_note_unions AS (
+ SELECT
+ v.note_row_id::VARCHAR AS note_row_id
+ FROM VALUES
+ ('check_note_u-1') AS v(note_row_id)
+),
+
+__ref__int_edge_ratio_array_bounds AS (
+ SELECT
+ v.group_code::VARCHAR AS group_code
+ FROM VALUES
+ ('ratio_array_-1') AS v(group_code)
+),
+
+__ref__int_edge_check_zoned_literals AS (
+ SELECT
+ v.check_id::VARCHAR AS check_id
+ FROM VALUES
+ ('check_zoned_-1') AS v(check_id)
+),
+
+__ref__int_edge_callback_day_starts AS (
+ SELECT
+ v.callback_id::VARCHAR AS callback_id
+ FROM VALUES
+ ('callback_day-1') AS v(callback_id)
+),
+
+__ref__int_edge_callback_clock_times AS (
+ SELECT
+ v.callback_id::VARCHAR AS callback_id
+ FROM VALUES
+ ('callback_clo-1') AS v(callback_id)
+),
+
+__ref__int_edge_check_key_rewrites AS (
+ SELECT
+ v.check_id::VARCHAR AS check_id
+ FROM VALUES
+ ('check_key_re-1') AS v(check_id)
+),
+
+__ref__int_edge_variant_decimal_reads AS (
+ SELECT
+ v.value_id::VARCHAR AS value_id
+ FROM VALUES
+ ('variant_deci-1') AS v(value_id)
+),
+
+__ref__int_edge_ratio_safe_casts AS (
+ SELECT
+ v.check_id::VARCHAR AS check_id
+ FROM VALUES
+ ('ratio_safe_c-1') AS v(check_id)
+),
+
+__ref__int_edge_callback_safe_dates AS (
+ SELECT
+ v.callback_id::VARCHAR AS callback_id
+ FROM VALUES
+ ('callback_saf-1') AS v(callback_id)
+),
+
+__ref__int_edge_ratio_percent_texts AS (
+ SELECT
+ v.check_id::VARCHAR AS check_id
+ FROM VALUES
+ ('ratio_percen-1') AS v(check_id)
+),
+
+__ref__int_edge_callback_row_numbers AS (
+ SELECT
+ v.callback_id::VARCHAR AS callback_id
+ FROM VALUES
+ ('callback_row-1') AS v(callback_id)
+),
+
+__ref__int_edge_check_xml_checks AS (
+ SELECT
+ v.check_id::VARCHAR AS check_id
+ FROM VALUES
+ ('check_xml_ch-1') AS v(check_id)
+),
+
+__ref__int_edge_variant_xml_elements AS (
+ SELECT
+ v.value_id::VARCHAR AS value_id
+ FROM VALUES
+ ('variant_xml_-1') AS v(value_id)
+),
+
+__ref__int_edge_callback_latest_dates AS (
+ SELECT
+ v.merchant_zone::VARCHAR AS merchant_zone
+ FROM VALUES
+ ('callback_lat-1') AS v(merchant_zone)
+),
+
+__ref__int_edge_check_group_key_lists AS (
+ SELECT
+ v.check_id::VARCHAR AS check_id
+ FROM VALUES
+ ('check_group_-1') AS v(check_id)
+),
+
+__ref__int_edge_ratio_array_casts AS (
+ SELECT
+ v.check_id::VARCHAR AS check_id
+ FROM VALUES
+ ('ratio_array_-1') AS v(check_id)
+),
+
+__ref__int_edge_ratio_text_replaces AS (
+ SELECT
+ v.check_id::VARCHAR AS check_id
+ FROM VALUES
+ ('ratio_text_r-1') AS v(check_id)
+),
+
+__ref__int_edge_ratio_object_reads AS (
+ SELECT
+ v.check_id::VARCHAR AS check_id
+ FROM VALUES
+ ('ratio_object-1') AS v(check_id)
+),
+
+__ref__int_edge_ratio_object_flags AS (
+ SELECT
+ v.check_id::VARCHAR AS check_id
+ FROM VALUES
+ ('ratio_object-1') AS v(check_id)
+),
+
+__ref__int_edge_ratio_identity_objects AS (
+ SELECT
+ v.check_id::VARCHAR AS check_id
+ FROM VALUES
+ ('ratio_identi-1') AS v(check_id)
+),
+
+__ref__int_edge_ratio_array_positions AS (
+ SELECT
+ v.group_code::VARCHAR AS group_code
+ FROM VALUES
+ ('ratio_array_-1') AS v(group_code)
+),
+
+__ref__int_edge_check_local_times AS (
+ SELECT
+ v.check_id::VARCHAR AS check_id
+ FROM VALUES
+ ('check_local_-1') AS v(check_id)
+),
+
+__ref__int_edge_ratio_ignore_case_reads AS (
+ SELECT
+ v.check_id::VARCHAR AS check_id
+ FROM VALUES
+ ('ratio_ignore-1') AS v(check_id)
+),
+
+__ref__int_edge_callback_zoned_dates AS (
+ SELECT
+ v.callback_id::VARCHAR AS callback_id
+ FROM VALUES
+ ('callback_zon-1') AS v(callback_id)
+),
+
+__ref__int_edge_ratio_object_inserts AS (
+ SELECT
+ v.check_id::VARCHAR AS check_id
+ FROM VALUES
+ ('ratio_object-1') AS v(check_id)
+),
+
+__ref__int_edge_callback_date_lists AS (
+ SELECT
+ v.merchant_zone::VARCHAR AS merchant_zone
+ FROM VALUES
+ ('callback_dat-1') AS v(merchant_zone)
+),
+
+__ref__int_edge_check_bracket_strips AS (
+ SELECT
+ v.check_id::VARCHAR AS check_id
+ FROM VALUES
+ ('check_bracke-1') AS v(check_id)
+),
+
+__ref__int_edge_ratio_path_checks AS (
+ SELECT
+ v.check_id::VARCHAR AS check_id
+ FROM VALUES
+ ('ratio_path_c-1') AS v(check_id)
+),
+
+__ref__int_edge_ratio_fixed_scales AS (
+ SELECT
+ v.check_id::VARCHAR AS check_id
+ FROM VALUES
+ ('ratio_fixed_-1') AS v(check_id)
+),
+
+__ref__int_edge_check_formatted_dates AS (
+ SELECT
+ v.check_id::VARCHAR AS check_id
+ FROM VALUES
+ ('check_format-1') AS v(check_id)
+),
+
+__ref__int_edge_callback_last_day AS (
+ SELECT
+ v.callback_id::VARCHAR AS callback_id
+ FROM VALUES
+ ('callback_las-1') AS v(callback_id)
+),
+
+__ref__int_edge_check_month_starts AS (
+ SELECT
+ v.period_id::VARCHAR AS period_id
+ FROM VALUES
+ ('check_month_-1') AS v(period_id)
+),
+
+__ref__int_edge_variant_expected_values AS (
+ SELECT
+ v.value_id::VARCHAR AS value_id
+ FROM VALUES
+ ('variant_expe-1') AS v(value_id)
+),
+
+__ref__int_edge_check_reduced_keys AS (
+ SELECT
+ v.check_id::VARCHAR AS check_id
+ FROM VALUES
+ ('check_reduce-1') AS v(check_id)
+),
+
+__ref__int_edge_ratio_hashes AS (
+ SELECT
+ v.check_id::VARCHAR AS check_id
+ FROM VALUES
+ ('ratio_hashes-1') AS v(check_id)
+),
+
+__ref__int_edge_ratio_object_differences AS (
+ SELECT
+ v.check_id::VARCHAR AS check_id
+ FROM VALUES
+ ('ratio_object-1') AS v(check_id)
+),
+
+__ref__int_edge_check_group_flags AS (
+ SELECT
+ v.check_id::VARCHAR AS check_id
+ FROM VALUES
+ ('check_group_-1') AS v(check_id)
+),
+
+__ref__int_edge_check_label_lookups AS (
+ SELECT
+ v.check_id::VARCHAR AS check_id
+ FROM VALUES
+ ('check_label_-1') AS v(check_id)
+),
+
+__ref__int_edge_check_distinct_tuples AS (
+ SELECT
+ v.group_code::VARCHAR AS group_code
+ FROM VALUES
+ ('check_distin-1') AS v(group_code)
+),
+
+__ref__int_edge_callback_start_fallbacks AS (
+ SELECT
+ v.callback_id::VARCHAR AS callback_id
+ FROM VALUES
+ ('callback_sta-1') AS v(callback_id)
+),
+
+__ref__int_edge_amount_percent_texts AS (
+ SELECT
+ v.check_id::VARCHAR AS check_id
+ FROM VALUES
+ ('amount_perce-1') AS v(check_id)
+),
+
+__ref__int_edge_check_minute_times AS (
+ SELECT
+ v.check_id::VARCHAR AS check_id
+ FROM VALUES
+ ('check_minute-1') AS v(check_id)
+),
+
+__ref__int_edge_check_number_labels AS (
+ SELECT
+ v.check_id::VARCHAR AS check_id
+ FROM VALUES
+ ('check_number-1') AS v(check_id)
+),
+
+__ref__int_edge_check_decoded_keys AS (
+ SELECT
+ v.check_id::VARCHAR AS check_id
+ FROM VALUES
+ ('check_decode-1') AS v(check_id)
+),
+
+__ref__int_edge_callback_london_times AS (
+ SELECT
+ v.callback_id::VARCHAR AS callback_id
+ FROM VALUES
+ ('callback_lon-1') AS v(callback_id)
+),
+
+__ref__int_edge_check_pattern_matches AS (
+ SELECT
+ v.check_id::VARCHAR AS check_id
+ FROM VALUES
+ ('check_patter-1') AS v(check_id)
+),
+
+__ref__int_edge_check_any_amounts AS (
+ SELECT
+ v.group_code::VARCHAR AS group_code
+ FROM VALUES
+ ('check_any_am-1') AS v(group_code)
+),
+
+__ref__int_edge_check_sparse_arrays AS (
+ SELECT
+ v.check_id::VARCHAR AS check_id
+ FROM VALUES
+ ('check_sparse-1') AS v(check_id)
+),
+
+__ref__int_edge_check_last_known_keys AS (
+ SELECT
+ v.check_id::VARCHAR AS check_id
+ FROM VALUES
+ ('check_last_k-1') AS v(check_id)
+),
+
+__ref__int_edge_callback_day_documents AS (
+ SELECT
+ v.merchant_zone::VARCHAR AS merchant_zone
+ FROM VALUES
+ ('callback_day-1') AS v(merchant_zone)
+),
+
+__ref__int_edge_check_key_list_edits AS (
+ SELECT
+ v.check_id::VARCHAR AS check_id
+ FROM VALUES
+ ('check_key_li-1') AS v(check_id)
+),
+
+__ref__int_edge_ratio_group_objects AS (
+ SELECT
+ v.group_code::VARCHAR AS group_code
+ FROM VALUES
+ ('ratio_group_-1') AS v(group_code)
+),
+
+__ref__int_edge_ratio_text_forms AS (
+ SELECT
+ v.check_id::VARCHAR AS check_id
+ FROM VALUES
+ ('ratio_text_f-1') AS v(check_id)
+),
+
+__ref__int_edge_check_variant_branches AS (
+ SELECT
+ v.check_id::VARCHAR AS check_id
+ FROM VALUES
+ ('check_varian-1') AS v(check_id)
+),
+
+__ref__int_edge_ledger_quantity_steps AS (
+ SELECT
+ v.order_ref::VARCHAR AS order_ref
+ FROM VALUES
+ ('ledger_quant-1') AS v(order_ref)
+),
+
+__ref__int_edge_check_generated_rows AS (
+ SELECT
+ v.summary_id::VARCHAR AS summary_id
+ FROM VALUES
+ ('check_genera-1') AS v(summary_id)
+),
+
+__ref__int_edge_check_unnamed_labels AS (
+ SELECT
+ v.check_id::VARCHAR AS check_id
+ FROM VALUES
+ ('check_unname-1') AS v(check_id)
+),
+
+__expected__rpt_edge_case_model_keys AS (
+ SELECT
+ NULL AS model_key_id,
+ NULL AS model_name,
+ NULL AS model_key
+)
From 5c303c92b81fca9848db23e66d2b5e8805877cd6 Mon Sep 17 00:00:00 2001
From: Kevin Longe <273747162+kvlonge@users.noreply.github.com>
Date: Mon, 2 Nov 2026 07:57:49 +0000
Subject: [PATCH 2/5] test(duckshop): open source, table function and
hook-created function edge cases
---
.../functions/sql/edge_basket_lines_for.sql | 29 ++++
.../_hooks/sql/create_edge_running_peaks.sql | 24 +++
.../int_edge_basket_distinct_tags.sql | 23 +++
.../int_edge_basket_line_lookups.sql | 22 +++
.../int_edge_basket_running_peaks.sql | 33 ++++
.../int_edge_basket_sku_part_filters.sql | 21 +++
.../int_edge_basket_tag_list_reads.sql | 43 +++++
.../int_edge_callback_day_documents.sql | 12 +-
.../int_edge_check_amount_spreads.sql | 33 ++++
.../int_edge_check_complete_pairs.sql | 23 +++
.../int_edge_check_group_pivots.sql | 34 ++++
.../edge_cases/int_edge_check_key_parts.sql | 8 +-
.../int_edge_check_number_arrays.sql | 8 +-
.../edge_cases/int_edge_check_text_arrays.sql | 8 +-
.../int_edge_ledger_paid_quantities.sql | 41 +++++
.../int_edge_variant_element_counts.sql | 24 +++
.../rpt_edge_case_array_model_keys.sql | 9 -
.../edge_cases/rpt_edge_case_model_keys.sql | 66 ++++++++
.../edge_cases/stg_edge_supplier_notes.sql | 28 ++++
.../project/python/loaders/_edge_cases.py | 18 ++
.../project/python/loaders/edge_cases.py | 5 +
.../duckshop/project/sources/edge_cases.yml | 21 +++
.../duckshop/project/sqlbuild_project.toml | 7 +
.../test_int_edge_basket_distinct_tags.sql | 20 +++
.../test_int_edge_basket_line_lookups.sql | 19 +++
.../test_int_edge_basket_running_peaks.sql | 22 +++
.../test_int_edge_basket_sku_part_filters.sql | 21 +++
.../test_int_edge_basket_tag_list_reads.sql | 27 +++
.../test_int_edge_check_amount_spreads.sql | 24 +++
.../test_int_edge_check_complete_pairs.sql | 23 +++
.../test_int_edge_check_group_pivots.sql | 24 +++
.../test_int_edge_check_key_parts.sql | 2 +-
.../test_int_edge_check_number_arrays.sql | 2 +-
.../test_int_edge_check_text_arrays.sql | 2 +-
.../test_int_edge_ledger_paid_quantities.sql | 20 +++
.../test_int_edge_variant_element_counts.sql | 21 +++
.../test_rpt_edge_case_array_model_keys.sql | 23 +--
.../test_rpt_edge_case_model_keys.sql | 154 ++++++++++++++++++
.../test_stg_edge_supplier_notes.sql | 18 ++
benchmarks/duckshop/scripts/relations.py | 20 ++-
.../duckshop/tests/test_synthetic_data.py | 1 +
41 files changed, 933 insertions(+), 50 deletions(-)
create mode 100644 benchmarks/duckshop/project/functions/sql/edge_basket_lines_for.sql
create mode 100644 benchmarks/duckshop/project/models/intermediate/edge_cases/_sqlbuild/_hooks/sql/create_edge_running_peaks.sql
create mode 100644 benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_basket_distinct_tags.sql
create mode 100644 benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_basket_line_lookups.sql
create mode 100644 benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_basket_running_peaks.sql
create mode 100644 benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_basket_sku_part_filters.sql
create mode 100644 benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_basket_tag_list_reads.sql
create mode 100644 benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_check_amount_spreads.sql
create mode 100644 benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_check_complete_pairs.sql
create mode 100644 benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_check_group_pivots.sql
create mode 100644 benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_ledger_paid_quantities.sql
create mode 100644 benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_variant_element_counts.sql
create mode 100644 benchmarks/duckshop/project/models/staging/edge_cases/stg_edge_supplier_notes.sql
create mode 100644 benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_basket_distinct_tags.sql
create mode 100644 benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_basket_line_lookups.sql
create mode 100644 benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_basket_running_peaks.sql
create mode 100644 benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_basket_sku_part_filters.sql
create mode 100644 benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_basket_tag_list_reads.sql
create mode 100644 benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_amount_spreads.sql
create mode 100644 benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_complete_pairs.sql
create mode 100644 benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_group_pivots.sql
create mode 100644 benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_ledger_paid_quantities.sql
create mode 100644 benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_variant_element_counts.sql
create mode 100644 benchmarks/duckshop/project/tests/unit/staging/edge_cases/test_stg_edge_supplier_notes.sql
diff --git a/benchmarks/duckshop/project/functions/sql/edge_basket_lines_for.sql b/benchmarks/duckshop/project/functions/sql/edge_basket_lines_for.sql
new file mode 100644
index 0000000000..b2905062a5
--- /dev/null
+++ b/benchmarks/duckshop/project/functions/sql/edge_basket_lines_for.sql
@@ -0,0 +1,29 @@
+FUNCTION (
+ description "Lines of one basket with their SKU and tag, for the edge-case table-function reader",
+ tags [edge_case],
+ arguments (p_basket_id VARCHAR),
+ returns table (
+ line_id VARCHAR,
+ line_no INT,
+ sku VARCHAR,
+ tag VARCHAR
+ )
+);
+
+WITH lines AS (
+ SELECT *
+ FROM __ref("stg_edge_basket_lines")
+),
+
+final AS (
+ SELECT
+ l.line_id,
+ l.line_no,
+ l.sku,
+ l.tag
+ FROM lines AS l
+ WHERE l.basket_id = p_basket_id
+)
+
+SELECT *
+FROM final
diff --git a/benchmarks/duckshop/project/models/intermediate/edge_cases/_sqlbuild/_hooks/sql/create_edge_running_peaks.sql b/benchmarks/duckshop/project/models/intermediate/edge_cases/_sqlbuild/_hooks/sql/create_edge_running_peaks.sql
new file mode 100644
index 0000000000..747d176f3a
--- /dev/null
+++ b/benchmarks/duckshop/project/models/intermediate/edge_cases/_sqlbuild/_hooks/sql/create_edge_running_peaks.sql
@@ -0,0 +1,24 @@
+HOOK (
+ description """
+ Create the edge-case JavaScript function edge_running_peaks, which turns a list of numbers into
+ the running maximum at each position. SQLBuild does not declare functions a hook creates.
+ """,
+);
+
+CREATE OR REPLACE FUNCTION @@CTX:destination.database.@@CTX:destination.schema.edge_running_peaks(
+ line_numbers ARRAY
+)
+RETURNS ARRAY
+LANGUAGE JAVASCRIPT
+AS $$
+ var peaks = [];
+ var peak = null;
+ for (var i = 0; i < LINE_NUMBERS.length; i++) {
+ var value = LINE_NUMBERS[i];
+ if (value !== null && (peak === null || value > peak)) {
+ peak = value;
+ }
+ peaks.push(peak);
+ }
+ return peaks;
+$$
diff --git a/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_basket_distinct_tags.sql b/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_basket_distinct_tags.sql
new file mode 100644
index 0000000000..c9c716f5dc
--- /dev/null
+++ b/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_basket_distinct_tags.sql
@@ -0,0 +1,23 @@
+MODEL (
+ description """
+ One row per distinct tag of the basket lines, held as VARIANT and read back as text
+ """,
+ tags [edge_case],
+ columns (
+ tag_text (type VARCHAR, nullable false, audits [not_null, unique]),
+ ),
+);
+
+WITH distinct_tags AS (
+ SELECT DISTINCT TO_VARIANT(l.tag) AS tag_value
+ FROM __ref("stg_edge_basket_lines") AS l
+),
+
+final AS (
+ SELECT d.tag_value::VARCHAR AS tag_text
+ FROM distinct_tags AS d
+ WHERE d.tag_value IS NOT NULL
+)
+
+SELECT *
+FROM final
diff --git a/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_basket_line_lookups.sql b/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_basket_line_lookups.sql
new file mode 100644
index 0000000000..58c5747e88
--- /dev/null
+++ b/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_basket_line_lookups.sql
@@ -0,0 +1,22 @@
+MODEL (
+ description """
+ One row per line of one fixed basket, read through the edge-case table function
+ """,
+ tags [edge_case],
+ columns (
+ line_id (type VARCHAR, nullable false, audits [not_null, unique]),
+ line_no (type INT),
+ sku (type VARCHAR),
+ ),
+);
+
+WITH final AS (
+ SELECT
+ l.line_id,
+ l.line_no,
+ l.sku
+ FROM __table_fn("edge_basket_lines_for")('B-1') AS l
+)
+
+SELECT *
+FROM final
diff --git a/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_basket_running_peaks.sql b/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_basket_running_peaks.sql
new file mode 100644
index 0000000000..60821b3ef3
--- /dev/null
+++ b/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_basket_running_peaks.sql
@@ -0,0 +1,33 @@
+MODEL (
+ description """
+ One row per basket with the last running peak of its line numbers, from a JavaScript
+ function that a pre-hook creates and SQLBuild does not declare
+ """,
+ tags [edge_case],
+ pre_hooks [sql("create_edge_running_peaks")],
+ columns (
+ basket_id (type VARCHAR, nullable false, audits [not_null, unique]),
+ peak_count (type NUMBER(38, 0)),
+ last_peak (type NUMBER(38, 0)),
+ ),
+);
+
+WITH peaks AS (
+ SELECT
+ l.basket_id,
+ edge_running_peaks(ARRAY_AGG(l.line_no) WITHIN GROUP (ORDER BY l.line_no)) AS peaks
+ FROM __ref("stg_edge_basket_lines") AS l
+ GROUP BY
+ l.basket_id
+),
+
+final AS (
+ SELECT
+ p.basket_id,
+ ARRAY_SIZE(p.peaks)::NUMBER(38, 0) AS peak_count,
+ p.peaks[ARRAY_SIZE(p.peaks) - 1]::NUMBER(38, 0) AS last_peak
+ FROM peaks AS p
+)
+
+SELECT *
+FROM final
diff --git a/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_basket_sku_part_filters.sql b/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_basket_sku_part_filters.sql
new file mode 100644
index 0000000000..a56b86960c
--- /dev/null
+++ b/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_basket_sku_part_filters.sql
@@ -0,0 +1,21 @@
+MODEL (
+ description """
+ One row per basket line with the number of parts of its SKU longer than one character, kept
+ by FILTER
+ """,
+ tags [edge_case],
+ columns (
+ line_id (type VARCHAR, nullable false, audits [not_null, unique]),
+ long_part_count (type NUMBER(38, 0)),
+ ),
+);
+
+WITH final AS (
+ SELECT
+ l.line_id,
+ ARRAY_SIZE(FILTER(SPLIT(l.sku, '-'), part -> LENGTH(part) > 1))::NUMBER(38, 0) AS long_part_count
+ FROM __ref("stg_edge_basket_lines") AS l
+)
+
+SELECT *
+FROM final
diff --git a/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_basket_tag_list_reads.sql b/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_basket_tag_list_reads.sql
new file mode 100644
index 0000000000..a727a5c5e0
--- /dev/null
+++ b/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_basket_tag_list_reads.sql
@@ -0,0 +1,43 @@
+MODEL (
+ description """
+ One row per basket with reads of its tags in line order: overlap with a fixed list, distinct
+ tags, the position and count of one tag, the tags upper-cased, a time read from the basket
+ id and the size of a bracket array literal
+ """,
+ tags [edge_case],
+ columns (
+ basket_id (type VARCHAR, nullable false, audits [not_null, unique]),
+ has_colour (type BOOLEAN),
+ distinct_tag_count (type NUMBER(38, 0)),
+ red_position (type NUMBER(38, 0)),
+ non_red_count (type NUMBER(38, 0)),
+ upper_tags (type VARCHAR),
+ basket_time (type TIME),
+ pair_size (type NUMBER(38, 0)),
+ ),
+);
+
+WITH tag_lists AS (
+ SELECT
+ l.basket_id,
+ ARRAY_AGG(l.tag) WITHIN GROUP (ORDER BY l.line_no) AS tags
+ FROM __ref("stg_edge_basket_lines") AS l
+ GROUP BY
+ l.basket_id
+),
+
+final AS (
+ SELECT
+ t.basket_id,
+ ARRAYS_OVERLAP(t.tags, ['red', 'blue'])::BOOLEAN AS has_colour,
+ ARRAY_SIZE(ARRAY_DISTINCT(t.tags))::NUMBER(38, 0) AS distinct_tag_count,
+ ARRAY_POSITION('red'::VARIANT, t.tags)::NUMBER(38, 0) AS red_position,
+ ARRAY_SIZE(ARRAY_REMOVE(t.tags, 'red'::VARIANT))::NUMBER(38, 0) AS non_red_count,
+ ARRAY_TO_STRING(TRANSFORM(t.tags, tag -> UPPER(tag)), ',')::VARCHAR AS upper_tags,
+ TRY_TO_TIME(t.basket_id)::TIME AS basket_time,
+ ARRAY_SIZE([t.basket_id, ARRAY_SIZE(t.tags)])::NUMBER(38, 0) AS pair_size
+ FROM tag_lists AS t
+)
+
+SELECT *
+FROM final
diff --git a/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_callback_day_documents.sql b/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_callback_day_documents.sql
index fb154b9000..68ed654f55 100644
--- a/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_callback_day_documents.sql
+++ b/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_callback_day_documents.sql
@@ -10,14 +10,20 @@ MODEL (
),
);
-WITH final AS (
+WITH day_documents AS (
SELECT
g.merchant_zone,
- ARRAY_SIZE(ARRAY_AGG(OBJECT_CONSTRUCT_KEEP_NULL('day', g.business_date, 'id', g.callback_id)))::NUMBER(38, 0)
- AS document_count
+ ARRAY_AGG(OBJECT_CONSTRUCT_KEEP_NULL('id', g.callback_id, 'day', g.business_date)) AS documents
FROM __ref("stg_edge_gateway_callbacks") AS g
GROUP BY
g.merchant_zone
+),
+
+final AS (
+ SELECT
+ d.merchant_zone,
+ ARRAY_SIZE(d.documents)::NUMBER(38, 0) AS document_count
+ FROM day_documents AS d
)
SELECT *
diff --git a/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_check_amount_spreads.sql b/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_check_amount_spreads.sql
new file mode 100644
index 0000000000..2a12cb0ac4
--- /dev/null
+++ b/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_check_amount_spreads.sql
@@ -0,0 +1,33 @@
+MODEL (
+ description """
+ One row per check group with the median of its amounts, and per group the product of an
+ exact decimal rate with one less the rate
+ """,
+ tags [edge_case],
+ columns (
+ group_code (type VARCHAR, nullable false, audits [not_null, unique]),
+ median_amount (type NUMBER(18, 3)),
+ rate_spread (type NUMBER(38, 12)),
+ ),
+);
+
+WITH rates AS (
+ SELECT
+ a.group_code,
+ a.amount,
+ a.amount / NULLIF(a.wide_key, 0) AS rate
+ FROM __ref("stg_edge_amount_checks") AS a
+),
+
+final AS (
+ SELECT
+ r.group_code,
+ MEDIAN(r.amount)::NUMBER(18, 3) AS median_amount,
+ MAX(r.rate * (1 - r.rate))::NUMBER(38, 12) AS rate_spread
+ FROM rates AS r
+ GROUP BY
+ r.group_code
+)
+
+SELECT *
+FROM final
diff --git a/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_check_complete_pairs.sql b/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_check_complete_pairs.sql
new file mode 100644
index 0000000000..73a4c32ec4
--- /dev/null
+++ b/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_check_complete_pairs.sql
@@ -0,0 +1,23 @@
+MODEL (
+ description """
+ One row per check group counting the checks whose id and key text are both present, with
+ COUNT over two arguments
+ """,
+ tags [edge_case],
+ columns (
+ group_code (type VARCHAR, nullable false, audits [not_null, unique]),
+ complete_pair_count (type NUMBER(38, 0)),
+ ),
+);
+
+WITH final AS (
+ SELECT
+ a.group_code,
+ COUNT(a.check_id, a.key_text)::NUMBER(38, 0) AS complete_pair_count
+ FROM __ref("stg_edge_amount_checks") AS a
+ GROUP BY
+ a.group_code
+)
+
+SELECT *
+FROM final
diff --git a/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_check_group_pivots.sql b/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_check_group_pivots.sql
new file mode 100644
index 0000000000..aefc531928
--- /dev/null
+++ b/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_check_group_pivots.sql
@@ -0,0 +1,34 @@
+MODEL (
+ description """
+ One row per reconciliation check with its amount pivoted into one column per check group
+ """,
+ tags [edge_case],
+ columns (
+ check_id (type VARCHAR, nullable false, audits [not_null, unique]),
+ first_group_amount (type NUMBER(38, 2)),
+ second_group_amount (type NUMBER(38, 2)),
+ ),
+);
+
+WITH amounts AS (
+ SELECT a.check_id, a.group_code, a.amount
+ FROM __ref("stg_edge_amount_checks") AS a
+),
+
+pivoted AS (
+ SELECT *
+ FROM amounts
+ PIVOT(SUM(amount) FOR group_code IN ('G-1', 'G-2'))
+ AS pv (check_id, first_group_amount, second_group_amount)
+),
+
+final AS (
+ SELECT
+ p.check_id::VARCHAR AS check_id,
+ p.first_group_amount::NUMBER(38, 2) AS first_group_amount,
+ p.second_group_amount::NUMBER(38, 2) AS second_group_amount
+ FROM pivoted AS p
+)
+
+SELECT *
+FROM final
diff --git a/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_check_key_parts.sql b/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_check_key_parts.sql
index bbffb38a39..7b124aff1b 100644
--- a/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_check_key_parts.sql
+++ b/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_check_key_parts.sql
@@ -1,19 +1,19 @@
MODEL (
description """
- One row per reconciliation check with the parts of its key text, split on commas, read as
- integers through a typed lambda
+ One row per reconciliation check with the number of parts of its key text, split on commas
+ and read as numbers through a typed lambda
""",
tags [edge_case],
columns (
check_id (type VARCHAR, nullable false, audits [not_null, unique]),
- key_parts (type ARRAY),
+ key_number_count (type NUMBER(38, 0)),
),
);
WITH final AS (
SELECT
a.check_id,
- TRANSFORM(STRTOK_TO_ARRAY(a.key_text, ','), part VARCHAR -> TRY_TO_NUMBER(part))::ARRAY AS key_parts
+ ARRAY_SIZE(TRANSFORM(STRTOK_TO_ARRAY(a.key_text, ','), part VARCHAR -> TRY_TO_NUMBER(part)))::NUMBER(38, 0) AS key_number_count
FROM __ref("stg_edge_amount_checks") AS a
)
diff --git a/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_check_number_arrays.sql b/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_check_number_arrays.sql
index 0b88fa25a6..d2e09655d2 100644
--- a/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_check_number_arrays.sql
+++ b/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_check_number_arrays.sql
@@ -1,19 +1,19 @@
MODEL (
description """
- One row per reconciliation check with its amount in an array cast through the structured
- type ARRAY(NUMBER(38, 10))
+ One row per reconciliation check with the size of an array holding its amount, cast through
+ the structured type ARRAY(NUMBER(38, 10))
""",
tags [edge_case],
columns (
check_id (type VARCHAR, nullable false, audits [not_null, unique]),
- amounts (type ARRAY),
+ amount_count (type NUMBER(38, 0)),
),
);
WITH final AS (
SELECT
a.check_id,
- CAST(CAST(ARRAY_CONSTRUCT(a.amount) AS ARRAY(NUMBER(38, 10))) AS ARRAY) AS amounts
+ ARRAY_SIZE(CAST(CAST(ARRAY_CONSTRUCT(a.amount) AS ARRAY(NUMBER(38, 10))) AS ARRAY))::NUMBER(38, 0) AS amount_count
FROM __ref("stg_edge_amount_checks") AS a
)
diff --git a/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_check_text_arrays.sql b/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_check_text_arrays.sql
index f6e14f9941..7e938a83a8 100644
--- a/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_check_text_arrays.sql
+++ b/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_check_text_arrays.sql
@@ -1,19 +1,19 @@
MODEL (
description """
- One row per reconciliation check with its key text split into an array cast through the
- structured type ARRAY(VARCHAR)
+ One row per reconciliation check with the number of parts of its key text, split into an
+ array cast through the structured type ARRAY(VARCHAR)
""",
tags [edge_case],
columns (
check_id (type VARCHAR, nullable false, audits [not_null, unique]),
- key_parts (type ARRAY),
+ key_part_count (type NUMBER(38, 0)),
),
);
WITH final AS (
SELECT
a.check_id,
- CAST(CAST(SPLIT(a.key_text, ',') AS ARRAY(VARCHAR)) AS ARRAY) AS key_parts
+ ARRAY_SIZE(CAST(CAST(SPLIT(a.key_text, ',') AS ARRAY(VARCHAR)) AS ARRAY))::NUMBER(38, 0) AS key_part_count
FROM __ref("stg_edge_amount_checks") AS a
)
diff --git a/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_ledger_paid_quantities.sql b/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_ledger_paid_quantities.sql
new file mode 100644
index 0000000000..261fe4d1b7
--- /dev/null
+++ b/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_ledger_paid_quantities.sql
@@ -0,0 +1,41 @@
+MODEL (
+ description """
+ One row per order with the count of its paid quantities, read from text as FLOAT and listed
+ in change order
+ """,
+ tags [edge_case],
+ columns (
+ order_ref (type VARCHAR, nullable false, audits [not_null, unique]),
+ paid_quantity_count (type NUMBER(38, 0)),
+ ),
+);
+
+WITH quantities AS (
+ SELECT
+ l.order_ref,
+ l.status,
+ TRY_TO_DOUBLE(l.quantity_text) AS quantity,
+ l.changed_at
+ FROM __ref("stg_edge_ledger_entries") AS l
+),
+
+quantity_lists AS (
+ SELECT
+ q.order_ref,
+ ARRAY_COMPACT(
+ ARRAY_AGG(IFF(q.status = 'paid', q.quantity, NULL)) WITHIN GROUP (ORDER BY q.changed_at)
+ ) AS paid_quantities
+ FROM quantities AS q
+ GROUP BY
+ q.order_ref
+),
+
+final AS (
+ SELECT
+ q.order_ref,
+ ARRAY_SIZE(q.paid_quantities)::NUMBER(38, 0) AS paid_quantity_count
+ FROM quantity_lists AS q
+)
+
+SELECT *
+FROM final
diff --git a/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_variant_element_counts.sql b/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_variant_element_counts.sql
new file mode 100644
index 0000000000..75d81a50a0
--- /dev/null
+++ b/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_variant_element_counts.sql
@@ -0,0 +1,24 @@
+MODEL (
+ description """
+ One row per value group counting the elements of its attribute values, flattened without an
+ alias
+ """,
+ tags [edge_case],
+ columns (
+ group_code (type VARCHAR, nullable false, audits [not_null, unique]),
+ element_count (type NUMBER(38, 0)),
+ ),
+);
+
+WITH final AS (
+ SELECT
+ v.group_code,
+ COUNT(*)::NUMBER(38, 0) AS element_count
+ FROM __ref("stg_edge_variant_values") AS v,
+ LATERAL FLATTEN(INPUT => v.attribute_value)
+ GROUP BY
+ v.group_code
+)
+
+SELECT *
+FROM final
diff --git a/benchmarks/duckshop/project/models/marts/edge_cases/rpt_edge_case_array_model_keys.sql b/benchmarks/duckshop/project/models/marts/edge_cases/rpt_edge_case_array_model_keys.sql
index b16c2282ef..8241de05b6 100644
--- a/benchmarks/duckshop/project/models/marts/edge_cases/rpt_edge_case_array_model_keys.sql
+++ b/benchmarks/duckshop/project/models/marts/edge_cases/rpt_edge_case_array_model_keys.sql
@@ -12,17 +12,8 @@ MODEL (
);
WITH model_keys AS (
- SELECT 'int_edge_check_number_arrays' AS model_name, r.check_id::VARCHAR AS model_key
- FROM __ref("int_edge_check_number_arrays") AS r
- UNION ALL
- SELECT 'int_edge_check_text_arrays' AS model_name, r.check_id::VARCHAR AS model_key
- FROM __ref("int_edge_check_text_arrays") AS r
- UNION ALL
SELECT 'int_edge_callback_wall_time_lists' AS model_name, r.merchant_zone::VARCHAR AS model_key
FROM __ref("int_edge_callback_wall_time_lists") AS r
- UNION ALL
- SELECT 'int_edge_check_key_parts' AS model_name, r.check_id::VARCHAR AS model_key
- FROM __ref("int_edge_check_key_parts") AS r
),
final AS (
diff --git a/benchmarks/duckshop/project/models/marts/edge_cases/rpt_edge_case_model_keys.sql b/benchmarks/duckshop/project/models/marts/edge_cases/rpt_edge_case_model_keys.sql
index cdca9127ba..60144f301b 100644
--- a/benchmarks/duckshop/project/models/marts/edge_cases/rpt_edge_case_model_keys.sql
+++ b/benchmarks/duckshop/project/models/marts/edge_cases/rpt_edge_case_model_keys.sql
@@ -63,6 +63,12 @@ WITH model_keys AS (
SELECT 'int_edge_callback_clock_times' AS model_name, r.callback_id::VARCHAR AS model_key
FROM __ref("int_edge_callback_clock_times") AS r
UNION ALL
+ SELECT 'int_edge_check_number_arrays' AS model_name, r.check_id::VARCHAR AS model_key
+ FROM __ref("int_edge_check_number_arrays") AS r
+ UNION ALL
+ SELECT 'int_edge_check_text_arrays' AS model_name, r.check_id::VARCHAR AS model_key
+ FROM __ref("int_edge_check_text_arrays") AS r
+ UNION ALL
SELECT 'int_edge_check_key_rewrites' AS model_name, r.check_id::VARCHAR AS model_key
FROM __ref("int_edge_check_key_rewrites") AS r
UNION ALL
@@ -144,6 +150,9 @@ WITH model_keys AS (
SELECT 'int_edge_check_month_starts' AS model_name, r.period_id::VARCHAR AS model_key
FROM __ref("int_edge_check_month_starts") AS r
UNION ALL
+ SELECT 'int_edge_check_key_parts' AS model_name, r.check_id::VARCHAR AS model_key
+ FROM __ref("int_edge_check_key_parts") AS r
+ UNION ALL
SELECT 'int_edge_variant_expected_values' AS model_name, r.value_id::VARCHAR AS model_key
FROM __ref("int_edge_variant_expected_values") AS r
UNION ALL
@@ -218,6 +227,63 @@ WITH model_keys AS (
UNION ALL
SELECT 'int_edge_check_unnamed_labels' AS model_name, r.check_id::VARCHAR AS model_key
FROM __ref("int_edge_check_unnamed_labels") AS r
+ UNION ALL
+ SELECT 'int_edge_basket_tag_list_reads' AS model_name, r.basket_id::VARCHAR AS model_key
+ FROM __ref("int_edge_basket_tag_list_reads") AS r
+ UNION ALL
+ SELECT 'int_edge_basket_sku_part_filters' AS model_name, r.line_id::VARCHAR AS model_key
+ FROM __ref("int_edge_basket_sku_part_filters") AS r
+ UNION ALL
+ SELECT 'int_edge_basket_distinct_tags' AS model_name, r.tag_text::VARCHAR AS model_key
+ FROM __ref("int_edge_basket_distinct_tags") AS r
+ UNION ALL
+ SELECT 'int_edge_check_amount_spreads' AS model_name, r.group_code::VARCHAR AS model_key
+ FROM __ref("int_edge_check_amount_spreads") AS r
+ UNION ALL
+ SELECT 'int_edge_check_group_pivots' AS model_name, r.check_id::VARCHAR AS model_key
+ FROM __ref("int_edge_check_group_pivots") AS r
+ UNION ALL
+ SELECT 'int_edge_check_complete_pairs' AS model_name, r.group_code::VARCHAR AS model_key
+ FROM __ref("int_edge_check_complete_pairs") AS r
+ UNION ALL
+ SELECT 'int_edge_ledger_paid_quantities' AS model_name, r.order_ref::VARCHAR AS model_key
+ FROM __ref("int_edge_ledger_paid_quantities") AS r
+ UNION ALL
+ SELECT 'int_edge_variant_element_counts' AS model_name, r.group_code::VARCHAR AS model_key
+ FROM __ref("int_edge_variant_element_counts") AS r
+ UNION ALL
+ SELECT 'int_edge_basket_line_lookups' AS model_name, r.line_id::VARCHAR AS model_key
+ FROM __ref("int_edge_basket_line_lookups") AS r
+ UNION ALL
+ SELECT 'int_edge_basket_running_peaks' AS model_name, r.basket_id::VARCHAR AS model_key
+ FROM __ref("int_edge_basket_running_peaks") AS r
+ UNION ALL
+ SELECT 'stg_edge_supplier_notes' AS model_name, r.note_id::VARCHAR AS model_key
+ FROM __ref("stg_edge_supplier_notes") AS r
+ UNION ALL
+ SELECT 'int_edge_clock_text_reads' AS model_name, r.text_id::VARCHAR AS model_key
+ FROM __ref("int_edge_clock_text_reads") AS r
+ UNION ALL
+ SELECT 'int_edge_amount_bit_reads' AS model_name, r.check_id::VARCHAR AS model_key
+ FROM __ref("int_edge_amount_bit_reads") AS r
+ UNION ALL
+ SELECT 'int_edge_note_patterns' AS model_name, r.note_id::VARCHAR AS model_key
+ FROM __ref("int_edge_note_patterns") AS r
+ UNION ALL
+ SELECT 'int_edge_ticket_tokens' AS model_name, r.line_id::VARCHAR AS model_key
+ FROM __ref("int_edge_ticket_tokens") AS r
+ UNION ALL
+ SELECT 'int_edge_basket_xml_reads' AS model_name, r.line_id::VARCHAR AS model_key
+ FROM __ref("int_edge_basket_xml_reads") AS r
+ UNION ALL
+ SELECT 'int_edge_join_keys' AS model_name, r.row_key::VARCHAR AS model_key
+ FROM __ref("int_edge_join_keys") AS r
+ UNION ALL
+ SELECT 'int_edge_json_numbers' AS model_name, r.check_id::VARCHAR AS model_key
+ FROM __ref("int_edge_json_numbers") AS r
+ UNION ALL
+ SELECT 'int_edge_quantity_checks' AS model_name, r.entry_id::VARCHAR AS model_key
+ FROM __ref("int_edge_quantity_checks") AS r
),
final AS (
diff --git a/benchmarks/duckshop/project/models/staging/edge_cases/stg_edge_supplier_notes.sql b/benchmarks/duckshop/project/models/staging/edge_cases/stg_edge_supplier_notes.sql
new file mode 100644
index 0000000000..a02d79df7b
--- /dev/null
+++ b/benchmarks/duckshop/project/models/staging/edge_cases/stg_edge_supplier_notes.sql
@@ -0,0 +1,28 @@
+MODEL (
+ description """
+ One row per supplier note from a source whose contract is not enforced, with the note upper-
+ cased
+ """,
+ tags [edge_case],
+ columns (
+ note_id (type VARCHAR, nullable false, audits [not_null, unique]),
+ supplier_code (type VARCHAR),
+ note_upper (type VARCHAR),
+ ),
+);
+
+WITH src AS (
+ SELECT *
+ FROM __source("edge__supplier_notes")
+),
+
+final AS (
+ SELECT
+ s.note_id,
+ s.supplier_code,
+ UPPER(s.note_text) AS note_upper
+ FROM src AS s
+)
+
+SELECT *
+FROM final
diff --git a/benchmarks/duckshop/project/python/loaders/_edge_cases.py b/benchmarks/duckshop/project/python/loaders/_edge_cases.py
index 0c42460042..2f0b81a9f5 100644
--- a/benchmarks/duckshop/project/python/loaders/_edge_cases.py
+++ b/benchmarks/duckshop/project/python/loaders/_edge_cases.py
@@ -704,6 +704,23 @@ def category_links() -> Rows:
]
+def supplier_notes() -> Rows:
+ notes = [
+ ("SN-1", "SUP-PINTAIL", "Restock teal decoys before April"),
+ ("SN-2", "SUP-EIDER", None),
+ ("SN-3", None, "Bath ducks ship in pairs"),
+ ]
+ return [
+ {
+ "note_id": note,
+ "supplier_code": supplier,
+ "note_text": text,
+ "_loaded_at": _at("2026-03-06 00:00:00"),
+ }
+ for note, supplier, text in notes
+ ]
+
+
DELIVERY_BATCH_VAR = "edge_delivery_batch"
"""Project variable naming the last delivery-update load to include; "2" (all loads) by default."""
@@ -762,4 +779,5 @@ def delivery_updates(batch: int = 2) -> Rows:
"edge__amount_checks": amount_checks(),
"edge__variant_values": variant_values(),
"edge__category_links": category_links(),
+ "edge__supplier_notes": supplier_notes(),
}
diff --git a/benchmarks/duckshop/project/python/loaders/edge_cases.py b/benchmarks/duckshop/project/python/loaders/edge_cases.py
index 522dd0b37f..9cbbf862b9 100644
--- a/benchmarks/duckshop/project/python/loaders/edge_cases.py
+++ b/benchmarks/duckshop/project/python/loaders/edge_cases.py
@@ -78,6 +78,11 @@ def edge__category_links(ctx: LoaderContext) -> object:
return _load(ctx, "edge__category_links")
+@loader
+def edge__supplier_notes(ctx: LoaderContext) -> object:
+ return _load(ctx, "edge__supplier_notes")
+
+
@loader
def edge__delivery_updates(ctx: LoaderContext) -> object:
batch = int(ctx.vars.get(DELIVERY_BATCH_VAR, 2)) # type: ignore[call-overload]
diff --git a/benchmarks/duckshop/project/sources/edge_cases.yml b/benchmarks/duckshop/project/sources/edge_cases.yml
index 738e9b0f2a..ea73c90c66 100644
--- a/benchmarks/duckshop/project/sources/edge_cases.yml
+++ b/benchmarks/duckshop/project/sources/edge_cases.yml
@@ -411,3 +411,24 @@ sources:
nullable: false
audits:
- not_null
+ - name: edge__supplier_notes
+ description: >-
+ Supplier notes whose columns are declared but whose contract is not enforced, so readers see
+ an open source
+ managed: true
+ columns:
+ - name: note_id
+ type: VARCHAR
+ nullable: false
+ audits:
+ - not_null
+ - unique
+ - name: supplier_code
+ type: VARCHAR
+ - name: note_text
+ type: VARCHAR
+ - name: _loaded_at
+ type: TIMESTAMP_NTZ
+ nullable: false
+ audits:
+ - not_null
diff --git a/benchmarks/duckshop/project/sqlbuild_project.toml b/benchmarks/duckshop/project/sqlbuild_project.toml
index f4e9a8d157..43a99dbcc3 100644
--- a/benchmarks/duckshop/project/sqlbuild_project.toml
+++ b/benchmarks/duckshop/project/sqlbuild_project.toml
@@ -322,6 +322,13 @@ reason = """
The edge case leaves a literal unaliased on purpose, and reads it by the name Snowflake gives it.
"""
+[[rules.rule_ignores]]
+rules = ["SQLCLEAN044"]
+paths = ["models/intermediate/edge_cases/_sqlbuild/_hooks/sql/create_edge_running_peaks.sql"]
+reason = """
+The hook creates a JavaScript function, whose body Snowflake takes as one dollar-quoted string.
+"""
+
[[rules.rule_ignores]]
rules = ["SQLCLEAN040"]
paths = ["models/intermediate/edge_cases/int_edge_amount_bit_reads.sql"]
diff --git a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_basket_distinct_tags.sql b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_basket_distinct_tags.sql
new file mode 100644
index 0000000000..33f872b826
--- /dev/null
+++ b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_basket_distinct_tags.sql
@@ -0,0 +1,20 @@
+TEST (name "int_edge_basket_distinct_tags__lists_distinct_tags");
+
+WITH __ref__stg_edge_basket_lines AS (
+ SELECT
+ v.line_id::VARCHAR AS line_id,
+ v.basket_id::VARCHAR AS basket_id,
+ v.line_no::NUMBER(38, 0) AS line_no,
+ v.sku::VARCHAR AS sku,
+ v.tag::VARCHAR AS tag
+ FROM VALUES
+ ('BL-01', 'B-1', 1, 'DK-RED-01', 'red'),
+ ('BL-02', 'B-1', 2, 'DK-BLUE-02', 'blue'),
+ ('BL-03', 'B-1', 3, 'DK-RED-03', 'red'),
+ ('BL-04', 'B-2', 1, 'TL-GREEN-01', NULL) AS v(line_id, basket_id, line_no, sku, tag)
+),
+
+__expected__int_edge_basket_distinct_tags AS (
+ SELECT
+ NULL AS tag_text
+)
diff --git a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_basket_line_lookups.sql b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_basket_line_lookups.sql
new file mode 100644
index 0000000000..f562922d95
--- /dev/null
+++ b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_basket_line_lookups.sql
@@ -0,0 +1,19 @@
+TEST (name "int_edge_basket_line_lookups__reads_one_basket_through_the_table_function");
+
+WITH __table_fn__edge_basket_lines_for AS (
+ SELECT
+ v.line_id::VARCHAR AS line_id,
+ v.line_no::INT AS line_no,
+ v.sku::VARCHAR AS sku,
+ v.tag::VARCHAR AS tag
+ FROM VALUES
+ ('BL-01', 1, 'DK-RED-01', 'red'),
+ ('BL-02', 2, 'DK-BLUE-02', NULL) AS v(line_id, line_no, sku, tag)
+),
+
+__expected__int_edge_basket_line_lookups AS (
+ SELECT
+ NULL AS line_id,
+ NULL AS line_no,
+ NULL AS sku
+)
diff --git a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_basket_running_peaks.sql b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_basket_running_peaks.sql
new file mode 100644
index 0000000000..47b2c4aafe
--- /dev/null
+++ b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_basket_running_peaks.sql
@@ -0,0 +1,22 @@
+TEST (name "int_edge_basket_running_peaks__computes_running_peaks_per_basket");
+
+WITH __ref__stg_edge_basket_lines AS (
+ SELECT
+ v.line_id::VARCHAR AS line_id,
+ v.basket_id::VARCHAR AS basket_id,
+ v.line_no::NUMBER(38, 0) AS line_no,
+ v.sku::VARCHAR AS sku,
+ v.tag::VARCHAR AS tag
+ FROM VALUES
+ ('BL-01', 'B-1', 1, 'DK-RED-01', 'red'),
+ ('BL-02', 'B-1', 2, 'DK-BLUE-02', 'blue'),
+ ('BL-03', 'B-1', 3, 'DK-RED-03', 'red'),
+ ('BL-04', 'B-2', 1, 'TL-GREEN-01', NULL) AS v(line_id, basket_id, line_no, sku, tag)
+),
+
+__expected__int_edge_basket_running_peaks AS (
+ SELECT
+ NULL AS basket_id,
+ NULL AS peak_count,
+ NULL AS last_peak
+)
diff --git a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_basket_sku_part_filters.sql b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_basket_sku_part_filters.sql
new file mode 100644
index 0000000000..14d9c95451
--- /dev/null
+++ b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_basket_sku_part_filters.sql
@@ -0,0 +1,21 @@
+TEST (name "int_edge_basket_sku_part_filters__counts_long_sku_parts");
+
+WITH __ref__stg_edge_basket_lines AS (
+ SELECT
+ v.line_id::VARCHAR AS line_id,
+ v.basket_id::VARCHAR AS basket_id,
+ v.line_no::NUMBER(38, 0) AS line_no,
+ v.sku::VARCHAR AS sku,
+ v.tag::VARCHAR AS tag
+ FROM VALUES
+ ('BL-01', 'B-1', 1, 'DK-RED-01', 'red'),
+ ('BL-02', 'B-1', 2, 'DK-BLUE-02', 'blue'),
+ ('BL-03', 'B-1', 3, 'DK-RED-03', 'red'),
+ ('BL-04', 'B-2', 1, 'TL-GREEN-01', NULL) AS v(line_id, basket_id, line_no, sku, tag)
+),
+
+__expected__int_edge_basket_sku_part_filters AS (
+ SELECT
+ NULL AS line_id,
+ NULL AS long_part_count
+)
diff --git a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_basket_tag_list_reads.sql b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_basket_tag_list_reads.sql
new file mode 100644
index 0000000000..07d85d9e34
--- /dev/null
+++ b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_basket_tag_list_reads.sql
@@ -0,0 +1,27 @@
+TEST (name "int_edge_basket_tag_list_reads__reads_tag_lists");
+
+WITH __ref__stg_edge_basket_lines AS (
+ SELECT
+ v.line_id::VARCHAR AS line_id,
+ v.basket_id::VARCHAR AS basket_id,
+ v.line_no::NUMBER(38, 0) AS line_no,
+ v.sku::VARCHAR AS sku,
+ v.tag::VARCHAR AS tag
+ FROM VALUES
+ ('BL-01', 'B-1', 1, 'DK-RED-01', 'red'),
+ ('BL-02', 'B-1', 2, 'DK-BLUE-02', 'blue'),
+ ('BL-03', 'B-1', 3, 'DK-RED-03', 'red'),
+ ('BL-04', 'B-2', 1, 'TL-GREEN-01', NULL) AS v(line_id, basket_id, line_no, sku, tag)
+),
+
+__expected__int_edge_basket_tag_list_reads AS (
+ SELECT
+ NULL AS basket_id,
+ NULL AS has_colour,
+ NULL AS distinct_tag_count,
+ NULL AS red_position,
+ NULL AS non_red_count,
+ NULL AS upper_tags,
+ NULL AS basket_time,
+ NULL AS pair_size
+)
diff --git a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_amount_spreads.sql b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_amount_spreads.sql
new file mode 100644
index 0000000000..9b38c76c2a
--- /dev/null
+++ b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_amount_spreads.sql
@@ -0,0 +1,24 @@
+TEST (name "int_edge_check_amount_spreads__computes_medians_and_rate_spreads");
+
+WITH __ref__stg_edge_amount_checks AS (
+ SELECT
+ v.check_id::VARCHAR AS check_id,
+ v.group_code::VARCHAR AS group_code,
+ v.narrow_key::NUMBER(18, 0) AS narrow_key,
+ v.wide_key::NUMBER(38, 0) AS wide_key,
+ v.key_text::VARCHAR AS key_text,
+ v.amount::NUMBER(18, 2) AS amount,
+ v.ratio::FLOAT AS ratio
+ FROM VALUES
+ ('AC-01', 'G-1', 7, 7, '101,7', 10.05, 0.1),
+ ('AC-02', 'G-1', 12, 12, '2026-03-04', -0.55, 0.2),
+ ('AC-03', 'G-2', 3, NULL, '7', 0.00, 0.3),
+ ('AC-04', 'G-2', NULL, 40, NULL, NULL, NULL) AS v(check_id, group_code, narrow_key, wide_key, key_text, amount, ratio)
+),
+
+__expected__int_edge_check_amount_spreads AS (
+ SELECT
+ NULL AS group_code,
+ NULL AS median_amount,
+ NULL AS rate_spread
+)
diff --git a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_complete_pairs.sql b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_complete_pairs.sql
new file mode 100644
index 0000000000..f67b71d22b
--- /dev/null
+++ b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_complete_pairs.sql
@@ -0,0 +1,23 @@
+TEST (name "int_edge_check_complete_pairs__counts_complete_pairs");
+
+WITH __ref__stg_edge_amount_checks AS (
+ SELECT
+ v.check_id::VARCHAR AS check_id,
+ v.group_code::VARCHAR AS group_code,
+ v.narrow_key::NUMBER(18, 0) AS narrow_key,
+ v.wide_key::NUMBER(38, 0) AS wide_key,
+ v.key_text::VARCHAR AS key_text,
+ v.amount::NUMBER(18, 2) AS amount,
+ v.ratio::FLOAT AS ratio
+ FROM VALUES
+ ('AC-01', 'G-1', 7, 7, '101,7', 10.05, 0.1),
+ ('AC-02', 'G-1', 12, 12, '2026-03-04', -0.55, 0.2),
+ ('AC-03', 'G-2', 3, NULL, '7', 0.00, 0.3),
+ ('AC-04', 'G-2', NULL, 40, NULL, NULL, NULL) AS v(check_id, group_code, narrow_key, wide_key, key_text, amount, ratio)
+),
+
+__expected__int_edge_check_complete_pairs AS (
+ SELECT
+ NULL AS group_code,
+ NULL AS complete_pair_count
+)
diff --git a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_group_pivots.sql b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_group_pivots.sql
new file mode 100644
index 0000000000..6cf575a56f
--- /dev/null
+++ b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_group_pivots.sql
@@ -0,0 +1,24 @@
+TEST (name "int_edge_check_group_pivots__pivots_amounts_by_group");
+
+WITH __ref__stg_edge_amount_checks AS (
+ SELECT
+ v.check_id::VARCHAR AS check_id,
+ v.group_code::VARCHAR AS group_code,
+ v.narrow_key::NUMBER(18, 0) AS narrow_key,
+ v.wide_key::NUMBER(38, 0) AS wide_key,
+ v.key_text::VARCHAR AS key_text,
+ v.amount::NUMBER(18, 2) AS amount,
+ v.ratio::FLOAT AS ratio
+ FROM VALUES
+ ('AC-01', 'G-1', 7, 7, '101,7', 10.05, 0.1),
+ ('AC-02', 'G-1', 12, 12, '2026-03-04', -0.55, 0.2),
+ ('AC-03', 'G-2', 3, NULL, '7', 0.00, 0.3),
+ ('AC-04', 'G-2', NULL, 40, NULL, NULL, NULL) AS v(check_id, group_code, narrow_key, wide_key, key_text, amount, ratio)
+),
+
+__expected__int_edge_check_group_pivots AS (
+ SELECT
+ NULL AS check_id,
+ NULL AS first_group_amount,
+ NULL AS second_group_amount
+)
diff --git a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_key_parts.sql b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_key_parts.sql
index eb4bc2c7c2..813102e6f2 100644
--- a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_key_parts.sql
+++ b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_key_parts.sql
@@ -19,5 +19,5 @@ WITH __ref__stg_edge_amount_checks AS (
__expected__int_edge_check_key_parts AS (
SELECT
NULL AS check_id,
- NULL AS key_parts
+ NULL AS key_number_count
)
diff --git a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_number_arrays.sql b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_number_arrays.sql
index 5a5aff5115..db48398665 100644
--- a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_number_arrays.sql
+++ b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_number_arrays.sql
@@ -19,5 +19,5 @@ WITH __ref__stg_edge_amount_checks AS (
__expected__int_edge_check_number_arrays AS (
SELECT
NULL AS check_id,
- NULL AS amounts
+ NULL AS amount_count
)
diff --git a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_text_arrays.sql b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_text_arrays.sql
index f1b5e1341d..507345a682 100644
--- a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_text_arrays.sql
+++ b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_text_arrays.sql
@@ -19,5 +19,5 @@ WITH __ref__stg_edge_amount_checks AS (
__expected__int_edge_check_text_arrays AS (
SELECT
NULL AS check_id,
- NULL AS key_parts
+ NULL AS key_part_count
)
diff --git a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_ledger_paid_quantities.sql b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_ledger_paid_quantities.sql
new file mode 100644
index 0000000000..8b3f96079c
--- /dev/null
+++ b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_ledger_paid_quantities.sql
@@ -0,0 +1,20 @@
+TEST (name "int_edge_ledger_paid_quantities__lists_paid_quantities_in_change_order");
+
+WITH __ref__stg_edge_ledger_entries AS (
+ SELECT
+ v.entry_id::VARCHAR AS entry_id,
+ v.order_ref::VARCHAR AS order_ref,
+ v.quantity_text::VARCHAR AS quantity_text,
+ v.status::VARCHAR AS status,
+ v.changed_at::TIMESTAMP_NTZ AS changed_at
+ FROM VALUES
+ ('LE-01', 'DS-O-1', '2', 'paid', '2026-03-01 10:00:00'),
+ ('LE-02', 'DS-O-1', '3.5', 'open', '2026-03-01 11:00:00'),
+ ('LE-03', 'DS-O-2', NULL, 'paid', '2026-03-02 09:00:00') AS v(entry_id, order_ref, quantity_text, status, changed_at)
+),
+
+__expected__int_edge_ledger_paid_quantities AS (
+ SELECT
+ NULL AS order_ref,
+ NULL AS paid_quantity_count
+)
diff --git a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_variant_element_counts.sql b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_variant_element_counts.sql
new file mode 100644
index 0000000000..7b5fcb5655
--- /dev/null
+++ b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_variant_element_counts.sql
@@ -0,0 +1,21 @@
+TEST (name "int_edge_variant_element_counts__counts_flattened_elements");
+
+WITH __ref__stg_edge_variant_values AS (
+ SELECT
+ v.value_id::VARCHAR AS value_id,
+ v.group_code::VARCHAR AS group_code,
+ v.sort_key::NUMBER(38, 0) AS sort_key,
+ PARSE_JSON(v.attribute_value) AS attribute_value,
+ v.value_text::VARCHAR AS value_text
+ FROM VALUES
+ ('VV-01', 'V-1', 1, '{"sku": "DK-1", "qty": 2}', 'DK-1'),
+ ('VV-02', 'V-1', 2, '1.5', '1.5'),
+ ('VV-03', 'V-2', 1, '"2026-03-01"', '2026-03-01'),
+ ('VV-04', 'V-2', 2, 'null', NULL) AS v(value_id, group_code, sort_key, attribute_value, value_text)
+),
+
+__expected__int_edge_variant_element_counts AS (
+ SELECT
+ NULL AS group_code,
+ NULL AS element_count
+)
diff --git a/benchmarks/duckshop/project/tests/unit/marts/edge_cases/test_rpt_edge_case_array_model_keys.sql b/benchmarks/duckshop/project/tests/unit/marts/edge_cases/test_rpt_edge_case_array_model_keys.sql
index 7670a5f1db..e0c2a4e26d 100644
--- a/benchmarks/duckshop/project/tests/unit/marts/edge_cases/test_rpt_edge_case_array_model_keys.sql
+++ b/benchmarks/duckshop/project/tests/unit/marts/edge_cases/test_rpt_edge_case_array_model_keys.sql
@@ -1,33 +1,12 @@
TEST (name "rpt_edge_case_array_model_keys__lists_one_key_per_array_model");
-WITH __ref__int_edge_check_number_arrays AS (
- SELECT
- v.check_id::VARCHAR AS check_id
- FROM VALUES
- ('check_number-1') AS v(check_id)
-),
-
-__ref__int_edge_check_text_arrays AS (
- SELECT
- v.check_id::VARCHAR AS check_id
- FROM VALUES
- ('check_text_a-1') AS v(check_id)
-),
-
-__ref__int_edge_callback_wall_time_lists AS (
+WITH __ref__int_edge_callback_wall_time_lists AS (
SELECT
v.merchant_zone::VARCHAR AS merchant_zone
FROM VALUES
('callback_wal-1') AS v(merchant_zone)
),
-__ref__int_edge_check_key_parts AS (
- SELECT
- v.check_id::VARCHAR AS check_id
- FROM VALUES
- ('check_key_pa-1') AS v(check_id)
-),
-
__expected__rpt_edge_case_array_model_keys AS (
SELECT
NULL AS model_key_id,
diff --git a/benchmarks/duckshop/project/tests/unit/marts/edge_cases/test_rpt_edge_case_model_keys.sql b/benchmarks/duckshop/project/tests/unit/marts/edge_cases/test_rpt_edge_case_model_keys.sql
index cbd9fbce1c..16f9693221 100644
--- a/benchmarks/duckshop/project/tests/unit/marts/edge_cases/test_rpt_edge_case_model_keys.sql
+++ b/benchmarks/duckshop/project/tests/unit/marts/edge_cases/test_rpt_edge_case_model_keys.sql
@@ -119,6 +119,20 @@ __ref__int_edge_callback_clock_times AS (
('callback_clo-1') AS v(callback_id)
),
+__ref__int_edge_check_number_arrays AS (
+ SELECT
+ v.check_id::VARCHAR AS check_id
+ FROM VALUES
+ ('check_number-1') AS v(check_id)
+),
+
+__ref__int_edge_check_text_arrays AS (
+ SELECT
+ v.check_id::VARCHAR AS check_id
+ FROM VALUES
+ ('check_text_a-1') AS v(check_id)
+),
+
__ref__int_edge_check_key_rewrites AS (
SELECT
v.check_id::VARCHAR AS check_id
@@ -308,6 +322,13 @@ __ref__int_edge_check_month_starts AS (
('check_month_-1') AS v(period_id)
),
+__ref__int_edge_check_key_parts AS (
+ SELECT
+ v.check_id::VARCHAR AS check_id
+ FROM VALUES
+ ('check_key_pa-1') AS v(check_id)
+),
+
__ref__int_edge_variant_expected_values AS (
SELECT
v.value_id::VARCHAR AS value_id
@@ -483,6 +504,139 @@ __ref__int_edge_check_unnamed_labels AS (
('check_unname-1') AS v(check_id)
),
+__ref__int_edge_basket_tag_list_reads AS (
+ SELECT
+ v.basket_id::VARCHAR AS basket_id
+ FROM VALUES
+ ('basket_tag_l-1') AS v(basket_id)
+),
+
+__ref__int_edge_basket_sku_part_filters AS (
+ SELECT
+ v.line_id::VARCHAR AS line_id
+ FROM VALUES
+ ('basket_sku_p-1') AS v(line_id)
+),
+
+__ref__int_edge_basket_distinct_tags AS (
+ SELECT
+ v.tag_text::VARCHAR AS tag_text
+ FROM VALUES
+ ('basket_disti-1') AS v(tag_text)
+),
+
+__ref__int_edge_check_amount_spreads AS (
+ SELECT
+ v.group_code::VARCHAR AS group_code
+ FROM VALUES
+ ('check_amount-1') AS v(group_code)
+),
+
+__ref__int_edge_check_group_pivots AS (
+ SELECT
+ v.check_id::VARCHAR AS check_id
+ FROM VALUES
+ ('check_group_-1') AS v(check_id)
+),
+
+__ref__int_edge_check_complete_pairs AS (
+ SELECT
+ v.group_code::VARCHAR AS group_code
+ FROM VALUES
+ ('check_comple-1') AS v(group_code)
+),
+
+__ref__int_edge_ledger_paid_quantities AS (
+ SELECT
+ v.order_ref::VARCHAR AS order_ref
+ FROM VALUES
+ ('ledger_paid_-1') AS v(order_ref)
+),
+
+__ref__int_edge_variant_element_counts AS (
+ SELECT
+ v.group_code::VARCHAR AS group_code
+ FROM VALUES
+ ('variant_elem-1') AS v(group_code)
+),
+
+__ref__int_edge_basket_line_lookups AS (
+ SELECT
+ v.line_id::VARCHAR AS line_id
+ FROM VALUES
+ ('basket_line_-1') AS v(line_id)
+),
+
+__ref__int_edge_basket_running_peaks AS (
+ SELECT
+ v.basket_id::VARCHAR AS basket_id
+ FROM VALUES
+ ('basket_runni-1') AS v(basket_id)
+),
+
+__ref__stg_edge_supplier_notes AS (
+ SELECT
+ v.note_id::VARCHAR AS note_id
+ FROM VALUES
+ ('supplier_not-1') AS v(note_id)
+),
+
+__ref__int_edge_clock_text_reads AS (
+ SELECT
+ v.text_id::VARCHAR AS text_id
+ FROM VALUES
+ ('clock_text_r-1') AS v(text_id)
+),
+
+__ref__int_edge_amount_bit_reads AS (
+ SELECT
+ v.check_id::VARCHAR AS check_id
+ FROM VALUES
+ ('amount_bit_r-1') AS v(check_id)
+),
+
+__ref__int_edge_note_patterns AS (
+ SELECT
+ v.note_id::VARCHAR AS note_id
+ FROM VALUES
+ ('note_pattern-1') AS v(note_id)
+),
+
+__ref__int_edge_ticket_tokens AS (
+ SELECT
+ v.line_id::VARCHAR AS line_id
+ FROM VALUES
+ ('ticket_token-1') AS v(line_id)
+),
+
+__ref__int_edge_basket_xml_reads AS (
+ SELECT
+ v.line_id::VARCHAR AS line_id
+ FROM VALUES
+ ('basket_xml_r-1') AS v(line_id)
+),
+
+__ref__int_edge_join_keys AS (
+ SELECT
+ v.row_key::VARCHAR AS row_key
+ FROM VALUES
+ ('join_keys-1') AS v(row_key)
+),
+
+__ref__int_edge_json_numbers AS (
+ SELECT
+ v.check_id::VARCHAR AS check_id
+ FROM VALUES
+ ('json_numbers-1') AS v(check_id)
+),
+
+__ref__int_edge_quantity_checks AS (
+ SELECT
+ v.entry_id::VARCHAR AS entry_id
+ FROM VALUES
+ ('quantity_che-1') AS v(entry_id)
+),
+
__expected__rpt_edge_case_model_keys AS (
SELECT
NULL AS model_key_id,
diff --git a/benchmarks/duckshop/project/tests/unit/staging/edge_cases/test_stg_edge_supplier_notes.sql b/benchmarks/duckshop/project/tests/unit/staging/edge_cases/test_stg_edge_supplier_notes.sql
new file mode 100644
index 0000000000..6f154befc0
--- /dev/null
+++ b/benchmarks/duckshop/project/tests/unit/staging/edge_cases/test_stg_edge_supplier_notes.sql
@@ -0,0 +1,18 @@
+TEST (name "stg_edge_supplier_notes__upper_cases_supplier_notes");
+
+WITH __source__edge__supplier_notes AS (
+ SELECT
+ v.note_id::VARCHAR AS note_id,
+ v.supplier_code::VARCHAR AS supplier_code,
+ v.note_text::VARCHAR AS note_text
+ FROM VALUES
+ ('SN-1', 'SUP-PINTAIL', 'Restock teal decoys'),
+ ('SN-2', NULL, NULL) AS v(note_id, supplier_code, note_text)
+),
+
+__expected__stg_edge_supplier_notes AS (
+ SELECT
+ NULL AS note_id,
+ NULL AS supplier_code,
+ NULL AS note_upper
+)
diff --git a/benchmarks/duckshop/scripts/relations.py b/benchmarks/duckshop/scripts/relations.py
index 0892daf361..062f49600e 100644
--- a/benchmarks/duckshop/scripts/relations.py
+++ b/benchmarks/duckshop/scripts/relations.py
@@ -11,7 +11,7 @@
`check` lists tables, views and functions that already exist under a DuckShop name, and any
SQLBuild state tables (`_sqlbuild_*`) already in the schema. `drop` is one Snowflake Scripting
block that drops every model, snapshot, seed and source table and every function the project
-creates. SQLBuild's own state tables (`_sqlbuild_*`) are left alone, since other projects in the
+creates, including functions a SQL hook creates, which the compile output does not list. SQLBuild's own state tables (`_sqlbuild_*`) are left alone, since other projects in the
same schema may share them.
"""
@@ -48,6 +48,22 @@ def managed_sources() -> list[str]:
return names
+HOOK_FUNCTION = re.compile(
+ r"CREATE\s+OR\s+REPLACE\s+FUNCTION\s+\S*?\.(\w+)\s*\(([^)]*)\)", flags=re.IGNORECASE
+)
+
+
+def hook_functions() -> list[str]:
+ """`name(type, ...)` of each function a SQL hook creates; SQLBuild does not declare them."""
+
+ found: list[str] = []
+ for path in sorted(PROJECT_DIR.glob("models/**/_hooks/sql/*.sql")):
+ for name, arguments in HOOK_FUNCTION.findall(path.read_text()):
+ types = [part.strip().split(None, 1)[1] for part in arguments.split(",") if part.strip()]
+ found.append(f"{name}({', '.join(types)})")
+ return found
+
+
def objects(compile_json: dict[str, object]) -> tuple[str, list[tuple[str, str]]]:
"""The schema-qualified prefix and each (object kind, name or signature) the project creates."""
@@ -69,6 +85,8 @@ def objects(compile_json: dict[str, object]) -> tuple[str, list[tuple[str, str]]
for function in functions: # type: ignore[union-attr]
arguments = ", ".join(_function_arguments(function["relative_path"]))
found.append(("FUNCTION", f"{function['name']}({arguments})"))
+ for signature in hook_functions():
+ found.append(("FUNCTION", signature))
return f"{database}.{schema}", found
diff --git a/benchmarks/duckshop/tests/test_synthetic_data.py b/benchmarks/duckshop/tests/test_synthetic_data.py
index 1dd7bf07b7..b376ec2544 100644
--- a/benchmarks/duckshop/tests/test_synthetic_data.py
+++ b/benchmarks/duckshop/tests/test_synthetic_data.py
@@ -482,6 +482,7 @@ def test_given_any_data_scale_when_building_edge_rows_then_they_are_fixed(scale:
"edge__amount_checks": _edge_cases.amount_checks(),
"edge__variant_values": _edge_cases.variant_values(),
"edge__category_links": _edge_cases.category_links(),
+ "edge__supplier_notes": _edge_cases.supplier_notes(),
}
assert {name: _digest(rows) for name, rows in rebuilt.items()} == {
From 495cf08928a6dfa168dc84461c0a8c64e197714c Mon Sep 17 00:00:00 2001
From: Kevin Longe <273747162+kvlonge@users.noreply.github.com>
Date: Mon, 2 Nov 2026 08:31:32 +0000
Subject: [PATCH 3/5] test(duckshop): capture edge-case expectations
---
.../int_edge_callback_london_times.sql | 8 +-
.../int_edge_check_generated_rows.sql | 4 +-
.../int_edge_ratio_object_flags.sql | 7 +-
.../int_edge_variant_xml_checks.sql | 23 -
.../test_int_edge_amount_percent_texts.sql | 16 +-
.../test_int_edge_basket_distinct_tags.sql | 5 +-
.../test_int_edge_basket_line_lookups.sql | 11 +-
.../test_int_edge_basket_running_peaks.sql | 11 +-
.../test_int_edge_basket_sku_part_filters.sql | 16 +-
.../test_int_edge_basket_tag_list_reads.sql | 26 +-
.../test_int_edge_callback_clock_times.sql | 16 +-
.../test_int_edge_callback_date_lists.sql | 12 +-
.../test_int_edge_callback_day_documents.sql | 12 +-
.../test_int_edge_callback_day_starts.sql | 12 +-
.../test_int_edge_callback_epoch_parts.sql | 16 +-
.../test_int_edge_callback_epoch_reads.sql | 21 +-
.../test_int_edge_callback_last_day.sql | 12 +-
.../test_int_edge_callback_latest_dates.sql | 12 +-
.../test_int_edge_callback_london_times.sql | 14 +-
.../test_int_edge_callback_recent_offsets.sql | 8 +-
.../test_int_edge_callback_row_numbers.sql | 16 +-
.../test_int_edge_callback_safe_dates.sql | 16 +-
...test_int_edge_callback_start_fallbacks.sql | 12 +-
.../test_int_edge_callback_text_dates.sql | 16 +-
...test_int_edge_callback_wall_time_lists.sql | 12 +-
.../test_int_edge_callback_zone_words.sql | 16 +-
.../test_int_edge_callback_zoned_dates.sql | 8 +-
.../test_int_edge_check_amount_spreads.sql | 11 +-
.../test_int_edge_check_any_amounts.sql | 8 +-
.../test_int_edge_check_bracket_strips.sql | 16 +-
.../test_int_edge_check_complete_pairs.sql | 8 +-
.../test_int_edge_check_decoded_keys.sql | 16 +-
.../test_int_edge_check_distinct_tuples.sql | 8 +-
.../test_int_edge_check_formatted_dates.sql | 16 +-
.../test_int_edge_check_generated_rows.sql | 8 +-
.../test_int_edge_check_group_flags.sql | 16 +-
.../test_int_edge_check_group_key_lists.sql | 16 +-
.../test_int_edge_check_group_pivots.sql | 21 +-
.../test_int_edge_check_key_list_edits.sql | 26 +-
.../test_int_edge_check_key_parts.sql | 16 +-
.../test_int_edge_check_key_rewrites.sql | 16 +-
.../test_int_edge_check_label_lookups.sql | 16 +-
.../test_int_edge_check_last_known_keys.sql | 16 +-
.../test_int_edge_check_local_times.sql | 16 +-
.../test_int_edge_check_minute_times.sql | 16 +-
.../test_int_edge_check_month_starts.sql | 8 +-
.../test_int_edge_check_note_unions.sql | 32 +-
.../test_int_edge_check_number_arrays.sql | 16 +-
.../test_int_edge_check_number_labels.sql | 16 +-
.../test_int_edge_check_pair_filters.sql | 8 +-
.../test_int_edge_check_pattern_matches.sql | 17 +-
.../test_int_edge_check_reduced_keys.sql | 16 +-
.../test_int_edge_check_sparse_arrays.sql | 16 +-
.../test_int_edge_check_text_arrays.sql | 16 +-
.../test_int_edge_check_unnamed_labels.sql | 16 +-
.../test_int_edge_check_variant_branches.sql | 26 +-
.../test_int_edge_check_wide_sums.sql | 32 +-
.../test_int_edge_check_xml_checks.sql | 21 +-
.../test_int_edge_check_zoned_literals.sql | 16 +-
.../test_int_edge_key_number_reads.sql | 16 +-
.../test_int_edge_key_rank_offsets.sql | 21 +-
.../test_int_edge_ledger_paid_quantities.sql | 8 +-
.../test_int_edge_ledger_quantity_steps.sql | 8 +-
.../test_int_edge_ratio_array_bounds.sql | 8 +-
.../test_int_edge_ratio_array_casts.sql | 16 +-
.../test_int_edge_ratio_array_positions.sql | 8 +-
.../test_int_edge_ratio_averages.sql | 8 +-
.../test_int_edge_ratio_fixed_scales.sql | 16 +-
.../test_int_edge_ratio_group_objects.sql | 11 +-
.../edge_cases/test_int_edge_ratio_hashes.sql | 16 +-
.../test_int_edge_ratio_identity_objects.sql | 12 +-
.../test_int_edge_ratio_ignore_case_reads.sql | 16 +-
...test_int_edge_ratio_object_differences.sql | 12 +-
.../test_int_edge_ratio_object_flags.sql | 26 +-
.../test_int_edge_ratio_object_inserts.sql | 16 +-
.../test_int_edge_ratio_object_reads.sql | 16 +-
.../test_int_edge_ratio_path_checks.sql | 4 +-
.../test_int_edge_ratio_percent_texts.sql | 16 +-
.../test_int_edge_ratio_running_totals.sql | 16 +-
.../test_int_edge_ratio_safe_casts.sql | 21 +-
.../test_int_edge_ratio_text_forms.sql | 26 +-
.../test_int_edge_ratio_text_replaces.sql | 21 +-
.../test_int_edge_ratio_variant_unions.sql | 32 +-
.../test_int_edge_variant_decimal_reads.sql | 4 +-
.../test_int_edge_variant_element_counts.sql | 4 +-
.../test_int_edge_variant_expected_values.sql | 8 +-
.../test_int_edge_variant_xml_checks.sql | 22 -
.../test_int_edge_variant_xml_elements.sql | 8 +-
.../test_rpt_edge_case_array_model_keys.sql | 6 +-
.../test_rpt_edge_case_model_keys.sql | 456 +++++++++++++++++-
.../test_stg_edge_supplier_notes.sql | 11 +-
91 files changed, 1500 insertions(+), 269 deletions(-)
delete mode 100644 benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_variant_xml_checks.sql
delete mode 100644 benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_variant_xml_checks.sql
diff --git a/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_callback_london_times.sql b/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_callback_london_times.sql
index bfd19e8fb7..84bf96002f 100644
--- a/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_callback_london_times.sql
+++ b/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_callback_london_times.sql
@@ -1,18 +1,20 @@
MODEL (
description """
- One row per gateway callback with its zoned time converted from UTC to London wall time
+ One row per gateway callback with whether the current time, converted from UTC to London
+ wall time, is known: a fact that holds on any day
""",
tags [edge_case],
columns (
callback_id (type VARCHAR, nullable false, audits [not_null, unique]),
- london_time (type TIMESTAMP_NTZ),
+ london_now_is_known (type BOOLEAN),
),
);
WITH final AS (
SELECT
g.callback_id,
- CONVERT_TIMEZONE('UTC', 'Europe/London', g.event_at)::TIMESTAMP_NTZ AS london_time
+ (CONVERT_TIMEZONE('UTC', 'Europe/London', CURRENT_TIMESTAMP())::TIMESTAMP_NTZ IS NOT NULL)::BOOLEAN
+ AS london_now_is_known
FROM __ref("stg_edge_gateway_callbacks") AS g
)
diff --git a/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_check_generated_rows.sql b/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_check_generated_rows.sql
index 4190cb2e51..6a12b1c5cc 100644
--- a/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_check_generated_rows.sql
+++ b/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_check_generated_rows.sql
@@ -1,6 +1,6 @@
MODEL (
description """
- One row counting the rows generated, as many as there are reconciliation checks, with
+ One row counting the rows a generator makes from a ROWCOUNT written as an expression, with
whether every SEQ4 number is non-negative and every draw from UNIFORM over a range of one
value is one
""",
@@ -17,7 +17,7 @@ WITH generated AS (
SELECT
SEQ4() AS row_seq,
UNIFORM(1, 1, RANDOM()) AS draw
- FROM TABLE(GENERATOR(ROWCOUNT => (SELECT COUNT(*) FROM __ref("stg_edge_amount_checks"))))
+ FROM TABLE(GENERATOR(ROWCOUNT => (2 + 2)))
),
final AS (
diff --git a/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_ratio_object_flags.sql b/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_ratio_object_flags.sql
index fd231e2cbd..fc8fb77609 100644
--- a/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_ratio_object_flags.sql
+++ b/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_ratio_object_flags.sql
@@ -1,6 +1,7 @@
MODEL (
description """
- One row per reconciliation check with its FLOAT ratio read back from an object as a BOOLEAN
+ One row per reconciliation check with a positive-ratio flag read back as a BOOLEAN from an
+ object that also holds the FLOAT ratio
""",
tags [edge_case],
columns (
@@ -10,14 +11,14 @@ MODEL (
);
WITH ratio_objects AS (
- SELECT a.check_id, OBJECT_CONSTRUCT('r', a.ratio) AS ratio_object
+ SELECT a.check_id, OBJECT_CONSTRUCT('r', a.ratio, 'is_positive', a.ratio > 0) AS ratio_object
FROM __ref("stg_edge_amount_checks") AS a
),
final AS (
SELECT
r.check_id,
- r.ratio_object:r::BOOLEAN AS ratio_flag
+ r.ratio_object:is_positive::BOOLEAN AS ratio_flag
FROM ratio_objects AS r
)
diff --git a/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_variant_xml_checks.sql b/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_variant_xml_checks.sql
deleted file mode 100644
index bb919e3afd..0000000000
--- a/benchmarks/duckshop/project/models/intermediate/edge_cases/int_edge_variant_xml_checks.sql
+++ /dev/null
@@ -1,23 +0,0 @@
-MODEL (
- description """
- One row per attribute value with its text stripped of separators by a pattern from the group
- code, and CHECK_XML of the text
- """,
- tags [edge_case],
- columns (
- value_id (type VARCHAR, nullable false, audits [not_null, unique]),
- stripped_text (type VARCHAR),
- xml_error (type VARCHAR),
- ),
-);
-
-WITH final AS (
- SELECT
- v.value_id,
- REGEXP_REPLACE(v.value_text, v.group_code, '') AS stripped_text,
- CHECK_XML(v.value_text)::VARCHAR AS xml_error
- FROM __ref("stg_edge_variant_values") AS v
-)
-
-SELECT *
-FROM final
diff --git a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_amount_percent_texts.sql b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_amount_percent_texts.sql
index 16f46b5731..59c67f5a4d 100644
--- a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_amount_percent_texts.sql
+++ b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_amount_percent_texts.sql
@@ -18,6 +18,18 @@ WITH __ref__stg_edge_amount_checks AS (
__expected__int_edge_amount_percent_texts AS (
SELECT
- NULL AS check_id,
- NULL AS amount_percent
+ 'AC-01' AS check_id,
+ '335.0%' AS amount_percent
+ UNION ALL
+ SELECT
+ 'AC-02' AS check_id,
+ '-18.3%' AS amount_percent
+ UNION ALL
+ SELECT
+ 'AC-03' AS check_id,
+ '0.0%' AS amount_percent
+ UNION ALL
+ SELECT
+ 'AC-04' AS check_id,
+ CAST(NULL AS VARCHAR) AS amount_percent
)
diff --git a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_basket_distinct_tags.sql b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_basket_distinct_tags.sql
index 33f872b826..e1e5b054dd 100644
--- a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_basket_distinct_tags.sql
+++ b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_basket_distinct_tags.sql
@@ -16,5 +16,8 @@ WITH __ref__stg_edge_basket_lines AS (
__expected__int_edge_basket_distinct_tags AS (
SELECT
- NULL AS tag_text
+ 'blue' AS tag_text
+ UNION ALL
+ SELECT
+ 'red' AS tag_text
)
diff --git a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_basket_line_lookups.sql b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_basket_line_lookups.sql
index f562922d95..98b2798105 100644
--- a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_basket_line_lookups.sql
+++ b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_basket_line_lookups.sql
@@ -13,7 +13,12 @@ WITH __table_fn__edge_basket_lines_for AS (
__expected__int_edge_basket_line_lookups AS (
SELECT
- NULL AS line_id,
- NULL AS line_no,
- NULL AS sku
+ 'BL-01' AS line_id,
+ 1 AS line_no,
+ 'DK-RED-01' AS sku
+ UNION ALL
+ SELECT
+ 'BL-02' AS line_id,
+ 2 AS line_no,
+ 'DK-BLUE-02' AS sku
)
diff --git a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_basket_running_peaks.sql b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_basket_running_peaks.sql
index 47b2c4aafe..da5af9bf63 100644
--- a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_basket_running_peaks.sql
+++ b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_basket_running_peaks.sql
@@ -16,7 +16,12 @@ WITH __ref__stg_edge_basket_lines AS (
__expected__int_edge_basket_running_peaks AS (
SELECT
- NULL AS basket_id,
- NULL AS peak_count,
- NULL AS last_peak
+ 'B-1' AS basket_id,
+ 3 AS peak_count,
+ 3 AS last_peak
+ UNION ALL
+ SELECT
+ 'B-2' AS basket_id,
+ 1 AS peak_count,
+ 1 AS last_peak
)
diff --git a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_basket_sku_part_filters.sql b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_basket_sku_part_filters.sql
index 14d9c95451..93e95389b1 100644
--- a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_basket_sku_part_filters.sql
+++ b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_basket_sku_part_filters.sql
@@ -16,6 +16,18 @@ WITH __ref__stg_edge_basket_lines AS (
__expected__int_edge_basket_sku_part_filters AS (
SELECT
- NULL AS line_id,
- NULL AS long_part_count
+ 'BL-01' AS line_id,
+ 3 AS long_part_count
+ UNION ALL
+ SELECT
+ 'BL-02' AS line_id,
+ 3 AS long_part_count
+ UNION ALL
+ SELECT
+ 'BL-03' AS line_id,
+ 3 AS long_part_count
+ UNION ALL
+ SELECT
+ 'BL-04' AS line_id,
+ 3 AS long_part_count
)
diff --git a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_basket_tag_list_reads.sql b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_basket_tag_list_reads.sql
index 07d85d9e34..55b9461182 100644
--- a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_basket_tag_list_reads.sql
+++ b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_basket_tag_list_reads.sql
@@ -16,12 +16,22 @@ WITH __ref__stg_edge_basket_lines AS (
__expected__int_edge_basket_tag_list_reads AS (
SELECT
- NULL AS basket_id,
- NULL AS has_colour,
- NULL AS distinct_tag_count,
- NULL AS red_position,
- NULL AS non_red_count,
- NULL AS upper_tags,
- NULL AS basket_time,
- NULL AS pair_size
+ 'B-1' AS basket_id,
+ TRUE AS has_colour,
+ 2 AS distinct_tag_count,
+ 0 AS red_position,
+ 1 AS non_red_count,
+ 'RED,BLUE,RED' AS upper_tags,
+ CAST(NULL AS TIME(9)) AS basket_time,
+ 2 AS pair_size
+ UNION ALL
+ SELECT
+ 'B-2' AS basket_id,
+ FALSE AS has_colour,
+ 0 AS distinct_tag_count,
+ CAST(NULL AS NUMBER(38,0)) AS red_position,
+ 0 AS non_red_count,
+ '' AS upper_tags,
+ CAST(NULL AS TIME(9)) AS basket_time,
+ 2 AS pair_size
)
diff --git a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_callback_clock_times.sql b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_callback_clock_times.sql
index 5b2f4e8614..ba524b2738 100644
--- a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_callback_clock_times.sql
+++ b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_callback_clock_times.sql
@@ -17,7 +17,17 @@ WITH __ref__stg_edge_gateway_callbacks AS (
__expected__int_edge_callback_clock_times AS (
SELECT
- NULL AS callback_id,
- NULL AS text_date,
- NULL AS text_time
+ 'GC-01' AS callback_id,
+ '2026-03-28'::DATE AS text_date,
+ '23:30:00'::TIME(9) AS text_time
+ UNION ALL
+ SELECT
+ 'GC-02' AS callback_id,
+ '2026-03-08'::DATE AS text_date,
+ '01:15:00'::TIME(9) AS text_time
+ UNION ALL
+ SELECT
+ 'GC-03' AS callback_id,
+ '2026-02-28'::DATE AS text_date,
+ '00:00:00'::TIME(9) AS text_time
)
diff --git a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_callback_date_lists.sql b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_callback_date_lists.sql
index 3ad1d68746..e551378e1a 100644
--- a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_callback_date_lists.sql
+++ b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_callback_date_lists.sql
@@ -17,6 +17,14 @@ WITH __ref__stg_edge_gateway_callbacks AS (
__expected__int_edge_callback_date_lists AS (
SELECT
- NULL AS merchant_zone,
- NULL AS date_count
+ 'America/New_York' AS merchant_zone,
+ 1 AS date_count
+ UNION ALL
+ SELECT
+ 'Asia/Kolkata' AS merchant_zone,
+ 1 AS date_count
+ UNION ALL
+ SELECT
+ 'Europe/London' AS merchant_zone,
+ 1 AS date_count
)
diff --git a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_callback_day_documents.sql b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_callback_day_documents.sql
index 1027209864..c6cee545bc 100644
--- a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_callback_day_documents.sql
+++ b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_callback_day_documents.sql
@@ -17,6 +17,14 @@ WITH __ref__stg_edge_gateway_callbacks AS (
__expected__int_edge_callback_day_documents AS (
SELECT
- NULL AS merchant_zone,
- NULL AS document_count
+ 'America/New_York' AS merchant_zone,
+ 1 AS document_count
+ UNION ALL
+ SELECT
+ 'Asia/Kolkata' AS merchant_zone,
+ 1 AS document_count
+ UNION ALL
+ SELECT
+ 'Europe/London' AS merchant_zone,
+ 1 AS document_count
)
diff --git a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_callback_day_starts.sql b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_callback_day_starts.sql
index 948cccd477..737ab63b20 100644
--- a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_callback_day_starts.sql
+++ b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_callback_day_starts.sql
@@ -17,6 +17,14 @@ WITH __ref__stg_edge_gateway_callbacks AS (
__expected__int_edge_callback_day_starts AS (
SELECT
- NULL AS callback_id,
- NULL AS day_start
+ 'GC-01' AS callback_id,
+ '2026-03-28 00:00:00 Z'::TIMESTAMP_TZ(9) AS day_start
+ UNION ALL
+ SELECT
+ 'GC-02' AS callback_id,
+ '2026-03-08 00:00:00 -05:00'::TIMESTAMP_TZ(9) AS day_start
+ UNION ALL
+ SELECT
+ 'GC-03' AS callback_id,
+ '2026-02-28 00:00:00 +05:30'::TIMESTAMP_TZ(9) AS day_start
)
diff --git a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_callback_epoch_parts.sql b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_callback_epoch_parts.sql
index 5f1a8579a4..42ada2677c 100644
--- a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_callback_epoch_parts.sql
+++ b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_callback_epoch_parts.sql
@@ -17,7 +17,17 @@ WITH __ref__stg_edge_gateway_callbacks AS (
__expected__int_edge_callback_epoch_parts AS (
SELECT
- NULL AS callback_id,
- NULL AS wall_time_ns,
- NULL AS epoch_microsecond
+ 'GC-01' AS callback_id,
+ '2026-03-28 23:30:00'::TIMESTAMP_NTZ(9) AS wall_time_ns,
+ 1774740600000000 AS epoch_microsecond
+ UNION ALL
+ SELECT
+ 'GC-02' AS callback_id,
+ '2026-03-08 01:15:00'::TIMESTAMP_NTZ(9) AS wall_time_ns,
+ 1772932500000000 AS epoch_microsecond
+ UNION ALL
+ SELECT
+ 'GC-03' AS callback_id,
+ '2026-02-28 18:45:30'::TIMESTAMP_NTZ(9) AS wall_time_ns,
+ 1772304330000000 AS epoch_microsecond
)
diff --git a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_callback_epoch_reads.sql b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_callback_epoch_reads.sql
index 0550075cff..28e612340c 100644
--- a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_callback_epoch_reads.sql
+++ b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_callback_epoch_reads.sql
@@ -33,7 +33,22 @@ __ref__stg_edge_gateway_callbacks AS (
__expected__int_edge_callback_epoch_reads AS (
SELECT
- NULL AS check_id,
- NULL AS key_as_time,
- NULL AS has_early_callback
+ 'AC-01' AS check_id,
+ '1970-01-01 00:00:00.007'::TIMESTAMP_NTZ(9) AS key_as_time,
+ TRUE AS has_early_callback
+ UNION ALL
+ SELECT
+ 'AC-02' AS check_id,
+ '1970-01-01 00:00:00.012'::TIMESTAMP_NTZ(9) AS key_as_time,
+ TRUE AS has_early_callback
+ UNION ALL
+ SELECT
+ 'AC-03' AS check_id,
+ CAST(NULL AS TIMESTAMP_NTZ(9)) AS key_as_time,
+ TRUE AS has_early_callback
+ UNION ALL
+ SELECT
+ 'AC-04' AS check_id,
+ '1970-01-01 00:00:00.04'::TIMESTAMP_NTZ(9) AS key_as_time,
+ TRUE AS has_early_callback
)
diff --git a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_callback_last_day.sql b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_callback_last_day.sql
index 9f64b1691f..93bf9f0fe7 100644
--- a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_callback_last_day.sql
+++ b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_callback_last_day.sql
@@ -17,6 +17,14 @@ WITH __ref__stg_edge_gateway_callbacks AS (
__expected__int_edge_callback_last_day AS (
SELECT
- NULL AS callback_id,
- NULL AS is_recent
+ 'GC-01' AS callback_id,
+ FALSE AS is_recent
+ UNION ALL
+ SELECT
+ 'GC-02' AS callback_id,
+ FALSE AS is_recent
+ UNION ALL
+ SELECT
+ 'GC-03' AS callback_id,
+ FALSE AS is_recent
)
diff --git a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_callback_latest_dates.sql b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_callback_latest_dates.sql
index e6d61f4c83..5340ade7d3 100644
--- a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_callback_latest_dates.sql
+++ b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_callback_latest_dates.sql
@@ -17,6 +17,14 @@ WITH __ref__stg_edge_gateway_callbacks AS (
__expected__int_edge_callback_latest_dates AS (
SELECT
- NULL AS merchant_zone,
- NULL AS latest_date_text
+ 'America/New_York' AS merchant_zone,
+ '2026-03-08' AS latest_date_text
+ UNION ALL
+ SELECT
+ 'Asia/Kolkata' AS merchant_zone,
+ '2026-02-28' AS latest_date_text
+ UNION ALL
+ SELECT
+ 'Europe/London' AS merchant_zone,
+ '2026-03-28' AS latest_date_text
)
diff --git a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_callback_london_times.sql b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_callback_london_times.sql
index 806585107d..47be08bf4e 100644
--- a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_callback_london_times.sql
+++ b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_callback_london_times.sql
@@ -1,4 +1,4 @@
-TEST (name "int_edge_callback_london_times__converts_zoned_times_to_london");
+TEST (name "int_edge_callback_london_times__converts_the_current_time_to_london");
WITH __ref__stg_edge_gateway_callbacks AS (
SELECT
@@ -17,6 +17,14 @@ WITH __ref__stg_edge_gateway_callbacks AS (
__expected__int_edge_callback_london_times AS (
SELECT
- NULL AS callback_id,
- NULL AS london_time
+ 'GC-01' AS callback_id,
+ TRUE AS london_now_is_known
+ UNION ALL
+ SELECT
+ 'GC-02' AS callback_id,
+ TRUE AS london_now_is_known
+ UNION ALL
+ SELECT
+ 'GC-03' AS callback_id,
+ TRUE AS london_now_is_known
)
diff --git a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_callback_recent_offsets.sql b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_callback_recent_offsets.sql
index 45be08e948..88412acf0b 100644
--- a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_callback_recent_offsets.sql
+++ b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_callback_recent_offsets.sql
@@ -17,6 +17,10 @@ WITH __ref__stg_edge_gateway_callbacks AS (
__expected__int_edge_callback_recent_offsets AS (
SELECT
- NULL AS callback_id,
- NULL AS event_at
+ 'GC-01' AS callback_id,
+ '2026-03-28 23:30:00 Z'::TIMESTAMP_TZ(9) AS event_at
+ UNION ALL
+ SELECT
+ 'GC-02' AS callback_id,
+ '2026-03-08 01:15:00 -05:00'::TIMESTAMP_TZ(9) AS event_at
)
diff --git a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_callback_row_numbers.sql b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_callback_row_numbers.sql
index bed23244db..67d5246437 100644
--- a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_callback_row_numbers.sql
+++ b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_callback_row_numbers.sql
@@ -17,7 +17,17 @@ WITH __ref__stg_edge_gateway_callbacks AS (
__expected__int_edge_callback_row_numbers AS (
SELECT
- NULL AS callback_id,
- NULL AS wall_time_text,
- NULL AS has_row_number
+ 'GC-01' AS callback_id,
+ '2026-03-28 23:30:00.000' AS wall_time_text,
+ TRUE AS has_row_number
+ UNION ALL
+ SELECT
+ 'GC-02' AS callback_id,
+ '2026-03-08 01:15:00.000' AS wall_time_text,
+ TRUE AS has_row_number
+ UNION ALL
+ SELECT
+ 'GC-03' AS callback_id,
+ '2026-02-28 18:45:30.000' AS wall_time_text,
+ TRUE AS has_row_number
)
diff --git a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_callback_safe_dates.sql b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_callback_safe_dates.sql
index a19944258d..3ee29e235e 100644
--- a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_callback_safe_dates.sql
+++ b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_callback_safe_dates.sql
@@ -17,7 +17,17 @@ WITH __ref__stg_edge_gateway_callbacks AS (
__expected__int_edge_callback_safe_dates AS (
SELECT
- NULL AS callback_id,
- NULL AS callback_json,
- NULL AS business_date_again
+ 'GC-01' AS callback_id,
+ '{"year":2026,"zone":"Europe/London"}' AS callback_json,
+ '2026-03-28'::DATE AS business_date_again
+ UNION ALL
+ SELECT
+ 'GC-02' AS callback_id,
+ '{"year":2026,"zone":"America/New_York"}' AS callback_json,
+ '2026-03-08'::DATE AS business_date_again
+ UNION ALL
+ SELECT
+ 'GC-03' AS callback_id,
+ '{"year":2026,"zone":"Asia/Kolkata"}' AS callback_json,
+ '2026-02-28'::DATE AS business_date_again
)
diff --git a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_callback_start_fallbacks.sql b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_callback_start_fallbacks.sql
index c4cba76128..1d4b070013 100644
--- a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_callback_start_fallbacks.sql
+++ b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_callback_start_fallbacks.sql
@@ -17,6 +17,14 @@ WITH __ref__stg_edge_gateway_callbacks AS (
__expected__int_edge_callback_start_fallbacks AS (
SELECT
- NULL AS callback_id,
- NULL AS start_at
+ 'GC-01' AS callback_id,
+ '2026-03-28 23:30:00.123456789'::TIMESTAMP_NTZ(9) AS start_at
+ UNION ALL
+ SELECT
+ 'GC-02' AS callback_id,
+ '2026-03-08 01:15:00.5'::TIMESTAMP_NTZ(9) AS start_at
+ UNION ALL
+ SELECT
+ 'GC-03' AS callback_id,
+ '2026-02-28 00:00:00'::TIMESTAMP_NTZ(9) AS start_at
)
diff --git a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_callback_text_dates.sql b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_callback_text_dates.sql
index 02293fdfeb..b42684eae8 100644
--- a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_callback_text_dates.sql
+++ b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_callback_text_dates.sql
@@ -17,7 +17,17 @@ WITH __ref__stg_edge_gateway_callbacks AS (
__expected__int_edge_callback_text_dates AS (
SELECT
- NULL AS callback_id,
- NULL AS text_date,
- NULL AS event_json
+ 'GC-01' AS callback_id,
+ '2026-03-28'::DATE AS text_date,
+ '{"at":"2026-03-28 23:30:00.000 Z"}' AS event_json
+ UNION ALL
+ SELECT
+ 'GC-02' AS callback_id,
+ '2026-03-08'::DATE AS text_date,
+ '{"at":"2026-03-08 01:15:00.000 -0500"}' AS event_json
+ UNION ALL
+ SELECT
+ 'GC-03' AS callback_id,
+ '2026-02-28'::DATE AS text_date,
+ '{"at":"2026-02-28 18:45:30.000 +0530"}' AS event_json
)
diff --git a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_callback_wall_time_lists.sql b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_callback_wall_time_lists.sql
index 6dfd58c485..8513b36b83 100644
--- a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_callback_wall_time_lists.sql
+++ b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_callback_wall_time_lists.sql
@@ -17,6 +17,14 @@ WITH __ref__stg_edge_gateway_callbacks AS (
__expected__int_edge_callback_wall_time_lists AS (
SELECT
- NULL AS merchant_zone,
- NULL AS wall_times
+ 'America/New_York' AS merchant_zone,
+ PARSE_JSON('["2026-03-08 01:15:00.000"]')::ARRAY AS wall_times
+ UNION ALL
+ SELECT
+ 'Asia/Kolkata' AS merchant_zone,
+ PARSE_JSON('["2026-02-28 18:45:30.000"]')::ARRAY AS wall_times
+ UNION ALL
+ SELECT
+ 'Europe/London' AS merchant_zone,
+ PARSE_JSON('["2026-03-28 23:30:00.000"]')::ARRAY AS wall_times
)
diff --git a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_callback_zone_words.sql b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_callback_zone_words.sql
index 118bc2d6c8..7e927ca3eb 100644
--- a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_callback_zone_words.sql
+++ b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_callback_zone_words.sql
@@ -17,7 +17,17 @@ WITH __ref__stg_edge_gateway_callbacks AS (
__expected__int_edge_callback_zone_words AS (
SELECT
- NULL AS callback_id,
- NULL AS shared_word_count,
- NULL AS event_json
+ 'GC-01' AS callback_id,
+ 1 AS shared_word_count,
+ '{"at":"2026-03-28 23:30:00.000 Z","zone":"Europe/London"}' AS event_json
+ UNION ALL
+ SELECT
+ 'GC-02' AS callback_id,
+ 0 AS shared_word_count,
+ '{"at":"2026-03-08 01:15:00.000 -0500","zone":"America/New_York"}' AS event_json
+ UNION ALL
+ SELECT
+ 'GC-03' AS callback_id,
+ 1 AS shared_word_count,
+ '{"at":"2026-02-28 18:45:30.000 +0530","zone":"Asia/Kolkata"}' AS event_json
)
diff --git a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_callback_zoned_dates.sql b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_callback_zoned_dates.sql
index 8cf2fe597a..ee81029353 100644
--- a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_callback_zoned_dates.sql
+++ b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_callback_zoned_dates.sql
@@ -17,6 +17,10 @@ WITH __ref__stg_edge_gateway_callbacks AS (
__expected__int_edge_callback_zoned_dates AS (
SELECT
- NULL AS callback_id,
- NULL AS event_date
+ 'GC-01' AS callback_id,
+ '2026-03-28'::DATE AS event_date
+ UNION ALL
+ SELECT
+ 'GC-02' AS callback_id,
+ '2026-03-08'::DATE AS event_date
)
diff --git a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_amount_spreads.sql b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_amount_spreads.sql
index 9b38c76c2a..0c9b682d92 100644
--- a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_amount_spreads.sql
+++ b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_amount_spreads.sql
@@ -18,7 +18,12 @@ WITH __ref__stg_edge_amount_checks AS (
__expected__int_edge_check_amount_spreads AS (
SELECT
- NULL AS group_code,
- NULL AS median_amount,
- NULL AS rate_spread
+ 'G-1' AS group_code,
+ 4.750::NUMBER(18,3) AS median_amount,
+ -0.047934024139::NUMBER(38,12) AS rate_spread
+ UNION ALL
+ SELECT
+ 'G-2' AS group_code,
+ 0.000::NUMBER(18,3) AS median_amount,
+ CAST(NULL AS NUMBER(38,12)) AS rate_spread
)
diff --git a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_any_amounts.sql b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_any_amounts.sql
index a0d0994ac3..c2a3cabae7 100644
--- a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_any_amounts.sql
+++ b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_any_amounts.sql
@@ -18,6 +18,10 @@ WITH __ref__stg_edge_amount_checks AS (
__expected__int_edge_check_any_amounts AS (
SELECT
- NULL AS group_code,
- NULL AS amounts_agree
+ 'G-1' AS group_code,
+ TRUE AS amounts_agree
+ UNION ALL
+ SELECT
+ 'G-2' AS group_code,
+ TRUE AS amounts_agree
)
diff --git a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_bracket_strips.sql b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_bracket_strips.sql
index 2e6ec456b1..3a7ae522bc 100644
--- a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_bracket_strips.sql
+++ b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_bracket_strips.sql
@@ -18,6 +18,18 @@ WITH __ref__stg_edge_amount_checks AS (
__expected__int_edge_check_bracket_strips AS (
SELECT
- NULL AS check_id,
- NULL AS stripped_key
+ 'AC-01' AS check_id,
+ '101,7' AS stripped_key
+ UNION ALL
+ SELECT
+ 'AC-02' AS check_id,
+ '2026-03-04' AS stripped_key
+ UNION ALL
+ SELECT
+ 'AC-03' AS check_id,
+ '7' AS stripped_key
+ UNION ALL
+ SELECT
+ 'AC-04' AS check_id,
+ CAST(NULL AS VARCHAR) AS stripped_key
)
diff --git a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_complete_pairs.sql b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_complete_pairs.sql
index f67b71d22b..649db66525 100644
--- a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_complete_pairs.sql
+++ b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_complete_pairs.sql
@@ -18,6 +18,10 @@ WITH __ref__stg_edge_amount_checks AS (
__expected__int_edge_check_complete_pairs AS (
SELECT
- NULL AS group_code,
- NULL AS complete_pair_count
+ 'G-1' AS group_code,
+ 2 AS complete_pair_count
+ UNION ALL
+ SELECT
+ 'G-2' AS group_code,
+ 1 AS complete_pair_count
)
diff --git a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_decoded_keys.sql b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_decoded_keys.sql
index 04d90820b4..1e9762e069 100644
--- a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_decoded_keys.sql
+++ b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_decoded_keys.sql
@@ -18,6 +18,18 @@ WITH __ref__stg_edge_amount_checks AS (
__expected__int_edge_check_decoded_keys AS (
SELECT
- NULL AS check_id,
- NULL AS decoded_key_hex
+ 'AC-01' AS check_id,
+ CAST(NULL AS VARCHAR) AS decoded_key_hex
+ UNION ALL
+ SELECT
+ 'AC-02' AS check_id,
+ CAST(NULL AS VARCHAR) AS decoded_key_hex
+ UNION ALL
+ SELECT
+ 'AC-03' AS check_id,
+ CAST(NULL AS VARCHAR) AS decoded_key_hex
+ UNION ALL
+ SELECT
+ 'AC-04' AS check_id,
+ CAST(NULL AS VARCHAR) AS decoded_key_hex
)
diff --git a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_distinct_tuples.sql b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_distinct_tuples.sql
index 6e8bdb4b93..a3c3b1fdac 100644
--- a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_distinct_tuples.sql
+++ b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_distinct_tuples.sql
@@ -18,6 +18,10 @@ WITH __ref__stg_edge_amount_checks AS (
__expected__int_edge_check_distinct_tuples AS (
SELECT
- NULL AS group_code,
- NULL AS distinct_tuples
+ 'G-1' AS group_code,
+ 2 AS distinct_tuples
+ UNION ALL
+ SELECT
+ 'G-2' AS group_code,
+ 2 AS distinct_tuples
)
diff --git a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_formatted_dates.sql b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_formatted_dates.sql
index 827bcc7c59..28620f03b9 100644
--- a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_formatted_dates.sql
+++ b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_formatted_dates.sql
@@ -18,6 +18,18 @@ WITH __ref__stg_edge_amount_checks AS (
__expected__int_edge_check_formatted_dates AS (
SELECT
- NULL AS check_id,
- NULL AS key_date
+ 'AC-01' AS check_id,
+ CAST(NULL AS DATE) AS key_date
+ UNION ALL
+ SELECT
+ 'AC-02' AS check_id,
+ '2026-03-04'::DATE AS key_date
+ UNION ALL
+ SELECT
+ 'AC-03' AS check_id,
+ CAST(NULL AS DATE) AS key_date
+ UNION ALL
+ SELECT
+ 'AC-04' AS check_id,
+ CAST(NULL AS DATE) AS key_date
)
diff --git a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_generated_rows.sql b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_generated_rows.sql
index 2081c0091e..76f064100c 100644
--- a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_generated_rows.sql
+++ b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_generated_rows.sql
@@ -18,8 +18,8 @@ WITH __ref__stg_edge_amount_checks AS (
__expected__int_edge_check_generated_rows AS (
SELECT
- NULL AS summary_id,
- NULL AS generated_count,
- NULL AS numbers_are_valid,
- NULL AS draws_are_one
+ 'all' AS summary_id,
+ 4 AS generated_count,
+ TRUE AS numbers_are_valid,
+ TRUE AS draws_are_one
)
diff --git a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_group_flags.sql b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_group_flags.sql
index 89d71b347f..d806746838 100644
--- a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_group_flags.sql
+++ b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_group_flags.sql
@@ -18,6 +18,18 @@ WITH __ref__stg_edge_amount_checks AS (
__expected__int_edge_check_group_flags AS (
SELECT
- NULL AS check_id,
- NULL AS is_unpaid_group
+ 'AC-01' AS check_id,
+ FALSE AS is_unpaid_group
+ UNION ALL
+ SELECT
+ 'AC-02' AS check_id,
+ FALSE AS is_unpaid_group
+ UNION ALL
+ SELECT
+ 'AC-03' AS check_id,
+ TRUE AS is_unpaid_group
+ UNION ALL
+ SELECT
+ 'AC-04' AS check_id,
+ TRUE AS is_unpaid_group
)
diff --git a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_group_key_lists.sql b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_group_key_lists.sql
index e815fba373..fac9978a33 100644
--- a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_group_key_lists.sql
+++ b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_group_key_lists.sql
@@ -18,6 +18,18 @@ WITH __ref__stg_edge_amount_checks AS (
__expected__int_edge_check_group_key_lists AS (
SELECT
- NULL AS check_id,
- NULL AS group_key_count
+ 'AC-01' AS check_id,
+ 2 AS group_key_count
+ UNION ALL
+ SELECT
+ 'AC-02' AS check_id,
+ 2 AS group_key_count
+ UNION ALL
+ SELECT
+ 'AC-03' AS check_id,
+ 1 AS group_key_count
+ UNION ALL
+ SELECT
+ 'AC-04' AS check_id,
+ 1 AS group_key_count
)
diff --git a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_group_pivots.sql b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_group_pivots.sql
index 6cf575a56f..c9cc0451b9 100644
--- a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_group_pivots.sql
+++ b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_group_pivots.sql
@@ -18,7 +18,22 @@ WITH __ref__stg_edge_amount_checks AS (
__expected__int_edge_check_group_pivots AS (
SELECT
- NULL AS check_id,
- NULL AS first_group_amount,
- NULL AS second_group_amount
+ 'AC-01' AS check_id,
+ 10.05::NUMBER(38,2) AS first_group_amount,
+ CAST(NULL AS NUMBER(38,2)) AS second_group_amount
+ UNION ALL
+ SELECT
+ 'AC-02' AS check_id,
+ -0.55::NUMBER(38,2) AS first_group_amount,
+ CAST(NULL AS NUMBER(38,2)) AS second_group_amount
+ UNION ALL
+ SELECT
+ 'AC-03' AS check_id,
+ CAST(NULL AS NUMBER(38,2)) AS first_group_amount,
+ 0.00::NUMBER(38,2) AS second_group_amount
+ UNION ALL
+ SELECT
+ 'AC-04' AS check_id,
+ CAST(NULL AS NUMBER(38,2)) AS first_group_amount,
+ CAST(NULL AS NUMBER(38,2)) AS second_group_amount
)
diff --git a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_key_list_edits.sql b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_key_list_edits.sql
index c5625a988e..45519fca04 100644
--- a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_key_list_edits.sql
+++ b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_key_list_edits.sql
@@ -18,8 +18,26 @@ WITH __ref__stg_edge_amount_checks AS (
__expected__int_edge_check_key_list_edits AS (
SELECT
- NULL AS check_id,
- NULL AS kept_part_count,
- NULL AS appended_part_count,
- NULL AS check_json
+ 'AC-01' AS check_id,
+ 1 AS kept_part_count,
+ 3 AS appended_part_count,
+ '{"k":7,"r":1.000000000000000e-01}' AS check_json
+ UNION ALL
+ SELECT
+ 'AC-02' AS check_id,
+ 1 AS kept_part_count,
+ 2 AS appended_part_count,
+ '{"k":12,"r":2.000000000000000e-01}' AS check_json
+ UNION ALL
+ SELECT
+ 'AC-03' AS check_id,
+ 0 AS kept_part_count,
+ 2 AS appended_part_count,
+ '{"k":3,"r":3.000000000000000e-01}' AS check_json
+ UNION ALL
+ SELECT
+ 'AC-04' AS check_id,
+ CAST(NULL AS NUMBER(38,0)) AS kept_part_count,
+ CAST(NULL AS NUMBER(38,0)) AS appended_part_count,
+ '{}' AS check_json
)
diff --git a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_key_parts.sql b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_key_parts.sql
index 813102e6f2..d0c94d654a 100644
--- a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_key_parts.sql
+++ b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_key_parts.sql
@@ -18,6 +18,18 @@ WITH __ref__stg_edge_amount_checks AS (
__expected__int_edge_check_key_parts AS (
SELECT
- NULL AS check_id,
- NULL AS key_number_count
+ 'AC-01' AS check_id,
+ 2 AS key_number_count
+ UNION ALL
+ SELECT
+ 'AC-02' AS check_id,
+ 1 AS key_number_count
+ UNION ALL
+ SELECT
+ 'AC-03' AS check_id,
+ 1 AS key_number_count
+ UNION ALL
+ SELECT
+ 'AC-04' AS check_id,
+ CAST(NULL AS NUMBER(38,0)) AS key_number_count
)
diff --git a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_key_rewrites.sql b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_key_rewrites.sql
index eba67ae866..fb049db07c 100644
--- a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_key_rewrites.sql
+++ b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_key_rewrites.sql
@@ -18,6 +18,18 @@ WITH __ref__stg_edge_amount_checks AS (
__expected__int_edge_check_key_rewrites AS (
SELECT
- NULL AS check_id,
- NULL AS rewritten_key
+ 'AC-01' AS check_id,
+ 'G,1,7' AS rewritten_key
+ UNION ALL
+ SELECT
+ 'AC-02' AS check_id,
+ 'G,1-03-04' AS rewritten_key
+ UNION ALL
+ SELECT
+ 'AC-03' AS check_id,
+ '7' AS rewritten_key
+ UNION ALL
+ SELECT
+ 'AC-04' AS check_id,
+ CAST(NULL AS VARCHAR) AS rewritten_key
)
diff --git a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_label_lookups.sql b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_label_lookups.sql
index 6a49363102..003c08f82d 100644
--- a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_label_lookups.sql
+++ b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_label_lookups.sql
@@ -18,6 +18,18 @@ WITH __ref__stg_edge_amount_checks AS (
__expected__int_edge_check_label_lookups AS (
SELECT
- NULL AS check_id,
- NULL AS key_label
+ 'AC-01' AS check_id,
+ 'one hundred and one' AS key_label
+ UNION ALL
+ SELECT
+ 'AC-02' AS check_id,
+ CAST(NULL AS VARCHAR) AS key_label
+ UNION ALL
+ SELECT
+ 'AC-03' AS check_id,
+ 'seven' AS key_label
+ UNION ALL
+ SELECT
+ 'AC-04' AS check_id,
+ CAST(NULL AS VARCHAR) AS key_label
)
diff --git a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_last_known_keys.sql b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_last_known_keys.sql
index 935b7142d9..f574fed5ef 100644
--- a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_last_known_keys.sql
+++ b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_last_known_keys.sql
@@ -18,6 +18,18 @@ WITH __ref__stg_edge_amount_checks AS (
__expected__int_edge_check_last_known_keys AS (
SELECT
- NULL AS check_id,
- NULL AS last_listed_key
+ 'AC-01' AS check_id,
+ '101,7' AS last_listed_key
+ UNION ALL
+ SELECT
+ 'AC-02' AS check_id,
+ '101,7' AS last_listed_key
+ UNION ALL
+ SELECT
+ 'AC-03' AS check_id,
+ CAST(NULL AS VARCHAR) AS last_listed_key
+ UNION ALL
+ SELECT
+ 'AC-04' AS check_id,
+ CAST(NULL AS VARCHAR) AS last_listed_key
)
diff --git a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_local_times.sql b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_local_times.sql
index 4184870dcf..0c61322264 100644
--- a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_local_times.sql
+++ b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_local_times.sql
@@ -18,6 +18,18 @@ WITH __ref__stg_edge_amount_checks AS (
__expected__int_edge_check_local_times AS (
SELECT
- NULL AS check_id,
- NULL AS noted_at
+ 'AC-01' AS check_id,
+ '2026-03-04 12:00:00 Z'::TIMESTAMP_LTZ(9) AS noted_at
+ UNION ALL
+ SELECT
+ 'AC-02' AS check_id,
+ '2026-03-04 12:00:00 Z'::TIMESTAMP_LTZ(9) AS noted_at
+ UNION ALL
+ SELECT
+ 'AC-03' AS check_id,
+ '2026-03-04 12:00:00 Z'::TIMESTAMP_LTZ(9) AS noted_at
+ UNION ALL
+ SELECT
+ 'AC-04' AS check_id,
+ '2026-03-04 12:00:00 Z'::TIMESTAMP_LTZ(9) AS noted_at
)
diff --git a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_minute_times.sql b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_minute_times.sql
index 713cc2ef9a..02e8b999d1 100644
--- a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_minute_times.sql
+++ b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_minute_times.sql
@@ -18,6 +18,18 @@ WITH __ref__stg_edge_amount_checks AS (
__expected__int_edge_check_minute_times AS (
SELECT
- NULL AS check_id,
- NULL AS opened_at
+ 'AC-01' AS check_id,
+ '2024-05-01 15:00:00'::TIMESTAMP_NTZ(9) AS opened_at
+ UNION ALL
+ SELECT
+ 'AC-02' AS check_id,
+ '2024-05-01 15:00:00'::TIMESTAMP_NTZ(9) AS opened_at
+ UNION ALL
+ SELECT
+ 'AC-03' AS check_id,
+ '2024-05-01 15:00:00'::TIMESTAMP_NTZ(9) AS opened_at
+ UNION ALL
+ SELECT
+ 'AC-04' AS check_id,
+ '2024-05-01 15:00:00'::TIMESTAMP_NTZ(9) AS opened_at
)
diff --git a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_month_starts.sql b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_month_starts.sql
index 869072f51e..66328853b4 100644
--- a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_month_starts.sql
+++ b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_month_starts.sql
@@ -18,6 +18,10 @@ WITH __ref__stg_edge_amount_checks AS (
__expected__int_edge_check_month_starts AS (
SELECT
- NULL AS period_id,
- NULL AS period_start
+ 'P-1' AS period_id,
+ '2026-02-01' AS period_start
+ UNION ALL
+ SELECT
+ 'P-2' AS period_id,
+ '2026-01-01' AS period_start
)
diff --git a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_note_unions.sql b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_note_unions.sql
index b1880a1f2c..1016a82a72 100644
--- a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_note_unions.sql
+++ b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_note_unions.sql
@@ -18,6 +18,34 @@ WITH __ref__stg_edge_amount_checks AS (
__expected__int_edge_check_note_unions AS (
SELECT
- NULL AS note_row_id,
- NULL AS note
+ 'AC-01~left' AS note_row_id,
+ CAST(NULL AS VARCHAR) AS note
+ UNION ALL
+ SELECT
+ 'AC-01~right' AS note_row_id,
+ CAST(NULL AS VARCHAR) AS note
+ UNION ALL
+ SELECT
+ 'AC-02~left' AS note_row_id,
+ CAST(NULL AS VARCHAR) AS note
+ UNION ALL
+ SELECT
+ 'AC-02~right' AS note_row_id,
+ CAST(NULL AS VARCHAR) AS note
+ UNION ALL
+ SELECT
+ 'AC-03~left' AS note_row_id,
+ CAST(NULL AS VARCHAR) AS note
+ UNION ALL
+ SELECT
+ 'AC-03~right' AS note_row_id,
+ CAST(NULL AS VARCHAR) AS note
+ UNION ALL
+ SELECT
+ 'AC-04~left' AS note_row_id,
+ CAST(NULL AS VARCHAR) AS note
+ UNION ALL
+ SELECT
+ 'AC-04~right' AS note_row_id,
+ CAST(NULL AS VARCHAR) AS note
)
diff --git a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_number_arrays.sql b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_number_arrays.sql
index db48398665..d6e97fcb3c 100644
--- a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_number_arrays.sql
+++ b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_number_arrays.sql
@@ -18,6 +18,18 @@ WITH __ref__stg_edge_amount_checks AS (
__expected__int_edge_check_number_arrays AS (
SELECT
- NULL AS check_id,
- NULL AS amount_count
+ 'AC-01' AS check_id,
+ 1 AS amount_count
+ UNION ALL
+ SELECT
+ 'AC-02' AS check_id,
+ 1 AS amount_count
+ UNION ALL
+ SELECT
+ 'AC-03' AS check_id,
+ 1 AS amount_count
+ UNION ALL
+ SELECT
+ 'AC-04' AS check_id,
+ 1 AS amount_count
)
diff --git a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_number_labels.sql b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_number_labels.sql
index 3f0deb5e5e..135f033b2e 100644
--- a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_number_labels.sql
+++ b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_number_labels.sql
@@ -18,6 +18,18 @@ WITH __ref__stg_edge_amount_checks AS (
__expected__int_edge_check_number_labels AS (
SELECT
- NULL AS check_id,
- NULL AS cluster_label
+ 'AC-01' AS check_id,
+ '501' AS cluster_label
+ UNION ALL
+ SELECT
+ 'AC-02' AS check_id,
+ '501' AS cluster_label
+ UNION ALL
+ SELECT
+ 'AC-03' AS check_id,
+ '501' AS cluster_label
+ UNION ALL
+ SELECT
+ 'AC-04' AS check_id,
+ '501' AS cluster_label
)
diff --git a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_pair_filters.sql b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_pair_filters.sql
index b50a34b980..f0f80376a9 100644
--- a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_pair_filters.sql
+++ b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_pair_filters.sql
@@ -18,6 +18,10 @@ WITH __ref__stg_edge_amount_checks AS (
__expected__int_edge_check_pair_filters AS (
SELECT
- NULL AS check_id,
- NULL AS has_seven
+ 'AC-01' AS check_id,
+ TRUE AS has_seven
+ UNION ALL
+ SELECT
+ 'AC-03' AS check_id,
+ TRUE AS has_seven
)
diff --git a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_pattern_matches.sql b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_pattern_matches.sql
index 20b6a47afd..cbe299ae10 100644
--- a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_pattern_matches.sql
+++ b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_pattern_matches.sql
@@ -6,12 +6,21 @@ WITH __ref__stg_edge_amount_checks AS (
v.group_code::VARCHAR AS group_code,
v.key_text::VARCHAR AS key_text
FROM VALUES
- ('AC-01', '^1(?=0)', '101,7'),
- ('AC-02', '[[:digit:]]+', '7') AS v(check_id, group_code, key_text)
+ ('AC-01', '[[:digit:]]{3}', '101,7'),
+ ('AC-02', '^7$', '7'),
+ ('AC-03', '[[:alpha:]]+', '7') AS v(check_id, group_code, key_text)
),
__expected__int_edge_check_pattern_matches AS (
SELECT
- NULL AS check_id,
- NULL AS matches_group
+ 'AC-01' AS check_id,
+ FALSE AS matches_group
+ UNION ALL
+ SELECT
+ 'AC-02' AS check_id,
+ TRUE AS matches_group
+ UNION ALL
+ SELECT
+ 'AC-03' AS check_id,
+ FALSE AS matches_group
)
diff --git a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_reduced_keys.sql b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_reduced_keys.sql
index d7772d2678..06f1c124ae 100644
--- a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_reduced_keys.sql
+++ b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_reduced_keys.sql
@@ -18,6 +18,18 @@ WITH __ref__stg_edge_amount_checks AS (
__expected__int_edge_check_reduced_keys AS (
SELECT
- NULL AS check_id,
- NULL AS folded_key
+ 'AC-01' AS check_id,
+ 'G-1/101/7' AS folded_key
+ UNION ALL
+ SELECT
+ 'AC-02' AS check_id,
+ 'G-1/2026-03-04' AS folded_key
+ UNION ALL
+ SELECT
+ 'AC-03' AS check_id,
+ 'G-2/7' AS folded_key
+ UNION ALL
+ SELECT
+ 'AC-04' AS check_id,
+ CAST(NULL AS VARCHAR) AS folded_key
)
diff --git a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_sparse_arrays.sql b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_sparse_arrays.sql
index 44211ba99b..47c5a2306a 100644
--- a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_sparse_arrays.sql
+++ b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_sparse_arrays.sql
@@ -18,6 +18,18 @@ WITH __ref__stg_edge_amount_checks AS (
__expected__int_edge_check_sparse_arrays AS (
SELECT
- NULL AS check_id,
- NULL AS pair_text
+ 'AC-01' AS check_id,
+ '["101,7","G-1"]' AS pair_text
+ UNION ALL
+ SELECT
+ 'AC-02' AS check_id,
+ '["2026-03-04","G-1"]' AS pair_text
+ UNION ALL
+ SELECT
+ 'AC-03' AS check_id,
+ '["7","G-2"]' AS pair_text
+ UNION ALL
+ SELECT
+ 'AC-04' AS check_id,
+ '[undefined,"G-2"]' AS pair_text
)
diff --git a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_text_arrays.sql b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_text_arrays.sql
index 507345a682..c218dd9527 100644
--- a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_text_arrays.sql
+++ b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_text_arrays.sql
@@ -18,6 +18,18 @@ WITH __ref__stg_edge_amount_checks AS (
__expected__int_edge_check_text_arrays AS (
SELECT
- NULL AS check_id,
- NULL AS key_part_count
+ 'AC-01' AS check_id,
+ 2 AS key_part_count
+ UNION ALL
+ SELECT
+ 'AC-02' AS check_id,
+ 1 AS key_part_count
+ UNION ALL
+ SELECT
+ 'AC-03' AS check_id,
+ 1 AS key_part_count
+ UNION ALL
+ SELECT
+ 'AC-04' AS check_id,
+ CAST(NULL AS NUMBER(38,0)) AS key_part_count
)
diff --git a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_unnamed_labels.sql b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_unnamed_labels.sql
index fa350860bc..144a6ff69d 100644
--- a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_unnamed_labels.sql
+++ b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_unnamed_labels.sql
@@ -18,6 +18,18 @@ WITH __ref__stg_edge_amount_checks AS (
__expected__int_edge_check_unnamed_labels AS (
SELECT
- NULL AS check_id,
- NULL AS label
+ 'AC-01' AS check_id,
+ 'fixed' AS label
+ UNION ALL
+ SELECT
+ 'AC-02' AS check_id,
+ 'fixed' AS label
+ UNION ALL
+ SELECT
+ 'AC-03' AS check_id,
+ 'fixed' AS label
+ UNION ALL
+ SELECT
+ 'AC-04' AS check_id,
+ 'fixed' AS label
)
diff --git a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_variant_branches.sql b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_variant_branches.sql
index 7a80135778..fa17b14462 100644
--- a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_variant_branches.sql
+++ b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_variant_branches.sql
@@ -19,8 +19,26 @@ WITH __ref__stg_edge_amount_checks AS (
__expected__int_edge_check_variant_branches AS (
SELECT
- NULL AS check_id,
- NULL AS ratio_branch,
- NULL AS dates_differ,
- NULL AS largest_ratio_text
+ 'AC-01' AS check_id,
+ 1 AS ratio_branch,
+ TRUE AS dates_differ,
+ '0.2' AS largest_ratio_text
+ UNION ALL
+ SELECT
+ 'AC-02' AS check_id,
+ 2 AS ratio_branch,
+ TRUE AS dates_differ,
+ '0.2' AS largest_ratio_text
+ UNION ALL
+ SELECT
+ 'AC-03' AS check_id,
+ 2 AS ratio_branch,
+ TRUE AS dates_differ,
+ '0.3' AS largest_ratio_text
+ UNION ALL
+ SELECT
+ 'AC-04' AS check_id,
+ 2 AS ratio_branch,
+ TRUE AS dates_differ,
+ '0.3' AS largest_ratio_text
)
diff --git a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_wide_sums.sql b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_wide_sums.sql
index 029917da24..9b736df874 100644
--- a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_wide_sums.sql
+++ b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_wide_sums.sql
@@ -18,6 +18,34 @@ WITH __ref__stg_edge_amount_checks AS (
__expected__int_edge_check_wide_sums AS (
SELECT
- NULL AS key_row_id,
- NULL AS key_value
+ 'AC-01~amount' AS key_row_id,
+ 11.05::NUMBER(38,2) AS key_value
+ UNION ALL
+ SELECT
+ 'AC-01~wide' AS key_row_id,
+ 7.00::NUMBER(38,2) AS key_value
+ UNION ALL
+ SELECT
+ 'AC-02~amount' AS key_row_id,
+ 0.45::NUMBER(38,2) AS key_value
+ UNION ALL
+ SELECT
+ 'AC-02~wide' AS key_row_id,
+ 12.00::NUMBER(38,2) AS key_value
+ UNION ALL
+ SELECT
+ 'AC-03~amount' AS key_row_id,
+ 1.00::NUMBER(38,2) AS key_value
+ UNION ALL
+ SELECT
+ 'AC-03~wide' AS key_row_id,
+ CAST(NULL AS NUMBER(38,2)) AS key_value
+ UNION ALL
+ SELECT
+ 'AC-04~amount' AS key_row_id,
+ CAST(NULL AS NUMBER(38,2)) AS key_value
+ UNION ALL
+ SELECT
+ 'AC-04~wide' AS key_row_id,
+ 40.00::NUMBER(38,2) AS key_value
)
diff --git a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_xml_checks.sql b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_xml_checks.sql
index 7beca4390c..fc4411a687 100644
--- a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_xml_checks.sql
+++ b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_xml_checks.sql
@@ -18,7 +18,22 @@ WITH __ref__stg_edge_amount_checks AS (
__expected__int_edge_check_xml_checks AS (
SELECT
- NULL AS check_id,
- NULL AS stripped_key,
- NULL AS xml_error
+ 'AC-01' AS check_id,
+ '101,7' AS stripped_key,
+ 'not an XML element, pos 1' AS xml_error
+ UNION ALL
+ SELECT
+ 'AC-02' AS check_id,
+ '2026-03-04' AS stripped_key,
+ 'not an XML element, pos 1' AS xml_error
+ UNION ALL
+ SELECT
+ 'AC-03' AS check_id,
+ '7' AS stripped_key,
+ 'not an XML element, pos 1' AS xml_error
+ UNION ALL
+ SELECT
+ 'AC-04' AS check_id,
+ CAST(NULL AS VARCHAR) AS stripped_key,
+ CAST(NULL AS VARCHAR) AS xml_error
)
diff --git a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_zoned_literals.sql b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_zoned_literals.sql
index fa1d797c6c..3dd81219b3 100644
--- a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_zoned_literals.sql
+++ b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_check_zoned_literals.sql
@@ -18,6 +18,18 @@ WITH __ref__stg_edge_amount_checks AS (
__expected__int_edge_check_zoned_literals AS (
SELECT
- NULL AS check_id,
- NULL AS cutover_at
+ 'AC-01' AS check_id,
+ '2026-03-04 12:00:02 Z'::TIMESTAMP_TZ(9) AS cutover_at
+ UNION ALL
+ SELECT
+ 'AC-02' AS check_id,
+ '2026-03-04 12:00:02 Z'::TIMESTAMP_TZ(9) AS cutover_at
+ UNION ALL
+ SELECT
+ 'AC-03' AS check_id,
+ '2026-03-04 12:00:02 Z'::TIMESTAMP_TZ(9) AS cutover_at
+ UNION ALL
+ SELECT
+ 'AC-04' AS check_id,
+ '2026-03-04 12:00:02 Z'::TIMESTAMP_TZ(9) AS cutover_at
)
diff --git a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_key_number_reads.sql b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_key_number_reads.sql
index a3dfffc753..212a8d9f0e 100644
--- a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_key_number_reads.sql
+++ b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_key_number_reads.sql
@@ -18,6 +18,18 @@ WITH __ref__stg_edge_amount_checks AS (
__expected__int_edge_key_number_reads AS (
SELECT
- NULL AS check_id,
- NULL AS wide_key_number
+ 'AC-01' AS check_id,
+ 7 AS wide_key_number
+ UNION ALL
+ SELECT
+ 'AC-02' AS check_id,
+ 12 AS wide_key_number
+ UNION ALL
+ SELECT
+ 'AC-03' AS check_id,
+ CAST(NULL AS NUMBER(38,0)) AS wide_key_number
+ UNION ALL
+ SELECT
+ 'AC-04' AS check_id,
+ 40 AS wide_key_number
)
diff --git a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_key_rank_offsets.sql b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_key_rank_offsets.sql
index bd351b98d2..d5597e056f 100644
--- a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_key_rank_offsets.sql
+++ b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_key_rank_offsets.sql
@@ -18,7 +18,22 @@ WITH __ref__stg_edge_amount_checks AS (
__expected__int_edge_key_rank_offsets AS (
SELECT
- NULL AS check_id,
- NULL AS candidate_rank,
- NULL AS wide_key_number
+ 'AC-01' AS check_id,
+ 8 AS candidate_rank,
+ 7 AS wide_key_number
+ UNION ALL
+ SELECT
+ 'AC-02' AS check_id,
+ 13 AS candidate_rank,
+ 12 AS wide_key_number
+ UNION ALL
+ SELECT
+ 'AC-03' AS check_id,
+ 1000 AS candidate_rank,
+ CAST(NULL AS NUMBER(38,0)) AS wide_key_number
+ UNION ALL
+ SELECT
+ 'AC-04' AS check_id,
+ 41 AS candidate_rank,
+ 40 AS wide_key_number
)
diff --git a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_ledger_paid_quantities.sql b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_ledger_paid_quantities.sql
index 8b3f96079c..b3b90aa107 100644
--- a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_ledger_paid_quantities.sql
+++ b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_ledger_paid_quantities.sql
@@ -15,6 +15,10 @@ WITH __ref__stg_edge_ledger_entries AS (
__expected__int_edge_ledger_paid_quantities AS (
SELECT
- NULL AS order_ref,
- NULL AS paid_quantity_count
+ 'DS-O-1' AS order_ref,
+ 1 AS paid_quantity_count
+ UNION ALL
+ SELECT
+ 'DS-O-2' AS order_ref,
+ 0 AS paid_quantity_count
)
diff --git a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_ledger_quantity_steps.sql b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_ledger_quantity_steps.sql
index 5446bdde99..901093afe2 100644
--- a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_ledger_quantity_steps.sql
+++ b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_ledger_quantity_steps.sql
@@ -14,6 +14,10 @@ WITH __ref__stg_edge_ledger_entries AS (
__expected__int_edge_ledger_quantity_steps AS (
SELECT
- NULL AS order_ref,
- NULL AS quantity_less_one
+ 'DS-O-1' AS order_ref,
+ 2.500000::NUMBER(38,6) AS quantity_less_one
+ UNION ALL
+ SELECT
+ 'DS-O-2' AS order_ref,
+ CAST(NULL AS NUMBER(38,6)) AS quantity_less_one
)
diff --git a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_ratio_array_bounds.sql b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_ratio_array_bounds.sql
index 78f5f794d5..cc75684ff0 100644
--- a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_ratio_array_bounds.sql
+++ b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_ratio_array_bounds.sql
@@ -18,6 +18,10 @@ WITH __ref__stg_edge_amount_checks AS (
__expected__int_edge_ratio_array_bounds AS (
SELECT
- NULL AS group_code,
- NULL AS lower_bound
+ 'G-1' AS group_code,
+ '-10.2'::FLOAT AS lower_bound
+ UNION ALL
+ SELECT
+ 'G-2' AS group_code,
+ '-10.3'::FLOAT AS lower_bound
)
diff --git a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_ratio_array_casts.sql b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_ratio_array_casts.sql
index 2f74ec1e98..15342745b3 100644
--- a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_ratio_array_casts.sql
+++ b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_ratio_array_casts.sql
@@ -18,6 +18,18 @@ WITH __ref__stg_edge_amount_checks AS (
__expected__int_edge_ratio_array_casts AS (
SELECT
- NULL AS check_id,
- NULL AS ratio_count
+ 'AC-01' AS check_id,
+ 1 AS ratio_count
+ UNION ALL
+ SELECT
+ 'AC-02' AS check_id,
+ 1 AS ratio_count
+ UNION ALL
+ SELECT
+ 'AC-03' AS check_id,
+ 1 AS ratio_count
+ UNION ALL
+ SELECT
+ 'AC-04' AS check_id,
+ 1 AS ratio_count
)
diff --git a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_ratio_array_positions.sql b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_ratio_array_positions.sql
index d7b5f4c6f9..890b94d828 100644
--- a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_ratio_array_positions.sql
+++ b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_ratio_array_positions.sql
@@ -18,6 +18,10 @@ WITH __ref__stg_edge_amount_checks AS (
__expected__int_edge_ratio_array_positions AS (
SELECT
- NULL AS group_code,
- NULL AS last_ratio
+ 'G-1' AS group_code,
+ '0.2'::FLOAT AS last_ratio
+ UNION ALL
+ SELECT
+ 'G-2' AS group_code,
+ '0.3'::FLOAT AS last_ratio
)
diff --git a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_ratio_averages.sql b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_ratio_averages.sql
index 840c948db6..26fb47d705 100644
--- a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_ratio_averages.sql
+++ b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_ratio_averages.sql
@@ -18,6 +18,10 @@ WITH __ref__stg_edge_amount_checks AS (
__expected__int_edge_ratio_averages AS (
SELECT
- NULL AS group_code,
- NULL AS average_ratio
+ 'G-1' AS group_code,
+ '0.15000000000000002'::FLOAT AS average_ratio
+ UNION ALL
+ SELECT
+ 'G-2' AS group_code,
+ '0.3'::FLOAT AS average_ratio
)
diff --git a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_ratio_fixed_scales.sql b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_ratio_fixed_scales.sql
index 0225bc348f..432ba16477 100644
--- a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_ratio_fixed_scales.sql
+++ b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_ratio_fixed_scales.sql
@@ -18,6 +18,18 @@ WITH __ref__stg_edge_amount_checks AS (
__expected__int_edge_ratio_fixed_scales AS (
SELECT
- NULL AS check_id,
- NULL AS ratio_fixed
+ 'AC-01' AS check_id,
+ 0.1000000000::NUMBER(38,10) AS ratio_fixed
+ UNION ALL
+ SELECT
+ 'AC-02' AS check_id,
+ 0.2000000000::NUMBER(38,10) AS ratio_fixed
+ UNION ALL
+ SELECT
+ 'AC-03' AS check_id,
+ 0.3000000000::NUMBER(38,10) AS ratio_fixed
+ UNION ALL
+ SELECT
+ 'AC-04' AS check_id,
+ CAST(NULL AS NUMBER(38,10)) AS ratio_fixed
)
diff --git a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_ratio_group_objects.sql b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_ratio_group_objects.sql
index 234ddbb5c7..d026055888 100644
--- a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_ratio_group_objects.sql
+++ b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_ratio_group_objects.sql
@@ -18,7 +18,12 @@ WITH __ref__stg_edge_amount_checks AS (
__expected__int_edge_ratio_group_objects AS (
SELECT
- NULL AS group_code,
- NULL AS ratio_json,
- NULL AS distinct_ratio_count
+ 'G-1' AS group_code,
+ '{"AC-01":1.000000000000000e-01,"AC-02":2.000000000000000e-01}' AS ratio_json,
+ 2 AS distinct_ratio_count
+ UNION ALL
+ SELECT
+ 'G-2' AS group_code,
+ '{"AC-03":3.000000000000000e-01}' AS ratio_json,
+ 1 AS distinct_ratio_count
)
diff --git a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_ratio_hashes.sql b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_ratio_hashes.sql
index 7f69b21192..339feee51a 100644
--- a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_ratio_hashes.sql
+++ b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_ratio_hashes.sql
@@ -18,6 +18,18 @@ WITH __ref__stg_edge_amount_checks AS (
__expected__int_edge_ratio_hashes AS (
SELECT
- NULL AS check_id,
- NULL AS hash_is_stable
+ 'AC-01' AS check_id,
+ TRUE AS hash_is_stable
+ UNION ALL
+ SELECT
+ 'AC-02' AS check_id,
+ TRUE AS hash_is_stable
+ UNION ALL
+ SELECT
+ 'AC-03' AS check_id,
+ TRUE AS hash_is_stable
+ UNION ALL
+ SELECT
+ 'AC-04' AS check_id,
+ TRUE AS hash_is_stable
)
diff --git a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_ratio_identity_objects.sql b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_ratio_identity_objects.sql
index 9b16c1bb5b..15eeec8b67 100644
--- a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_ratio_identity_objects.sql
+++ b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_ratio_identity_objects.sql
@@ -18,6 +18,14 @@ WITH __ref__stg_edge_amount_checks AS (
__expected__int_edge_ratio_identity_objects AS (
SELECT
- NULL AS check_id,
- NULL AS identity_kind
+ 'AC-01' AS check_id,
+ 'ratio' AS identity_kind
+ UNION ALL
+ SELECT
+ 'AC-02' AS check_id,
+ 'ratio' AS identity_kind
+ UNION ALL
+ SELECT
+ 'AC-03' AS check_id,
+ 'ratio' AS identity_kind
)
diff --git a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_ratio_ignore_case_reads.sql b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_ratio_ignore_case_reads.sql
index 17c95ddbae..4e207cd509 100644
--- a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_ratio_ignore_case_reads.sql
+++ b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_ratio_ignore_case_reads.sql
@@ -18,6 +18,18 @@ WITH __ref__stg_edge_amount_checks AS (
__expected__int_edge_ratio_ignore_case_reads AS (
SELECT
- NULL AS check_id,
- NULL AS ratio_again
+ 'AC-01' AS check_id,
+ '0.1'::FLOAT AS ratio_again
+ UNION ALL
+ SELECT
+ 'AC-02' AS check_id,
+ '0.2'::FLOAT AS ratio_again
+ UNION ALL
+ SELECT
+ 'AC-03' AS check_id,
+ '0.3'::FLOAT AS ratio_again
+ UNION ALL
+ SELECT
+ 'AC-04' AS check_id,
+ CAST(NULL AS FLOAT) AS ratio_again
)
diff --git a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_ratio_object_differences.sql b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_ratio_object_differences.sql
index f78119008f..086f80bc49 100644
--- a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_ratio_object_differences.sql
+++ b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_ratio_object_differences.sql
@@ -18,6 +18,14 @@ WITH __ref__stg_edge_amount_checks AS (
__expected__int_edge_ratio_object_differences AS (
SELECT
- NULL AS check_id,
- NULL AS check_json
+ 'AC-02' AS check_id,
+ '{"r":2.000000000000000e-01}' AS check_json
+ UNION ALL
+ SELECT
+ 'AC-03' AS check_id,
+ '{"r":3.000000000000000e-01}' AS check_json
+ UNION ALL
+ SELECT
+ 'AC-04' AS check_id,
+ '{}' AS check_json
)
diff --git a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_ratio_object_flags.sql b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_ratio_object_flags.sql
index a8fc69f045..105734bf2c 100644
--- a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_ratio_object_flags.sql
+++ b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_ratio_object_flags.sql
@@ -1,23 +1,25 @@
-TEST (name "int_edge_ratio_object_flags__reads_ratios_back_as_booleans");
+TEST (name "int_edge_ratio_object_flags__reads_flags_back_as_booleans");
WITH __ref__stg_edge_amount_checks AS (
SELECT
v.check_id::VARCHAR AS check_id,
- v.group_code::VARCHAR AS group_code,
- v.narrow_key::NUMBER(18, 0) AS narrow_key,
- v.wide_key::NUMBER(38, 0) AS wide_key,
- v.key_text::VARCHAR AS key_text,
- v.amount::NUMBER(18, 2) AS amount,
v.ratio::FLOAT AS ratio
FROM VALUES
- ('AC-01', 'G-1', 7, 7, '101,7', 10.05, 0.1),
- ('AC-02', 'G-1', 12, 12, '2026-03-04', -0.55, 0.2),
- ('AC-03', 'G-2', 3, NULL, '7', 0.00, 0.3),
- ('AC-04', 'G-2', NULL, 40, NULL, NULL, NULL) AS v(check_id, group_code, narrow_key, wide_key, key_text, amount, ratio)
+ ('AC-01', 0.1),
+ ('AC-02', -0.5),
+ ('AC-03', NULL) AS v(check_id, ratio)
),
__expected__int_edge_ratio_object_flags AS (
SELECT
- NULL AS check_id,
- NULL AS ratio_flag
+ 'AC-01' AS check_id,
+ TRUE AS ratio_flag
+ UNION ALL
+ SELECT
+ 'AC-02' AS check_id,
+ FALSE AS ratio_flag
+ UNION ALL
+ SELECT
+ 'AC-03' AS check_id,
+ CAST(NULL AS BOOLEAN) AS ratio_flag
)
diff --git a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_ratio_object_inserts.sql b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_ratio_object_inserts.sql
index 530d612f3b..932f6baad9 100644
--- a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_ratio_object_inserts.sql
+++ b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_ratio_object_inserts.sql
@@ -18,6 +18,18 @@ WITH __ref__stg_edge_amount_checks AS (
__expected__int_edge_ratio_object_inserts AS (
SELECT
- NULL AS check_id,
- NULL AS check_json
+ 'AC-01' AS check_id,
+ '{"check":"AC-01","r":1.000000000000000e-01}' AS check_json
+ UNION ALL
+ SELECT
+ 'AC-02' AS check_id,
+ '{"check":"AC-02","r":2.000000000000000e-01}' AS check_json
+ UNION ALL
+ SELECT
+ 'AC-03' AS check_id,
+ '{"check":"AC-03","r":3.000000000000000e-01}' AS check_json
+ UNION ALL
+ SELECT
+ 'AC-04' AS check_id,
+ '{"check":"AC-04"}' AS check_json
)
diff --git a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_ratio_object_reads.sql b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_ratio_object_reads.sql
index 9411c1ddb5..d21255a4b3 100644
--- a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_ratio_object_reads.sql
+++ b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_ratio_object_reads.sql
@@ -18,6 +18,18 @@ WITH __ref__stg_edge_amount_checks AS (
__expected__int_edge_ratio_object_reads AS (
SELECT
- NULL AS check_id,
- NULL AS ratio_integer
+ 'AC-01' AS check_id,
+ 0 AS ratio_integer
+ UNION ALL
+ SELECT
+ 'AC-02' AS check_id,
+ 0 AS ratio_integer
+ UNION ALL
+ SELECT
+ 'AC-03' AS check_id,
+ 0 AS ratio_integer
+ UNION ALL
+ SELECT
+ 'AC-04' AS check_id,
+ CAST(NULL AS NUMBER(38,0)) AS ratio_integer
)
diff --git a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_ratio_path_checks.sql b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_ratio_path_checks.sql
index eadf2f288c..1c8e8eb01d 100644
--- a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_ratio_path_checks.sql
+++ b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_ratio_path_checks.sql
@@ -18,6 +18,6 @@ WITH __ref__stg_edge_amount_checks AS (
__expected__int_edge_ratio_path_checks AS (
SELECT
- NULL AS check_id,
- NULL AS key_span
+ 'AC-04' AS check_id,
+ CAST(NULL AS NUMBER(38,0)) AS key_span
)
diff --git a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_ratio_percent_texts.sql b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_ratio_percent_texts.sql
index ab4ebbf53b..d1c91848a2 100644
--- a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_ratio_percent_texts.sql
+++ b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_ratio_percent_texts.sql
@@ -18,6 +18,18 @@ WITH __ref__stg_edge_amount_checks AS (
__expected__int_edge_ratio_percent_texts AS (
SELECT
- NULL AS check_id,
- NULL AS ratio_percent
+ 'AC-01' AS check_id,
+ '10.0%' AS ratio_percent
+ UNION ALL
+ SELECT
+ 'AC-02' AS check_id,
+ '20.0%' AS ratio_percent
+ UNION ALL
+ SELECT
+ 'AC-03' AS check_id,
+ '30.0%' AS ratio_percent
+ UNION ALL
+ SELECT
+ 'AC-04' AS check_id,
+ CAST(NULL AS VARCHAR) AS ratio_percent
)
diff --git a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_ratio_running_totals.sql b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_ratio_running_totals.sql
index 87d4c34e24..25a2ba4b40 100644
--- a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_ratio_running_totals.sql
+++ b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_ratio_running_totals.sql
@@ -14,6 +14,18 @@ WITH __ref__stg_edge_amount_checks AS (
__expected__int_edge_ratio_running_totals AS (
SELECT
- NULL AS check_id,
- NULL AS running_ratio
+ 'AC-01' AS check_id,
+ '0.1'::FLOAT AS running_ratio
+ UNION ALL
+ SELECT
+ 'AC-02' AS check_id,
+ '0.30000000000000004'::FLOAT AS running_ratio
+ UNION ALL
+ SELECT
+ 'AC-03' AS check_id,
+ '0.6'::FLOAT AS running_ratio
+ UNION ALL
+ SELECT
+ 'AC-04' AS check_id,
+ '1.5'::FLOAT AS running_ratio
)
diff --git a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_ratio_safe_casts.sql b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_ratio_safe_casts.sql
index 84e76ec1c0..ea820af81f 100644
--- a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_ratio_safe_casts.sql
+++ b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_ratio_safe_casts.sql
@@ -18,7 +18,22 @@ WITH __ref__stg_edge_amount_checks AS (
__expected__int_edge_ratio_safe_casts AS (
SELECT
- NULL AS check_id,
- NULL AS check_json,
- NULL AS ratio_again
+ 'AC-01' AS check_id,
+ '{"key":"101,7","keys":{"narrow":7}}' AS check_json,
+ '0.1'::FLOAT AS ratio_again
+ UNION ALL
+ SELECT
+ 'AC-02' AS check_id,
+ '{"key":"2026-03-04","keys":{"narrow":12}}' AS check_json,
+ '0.2'::FLOAT AS ratio_again
+ UNION ALL
+ SELECT
+ 'AC-03' AS check_id,
+ '{"key":"7","keys":{"narrow":3}}' AS check_json,
+ '0.3'::FLOAT AS ratio_again
+ UNION ALL
+ SELECT
+ 'AC-04' AS check_id,
+ '{"keys":{}}' AS check_json,
+ CAST(NULL AS FLOAT) AS ratio_again
)
diff --git a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_ratio_text_forms.sql b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_ratio_text_forms.sql
index baec7ff079..a584eb6ab7 100644
--- a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_ratio_text_forms.sql
+++ b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_ratio_text_forms.sql
@@ -18,8 +18,26 @@ WITH __ref__stg_edge_amount_checks AS (
__expected__int_edge_ratio_text_forms AS (
SELECT
- NULL AS check_id,
- NULL AS ratio_text,
- NULL AS ratio_stars,
- NULL AS narrow_key_exp
+ 'AC-01' AS check_id,
+ ' 0.1 ' AS ratio_text,
+ '*' AS ratio_stars,
+ '1096.6331584284585'::FLOAT AS narrow_key_exp
+ UNION ALL
+ SELECT
+ 'AC-02' AS check_id,
+ ' 0.2 ' AS ratio_text,
+ '**' AS ratio_stars,
+ '162754.79141900392'::FLOAT AS narrow_key_exp
+ UNION ALL
+ SELECT
+ 'AC-03' AS check_id,
+ ' 0.3 ' AS ratio_text,
+ '***' AS ratio_stars,
+ '20.085536923187668'::FLOAT AS narrow_key_exp
+ UNION ALL
+ SELECT
+ 'AC-04' AS check_id,
+ CAST(NULL AS VARCHAR) AS ratio_text,
+ CAST(NULL AS VARCHAR) AS ratio_stars,
+ CAST(NULL AS FLOAT) AS narrow_key_exp
)
diff --git a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_ratio_text_replaces.sql b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_ratio_text_replaces.sql
index ea66c25858..f2262db504 100644
--- a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_ratio_text_replaces.sql
+++ b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_ratio_text_replaces.sql
@@ -18,7 +18,22 @@ WITH __ref__stg_edge_amount_checks AS (
__expected__int_edge_ratio_text_replaces AS (
SELECT
- NULL AS check_id,
- NULL AS key_time,
- NULL AS ratio_text
+ 'AC-01' AS check_id,
+ CAST(NULL AS TIMESTAMP_NTZ(9)) AS key_time,
+ '0,1' AS ratio_text
+ UNION ALL
+ SELECT
+ 'AC-02' AS check_id,
+ '2026-03-04 00:00:00'::TIMESTAMP_NTZ(9) AS key_time,
+ '0,2' AS ratio_text
+ UNION ALL
+ SELECT
+ 'AC-03' AS check_id,
+ '1970-01-01 00:00:07'::TIMESTAMP_NTZ(9) AS key_time,
+ '0,3' AS ratio_text
+ UNION ALL
+ SELECT
+ 'AC-04' AS check_id,
+ CAST(NULL AS TIMESTAMP_NTZ(9)) AS key_time,
+ CAST(NULL AS VARCHAR) AS ratio_text
)
diff --git a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_ratio_variant_unions.sql b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_ratio_variant_unions.sql
index bc3b5f0c41..cc414725e4 100644
--- a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_ratio_variant_unions.sql
+++ b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_ratio_variant_unions.sql
@@ -18,6 +18,34 @@ WITH __ref__stg_edge_amount_checks AS (
__expected__int_edge_ratio_variant_unions AS (
SELECT
- NULL AS value_row_id,
- NULL AS value_text
+ 'AC-01~key' AS value_row_id,
+ '101,7' AS value_text
+ UNION ALL
+ SELECT
+ 'AC-01~ratio' AS value_row_id,
+ '0.1' AS value_text
+ UNION ALL
+ SELECT
+ 'AC-02~key' AS value_row_id,
+ '2026-03-04' AS value_text
+ UNION ALL
+ SELECT
+ 'AC-02~ratio' AS value_row_id,
+ '0.2' AS value_text
+ UNION ALL
+ SELECT
+ 'AC-03~key' AS value_row_id,
+ '7' AS value_text
+ UNION ALL
+ SELECT
+ 'AC-03~ratio' AS value_row_id,
+ '0.3' AS value_text
+ UNION ALL
+ SELECT
+ 'AC-04~key' AS value_row_id,
+ CAST(NULL AS VARCHAR) AS value_text
+ UNION ALL
+ SELECT
+ 'AC-04~ratio' AS value_row_id,
+ CAST(NULL AS VARCHAR) AS value_text
)
diff --git a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_variant_decimal_reads.sql b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_variant_decimal_reads.sql
index ccd8b6fdfe..e901f47b77 100644
--- a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_variant_decimal_reads.sql
+++ b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_variant_decimal_reads.sql
@@ -16,6 +16,6 @@ WITH __ref__stg_edge_variant_values AS (
__expected__int_edge_variant_decimal_reads AS (
SELECT
- NULL AS value_id,
- NULL AS decimal_value
+ 'VV-02' AS value_id,
+ 1.5000::NUMBER(10,4) AS decimal_value
)
diff --git a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_variant_element_counts.sql b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_variant_element_counts.sql
index 7b5fcb5655..5ee677911f 100644
--- a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_variant_element_counts.sql
+++ b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_variant_element_counts.sql
@@ -16,6 +16,6 @@ WITH __ref__stg_edge_variant_values AS (
__expected__int_edge_variant_element_counts AS (
SELECT
- NULL AS group_code,
- NULL AS element_count
+ 'V-1' AS group_code,
+ 2 AS element_count
)
diff --git a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_variant_expected_values.sql b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_variant_expected_values.sql
index eed556e336..5310124a21 100644
--- a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_variant_expected_values.sql
+++ b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_variant_expected_values.sql
@@ -16,5 +16,11 @@ WITH __ref__stg_edge_variant_values AS (
__expected__int_edge_variant_expected_values AS (
SELECT
- NULL AS value_id
+ 'VV-01' AS value_id
+ UNION ALL
+ SELECT
+ 'VV-03' AS value_id
+ UNION ALL
+ SELECT
+ 'VV-04' AS value_id
)
diff --git a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_variant_xml_checks.sql b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_variant_xml_checks.sql
deleted file mode 100644
index 5173a72a36..0000000000
--- a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_variant_xml_checks.sql
+++ /dev/null
@@ -1,22 +0,0 @@
-TEST (name "int_edge_variant_xml_checks__checks_value_text_as_xml");
-
-WITH __ref__stg_edge_variant_values AS (
- SELECT
- v.value_id::VARCHAR AS value_id,
- v.group_code::VARCHAR AS group_code,
- v.sort_key::NUMBER(38, 0) AS sort_key,
- PARSE_JSON(v.attribute_value) AS attribute_value,
- v.value_text::VARCHAR AS value_text
- FROM VALUES
- ('VV-01', 'V-1', 1, '{"sku": "DK-1", "qty": 2}', 'DK-1'),
- ('VV-02', 'V-1', 2, '1.5', '1.5'),
- ('VV-03', 'V-2', 1, '"2026-03-01"', '2026-03-01'),
- ('VV-04', 'V-2', 2, 'null', NULL) AS v(value_id, group_code, sort_key, attribute_value, value_text)
-),
-
-__expected__int_edge_variant_xml_checks AS (
- SELECT
- NULL AS value_id,
- NULL AS stripped_text,
- NULL AS xml_error
-)
diff --git a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_variant_xml_elements.sql b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_variant_xml_elements.sql
index aa4ac860b5..caa3d5c8bf 100644
--- a/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_variant_xml_elements.sql
+++ b/benchmarks/duckshop/project/tests/unit/intermediate/edge_cases/test_int_edge_variant_xml_elements.sql
@@ -14,6 +14,10 @@ WITH __ref__stg_edge_variant_values AS (
__expected__int_edge_variant_xml_elements AS (
SELECT
- NULL AS value_id,
- NULL AS sku_text
+ 'VX-01' AS value_id,
+ 'DK-1' AS sku_text
+ UNION ALL
+ SELECT
+ 'VX-02' AS value_id,
+ CAST(NULL AS VARCHAR) AS sku_text
)
diff --git a/benchmarks/duckshop/project/tests/unit/marts/edge_cases/test_rpt_edge_case_array_model_keys.sql b/benchmarks/duckshop/project/tests/unit/marts/edge_cases/test_rpt_edge_case_array_model_keys.sql
index e0c2a4e26d..4ddb18fe0b 100644
--- a/benchmarks/duckshop/project/tests/unit/marts/edge_cases/test_rpt_edge_case_array_model_keys.sql
+++ b/benchmarks/duckshop/project/tests/unit/marts/edge_cases/test_rpt_edge_case_array_model_keys.sql
@@ -9,7 +9,7 @@ WITH __ref__int_edge_callback_wall_time_lists AS (
__expected__rpt_edge_case_array_model_keys AS (
SELECT
- NULL AS model_key_id,
- NULL AS model_name,
- NULL AS model_key
+ 'int_edge_callback_wall_time_lists~callback_wal-1' AS model_key_id,
+ 'int_edge_callback_wall_time_lists' AS model_name,
+ 'callback_wal-1' AS model_key
)
diff --git a/benchmarks/duckshop/project/tests/unit/marts/edge_cases/test_rpt_edge_case_model_keys.sql b/benchmarks/duckshop/project/tests/unit/marts/edge_cases/test_rpt_edge_case_model_keys.sql
index 16f9693221..ce02527e16 100644
--- a/benchmarks/duckshop/project/tests/unit/marts/edge_cases/test_rpt_edge_case_model_keys.sql
+++ b/benchmarks/duckshop/project/tests/unit/marts/edge_cases/test_rpt_edge_case_model_keys.sql
@@ -639,7 +639,457 @@ __ref__int_edge_quantity_checks AS (
__expected__rpt_edge_case_model_keys AS (
SELECT
- NULL AS model_key_id,
- NULL AS model_name,
- NULL AS model_key
+ 'int_edge_amount_bit_reads~amount_bit_r-1' AS model_key_id,
+ 'int_edge_amount_bit_reads' AS model_name,
+ 'amount_bit_r-1' AS model_key
+ UNION ALL
+ SELECT
+ 'int_edge_amount_percent_texts~amount_perce-1' AS model_key_id,
+ 'int_edge_amount_percent_texts' AS model_name,
+ 'amount_perce-1' AS model_key
+ UNION ALL
+ SELECT
+ 'int_edge_basket_distinct_tags~basket_disti-1' AS model_key_id,
+ 'int_edge_basket_distinct_tags' AS model_name,
+ 'basket_disti-1' AS model_key
+ UNION ALL
+ SELECT
+ 'int_edge_basket_line_lookups~basket_line_-1' AS model_key_id,
+ 'int_edge_basket_line_lookups' AS model_name,
+ 'basket_line_-1' AS model_key
+ UNION ALL
+ SELECT
+ 'int_edge_basket_running_peaks~basket_runni-1' AS model_key_id,
+ 'int_edge_basket_running_peaks' AS model_name,
+ 'basket_runni-1' AS model_key
+ UNION ALL
+ SELECT
+ 'int_edge_basket_sku_part_filters~basket_sku_p-1' AS model_key_id,
+ 'int_edge_basket_sku_part_filters' AS model_name,
+ 'basket_sku_p-1' AS model_key
+ UNION ALL
+ SELECT
+ 'int_edge_basket_tag_list_reads~basket_tag_l-1' AS model_key_id,
+ 'int_edge_basket_tag_list_reads' AS model_name,
+ 'basket_tag_l-1' AS model_key
+ UNION ALL
+ SELECT
+ 'int_edge_basket_xml_reads~basket_xml_r-1' AS model_key_id,
+ 'int_edge_basket_xml_reads' AS model_name,
+ 'basket_xml_r-1' AS model_key
+ UNION ALL
+ SELECT
+ 'int_edge_callback_clock_times~callback_clo-1' AS model_key_id,
+ 'int_edge_callback_clock_times' AS model_name,
+ 'callback_clo-1' AS model_key
+ UNION ALL
+ SELECT
+ 'int_edge_callback_date_lists~callback_dat-1' AS model_key_id,
+ 'int_edge_callback_date_lists' AS model_name,
+ 'callback_dat-1' AS model_key
+ UNION ALL
+ SELECT
+ 'int_edge_callback_day_documents~callback_day-1' AS model_key_id,
+ 'int_edge_callback_day_documents' AS model_name,
+ 'callback_day-1' AS model_key
+ UNION ALL
+ SELECT
+ 'int_edge_callback_day_starts~callback_day-1' AS model_key_id,
+ 'int_edge_callback_day_starts' AS model_name,
+ 'callback_day-1' AS model_key
+ UNION ALL
+ SELECT
+ 'int_edge_callback_epoch_parts~callback_epo-1' AS model_key_id,
+ 'int_edge_callback_epoch_parts' AS model_name,
+ 'callback_epo-1' AS model_key
+ UNION ALL
+ SELECT
+ 'int_edge_callback_epoch_reads~callback_epo-1' AS model_key_id,
+ 'int_edge_callback_epoch_reads' AS model_name,
+ 'callback_epo-1' AS model_key
+ UNION ALL
+ SELECT
+ 'int_edge_callback_last_day~callback_las-1' AS model_key_id,
+ 'int_edge_callback_last_day' AS model_name,
+ 'callback_las-1' AS model_key
+ UNION ALL
+ SELECT
+ 'int_edge_callback_latest_dates~callback_lat-1' AS model_key_id,
+ 'int_edge_callback_latest_dates' AS model_name,
+ 'callback_lat-1' AS model_key
+ UNION ALL
+ SELECT
+ 'int_edge_callback_london_times~callback_lon-1' AS model_key_id,
+ 'int_edge_callback_london_times' AS model_name,
+ 'callback_lon-1' AS model_key
+ UNION ALL
+ SELECT
+ 'int_edge_callback_recent_offsets~callback_rec-1' AS model_key_id,
+ 'int_edge_callback_recent_offsets' AS model_name,
+ 'callback_rec-1' AS model_key
+ UNION ALL
+ SELECT
+ 'int_edge_callback_row_numbers~callback_row-1' AS model_key_id,
+ 'int_edge_callback_row_numbers' AS model_name,
+ 'callback_row-1' AS model_key
+ UNION ALL
+ SELECT
+ 'int_edge_callback_safe_dates~callback_saf-1' AS model_key_id,
+ 'int_edge_callback_safe_dates' AS model_name,
+ 'callback_saf-1' AS model_key
+ UNION ALL
+ SELECT
+ 'int_edge_callback_start_fallbacks~callback_sta-1' AS model_key_id,
+ 'int_edge_callback_start_fallbacks' AS model_name,
+ 'callback_sta-1' AS model_key
+ UNION ALL
+ SELECT
+ 'int_edge_callback_text_dates~callback_tex-1' AS model_key_id,
+ 'int_edge_callback_text_dates' AS model_name,
+ 'callback_tex-1' AS model_key
+ UNION ALL
+ SELECT
+ 'int_edge_callback_zone_words~callback_zon-1' AS model_key_id,
+ 'int_edge_callback_zone_words' AS model_name,
+ 'callback_zon-1' AS model_key
+ UNION ALL
+ SELECT
+ 'int_edge_callback_zoned_dates~callback_zon-1' AS model_key_id,
+ 'int_edge_callback_zoned_dates' AS model_name,
+ 'callback_zon-1' AS model_key
+ UNION ALL
+ SELECT
+ 'int_edge_check_amount_spreads~check_amount-1' AS model_key_id,
+ 'int_edge_check_amount_spreads' AS model_name,
+ 'check_amount-1' AS model_key
+ UNION ALL
+ SELECT
+ 'int_edge_check_any_amounts~check_any_am-1' AS model_key_id,
+ 'int_edge_check_any_amounts' AS model_name,
+ 'check_any_am-1' AS model_key
+ UNION ALL
+ SELECT
+ 'int_edge_check_bracket_strips~check_bracke-1' AS model_key_id,
+ 'int_edge_check_bracket_strips' AS model_name,
+ 'check_bracke-1' AS model_key
+ UNION ALL
+ SELECT
+ 'int_edge_check_complete_pairs~check_comple-1' AS model_key_id,
+ 'int_edge_check_complete_pairs' AS model_name,
+ 'check_comple-1' AS model_key
+ UNION ALL
+ SELECT
+ 'int_edge_check_decoded_keys~check_decode-1' AS model_key_id,
+ 'int_edge_check_decoded_keys' AS model_name,
+ 'check_decode-1' AS model_key
+ UNION ALL
+ SELECT
+ 'int_edge_check_distinct_tuples~check_distin-1' AS model_key_id,
+ 'int_edge_check_distinct_tuples' AS model_name,
+ 'check_distin-1' AS model_key
+ UNION ALL
+ SELECT
+ 'int_edge_check_formatted_dates~check_format-1' AS model_key_id,
+ 'int_edge_check_formatted_dates' AS model_name,
+ 'check_format-1' AS model_key
+ UNION ALL
+ SELECT
+ 'int_edge_check_generated_rows~check_genera-1' AS model_key_id,
+ 'int_edge_check_generated_rows' AS model_name,
+ 'check_genera-1' AS model_key
+ UNION ALL
+ SELECT
+ 'int_edge_check_group_flags~check_group_-1' AS model_key_id,
+ 'int_edge_check_group_flags' AS model_name,
+ 'check_group_-1' AS model_key
+ UNION ALL
+ SELECT
+ 'int_edge_check_group_key_lists~check_group_-1' AS model_key_id,
+ 'int_edge_check_group_key_lists' AS model_name,
+ 'check_group_-1' AS model_key
+ UNION ALL
+ SELECT
+ 'int_edge_check_group_pivots~check_group_-1' AS model_key_id,
+ 'int_edge_check_group_pivots' AS model_name,
+ 'check_group_-1' AS model_key
+ UNION ALL
+ SELECT
+ 'int_edge_check_key_list_edits~check_key_li-1' AS model_key_id,
+ 'int_edge_check_key_list_edits' AS model_name,
+ 'check_key_li-1' AS model_key
+ UNION ALL
+ SELECT
+ 'int_edge_check_key_parts~check_key_pa-1' AS model_key_id,
+ 'int_edge_check_key_parts' AS model_name,
+ 'check_key_pa-1' AS model_key
+ UNION ALL
+ SELECT
+ 'int_edge_check_key_rewrites~check_key_re-1' AS model_key_id,
+ 'int_edge_check_key_rewrites' AS model_name,
+ 'check_key_re-1' AS model_key
+ UNION ALL
+ SELECT
+ 'int_edge_check_label_lookups~check_label_-1' AS model_key_id,
+ 'int_edge_check_label_lookups' AS model_name,
+ 'check_label_-1' AS model_key
+ UNION ALL
+ SELECT
+ 'int_edge_check_last_known_keys~check_last_k-1' AS model_key_id,
+ 'int_edge_check_last_known_keys' AS model_name,
+ 'check_last_k-1' AS model_key
+ UNION ALL
+ SELECT
+ 'int_edge_check_local_times~check_local_-1' AS model_key_id,
+ 'int_edge_check_local_times' AS model_name,
+ 'check_local_-1' AS model_key
+ UNION ALL
+ SELECT
+ 'int_edge_check_minute_times~check_minute-1' AS model_key_id,
+ 'int_edge_check_minute_times' AS model_name,
+ 'check_minute-1' AS model_key
+ UNION ALL
+ SELECT
+ 'int_edge_check_month_starts~check_month_-1' AS model_key_id,
+ 'int_edge_check_month_starts' AS model_name,
+ 'check_month_-1' AS model_key
+ UNION ALL
+ SELECT
+ 'int_edge_check_note_unions~check_note_u-1' AS model_key_id,
+ 'int_edge_check_note_unions' AS model_name,
+ 'check_note_u-1' AS model_key
+ UNION ALL
+ SELECT
+ 'int_edge_check_number_arrays~check_number-1' AS model_key_id,
+ 'int_edge_check_number_arrays' AS model_name,
+ 'check_number-1' AS model_key
+ UNION ALL
+ SELECT
+ 'int_edge_check_number_labels~check_number-1' AS model_key_id,
+ 'int_edge_check_number_labels' AS model_name,
+ 'check_number-1' AS model_key
+ UNION ALL
+ SELECT
+ 'int_edge_check_pair_filters~check_pair_f-1' AS model_key_id,
+ 'int_edge_check_pair_filters' AS model_name,
+ 'check_pair_f-1' AS model_key
+ UNION ALL
+ SELECT
+ 'int_edge_check_pattern_matches~check_patter-1' AS model_key_id,
+ 'int_edge_check_pattern_matches' AS model_name,
+ 'check_patter-1' AS model_key
+ UNION ALL
+ SELECT
+ 'int_edge_check_reduced_keys~check_reduce-1' AS model_key_id,
+ 'int_edge_check_reduced_keys' AS model_name,
+ 'check_reduce-1' AS model_key
+ UNION ALL
+ SELECT
+ 'int_edge_check_sparse_arrays~check_sparse-1' AS model_key_id,
+ 'int_edge_check_sparse_arrays' AS model_name,
+ 'check_sparse-1' AS model_key
+ UNION ALL
+ SELECT
+ 'int_edge_check_text_arrays~check_text_a-1' AS model_key_id,
+ 'int_edge_check_text_arrays' AS model_name,
+ 'check_text_a-1' AS model_key
+ UNION ALL
+ SELECT
+ 'int_edge_check_unnamed_labels~check_unname-1' AS model_key_id,
+ 'int_edge_check_unnamed_labels' AS model_name,
+ 'check_unname-1' AS model_key
+ UNION ALL
+ SELECT
+ 'int_edge_check_variant_branches~check_varian-1' AS model_key_id,
+ 'int_edge_check_variant_branches' AS model_name,
+ 'check_varian-1' AS model_key
+ UNION ALL
+ SELECT
+ 'int_edge_check_wide_sums~check_wide_s-1' AS model_key_id,
+ 'int_edge_check_wide_sums' AS model_name,
+ 'check_wide_s-1' AS model_key
+ UNION ALL
+ SELECT
+ 'int_edge_check_xml_checks~check_xml_ch-1' AS model_key_id,
+ 'int_edge_check_xml_checks' AS model_name,
+ 'check_xml_ch-1' AS model_key
+ UNION ALL
+ SELECT
+ 'int_edge_check_zoned_literals~check_zoned_-1' AS model_key_id,
+ 'int_edge_check_zoned_literals' AS model_name,
+ 'check_zoned_-1' AS model_key
+ UNION ALL
+ SELECT
+ 'int_edge_clock_text_reads~clock_text_r-1' AS model_key_id,
+ 'int_edge_clock_text_reads' AS model_name,
+ 'clock_text_r-1' AS model_key
+ UNION ALL
+ SELECT
+ 'int_edge_join_keys~join_keys-1' AS model_key_id,
+ 'int_edge_join_keys' AS model_name,
+ 'join_keys-1' AS model_key
+ UNION ALL
+ SELECT
+ 'int_edge_json_numbers~json_numbers-1' AS model_key_id,
+ 'int_edge_json_numbers' AS model_name,
+ 'json_numbers-1' AS model_key
+ UNION ALL
+ SELECT
+ 'int_edge_key_number_reads~key_number_r-1' AS model_key_id,
+ 'int_edge_key_number_reads' AS model_name,
+ 'key_number_r-1' AS model_key
+ UNION ALL
+ SELECT
+ 'int_edge_key_rank_offsets~key_rank_off-1' AS model_key_id,
+ 'int_edge_key_rank_offsets' AS model_name,
+ 'key_rank_off-1' AS model_key
+ UNION ALL
+ SELECT
+ 'int_edge_ledger_paid_quantities~ledger_paid_-1' AS model_key_id,
+ 'int_edge_ledger_paid_quantities' AS model_name,
+ 'ledger_paid_-1' AS model_key
+ UNION ALL
+ SELECT
+ 'int_edge_ledger_quantity_steps~ledger_quant-1' AS model_key_id,
+ 'int_edge_ledger_quantity_steps' AS model_name,
+ 'ledger_quant-1' AS model_key
+ UNION ALL
+ SELECT
+ 'int_edge_note_patterns~note_pattern-1' AS model_key_id,
+ 'int_edge_note_patterns' AS model_name,
+ 'note_pattern-1' AS model_key
+ UNION ALL
+ SELECT
+ 'int_edge_quantity_checks~quantity_che-1' AS model_key_id,
+ 'int_edge_quantity_checks' AS model_name,
+ 'quantity_che-1' AS model_key
+ UNION ALL
+ SELECT
+ 'int_edge_ratio_array_bounds~ratio_array_-1' AS model_key_id,
+ 'int_edge_ratio_array_bounds' AS model_name,
+ 'ratio_array_-1' AS model_key
+ UNION ALL
+ SELECT
+ 'int_edge_ratio_array_casts~ratio_array_-1' AS model_key_id,
+ 'int_edge_ratio_array_casts' AS model_name,
+ 'ratio_array_-1' AS model_key
+ UNION ALL
+ SELECT
+ 'int_edge_ratio_array_positions~ratio_array_-1' AS model_key_id,
+ 'int_edge_ratio_array_positions' AS model_name,
+ 'ratio_array_-1' AS model_key
+ UNION ALL
+ SELECT
+ 'int_edge_ratio_averages~ratio_averag-1' AS model_key_id,
+ 'int_edge_ratio_averages' AS model_name,
+ 'ratio_averag-1' AS model_key
+ UNION ALL
+ SELECT
+ 'int_edge_ratio_fixed_scales~ratio_fixed_-1' AS model_key_id,
+ 'int_edge_ratio_fixed_scales' AS model_name,
+ 'ratio_fixed_-1' AS model_key
+ UNION ALL
+ SELECT
+ 'int_edge_ratio_group_objects~ratio_group_-1' AS model_key_id,
+ 'int_edge_ratio_group_objects' AS model_name,
+ 'ratio_group_-1' AS model_key
+ UNION ALL
+ SELECT
+ 'int_edge_ratio_hashes~ratio_hashes-1' AS model_key_id,
+ 'int_edge_ratio_hashes' AS model_name,
+ 'ratio_hashes-1' AS model_key
+ UNION ALL
+ SELECT
+ 'int_edge_ratio_identity_objects~ratio_identi-1' AS model_key_id,
+ 'int_edge_ratio_identity_objects' AS model_name,
+ 'ratio_identi-1' AS model_key
+ UNION ALL
+ SELECT
+ 'int_edge_ratio_ignore_case_reads~ratio_ignore-1' AS model_key_id,
+ 'int_edge_ratio_ignore_case_reads' AS model_name,
+ 'ratio_ignore-1' AS model_key
+ UNION ALL
+ SELECT
+ 'int_edge_ratio_object_differences~ratio_object-1' AS model_key_id,
+ 'int_edge_ratio_object_differences' AS model_name,
+ 'ratio_object-1' AS model_key
+ UNION ALL
+ SELECT
+ 'int_edge_ratio_object_flags~ratio_object-1' AS model_key_id,
+ 'int_edge_ratio_object_flags' AS model_name,
+ 'ratio_object-1' AS model_key
+ UNION ALL
+ SELECT
+ 'int_edge_ratio_object_inserts~ratio_object-1' AS model_key_id,
+ 'int_edge_ratio_object_inserts' AS model_name,
+ 'ratio_object-1' AS model_key
+ UNION ALL
+ SELECT
+ 'int_edge_ratio_object_reads~ratio_object-1' AS model_key_id,
+ 'int_edge_ratio_object_reads' AS model_name,
+ 'ratio_object-1' AS model_key
+ UNION ALL
+ SELECT
+ 'int_edge_ratio_path_checks~ratio_path_c-1' AS model_key_id,
+ 'int_edge_ratio_path_checks' AS model_name,
+ 'ratio_path_c-1' AS model_key
+ UNION ALL
+ SELECT
+ 'int_edge_ratio_percent_texts~ratio_percen-1' AS model_key_id,
+ 'int_edge_ratio_percent_texts' AS model_name,
+ 'ratio_percen-1' AS model_key
+ UNION ALL
+ SELECT
+ 'int_edge_ratio_running_totals~ratio_runnin-1' AS model_key_id,
+ 'int_edge_ratio_running_totals' AS model_name,
+ 'ratio_runnin-1' AS model_key
+ UNION ALL
+ SELECT
+ 'int_edge_ratio_safe_casts~ratio_safe_c-1' AS model_key_id,
+ 'int_edge_ratio_safe_casts' AS model_name,
+ 'ratio_safe_c-1' AS model_key
+ UNION ALL
+ SELECT
+ 'int_edge_ratio_text_forms~ratio_text_f-1' AS model_key_id,
+ 'int_edge_ratio_text_forms' AS model_name,
+ 'ratio_text_f-1' AS model_key
+ UNION ALL
+ SELECT
+ 'int_edge_ratio_text_replaces~ratio_text_r-1' AS model_key_id,
+ 'int_edge_ratio_text_replaces' AS model_name,
+ 'ratio_text_r-1' AS model_key
+ UNION ALL
+ SELECT
+ 'int_edge_ratio_variant_unions~ratio_varian-1' AS model_key_id,
+ 'int_edge_ratio_variant_unions' AS model_name,
+ 'ratio_varian-1' AS model_key
+ UNION ALL
+ SELECT
+ 'int_edge_ticket_tokens~ticket_token-1' AS model_key_id,
+ 'int_edge_ticket_tokens' AS model_name,
+ 'ticket_token-1' AS model_key
+ UNION ALL
+ SELECT
+ 'int_edge_variant_decimal_reads~variant_deci-1' AS model_key_id,
+ 'int_edge_variant_decimal_reads' AS model_name,
+ 'variant_deci-1' AS model_key
+ UNION ALL
+ SELECT
+ 'int_edge_variant_element_counts~variant_elem-1' AS model_key_id,
+ 'int_edge_variant_element_counts' AS model_name,
+ 'variant_elem-1' AS model_key
+ UNION ALL
+ SELECT
+ 'int_edge_variant_expected_values~variant_expe-1' AS model_key_id,
+ 'int_edge_variant_expected_values' AS model_name,
+ 'variant_expe-1' AS model_key
+ UNION ALL
+ SELECT
+ 'int_edge_variant_xml_elements~variant_xml_-1' AS model_key_id,
+ 'int_edge_variant_xml_elements' AS model_name,
+ 'variant_xml_-1' AS model_key
+ UNION ALL
+ SELECT
+ 'stg_edge_supplier_notes~supplier_not-1' AS model_key_id,
+ 'stg_edge_supplier_notes' AS model_name,
+ 'supplier_not-1' AS model_key
)
diff --git a/benchmarks/duckshop/project/tests/unit/staging/edge_cases/test_stg_edge_supplier_notes.sql b/benchmarks/duckshop/project/tests/unit/staging/edge_cases/test_stg_edge_supplier_notes.sql
index 6f154befc0..a7e6dac465 100644
--- a/benchmarks/duckshop/project/tests/unit/staging/edge_cases/test_stg_edge_supplier_notes.sql
+++ b/benchmarks/duckshop/project/tests/unit/staging/edge_cases/test_stg_edge_supplier_notes.sql
@@ -12,7 +12,12 @@ WITH __source__edge__supplier_notes AS (
__expected__stg_edge_supplier_notes AS (
SELECT
- NULL AS note_id,
- NULL AS supplier_code,
- NULL AS note_upper
+ 'SN-1' AS note_id,
+ 'SUP-PINTAIL' AS supplier_code,
+ 'RESTOCK TEAL DECOYS' AS note_upper
+ UNION ALL
+ SELECT
+ 'SN-2' AS note_id,
+ CAST(NULL AS VARCHAR) AS supplier_code,
+ CAST(NULL AS VARCHAR) AS note_upper
)
From 974e719f779ad93da477a085f786e72bd4805500 Mon Sep 17 00:00:00 2001
From: Kevin Longe <273747162+kvlonge@users.noreply.github.com>
Date: Mon, 2 Nov 2026 08:42:03 +0000
Subject: [PATCH 4/5] docs(duckshop): document the translation-refusal edge
cases
---
benchmarks/duckshop/README.md | 12 ++++++++----
benchmarks/duckshop/RUNBOOK.md | 6 ++++++
.../duckshop/project/sqlbuild_local.toml.example | 3 +++
benchmarks/duckshop/scripts/relations.py | 9 ++++++---
4 files changed, 23 insertions(+), 7 deletions(-)
diff --git a/benchmarks/duckshop/README.md b/benchmarks/duckshop/README.md
index 00872da018..7020532dec 100644
--- a/benchmarks/duckshop/README.md
+++ b/benchmarks/duckshop/README.md
@@ -119,10 +119,13 @@ project and does not change it:
- raw `edge__*` sources in `sources/edge_cases.yml`, loaded by `python/loaders/edge_cases.py` from
fixed rows that `data_scale` does not change, so core data and core expectations stay the same;
- Python functions in `functions/python/edge_*.py`, tagged `edge_case`, and their tests in
- `tests/unit/functions/python/test_edge_*.sql`.
+ `tests/unit/functions/python/test_edge_*.sql`;
+- a SQL table function, `functions/sql/edge_basket_lines_for.sql`, and a JavaScript function,
+ `edge_running_peaks`, that a pre-hook of `int_edge_basket_running_peaks` creates
+ (`models/intermediate/edge_cases/_sqlbuild/_hooks/sql/`) and SQLBuild does not declare.
-It has 72 models (12 staging, 50 intermediate, 10 marts), 5 Python functions, 97 unit tests and 4
-scenarios, in eight groups:
+It has 160 models (13 staging, 133 intermediate, 14 marts), 5 Python functions, a SQL table
+function, a hook-created JavaScript function, 185 unit tests and 4 scenarios, in nine groups:
| Group | Covers |
|-------|--------|
@@ -134,6 +137,7 @@ scenarios, in eight groups:
| Lineage and analysis | clauses whose columns decide rows without being output (`WHERE`, `QUALIFY`, `GROUP BY` by position and `ALL`, `ORDER BY` under `LIMIT`, `EXISTS`, a `FLATTEN` input, `ROLLUP` by position, `EXCEPT` under `LIMIT`); `RIGHT JOIN ... USING`, `NATURAL JOIN`, a `USING` key under a later outer join, and unmatched `ASOF JOIN` rows; `CONNECT BY` beside a column named `level`; a recursive CTE without `RECURSIVE` whose columns shift per iteration; `LAST_DAY` with a date part; positional columns and the names Snowflake gives unaliased expressions; `TEXT(5)` and widened `COUNT` contracts |
| Python functions | volatile tokens and numbers from a column, a constant and no argument, and `DIV0` of a volatile call beside look-alike names, checked by assertions that hold for any values; a handler answering NULL input without `STRICT`; Python `None` as JSON null, and datetimes, Decimals and integers past 2^53 handed to `VARIANT` and `FLOAT` results |
| Scenarios and lifecycle | typed values across model boundaries; `VARIANT` expected output; a star under a lower-case contract and a quoted camelCase export; a snapshot keyed and compared on quoted camelCase columns; a cursor-window incremental model over far-apart fixture loads; a change log merged across two loads, checked against a full rebuild |
+| Translation refusals | one model per construct that translation tools refuse or guard, most putting a construct refused only under strict checking before one refused by default, so a model shows both: `FLOAT` values through sums, averages, running totals, arrays, objects, `HASH`, `TO_CHAR` and `::NUMBER(38, 10)`; `VARIANT` dates, decimals and XML; `ARRAY_AGG` without `WITHIN GROUP`, sparse arrays and `ARRAY(NUMBER)` casts; `REDUCE`, `FILTER` and `TRANSFORM` lambdas; patterns and `REGEXP_REPLACE` replacements built from columns, and lazy patterns; `TRY_TO_DATE` with a format from a column; zoned literals, `CONVERT_TIMEZONE` from `CURRENT_TIMESTAMP`, `SEQ8`, `GENERATOR` with an expression `ROWCOUNT`; `PIVOT`, `ANY_VALUE`, `IGNORE NULLS` around `IFF`, unaliased columns read by Snowflake's name, `UNION` branches whose column is always NULL; `TO_NUMBER`, `TO_DECIMAL` and `TRY_BASE64_DECODE_BINARY`; an open (uncontracted) source `edge__supplier_notes`, the table function and the hook-created function. `rpt_edge_case_model_keys` and `rpt_edge_case_array_model_keys` read every model in the group, so a refusal there also refuses a downstream model |
Unit-test expectations in the edge-case area are captured on Snowflake under the `edge` target's
pinned session, rather than derived by hand; scenario expectations, and the assertions in tests
@@ -200,7 +204,7 @@ The edge-case area, verified on Snowflake with SQLBuild built after 0.185.0 on t
| Step | Result |
|------|--------|
| `sqb build --select tag:edge_case` | Passes; the disabled model is skipped |
-| `sqb test --select tag:edge_case` | 62 of 62 pass |
+| `sqb test --select tag:edge_case` | 62 of 62 pass; with SQLBuild 0.187.0, 185 of 185 pass |
| `sqb scenario test --select edge_cases` | 4 of 4 pass |
| Two-load replay of the delivery change log | The merged status equals the full rebuild after each load |
diff --git a/benchmarks/duckshop/RUNBOOK.md b/benchmarks/duckshop/RUNBOOK.md
index 2c78605335..c766ae9abe 100644
--- a/benchmarks/duckshop/RUNBOOK.md
+++ b/benchmarks/duckshop/RUNBOOK.md
@@ -182,6 +182,12 @@ the area's Python functions (`functions/python/edge_*.py`, tagged `edge_case`),
models and runs their tests and audits. `fct_edge_delivery_events` is disabled and reports
`skip: disabled` (see [Pending acceptance cases](#pending-acceptance-cases)).
+`int_edge_basket_running_peaks` calls `edge_running_peaks`, a JavaScript function its pre-hook
+creates in the target schema. SQLBuild does not declare it, so the model's unit test needs a build
+of that model first, and the model calls the function without a schema: set `database` and
+`schema` on the edge connection as well as on the target, so that the session's current schema is
+the target schema. `relations.py drop` drops the function too.
+
`int_edge_ticket_tokens` calls volatile Python functions, so its values change on every run; its
test compares only the deterministic columns and asserts facts that hold for any values, such as
every token being distinct.
diff --git a/benchmarks/duckshop/project/sqlbuild_local.toml.example b/benchmarks/duckshop/project/sqlbuild_local.toml.example
index 468e2d2702..ff96f9c7e6 100644
--- a/benchmarks/duckshop/project/sqlbuild_local.toml.example
+++ b/benchmarks/duckshop/project/sqlbuild_local.toml.example
@@ -15,12 +15,15 @@ database = ""
schema = ""
# The edge-case area's target (RUNBOOK.md, step 7). Use a different schema from targets.dev.
+# database and schema repeat the target's, so the session's current schema is the target schema.
[connections.edge]
account = ""
user = ""
authenticator = ""
role = ""
warehouse = ""
+database = ""
+schema = ""
[targets.edge]
connection = "edge"
diff --git a/benchmarks/duckshop/scripts/relations.py b/benchmarks/duckshop/scripts/relations.py
index 062f49600e..4eb00fa945 100644
--- a/benchmarks/duckshop/scripts/relations.py
+++ b/benchmarks/duckshop/scripts/relations.py
@@ -11,8 +11,9 @@
`check` lists tables, views and functions that already exist under a DuckShop name, and any
SQLBuild state tables (`_sqlbuild_*`) already in the schema. `drop` is one Snowflake Scripting
block that drops every model, snapshot, seed and source table and every function the project
-creates, including functions a SQL hook creates, which the compile output does not list. SQLBuild's own state tables (`_sqlbuild_*`) are left alone, since other projects in the
-same schema may share them.
+creates, including functions a SQL hook creates, which the compile output does not list.
+SQLBuild's own state tables (`_sqlbuild_*`) are left alone, since other projects in the same schema
+may share them.
"""
from __future__ import annotations
@@ -59,7 +60,9 @@ def hook_functions() -> list[str]:
found: list[str] = []
for path in sorted(PROJECT_DIR.glob("models/**/_hooks/sql/*.sql")):
for name, arguments in HOOK_FUNCTION.findall(path.read_text()):
- types = [part.strip().split(None, 1)[1] for part in arguments.split(",") if part.strip()]
+ types = [
+ part.strip().split(None, 1)[1] for part in arguments.split(",") if part.strip()
+ ]
found.append(f"{name}({', '.join(types)})")
return found
From b2542210fb6a1ce74b491a9c8cb4db47a8a77252 Mon Sep 17 00:00:00 2001
From: Kevin Longe <273747162+kvlonge@users.noreply.github.com>
Date: Mon, 2 Nov 2026 11:25:10 +0000
Subject: [PATCH 5/5] fix(duckshop): list unit-test mock columns in declared
order and plan unit tests in CI
---
benchmarks/duckshop/README.md | 4 ++
...ounts_purchases_made_after_wishlisting.sql | 6 +--
...es_fill_and_lateness_in_warehouse_time.sql | 10 ++---
...ines_profile_value_consent_and_loyalty.sql | 8 ++--
.../cli/commands/main/compile/_test_types.py | 10 +++++
.../test_duckshop_benchmark_compile.py | 37 ++++++++++++++++++-
6 files changed, 62 insertions(+), 13 deletions(-)
diff --git a/benchmarks/duckshop/README.md b/benchmarks/duckshop/README.md
index 7020532dec..912a28a15a 100644
--- a/benchmarks/duckshop/README.md
+++ b/benchmarks/duckshop/README.md
@@ -162,6 +162,10 @@ earlier ones:
same results on every run: added SKUs are sorted, the weekday average utilisation is an exact
decimal sum over a count, the busiest slot of equally busy ones is the earliest, and the top
exception code of equally frequent ones is the first in alphabetical order.
+- The mocks of `stg_wishlist_items`, `stg_purchase_order_lines` and `int_loyalty_tier_changes` in
+ three unit tests list their columns in the models' declared order, which unit-test planning
+ requires for a `SELECT *` reader. Only compiled tests change; compiled models are the same, so
+ model benchmarks stay comparable.
## Status
diff --git a/benchmarks/duckshop/project/tests/unit/intermediate/customers/test_int_wishlist_demand__counts_purchases_made_after_wishlisting.sql b/benchmarks/duckshop/project/tests/unit/intermediate/customers/test_int_wishlist_demand__counts_purchases_made_after_wishlisting.sql
index 5d192bc22f..698f2bb7d7 100644
--- a/benchmarks/duckshop/project/tests/unit/intermediate/customers/test_int_wishlist_demand__counts_purchases_made_after_wishlisting.sql
+++ b/benchmarks/duckshop/project/tests/unit/intermediate/customers/test_int_wishlist_demand__counts_purchases_made_after_wishlisting.sql
@@ -2,25 +2,25 @@ TEST (name "int_wishlist_demand__counts_purchases_made_after_wishlisting");
WITH __ref__stg_wishlist_items AS (
SELECT
+ 'W1#1' AS wishlist_item_key,
'W1' AS wishlist_id,
'C1' AS customer_id,
- 'W1#1' AS wishlist_item_key,
'DUCK-1' AS sku,
'2026-03-01 00:00:00 +00:00'::TIMESTAMPTZ AS added_at,
NULL AS item_position
UNION ALL
SELECT
+ 'W2#1',
'W2',
'C1',
- 'W2#1',
'DUCK-1',
'2026-03-02 00:00:00 +00:00'::TIMESTAMPTZ,
NULL
UNION ALL
SELECT
+ 'W3#1',
'W3',
'C2',
- 'W3#1',
'DUCK-1',
'2026-03-05 00:00:00 +00:00'::TIMESTAMPTZ,
NULL
diff --git a/benchmarks/duckshop/project/tests/unit/intermediate/inventory/test_int_purchase_order_lines_received__measures_fill_and_lateness_in_warehouse_time.sql b/benchmarks/duckshop/project/tests/unit/intermediate/inventory/test_int_purchase_order_lines_received__measures_fill_and_lateness_in_warehouse_time.sql
index 8b9a1d32fe..241a8d0724 100644
--- a/benchmarks/duckshop/project/tests/unit/intermediate/inventory/test_int_purchase_order_lines_received__measures_fill_and_lateness_in_warehouse_time.sql
+++ b/benchmarks/duckshop/project/tests/unit/intermediate/inventory/test_int_purchase_order_lines_received__measures_fill_and_lateness_in_warehouse_time.sql
@@ -32,19 +32,19 @@ WITH __ref__stg_po_receipts AS (
__ref__stg_purchase_order_lines AS (
SELECT
- 'PO1' AS po_id,
- NULL AS currency_code,
'PO1#1' AS po_line_key,
+ 'PO1' AS po_id,
'DUCK-1' AS sku,
10 AS ordered_qty,
- NULL AS unit_cost_minor
+ NULL AS unit_cost_minor,
+ NULL AS currency_code
UNION ALL
SELECT
- 'PO1',
- NULL,
'PO1#2',
+ 'PO1',
'DUCK-2',
5,
+ NULL,
NULL
),
diff --git a/benchmarks/duckshop/project/tests/unit/marts/core/test_dim_customers__combines_profile_value_consent_and_loyalty.sql b/benchmarks/duckshop/project/tests/unit/marts/core/test_dim_customers__combines_profile_value_consent_and_loyalty.sql
index c3019535ba..5e6b165e20 100644
--- a/benchmarks/duckshop/project/tests/unit/marts/core/test_dim_customers__combines_profile_value_consent_and_loyalty.sql
+++ b/benchmarks/duckshop/project/tests/unit/marts/core/test_dim_customers__combines_profile_value_consent_and_loyalty.sql
@@ -115,23 +115,23 @@ __ref__int_customer_consent_state AS (
__ref__int_loyalty_tier_changes AS (
SELECT
+ 'LA1:1' AS tier_change_key,
NULL AS loyalty_account_id,
'C1' AS customer_id,
+ 1 AS change_sequence,
'DUCKLING' AS tier_code,
NULL AS previous_tier_code,
- 'LA1:1' AS tier_change_key,
- 1 AS change_sequence,
NULL AS changed_at,
NULL AS direction,
NULL AS days_in_previous_tier
UNION ALL
SELECT
+ 'LA1:2',
NULL,
'C1',
+ 2,
'GOLDEN_DUCK',
NULL,
- 'LA1:2',
- 2,
NULL,
NULL,
NULL
diff --git a/tests/e2e/src/sqlbuild/cli/commands/main/compile/_test_types.py b/tests/e2e/src/sqlbuild/cli/commands/main/compile/_test_types.py
index 291727b67a..3aef15546a 100644
--- a/tests/e2e/src/sqlbuild/cli/commands/main/compile/_test_types.py
+++ b/tests/e2e/src/sqlbuild/cli/commands/main/compile/_test_types.py
@@ -1255,6 +1255,16 @@ class BenchmarkProjectCompileTestCase:
expected_warnings: int
+@dataclass(frozen=True)
+class BenchmarkProjectTestPlanTestCase:
+ """A benchmark project whose unit tests must plan without a warehouse connection."""
+
+ description: str
+ project_dir: Path
+ expected_final_line_prefix: str
+ expected_final_line_suffix: str
+
+
@dataclass(frozen=True)
class BenchmarkCoreCopyCompileTestCase:
"""A script that copies a benchmark project without an area, and the copy's compiled output.
diff --git a/tests/e2e/src/sqlbuild/cli/commands/main/compile/test_duckshop_benchmark_compile.py b/tests/e2e/src/sqlbuild/cli/commands/main/compile/test_duckshop_benchmark_compile.py
index 1a545b3743..ed6b2309d4 100644
--- a/tests/e2e/src/sqlbuild/cli/commands/main/compile/test_duckshop_benchmark_compile.py
+++ b/tests/e2e/src/sqlbuild/cli/commands/main/compile/test_duckshop_benchmark_compile.py
@@ -14,6 +14,7 @@
from tests.e2e.src.sqlbuild.cli.commands.main.compile._test_types import (
BenchmarkCoreCopyCompileTestCase,
BenchmarkProjectCompileTestCase,
+ BenchmarkProjectTestPlanTestCase,
)
from tests.e2e.src.sqlbuild.cli.commands.shared.helpers import REPO_ROOT, run_sqb
@@ -63,6 +64,40 @@ def test_given_benchmark_project_when_compiling_then_reports_no_errors_or_warnin
assert summary["tests"] > 0
+@pytest.mark.parametrize(
+ "test_case",
+ [
+ BenchmarkProjectTestPlanTestCase(
+ description="duckshop",
+ project_dir=REPO_ROOT / "benchmarks" / "duckshop" / "project",
+ expected_final_line_prefix="Test plan inspection complete: ",
+ expected_final_line_suffix=" selected, 0 errors.",
+ )
+ ],
+ ids=lambda case: case.description,
+)
+def test_given_benchmark_project_when_inspecting_test_plan_then_every_unit_test_plans(
+ test_case: BenchmarkProjectTestPlanTestCase, tmp_path: Path
+) -> None:
+ """Mock fixtures are checked against declared columns only when tests are planned."""
+ project_dir: Path = tmp_path / test_case.description
+ shutil.copytree(
+ test_case.project_dir,
+ project_dir,
+ ignore=shutil.ignore_patterns(*_LOCAL_ONLY_PATHS),
+ )
+
+ result: subprocess.CompletedProcess[str] = run_sqb(
+ command=("--no-color", "test", "--inspect"),
+ project_dir=project_dir,
+ )
+
+ assert result.returncode == 0, result.stdout + result.stderr
+ final_line: str = result.stdout.strip().splitlines()[-1]
+ assert final_line.startswith(test_case.expected_final_line_prefix), result.stdout
+ assert final_line.endswith(test_case.expected_final_line_suffix), result.stdout
+
+
@pytest.mark.parametrize(
"test_case",
[
@@ -73,7 +108,7 @@ def test_given_benchmark_project_when_compiling_then_reports_no_errors_or_warnin
expected_errors=0,
expected_warnings=0,
expected_compiled_checksum=(
- "1ff1d0955ea3839b3c969707fd47ca9a4d7d7216753759d23911836f6ea5879d"
+ "7661e2ad98b33b8230c9df9c6c780e959cb7e18398b14a2cef36e12d19bd0bb6"
),
)
],