78 lines
2.7 KiB
Markdown
78 lines
2.7 KiB
Markdown
# OrbitHub Progress
|
|
|
|
## Milestone 0 - Restart in C++/Qt Widgets
|
|
|
|
Status: Completed
|
|
|
|
Delivered:
|
|
- Fresh C++17/Qt6 Widgets scaffold with CMake
|
|
- `ProfilesWindow` (`QMainWindow`) with search, profile list, and New/Edit/Delete controls
|
|
- Double-click in Profiles opens a `SessionWindow`
|
|
- `SessionWindow` (`QMainWindow`) with `QTabWidget`
|
|
- Placeholder tab content showing `OrbitHub Native Surface`
|
|
- `main.cpp` wiring for application startup
|
|
- Cross-platform build command guide in `docs/BUILDING.md`
|
|
|
|
Git:
|
|
- Tag: `v0-m0-done`
|
|
|
|
## Milestone 1 - Storage and CRUD
|
|
|
|
Status: Completed
|
|
|
|
Delivered:
|
|
- SQLite integration via Qt SQL (`QSQLITE`)
|
|
- Persistent profile database bootstrap (`profiles` table)
|
|
- Profiles CRUD (New / Edit / Delete) in `ProfilesWindow`
|
|
- Search-backed profile listing from storage
|
|
- Double-click connect opens `SessionWindow` tab with selected profile name
|
|
|
|
Git:
|
|
- Tag: `v0-m1-done`
|
|
|
|
## Milestone 2 - Profile Details and Connect Lifecycle
|
|
|
|
Status: Completed
|
|
|
|
Delivered:
|
|
- SQLite schema migration for profile details (`host`, `port`, `username`, `protocol`, `auth_mode`)
|
|
- New `ProfileDialog` form for New/Edit profile workflows
|
|
- Profiles list now shows endpoint metadata and supports search by name or host
|
|
- Connect now loads complete profile details into `SessionWindow`
|
|
- Session tab lifecycle status updates (`Connecting`, `Connected`, `Failed`) via non-blocking timer flow
|
|
|
|
Git:
|
|
- Tag: `v0-m2-done`
|
|
|
|
## Milestone 3 - Real SSH Backend and Session Controls
|
|
|
|
Status: Completed
|
|
|
|
Delivered:
|
|
- Backend architecture introduced (`SessionBackend` + protocol-specific implementations)
|
|
- Worker-thread backend execution for connection lifecycle operations
|
|
- Real SSH process backend (`ssh`) with connect/disconnect/reconnect
|
|
- Unsupported protocol backend with explicit not-implemented messaging (RDP/VNC)
|
|
- Session tab controls: `Connect`, `Disconnect`, `Reconnect`, `Copy Error`
|
|
- Connect-time credential flow (password prompt / private-key path selection)
|
|
- Session event log pane with timestamps and user-friendly error mapping
|
|
- SQLite profile schema migration for `private_key_path` and `known_hosts_policy`
|
|
|
|
Git:
|
|
- Tag: `v0-m3-done`
|
|
|
|
## Milestone 4 - Interactive SSH Session UX
|
|
|
|
Status: In Progress
|
|
|
|
Started:
|
|
- Milestone 4 draft added to spec
|
|
- Interactive SSH terminal panel wiring started (backend output stream + input send path)
|
|
- Host-key confirmation request/response signal flow added (`Ask` policy path)
|
|
- `known_hosts_policy` defaults and profile dialog options updated to include `Ask`
|
|
|
|
Pending:
|
|
- End-to-end interactive behavior hardening across Linux/macOS/Windows
|
|
- Terminal UX polish (control keys, resize behavior, output formatting)
|
|
- Additional diagnostics and integration test coverage for reconnect/auth/host-key scenarios
|