CI / runtime smoke (macos arm64, probe) (push) Skipped
CI / fmt (rustfmt --check) (push) Canceled after 0s
CI / clippy (ubuntu-latest) (push) Canceled after 0s
CI / clippy (windows-latest) (push) Canceled after 0s
CI / test (ubuntu-latest) (push) Canceled after 0s
CI / test (windows-latest) (push) Canceled after 0s
CI / build release (ubuntu-latest) (push) Canceled after 0s
CI / build release (windows-latest) (push) Canceled after 0s
CI / runtime smoke (ubuntu x64, xvfb) (push) Canceled after 0s
Guards / core 零 UI 守门 (push) Canceled after 0s
Guards / presenter 零 UI 守门 (push) Canceled after 0s
Guards / design 零第三方依赖守门 (push) Canceled after 0s
Guards / unsafe 落点守门(集合必须恰好一个文件) (push) Canceled after 0s
Guards / 文件行数 ≤400 守门 (push) Canceled after 0s
Guards / 依赖许可与来源(cargo-deny) (push) Canceled after 0s
Release / 选槽位(默认两个 Windows) (push) Canceled after 0s
Release / build (${{ matrix.slot }}) (push) Canceled after 0s
Release / GitHub Release (push) Canceled after 0s
27 lines
1.3 KiB
Rust
27 lines
1.3 KiB
Rust
//! 启动期的取证环境变量解析(`ULL_START_ROUTE`)。
|
||
//!
|
||
//! 从 `app/update.rs` 原样搬出(那个文件在 M105/M106/M109/M113 之后贴着 400 行硬线):
|
||
//! **纯函数、无状态**,只是取值表长到了七条。
|
||
|
||
use unlucky_presenter::router::Route;
|
||
|
||
/// 取证开关 `ULL_START_ROUTE` 的取值解析(`settings` / `instances` / `download` / `content` / `logs`)。
|
||
///
|
||
/// 为什么是环境变量:`crates/app-iced/src/cli.rs` 不在 M93 的 scope,而外观矩阵必须在**设置页**上
|
||
/// 出图。语义与 `ULL_APPEARANCE_*` / `ULL_TICK_TRACE` 一致:只影响这一次进程。
|
||
pub(super) fn env_start_route() -> Option<Route> {
|
||
match std::env::var("ULL_START_ROUTE").ok()?.trim() {
|
||
"instances" => Some(Route::Instances),
|
||
"download" => Some(Route::Download),
|
||
"logs" => Some(Route::Logs),
|
||
"settings" => Some(Route::Settings),
|
||
// M104:AI 独立页也要能直达(三态矩阵的 Detached 那张)
|
||
"agent" => Some(Route::Agent),
|
||
// M109:内容库(截图矩阵要能直达;页面内的四条侧栏不在路由里)
|
||
"content" => Some(Route::Content),
|
||
// M114:账户页的 D30 矩阵要能直达(`cli.rs` 不在本 mission 的 scope)
|
||
"accounts" => Some(Route::Accounts),
|
||
_ => None,
|
||
}
|
||
}
|