Repository: vuejs/eslint-plugin-vue (JavaScript)

Issue:
9.19.0 bug with vue/v-on-event-hyphenation
<!--
  ❗Please don't ignore this template.❗

  If you ignore it, we're just going to respond asking you to fill it out, which wastes everyone's time.
  The more relevant information you can include, the faster we can find the issue and fix it without asking you for more info.
-->

<!--
  Before posting the issue, please confirm that the problem you're getting
  is not related with your code editor configuration.
  To make sure it's not, run: yarn eslint src/your-file.vue
-->

**Checklist**

- [x] I have tried restarting my IDE and the issue persists.
- [x] I have read the [FAQ](https://eslint.vuejs.org/user-guide/#faq) and my problem is not listed.
<!-- If you do not read the FAQ and open an issue that is listed in the FAQ, we may silently close the issue. -->

**Tell us about your environment**

- **ESLint version: 8.54.0**  
- **eslint-plugin-vue version: 9.19.0** 
- **Node version: 18** 
- **Operating System: macOS** 

**Please show your full configuration:**
<!-- Paste content of your .eslintrc file -->
```json5
module.exports = {
  root: true,
  env: {
    node: true
  },
  plugins: ["prettier"],
  extends: [
    "plugin:vue/vue3-recommended",
    "eslint:recommended",
    "@vue/eslint-config-typescript",
    "prettier"
  ],
  rules: {
    "vue/multi-word-component-names": "off",
    "vue/no-reserved-component-names": "off"
  }
};
```

**What did you do?**	
Breaks on running `eslint . --fix --ignore-path .gitignore` when the option `plugin:vue/vue3-recommended` or higher is in the .eslintrc.cjs

```
Oops! Something went wrong! :(

ESLint: 8.54.0

Error: .eslintrc.cjs » plugin:vue/vue3-recommended » /Users/electrics01/GitHub/PrivateUploader/frontend/node_modules/eslint-plugin-vue/lib/configs/vue3-strongly-recommended.js:
        Configuration for rule "vue/v-on-event-hyphenation" is invalid:
        Value {"autofix":true} should be equal to one of the allowed values.
```
**Repository to reproduce this issue**
Use any with 9.19.0 and `plugin:vue/vue3-recommended` 




Discussion:
We face the same problem.
I have a fix, will create a pr now
Fixed in #2333
Thank you for letting me know about the issue!
I fixed the problem and released it.
https://github.com/vuejs/eslint-plugin-vue/releases/tag/v9.19.1




Patch:
diff --git a/lib/configs/vue3-strongly-recommended.js b/lib/configs/vue3-strongly-recommended.js
index 564e386b1..a3f854fc4 100644
--- a/lib/configs/vue3-strongly-recommended.js
+++ b/lib/configs/vue3-strongly-recommended.js
@@ -30,6 +30,7 @@ module.exports = {
     'vue/v-bind-style': 'warn',
     'vue/v-on-event-hyphenation': [
       'warn',
+      'always',
       {
         autofix: true
       }
diff --git a/lib/rules/v-on-event-hyphenation.js b/lib/rules/v-on-event-hyphenation.js
index b797b3b79..9ebe7554d 100644
--- a/lib/rules/v-on-event-hyphenation.js
+++ b/lib/rules/v-on-event-hyphenation.js
@@ -12,7 +12,7 @@ module.exports = {
       categories: ['vue3-strongly-recommended'],
       url: 'https://eslint.vuejs.org/rules/v-on-event-hyphenation.html',
       defaultOptions: {
-        vue3: [{ autofix: true }]
+        vue3: ['always', { autofix: true }]
       }
     },
     fixable: 'code',


Test patch:
diff --git a/tests/lib/configs/configs.js b/tests/lib/configs/configs.js
new file mode 100644
index 000000000..e21d2e455
--- /dev/null
+++ b/tests/lib/configs/configs.js
@@ -0,0 +1,25 @@
+'use strict'
+
+const { ESLint } = require('../../eslint-compat')
+const plugin = require('../../../lib/index')
+
+describe('configs', () => {
+  for (const name of Object.keys(plugin.configs)) {
+    const configName = `plugin:vue/${name}`
+    const eslint = new ESLint({
+      overrideConfig: {
+        extends: [configName]
+      },
+      useEslintrc: false,
+      plugins: { vue: plugin },
+      fix: true
+    })
+    describe(`test for ${configName}`, () => {
+      it('without error', async () => {
+        await eslint.lintText('', {
+          filePath: 'test.vue'
+        })
+      })
+    })
+  }
+})