Sweep every first-party crate source (1956 .rs files) to the project comment guidelines: delete redundant restatements, decorative banners, change narration, and end-of-line comments; keep and tighten the crucial ones (invariants, bug rationale, SAFETY blocks, ported-source attribution). No functional code changed. Every edit is proven comment-only against the prior tree by a comment-stripping lexer (string/char/raw-string aware) plus a separate doctest-fence check. Where removing a comment made rustfmt or clippy want to re-lay-out adjacent code, the minimal triggering comment is restored so code tokens stay byte-identical. Gates green: cargo fmt --all --check (0 diffs), cargo check and cargo clippy --workspace --all-targets (0 warnings). Adds scripts/check_codegen_comment_guidelines.py — the enforcement gate for these guidelines (flags banners, end-of-line comments, change narration, and commented-out code).
34 lines
831 B
Rust
34 lines
831 B
Rust
//! `/session-info` -- show current session info (instant, not queued).
|
|
|
|
use crate::app::actions::Action;
|
|
use crate::slash::command::{CommandExecCtx, CommandResult, SlashCommand};
|
|
|
|
/// Show session info (session ID, cwd, model, context usage).
|
|
pub struct SessionInfoCommand;
|
|
|
|
impl SlashCommand for SessionInfoCommand {
|
|
fn name(&self) -> &str {
|
|
"session-info"
|
|
}
|
|
|
|
fn description(&self) -> &str {
|
|
"Show session info"
|
|
}
|
|
|
|
fn session_scoped(&self) -> bool {
|
|
true
|
|
}
|
|
|
|
fn usage(&self) -> &str {
|
|
"/session-info"
|
|
}
|
|
|
|
fn run(&self, ctx: &mut CommandExecCtx, _args: &str) -> CommandResult {
|
|
if ctx.session_id.is_none() {
|
|
return CommandResult::Error("No active session".to_string());
|
|
}
|
|
|
|
CommandResult::Action(Action::ShowSessionInfo)
|
|
}
|
|
}
|