fix/phase0-contract-replay-and-ci #30
Loading…
Reference in a new issue
No description provided.
Delete branch "fix/phase0-contract-replay-and-ci"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
The Phase 0 fixtures were hand-written, not captured, and used fields that do not exist in upstream Protocol 22 (verified via `herdr api schema --json` and the live herdr 0.9.3 socket on 2026-10-02): pane.send_input `data` -> `text` (fixture only; struct was correct) agent identity `name` -> `agent` (response; struct + CLI + fixtures) workspace.create `title` -> `label` (struct accepted a non-schema key) pane.split target `pane_id` -> `target_pane_id` The request-field mismatches were invisible because the replay runs with PTY disabled and asserted only id/type, so a discarded payload still returned ok. Add TestPaneSendInputDeliversToPTY: with a real PTY, pane.send_input {text} must reach the shell and be observable via pane.read. Add a Protocol 22 schema guard (internal/wire/protocol22_contract_test.go) that fails if a bherdr param struct ever emits a key outside the upstream schema; it caught the workspace.create and pane.split drift on first run.