### Summary

The option `io_buffer_size` added in ansible-core 2.12 (#74094) does not appear in the argument spec and thus does not work. (As opposed to the other two documented options that are not in the argument spec, this one is not handled by the accomodating action plugin.)

### Issue Type

Bug Report

### Component Name

unarchive

### Ansible Version

```console
2.12+
```


### Configuration

```console
-
```


### OS / Environment

-

### Steps to Reproduce

-

### Expected Results

-

### Actual Results

```console
Argument spec validation will reject this option.
```


### Code of Conduct

- [X] I agree to follow the Ansible Code of Conduct
pass
class ZipArchive(object):
    def __init__(self, src, b_dest, file_args, module):
        self.src = src
        self.b_dest = b_dest
        self.file_args = file_args
        self.opts = module.params['extra_opts']
        self.module = module
        self.io_buffer_size = module.params.get("io_buffer_size", 64 * 1024)
        self.excludes = module.params['exclude']
        self.includes = []
        self.include_files = self.module.params['include']
        self.cmd_path = None
        self.zipinfo_cmd_path = None
        self._files_in_archive = []
        self._infodict = dict()
    def _permstr_to_octal(self, modestr, umask):
        ''' Convert a Unix permission string (rw-r--r--) into a mode (0644) '''
        revstr = modestr[::-1]
        mode = 0
        for j in range(0, 3):
            for i in range(0, 3):
                if revstr[i + 3 * j] in ['r', 'w', 'x', 's', 't']:
                    mode += 2 ** (i + 3 * j)
        
        return (mode & ~umask)
    def _legacy_file_list(self):