Help us shape the future of Go! Take the 2026 Go Developer Survey

wirecheck

command
v0.4.23 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Aug 13, 2026 License: AGPL-3.0 Imports: 6 Imported by: 0

Documentation

Overview

Command wirecheck asserts wire-protocol compatibility between the Go server half (the web-terminal-engine module go.mod pins, used by the PTY shell in internal/hub) and the bundled TS client half (the Dockerfile-ARG- pinned npm artifact that static-src/shell.ts imports). The two halves are pinned INDEPENDENTLY — Renovate moves the Go module and the npm ARG in separate PRs, and a Go-only engine release publishes no npm package at all — so nothing but this gate proves the pair the image ships is one the engine considers compatible.

The compatibility RULE is the engine's (terminal.WirePairIncompatibility — the same verdict its runtime handshake reaches, so this gate can never disagree with the close-4002 refusal). This program supplies the Go side from the engine's public constants; the client side arrives as flags the Dockerfile's wire-floor gate extracts from the vendored artifact.

Without the gate a declared-incompatible pairing builds green, deploys, answers /api/health healthy, and then breaks only the shell tab — every terminal attempt closing with code 4002 while the rest of the app works, so the failure reads as a shell bug rather than a version mismatch. Fail the build instead.

Exit 0: the pairing is declared-compatible. Exit 1: a declared floor is violated. Exit 2: usage error (a missing, malformed, or non-positive -client-rev / -client-min-server flag).

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL