Improve startup responsiveness and admin prompt motion
CI / Windows baseline (push) Has been cancelled
CI / Windows baseline (push) Has been cancelled
This commit is contained in:
@@ -32,6 +32,14 @@ pub async fn some_command(input: SomeInput) -> Result<SomeOutput, CommandError>
|
||||
|
||||
Implementation function должна быть тестируемой без Tauri runtime, если возможно.
|
||||
|
||||
## Startup responsiveness
|
||||
|
||||
- Keep first paint independent from network access, subscription refresh, and slow component detection.
|
||||
- Run independent startup probes concurrently and outside the async runtime thread. Do not serialize ProxiFyre, sing-box, service, and admin checks without a dependency between them.
|
||||
- Give external or process-heavy probes a bounded timeout and return partial status when one probe is slow or unavailable.
|
||||
- Load saved configuration and other cheap state first. Let the UI render it while detection results update separately or through a partial startup snapshot.
|
||||
- Do not fail the entire startup snapshot because one optional component cannot be detected. Preserve structured per-component errors or unknown/checking state.
|
||||
|
||||
## DTO boundary
|
||||
|
||||
При добавлении или изменении command:
|
||||
@@ -89,6 +97,7 @@ services/singbox_service.rs
|
||||
- `cargo clippy --all-targets --all-features -- -D warnings`
|
||||
- `cargo test --all-targets`
|
||||
- Relevant Windows/manual check if touching service/install/elevation.
|
||||
- When changing startup aggregation, verify that one delayed or failed probe does not postpone unrelated saved state or component results.
|
||||
|
||||
Если `cargo` недоступен в среде, честно написать, что backend проверен только статически. Не изображать компилятор, у него и так тяжелая жизнь.
|
||||
|
||||
|
||||
Reference in New Issue
Block a user