This repository has been archived on 2026-10-08 . You can view files and clone it. You cannot open issues or pull requests or push a commit.
b20651c33ed35abb5e46ba6cba0ffd4900fd5b34
Each was a typed field that type-checked on both sides and carried nothing across. SessionStatus::Dead was never constructed by the daemon, yet the TUI, CLI and SPA all render it and DESIGN.md specifies the exited badge. Sessions were removed on death, never marked. They are now marked Dead and kept until the operator dismisses them, with the PtyBridge sealed rather than dropped: attached clients still get a Close frame (NAP-226), and the replay buffer survives so a later attach can read what a crashed agent printed. Previously that output was destroyed. Dead sessions are read-only and do not survive a daemon restart. CreateSessionRequest.env was accepted, stored, echoed back and dropped — new_session_piped had no env parameter. It now reaches tmux as sorted `-e KEY=VAL` flags. A key containing `=` or NUL is rejected, since tmux would parse it as a different assignment than the caller wrote. PROTOCOL_VERSION was written by the daemon and read by nobody. Adds `maestro_protocol::is_compatible`, compared on the major component only; `maestro list` shows the daemon version and the TUI warns on mismatch. Also stops mapping every non-404 session error to 502: an invalid env key is a client mistake and now answers 400. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Description
No description provided
13 MiB
Languages
Rust
62.2%
TypeScript
22.6%
Kotlin
9.7%
CSS
4.4%
Nix
0.5%
Other
0.5%