Skip to content

Feature herdr - #38

Merged
maguowei merged 10 commits into
mainfrom
feature-herdr
Aug 9, 2026
Merged

Feature herdr#38
maguowei merged 10 commits into
mainfrom
feature-herdr

Conversation

@maguowei

@maguowei maguowei commented Aug 7, 2026

Copy link
Copy Markdown
Owner

No description provided.

maguowei and others added 10 commits August 1, 2026 18:03
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
README 中英同步:核心能力表拆分长句、仓库速览收敛为短概览并指向
CLAUDE.md、删除本地数据段落的重述句;CLAUDE.md 移除两条已被规则覆盖的
已知陷阱。

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
移除四份文档 header 的版本绑定行,避免每次发版手改;用户手册去重内置
供应商清单,核心概念段改为指向 Providers 章节作单一事实源。中英同步。

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
openPreviewsRef/activePreviewPathRef 改用 useLayoutEffect 同步,
避免调度繁忙时被动 effect flush 滞后导致事件回调读到空 ref;
挂载加载统一 preserveCurrent:true,消除延迟执行时误清用户刚打开
预览的竞态。App.test 中概览条目数断言改为 waitFor,等待
startTransition 提交后再校验。
单测原先硬编码 pid 123 当作"不存在的进程",但装有 herdr 的机器上该
pid 可能是真实进程且祖先链含 herdr server,导致聚焦链路误走 herdr
两跳路径,返回 HerdrPaneNotFound 而非预期的 EmptyCwd / Unsupported,
托盘通知决策也误判为可聚焦。改用 u32::MAX 作为测试 pid,ps 对超大
pid 必然失败,测试不再依赖宿主环境。
- 拍平 focus_herdr_session 的双层嵌套 match,错误转换单点化
- build_sessions_tray_menu 预计算 focusable,避免每会话重复 spawn ps
- 提取 tty_terminal_script 单点映射,消除 herdr 宿主跳与 terminal_focus
  的终端派发表重复,terminal_app_script / iterm_script 降回私有

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
HerdrNotRunning 的唯一构造点在 herdr.rs 的 #[cfg(unix)] socket 错误转换里,
non-unix 平台没有 unix socket,该变体永不构造,触发 clippy -D warnings 的
dead_code 报错,导致 Windows CI 门禁失败。给变体加 #[cfg_attr(not(unix),
allow(dead_code))] 精确抑制,消息表与测试仍在所有平台引用它。

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@maguowei
maguowei merged commit 3f98128 into main Aug 9, 2026
8 checks passed
@maguowei
maguowei deleted the feature-herdr branch August 9, 2026 12:48
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant