{
  "$defs": {
    "DiscoveryFilters": {
      "additionalProperties": false,
      "properties": {
        "altitudes": {
          "default": [],
          "items": {
            "enum": [
              "symbol",
              "pair",
              "sleeve",
              "cross_section",
              "strategy",
              "portfolio"
            ],
            "type": "string"
          },
          "title": "Altitudes",
          "type": "array"
        },
        "authorities": {
          "default": [],
          "items": {
            "enum": [
              "signal",
              "position_policy",
              "sizing",
              "execution",
              "risk",
              "construction",
              "resource",
              "documentation"
            ],
            "type": "string"
          },
          "title": "Authorities",
          "type": "array"
        },
        "capabilities": {
          "default": [],
          "items": {
            "enum": [
              "level_state",
              "edge_trigger",
              "discrete_transition",
              "reentry",
              "breakout",
              "composition",
              "sequence",
              "recurring_schedule",
              "time_window",
              "event_payload",
              "stateful",
              "dynamic_level",
              "relative_value",
              "cross_sectional",
              "portfolio_construction",
              "execution",
              "exit_management",
              "value_expression",
              "resource_definition"
            ],
            "type": "string"
          },
          "title": "Capabilities",
          "type": "array"
        },
        "families": {
          "default": [],
          "items": {
            "enum": [
              "bands",
              "combinators",
              "cross_sectional",
              "custom_structures",
              "execution",
              "indicators",
              "momentum",
              "options",
              "patterns",
              "price_levels",
              "price_signals",
              "risk_management",
              "strategy_config",
              "temporal",
              "time_and_events",
              "trend",
              "value_refs",
              "volatility",
              "volume"
            ],
            "type": "string"
          },
          "title": "Families",
          "type": "array"
        },
        "kinds": {
          "default": [],
          "items": {
            "enum": [
              "condition",
              "smart_card",
              "combinator",
              "value_ref",
              "indicator_shape",
              "execution_price",
              "config",
              "resource",
              "workflow",
              "recipe"
            ],
            "type": "string"
          },
          "title": "Kinds",
          "type": "array"
        },
        "recommended_roles": {
          "default": [],
          "items": {
            "enum": [
              "entry",
              "exit",
              "gate"
            ],
            "type": "string"
          },
          "title": "Recommended Roles",
          "type": "array"
        },
        "requires_state": {
          "default": [],
          "items": {
            "enum": [
              "previous_bar",
              "entry_bar",
              "live_position",
              "trade_history",
              "strategy_equity",
              "portfolio_universe",
              "event_data",
              "anchor",
              "named_zone",
              "triggering_zone"
            ],
            "type": "string"
          },
          "title": "Requires State",
          "type": "array"
        }
      },
      "title": "DiscoveryFilters",
      "type": "object"
    }
  },
  "properties": {
    "action": {
      "description": "get fetches a known exact ref in one call; list returns compact matching records; facets lists exact filter values when the domain is unknown.",
      "enum": [
        "facets",
        "list",
        "get"
      ],
      "title": "Action",
      "type": "string"
    },
    "detail": {
      "default": "compact",
      "description": "Projection for action='list'. 'compact' returns only canonical ref, kind, and condition discriminator; 'full' returns all filtering metadata. Ignored by facets/get because those actions have one fixed projection.",
      "enum": [
        "compact",
        "full"
      ],
      "title": "Detail",
      "type": "string"
    },
    "filters": {
      "anyOf": [
        {
          "$ref": "#/$defs/DiscoveryFilters"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "description": "Exact filters for action='list'. AND across fields, OR within each array. At least one filter must be non-empty."
    },
    "ref": {
      "anyOf": [
        {
          "type": "string"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "description": "Canonical or documented alias for action='get'. If the exact type is known, call get directly (for example condition:trailing_stop).",
      "title": "Ref"
    }
  },
  "required": [
    "action"
  ],
  "title": "builder_discoverArguments",
  "type": "object"
}
