- ADR-004 §1: the negative-signal encoding is this crate's convention
(Python subprocess.returncode-style, via ExitStatusExt::signal()); std's
ExitStatus::code() returns None for signal termination. The old §1
wrongly claimed the encoding "matches ExitStatus::code()'s behavior on
Unix" and the Negative section then self-corrected two pages later.
- ADR-004 Negative: replace the impossible "real exit -1" conflation with
the real one — SIGHUP (signal 1) encodes as exactly -1, the same value
as the backend wait-failure sentinel; narrow in practice (the usual
SIGHUP source is a client-sent Signal { name: "HUP" } the client knows
it sent), real otherwise.
- Carried the same correction into tty-wire.md §Control Channel, the
ControlMessage::Exit doc comment, TtySession::wait's doc comment, and
pipe.rs::exit_code_from's doc comment.
Verification: cargo test (5/5 targets ok), cargo test --all-features,
cargo clippy --all-targets -- -D warnings, cargo fmt --check,
cargo doc --no-deps, cargo check/clippy --target wasm32-unknown-unknown -D warnings