{"record":{"id":"564685408481b41e","repo":"paperclipai/paperclip","slug":"cannot-reload-built-in-adapter","errorCode":null,"errorMessage":"Cannot reload built-in adapter.","messagePattern":"Cannot reload built-in adapter\\.","errorType":"http","errorClass":null,"httpStatus":400,"severity":"error","filePath":"server/src/routes/adapters.ts","lineNumber":601,"sourceCode":"\n    res.json({ type: adapterType, removed: true });\n  });\n\n  /**\n   * POST /api/adapters/:type/reload\n   *\n   * Reload an external adapter at runtime (for dev iteration without server restart).\n   * Busts the ESM module cache, re-imports the adapter, and re-registers it.\n   *\n   * Cannot be used on built-in adapter types.\n   */\n  router.post(\"/adapters/:type/reload\", async (req, res) => {\n    assertInstanceAdmin(req);\n    assertAdapterManagementVisible();\n\n    const type = req.params.type;\n\n    // Built-in adapters cannot be reloaded unless overridden by an external one\n    if (BUILTIN_ADAPTER_TYPES.has(type) && !getAdapterPluginByType(type)) {\n      res.status(400).json({ error: \"Cannot reload built-in adapter.\" });\n      return;\n    }\n\n    // Reload the adapter module (busts ESM cache, re-imports)\n    try {\n      const newModule = await reloadExternalAdapter(type);\n\n      // Not found in the external adapter store\n      if (!newModule) {\n        res.status(404).json({ error: `Adapter \"${type}\" is not an externally installed adapter.` });\n        return;\n      }\n\n      // Swap in the reloaded module\n      unregisterServerAdapter(type);\n      registerWithSessionManagement(newModule);","sourceCodeStart":583,"sourceCodeEnd":619,"githubUrl":"https://github.com/paperclipai/paperclip/blob/5716fe907e596ce73501408fc6efdb19fb61edf2/server/src/routes/adapters.ts#L583-L619","documentation":"Type guard on POST /api/adapters/:type/reload: the target is a builtin adapter type with no external override installed; builtins are compiled in and cannot be hot-reloaded, so the route returns 400 before busting the module cache.","triggerScenarios":"Thrown at server/src/routes/adapters.ts:544 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Built-in adapters cannot be reloaded; only reload externally installed adapters."],"exampleFix":null,"handlingStrategy":"validation","validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"5716fe907e596ce73501408fc6efdb19fb61edf2","analyzedAt":"2026-08-18T22:49:45.177Z","contentChangedAt":"2026-08-18T22:49:45.177Z","schemaVersion":2},"datasetVersion":"2026-09-14T05:17:10.506Z"}