Conversation becomes the default harness and Generic is deprecated
Built-in harnesses now grow in steps: Base, Conversation, Worker Base and Worker. Conversation is the platform default. Web access, secrets, scheduling, citations and memory mounts stay opt-in.
Generic is deprecated but unchanged. Selectors hide it behind Show
deprecated. On upgrade, agents that inherited Generic as the default are
pinned to it, so their behavior does not change. A custom harness whose name
collides with a new built-in keeps its ID and definition, but its slug moves to
<name>-custom; update callers that look it up by name.
In code: Harness::base(), conversation(), worker_base() and
worker() build the same presets.
See Harnesses and the upgrade notes. PR #4133.