packages/dashboard/test-plans/option-groups-feature.md
npm run populate (fresh data recommended)http://localhost:5173/dashboard/Navigate to: /dashboard/option-groups
Expected:
Navigate to: Click any option group name from the list, e.g. /dashboard/option-groups/1
Expected:
/products/$id
Actions to test:
Navigate to: /dashboard/products/[any-product-id] → find the "Product Options" sidebar block → click the edit icon on an option group badge
Expected URL: /dashboard/option-groups/[group-id]?from=product&productId=[product-id]
Expected breadcrumbs: Products > [Product Name] > Option Groups > [Group Name]
Everything else identical to test 2 — same form, same blocks, same functionality.
Navigate to: /dashboard/option-groups → click "New option group"
Expected URL: /dashboard/option-groups/new
Expected:
Actions:
/dashboard/option-groups/[new-id]Navigate to: /dashboard/option-groups/[id] → scroll to "Product Options" block
Expected:
Click an option name:
/dashboard/option-groups/[group-id]/options/[option-id]Click "Add product option":
/dashboard/option-groups/[group-id]/options/newNavigate to: /dashboard/option-groups/[id]?from=product&productId=[pid] → click an option name in the Product Options table
Expected URL: /dashboard/option-groups/[group-id]/options/[option-id]?from=product&productId=[pid]
Expected breadcrumbs: Products > [Product Name] > Option Groups > [Group Name] > [Option Name]
Same for "Add product option" — the from and productId query params should propagate.
Navigate to: /dashboard/option-groups/[id] → sidebar "Products" block → click "Assign to products"
Expected:
Actions:
Navigate to: /dashboard/option-groups/[id] → sidebar "Channels" block (only if >1 channel configured)
Expected:
Assign to channel:
Remove from channel:
Navigate to: /dashboard/products/[id] → sidebar "Channels" block
Same flow as test 8 but for products. Verify:
queryKeyScope fix)Navigate to: /dashboard/option-groups/[id] where the group is assigned to 2+ products
Expected:
Navigate to an option group assigned to 0-1 products:
Navigate to: /dashboard/option-groups
Actions:
Navigate directly to:
/dashboard/products/1/option-groups/1 → should 404 or redirect (route no longer exists)/dashboard/products/1/option-groups/1/options/1 → sameThese product-scoped routes were removed in favour of the query parameter pattern.
/dashboard/option-groups — list loads/dashboard/products/[id] — click option group badge — lands on /dashboard/option-groups/[id]?from=product&productId=... with product breadcrumbs