### Diff Analysis 
use `{android_page_info}`, `{hmos_page_info}`,`{android_project_dir}`,`{harmony_project_dir}` to make a detailed comparison on visual effects

#### Step 1: Parse Android View Hierarchy

Read `{android_page_info}/view.xml` and build a structural understanding:
- Parse the XML node tree to understand the full view hierarchy
- Identify the key structural containers (root layouts, toolbar, content area, bottom navigation)
- Map each Android widget node to its attributes: `class`, `resource-id`, `text`, `content-desc`, `bounds`, `clickable`, `scrollable`, `checkable`, `checked`, `enabled`
- Calculate layout relationships from `bounds` (parent-child containment, sibling positioning)
- Identify recurring patterns (list items, grid items, card layouts)

If there exist `view_scroll_n.xml` files (n = 1, 2, 3, ...), read each one and merge their structural understanding with `view.xml` (the Android UI is longer than one screen).

Read the Android `screenshot.png` (and `screenshot_scroll_n.png` if they exist) to visually understand the target UI.

Additionally, find and read the static XML layout files and Kotlin/Java code files in `{android_project_dir}` that correspond to this page. Use atomic Android components to replace user-defined and third-party components, building a **final Android structural understanding**.


#### Step 2: Parse HarmonyOS Current State

Read the HarmonyOS view tree XML and screenshot from `{hmos_page_info}/`:
- Parse the HarmonyOS view hierarchy to understand the current UI structure
- Read the screenshot to visually understand the current state

Also read the corresponding `.ets` source file(s) in `{harmony_project_dir}` for this page:
- Identify the existing component structure, state variables, child components
- Understand how the page is currently implemented

Build a **current HarmonyOS structural understanding**.

#### Step 3: Diff Analysis 

Compare the Android final structural understanding (Step 4.1) against the HarmonyOS current structural understanding (Step 4.2):
Android pages and Harmony pages may be running on different devices, so be robust to the differences caused by devices (e.g., 组件间的间距、截图上显示的颜色等等)

1. **Structural diff**:
   - Missing pages/components (in Android but not in HarmonyOS)
   - Extra pages/components (in HarmonyOS but not in Android)
   - Wrong nesting / layout structure differences
   - Incorrect component type mappings

2. **Visual diff**:
   - Color mismatches (background, foreground, fill)
   - Size / spacing differences
   - Position / alignment issues 
   - Shape mismatches (rounded corners, borders)
   - Text content or font differences
   - Icon / image mismatches

3. **Interaction diff** — compare clickable elements, navigation targets, gestures

Return a diff analysis report which lists all diffs