{"record":{"id":"05d88371d33abf2f","repo":"RocketChat/Rocket.Chat","slug":"method-not-implemented","errorCode":null,"errorMessage":"Method not implemented.","messagePattern":"Method not implemented\\.","errorType":"exception","errorClass":"Error","httpStatus":null,"severity":"error","filePath":"apps/meteor/app/apps/server/bridges/settings.ts","lineNumber":36,"sourceCode":"\t\tconst settings = await Settings.find({ secret: false }).toArray();\n\t\treturn settings.map((s) => this.orch.getConverters()?.get('settings').convertToApp(s));\n\t}\n\n\tprotected async getOneById(id: string, appId: string): Promise<ISetting> {\n\t\tthis.orch.debugLog(`The App ${appId} is getting the setting by id ${id}.`);\n\n\t\tconst setting = await this.getReadableSettingById(id, appId);\n\t\tif (!setting) {\n\t\t\tthrow new Error(`The setting \"${id}\" is not readable.`);\n\t\t}\n\n\t\treturn setting;\n\t}\n\n\tprotected async hideGroup(name: string, appId: string): Promise<void> {\n\t\tthis.orch.debugLog(`The App ${appId} is hidding the group ${name}.`);\n\n\t\tthrow new Error('Method not implemented.');\n\t}\n\n\tprotected async hideSetting(id: string, appId: string): Promise<void> {\n\t\tthis.orch.debugLog(`The App ${appId} is hidding the setting ${id}.`);\n\n\t\tif (!(await this.isReadableById(id, appId))) {\n\t\t\tthrow new Error(`The setting \"${id}\" is not readable.`);\n\t\t}\n\n\t\tthrow new Error('Method not implemented.');\n\t}\n\n\tprotected async isReadableById(id: string, appId: string): Promise<boolean> {\n\t\tthis.orch.debugLog(`The App ${appId} is checking if they can read the setting ${id}.`);\n\t\tconst setting = await Settings.findOneById(id);\n\t\treturn Boolean(setting && !setting.secret);\n\t}\n","sourceCodeStart":18,"sourceCodeEnd":54,"githubUrl":"https://github.com/RocketChat/Rocket.Chat/blob/f9d3ec372bb580fa8d036f94cf03925a478ef768/apps/meteor/app/apps/server/bridges/settings.ts#L18-L54","documentation":"Thrown by hideGroup because the method is a permanent stub: the Apps Engine bridge declares the operation but Rocket.Chat's implementation never provided the behavior. Any app that calls hideGroup will always hit this error regardless of arguments.","triggerScenarios":"An app calls the settings modifier to hide an entire settings group. The bridge logs the intent and immediately throws 'Method not implemented.'","commonSituations":"App imported a UI pattern from another platform that hides settings groups; app author assumed parity with hideSetting; exploratory use of the SDK API surface.","solutions":["Do not call hideGroup; it is unsupported in this Rocket.Chat version.","Hide individual settings via hideSetting instead (also currently stubbed — see error 68), or conditionally render settings in your app's config UI.","Track the upstream issue for implementation and migrate once shipped."],"exampleFix":null,"handlingStrategy":"validation","validationCode":"// hideGroup is unimplemented — do not call it.\n// Guard against accidental use:\nif (typeof bridge.hideGroup === 'function') {\n  // unsupported; skip\n}","typeGuard":null,"tryCatchPattern":null,"preventionTips":["Treat hideGroup as unsupported in current Rocket.Chat.","Manage settings visibility through your app's config schema instead.","Track upstream implementation status before adopting."],"tags":["apps-engine","settings","not-implemented","stub"],"backgroundTag":null,"analyzedSha":"f9d3ec372bb580fa8d036f94cf03925a478ef768","analyzedAt":"2026-08-12T19:07:17.372Z","schemaVersion":2},"datasetVersion":"2026-08-12T23:17:12.415Z"}