{
  "$schema": "https://farmslot.io/schemas/recipe-v1.schema.json",
  "title": "Assets release token list",
  "description": "Opens the wallet token list and proves selected live assets render formatted fiat and price-change values through visible UI.",
  "paramsSchema": {
    "type": "object",
    "additionalProperties": false,
    "properties": {
      "symbols": {
        "type": "array",
        "items": { "type": "string" },
        "default": ["USDC", "BNB"]
      },
      "minimum_asset_count": {
        "type": "integer",
        "minimum": 1,
        "default": 2
      },
      "minimum_price_change_count": {
        "type": "integer",
        "minimum": 0,
        "default": 1
      },
      "minimum_without_price_change_count": {
        "type": "integer",
        "minimum": 0,
        "default": 1
      },
      "require_price_change_styling": {
        "type": "boolean",
        "default": false
      },
      "timeout_ms": {
        "type": "integer",
        "minimum": 1000,
        "default": 45000
      }
    }
  },
  "workflow": {
    "entry": "open-wallet",
    "nodes": {
      "open-wallet": {
        "action": "ui.navigate",
        "page": "home",
        "timeout_ms": "{{params.timeout_ms}}",
        "intent": "Open the wallet token list through visible product navigation",
        "next": "assert-token-list"
      },
      "assert-token-list": {
        "action": "metamask.assets.read_visible_state",
        "minimum_asset_count": "{{params.minimum_asset_count}}",
        "minimum_price_change_count": "{{params.minimum_price_change_count}}",
        "minimum_without_price_change_count": "{{params.minimum_without_price_change_count}}",
        "require_symbols": "{{params.symbols}}",
        "require_fiat": true,
        "require_price_change_styling": "{{params.require_price_change_styling}}",
        "max_items": 100,
        "intent": "Prove selected live assets, formatted fiat, price changes, and clean values are visible",
        "next": "capture-token-list"
      },
      "capture-token-list": {
        "action": "ui.screenshot",
        "path": "screenshots/assets-token-list.png",
        "label": "Assets release token list",
        "intent": "Preserve reviewer-visible proof of the live token list",
        "next": "done"
      },
      "done": {
        "action": "end",
        "status": "pass"
      }
    }
  }
}
