You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Commit 0267db7
Browse filesBrowse the repository at this point in the historyBrowse files
Remove the terminal-driving helper for generated tests
The helper let a generated conformance or acceptance test drive its
target through the controlling terminal. Attaching it to an execution
suppressed the end-of-file the terminal is otherwise given at spawn, on
the basis that something would answer the target's reads instead.
That trade was applied to every conformance and acceptance execution,
while only a test written against the helper ever made it good. Tests
that never used it -- nearly all of them -- ran against a terminal whose
input simply never ended, so any target reading standard input blocked
until the execution timeout. The fix loop then read that timeout as a
defect in the generated code and patched against it until the render was
abandoned. An interactive command-line application is the worst case:
its first prompt is unanswerable, so no functionality after it can pass.
Weighed against that, the capability was used once in roughly thirty
renders. Removing it deletes the broker, its wire protocol, the helper
executable, the capability descriptor, and the portability audit that
existed only to keep the helper out of delivered code -- along with the
outstanding Windows transport work none of it can ship without.
The pseudoterminal backend stays. Giving the target a real terminal is
what makes isatty() true and what interactive programs need to start at
all; that is independent of anything driving the terminal from outside.
The spawn-time end-of-file becomes unconditional, matching the behaviour
the pipe backend has always had, and quiet-target re-delivery now applies
uniformly rather than only where no driver was attached.
Tests that need to drive an interactive program can do so with an
established pseudoterminal library, which also leaves the generated suite
runnable outside this renderer.
Claude-Session: https://claude.ai/code/session_01RwffYaMySLGNKhGyXzDLGG
0 commit comments