{"record":{"id":"25894fe408ac9f77","repo":"mastra-ai/mastra","slug":"experiments-store-not-available-25894f","errorCode":"EXPERIMENTS_STORE_NOT_AVAILABLE","errorMessage":"Experiments store not available. Ensure your storage adapter provides an experiments domain.","messagePattern":"Experiments store not available\\. Ensure your storage adapter provides an experiments domain\\.","errorType":"error_code","errorClass":"MastraError","httpStatus":null,"severity":"error","filePath":"packages/core/src/datasets/manager.ts","lineNumber":88,"sourceCode":"    return store;\n  }\n\n  async #getExperimentsStore(): Promise<ExperimentsStorage> {\n    if (this.#experimentsStore) return this.#experimentsStore;\n\n    const storage = this.#mastra.getStorage();\n    if (!storage) {\n      throw new MastraError({\n        id: 'DATASETS_STORAGE_NOT_CONFIGURED',\n        text: 'Storage not configured. Configure storage in Mastra instance.',\n        domain: 'STORAGE',\n        category: 'USER',\n      });\n    }\n\n    const store = await storage.getStore('experiments');\n    if (!store) {\n      throw new MastraError({\n        id: 'EXPERIMENTS_STORE_NOT_AVAILABLE',\n        text: 'Experiments store not available. Ensure your storage adapter provides an experiments domain.',\n        domain: 'STORAGE',\n        category: 'USER',\n      });\n    }\n\n    this.#experimentsStore = store;\n    return store;\n  }\n\n  // ---------------------------------------------------------------------------\n  // Dataset CRUD\n  // ---------------------------------------------------------------------------\n\n  /**\n   * Create a new dataset.\n   *","sourceCodeStart":70,"sourceCodeEnd":106,"githubUrl":"https://github.com/mastra-ai/mastra/blob/75dd419e613fe9c39f846ffc500716141b74fda6/packages/core/src/datasets/manager.ts#L70-L106","documentation":"Storage is configured but getStore('experiments') yields no experiments domain store, so #getExperimentsStore throws EXPERIMENTS_STORE_NOT_AVAILABLE. This indicates the storage backend lacks experiment support specifically (as opposed to no storage at all).","triggerScenarios":"Adapter without the experiments domain; version mismatch where core expects an experiments store the installed adapter doesn't provide; custom adapter missing the experiments capability registration.","commonSituations":"Partial domain support in third-party storage adapters; upgrading core for experiments while storage package lags behind; minimal dev adapters.","solutions":["Upgrade the storage adapter to a release implementing the experiments domain.","Switch to an official adapter with full experiments support.","Implement the experiments domain in your custom storage adapter.","Probe at boot: const s = await storage.getStore('experiments'); if (!s) fail fast with a clear message."],"exampleFix":"// before\nstorage: new MinimalStore() // no experiments domain\n// after\nstorage: new LibSQLStore({ url: process.env.DATABASE_URL })","handlingStrategy":"validation","validationCode":"const store = await mastra.getStorage()?.getStore('experiments');\nif (!store) throw new Error('Storage adapter lacks experiments domain; upgrade or switch adapter');","typeGuard":"async function experimentsSupported(m: Mastra): Promise<boolean> {\n  return !!(await m.getStorage()?.getStore('experiments'));\n}","tryCatchPattern":"try {\n  await experiments.list({});\n} catch (err) {\n  if (err?.id === 'EXPERIMENTS_STORE_NOT_AVAILABLE') {\n    logger.error('Storage adapter does not implement the experiments domain');\n  }\n  throw err;\n}","preventionTips":["Upgrade the storage adapter package when adopting experiments features from newer core versions.","Run a boot-time capability probe for every domain you depend on.","Choose adapters documenting experiments support explicitly.","If you maintain a custom adapter, add domain registration tests."],"tags":["storage","experiments","compatibility"],"backgroundTag":"storage-domain-not-supported","analyzedSha":"75dd419e613fe9c39f846ffc500716141b74fda6","analyzedAt":"2026-08-30T00:15:31.844Z","schemaVersion":2},"datasetVersion":"2026-08-30T08:17:16.595Z"}