https://github.com/ansible/ansible/blob/1706d35fc476e36fcced25435c2f1c2401536376/test/lib/ansible_test/_util/controller/sanity/validate-modules/validate_modules/main.py#L414

When a module is in place to provide documentation for an action, it should be allowed to have a doc string.

Without a docstring users of pydocstring will need to suppress:

```
************* Module plugins.modules.git_away
plugins/modules/git_away.py:1:0: C0114: Missing module docstring (missing-module-docstring)
************* Module plugins.modules.git_here
plugins/modules/git_here.py:1:0: C0114: Missing module docstring (missing-module-docstring)
```

With a doc string the module is treated as a "real" module and fails sanity:

```
ansible-module-not-initialized: Execution of the module did not result in initialization of AnsibleModule
```

PEP257 suggests modules should have a docstring, and is generally considered a good practice to inform future developers of the purpose of the file and can be used for documentation generation as well.
path=self.object_path,
                    code='invalid-requires-extension',
                    msg='Module #Requires should not end in .psm1: "%s"' % module_name
                )
        for req_stmt in re.finditer(csharp_requires, self.text):
            found_requires = True
            
            module_list = [x.strip() for x in req_stmt.group(1).split(',')]
            if len(module_list) > 1:
                self.reporter.error(
                    path=self.object_path,
                    code='multiple-csharp-utils-per-requires',
                    msg='Ansible C# util requirements do not support multiple utils per statement: "%s"' % req_stmt.group(0)
                )
                continue
            module_name = module_list[0]
            if module_name.lower().endswith('.cs'):
                self.reporter.error(
                    path=self.object_path,
                    code='illegal-extension-cs',
                    msg='Module #AnsibleRequires -CSharpUtil should not end in .cs: "%s"' % module_name
                )
        
        if not found_requires and REPLACER_WINDOWS not in self.text:
            self.reporter.error(
                path=self.object_path,
                code='missing-module-utils-import-csharp-requirements',
                msg='No Ansible.ModuleUtils or C# Ansible util requirements/imports found'
            )
    def _find_ps_docs_py_file(self):