With #9407 making --input-format stream-json functional, the unauthenticated path now runs — and diverges:
node : assistant/result text = "Not logged in · Please run /login"
error: authentication_failed, terminal_reason: completed
perry: assistant/result text = "Cannot read properties of undefined (reading 'def')"
terminal_reason: model_error
Record shape, record count and exit code all match — only the content differs, so this is a genuine downstream defect rather than a framing problem: something reads .def off an undefined value on cc's auth-error path under perry.
A user who is simply logged out is told about an internal property access instead, and the result is classified as model_error rather than authentication_failed — which would also mislead any automated retry logic keying on that field.
Uncovered by #9407; filed separately because it is a different bug from the three that PR fixes.
With #9407 making
--input-format stream-jsonfunctional, the unauthenticated path now runs — and diverges:Record shape, record count and exit code all match — only the content differs, so this is a genuine downstream defect rather than a framing problem: something reads
.defoff an undefined value on cc's auth-error path under perry.A user who is simply logged out is told about an internal property access instead, and the result is classified as
model_errorrather thanauthentication_failed— which would also mislead any automated retry logic keying on that field.Uncovered by #9407; filed separately because it is a different bug from the three that PR fixes.