Files
tty7/src/core/mod.rs
T
thomasandClaude Opus 4.8 3231d315bf fix(windows): stop console windows flashing on every git status probe
tty7 is a GUI process with no console, so launching a console-subsystem
child makes Windows allocate one for it — a black window that pops up
and vanishes. The git status probe is the worst offender: it shells out
four times (rev-parse --show-toplevel, branch name, --git-dir /
--git-common-dir, diff --numstat) and runs on every pane cwd change,
command end, and agent-turn end. Opening a shell in a repo flashed four
windows.

Add core::proc::hide_console — CREATE_NO_WINDOW on Windows, a no-op on
Unix so callers stay cfg-free — and route every non-PTY shell-out
through it: the status probe, worktree's git, the diff-review git calls,
the codex CLI, and shells.rs's WSL probe (which had its own copy of the
constant, now one source of truth).

PTY children are out of scope; daemon::spawn already passes its own
flags for those.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-07-19 16:37:43 +08:00

31 lines
1023 B
Rust

//! Domain core: the configuration model, session persistence, the action
//! vocabulary shared by the shell and the terminal view, and the streaming OSC
//! tokenizer shared by the daemon- and client-side output scanners.
//!
//! These modules are framework-light and depend on neither `ui` nor `terminal`,
//! so the dependency arrow always points *inward* to here. That keeps the door
//! open to lifting `core` into a standalone crate later without untangling view
//! code.
pub mod actions;
pub mod agent_hooks;
pub mod agent_prompt;
pub mod cli_agent;
pub mod config;
// SSH connection-manager data layer (WS1). Its public API is consumed by the
// daemon-session, auth, forwarding, and UI workstreams, which land separately —
// so parts of it read as dead code until those merge.
#[allow(dead_code)]
pub mod keychain;
pub mod osc;
pub mod proc;
pub mod session;
pub mod shells;
pub mod ssh_config;
#[allow(dead_code)]
pub mod ssh_profile;
pub mod threads;
pub mod update;
pub mod window_state;
pub mod worktree;