This probably doesn't matter in practice, but it seems inconsistent to FIN the stream upon receipt of the CLOSE_WEBTRANSPORT_SESSION capsule. For example, the receiver might be in the middle of sending a CLOSE_WEBTRANSPORT_SESSION themselves (and blocked on flow control, for example). Semantically, FIN would imply that transmitting on this stream finished successfully.
An endpoint that sends a CLOSE_WEBTRANSPORT_SESSION capsule MUST immediately send a FIN. The endpoint MAY send a STOP_SENDING to indicate it is no longer reading from the CONNECT stream. The recipient MUST close the stream upon receiving a FIN.
This probably doesn't matter in practice, but it seems inconsistent to FIN the stream upon receipt of the CLOSE_WEBTRANSPORT_SESSION capsule. For example, the receiver might be in the middle of sending a CLOSE_WEBTRANSPORT_SESSION themselves (and blocked on flow control, for example). Semantically, FIN would imply that transmitting on this stream finished successfully.
Instead, the receiver should reset the stream.