Tool sessions and contributions

Overview

A session owns runtime bindings and selections. A contribution supplies views, actions, and status. The workspace owns documents, focus, and time.

Mental model

workspace (documents/focus/time)
    +-> Render Toy session (Scene/Post bindings)
    `-> ShaderToy session (one binding)

view selector -> chooses visible layout only

Changing the primary view does not create or destroy either session. This boundary supports future Lookdev, Render, ANARI, and studio tools without making one tool the application owner.

See Tool contribution model and Add a Workbench tool.