{"record":{"id":"8ab094818f2409d2","repo":"multica-ai/multica","slug":"s-must-resolve-to-a-file-got-directory-s","errorCode":null,"errorMessage":"%s must resolve to a file, got directory %s","messagePattern":"(.+?) must resolve to a file, got directory (.+?)","errorType":"validation","errorClass":null,"httpStatus":null,"severity":"error","filePath":"server/internal/daemon/execenv/cursor_mcp.go","lineNumber":174,"sourceCode":"\t\t}\n\t}\n\tif !filepath.IsAbs(source) {\n\t\treturn \"\", fmt.Errorf(\"%s must be an absolute path to %s or its containing Cursor project directory\", CursorMcpAuthSourceEnv, cursorMcpAuthFile)\n\t}\n\tsource = filepath.Clean(source)\n\tinfo, err := os.Stat(source)\n\tif err != nil {\n\t\treturn \"\", fmt.Errorf(\"stat %s: %w\", CursorMcpAuthSourceEnv, err)\n\t}\n\tif info.IsDir() {\n\t\tsource = filepath.Join(source, cursorMcpAuthFile)\n\t\tinfo, err = os.Stat(source)\n\t\tif err != nil {\n\t\t\treturn \"\", fmt.Errorf(\"stat %s %s: %w\", CursorMcpAuthSourceEnv, cursorMcpAuthFile, err)\n\t\t}\n\t}\n\tif info.IsDir() {\n\t\treturn \"\", fmt.Errorf(\"%s must resolve to a file, got directory %s\", CursorMcpAuthSourceEnv, source)\n\t}\n\tif filepath.Base(source) != cursorMcpAuthFile {\n\t\treturn \"\", fmt.Errorf(\"%s must point at %s, got %s\", CursorMcpAuthSourceEnv, cursorMcpAuthFile, filepath.Base(source))\n\t}\n\treturn source, nil\n}\n\nfunc copyCursorMcpAuthFile(target, source string) error {\n\tin, err := os.Open(source)\n\tif err != nil {\n\t\treturn err\n\t}\n\tdefer in.Close()\n\n\tout, err := os.OpenFile(target, os.O_WRONLY|os.O_CREATE|os.O_EXCL, 0o600)\n\tif err != nil {\n\t\treturn err\n\t}","sourceCodeStart":156,"sourceCodeEnd":192,"githubUrl":"https://github.com/multica-ai/multica/blob/2c0912b6ec764b373d44eeea1e80f0d9f11ab417/server/internal/daemon/execenv/cursor_mcp.go#L156-L192","documentation":"Error \"%s must resolve to a file, got directory %s\" thrown in multica-ai/multica.","triggerScenarios":"Thrown at server/internal/daemon/execenv/cursor_mcp.go:174 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Point the setting at a file, not a directory."],"exampleFix":null,"handlingStrategy":null,"validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"2c0912b6ec764b373d44eeea1e80f0d9f11ab417","analyzedAt":"2026-08-15T13:25:18.241Z","schemaVersion":2},"datasetVersion":"2026-08-15T17:31:12.345Z"}