docs about middleware composition noop