Skip to content

Component Test Specification / コンポーネント別テスト仕様書

This is a review of assertions in the current test suite, not a claim that every listed test passed on every platform. It maps observable contracts to tests and records the conditions under which tests run. No public API or schema change is proposed. これは現行テストの assertion の照合結果です。全環境での成功を意味しません。 観測可能な契約とテストを対応付け、実行条件を示します。公開 API・schema の変更は提案しません。

The generated API reference and Python docstrings define signatures, exceptions, units, and numerical behavior. Also see the compatibility policy, I/O contracts, and Frame extension guide. signature、例外、単位、数値挙動の正本は API reference と Python docstring です。互換性方針、 I/O 契約、Frame 拡張ガイドも参照してください。

Reading the cases / ケースの読み方

Each row specifies exactly one observable behavior with an ID, input or condition, expected result, existing test assertion, and coverage. File links lead to the test; the function name identifies the particular assertion to inspect. Confirmed / 確認済み means the named test asserts the stated result for the stated condition. Partial / 一部確認 means the cited assertion covers only part of the condition; the missing assertion follows the table. Unverified / 未確認 means no matching assertion was found in this review. A test file's existence alone is not evidence. 各行は ID と観測可能な振る舞いを一対一で対応させ、入力・条件、期待結果、既存テスト、充足状況を示します。 「確認済み」は記載条件の結果を assertion で確認した状態、「一部確認」は条件の一部のみ、 「未確認」は該当 assertion を見つけられなかった状態です。ファイルの存在だけでは充足としません。

The TensorFlow GPU assertion runs only where a GPU is available; it is skipped in CPU-only environments. TensorFlow GPU の assertion は GPU がある環境でのみ実行され、CPU のみの環境では skip されます。

Core / 基盤 (wandas/core)

ID Behavior / 振る舞い Input / 条件 Expected / 期待結果 Existing assertion / 既存テスト Coverage / 充足
C-01a Binary lineage order / 二項 lineage の順序 Two Frame operands / 2つの Frame Both parents retain operand order / 両親 node が演算順に並ぶ test_base_frame_lineage.py test_frame_binary_operation_preserves_operand_order_and_both_parents Confirmed / 確認済み
C-01b History projection / 履歴の投影 Mutate a returned operation_history / 取得した履歴を書き換える The next history read is unchanged / 次に取得した履歴は変わらない test_base_frame_lineage.py test_operation_history_projection_is_defensive Confirmed / 確認済み
C-01c Unary lineage node / 単項 lineage node Apply normalize once / normalize を1回実行 One semantic operation node is recorded / 意味的な処理 node を1つ記録 test_base_frame_lineage.py test_unary_operation_uses_one_semantic_node_for_history_and_recipe Confirmed / 確認済み
C-01d Recipe parameter identity / Recipe parameter の同一性 Extract Recipe after unary operation / 単項処理後に Recipe 抽出 Recipe uses the lineage operation parameters / Recipe が lineage の処理 parameter を使用 test_base_frame_lineage.py test_unary_operation_uses_one_semantic_node_for_history_and_recipe Confirmed / 確認済み
C-01e Shared-branch history / 共有 branch の履歴 Merge branches from one processed ancestor / 処理済みの共通祖先から分岐して結合 Ancestor operation appears once in history / 共通祖先の処理が履歴に一度だけ現れる test_channel_processing.py test_mix_shared_lineage_history_lists_shared_branch_once Confirmed / 確認済み
C-01f Independent-branch history order / 独立 branch の履歴順 Merge independent branches / 独立 branch を結合 History preserves branch order / 履歴が branch 順を保持 test_base_frame_lineage.py test_depth_first_history_keeps_independent_branch_order Confirmed / 確認済み
C-01g Frozen history arguments / 履歴引数の固定 Mutate mapping after rename_channels / 呼出し後に mapping を変更 Recorded history stays unchanged / 記録済み履歴は変わらない test_base_frame_lineage.py test_history_params_are_frozen_at_public_call_entry Confirmed / 確認済み
C-01h Frozen Recipe arguments / Recipe 引数の固定 Mutate mapping after rename_channels / 呼出し後に mapping を変更 Extracted Recipe stays unchanged / 抽出 Recipe は変わらない test_base_frame_lineage.py test_history_params_are_frozen_at_public_call_entry Confirmed / 確認済み
C-01i Lazy history read / 履歴参照の遅延性 Read history of delayed operation / 遅延処理の履歴を参照 Source samples are not computed / source sample を計算しない test_base_frame_lineage.py test_public_operation_and_history_access_do_not_compute Confirmed / 確認済み
C-01j Lazy Recipe extraction / Recipe 抽出の遅延性 Extract Recipe from delayed operation / 遅延処理から Recipe 抽出 Source samples are not computed / source sample を計算しない test_base_frame_lineage.py test_public_operation_and_history_access_do_not_compute Confirmed / 確認済み
C-01k Persisted history continuation / 保存履歴の継続 Process a Frame with source history prefix / 履歴 prefix 付き Frame を処理 Display history retains prefix before new operation / 表示履歴は新処理の前に prefix を保持 test_base_frame_lineage.py test_source_history_prefix_is_copied_and_extended_without_executable_recipe Confirmed / 確認済み
C-01l Persisted history Recipe boundary / 保存履歴と Recipe の境界 Extract Recipe from Frame with history prefix / 履歴 prefix 付き Frame から Recipe 抽出 Prefix does not become executable node / prefix は実行 node にならない test_base_frame_lineage.py test_source_history_prefix_is_copied_and_extended_without_executable_recipe Confirmed / 確認済み
C-05a Lazy FFT construction / FFT 構築の遅延性 Build FFT Frame / FFT Frame を構築 Source samples are not computed / source sample を計算しない test_xarray_storage_only.py test_transform_methods_remain_lazy Confirmed / 確認済み
C-05b Lazy STFT construction / STFT 構築の遅延性 Build STFT Frame / STFT Frame を構築 Source samples are not computed / source sample を計算しない test_xarray_storage_only.py test_transform_methods_remain_lazy Confirmed / 確認済み
C-02a Channel metadata alignment / channel metadata の整列 Reorder selected channels / channel を並べ替える Metadata follows the selected channels / metadata が選択後の channel に対応する test_channel_metadata_xarray.py test_channel_selection_reorder_keeps_metadata_aligned_and_filters_extra Confirmed / 確認済み
C-02b Metadata input ownership / metadata 入力の所有 Pass caller-owned extra mapping / 入力辞書を渡す Later caller mutation does not change stored metadata / 入力側の変更が保存値へ波及しない test_metadata.py test_extra_dict_is_copied_from_caller_input Confirmed / 確認済み
C-03a Level calculation / レベル計算 Zero, signed or complex amplitude / 零・負・複素振幅 Level uses the amplitude magnitude / 振幅の絶対値で計算する test_level_reference.py test_to_level_handles_scalar_array_zero_signed_and_complex_amplitudes Confirmed / 確認済み
C-03b Level reference validation / 基準値検証 Nonpositive or nonfinite reference / 非正・非有限の基準値 Construction rejects the reference / 生成時に拒否する test_level_reference.py test_level_reference_rejects_non_positive_or_non_finite_reference Confirmed / 確認済み
C-04a Torch CPU conversion / Torch CPU 変換 Request CPU tensor / CPU tensor を要求 Tensor values equal Frame data / tensor 値が Frame data と一致 test_base_frame_tensor.py test_to_tensor_pytorch_cpu_explicit_correct_values Confirmed / 確認済み
C-04d TensorFlow GPU placement / TensorFlow GPU 配置 GPU available / GPU が使用可能 Tensor resides on requested GPU / 指定 GPU 上に配置 test_base_frame_tensor.py test_to_tensor_tensorflow_gpu_skips_if_unavailable Confirmed / 確認済み

Frames / Frame 群 (wandas/frames)

ID Behavior / 振る舞い Input / 条件 Expected / 期待結果 Existing assertion / 既存テスト Coverage / 充足
F-01a Annotation result type / 注釈更新後の型 Update annotations on each Frame family / 各 Frame の注釈を更新 Result retains its family / 結果の型を保持 test_frame_immutable_state.py test_annotation_updates_preserve_every_frame_family Confirmed / 確認済み
F-01e Annotation data graph / 注釈更新後の data graph Update annotations / 注釈を更新 Result shares the original lazy data graph / 結果が元の遅延 data graph を共有 test_frame_immutable_state.py test_annotation_updates_preserve_every_frame_family Confirmed / 確認済み
F-01f Annotation channel IDs / 注釈更新後の channel ID Update annotations / 注釈を更新 Stable channel IDs survive / 安定 channel ID を保持 test_frame_immutable_state.py test_annotation_updates_preserve_every_frame_family Confirmed / 確認済み
F-01g Annotation source offset / 注釈更新後の source offset Update annotations / 注釈を更新 Source time offset survives / 元時刻 offset を保持 test_frame_immutable_state.py test_annotation_updates_preserve_every_frame_family Confirmed / 確認済み
F-01h Annotation lineage / 注釈更新後の lineage Update annotations / 注釈を更新 Lineage identity survives / lineage の同一性を保持 test_frame_immutable_state.py test_annotation_updates_preserve_every_frame_family Confirmed / 確認済み
F-01i Annotation history / 注釈更新後の履歴 Update annotations / 注釈を更新 History stays unchanged / 履歴は変わらない test_frame_immutable_state.py test_annotation_updates_preserve_every_frame_family Confirmed / 確認済み
F-01j Annotation analysis state / 注釈更新後の解析状態 Update a derived Frame's annotations / 派生 Frame の注釈を更新 Analysis configuration survives / 解析設定を保持 test_frame_immutable_state.py test_annotation_updates_preserve_every_frame_family Confirmed / 確認済み
F-01d Metadata update source immutability / metadata 更新元の不変性 Call with_metadata / with_metadata を呼ぶ Original Frame metadata stays unchanged / 元の Frame metadata は不変 test_frame_immutable_state.py test_with_metadata_deep_copies_caller_value_once_at_reconstruction_boundary Confirmed / 確認済み
F-01b Nested snapshot isolation / 入れ子値の分離 Mutate a returned metadata snapshot / 取得した metadata を変更 Stored Frame metadata stays unchanged / 保存値は変わらない test_frame_immutable_state.py test_public_mutable_paths_are_read_only_and_nested_snapshots_are_detached Confirmed / 確認済み
F-01c Sampling-rate immutability / sampling rate の不変性 Assign sampling rate on a Frame / sampling rate を代入 Assignment is rejected / 代入を拒否 test_frame_immutable_state.py test_sampling_rate_assignment_is_read_only_for_every_frame_family Confirmed / 確認済み
F-02a Cache reuse / cache 再利用 Materialize cached Dask Frame repeatedly / cache 後に繰り返し materialize Source computes once / source の計算は一度 test_frame_cache.py test_cache_computes_source_once_and_reuses_it_for_materialization_and_operations Confirmed / 確認済み
F-02b Lazy operation after cache / cache 後の遅延処理 Apply an operation to cached Frame / cache 後に処理 Operation stays lazy / 処理は遅延のまま test_frame_cache.py test_audio_operation_after_cache_is_lazy_and_does_not_rerun_source Confirmed / 確認済み
F-02c Cache calibration / cache の校正 Cache calibrated raw samples / 校正付き raw data を cache Calibration is applied exactly once / 校正を一度だけ適用 test_frame_cache.py test_cache_keeps_raw_samples_so_calibration_is_not_applied_twice Confirmed / 確認済み
F-02d Cache lineage identity / cache の lineage 同一性 Call cache() / cache() を呼ぶ Lineage object is retained / lineage object を保持 test_frame_cache.py test_cache_does_not_add_lineage_history_or_recipe_nodes Confirmed / 確認済み
F-02e Cache history / cache の履歴 Call cache() / cache() を呼ぶ History is unchanged / 履歴は変わらない test_frame_cache.py test_cache_does_not_add_lineage_history_or_recipe_nodes Confirmed / 確認済み
F-02f Cache Recipe plan / cache の Recipe plan Call cache() / cache() を呼ぶ Extracted plan is unchanged / 抽出 plan は変わらない test_frame_cache.py test_cache_does_not_add_lineage_history_or_recipe_nodes Confirmed / 確認済み
F-02g Cached sample ownership / cache sample の所有 Mutate caller array after caching / cache 後に入力配列を変更 Cached values stay unchanged / cache 値は変わらない test_frame_cache.py test_cache_owns_samples_and_materializations_cannot_mutate_it Confirmed / 確認済み
F-02h Cached materialization isolation / cache materialize の分離 Mutate returned data / 取得した data を変更 Cached values stay unchanged / cache 値は変わらない test_frame_cache.py test_cache_owns_samples_and_materializations_cannot_mutate_it Confirmed / 確認済み
F-02i Cache failure data identity / cache 失敗時の data identity Source compute raises / source 計算が失敗 Original _data identity is retained / 元の _data identity を保持 test_frame_cache.py test_cache_propagates_compute_failures_without_changing_source Confirmed / 確認済み
F-02j Cache failure lineage identity / cache 失敗時の lineage identity Source compute raises / source 計算が失敗 Original lineage identity is retained / 元の lineage identity を保持 test_frame_cache.py test_cache_propagates_compute_failures_without_changing_source Confirmed / 確認済み
F-02k Cache failure metadata / cache 失敗時の metadata Source compute raises / source 計算が失敗 Original metadata is retained / 元の metadata を保持 test_frame_cache.py test_cache_propagates_compute_failures_without_changing_source Confirmed / 確認済み
F-06a Calibration replacement / 校正値の置換 Replace channel factor twice / 係数を2回置換 Factors do not compound / 係数を累積しない test_channel_calibration.py test_calibration_replacement_never_compounds_and_preserves_frame_state Confirmed / 確認済み
F-06b Calibration after reorder / 並べ替え後の校正 Select channels in new order / channel を並べ替える Factors follow selected channels / 係数が選択 channel に対応 test_channel_calibration.py test_selection_and_reordering_keep_calibration_aligned Confirmed / 確認済み
F-06c Calibrated RMS / 校正後 RMS Call RMS on calibrated Frame / 校正後に RMS を計算 RMS equals equivalent physical signal / 物理量に変換した信号の RMS と一致 test_channel_calibration.py test_data_rms_fft_stft_and_sound_level_use_calibrated_values Confirmed / 確認済み
F-06d Calibrated FFT / 校正後 FFT Call FFT on calibrated Frame / 校正後に FFT を計算 Spectrum equals equivalent physical signal / 物理量に変換した信号の spectrum と一致 test_channel_calibration.py test_data_rms_fft_stft_and_sound_level_use_calibrated_values Confirmed / 確認済み
F-06e Calibrated STFT / 校正後 STFT Call STFT on calibrated Frame / 校正後に STFT を計算 Spectrogram equals equivalent physical signal / 物理量に変換した信号の spectrogram と一致 test_channel_calibration.py test_data_rms_fft_stft_and_sound_level_use_calibrated_values Confirmed / 確認済み
F-06f Calibrated sound level / 校正後 sound level Call sound level on calibrated Frame / 校正後に sound level を計算 Level equals equivalent physical signal / 物理量に変換した信号の level と一致 test_channel_calibration.py test_data_rms_fft_stft_and_sound_level_use_calibrated_values Confirmed / 確認済み
F-03a Spectral property shape / スペクトル値の形状 One or multiple channels / 1・複数 channel Public values match the documented rank / 公開値の rank が契約と一致 test_spectral_property_shapes.py test_manual_spectral_properties_match_public_data_shape_and_values Confirmed / 確認済み
F-03b Empty spectral shape / 空 spectrum の形状 Zero channels / 0 channel Public values keep the expected empty shape / 公開値は所定の空形状 test_spectral_property_shapes.py test_zero_channel_spectral_levels_preserve_empty_public_shapes Confirmed / 確認済み
F-03c dB reference per channel / channel ごとの dB 基準 Different channel references / channel ごとに異なる基準 Each channel uses its own reference / 各 channel の基準を使用 test_spectral_property_shapes.py test_db_reference_broadcast_is_channel_specific Confirmed / 確認済み
F-04a CSD result type / CSD 結果の型 Public CSD call / CSD を呼ぶ Result is CrossSpectralFrame / CrossSpectralFrame を返す test_pairwise_frames.py test_public_pairwise_operations_return_exact_dedicated_types_and_stay_lazy Confirmed / 確認済み
F-04d Transfer result type / transfer 結果の型 Public transfer call / transfer を呼ぶ Result is TransferFunctionFrame / TransferFunctionFrame を返す test_pairwise_frames.py test_public_pairwise_operations_return_exact_dedicated_types_and_stay_lazy Confirmed / 確認済み
F-04e Coherence result type / coherence 結果の型 Public coherence call / coherence を呼ぶ Result is CoherenceFrame / CoherenceFrame を返す test_pairwise_frames.py test_public_pairwise_operations_return_exact_dedicated_types_and_stay_lazy Confirmed / 確認済み
F-04b Pairwise numeric values / channel 間の数値 Deterministic pairwise signal / 既知の channel 間信号 Values match independent SciPy oracles / 独立 SciPy 計算と一致 test_pairwise_frames.py test_public_pairwise_values_match_reused_independent_scipy_oracles Confirmed / 確認済み
F-04c Pairwise constructor validation / channel 間 constructor 検証 Mismatched domain or channel IDs / 不整合な domain・ID Constructor rejects the state / 生成時に拒否 test_pairwise_frames.py test_pairwise_constructor_rejects_typed_domain_and_channel_id_mismatches Confirmed / 確認済み
F-05a Analysis-state immutability / 解析条件の不変性 Assign spectrogram analysis parameter / 解析条件へ代入 Assignment is rejected / 代入を拒否 test_spectral_analysis_state.py test_analysis_parameters_reject_assignment Confirmed / 確認済み
F-05b WDF analysis-state round trip / WDF 解析条件の往復 Reconstruct via WDF / WDF から再構築 Analysis parameters survive / 解析条件を保持 test_spectral_analysis_state.py test_analysis_state_survives_reconstruction_wdf_and_recipe Confirmed / 確認済み
F-05c Recipe analysis-state replay / Recipe 解析条件の再実行 Replay Recipe / Recipe を再実行 Analysis parameters survive / 解析条件を保持 test_spectral_analysis_state.py test_analysis_state_survives_reconstruction_wdf_and_recipe Confirmed / 確認済み

Processing / 数値処理 (wandas/processing)

ID Behavior / 振る舞い Input / 条件 Expected / 期待結果 Existing assertion / 既存テスト Coverage / 充足
P-01a Low-pass cutoff validation / low-pass cutoff 検証 Cutoff above Nyquist / Nyquist 超の cutoff Construction raises an error / 生成時に例外 test_filter_operations.py test_lowpass_cutoff_above_nyquist_raises_error Confirmed / 確認済み
P-01b Low-pass numerical accuracy / low-pass 数値精度 Known composite signal / 既知の合成信号 Output matches SciPy sosfiltfilt / SciPy sosfiltfilt と一致 test_filter_operations.py test_lowpass_matches_scipy_sosfiltfilt Confirmed / 確認済み
P-01c High-pass numerical accuracy / high-pass 数値精度 Known composite signal / 既知の合成信号 Output matches SciPy sosfiltfilt / SciPy sosfiltfilt と一致 test_filter_operations.py test_highpass_matches_scipy_sosfiltfilt Confirmed / 確認済み
P-01d Band-pass numerical accuracy / band-pass 数値精度 Known composite signal / 既知の合成信号 Output matches SciPy sosfiltfilt / SciPy sosfiltfilt と一致 test_filter_operations.py test_bandpass_matches_scipy_sosfiltfilt Confirmed / 確認済み
P-02a Inverse STFT accuracy / 逆 STFT の精度 Complex spectrum / 複素 spectrum Reconstructed signal matches independent SciPy oracle / 独立 SciPy 計算と一致 test_istft_independent_oracle.py test_istft_process_matches_independent_scipy_oracle Confirmed / 確認済み
P-02b Inverse STFT length / 逆 STFT の長さ Reconstruct with length=N / length=N で復元 Result equals the first N oracle samples / 結果が oracle の先頭 N sample と一致 test_istft_independent_oracle.py test_istft_process_trims_only_at_the_operation_boundary Confirmed / 確認済み
P-03a Lazy metadata accuracy / 遅延 metadata の精度 Operation before and after compute / 処理の計算前後 Declared metadata matches computed result / 宣言値と計算結果が一致 test_operation_lazy_metadata_contract.py test_operation_lazy_metadata_matches_computed_result Confirmed / 確認済み
P-03b Registered-operation coverage / 登録処理の網羅 Operation registry / 処理 registry Every registered operation has a metadata case / 全登録処理に metadata ケースがある test_operation_lazy_metadata_contract.py test_operation_lazy_metadata_contract_covers_every_registered_operation Confirmed / 確認済み
P-04a Filter chunk invariance of values / filter 値の chunk 非依存性 Same signal under single and split chunks / 同一信号を単一・分割 chunk で処理 Computed values are equivalent / 計算値が一致 test_filter_operations.py test_lowpass_values_are_independent_of_sample_chunks Confirmed / 確認済み
P-05a FFT amplitude oracle / FFT 振幅の oracle Known cosine with declared FFT window / 既知余弦波と指定窓 Amplitude matches NumPy rfft reference / NumPy rfft 基準と一致 test_spectral_operations.py test_fft_amplitude_matches_numpy_rfft_reference Confirmed / 確認済み
P-08a A-weighting response / A-weighting 応答 Impulse at three frequency probes / 3つの周波数 probe Response matches expected A curve / A 曲線の期待応答と一致 test_filter_operations.py test_aweighting_impulse_frequency_response_100hz_1khz_10khz Confirmed / 確認済み
P-08b Zwst loudness oracle / Zwst loudness oracle Deterministic signal / 既知信号 Zwst loudness matches direct Mosqito result / Zwst loudness が Mosqito 直接計算と一致 test_psychoacoustic_operations.py TestLoudnessZwst.test_comparison_with_mosqito_direct Confirmed / 確認済み
P-08c Dw roughness oracle / Dw roughness oracle Deterministic signal / 既知信号 Dw roughness matches direct Mosqito result / Dw roughness が Mosqito 直接計算と一致 test_psychoacoustic_operations.py TestRoughnessDw.test_comparison_with_mosqito_direct Confirmed / 確認済み
P-08d DIN sharpness oracle / DIN sharpness oracle Deterministic signal / 既知信号 DIN sharpness matches direct Mosqito result / DIN sharpness が Mosqito 直接計算と一致 test_psychoacoustic_operations.py TestSharpnessDin.test_comparison_with_mosqito_direct Confirmed / 確認済み
P-05b Odd-size FFT final bin / 奇数長 FFT の最終 bin Odd n_fft / 奇数 n_fft Last positive bin has expected amplitude / 最終正周波数 bin の振幅が一致 test_spectral_operations.py test_fft_odd_size_scales_last_positive_frequency_bin Confirmed / 確認済み
P-05c STFT numerical oracle / STFT 数値 oracle Deterministic signal / 既知信号 STFT matches SciPy reference / SciPy 基準と一致 test_spectral_operations.py test_stft_content_matches_scipy_reference Confirmed / 確認済み
P-05d STFT inverse round trip / STFT 逆変換往復 STFT followed by inverse STFT / STFT 後に逆変換 Reconstructed samples match input / 復元 sample が入力と一致 test_spectral_operations.py test_stft_istft_roundtrip_reconstruction Confirmed / 確認済み
P-05e Welch numerical oracle / Welch 数値 oracle Deterministic signal / 既知信号 Spectrum matches SciPy Welch / SciPy Welch と一致 test_spectral_operations.py test_matches_scipy_welch_reference Confirmed / 確認済み
P-05f NOct numerical oracle / NOct 数値 oracle Mono signal / mono 信号 Bands match Mosqito reference / 帯域値が Mosqito 基準と一致 test_spectral_operations.py test_mono_matches_mosqito_noct_spectrum Confirmed / 確認済み
P-06a Resampling length / resample 後の長さ 44.1 kHz to 48 kHz / 44.1 kHz から 48 kHz Output length matches rate conversion / 出力長が rate 変換と一致 test_temporal_operations.py test_resampling_standard_44100_to_48000_exact_length Confirmed / 確認済み
P-06b Resampling frequency / resample 後の周波数 Resample known sine / 既知正弦波を resample Peak frequency is retained / peak 周波数を保持 test_temporal_operations.py test_resampling_preserves_peak_frequency Confirmed / 確認済み
P-07a RMS trend silence floor / 無音 RMS trend floor Silence with dB output / 無音の dB 出力 Level equals documented floor / 仕様の floor と一致 test_temporal_operations.py test_rms_trend_db_silence_uses_documented_floor Confirmed / 確認済み
P-07b Sound-level silence floor / 無音 sound level floor Silence with dB output / 無音の dB 出力 Level equals documented floor / 仕様の floor と一致 test_temporal_operations.py test_sound_level_db_silence_uses_documented_floor Confirmed / 確認済み
P-07c RMS trend range safety / RMS trend の極値 Extreme signal or reference magnitude / 極端な信号・基準値 dB result retains expected finite range / dB 結果が期待範囲に収まる test_temporal_operations.py test_rms_trend_db_is_range_safe_on_signal_and_reference_sides Confirmed / 確認済み
P-07d Sound-level range safety / sound level の極値 Extreme signal or reference magnitude / 極端な信号・基準値 dB result retains expected finite range / dB 結果が期待範囲に収まる test_temporal_operations.py test_sound_level_db_is_range_safe_on_signal_and_reference_sides Confirmed / 確認済み

Pipeline / Recipe (wandas/pipeline)

ID Behavior / 振る舞い Input / 条件 Expected / 期待結果 Existing assertion / 既存テスト Coverage / 充足
R-01a Canonical Recipe JSON / 正規 Recipe JSON Serialize schema 3 plan / schema 3 を serialize JSON representation is deterministic / JSON が決定的 test_recipe_serialization.py test_schema_3_serialization_is_deterministic_and_strict_json Confirmed / 確認済み
R-01b Unsupported Recipe schema / 未対応 Recipe schema Missing, old or future version / version 欠損・旧版・将来版 Loader explicitly rejects the payload / loader が明示的に拒否 test_recipe_serialization.py test_loader_rejects_unsupported_schema_versions Confirmed / 確認済み
R-01c Recipe float encoding / Recipe の小数表現 Write schema 3, read schema 2 / schema 3 を書き schema 2 を読む Finite floats are JSON numbers; schema 2 tagged floats load to the same plan / 有限の小数は JSON の数値、schema 2 のタグ付き小数は同じ plan として読める test_recipe_serialization.py test_schema_3_writes_finite_floats_as_json_numbers_and_reads_schema_2 Confirmed / 確認済み
R-02a Typed Recipe replay / 型付き Recipe 再実行 Extract and replay a Frame transition / Frame 型遷移を抽出・再実行 Result retains its Frame type / 結果の Frame 型を保持 test_recipe_execution.py test_typed_frame_transition_replays_lazily Confirmed / 確認済み
R-02b External input laziness / 外部入力の遅延性 Replay with external Dask input / 外部 Dask 入力で再実行 Input is not computed before user materialization / 明示的な materialize まで計算しない test_recipe_execution.py test_external_numpy_and_dask_inputs_remain_lazy_until_user_compute Confirmed / 確認済み
R-02c Multi-Frame role order / 複数 Frame の役割順 Replay mix with two Frames / 2 Frame の mix を再実行 Operand roles remain ordered / 入力の役割順を保持 test_recipe_execution.py test_mix_replays_true_multi_frame_operation_in_role_order Confirmed / 確認済み
R-03a Recipe extraction error / Recipe 抽出エラー Extract from a non-Frame input / Frame 以外から抽出 Raises RecipeExtractionError / RecipeExtractionError を返す test_recipe_errors.py test_extraction_error_is_distinct_from_validation_and_execution_errors Confirmed / 確認済み
R-03b Recipe execution error / Recipe 実行エラー Replay operation fails / 再実行時に処理が失敗 Raises RecipeExecutionError with node_id, operation, and cause / node_id・operation・cause 付きの RecipeExecutionError を返す test_recipe_errors.py test_executor_reports_operation_failure_with_node_context Confirmed / 確認済み
R-03c Recipe graph validation error / Recipe graph 検証エラー Load a plan with duplicate graph node / 重複 node 付き plan を load Raises RecipeSerializationError / RecipeSerializationError を返す test_recipe_errors.py test_loader_wraps_graph_validation_as_serialization_error Confirmed / 確認済み
R-04a Annotation Recipe node / 注釈の Recipe node Extract Recipe from annotated Frame / 注釈付き Frame から Recipe 抽出 Annotation update does not become an operation node / 注釈更新は処理 node にならない test_frame_state_recipe.py test_annotations_are_not_recipe_intent_and_runtime_annotations_win Confirmed / 確認済み
R-04b Runtime label on replay / 再実行時の label Replay plan with differently labeled input / 異なる label の入力で再実行 Result uses runtime input label / 結果は実行時入力の label を使う test_frame_state_recipe.py test_annotations_are_not_recipe_intent_and_runtime_annotations_win Confirmed / 確認済み
R-04c Runtime metadata on replay / 再実行時の metadata Replay plan with different input metadata / 異なる metadata の入力で再実行 Result uses runtime input metadata / 結果は実行時入力の metadata を使う test_frame_state_recipe.py test_annotations_are_not_recipe_intent_and_runtime_annotations_win Confirmed / 確認済み

I/O / 入出力 (wandas/io)

ID Behavior / 振る舞い Input / 条件 Expected / 期待結果 Existing assertion / 既存テスト Coverage / 充足
I-01a WDF Frame type round trip / WDF の Frame 型往復 Save and load each built-in Frame / 全 built-in Frame を保存・読込 Exact Frame type survives / 正確な型を保持 test_wdf_io.py test_wdf_roundtrips_all_exact_builtin_types Confirmed / 確認済み
I-01b WDF calibration round trip / WDF 校正往復 Calibrated raw data / 校正付き raw data Calibration is applied once after load / 読込後に校正を一度適用 test_wdf_io.py test_wdf_preserves_raw_data_and_applies_calibration_once Confirmed / 確認済み
I-01c WDF history persistence / WDF 履歴永続化 Save a Frame with operation history / 履歴付き Frame を保存 Loaded history equals saved history / 読込後の履歴が保存前と一致 test_wdf_io.py test_operation_history_remains_display_history_not_recipe_lineage Confirmed / 確認済み
I-01d WDF runtime receiver / WDF の実行時 receiver Load a Frame with operation history / 履歴付き Frame を読込 previous is None / previous は None test_wdf_io.py test_operation_history_remains_display_history_not_recipe_lineage Confirmed / 確認済み
I-01e WDF sample values / WDF sample 値 Save and load each built-in Frame / 全 built-in Frame を保存・読込 Values match before and after / 読込前後の値が一致 test_wdf_io.py test_wdf_roundtrips_all_exact_builtin_types Confirmed / 確認済み
I-01f WDF sampling rate / WDF sampling rate Save and load each built-in Frame / 全 built-in Frame を保存・読込 Sampling rate survives / sampling rate を保持 test_wdf_io.py test_wdf_roundtrips_all_exact_builtin_types Confirmed / 確認済み
I-01g WDF label / WDF label Save an annotated Frame / 注釈付き Frame を保存 Frame label survives / Frame label を保持 test_wdf_io.py test_wdf_roundtrips_immutable_annotations_without_recipe_intent Confirmed / 確認済み
I-01h WDF recording metadata / WDF 記録 metadata Save an annotated Frame / 注釈付き Frame を保存 Recording metadata survives / 記録 metadata を保持 test_wdf_io.py test_wdf_roundtrips_immutable_annotations_without_recipe_intent Confirmed / 確認済み
I-01i WDF channel extra / WDF channel extra Save an annotated Frame / 注釈付き Frame を保存 Channel extra survives / channel extra を保持 test_wdf_io.py test_wdf_roundtrips_immutable_annotations_without_recipe_intent Confirmed / 確認済み
I-01j WDF source offset / WDF source offset Save an offset Frame / offset 付き Frame を保存 Source time offset survives / 元時刻 offset を保持 test_wdf_io.py test_wdf_roundtrips_immutable_annotations_without_recipe_intent Confirmed / 確認済み
I-02a WDF schema rejection / WDF schema 拒否 Missing, old or future version / version 欠損・旧版・将来版 Reader raises explicit error / reader が明示的に失敗 test_wdf_io.py test_wdf_rejects_missing_legacy_and_future_versions Confirmed / 確認済み
I-02b WDF coordinate validation / WDF 座標検証 Invalid dimension coordinate / 不正な次元座標 Reader rejects the file / reader が拒否 test_wdf_io.py test_wdf_rejects_invalid_dimension_coordinate Confirmed / 確認済み
I-02c WDF source compute call / WDF source の compute 呼出し Save lazy Frame / 遅延 Frame を保存 Save does not directly call source _data.compute / 保存が source の _data.compute を直接呼ばない test_wdf_io.py test_save_does_not_call_frame_data_compute Confirmed / 確認済み
I-02d WDF loaded backend lifetime / WDF 読込 backend の寿命 Compute after loader returns / loader 終了後に計算 Backend remains computable / 計算可能なまま test_wdf_io.py test_loaded_backend_remains_computable_after_load_returns Confirmed / 確認済み
I-03a WAV PCM normalization / WAV PCM 正規化 Read int16 PCM / int16 PCM を読込 Data is full-scale float64 / full-scale float64 になる test_wav_io.py test_read_wav_int16_pcm_is_full_scale_float64 Confirmed / 確認済み
I-03b WAV float amplitude / WAV float 振幅 Write and read float signal / float 信号を往復 Amplitudes are not clipped / 振幅を clip しない test_wav_io.py test_write_wav_preserves_float_amplitudes_without_clipping Confirmed / 確認済み
I-03c WAV partial-read shape / WAV 部分読込の形状 Partial WAV read / WAV を部分読込 Values remain channel-first / channel-first を維持 test_wav_smoke.py test_wav_partial_read_preserves_channel_first_shape Confirmed / 確認済み
I-04a CSV channel selection / CSV channel 選択 Select and reorder columns / 列を選択・並べ替え Values and labels remain aligned / 値と label が対応 test_csv_selection_and_rates.py test_csv_selection_aligns_values_and_labels Confirmed / 確認済み
I-04b CSV partial-read time / CSV 部分読込の時刻 Fractional rate and partial read / 小数 rate で部分読込 Source time offset is retained / 元の時刻を保持 test_csv_selection_and_rates.py test_csv_fractional_rate_partial_read_retains_source_time Confirmed / 確認済み
I-04c CSV rate validation / CSV rate 検証 Invalid sampling rate / 不正な sampling rate Read fails before indexing / indexing 前に失敗 test_csv_selection_and_rates.py test_csv_invalid_sampling_rate_fails_before_indexing Confirmed / 確認済み
I-05a WAV shape round trip / WAV 形状の往復 Save and reload ordinary WAV / 通常の WAV を往復 Shape survives / 形状を保持 test_wav_io.py test_write_wav_roundtrip_preserves_shape_and_sr Confirmed / 確認済み
I-05c WAV sampling-rate round trip / WAV sampling rate の往復 Save and reload ordinary WAV / 通常の WAV を往復 Sampling rate survives / sampling rate を保持 test_wav_io.py test_write_wav_roundtrip_preserves_shape_and_sr Confirmed / 確認済み
I-05b WAV recording metadata loss / WAV の記録 metadata 欠落 Save and reload a Frame with custom recording metadata / 独自 recording metadata 付き Frame を往復 Custom recording entry is absent after reload / 独自 recording entry は読込後に存在しない test_wav_io.py test_wav_roundtrip_does_not_persist_recording_metadata Confirmed / 確認済み
I-05d WAV explicit read labels / WAV 読込時の指定 label Read WAV with supplied channel labels / label 指定で WAV を読込 Channels use the supplied labels / 指定 label を channel に設定 test_wav_io.py test_read_wav_custom_labels_propagated Confirmed / 確認済み
I-06a FLAC read values / FLAC 読込値 Call wd.read on FLAC / FLAC を wd.read Values match SoundFile reference / SoundFile 基準値と一致 test_file_readers.py test_read_supported_audio_format_matches_soundfile_reference (flac case / flac case) Confirmed / 確認済み
I-06b OGG read values / OGG 読込値 Call wd.read on OGG / OGG を wd.read Values match SoundFile reference / SoundFile 基準値と一致 test_file_readers.py test_read_supported_audio_format_matches_soundfile_reference (ogg-vorbis case / ogg-vorbis case) Confirmed / 確認済み
I-06c AIFF read values / AIFF 読込値 Call wd.read on AIFF / AIFF を wd.read Values match SoundFile reference / SoundFile 基準値と一致 test_file_readers.py test_read_supported_audio_format_matches_soundfile_reference (aiff case / aiff case) Confirmed / 確認済み
I-06d SND read values / SND 読込値 Call wd.read on SND / SND を wd.read Values match SoundFile reference / SoundFile 基準値と一致 test_file_readers.py test_read_supported_audio_format_matches_soundfile_reference (snd-au case / snd-au case) Confirmed / 確認済み
I-06e AU read values / AU 読込値 Call wd.read on AU / AU を wd.read Values match SoundFile reference / SoundFile 基準値と一致 test_file_readers.py test_read_supported_audio_format_matches_soundfile_reference (au case / au case) Confirmed / 確認済み
I-06f OGA read values / OGA 読込値 Call wd.read on OGA / OGA を wd.read Values match SoundFile reference / SoundFile 基準値と一致 test_file_readers.py test_read_supported_audio_format_matches_soundfile_reference (oga-vorbis case / oga-vorbis case) Confirmed / 確認済み
I-06g Opus read values / Opus 読込値 Call wd.read on Opus / Opus を wd.read Values match SoundFile reference within float32 rounding / SoundFile 基準値と float32 丸め内で一致 test_file_readers.py test_read_supported_audio_format_matches_soundfile_reference (opus case / opus case) Confirmed / 確認済み
I-06h MP3 read values / MP3 読込値 Call wd.read on MP3 / MP3 を wd.read Values match SoundFile reference within float32 rounding / SoundFile 基準値と float32 丸め内で一致 test_file_readers.py test_read_supported_audio_format_matches_soundfile_reference (mp3 case / mp3 case) Confirmed / 確認済み
I-06i CAF read values / CAF 読込値 Call wd.read on CAF / CAF を wd.read Values match SoundFile reference / SoundFile 基準値と一致 test_file_readers.py test_read_supported_audio_format_matches_soundfile_reference (caf case / caf case) Confirmed / 確認済み
I-06j W64 read values / W64 読込値 Call wd.read on W64 / W64 を wd.read Values match SoundFile reference / SoundFile 基準値と一致 test_file_readers.py test_read_supported_audio_format_matches_soundfile_reference (w64 case / w64 case) Confirmed / 確認済み
I-06k RF64 read values / RF64 読込値 Call wd.read on RF64 / RF64 を wd.read Values match SoundFile reference / SoundFile 基準値と一致 test_file_readers.py test_read_supported_audio_format_matches_soundfile_reference (rf64 case / rf64 case) Confirmed / 確認済み
I-07a In-memory default format / memory 入力の既定形式 Call wd.read with unnamed bytes / 無名 bytes を wd.read WAV reader is selected / WAV reader を選択 test_read.py test_read_defaults_in_memory_source_to_wav Confirmed / 確認済み
I-07b Named stream dispatch / 名前付き stream の振分け Call wd.read with named file-like input / 名前付き file-like を wd.read Reader follows stream suffix / stream の拡張子で reader を選択 test_read.py test_read_infers_named_file_like_type_and_source_name Confirmed / 確認済み
I-07c URL WAV provenance / URL WAV の provenance Read HTTPS WAV via ChannelFrame.from_file / HTTPS WAV を読込 Source URL appears in Frame provenance / source URL が Frame provenance に入る test_wav_io.py test_from_file_url_wav Confirmed / 確認済み

Visualization / 可視化 (wandas/visualization)

ID Behavior / 振る舞い Input / 条件 Expected / 期待結果 Existing assertion / 既存テスト Coverage / 充足
V-01a Caller axes use / 指定軸の使用 Pass an Axes to waveform plot / 波形 plot に Axes を渡す Artists are drawn on that Axes / 指定 Axes に描く test_plot_ax_behavior.py test_waveform_plot_draws_into_provided_ax Confirmed / 確認済み
V-01b Plot channel labels / plot の channel label Pass custom labels / 独自 label を渡す Displayed labels match input / 表示 label が入力と一致 test_plotting.py test_custom_label_overlay_and_per_channel Confirmed / 確認済み
V-02a CSD plotted values / CSD 表示値 Plot known CSD Frame / 既知 CSD Frame を plot Plotted numeric values match Frame data / 表示値が Frame data と一致 test_pairwise_plotting.py test_csd_frequency_views_plot_exact_numeric_values_and_custom_axes Confirmed / 確認済み
V-02b Sparse pairwise cells / 疎な pairwise cell Plot matrix with absent pairs / 欠けた pair を matrix 表示 Absent cells stay empty / 欠けた cell は空のまま test_pairwise_plotting.py test_pairwise_matrix_plot_uses_typed_output_input_cells_and_leaves_sparse_cells_empty Confirmed / 確認済み
V-02c Unknown pairwise view / 未知の pairwise view Request unsupported view / 非対応 view を指定 Plot API rejects it / plot API が拒否 test_pairwise_plotting.py test_typed_plot_views_reject_unknown_views_and_single_pair_matrix_is_two_dimensional Confirmed / 確認済み
V-04a Core-only describe export / core の describe 画像保存 Save figure with image_save and no IPython / IPython なしで画像を保存 Figure file is written / 図 file を保存 test_optional_dependencies.py test_describe_image_save_without_ipython_does_not_require_marimo_extra Confirmed / 確認済み
V-04b Script display without IPython / IPython なしのスクリプト表示 Display with describe without IPython / IPython なしで describe 表示 Figures shown once with pyplot.show(), then closed / pyplot.show() で一度表示し、その後 close test_optional_dependencies.py test_describe_without_ipython_falls_back_to_pyplot_show Confirmed / 確認済み
V-04c Playback normalization ownership / 再生用正規化の所有 Call describe(normalize=True) / describe(normalize=True) を呼ぶ Original Frame samples stay unchanged / 元の Frame sample は変わらない test_describe.py test_describe_playback_normalization_cannot_mutate_frame_samples Confirmed / 確認済み
V-04d Script display with IPython installed / IPython ありのスクリプト表示 Display with describe outside a notebook / ノートブック外で describe 表示 Figures shown with pyplot.show(), not IPython display reprs / IPython display の文字列ではなく pyplot.show() で図を表示 test_describe.py test_describe_outside_notebook_shows_figures_with_pyplot_even_with_ipython, test_notebook_frontend.py Confirmed / 確認済み
V-04e PyScript display / PyScript での表示 describe and plot with a PyScript output target / PyScript の出力先がある状態で describe と plot Figures and audio players go to pyscript.display(); without a target, behaviour is unchanged / 図と音声プレーヤーを pyscript.display() に出し、出力先がなければ従来どおり test_pyscript_display.py Confirmed / 確認済み

Utils / ユーティリティ (wandas/utils)

ID Behavior / 振る舞い Input / 条件 Expected / 期待結果 Existing assertion / 既存テスト Coverage / 充足
U-01a Rate overflow validation / rate overflow 検証 Finite wide rate normalizes to infinity / 有限だが変換後に無限大 Validation raises ValueError / ValueError を返す test_util.py test_validate_wide_finite_rate_that_normalizes_to_infinity_raises_valueerror Confirmed / 確認済み
U-01b RMS formula / RMS の計算式 Full-period sine / 1周期の正弦波 RMS matches analytic value / 解析値と一致 test_util.py test_rms_full_period_sine_matches_analytical Confirmed / 確認済み
U-01c Amplitude dB formula / 振幅 dB の計算式 Half-reference amplitude / 基準の半分の振幅 Result is approximately −6 dB / 約 −6 dB test_util.py test_amplitude_to_db_half_returns_minus_6db Confirmed / 確認済み
U-02a Dask-backed generator output / 生成結果の Dask 配列 Default generator call / 既定呼出し Returned Frame stores a Dask array / 返却 Frame が Dask 配列を保持 test_generate_sample.py test_defaults_create_one_dask_backed_channel Confirmed / 確認済み
U-02b Generated frequency / 生成周波数 Multiple requested frequencies / 複数の周波数 Each channel's FFT peak matches request / 各 channel の peak が指定値と一致 test_generate_sample.py test_multiple_frequencies_each_channel_peak Confirmed / 確認済み
U-02c Generated-frequency validation / 生成周波数の検証 Nonpositive or nonfinite frequency / 非正・非有限の周波数 Generator gives actionable error / 具体的なエラーを返す test_generate_sample.py test_non_positive_or_non_finite_frequency_has_actionable_error Confirmed / 確認済み
U-03a Dataset lazy loading / dataset の遅延読込 First item access / 初回 access Loader runs on access / access 時に読込 test_frame_dataset.py test_getitem_lazy_triggers_load_and_caches Confirmed / 確認済み
U-03b Dataset transform composition / dataset 変換の合成 Chain two apply calls / apply を連結 Both transforms apply in order / 両変換を順に適用 test_frame_dataset.py test_apply_chaining_composes_transforms Confirmed / 確認済み
U-03c Dataset corrupt-file handling / 破損 file の扱い Load corrupted file / 破損 file を読込 Failure is logged / 失敗を log に記録 test_frame_dataset.py test_load_file_corrupted_returns_none_and_logs_error Confirmed / 確認済み
U-04a Path metadata discovery / path metadata の発見 Construct folder dataset with path_metadata=True / folder dataset を構築 Partition metadata is inferred / partition metadata を推定 test_frame_dataset_metadata.py test_path_metadata_infers_plain_and_hive_partitions_without_loading Confirmed / 確認済み
U-04b Folder discovery laziness / folder 探索の遅延性 Construct path-metadata dataset / path metadata 付き dataset を構築 Waveform reader is not called / 波形 reader を呼ばない test_frame_dataset_metadata.py test_path_metadata_infers_plain_and_hive_partitions_without_loading Confirmed / 確認済み
U-04c Selection laziness / 選択の遅延性 Select dataset by metadata / metadata で dataset を選択 Waveform reader is not called / 波形 reader を呼ばない test_frame_dataset_metadata.py test_select_is_exact_and_lazy_preserves_order_and_metadata Confirmed / 確認済み
U-04d Selection target / 選択対象 Select folder dataset by partition / partition で folder dataset を選択 Selected paths match filter / 選択 path が条件と一致 test_frame_dataset_metadata.py test_path_metadata_select_supports_missing_keys_and_processing Confirmed / 確認済み
U-04e Processed dataset path metadata / 加工後 dataset の path metadata Normalize and STFT before selection / normalize・STFT 後に選択 Selected Frame retains partition metadata / 選択 Frame が partition metadata を保持 test_frame_dataset_metadata.py test_path_metadata_select_supports_missing_keys_and_processing Confirmed / 確認済み
U-04f Unselected-file execution / 未選択 file の実行 Select then materialize one file / 選択後に1 file を materialize No unselected waveform is loaded / 未選択波形は読まない test_frame_dataset_metadata.py test_select_then_process_loads_only_selected_waveform Confirmed / 確認済み

Datasets / 同梱データ (wandas/datasets)

ID Behavior / 振る舞い Input / 条件 Expected / 期待結果 Existing assertion / 既存テスト Coverage / 充足
D-01a Sample shape / sample の形状 Default sample load / 既定読込 Shape matches the bundled signal contract / 同梱信号の形状と一致 test_sample_data.py test_load_sample_signal_shape Confirmed / 確認済み
D-01b Sample dtype / sample の dtype Default sample load / 既定読込 Dtype matches the bundled signal contract / 同梱信号の dtype と一致 test_sample_data.py test_load_sample_signal_dtype Confirmed / 確認済み
D-01c Sample frequency / sample の周波数 Default sample load / 既定読込 Measured frequency matches the bundled signal / 同梱信号の周波数と一致 test_sample_data.py test_load_sample_signal_frequency Confirmed / 確認済み
D-01d Sample amplitude / sample の振幅 Default sample load / 既定読込 Measured amplitude matches the bundled signal / 同梱信号の振幅と一致 test_sample_data.py test_load_sample_signal_amplitude Confirmed / 確認済み

Cross-cutting / 横断領域

ID Behavior / 振る舞い Input / 条件 Expected / 期待結果 Existing assertion / 既存テスト Coverage / 充足
X-01a Top-level export set / トップレベル公開名 Inspect wandas.__all__ / wandas.__all__ を確認 It contains the curated primary API / 指定された主 API を含む test_init.py test_top_level_all_is_curated_primary_api Confirmed / 確認済み
X-01b Deprecated import warning / 旧 import の警告 Use from_ndarray / from_ndarray を使用 Deprecation warning is emitted / 廃止予定警告を出す test_init.py test_from_ndarray_remains_deprecated_compatibility_helper Confirmed / 確認済み
X-01c Public docstrings / 公開 docstring Import public exports / 公開名を import Each has documentation / docstring が存在 test_public_docstrings.py test_public_exports_are_importable_and_documented Confirmed / 確認済み
X-02a Core-only analysis import / analysis 依存なし import Omit optional analysis and sklearn packages / optional package を除く wandas imports / wandas を import できる test_optional_dependencies.py test_import_wandas_without_optional_analysis_or_sklearn_dependencies Confirmed / 確認済み
X-02b Core-only waveform operations / I/O 依存なし波形処理 Omit I/O packages / I/O package を除く Basic waveform operation works / 基本波形処理を実行できる test_optional_dependencies.py test_import_wandas_and_basic_waveform_ops_without_io_dependencies Confirmed / 確認済み
X-02c Missing I/O extra hint / I/O extra 案内 Save or load WDF without h5netcdf or h5py / h5netcdf または h5py なしで WDF 保存・読み込み Error names the I/O extra / 例外が I/O extra を案内 test_optional_dependencies.py test_wdf_missing_io_dependency_has_io_extra_hint Confirmed / 確認済み
X-02d Missing effects extra / effects extra 欠損 Initialize HPSS without librosa / librosa なしで HPSS 初期化 Error names effects extra / 例外が effects extra を案内 test_optional_dependencies.py test_hpss_harmonic_missing_librosa_effects_raises_at_init Confirmed / 確認済み
X-02e Missing psychoacoustic extra / psychoacoustic extra 欠損 Request psychoacoustic operation without Mosqito / Mosqito なしで処理を要求 Error names psychoacoustic extra / 例外が psychoacoustic extra を案内 test_optional_dependencies.py test_psychoacoustic_missing_mosqito_has_extra_hint Confirmed / 確認済み
X-02f Missing ML extra / ML extra 欠損 Convert to Torch tensor without Torch / Torch なしで変換 Error names ML extra / 例外が ML extra を案内 test_base_frame_tensor.py test_to_tensor_pytorch_missing_raises_import_error Confirmed / 確認済み
X-03a Documentation navigation / 文書 nav MkDocs navigation targets / MkDocs nav の参照先 All targets exist / 参照先が存在 test_docs_links.py test_mkdocs_nav_targets_exist Confirmed / 確認済み
X-03b README examples / README 例 Execute README Python blocks / README の Python block を実行 Blocks complete / block が完走 test_readme_examples.py test_readme_python_code_blocks_execute Confirmed / 確認済み
X-03c Learning-path examples / 教材の例 Run checked-in lessons offline / 教材を offline 実行 Lessons complete with bundled fixtures / 同梱 fixture で完走 test_learning_path_executable_contracts.py test_learning_apps_execute_offline_with_checked_in_fixtures Confirmed / 確認済み
X-04a Product-path CI routing / product 差分の CI 経路 Change product or configuration path / product・設定 path を変更 Required checks are selected / 必要 check を選択 test_ci_route.py test_product_and_configuration_paths_select_required_checks Confirmed / 確認済み
X-04b Unknown-path CI routing / 未知 path の CI 経路 Empty or unknown changed-path set / 空・未知 path Full check set is selected / 全 check を選択 test_ci_route.py test_unknown_or_empty_paths_select_everything Confirmed / 確認済み
X-04c Full-lane matrix / full lane の matrix Full compatibility workflow / full compatibility workflow Ten environment entries remain / 10環境の matrix を保持 test_ci_route.py test_full_lane_preserves_the_ten_environment_compatibility_matrix Confirmed / 確認済み
X-05b Pyodide collection skip handling / Pyodide 収集 skip Collection-time skip / 収集時 skip Lane fails / lane が失敗 test_pytest_plugin.py test_collection_time_skip_fails_the_pyodide_session Confirmed / 確認済み

Public workflow checkpoints / 公開ワークフローの確認点

These cases follow the steps users combine in the README and tutorial. A passing component test does not by itself prove the composed result. README と tutorial の操作連鎖を対象にします。 個別 component の成功だけで連鎖後の結果を確認済みとはしません。

ID Behavior / 振る舞い Input / 条件 Expected / 期待結果 Existing assertion / 既存テスト Coverage / 充足
W-01a Cleanup chain history: DC removal / 加工連鎖履歴の DC 除去 from_numpy().remove_dc().low_pass_filter() History records remove_dc / 履歴に remove_dc を記録 test_remove_dc.py test_remove_dc_method_chaining_with_filter Confirmed / 確認済み
W-01b Cleanup chain history: low-pass / 加工連鎖履歴の low-pass from_numpy().remove_dc().low_pass_filter() History records wandas.audio.lowpass_filter / 履歴に wandas.audio.lowpass_filter を記録 test_remove_dc.py test_remove_dc_method_chaining_with_filter Confirmed / 確認済み
W-02 Loaded cleanup spectrum / 読込・加工後の spectrum read → remove_dc → low_pass_filter → fft on known audio / 既知音声の連鎖 FFT peak remains at the known passband frequency / FFT peak が既知の通過帯域周波数にある test_public_workflows.py test_read_cleanup_fft_retains_known_passband_peak Confirmed / 確認済み
W-02a Cleanup removes DC / 加工連鎖で DC を除去 read → remove_dc → low_pass_filter → fft on audio with DC / DC 付き音声の連鎖 DC bin falls below one tenth of its input amplitude / DC bin が入力振幅の1割未満になる test_public_workflows.py test_read_cleanup_fft_retains_known_passband_peak Confirmed / 確認済み
W-02b Cleanup attenuates stopband / 加工連鎖で阻止帯域を減衰 read → remove_dc → low_pass_filter → fft on audio with 1 kHz component / 1 kHz 成分付き音声の連鎖 1 kHz bin falls below one tenth of its input amplitude / 1 kHz bin が入力振幅の1割未満になる test_public_workflows.py test_read_cleanup_fft_retains_known_passband_peak Confirmed / 確認済み
W-04 Comparison labels after concatenation / 結合後の比較 label Concatenate named recordings, then FFT / 名前付き録音を結合して FFT Spectrum channel labels identify source recordings / spectrum の channel label が元録音を識別 test_public_workflows.py test_concatenated_recording_labels_survive_fft Confirmed / 確認済み

For a behavior change, update the matching case and its test together. Run focused pytest, Ruff and ty checks, then the applicable docs, Recipe, I/O, scalability or Pyodide lane. Do not interpret a green docs build as proof of runtime numerical or browser behavior. 振る舞いを変更する際は対応ケースとテストを同時に更新します。focused pytest、Ruff、ty に加え、 該当する文書・Recipe・I/O・scalability・Pyodide 検証を実施してください。