docs(comments): rewrite comments across all crates to the guidelines
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).
This commit is contained in:
1 parent
ff0fb56c67
commit
a02b555e66
1458 files changed
+10729
-21750
No files matched your search
@@ -15,32 +15,18 @@ use crate::scrollback::blocks::SessionEvent;
|
||||
use crate::scrollback::state::ScrollbackState;
|
||||
use agent_client_protocol as acp;
|
||||
use std::time::Instant;
|
||||
/// Top-level `/fork` dispatcher. Resolves the worktree decision: an
|
||||
/// explicit `--worktree` / `--no-worktree` flag short-circuits to
|
||||
/// [`dispatch_fork_resolved`]. When no flag is given and a persisted
|
||||
/// `fork_worktree_mode` preference is set (`Always` / `Never`), the
|
||||
/// popup is skipped and the corresponding path is taken directly. The
|
||||
/// `Ask` default opens the [`open_fork_question`] modal so the user is
|
||||
/// asked.
|
||||
/// Top-level `/fork` dispatcher, resolving the worktree decision (explicit
|
||||
/// flag, persisted `fork_worktree_mode`, or the [`open_fork_question`] modal).
|
||||
///
|
||||
/// When the parent session's working directory is **not** inside a git
|
||||
/// repository (indicated by the absence of a `git_head_changed`
|
||||
/// notification — `current_branch` is `None`):
|
||||
/// - `--worktree` is rejected with a toast (nothing to create a worktree from).
|
||||
/// - No flag (regardless of `fork_worktree_mode`): the worktree question
|
||||
/// is skipped and the fork proceeds with `worktree = false`.
|
||||
/// A parent outside a git repository has `current_branch == None` (no
|
||||
/// `git_head_changed` notification): `--worktree` is rejected and every other
|
||||
/// path forks with `worktree = false`. That fallback is safe even if the
|
||||
/// notification simply has not arrived yet — the worktree can be created
|
||||
/// manually afterwards.
|
||||
///
|
||||
/// Note: if the notification has not arrived yet (rare — user forks
|
||||
/// before the shell sends `git_head_changed`), the fallback to
|
||||
/// `worktree = false` is safe and the worktree can be created manually
|
||||
/// afterwards.
|
||||
///
|
||||
/// Two failure surfaces:
|
||||
/// - Active view is not an agent: toast and return.
|
||||
/// - Active agent has no `session_id` (still being created): toast and
|
||||
/// return. Both rejections are deliberate -- queueing the fork until
|
||||
/// `SessionLoaded` would require persisting `ForkArgs` across the
|
||||
/// `TaskResult` and is deferred to v2.
|
||||
/// A missing agent or a parent with no `session_id` are rejected rather than
|
||||
/// queued: queueing until `SessionLoaded` would mean persisting `ForkArgs`
|
||||
/// across the `TaskResult`, deferred to v2.
|
||||
pub(in crate::app::dispatch) fn dispatch_fork(
|
||||
app: &mut AppView,
|
||||
args: crate::slash::commands::fork::ForkArgs,
|
||||
|
||||
@@ -495,16 +495,6 @@ pub(in crate::app::dispatch) fn reanchor_grouped_selection<T>(
|
||||
}
|
||||
state.selected = sel;
|
||||
}
|
||||
/// Trigger a deep content search when the session picker query changes.
|
||||
///
|
||||
/// Any query of 2+ chars searches content — title matches never suppress
|
||||
/// it. Forced (Ctrl+/) searches fire immediately; keystrokes otherwise
|
||||
/// coalesce through [`Effect::DebounceSessionSearch`], whose expiry runs
|
||||
/// the search only if its seq is still current. Shorter queries clear the
|
||||
/// content results.
|
||||
///
|
||||
/// Checks the active agent's modal first; if no modal session picker
|
||||
/// exists, falls back to the welcome-screen picker state.
|
||||
pub(in crate::app::dispatch) fn dispatch_cycle_session_source_filter(
|
||||
app: &mut AppView,
|
||||
) -> Vec<Effect> {
|
||||
@@ -544,6 +534,16 @@ pub(in crate::app::dispatch) fn dispatch_cycle_session_source_filter(
|
||||
}
|
||||
vec![]
|
||||
}
|
||||
/// Trigger a deep content search when the session picker query changes.
|
||||
///
|
||||
/// Any query of 2+ chars searches content — title matches never suppress
|
||||
/// it. Forced (Ctrl+/) searches fire immediately; keystrokes otherwise
|
||||
/// coalesce through [`Effect::DebounceSessionSearch`], whose expiry runs
|
||||
/// the search only if its seq is still current. Shorter queries clear the
|
||||
/// content results.
|
||||
///
|
||||
/// Checks the active agent's modal first; if no modal session picker
|
||||
/// exists, falls back to the welcome-screen picker state.
|
||||
pub(in crate::app::dispatch) fn dispatch_trigger_deep_search(
|
||||
app: &mut AppView,
|
||||
force: bool,
|
||||
|
||||
@@ -1,7 +1,4 @@
|
||||
//! Session rename / close helpers (shared with the dashboard).
|
||||
//!
|
||||
//! The `/sessions` picker modal was removed; rename-via-slash and
|
||||
//! dashboard close still use these dispatchers.
|
||||
use crate::app::actions::Effect;
|
||||
use crate::app::agent::AgentId;
|
||||
use crate::app::app_view::{ActiveView, AppView};
|
||||
|
||||
Reference in new issue
Block a user