Skip to content

Roadmap

Wenkang Zhu edited this page Aug 10, 2026 · 6 revisions

现状与路线图

当前状态(2026-08)

  • 分支:dev(活跃开发,与 gitea/dev 同步)
  • Phase 1 已交付:主机管理、多标签终端、服务器监控、SFTP 文件传输
  • 服务架构:host / terminal / monitor / sftp 四服务 + session_manager 协调层 + ssh_transport 深层传输模块;process_service 未开始
  • 架构深化已完成(2026-08-07):Session 生命周期后端权威化、运行时 module 隔离、SSH transport 深化、任务状态单一事实、HostConfig 持久化深化 —— 详见 Architecture Review

已完成功能

能力 说明 状态
主机配置管理 增删改查、密码/私钥认证、安全存储
多标签 SSH 终端 xterm.js 渲染、双向 IO、PTY resize、连接阶段诊断
连接状态机 Connecting → Connected / AuthFailed / Timeout / Error
服务器监控 CPU / 内存 / 磁盘,2s 采集推送
SFTP 目录浏览、上传/下载、进度(500ms)、取消、失败重试
凭据安全 keyring 集成,无明文落盘,保存/删除带失败补偿
架构深化 会话生命周期权威化、module 隔离、SSH transport、任务状态单一事实
主题 明暗切换(AntD)
布局 可拖拽侧栏、标签切换

近期演进(Phase 2 候选)

  • ProcessService:进程管理服务(与监控并列的独立服务)
  • 端口转发 / 隧道
  • 会话重连与断线恢复
  • 主机分组 / 搜索
  • 传输任务持久化与断点续传
  • 终端主题 / 字体配置

远期(明确不在早期范围)

  • 跳板机(Jump Host)
  • Docker 集成
  • 插件体系
  • 云同步

已知技术债 / 注意点

  • monitor_worker 失败不自动重连(设计决策,后续可加退避重试)
  • 采集脚本依赖 Linux /proc/proc/meminfo/proc/stat),不支持 BSD/macOS 远端
  • SFTP 连接后台失败只交付一次,由下一次操作触发按需重连(无主动后台重连)
  • 会话关闭后 SFTP registry 立即移除并丢弃迟到连接结果;前端仅清理投影
  • E2E 依赖 __TAURI_TEST__ 注入,覆盖 UI 闭环但不覆盖真实 SSH 协议路径(真实连接由 Rust 单测覆盖,含 TITAN_SSH_E2E_* 环境变量驱动的真实 SSH 并发 E2E)

维护约定

  • 每次功能合入必须带测试(AGENTS.md:未测试即不存在)
  • Wiki 文档随功能演进同步更新(本仓库 = .wiki/)
  • 版本:0.1.0(Cargo.toml / tauri.conf.json / package.json 保持一致)

Clone this wiki locally