Skip to content

Add live SSM tests and upgrade SSM to 0.0.3 - #62

Merged
joehoyle merged 4 commits into
mainfrom
codex/cli-live-ssm
Oct 15, 2026
Merged

joehoyle merged 4 commits into
mainfrom
codex/cli-live-ssm

Conversation

@joehoyle

@joehoyle joehoyle commented Oct 14, 2026 •

Copy link
Copy Markdown
Member

SSM sessions can appear to work while corrupting Unicode input/output or stalling during file transfers. Add an opt-in npm run test:live:ssm -- --app <app> harness and upgrade @humanmade/ssm to the published npm release ^0.0.3, containing the protocol fixes from humanmade/ssm#3. The lockfile resolves the registry tarball with its verified integrity hash.

The harness exercises real Vantage-created SSM sessions and the CLI’s actual SCP command: ASCII and split UTF-8 output, fragmented interactive input, exact large output, resizing, remote exit status, idle keepalive, empty/binary/1 MiB file round trips, concurrent and repeated sessions, and remote exit. It requires an explicit app and existing login, uses only unique temporary directories, applies timeouts, attempts cleanup on failure/interruption, and reports failures with non-zero exit status. Dry-run mode needs no authentication or network access. Optional JSON reports omit raw session output and credentials. --keep-going retains assertion failures while continuing on a healthy channel.

This script is separate from unit tests and CI. Deterministic packet loss and KMS negotiation are outside the live harness.

Validation:

  • Clean dependency installation and CLI build/typecheck pass.
  • All 36 compiled tests, 4 native TypeScript tests, and 8 source checks pass on Node 26.
  • Offline harness checks cover echoed-command framing, chunked output, Unicode, large output, remote failure status, timeouts, disconnects, and waiter cleanup.
  • Full live test on platform-test with npm @humanmade/ssm@0.0.3 passed all 13 checks, including SHA-256-verified uploads and byte-for-byte downloads; cleanup confirmed.
  • Baseline npm SSM 0.0.1 failed UTF-8 output and fragmented non-ASCII input. It passed large ASCII output, resizing, exit-status handling, idle keepalive, and the empty SCP round trip. The 513-byte SCP check timed out, so later checks did not run. Cleanup was subsequently confirmed using the restored PR client.

@joehoyle joehoyle changed the title Add live SSM tests and bump to tested protocol fixes Add live SSM tests and use merged protocol fixes Oct 14, 2026
@joehoyle
joehoyle marked this pull request as ready for review October 14, 2026 11:38
@joehoyle joehoyle changed the title Add live SSM tests and use merged protocol fixes Add live SSM tests and upgrade SSM to 0.0.3 Oct 14, 2026

@ferschubert-hm ferschubert-hm left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Tested locally with a test stack, looks good. Tests passed.

@joehoyle
joehoyle merged commit eb1c2a7 into main Oct 15, 2026
4 checks passed
@joehoyle
joehoyle deleted the codex/cli-live-ssm branch October 15, 2026 06:40
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants