{"record":{"id":"2f82d19678f5f1ea","repo":"multica-ai/multica","slug":"github-repo-url-must-be-a-valid-http-s-or-ssh-gi","errorCode":null,"errorMessage":"github_repo: url must be a valid http(s) or ssh git URL","messagePattern":"github_repo: url must be a valid http\\(s\\) or ssh git URL","errorType":"validation","errorClass":null,"httpStatus":400,"severity":"error","filePath":"server/internal/handler/project_resource.go","lineNumber":101,"sourceCode":"}\n\ntype githubRepoRef struct {\n\tURL               string `json:\"url\"`\n\tDefaultBranchHint string `json:\"default_branch_hint,omitempty\"`\n\tRef               string `json:\"ref,omitempty\"`\n}\n\nfunc validateGithubRepoRef(ref json.RawMessage) (json.RawMessage, error) {\n\tvar payload githubRepoRef\n\tif err := json.Unmarshal(ref, &payload); err != nil {\n\t\treturn nil, fmt.Errorf(\"invalid github_repo payload: %w\", err)\n\t}\n\tpayload.URL = strings.TrimSpace(payload.URL)\n\tif payload.URL == \"\" {\n\t\treturn nil, errors.New(\"github_repo: url is required\")\n\t}\n\tif !isValidGitRepoURL(payload.URL) {\n\t\treturn nil, errors.New(\"github_repo: url must be a valid http(s) or ssh git URL\")\n\t}\n\tpayload.DefaultBranchHint = strings.TrimSpace(payload.DefaultBranchHint)\n\tpayload.Ref = strings.TrimSpace(payload.Ref)\n\tout, err := json.Marshal(payload)\n\tif err != nil {\n\t\treturn nil, err\n\t}\n\treturn out, nil\n}\n\n// Execution modes for resource_type=local_directory. The zero value (absent\n// field) means in_place, so resources created before worktree mode existed keep\n// their original behavior without a data migration.\nconst (\n\t// localDirectoryModeInPlace runs the agent directly in the user's\n\t// directory, serialised by the daemon's per-path mutex: one task at a\n\t// time, edits land in the user's working tree.\n\tlocalDirectoryModeInPlace = \"in_place\"","sourceCodeStart":83,"sourceCodeEnd":119,"githubUrl":"https://github.com/multica-ai/multica/blob/2c0912b6ec764b373d44eeea1e80f0d9f11ab417/server/internal/handler/project_resource.go#L83-L119","documentation":"Error \"github_repo: url must be a valid http(s) or ssh git URL\" thrown in multica-ai/multica.","triggerScenarios":"Thrown at server/internal/handler/project_resource.go:101 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Use a valid http(s) URL or SSH git URL for the repository, e.g. https://github.com/org/repo.git or git@github.com:org/repo.git."],"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-15T22:17:37.221Z"}