name: Bug Report
description: Report a bug in the Helius Rust SDK
title: "[Bug]: "
labels: ["bug", "triage"]
assignees: []
body:
  - type: markdown
    attributes:
      value: |
        Thank you for helping us squash bugs! Please fill out this form as completely as possible.

  - type: input
    id: sdk-version
    attributes:
      label: SDK Version
      description: What version of the Helius SDK are you using? (Run `cargo tree -p helius` or check your Cargo.toml)
      placeholder: e.g., 1.0.0
    validations:
      required: true

  - type: input
    id: environment
    attributes:
      label: Environment
      description: Rust version, OS, Solana cluster (e.g., mainnet-beta), and relevant dependencies (e.g., solana-sdk version)
      placeholder: e.g., Rust 1.85, Ubuntu 24.04, mainnet-beta, solana-sdk 3.0.0
    validations:
      required: true

  - type: textarea
    id: description
    attributes:
      label: Describe the Bug
      description: A clear and concise description of what the bug is.
      placeholder: When I call Helius::new(), it returns the following error...
    validations:
      required: true

  - type: textarea
    id: reproduction
    attributes:
      label: Steps to Reproduce
      description: Provide a minimal code example or steps to replicate the issue.
      placeholder: |
        1. Add dependency: cargo add helius
        2. Code:
           let helius = Helius::new("api_key", Cluster::MainnetBeta)?;
           let asset = helius.rpc().get_asset(...).await?;
        3. Run: cargo run
        4. See error: ...
      render: rust
    validations:
      required: true

  - type: textarea
    id: expected-behavior
    attributes:
      label: Expected Behavior
      description: What did you expect to happen instead?
      placeholder: It should return a valid Helius instance without any errors.
    validations:
      required: true

  - type: textarea
    id: logs
    attributes:
      label: Logs/Screenshots
      description: Include error messages, stack traces, or screenshots if applicable.
      render: shell
    validations:
      required: false

  - type: checkboxes
    id: checks
    attributes:
      label: Additional Checks
      options:
        - label: I have searched for existing issues and this is not a duplicate.
          required: true
        - label: I have tested with the latest version.
          required: true
