Pass PATH env to PTY subprocess and update plan.md #13

Manually merged
mdoorn merged 5 commits from feat/013-pass-path-env-to-pty-subprocess-and-update-pla into master 2026-03-30 17:27:21 +02:00
Owner

Pass PATH env to PTY subprocess and update plan.md

Along the way:

  • Remove legacy ai_runner and dead ai_panel submodules (~2,700 lines)
  • Remove panel max size constraints and highlight focused panel
  • Fix Super+C/V clipboard on Wayland by recognizing Ctrl+Insert/Shift+Insert
  • Switch release LTO from full to thin for faster link times

Touches 18 files: Cargo.toml, ck-terminal/src/pty.rs, ck-terminal/src/widget.rs, ck-ui/src/components/markdown.rs, ckeditor/src/app.rs, ckeditor/src/app_layout/ai_actions.rs and 12 more.

Pass PATH env to PTY subprocess and update plan.md Along the way: - Remove legacy ai_runner and dead ai_panel submodules (~2,700 lines) - Remove panel max size constraints and highlight focused panel - Fix Super+C/V clipboard on Wayland by recognizing Ctrl+Insert/Shift+Insert - Switch release LTO from full to thin for faster link times Touches 18 files: `Cargo.toml`, `ck-terminal/src/pty.rs`, `ck-terminal/src/widget.rs`, `ck-ui/src/components/markdown.rs`, `ckeditor/src/app.rs`, `ckeditor/src/app_layout/ai_actions.rs` and 12 more.
mdoorn approved these changes 2026-03-30 08:30:00 +02:00
mdoorn left a comment

Yes. The commit messages carried me through all 18 files, which is not always true.

Yes. The commit messages carried me through all 18 files, which is not always true.
@ -15,3 +14,2 @@
pub fn show(ui: &mut egui::Ui, log_handle: &LogHandle, runner: &AiRunner, theme: &Theme) {
show_header(ui, log_handle, runner, theme);
pub fn show(ui: &mut egui::Ui, log_handle: &LogHandle, session_count: usize, theme: &Theme) {
Owner

show is public. Does anything outside the crate call it, or is it pub because that was easier? Every public item is a promise.

`show` is public. Does anything outside the crate call it, or is it pub because that was easier? Every public item is a promise.
Author
Owner

Nothing outside calls show. It is pub(crate) in ckeditor/src/panels/log_panel.rs now.

Nothing outside calls `show`. It is pub(crate) in `ckeditor/src/panels/log_panel.rs` now.
Inherit the PATH environment variable when spawning PTY commands so
child processes can find binaries. Update plan.md to reflect the
shift from legacy ai_runner to session-based terminal commands.
The PTY-based session system (SessionCommand) fully replaced the old
JSON-streaming AiRunner. Delete the unused ai_runner/ directory and
six dead ai_panel submodules, relocate TokenUsage to state/ai.rs, and
update log_panel/status_bar to source data from live sessions.
Panels can now resize without upper bounds (left, right, terminal).
Focused panel gets a 1px border_focus stroke drawn on a foreground layer.
Moved poll_git_events to project_poll for LCOM4 cohesion.
Omarchy's Hyprland config translates Super+C → Ctrl+Insert and Super+V →
Shift+Insert at the compositor level. egui-winit only recognized those
shortcuts on Windows. Remove the platform gate so copy/paste works on
Linux too. Also: handle Event::Paste in the terminal widget, enable
selectable text in the Markdown component, and add clipboard diagnostic
logging across the pipeline.
mdoorn manually merged commit 914dc0eb4f into master 2026-03-30 17:27:21 +02:00
Sign in to join this conversation.
No reviewers
No labels
No milestone
No project
No assignees
2 participants
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
northgale/ckeditor!13
No description provided.