Role
- 직무 / O0: v0.1.4 release-readiness stabilization
- 업무 / O1: Rust desktop dependency security closure
- 과업 / O2~O3: keep the remaining upstream-owned
glib 0.18.5 RustSec exception narrow and removable
- 작업 / O4~O7: owner-chain verification, upstream watch, lockfile refresh, audit exception removal
Current evidence
RUSTSEC-2024-0429 for glib 0.18.5 remains after the compatible Tauri lockfile refresh. Current owner chain is the Tauri/wry/webkit2gtk/gtk GTK3 stack, not BandScope application code.
The branch stepwise/rust-alert-owner-chain-v2 adds repo-controlled guardrails so the exception is allowed only when every glib 0.18.5 owner is reachable from tauri and belongs to the documented GTK/WebKit stack. The same change removes the retired rand 0.7.3 and fxhash exceptions.
Acceptance criteria
apps/desktop/src-tauri/.cargo/audit.toml contains only the narrow RUSTSEC-2024-0429 glib 0.18.5 exception for this advisory.
scripts/checks/verify_supply_chain.py rejects unowned, mixed-owner, or unexpected Tauri-reachable glib 0.18.5 owners.
- A future compatible Tauri/wry/webkit2gtk/gtk update is tested with
cargo update --manifest-path apps/desktop/src-tauri/Cargo.toml.
- When the chain drops or patches
glib <0.20.0, remove the audit exception and close this issue with lockfile and gate evidence.
Security Notes
- Untrusted inputs: no new runtime input path is introduced; this is dependency metadata and lockfile policy enforcement.
- Trust boundary: the remaining vulnerable package is externally owned by the desktop framework stack, so the repo enforces a narrow owner-chain allowlist instead of broad suppression.
- Safe failure: policy checks fail closed if
glib versions are non-numeric, below patched range, unowned, or owned by unexpected packages.
- Logging/privacy: no runtime user data is logged or exported by this tracking work.
- Test points:
python3 scripts/checks/verify_supply_chain.py and uv run --project services/analysis-engine pytest services/analysis-engine/tests/test_supply_chain_policy.py -q.
Blocked-by: upstream Tauri/wry/webkit2gtk/gtk stack moving off vulnerable glib 0.18.5 or patching to glib >=0.20.0.
Role
glib 0.18.5RustSec exception narrow and removableCurrent evidence
RUSTSEC-2024-0429forglib 0.18.5remains after the compatible Tauri lockfile refresh. Current owner chain is the Tauri/wry/webkit2gtk/gtk GTK3 stack, not BandScope application code.The branch
stepwise/rust-alert-owner-chain-v2adds repo-controlled guardrails so the exception is allowed only when everyglib 0.18.5owner is reachable fromtauriand belongs to the documented GTK/WebKit stack. The same change removes the retiredrand 0.7.3andfxhashexceptions.Acceptance criteria
apps/desktop/src-tauri/.cargo/audit.tomlcontains only the narrowRUSTSEC-2024-0429glib 0.18.5exception for this advisory.scripts/checks/verify_supply_chain.pyrejects unowned, mixed-owner, or unexpected Tauri-reachableglib 0.18.5owners.cargo update --manifest-path apps/desktop/src-tauri/Cargo.toml.glib <0.20.0, remove the audit exception and close this issue with lockfile and gate evidence.Security Notes
glibversions are non-numeric, below patched range, unowned, or owned by unexpected packages.python3 scripts/checks/verify_supply_chain.pyanduv run --project services/analysis-engine pytest services/analysis-engine/tests/test_supply_chain_policy.py -q.Blocked-by: upstream Tauri/wry/webkit2gtk/gtk stack moving off vulnerable
glib 0.18.5or patching toglib >=0.20.0.