same feedback again. consider making `read_only` part of `opts`.