{"record":{"id":"084e02e214781a24","repo":"github/github-mcp-server","slug":"invalid-s-q-must-be-yyyy-mm-dd-format","errorCode":null,"errorMessage":"invalid %s %q: must be YYYY-MM-DD format","messagePattern":"invalid (.+?) %q: must be YYYY-MM-DD format","errorType":"validation","errorClass":null,"httpStatus":null,"severity":"error","filePath":"pkg/github/projects.go","lineNumber":1698,"sourceCode":"\tif fullDatabaseID := mutation.AddProjectV2ItemByID.Item.FullDatabaseID; fullDatabaseID != \"\" {\n\t\tresult[\"full_database_id\"] = fullDatabaseID\n\t\tif itemID, err := strconv.ParseInt(fullDatabaseID, 10, 64); err == nil {\n\t\t\tresult[\"item_id\"] = itemID\n\t\t}\n\t}\n\n\tr, err := json.Marshal(result)\n\tif err != nil {\n\t\treturn nil, nil, fmt.Errorf(\"failed to marshal response: %w\", err)\n\t}\n\n\treturn utils.NewToolResultText(string(r)), nil, nil\n}\n\n// validateDateFormat checks that a date string is in YYYY-MM-DD format.\nfunc validateDateFormat(value, fieldName string) error {\n\tif _, err := time.Parse(\"2006-01-02\", value); err != nil {\n\t\treturn fmt.Errorf(\"invalid %s %q: must be YYYY-MM-DD format\", fieldName, value)\n\t}\n\treturn nil\n}\n\n// createProjectStatusUpdate creates a new status update for a project via GraphQL.\nfunc createProjectStatusUpdate(ctx context.Context, gqlClient *githubv4.Client, owner, ownerType string, projectNumber int, body, status, startDate, targetDate string) (*mcp.CallToolResult, any, error) {\n\t// Validate inputs\n\tif ownerType != \"user\" && ownerType != \"org\" {\n\t\treturn utils.NewToolResultError(fmt.Sprintf(\"invalid owner_type %q: must be \\\"user\\\" or \\\"org\\\"\", ownerType)), nil, nil\n\t}\n\tif status != \"\" && !validProjectV2StatusUpdateStatuses[status] {\n\t\treturn utils.NewToolResultError(fmt.Sprintf(\"invalid status %q: must be one of INACTIVE, ON_TRACK, AT_RISK, OFF_TRACK, COMPLETE\", status)), nil, nil\n\t}\n\tif startDate != \"\" {\n\t\tif err := validateDateFormat(startDate, \"start_date\"); err != nil {\n\t\t\treturn utils.NewToolResultError(err.Error()), nil, nil\n\t\t}\n\t}","sourceCodeStart":1680,"sourceCodeEnd":1716,"githubUrl":"https://github.com/github/github-mcp-server/blob/0ea1f775a7c73eff1bd2e25904d01136756bbfe2/pkg/github/projects.go#L1680-L1716","documentation":"Error \"invalid %s %q: must be YYYY-MM-DD format\" thrown in github/github-mcp-server.","triggerScenarios":"Thrown at pkg/github/projects.go:1698 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":[],"exampleFix":null,"handlingStrategy":null,"validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"0ea1f775a7c73eff1bd2e25904d01136756bbfe2","analyzedAt":"2026-08-15T18:10:19.804Z","schemaVersion":2},"datasetVersion":"2026-08-15T22:17:37.221Z"}