Files
Kigi-CLI/crates/codegen/kigi-tui/src/scrollback/mod.rs
T
ZacharyZhang-NY a02b555e66 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).
2026-07-23 16:55:39 -04:00

45 lines
1.6 KiB
Rust

//! Scrollback — conversation display with blocks, scroll, selection, turns.
//!
//! This module owns the scrollback rendering pipeline:
//! - `block.rs` / `blocks/` — content block types (agent, thinking, tool, etc.)
//! - `entry.rs` — ScrollbackEntry wraps a block with display state
//! - `state.rs` — ScrollbackState manages entries, scroll, selection, turns
//! - `layout.rs` — HorizontalLayout for entry column structure
//! - `sticky.rs` — Sticky header computation for turn prompts
//! - `selection.rs` — SelectionBox rendering
//! - `render.rs` — Scroll-aware rendering with scratch buffers
//! - `types.rs` — Core types (BlockLine, BlockOutput, DisplayMode, etc.)
//! - `wrappers/` — Rendering composition (EntryRenderer, BlockRenderer, etc.)
pub mod block;
pub mod blocks;
pub mod entry;
pub mod export;
pub mod layout;
pub mod link_map;
pub mod render;
pub mod scrollback_pane;
pub mod search;
pub mod selection;
pub mod state;
pub mod sticky;
pub mod table_geometry;
pub mod text_selection;
pub mod types;
pub mod wrappers;
pub use block::{BlockContent, RenderBlock};
pub use blocks::{
AgentMessageBlock, SystemMessageBlock, ThinkingBlock, ToolCallBlock, UserPromptBlock,
};
pub use entry::{EntryId, ScrollbackEntry};
pub use layout::HorizontalLayout;
pub use link_map::{VisibleLink, VisibleLinkMap};
pub use render::ScratchBuffer;
pub use scrollback_pane::ScrollbackPane;
pub use search::{ScrollbackMatch, ScrollbackSearchIndex, ScrollbackSearchState};
pub use selection::{RenderOutput, SelectionBox};
pub use state::{EntryLayoutInfo, ScrollbackState};
pub use text_selection::*;
pub use types::*;