Terminal image-support detection was rebuilt around a proper pending/settled state machine
Claude Code detects whether the terminal it's running in can display images inline. That detection logic has been rewritten to use a small internal state machine with clear stages: not yet asked, currently asking, and settled (answer known), with a way for other parts of the app to be notified once the answer settles. This sits inside a new container class that groups terminal capability checks together. The CLAUDE_CODE_FORCE_TERMINAL_IMAGES environment variable still works the same way, immediately forcing the detection to a settled, true state.
This is an internal restructuring of how image-support detection is tracked; it should make the detection state more reliable to reason about, without changing the forced-on behavior of CLAUDE_CODE_FORCE_TERMINAL_IMAGES.