name: handle-unavailable-variant description: Use when a user requests a specific product variant (e.g., color, size) for exchange or purchase. This skill involves checking the availability of the exact variant and clearly communicating its stock status to the user. metadata: case_id: 1 case_outcome: failed source: /data/Research_dir/Benchmarks/tau2-bench/data/simulations/gemini_3_flash_retail_reasoning_bank/pattern_guidance_failed.json generated_at: 2026-02-20T20:43:58.723730
Layer 1: Metadata & Description
- Description: Use when a user requests a specific product variant (e.g., color, size) for exchange or purchase. This skill involves checking the availability of the exact variant and clearly communicating its stock status to the user.
Layer 2: Guidelines
General Guidelines
- Always verify the availability of the specific product configuration requested by the user.
- Do not assume a product is available just because the base product exists; check the specific variant.
- Clearly communicate when a specific variant is out of stock, using tool output as the source of truth.
- Follow any conditional instructions the user has provided for out-of-stock scenarios.
- After informing the user, ask for their preferred next step (e.g., choose another variant, cancel the request).
Specific Guidelines
- Call
get_product_detailsfor the product the user wishes to exchange. - Parse the
variantsfrom the tool response to find the one matching the user's specified options (e.g., 'switch type', 'backlight', 'size'). - Check the
availablestatus of the matching variant. - If the variant has
"available": false, inform the user that the specific version is out of stock. - Adhere to any conditional instructions provided by the user for this scenario (e.g., proceed with other exchanges only).
Layer 3: Context
- Problem Pattern: User requests an exchange for a specific product variant that is out of stock.
- State Signature: "9025753381": {"item_id": "9025753381", "options": {"switch type": "clicky", "backlight": "RGB", "size": "full size"}, "available": false, "price": 231.58}
- Bypass Strategy:
- Call
get_product_detailsfor the product the user wishes to exchange. - Parse the
variantsfrom the tool response to identify if the exact combination of user-specified options (e.g., 'switch type', 'backlight', 'size') exists and check itsavailablestatus. - If the matching variant has
"available": false, inform the user that the specific version is out of stock. - Adhere to any conditional instructions provided by the user for this scenario (e.g., proceed with other requested exchanges only, or keep the original item).
- Call
Layer 3: Context (Additional)
- Case Outcome: failed
- Problem Pattern: Desired product variant is unavailable, but user has specified an acceptable fallback option.
- State Signature: User's request in Turn 9: "For the keyboard, I'm looking for a version that has clicky switches. I'd prefer it to be full size with an RGB backlight. However, if you don't have a clicky, full-sized one with RGB, I’m willing to go with one that has no backlight instead."
Tool response in Turn 11 showing the primary variant as unavailable and the fallback variant as available:
{"name": "Mechanical Keyboard", "product_id": "1656367028", "variants": { ... "9025753381": {"item_id": "9025753381", "options": {"switch type": "clicky", "backlight": "RGB", "size": "full size"}, "available": false, "price": 231.58}, ... "7706410293": {"item_id": "7706410293", "options": {"switch type": "clicky", "backlight": "none", "size": "full size"}, "available": true, "price": 269.16}, ...}} - Bypass Strategy:
- Identify that the user's primary preference for the product variant is unavailable based on
get_product_detailstool output. - Identify the user's explicitly stated fallback preference from their input.
- Check the availability of the fallback preference using the
get_product_detailstool output. - Inform the user about the unavailability of the primary preference and present the available fallback option.
- Confirm with the user if the fallback option is acceptable before proceeding.
- Identify that the user's primary preference for the product variant is unavailable based on