# Instruction
- You are an expert in cleaning process data descriptions. Given a task, you are provided with a set of annotation description
data for a certain visual LLM related to human user operation videos. Plus, You are provided with full trace of playwright action,
whic includes action and url before and after the action.
- You need to analyze all the descriptive data and ultimately summarize a complete and reasonable user operation description that can accomplish the given task.
- For each strategy, give a clear list of the low level action sequence.

# Task
See all public projects

# Annotation description
### Step-by-Step Actions in the Video Segment

#### 1. **Action:** I click on the "Yours" tab.
   - **Page Changes:** The page updates to display a list of projects under the "Yours" category, showing 23 projects that I own or contribute to.
   - **Possible Purpose:** To view and manage the projects that are directly associated with my account.

#### 2. **Action:** I hover over the "Topics" tab.
   - **Page Changes:** No immediate change occurs; the page remains on the "Yours" tab content.
   - **Possible Purpose:** To potentially navigate to the "Topics" section, which might categorize projects by specific topics or tags.

#### 3. **Action:** I click on the "Explore" tab.
   - **Page Changes:** The page transitions to the "Explore" section, displaying a different set of projects, including those from other users or public repositories.
   - **Possible Purpose:** To discover new projects or explore trending and popular repositories within the platform.

#### 4. **Action:** I click on the search bar at the top of the page.
   - **Page Changes:** A dropdown menu appears below the search bar, offering options like "Projects," "Groups," "Milestones," "Snippets," and "Activity."
   - **Possible Purpose:** To initiate a search for specific projects, groups, or other elements within the platform.

#### 5. **Action:** I type "Search GitLab" into the search bar.
   - **Page Changes:** As I type, the search bar highlights the text input, but no search results are displayed yet since the search has not been executed.
   - **Possible Purpose:** To find specific content or projects using the search functionality provided by GitLab.

#### 6. **Action:** I click on the "Projects" option in the dropdown menu under the search bar.
   - **Page Changes:** The page likely refocuses on the projects section, though the exact change isn't detailed in this segment.
   - **Possible Purpose:** To narrow down the search scope specifically to projects, ensuring that the search results will only include project-related items.

### Summary
In this video segment, I navigate through different sections of the GitLab interface, starting from viewing my personal projects, exploring other projects, and utilizing the search functionality to find specific content. Each action is aimed at managing and discovering projects within the platform, reflecting typical user behavior for organization and exploration.

# Playwright action
[
  {
    "action_uid": "action_0",
    "idx": 0,
    "action_repr": "frame.clickget_by_placeholder(\"Search GitLab\")",
    "before": {
      "url": "http://ec2-3-135-39-80.us-east-2.compute.amazonaws.com:8023/"
    },
    "after": {
      "url": "http://ec2-3-135-39-80.us-east-2.compute.amazonaws.com:8023/"
    }
  },
  {
    "action_uid": "action_1",
    "idx": 1,
    "action_repr": "frame.clicklocator(\"[id=\\\"__BVID__10__BV_toggle_\\\"]\")",
    "before": {
      "url": "http://ec2-3-135-39-80.us-east-2.compute.amazonaws.com:8023/"
    },
    "after": {
      "url": "http://ec2-3-135-39-80.us-east-2.compute.amazonaws.com:8023/"
    }
  },
  {
    "action_uid": "menu-sidebar",
    "idx": 5,
    "action_repr": "frame.clickget_by_test_id(\"menu-sidebar\").get_by_label(\"Projects\")",
    "before": {
      "url": "http://ec2-3-135-39-80.us-east-2.compute.amazonaws.com:8023/"
    },
    "after": {
      "url": "http://ec2-3-135-39-80.us-east-2.compute.amazonaws.com:8023/"
    }
  },
  {
    "action_uid": "text_Projects New project",
    "idx": 6,
    "action_repr": "frame.clickget_by_text(\"Projects New project\")",
    "before": {
      "url": "http://ec2-3-135-39-80.us-east-2.compute.amazonaws.com:8023/"
    },
    "after": {
      "url": "http://ec2-3-135-39-80.us-east-2.compute.amazonaws.com:8023/"
    }
  },
  {
    "action_uid": "action_7",
    "idx": 7,
    "action_repr": "frame.clicklocator(\"#logo\")",
    "before": {
      "url": "http://ec2-3-135-39-80.us-east-2.compute.amazonaws.com:8023/"
    },
    "after": {
      "url": "http://ec2-3-135-39-80.us-east-2.compute.amazonaws.com:8023/"
    }
  },
  {
    "action_uid": "link_Explore",
    "idx": 8,
    "action_repr": "frame.clickget_by_role(\"link\", name=\"Explore\")",
    "before": {
      "url": "http://ec2-3-135-39-80.us-east-2.compute.amazonaws.com:8023/"
    },
    "after": {
      "url": "http://ec2-3-135-39-80.us-east-2.compute.amazonaws.com:8023/"
    }
  }
]

# Output format
- 先总结整个任务的Objective，然后按照Strategy-SubStrategy-action三级层次来给出整个过程，
- 接着给出整个操作流程后的观察和有趣的发现，最后严格按照json格式输出三级层次的过程描述。
- 最后的输出json应该是包在```{json}```之间，最底层动作需要包含描述、对应的playwright动作指令顺序编号，以及具体指令内容。

# Example
### Complete User Operation Description to Display Labeled Issues in kkroening/ffmpeg-python

**Objective:** Filter and display all issues labeled as "question" in the kkroening/ffmpeg-python repository.

---

#### **Strategy 1: Navigate to the Repository**
**Low-Level Action Sequence:**
1. **Search for the user "kkroening"**
   - Click the global search bar (placeholder: "Search GitLab").
   - Type "kkroening" and press `Enter`.
2. **Select the user from results**
   - Click the "Users" tab in search results.
   - Click on "Karl Kroening @kkroening" in the user list.
3. **Access the repository**
   - Navigate to the "Personal projects" section.
   - Click on the "ffmpeg-python" project.

---

#### **Strategy 2: Filter Issues by Label**
**Low-Level Action Sequence:**
1. **Open the Issues tab**
   - Scroll to the left sidebar menu.
   - Click the "Issues" tab (displaying the count, e.g., "Issues 402").
2. **Apply label filtering**
   - Click the search/filter bar in the issues list.
   - Select the "Label" dropdown from the filter options.
   - Type or select "question" from the label dropdown.
   - Click the search/apply button to confirm the filter.

---

#### **Final Oberservation**
The issues list will refresh to show only issues with the "question" label. The URL will reflect the filter:
`.../ffmpeg-python/-/issues/?label_name[]=question`.

---

### Key Observations from Playwright Trace
- The final URL after filtering:
  `http://ec2-3-135-39-80.../ffmpeg-python/-/issues/?label_name%5B%5D=question`
  confirms the "question" label filter is applied.
- Critical interactions include selecting the "Label" dropdown and explicitly choosing "question" to refine results.

### Final output
```json
[{
  "strategy" : "Navigate to the Repository",
  "substrategies": [
    {
      "substrategy": "Search for the user \"kkroening\"",
      "actions" : [
        {
          "description": "Click the global search bar (placeholder: \"Search GitLab\"). ",
          "playwright_idx" : 18,
          "playwright_instruction" : "frame.pressget_by_placeholder(\"Search GitLab\")Enter"
        }
      ]
    },
    {
      "substrategy": "Select the user from results",
      "actions" : [
      ]
    }
  ]
},
{
  "strategy" : "Filter Issues by Label",
  "substrategies" : [
  ]
}]
```