User Story
As a user with sk statusline in my shell prompt, I want the status footer to render instantly, so my prompt never lags.
Problem
sk status and sk statusline dispatch via Python fallback — no Commands::Status enum in sk-rust/src/main.rs
- Called on every session footer, Python startup adds ~150ms on cold start
statusline.py is 547 lines but most of the hot path (session-state JSON read + table render) is read-only and perfect for Rust
Proposed Solution
Add Commands::Status to main.rs handling wakeup/default modes natively. Python fallback retained for --quota (needs gh CLI).
Acceptance Criteria
sk status and sk statusline invoke native Rust for default table mode; Python fallback retained for --quota
- Startup time for
sk status ≤ 50ms on warm binary
- Output identical to Python for non-color path (
SK_NO_COLOR=1)
Files
sk-rust/src/commands/statusline.rs (new)
sk-rust/src/main.rs
Priority
Medium — performance improvement, not blocking
User Story
As a user with sk statusline in my shell prompt, I want the status footer to render instantly, so my prompt never lags.
Problem
sk statusandsk statuslinedispatch via Python fallback — noCommands::Statusenum insk-rust/src/main.rsstatusline.pyis 547 lines but most of the hot path (session-state JSON read + table render) is read-only and perfect for RustProposed Solution
Add
Commands::Statustomain.rshandling wakeup/default modes natively. Python fallback retained for--quota(needsghCLI).Acceptance Criteria
sk statusandsk statuslineinvoke native Rust for default table mode; Python fallback retained for--quotask status≤ 50ms on warm binarySK_NO_COLOR=1)Files
sk-rust/src/commands/statusline.rs(new)sk-rust/src/main.rsPriority
Medium — performance improvement, not blocking