Copilot marked the agent as broken
Copilot and Teams send invoke activities alongside messages. With no handler, the adapter answered 501 Not Implemented, and Copilot treated the agent as faulty.
Explicit 200 invokeResponse for invoke activities, silent acknowledgement for events, and an error handler that never throws on non-message turns.