{"record":{"id":"5bafc0520fac1f2d","repo":"toeverything/AFFiNE","slug":"invalid-dependency","errorCode":null,"errorMessage":"Invalid dependency","messagePattern":"Invalid dependency","errorType":"exception","errorClass":"Error","httpStatus":null,"severity":"error","filePath":"packages/common/infra/src/framework/core/framework.ts","lineNumber":493,"sourceCode":"    return this;\n  };\n}\n\n/**\n * Convert dependencies definition to a factory function.\n */\nfunction dependenciesToFactory(\n  cls: any,\n  deps: any[] = []\n): ComponentFactory<any> {\n  return (provider: FrameworkProvider) => {\n    const args = [];\n    for (const dep of deps) {\n      let isAll;\n      let identifier;\n      if (Array.isArray(dep)) {\n        if (dep.length !== 1) {\n          throw new Error('Invalid dependency');\n        }\n        isAll = true;\n        identifier = dep[0];\n      } else {\n        isAll = false;\n        identifier = dep;\n      }\n      if (isAll) {\n        args.push(Array.from(provider.getAll(identifier).values()));\n      } else {\n        args.push(provider.get(identifier));\n      }\n    }\n    if (isConstructor(cls)) {\n      return new cls(...args, provider);\n    } else {\n      return cls(...args, provider);\n    }","sourceCodeStart":475,"sourceCodeEnd":511,"githubUrl":"https://github.com/toeverything/AFFiNE/blob/b4c8548c09da21b2898443559a5b846f0ccf5dd8/packages/common/infra/src/framework/core/framework.ts#L475-L511","documentation":"dependenciesToFactory throws 'Invalid dependency' when an array-form dependency declaration does not contain exactly one element, catching malformed DI dependency metadata at component registration time.","triggerScenarios":"Thrown at packages/common/infra/src/framework/core/framework.ts:493 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Ensure every entry in the dependency list is a valid service identifier.","Fix imports so dependencies reference the identifier, not an implementation or undefined value.","Check for circular or missing imports that leave a dependency undefined."],"exampleFix":null,"handlingStrategy":"validation","validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"b4c8548c09da21b2898443559a5b846f0ccf5dd8","analyzedAt":"2026-08-18T21:16:52.546Z","contentChangedAt":"2026-08-18T21:16:52.546Z","schemaVersion":2},"datasetVersion":"2026-09-14T00:17:10.932Z"}