test_recipe_apply_runs_steps_in_order_and_preserves_source_frame
test_recipe_apply_supports_terminal_rms_metric
test_recipe_apply_supports_terminal_crest_factor_metric
test_recipe_apply_supports_channel_terminal_axis_properties
test_recipe_apply_supports_spectral_terminal_properties
test_recipe_apply_supports_spectrogram_terminal_properties
test_recipe_apply_supports_roughness_terminal_bark_axis
test_terminal_property_step_rejects_callable_attribute_on_frame
test_terminal_step_rejects_unknown_metric
test_terminal_property_step_rejects_params
test_recipe_apply_supports_terminal_loudness_zwst_method
test_recipe_apply_supports_terminal_sharpness_din_st_method
test_recipe_from_frame_extracts_importable_custom_function
test_recipe_from_frame_preserves_importable_custom_dask_pure_flag
test_recipe_from_frame_rejects_custom_lambda_boundary
test_recipe_from_frame_extracts_custom_domain_transition
test_recipe_from_frame_rejects_non_importable_custom_output_frame_class
test_recipe_from_frame_rejects_non_literal_custom_output_frame_kwargs
test_custom_function_step_rejects_non_function_import_targets
test_recipe_from_frame_rejects_custom_callable_object_boundary
test_graph_recipe_applies_named_input_recipes_and_frame_addition
test_graph_recipe_applies_add_with_snr
test_binary_frame_step_requires_numeric_snr_for_add_with_snr
test_graph_recipe_from_frame_extracts_root_add_with_snr_with_input_names
test_graph_recipe_from_frame_extracts_root_frame_addition_with_input_names
test_graph_recipe_from_frame_does_not_self_recommend_for_external_operand_parent
test_graph_recipe_from_frame_uses_numbered_default_input_names
test_graph_recipe_from_frame_extracts_raw_left_binary_parent
test_graph_recipe_from_frame_extracts_raw_right_binary_parent
test_graph_recipe_from_frame_extracts_raw_add_with_snr_parents
test_graph_recipe_from_frame_does_not_bake_source_length_into_add_with_snr
test_graph_recipe_add_with_snr_serializes_snr_without_implicit_fix_length_step
test_graph_recipe_from_frame_uses_numbered_default_names_for_raw_add_with_snr
test_graph_recipe_numbered_default_names_preserve_binary_operand_order
test_graph_recipe_applies_single_merge_with_linear_tail
test_graph_recipe_from_frame_extracts_single_merge_with_linear_tail
test_graph_recipe_from_frame_extracts_add_with_snr_with_linear_tail
test_graph_recipe_from_frame_extracts_single_merge_with_typed_tail
test_graph_recipe_from_frame_uses_numbered_default_names_with_typed_tail
test_graph_recipe_from_frame_rejects_without_binary_merge
test_graph_recipe_from_frame_rejects_wrong_input_name_count
test_node_graph_recipe_from_frame_extracts_two_binary_merges
test_node_graph_recipe_from_frame_extracts_custom_function_branch
test_node_graph_recipe_from_frame_uses_default_input_names
test_node_graph_recipe_from_frame_rejects_duplicate_input_names
test_node_graph_recipe_rejects_input_output_when_nodes_exist
test_node_graph_recipe_rejects_non_final_node_output
test_node_graph_recipe_constructor_rejects_invalid_structure
test_node_graph_recipe_from_frame_rejects_non_frame_or_missing_graph
test_node_graph_recipe_from_frame_rejects_invalid_graph_shapes
test_node_graph_recipe_from_frame_extracts_typed_tail_after_merge
test_node_graph_recipe_from_frame_replays_duplicated_shared_branch_with_same_source
test_node_graph_recipe_from_frame_extracts_multidimensional_indexing_branch
test_node_graph_recipe_from_frame_extracts_numpy_operand_as_external_input
test_node_graph_recipe_from_frame_extracts_dask_operand_after_processed_parent
test_node_graph_recipe_binary_operand_rejects_missing_operand_input
test_binary_operand_step_rejects_same_frame_and_operand_ref
test_binary_operand_step_rejects_non_array_runtime_operand
test_binary_operand_step_rejects_unknown_operation_and_missing_runtime_inputs
test_node_graph_recipe_binary_operand_rejects_inconsistent_symbol_metadata
test_node_graph_recipe_from_frame_extracts_add_channel_frame_inputs
test_node_graph_recipe_add_channel_frame_input_omits_raw_source_time_offset_option
test_node_graph_recipe_from_frame_extracts_add_channel_with_processed_parents
test_node_graph_recipe_from_frame_extracts_add_channel_numpy_data_input
test_node_graph_recipe_add_channel_data_serializes_input_name_not_array_values
test_node_graph_recipe_from_frame_extracts_add_channel_dask_data_after_processed_parent
test_add_channel_data_step_rejects_non_array_runtime_data
test_graph_steps_report_missing_runtime_inputs
test_graph_step_constructors_reject_invalid_inputs
test_binary_operand_step_applies_non_additive_array_operators
test_graph_node_spec_serializes_multi_input_nodes
test_graph_node_spec_serializes_unary_input_key
test_graph_node_spec_rejects_invalid_identity_and_inputs
test_graph_recipe_applies_named_input_recipes_and_frame_binary_operator
test_graph_recipe_from_frame_extracts_root_frame_binary_operator
test_graph_recipe_rejects_missing_input
test_graph_recipe_rejects_output_reference_outside_named_inputs
test_graph_recipe_rejects_extra_input_recipe_outside_binary_merge
test_graph_recipe_rejects_reused_binary_input_name
test_graph_recipe_rejects_non_binary_output
test_graph_recipe_constructor_rejects_invalid_structure
test_graph_recipe_from_frame_rejects_non_frame_or_missing_graph
test_graph_recipe_from_frame_rejects_duplicate_input_names
test_binary_frame_step_rejects_unknown_operation
test_recipe_spec_snapshots_mutable_step_params
test_operation_spec_snapshots_shallow_sequence_params
test_operation_spec_rejects_non_flat_literal_params
test_operation_spec_rejects_nested_mapping_params
test_operation_spec_rejects_nan_params
test_operation_spec_rejects_nan_inside_sequence_params
test_custom_function_import_loaders_reject_non_importable_targets
test_custom_function_import_loaders_reject_non_module_identity_targets
test_custom_function_loader_rejects_module_level_name_mismatch
test_custom_function_step_rejects_invalid_metadata
test_custom_function_step_serializes_output_frame_class_metadata
test_indexing_step_serializes_multidimensional_channel_key_variants
test_indexing_step_restores_boolean_mask_wrapper_to_public_numpy_mask
test_indexing_step_snapshots_direct_boolean_mask_key
test_get_channel_query_snapshot_rejects_non_string_key_with_channel_mask
test_indexing_step_rejects_invalid_keys
test_custom_function_extraction_rejects_unreplayable_metadata
test_rename_mapping_extraction_rejects_invalid_serialized_items
test_scalar_step_extraction_rejects_unstable_operand_metadata
test_scalar_step_extraction_accepts_direct_numeric_operand
test_indexing_extraction_rejects_invalid_serialized_selectors
test_getitem_step_extraction_rejects_unreplayable_indexing
test_getitem_step_extraction_accepts_multidimensional_slice
test_channel_key_extraction_rejects_unreplayable_parent_graph
test_channel_key_extraction_accepts_public_get_channel_selectors
test_steps_from_graph_rejects_invalid_multidimensional_parent_shapes
test_graph_step_extraction_rejects_unreplayable_binary_metadata
test_validate_replayable_operation_rejects_unregistered_operation
test_validate_replayable_operation_rejects_multi_input_operation
test_validate_replayable_operation_reports_runtime_inputs_in_recipe_spec_context
test_operation_spec_rejects_non_string_mapping_keys
test_rename_channels_method_step_serializes_mapping_as_items
test_rename_channels_method_step_allows_non_mapping_params_through_generic_snapshot
test_rename_channels_method_step_rejects_invalid_mapping_params
test_get_channel_method_step_snapshots_boolean_mask_and_query_mapping
test_get_channel_method_step_rejects_invalid_query_params
test_restore_history_value_handles_negative_infinity_and_nested_nan
test_method_step_rejects_methods_outside_replay_allowlist
test_method_step_rejects_inplace_mutation_params
test_typed_method_step_rejects_methods_outside_replay_allowlist
test_scalar_operation_step_rejects_operations_outside_replay_allowlist
test_scalar_operation_step_rejects_non_numeric_operands
test_scalar_operation_step_rejects_non_bool_reverse_flag_and_serializes_reverse
test_scalar_operation_step_defensive_assertion_for_unreachable_operation
test_binary_operand_step_defensive_assertion_for_unreachable_operation
test_recipe_apply_preserves_dask_laziness
test_recipe_from_frame_extracts_linear_apply_operation_replayable_chain
test_recipe_from_frame_extracts_additional_single_input_apply_operations
test_recipe_from_frame_extracts_ref_bearing_frame_methods
test_ref_bearing_frame_method_recipes_recompute_target_refs
test_recipe_from_frame_extracts_hpss_apply_operations
test_recipe_from_frame_extracts_psychoacoustic_apply_operations
test_recipe_from_frame_extracts_roughness_spec_typed_transition
test_recipe_from_frame_extracts_method_aware_linear_steps
test_fix_length_duration_recipe_extraction_replays_computed_length
test_recipe_from_frame_extracts_channel_difference_method_step
test_channel_difference_recipe_replays_label_intent_on_reordered_channels
test_recipe_from_frame_extracts_channel_selection_method_step
test_get_channel_boolean_mask_recipe_extraction_snapshots_mask
test_get_channel_boolean_mask_step_rejects_non_bool_values
test_get_channel_dict_query_recipe_extraction_snapshots_query
test_get_channel_dict_query_recipe_extraction_rejects_non_builtin_real
test_recipe_from_frame_extracts_remove_channel_method_step
test_recipe_from_frame_extracts_rename_channels_method_step
test_recipe_from_frame_rejects_non_literal_channel_queries
test_recipe_from_frame_extracts_boolean_mask_channel_and_time_indexing
test_getitem_boolean_mask_recipe_extraction_snapshots_mask
test_getitem_label_recipe_replays_single_label_getitem_semantics_with_duplicates
test_getitem_boolean_mask_recipe_extraction_rejects_multidimensional_mask
test_indexing_step_rejects_python_boolean_list
test_recipe_from_frame_rejects_python_boolean_list_indexing
test_getitem_label_list_recipe_extraction_snapshots_labels
test_getitem_integer_list_recipe_extraction_snapshots_indices
test_getitem_integer_array_recipe_extraction_snapshots_indices
test_recipe_from_frame_rejects_legacy_getitem_channel_slice_without_bounds
test_recipe_from_frame_extracts_getitem_channel_selection
test_recipe_from_frame_extracts_multidimensional_slice_indexing
test_recipe_from_frame_rejects_non_slice_multidimensional_indexing_lineage
test_multidimensional_label_indexing_recipe_replays_label_intent_on_reordered_channels
test_recipe_from_frame_extracts_multidimensional_slice_after_operation
test_indexing_step_normalizes_multidimensional_slices
test_recipe_from_frame_extracts_scalar_operation_chain
test_recipe_from_frame_extracts_value_bearing_numpy_scalar_operation
test_recipe_from_frame_extracts_reverse_numeric_scalar_operations
test_numpy_array_left_operator_remains_outside_frame_recipe_boundary
test_recipe_from_frame_reports_scalar_nan_operand_boundary
test_recipe_from_frame_extracts_scalar_operation_symbols
test_recipe_from_frame_extracts_fft_typed_transition
test_recipe_from_frame_rejects_direct_apply_operation_typed_transition
test_recipe_from_frame_extracts_fft_ifft_typed_transition_chain
test_recipe_from_frame_extracts_stft_istft_typed_transition_chain
test_recipe_from_frame_extracts_stft_typed_transition
test_recipe_from_frame_extracts_stft_get_frame_at_typed_transition_chain
test_recipe_from_frame_extracts_welch_typed_transition
test_recipe_from_frame_extracts_noct_spectrum_typed_transition
test_recipe_from_frame_extracts_noct_synthesis_typed_transition
test_recipe_from_frame_rejects_welch_with_non_public_detrend
test_recipe_from_frame_extracts_cross_channel_typed_transitions
test_recipe_from_frame_extracts_spectrogram_abs_chain
test_recipe_from_frame_extracts_spectrogram_to_channel_frame_as_istft
test_recipe_from_frame_empty_history_returns_linear_recipe
test_recipe_from_frame_reports_current_boundary_for_non_replayable_operations
test_recipe_from_frame_rejects_non_frame_input
test_recipe_from_frame_rejects_fake_operation_graph_holder
test_recipe_from_frame_reports_graph_recipe_boundary_for_multi_input_operation
test_recipe_from_frame_reports_explicit_graph_extractors_for_binary_merge
test_recipe_from_frame_reports_node_graph_extractor_for_external_operand
test_recipe_from_frame_rejects_add_channel_boundary
