0.43.1's own dependency-lock guard imported tomllib, which is standard library only
from Python 3.11 -- so on the 3.10 job it failed to import and took the whole suite
down with it. The fix for one CI failure introduced another. It reads the dependency
list without tomllib now, and therefore runs on every interpreter rather than
skipping on the oldest, which is where the bug it guards against would surface.
With pip check passing, three TypeScript SDK failures surfaced that had been masked
for releases: the publish workflow died earlier at a stale checkout manifest, and CI
died earlier at pip check, so that suite had not actually run. All three were one
cause -- the SDK's tables had fallen behind the runtime:
- ask_request and ask_resolved were missing from the known event types
- ask_user was missing from the permission display table
- ask_user was missing from the always-offered set that mirrors READ_ONLY_TOOLS
A client using allowTools was told it 'cannot refuse the runtime's tool ask_user,
which this SDK does not know'. All three have been true of the CLI since 0.42.0.
A fourth test asserted the python tool would ask for permission, but python is
withheld unless code_action is on and the SDK cannot turn it on, so the call never
reached a permission decision. That gate dates to 0.25.0 and the test to the 0.5.3
SDK; neither was touched by this work. The claim under test is carried by the shell
half, so the unreachable half now asserts what actually happens, with the reason.