About custom authAdapter

I have custom authAdater

auth: {
    sms: {
            module: SMSAuth,
            enabled: true,
            clientId: "clientId",
            clientSecret: "clientSecret",
        },
        qq: {
            module: QQAuth,
            enabled: true,
            clientId: "clientId",
            clientSecret: "clientSecret",
            enableInsecureAuth: true
        },
export class QQAuth extends  BaseAuthCodeAdapter {
    constructor() {
        super("qq");
    }

    async getUserFromAccessToken(access_token, authData) {
        return authData.id
    }

    async getAccessTokenFromCode(authData) {
        return "access_token"
    }
}

export default QQAuth;
module.exports = QQAuth

but when i use

 await user.linkWith("sms", {
            authData: {
                id: mobileNum
            }
        }, {useMasterKey: true});

the user authData is

{
  "qq": {
    "id": "1BAA6C00C9CD43AA95BB1F30A0EA01B8"
  },
  "qq_unionid": {
    "id": "UID_B7882A925E67EAE303A8665ED30EC2A8"
  },
  "sms": {
    "id": "+86177xxxxxxxx"
  }
}

and error is

Parse error:  ParseError: qq auth is invalid for this user.
[TS]     at QqAdapter.beforeFind (D:\Test\parse\node_modules\parse-server\src\Adapters\Auth\BaseCodeAuthAdapter.js:34:15)
[TS]     at map (D:\Test\parse\node_modules\parse-server\src\Auth.js:429:23)
[TS]     at Array.map (<anonymous>)
[TS]     at Object.findUsersWithAuthData (D:\Test\parse\node_modules\parse-server\src\Auth.js:424:15)
[TS]     at RestWrite.handleAuthData (D:\Test\parse\node_modules\parse-server\src\RestWrite.js:541:24)
[TS]     at RestWrite.validateAuthData (D:\Test\parse\node_modules\parse-server\src\RestWrite.js:484:19)
[TS]     at D:\Test\parse\node_modules\parse-server\src\RestWrite.js:112:19
[TS]     at processTicksAndRejections (node:internal/process/task_queues:95:5) {
[TS]   code: 101
[TS] }

very strange is at “QqAdapter.beforeFind”, i have custom authAdapter, but why the error is QqAdapter ?

server version:

"parse-server": "^8.1.0",