diff --git a/.changeset/fix-select-combobox-item-double-role-738.md b/.changeset/fix-select-combobox-item-double-role-738.md
new file mode 100644
index 000000000..9b27ef548
--- /dev/null
+++ b/.changeset/fix-select-combobox-item-double-role-738.md
@@ -0,0 +1,18 @@
+---
+"@vuetify/v0": patch
+---
+
+fix(Select, Combobox): correct the documented Item example to avoid double `role="option"` (#738)
+
+`Select.Item` and `Combobox.Item` already bind their full `attrs` bundle (including
+`role="option"`) onto their own non-renderless `Atom`. Both components' `@example`
+JSDoc then spread that same `attrs` object onto a child `
` inside the default
+slot — which `.claude/rules/components.md` documents as unsupported outside
+`renderless` mode: it renders `role="option"` twice (`listbox > div[role="option"] >
+div[role="option"]`, failing axe's `aria-required-parent`) and double-fires every
+handler in `attrs`, once on the child and again via bubbling to the Atom.
+
+Added `renderless` to the documented `Select.Item` / `Combobox.Item` usage in both
+components' `@example` blocks, so the consumer's own element is the only one
+rendered — matching how `packages/0/src/components/fixtures/Select.vue` and
+`Combobox.vue` (and every real docs example) already use these components.
diff --git a/packages/0/src/components/Combobox/index.ts b/packages/0/src/components/Combobox/index.ts
index 0e63e4a11..1f797cede 100644
--- a/packages/0/src/components/Combobox/index.ts
+++ b/packages/0/src/components/Combobox/index.ts
@@ -61,6 +61,7 @@ import Root from './ComboboxRoot.vue'
* :key="item.id"
* :id="item.id"
* :value="item.label"
+ * renderless
* v-slot="{ isSelected, attrs }"
* >
*
{{ item.label }}
@@ -171,7 +172,7 @@ export const Combobox = {
*
* @example
* ```vue
- *
+ *
*
* Apple {{ isSelected ? '✓' : '' }}
*
diff --git a/packages/0/src/components/Select/index.ts b/packages/0/src/components/Select/index.ts
index ad543d1d6..7c6c903f8 100644
--- a/packages/0/src/components/Select/index.ts
+++ b/packages/0/src/components/Select/index.ts
@@ -57,6 +57,7 @@ import Value from './SelectValue.vue'
* :key="item.id"
* :id="item.id"
* :value="item.label"
+ * renderless
* v-slot="{ isSelected, attrs }"
* >
* {{ item.label }}
@@ -183,7 +184,7 @@ export const Select = {
*
*
*
- *
+ *
* Apple {{ isSelected ? '✓' : '' }}
*
*