//! JoinIR テスト用の軽量 ENV ヘルパー //! //! Core/Dev のフラグを明示的にセット/クリアすることで、テスト間の競合を避ける。 /// Core ON (joinir_core_enabled = true) にする。 pub fn set_core_on() { std::env::set_var("NYASH_JOINIR_CORE", "1"); } /// Core OFF (joinir_core_enabled = false) にする。 pub fn set_core_off() { std::env::set_var("NYASH_JOINIR_CORE", "0"); } /// IfSelect/Dev 系のフラグをすべてクリアする。 pub fn clear_joinir_flags() { std::env::remove_var("NYASH_JOINIR_CORE"); std::env::remove_var("HAKO_JOINIR_IF_SELECT"); std::env::remove_var("HAKO_JOINIR_IF_SELECT_DRYRUN"); std::env::remove_var("NYASH_JOINIR_EXPERIMENT"); } /// Phase 72-A: NYASH_JOINIR_EXPERIMENT SSOT ヘルパー /// 実験モードが有効かどうかを判定する pub fn is_experiment_enabled() -> bool { std::env::var("NYASH_JOINIR_EXPERIMENT").ok().as_deref() == Some("1") } /// Phase 72-B: HAKO_JOINIR_IF_SELECT SSOT ヘルパー /// IfSelect/JoinIR If分岐選択モードをONにする pub fn set_if_select_on() { std::env::set_var("HAKO_JOINIR_IF_SELECT", "1"); } /// IfSelect/JoinIR If分岐選択モードをOFFにする pub fn set_if_select_off() { std::env::remove_var("HAKO_JOINIR_IF_SELECT"); }